piątek, 15 października 2010

Bulwers... - Dar Krwi

Tym razem trochę znów mej prywaty będzie. Otóż troszku mnie zbulwersowała sytuacja odnośnie oddawania krwi. Wiadomo krew daje życie, a życie to bezcenny dar, lecz z krwią jest na tyle specyficznie, że nie każdy może ją oddać i nie każdy chce. Nie chcieć można z różnych powodów, to już sprawa prywatna każdej osoby. Są też osoby takie, które chcą oddać krew, niektórzy oddają dlatego, że czują taką wewnętrzną potrzebę inni znów dlatego, że krew dana przez inną osobę ocaliła ich samych, lub spotkało ich coś co wywarło na nich tak wielki wpływ, że teraz po prostu chcą oddawać krew. Ja powiem tak, jeśli chodzi o mnie to nienawidzę pobierania krwi, w ogóle igła to najgorsze co może być, lecz pewne wydarzenie z przeszłości wywarło na mnie tak duży wpływ, że po prostu wiem i muszę pójść i ofiarować te niecałe 0.5l krwi, ponieważ wiem, iż komuś ten dar może ocalić życie. Nie chodzę dla dóbr materialnych np. po to, aby dostać te czekoladę lub po to, aby nie być na lekcjach w szkole, uważam osobiście, że taka postawa jest niegodna nikogo i żałosna, gdybym miał ofiarować krew dla własnej korzyści to wole już w ogóle jej nie oddawać... Lepiej nie oddawać krwi niż mieć na celu tylko i wyłącznie własną korzyść, nie jest to nic innego jak zwykły egoizm, niegodny żadnego człowieka, wręcz pozwolę sobie powiedzieć, że taka osoba jest pozbawiona własnego honoru... Przynajmniej w moim odczuciu. Wiadomo każdy zrobi jak zrobi, ja czułem potrzebę napisania tego tutaj i też czuję potrzebę oddania krwi.

sobota, 9 października 2010

Jak dobrze mieć 2 "żołądki"

Znów coś dłuższa przerwa, bo tygodniowa w pisaniu. Tym razem nie z mojej winy. Tym razem to wina rzeczy losowych. Spalił mi się jeden z moich dysków twardych na szczęście lub na nieszczęście był to dysk, na którym miałem praktycznie wszystkie dane oprócz systemu. No okej miałem tam system, ale Linucha. Co prawda większość mniej lub bardziej znaczących danych poszło w eter. Na szczęście najbardziej dla mnie wartościowe dane trzymałem na dysku systemowym, czyli tym, który akurat się nie zniszczył. Dzięki tej sytuacji doszedłem do wniosku, że dobrze jest mieć 2 twardziele na pokładzie i na każdym z nich mieć odrębny system. W razie draki mamy drogę ewakuacji, a tak by była kicha wszystko, by poszło w piach. Teraz też wiem, że walka z Fedorą była bardzo użyteczna, ponieważ dzięki niej wiedziałem jak uratować się w przypadku, gdy GRUBa trafił szlag, czyli właśnie ten dysk, gdzie był zainstalowany GRUB uległ zniszczeniu. No cóż teraz mi pozostaje zrobić sekcje zwłok mojemu pacjentowi, może się dowiem co dokładnie było przyczyną zgonu pacjenta ;)

niedziela, 3 października 2010

Dopalacze

Złamię tym wpisem postanowienie, które dałem sobie na początku co do tego bloga. Było ono takie, że nie będę pisał o polityce tutaj. Lecz stwierdziłem, że złamię tę zasadę, ponieważ moim zdaniem jest warto o tym napisać. No i po drodze stwierdziłem, że lepiej będę wygłaszał poglądy me tak jak mi się chce. Dopalacze wszystkim dobrze znane i przez większość ludzi znienawidzone. Tak ja też jestem w gronie przeciwników i osób, które od samego początku są za tym, aby ukrócić ten proceder z nimi związany. Jak widać minął ponad rok to tylko ponad rok biorąc pod uwagę, że nasz rząd już zaczął działać. I dzisiaj tj. 2.10.2010 w całym kraju nastąpiła obława na wszystkie tego typu sklepy. Zostały one tymczasowo zamknięte i to co się działo zostało ukrócone w końcu. Pewnie będzie pełno spraw odwołań do sądu itd. będzie walka państwa z właścicielami tego, żeby tego nie zamykać. Ale muszę powiedzieć, że jestem pod miłym zaskoczeniem tego jak szybko udało się coś zrobić, żeby ukrócić ten cały proceder sprzedawania legalnie ciężkich narkotyków, pod przykrywką tabletek kolekcjonerskich, co jest moim zdaniem śmieszne. Jak widać jak nasz rząd chce to potrafi się zebrać i szybko zacząć działać szkoda, że nie we wszystkim im tak dobrze idzie, ale jest nadzieja w tym państwie. Ciesze się z tego niezmiernie :)

piątek, 1 października 2010

Domeny

Powszechnie wiadomo co to domeny i do czego służą prawda? Ale czy na pewno wiemy jakie było ich pierwotne znaczenie i przeznaczenie? Ja muszę się przyznać, że jak się dowiedziałem to nie wiedziałem co znaczą te domeny, a raczej myliłem się co do ich znaczenia. Największy uśmiech na mej twarzy wzbudziła wieść co do znanej wszystkim domeny .com. Otóż jak się ostatnio dowiedziałem to wcale ona nie znaczy to co myślałem do tej pory, a myślałem, że jest to po prostu globalna domena. Myślałem sobie, że jest to skrót po prostu od computer czy czegoś w tym stylu. Ogólnie chodzi, że myślałem, że jest globalna bez żadnego większego przeznaczenia. No ale się pomyliłem, bo oznacza ona commercial, czyli komercyjna. Pojawił się uśmiech na mej twarzy, bo w życiu bym nie pomyślał, że może właśnie to znaczyć, biorąc pod uwagę jakie strony mają tą domenę. Fakt pewnie 3/4 populacji myśli podobnie jak ja do niedawna lub nawet więcej. Doszedłem dzięki temu do pewnych wniosków co do domen, może są mylne może nie są to moje myśli wyrażane przeze mnie, więc nikt nie musi się ze mną zgadzać :P Więc tak mamy kilka sobie domen, a raczej ich rodzajów:
  1. Domena .com - strony firm lub organizacji nastawionych na zysk, tak jak firma Microsoft, która jest w 100% komercyjna, no może nie tak w tych stu, ale jest to organizacja komercyjna, a raczej firma.

  2. Domena .net - strony globalne tak jak uważane cały czas .com, czyli strony wielojęzyczne lub po prostu inglish nastawione na odbiór treści przez każdego ludzia na świecie.

  3. Domena .info - strony poświęcone tematyce informacyjnej jakieś wiadomości ze świata. W sumie Onet mógłby mieć taką domenę lub jakieś WP, albo TVN24, nastawione ogólnie strony na treści informacyjne, bywa różnie z tą domeną.

  4. Domena .gov  - organizacje rządowe no i w sumie jedna z nielicznych spełnia nadal swoją pierwotną rolę, może dlatego, że jest dostępna tylko dla takich organizacji.

  5. Domena .org - domeny wszelkich organizacji poza rządowych, można uznać, że i firm niekomercyjnych.  Nie wiem jak z tymi domenami, ogólnie też jest dość różnie, nie zawsze one spełniają swoje pierwotne zadanie, ale często spełniają.

  6. Domeny .eu - kraje Europy lub Uni Europejskiej ale bardziej Uni, przeważnie robi to co ma robić ;)

  7. Domeny krajowe np.: .pl, .de, .fr itd. - te domeny to takie odpowiedniki znaczków na samochodach, znaczą w jakim języku jest strona itd.

Istnieją jeszcze 2 dość ciekawe domeny w naszym kraju jest to domena .tk i .co. Pierwsza z nich jest o tyle ciekawa, że zauważyłem, iż jest w sumie darmowa i stoi na niej dość sporo rodzimy, kiczowatych stron. Do niedawana myślałem, że jest to domena jakiegoś polskiego hostingu za free, no ale jest to domena Tekelanu, czyli jakiegoś państwa lub państewka na terenie Nowej Zelandii. Druga to .co jest o tyle ciekawa, że jest ona podobna do .com, a jest to po prostu domena kolumbijska. Tak na prawdę jest bez większej wartości gdyby nie to, że większość ludzi upatruje w niej świetnego zamiennika dla domeny .com i nie ma się temu co dziwić za bardzo, ale prawda jest taka, że ta domena jest zwykłą domeną krajową, a nie globalna jak .com ;) Mam nadzieję, że komuś troszku uzupełniłem wiedzę tym co napisałem :P

poniedziałek, 27 września 2010

Pawn co to i po co to?

Ostatnio zostałem zapytany co to pawn i do czego się to to coś wykorzystuje.  Więc już biegnę z wyjaśnieniami pawn to język skryptowy napisany w całości w C. Ja go głównie używam do pisania skryptów do znanej wszystkim gry GTA SA, a raczej do pisania skryptów do modyfikacji tej gry jaką jest tzw. SAMP, czyli San Andreas Multiplayer. Jest to modyfikacja pozwalająca grać w GTA w sieci po prostu. Strona główna gdzie można pobrać modyfikacje znajduje się pod tym adresem: <a href="http://sa-mp.com/">http://sa-mp.com/</a> Właśnie w tej modyfikacji wykorzystuje się tytułowy język pawn. Jest to dość prosty język bardzo podobny do C/C++ można powiedzieć, że kilka elementów jest prawie identycznych jak sam język C np. instrukcje warunkowe i pętle, nie ma za to typów zmiennych jako takich. Polska scena jest dość spora jeśli chodzi o pawn i całego SAMPa. Istnieją co najmniej 2 duże fora poświęcone tematyce pawn i SAMP. Jednym z nich jest: http://pawno.pl/, a drugim http://gtaonline.pl/index.php?redir=1 Pierwsze forum charakteryzuje dość wysoki poziom ogólnej wiedzy nt. pawn, a drugie no cóż tutaj dużo mówić to zbiorowisko dzieciaków, które myśli, że jest fajne, lecz wiadomo są też wyjątki ;) I tutaj i tutaj znajdą się czarne owieczki ;) Poniżej przedstawiam fragment kodu, aby móc zobaczyć jak to wygląda i czy na prawdę jest podobne do C :)
public OnPlayerRequestClass(playerid, classid)
{
 if(IsPlayerNPC(playerid)) return 1;

 if(gPlayerHasCitySelected[playerid]) {
  ClassSel_SetupCharSelection(playerid);
  return 1;
 } else {
  if(GetPlayerState(playerid) != PLAYER_STATE_SPECTATING) {
   TogglePlayerSpectating(playerid,1);
      TextDrawShowForPlayer(playerid, txtClassSelHelper);
      gPlayerCitySelection[playerid] = -1;
  }
   }

 return 0;
}

sobota, 25 września 2010

Qt zabawę czas zacząć!

No tak teraz to dopiero była długa przerwa, aż się źle z tym czuję. Racja nie miałem weny totalnie nie wiedziałem o czym pisać, teraz na szczęście nazbierało się parę tematów, o których chciałbym coś napisać.

Zauważyłem, że coraz więcej osób chciało by się zająć programowaniem okienek wszelkiej maści, ale jako, że mają doczynienia ze mną to wszystko co jest proste i jest do tego całkiem sporo poradników w rodzimym języku, to jest to po prostu dissowane przeze mnie to postanowiłem napisać cosik o Qt. Tak na początek zajmiemy się prosta aplikacją. Nie będzie to nic przełomowego ani w jakiś sposób trudnego do wykonania. Będzie to po prostu okienko z przyciskiem, gdzie po kliknięciu w niego program nam się zamknie. Proste prawda? Okej to czas zająć się za programowanie. Jako, że jestem zwolennikiem nauki programowania prosto z kodu, to też będę starał się podobnie przekazywać wiedzę, czyli najpierw podam cały kod aplikacji, a później go omówię dokładnie. Jeszcze w tym miejscu chciałbym nadmienić, że nie będę się zajmować zagadnieniami czysto z C++, uznaje, że osoby zainteresowane Qt wiedzą co to C++ oraz wiedzą co to klasy, wskaźniki itd. Okej teraz cześć właściwa, czyli kod:

#include <QApplication>
#include <QTextCodec>
#include <QPushButton>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
    QPushButton *button = new QPushButton("Witaj ?wiecie!");
    QObject::connect(button, SIGNAL(clicked()), qApp, SLOT(quit()));
    button->resize(300, 100);
    button->show();
    return app.exec();
}

Teraz zajmijmy się wyjaśnianiem co znaczą poszczególne linie kodu. Tak, więc 3 pierwsze linie to nic innego jak dodanie odpowiednich objektów i ich metod do programu. Pierwsza QApplication dodaje klasę główną okna, która zajmuje się zarządzaniem całą aplikacją. Nastepna, czyli QPushButton dodaje objekt przycisku do programu, a ostatnia trzecia dodaje po prostu odpowiednie kodowanie. Następna część programu to nic specjalnego to tylko zwykła funkcja main ;) Następna linia kodu dodaje główny obiekt aplikacji, czyli po prostu tworzy wątek odpowiedzialny za działanie aplikacji. Następna część odpowiada za kodowanie znaków w aplikacji. Qt domyślnie nie obsługuje polskich znaków i innych specyficznych znaków dla każdego kraju. U nas nie ma ogonków przy znakach, a u Niemców np. nie ma kropek ;) Kolejna część tworzy objekt typu QPushButton z napisem "Witaj Świecie!". Kolejna linijka jest linijką ciekawą, ponieważ odpowiada ona, można powiedzieć za obsługę zdarzeń w programach Qt. Objekt QObject jest obiektem głównym można powiedzieć, że każdy inny objekt w Qt dziedziczy właśnie po nim, więc jest on objektem nadrzędnym. Metoda connect() przyjmuje 4 argumenty pierwszym z nich jest objekt, który wysyła sygnał, czyli w tym przypadku QPushButton, ściślej mówiąc w naszym przypadku button. Następnie wybieramy jaki sygnał emituje button w naszym przypadku jest to clicked(), czyli po prostu kliknięcie. Trzecim argumentem jest odbiorca sygnału w naszym przypadku qApp, jest to po prostu alias do głównej części porgramu. ostatni argument to slot, czyli funkcję, która ma się uruchomić po kliknięciu w naszym przypadku ma się po prostu zamknąć program. następna linia po prostu ustala wielkość przycisku i zarazem okna w naszym przypadku ;) Później nastepuje wyświetlenie. No i zwrócenie wartości. W C++ wystepuje tutaj przeważnie 0, czyli poprawne wykonanie aplikacji. w Qt zwraca exec(), czyli po prostu uruchamia aplikację ;) Tą linię można zapisać też tak:
app.exec();
return 0;

Działanie tego będzie takie samo jak zapisanie w jednej lini tak jak w kodzie, który podałem na początku ;)

Okej to tyle na tą chwilę na temat Qt, przepraszam za moją niezbyt polską polszczyznę, która władam, ale mam nadzieję, że wszystko jest w miarę jasno opisane.

sobota, 18 września 2010

Brak weny

Witam ponownie po dość długiej przerwie od ostatniego wpisu. No cóż tu dużo powiedzieć niestety coś ostatnimi czasy brakuje mi dość weny, aby coś sensownego na jakiś temat napisać. Także naszła mnie pewna refleksja nt. tego co by osoby czytające od czasu do czasu chciały tutaj zobaczyć. Za bardzo sam nie wiem co teraz ugryźć, czy np. Qt pod linuchem, czy może coś napisać o językach skryptowych, może też czas na zajęcie się assemblerem? Sam nie wiem powiem szczerze mam dość dużo pomysłów ale nie wiem za co się teraz zabrać. Jako, że jestem członkiem społeczności powiedzmy, że SAMPa może osoby z tych stron, by podsunęły jakiś ciekawy pomysł dot. tej modyfikacji. Może coś nt. pluginów w SAMPie? Może coś dot. pawn? Szczerze sam nie wiem. No i jeszcze jedna sprawa. Fajnie by było gdyby się więcej komentarzy pojawiało, więc w tym momencie chciałbym zaprosić do pisania komentarzy w tym wpisie z odpowiedziami na zadawane tutaj pytania i wątpliwości, może jest osoba, która by chciała się czegoś dowiedzieć na jakiś konkretny temat. Jeśli będę mógł i będzie to dla mnie osiągalne to opiszę tą sprawę, aby rozwiać wątpliwości związane z tym konkretnym zagadnieniem. Więc zapraszam do odpowiedzi, czas znaleźć jakąś wenę :)

wtorek, 14 września 2010

Dzień programisty

Dzisiaj z okazji tego, że mamy 256 dzień roku, czyli Dzień Programisty ;) Więc z tej okazji chciałbym życzyć wszystkim programistą tym doświadczonym i tym początkującym, jak również tym którzy dopiero mają zamiar zacząć zabawę z programowanie, wszystkiego najlepszego, mnóstwa aplikacji, które staną się powszechnie znane i używane i przede wszystkim wielu mile spędzonych chwil podczas swoich zabaw z kompilatorami i dziwnościami bibliotek wykorzystywanych przez siebie. Powodzenia wszystkim koderom w poznawaniu nowych języków i bibliotek ;)

sobota, 11 września 2010

Instalacja Qt - Ubuntu

Wcześniej sobie troszkę pomarudziłem na C# i na to, że jest beee... według mnie i wspomniałem tam o bibliotece Qt. Qt to cross platformowa biblioteka służąca do szybkiego pisania oraz projektowania programów okienkowych na 3 najpoularniejsze obecnie systemy operacyjne. Mac, Linux i Windows. Jako, że na Windowsie instalacja SDK jest dziecinnie prosta, to o tyle na Linuxie już prosto nie jest, choć też nie ma jakoś zadziwiająco trudno.

Po pierwsze należy pobrać całą paczkę SDK ze strony producenta. W tym celu udajemy się pod adres: http://qt.nokia.com/downloads gdzie wybieramy wersje LGPL, no chyba, że ktoś woli wersje komercyjną. I następnie wybieramy tam wersję SDK pod swój system, ja akurat wybrałem wersję Liux 32 bit, ponieważ mam właśnie o takiej architekturze system jak można się łatwo domyślić. Po pobraniu należy tak jak podają twórcy nadać odpowiednie prawa dostępu do pliku, czyli:

chmod u+x qt-sdk-linux-x86-opensource-2010.04.bin

Następnie wywołać instalację:

./qt-sdk-linux-x86-opensource-2010.04.bin

Po dokonaniu się instalacji należy jeszcze zainstalować na swoim systemie niezbędne biblioteki. W tym celu instalujemy pakiety:

sudo apt-get install libglib2.0-dev libSM-dev libxrender-dev libfontconfig1-dev libxext-dev

Teraz jeszcze tylko należy zainstalować biblioteki OpenGL na swoim systemie w tym celu instalujemy kolejno:

sudo apt-get install libgl-dev

Jeśli przy instalacji tego pakietu pojawi się coś w rodzaju:
Odczyt informacji o stanie... Gotowe
Pakiet libgl-dev jest pakietem wirtualnym zapewnianym przez:
nvidia-glx-96-dev 96.43.13-0ubuntu6
nvidia-glx-185-dev 185.18.36-0ubuntu9
nvidia-glx-173-dev 173.14.20-0ubuntu5
libgl1-mesa-dev 7.6.0-1ubuntu4
E: Pakiet libgl-dev nie ma kandydata do instalacji

Wybieramy po prostu jeden z wyżej podanych pakietów w moim przypadku jest to:

sudo apt-get install nvidia-glx-96-dev

Numer przy pakiecie odpowiada wersji sterownika, aby uniknąć wszelkich komplikacji z działaniem grafiki w systemie należy wybrać ten sam pakiet co sterownik, aby sprawdzić wersję sterownika udajemy się do System -> Administracja -> Sterowniki, tam powinno być podane z jakiego aktualnie sterownika korzystamy. W tym momencie został nam do zainstalowania jeszcze jeden pakiet czyli:

sudo apt-get install libglu-dev

Po wykonaniu wszystkich powyższych czynności Qt powinno być w pełni gotowe do pracy. Czyli odpalamy nasz edytor i w celach sprawdzenia czy wszystko jest okej kompilujemy poniższy kod:
#include <QApplication>
#include <QPushButton>

int main(int argc, char *argv[])
{
QApplication app(argc, argv);

QPushButton hello("Hello world!");
hello.resize(100, 30);

hello.show();
return app.exec();
}

Jeśli w momencie kompilacji pojawił się Error 127, najprawdopodobniej prakuje jeszcze pakietu g++, niezbędnego do programowania w tym celu instalujemy go poleceniem:

sudo apt-get install g++

W tym momencie już nie powinno być żadnych problemów z działaniem Qt i kompilacją wcześniej podanego kodu ;)

Grand Prix - Włoch, Monza (kwalifikacje)

Dawno nic nie pisałem, więc pora coś ciekawego znów napisać po dłuższej przerwie. Jak wiadomo ruszył kolejny weekend z Formułą 1, więc jest świetna okazja, żeby coś popisać. Jednak muszę wszystkich zmartwić, bo tym razem kwalifikacje do jutrzejszego wyścigu nie były tak emocjonujące jak podczas ostatniego Grand Prix. Tym razem można powiedzieć, że na najszybszym torze w całym kalendarzu F1, większych niespodzianek nie było jak się okazuje. Co prawda nie spodziewałem się, że to akurat Ferrari będzie najszybsze na kwalifikacjach, ale można było się tego domyślić, że będzie próbować powalczyć o swoje. No i tak też się stało 1 miejsce w kwalifikacjach należy do Fernando Alonso, a drugie zaś do Buttona. Spodziewałem się po dzisiejszych treningach, że to Hamilton będzie pierwszy, a Button drugi, lecz się troszku pomyliłem, ku mojej radości. Jak widać szykuje się jutro na prawdę szybki wyścig, ponieważ wszyscy są szybcy, co tu dużo mówić cała pierwsza dziesiątka mieściła się praktycznie w 1 sekundzie. Co prawda nasz rodak jakoś nie zabłysnął, bo jest to dopiero 9 czas na kwalifikacjach, ale można się było tego spodziewać, ponieważ na dzisiejszym treningu było podobnie. Jednak zastanawia mnie to czy Kubica jednak nie radzi sobie lepiej na twardej mieszance, bo teoretycznie u wszystkich miękka jest tą szybszą. Ale u Roberta zastanawiam się czy nie jest odwrotnie. No cóż tutaj dużo powiedzieć czekam na jutrzejszy wyścig, pewnie tam Robert się jak zwykle wykaże. Zobaczymy też jak czerwone strzały wystartują, bo startują z samej czołówki jak wyżej wspomniałem. Alonso z pierwszego pola, a Massa z trzeciego. Zobaczymy też jak sobie poradzi zespół Red Bulla, który coś sobie nie radzi we Włoszech. Pożyjemy zobaczymy. Zapraszam na jutrzejszy wyścig o godzinie 14.00 ;)

poniedziałek, 6 września 2010

Brak kluczy publicznych...

Brak kluczy publicznych jest to dość często spotykany błąd występujący przeważnie po aktualizacji systemu lub po dodaniu nowego rezpozytorium w Linuchach. Z tego co udało mi się wyszukać to można ten problem zażegnać na kilka sposobów. Najpopularniejszym z nich jest po prostu ręczna aktualizacja kluczy poprzez wydanie odpowiedniego polecenie w konsolii np.:

gpg --keyserver subkeys.pgp.net --recv-keys ID_KLUCZA

To polecenie po prostu pobiera odpowiedni klucz lub klucze z serwera, a następnie polecenie:

gpg --armor --export ID_KLUCZA | apt-key add -

Aktualizuje listę kluczy w systemie.

Można bardzo łatwo się domyślić, że jak zwykle w moim przypadku najprostrze rozwiązania wcale nie chcą działać i jak zwykle też tym razem tak było ;) Powyższe rozwiązanie działało u mnie na Debianie, ale na Ubuntu już grymasiło cały czas wywalając mi dziwne błędy a to coś tam, a to tamto, no trudno się mówi przywykłem, znalazłem inne rozwiązanie na szczeście moim zdaniem lepsze, ponieważ dodaje klucze nawet z tych repozytoriów, których na razie się nie posiada, ale pewnie się posiądzie co zaoszczedzi kolejnych męk z aktualizacja kluczy. Moje rozwiązanie jest takie, wchodzimy do swojego katalogu usera i usuwamy katalog .gnupg, katalog usera znajduje się w lokalizacji /home. Teraz kolejno wykonujemy następujące polecenie:

  1. wget http://sycu.ovh.org/files/apt-pubkey.sh

  2. chmod +x apt-pubkey.sh

  3. logowanie na roota komenda su

  4. ./apt-pubkey.sh

Teraz powinno już wszystko ładnie działać, a przynajmniej w moim przypadku działa :P

C# nie jest zabawny

Ludzie, którzy mnie choć troszku znają wiedzą, że jest ze mnie dość maruda, szukająca do istniejących rozwiązań alternatyw, które będą lepsze. No i tak też jest w moim przypadku z językiem C# (ten dziwny znaczek powinno się czytać jako "szarp" ;) ). Osoby, które są choć troszku obeznane w tym co to za język i czym się charakteryzuje, wiedzą, że jest on całkiem wygodny. No tak jest on wygodny, ponieważ jeśli weźmie się pod uwagę takie WinAPI, gdzie podobne efekty osiągniemy duża liczbą czasu i kodu, a w C# jest to tak na prawdę parę kliknięć myszką, bez jakiegokolwiek kodzenia. Fajnie prawda? W WinAPI, żeby utworzyć proste okno potrzeba ok. 100 linii kodu, czyli dość dużo pisania, co prawda można się wycfanić i zrobić sobie szablon, ale pomijam tą opcję tutaj :P Powiedzmy, że korzystając z C# zaoszczędzamy dość dużo czasu. No ale okej to jest nowy język tak na prawdę i nie każdemu jest w smak uczyć się czegoś nowego wiedząc, że można zakodzić to samo w C++, a ten język zna się już dość dobrze. W moim przypadku tak właśnie jest nie chce się uczuć C# skoro wiem, że pozwoli mi tylko tak na prawdę zaoszczędzić czas i przy tym jest problem z tym językiem na systemach innych niż Windows, chociaż teraz już istnieje Mono pod Linucha i Maca, więc ten problem został w pewnym stopniu zażegnany, lecz nie zmienia to faktu, że na tych systemach nie ma jako takiego .Net Frameworka potrzebnego do pracy z C#, czyli nie jest on w pełni obsługiwany przez inne systemy niż te z rodziny Windows. Mając na uwadze te czynniki, że C# to inny język, którego mi się nie chce uczyć oraz to, że nie jest on zbyt dobry na systemach innych niż Windows, więc postanowiłem szukać alternatywy, wiedząc także, iż C# jakby nie było ma pewne zalety. Szukając i szukając natrafiłem pewnego dnia na wzmiankę o Qt. Jest to tak naprawdę SDK pod C++. Oferuje ono tyle co ten cały C#, czyli można sobie wyklikać szablon programu, tak jak w C#, a biblioteka za nas wygeneruje kod. Czyli oszczędzamy czas tak jakbyśmy programowali w C#. Drugą zaletą jest bardzo dobra dokumentacja do biblioteki, wiadomo co i jak i z czym się to je.  Czyli mamy tak na prawdę największą zaletę C# w C++, ale najbardziej w tym wszystkim, według mnie, fajne jest to, że ta biblioteka jest w pełni kompatybilna z systemami z rodziny Linux oraz Mac, czyli tak na prawdę mamy C# w C++, a w dodatku działający wszędzie bez problemu. Do tego twórcy ciągle rozwijają swoje SDK udostępniając w nim swoje IDE, dzięki czemu mamy także do dyspozycji IDE do samego C++. Co prawda całe SDK po wypakowaniu i zainstalowaniu waży z 1.5 GB, ale nie uważam to w naszych czasach za zbyt wielką wadę ;) Reasumując to dlaczego nie lubię C#. Nie lubię go za to, że jest nowym językiem, którego nie chce się uczuć, a szkoła tego ode mnie wymaga, znaczy nauczyciel :P. Nie lubię go za to, że nie jest w pełni kompatybilny z Linuchami itd. Oraz nie lubię go za to, że wymaga .Net Frameworka. Trzy razy nie ;) A teraz powiedzcie mi sami po co paprać się w nowy język znając już C++ i mogąc w nim zrobić tyle co w C# i troszku więcej oraz wiedząc to, że zalety C# są także dostępne w C++. No powiedzcie po co mam się w tym całym C# bawić? :P C# nie jest zabawny...

sobota, 4 września 2010

Przeprowadzka

No tak jak można było zauważyć dawno nic nie pojawiło się ciekawego na blogu. Było to związane z przeprowadzką na nowy hosting i na nową domenę jak widać. Podczas przenosin wystąpiły małe problemy z wgraniem WordPressa, ale w końcu się udało. Tak na prawdę nie wiem co było przyczyną tych trudności. Może mój nowy usługodawca wymaga do działania podania opisu bazy danych. Tak na prawdę nie wiem co się działo, że nie można było odpalić strony, ale po dodaniu opisu jest już git ;) Przez najbliższe 2 lata nie będzie już więcej przeprowadzek, bo na taki okres posiadam hosting, a potem się zobaczy :P Hmm.... w tej chwili wszystko chyba działa okej, lecz nie jestem tego do końca pewien w razie jakichkolwiek błędów w działaniu strony proszę o kontakt. Nowy hosting to 1and1.pl jeśli ktoś jest zainteresowanych ich nową bardzo atrakcyjną ofertą to zapraszam do odwiedzania ich strony :P

niedziela, 29 sierpnia 2010

Grand Prix - Belgii, Spa

Ufff... co to był za wyścig. Niestety nie udało mi się trafić z podium do końca, chociaż obsada taka jak pisałem wcześniej. Robert niestety poprzez swój błąd podczas drugiej zmiany opon stracił swoje miejsce, ale cóż nie ma co płakać nad rozlanym mlekiem na Mozie będzie na pewno lepiej :P Wyścig obfitował w wiele ciekawy akcji, a nawet zwrotów akcji. Tak jak miało to miejsce w incydencie Vettela z Buttonem. Ta sytuacja pokazała jak niebezpiecznym kierowcą jest Vettel niestety w negatywnym tego słowa znaczeniu. Jest on niestety dość niezrównoważony parę wyścigów temu wjechał w swojego kompana z teamu, podobnie z resztą jak dzisiaj tylko dzisiaj tym nieszczęśnikiem był Button. Głupi manewr nic dodać nic ująć brak mi już słów co do tego kierowcy zdecydowanie... Warto zwrócić na team jakim jest Force India. Podczas tego wyścigu można było zaobserwować jak szybkie są te bolidy na prostych, zastanawiam się po tym wyścigu czy to nie są najszybsze bolidy w całej stawce choć trudno powiedzieć. Ale można śmiało powiedzieć, że są jednymi z najszybszych na prostych. Teraz skoczmy troszku do teamu McLaren. Cóż tutaj dużo pisać w ten weekend byli na prawdę świetni, świetnie przygotowani mieli bardzo szybki bolid. Do życzenia ma tylko ta wycieczka Hamiltona przez drugą zmianą opon, bo mogła się dla niego ta podróż już wtedy skończyć. Nie raz już podobnie kończył, wręcz w podobny sposób stracił tytuł mistrza świata... No okej czas zająć się rodakiem i jego bolidem. Dzisiaj niestety do jazdy Roberta jest parę zastrzeżeń, ale ogólnie wyścig bardzo dobry w jego wykonaniu biorąc pod uwagę warunki panujące na torze. Bolid widać spisuje się bardzo dobrze w pewnych momentach wręcz odnosiłem wrażenie, że może być w tej chwili konkurencją dla najlepszych zespołów. Ale prawdę powiedziawszy są to tylko moje takie ciche marzenia :) Widać kanał F spisuje się bardzo dobrze, zespół bardzo dobrze wykorzystał te 4 tygodnie przerwy na przygotowanie bolidu. Szkoda tylko, że przez ten jeden błąd podczas drugiego postoju stracił Kubica tak świetne miejsce :( Ale co zrobić taki rezultat też jest dobry ;) Dla przypomnienia ostateczna klasyfikacja na mecie:

  1. Hamilton

  2. Webber

  3. Kubica

  4. Massa

  5. Sutil

  6. Rosberg

  7. Schumacher

  8. Kobayashi

  9. Pietrov

  10. Alguersuari

  11. Liuzzi

  12. de la Rosa

  13. Buemi

  14. Hulkenberg

  15. Vettel

  16. Kovalainen

  17. di Grassi

  18. Glock

  19. Trulli

  20. Yamamoto

  21. Alonso

  22. Button

  23. Senna

  24. Barrichello

Grand Prix - Belgii, Spa (kwalifikacje)

No tak jest już dość późna godzina i pisanie o formule 1 nie jest zbyt dobrą porą, mając na uwadze, że jutro o godzinie 14:00 odbędzie się właściwy wyścig. Ale postanowiłem sobie coś naskrobać, bo bardziej emocjonujących kwalifikacje dawno nie widziałem. Początek kwalifikacji, czarne chmury nad torem wiadomo, że zaraz zacznie padać deszcz, więc praktycznie cała stawka kierowców na wyjeździe z alei serwisowej. Ale okej mniejsza z tym, minęło jakieś półtora minuty od wyjazdu, a tu niespodzianka Pietrov na okrążeniu wyjazdowym odpada z zabawy. Niestety błąd kierowcy. W tym momencie sobie pomyślałem, że znów Kubica będzie musiał bronić honoru teamu, ale jakoś się tego nie obawiałem, po tym co widziałem na treningach wyglądało to całkiem pozytywnie w moim mniemaniu. Okej po incydencie Pietrova na parę minut zostały kwalifikacje wstrzymane. Minęło parę minut i mamy powtórkę z rozgrywki prawie cała stawka wyjeżdża, kierowcy Virgina, Lotusa i HRT w tym całym zamieszaniu przeszkadzały w walce o dobre czasy. Zaczął się prawdziwy wyścig na okrążeniu wyjazdowym, czegoś takiego jeszcze nigdy nie widziałem. Wyścig w okrążeniu wyjazdowym przyznacie sami, że to troszkę chore? No ale okej skupmy się teraz na osobie naszego rodaka w tej batalii. Po pierwszym pomiarowym okrążeniu zalicza 14 czas nie jest to rewelacja, ale biorąc pod uwagę jego wycieczkę na żwir czas byłby jednym z pierwszych jak nie pierwszym. Ale co się odwlecze to nie uciecze prawda? Na następnym okrążeniu pomiarowym był już 1 ;) Na sam koniec jego czas w Q1 poprawił Nicko Rosberg, który z resztą jechał chyba już na oponach typu slick ( nie wiem jak się to pisze możecie mnie poprawić ). Sensacją w Q1 była kwalifikacja do Q2, Trulliego, Kovala oraz Glocka, chociaż nie jestem pewien ale Virgin też się znalazł :P W Q2 nic szczególnego się nie działo, oprócz tego, że odpadła ta trójka skazana na wygnanie i nie kwalifikowanie się zespołu Mercedesa chociaż nasza polska telewizja ucięła końcówkę Q2 :/ Q3 było zdecydowanie najszybsze. Tak samo jak w Q1 prawie wszyscy wyjechali jednocześnie w ostateczności po pierwszym pomiarowym kółku Rober był przez ułamek sekundy pierwszy później jego czas pobił Mark Webber. Ale niespodziankę sprawił Hamilton, który na oponach przejściowych poprawił czas Webbera. Ale nie ma się co dziwić tak na prawdę, ponieważ Hamilton przez cały weekend jest bardzo szybki, najszybszy. Teraz trochę refleksji. Kubica w swoim bolidzie z kanałem F jest bardzo szybki widać, że zostały wprowadzone poprawki i jak zwykle przygotowanie zespołu Roberta stoi na najwyższym poziomie. Z resztą sam Robert przyznał kiedyś, że w teamie panuje świetna atmosfera i mechanicy świetnie słuchają uwag i dostosowują samochód jak najlepiej potrafią i to widać prawie w każdym wyścigu ;) Co do jutra, no cóż tu dużo mówić, na zwycięzcę stawiam Hamiltona, drugi stopień będzie należeć do Roberta, a najniższy do Webbera. Tak ja obstawiam przynajmniej ;) Ale jutro się okaże. Jutro godzina 14:00 start!

piątek, 27 sierpnia 2010

Fedora Round 1

No tak pobrałem sobie jakiś czas temu linuxa Fedore. Więc wczoraj go sobie chciałem odpalić myślałem, że wszystko przebiegnie łatwo, gładko i przyjemnie, pomyślałem sobie tak, ponieważ wcześniejsze moje doświadczenie z LiveCD z Ubuntu było jak najbardziej pozytywne. No ale cóż po zakończeniu całkiem miłej i bez problemowej instalacji zaczęły się schody... Ponieważ został uszkodzony GRUB i najprawdopodobniej sektor MBR na dysku twardym, który odpowiada za rozruch systemu. No cóż odpalam sobie system myśląc, że wszystko będzie okej z GRUBa zostanie wywalony Debian, a dodana Fedora. Lecz no niestety Error 15. Jak się dowiedziałem odpowiada on za uszkodzenie boot sektora. Znalazłem pełno rozwiązań, lecz ani jedno nie było odpowiadające i działające. Ale w końcu udało się! Odzyskałem przynajmniej w pełni sprawny Windows. Z poziomu, którego mogę się przygotować na rundę drugą z Fedorą. Rozwiązaniem tego problemu, było po prostu przywrócenie boot sektora. W tym celu należało sięgnąć po płytkę z Windows XP w moim przypadku. Odpalić system z płyty, czyli instalator, następnie opcję przywracania systemu "R", a tam kolejno wybrać numer systemu, czyli pewnie 1 i wpisać kolejno fixboot oraz fixmbr. Tym sposobem udało mi się przywrócić sektor MBR w Windzie i dzięki temu mogę znów zacząć działać, aby ujarzmić Fedorę ;) Poniżej dla leniwych prosty schemat odzyskania MBRa :P

1. Bootujemy system z płyty Windowsa
2. Odpalamy przywracanie systemu "R"
3. Wybieramy numer systemu
4. Wpisujemy fixboot
5. Wpisujemy fixmbr
6. exit

czwartek, 26 sierpnia 2010

Death Note

Witam tym razem coś o mandze. Jak wiadomo człowiek lubi sobie od czasu do czasu coć poczytać, ja lubię poczytać mangę, a co mi tam :P Jakieś parę dni temu hmm... w sumie 2 dni temu. Poszedłem sobie do księgarni w celu poszukiwania inspiracji co by tutaj zakodzić. Ale jakimś sposobem coś mnie przyciągnęło do półeczki z mangą. Więc zacząłem przeglądać to Dragon Ball, to Naruto, nie mam najmniejszego pojęcia co mnie skłoniło do zakupy I tomiku mangi widniejącej w tytule newsa. Trzymam, trzymam i trzymam myślęc nad niczym. Poszedłem do kasy zapłaciłem w końcu jakimś cudem. Następnie po jakimś czasie zacząłem sobie czytać lekturkę. Musze Wam powiedzieć, że jest to nieźle wciągająca opowieść hmm... można powiedzieć kryminalna. Chociaż w niej mało kryminału, a więcej zabawy z życiem lub smiercią. Cóż powiedzieć świetna opowieść z nutką psychozy. Pogłoski twierdzą, że jest to niezły psychojeb, pożyjemy zobaczymy ;)

wtorek, 24 sierpnia 2010

"Na razie jest ściernisko, ale będzie San Francisco!"

Witam od publikacji mojego pierwszego wpisu troszkę czasu minęło, jakoś nie miałem weny o czym pisać, dlatego też nic nie pisałem niestety, a może stety. Hmm... jak widać w tej chwili nic tutaj za bardzo nie ma jest jakiś lay strony. Oczywiście jakby mogło być inaczej jest to jeden z podstawowych layout'ów dostarczonych w paczce WordPressa ;) Nie znam się na grafice nie mam talentu i moim zdaniem taka skórka wcale nie jest zła jakoś bardzo. Wizualnie nie daje po oczach jest w miarę czysta i przyjemna moim zdaniem. W sumie jakbym się troszkę grafiką zainteresował nie byłoby źle za bardzo, no ale cóż nie chce mi się. Jestem za bardzo pochłonięty programowaniem. Głównie jest to zabawa z różnymi pierdółkami jak C++ i jakie? SDK. W chwili obecnej także wróciłem do zabawy z językiem skryptowym PAWN. Jest on wykorzystywany w GTA San Andreas, a raczej jednej z modyfikacji tej gry, czyli tzw. SA-MP. Troszku teraz znów męczę PAWN, ponieważ zabrałem się za projekt, więcej na temat tegoż projektu możecie poczytać na stronie głównej: http://generation-roleplay.pl/ . Cóż tutaj jeszcze napisać? Teraz znów też zachciało mi się męczyć QT zobaczymy co z tego wyjdzie znów. Na pewno moją walkę z QT opiszę tutaj może komuś się to przyda, a może nie, może oby nie. No to w tej chwili by było na tyle czas zacząć coś pisać, mam nadzieję, że moje wypociny się komuś na coś przydadzą, lub znajdzie się kilku masochistów, którym się spodobają moje teksty.

sobota, 14 sierpnia 2010

Witaj świecie!

Witam jak widać jest to mój pierwszy wpis na moim blogu ten wpis jest w sumie wpisem testowym. Po wszelkich perypetiach związanych z instalacją WordPressa, w końcu udało mi się go ujarzmić i witam wszystkich na mojej stronicy. Mam zamiar tutaj opisywać moje perypetie związane z programowanie i to co udało mi się stworzyć lub to co mam zamiar, albo to co mi się skaszalociło… Ogólnie rzecz biorąc będę tutaj opisywać coś związanego z moimi zainteresowaniami, zobaczymy co z tego wyjdzie.