Developing a wheel for a second time
Klucz społeczeństwo ; 2008-01-08 02:21:10; komentarze (7) i trackbacki (0)
Klucz jabba ; 2007-11-10 23:17:40 (2007-12-10 21:09:06); komentarze (4) i trackbacki (0)
Stef już napisał, ja piszę dopiero teraz. Nie będę już rozwijał Jabby, zostanie ona prawdopodobnie w stanie takim jak jest.
Dlaczego? Mam bardzo dużo zajęć innego rodzaju, mam pracę i studia. W pracy zacząłem się zajmować czymś całkiem innym i zobaczyłem jak 'programowanie WWW' jest niewdzięczne. Nie mam zamiaru już tu wracać.
Innym powodem jest to, że domena jabba.pl z dniem 2007-11-22 straci ważność. Nie mam za bardzo zamiaru płacić 122zł - jeżeli użytkownicy postanowią jednak to dalej pociągnąć - przedłużę.
Jeżeli nie, to dopóki Koniczynek - administrator uazni - nie będzie miał sprzeciwu, to Jabba będzie chodzić pod domeną jabba.uaznia.net.
Przepraszam, wybaczcie.
Dodano 2007-12-10 21:07: Nie tłumacząc jak i dlaczego, nie z mojego powodu, domena jabba.pl została dla nas przedłużona na następny rok. Tak więc narazie nic się nie zmienia. Nie pytajcie jak to się stało.
Klucz programowanie ; 2007-07-07 19:28:27; komentarze (10) i trackbacki (0)
Ada - niepopularny język programowania. Według mojej opinii - najlepszy.
Ada została zatwierdzona w 1980 jako wojskowy standard zunifikowanego języka wysokiego poziomu spełniający wymagania Steelman-a przez Ministerstwo Obrony US. W 1983 została zatwierdzona jako standard ANSI, a w 1987 jako standard ISO.
W 1995 wyszedł standard ISO 'Ada95' dodający funkcjonalności programowania obiektowego. Rozszerzenia standardu pojawiały się także później, w 2000 i 2005.
Czym się charakteryzuje Ada? Jest to język silnie typowany, kompilowany. To, że został zaprojektowany odgórnie, czyli najpierw powstała jego specyfikacja, a dopiero później implementacje, spowodowało, że nie ma takich krzaków jakie można znaleźć np. w PHP. Owa specyfikacja jest otwarta, można przeglądać jej zawartość. Jest ona kompletna i jednoznaczna, można tylko na jej podstawie przewidzieć wyniki dowolnego programu.
Jest to język obiektowy, umożliwia stosowanie polimorfizmu i dziedziczenia, Ada 2005 dodatkowo pozwala na tworzenie interface-ów. Silne typowanie wymusza jawną konwersje nawet między typami tego samego rodzaju [np. dwa różne typy stało przecinkowe].
Ada posiada obsługę wielowątkowości wplecioną w język - deklaracje zadania są inne składniowo niż definicje obiektów. Umożliwia także różne modele komunikacji pomiędzy zadaniami - od najprostszych, jak zmienne globalne, przez obiekty chronione, aż po spotkania.
To były fakty. Teraz kilka moich własnych opinii.
Jako język, Ada posiada setki rzeczy niesamowicie ułatwiających pisanie w niej programów. Na przykład: Jak w C wstawić największą wartość do zmiennej typu int? Przyporządkować (2 ^ (size_of(int) - 1)) - 1. W Adzie? Przyporządkować Integer'Last.
Inną zaletą Ady jest kompilator. Tzn. jest wiele implementacji, jednak wszystkie spełniają ten sam standard, więc zachowują się tak samo. Kompilator Ady znajdujący się w GCC - GNAT [GNu Ada Translator] jest bardzo przyjemny w używaniu. Tak jak inne kompilatory oczywiście sam zajmuje się zależnościami, ale także świetnie przedstawia błędy kompilacji. Przykładowo o brakującym średniku przypomina stwierdzeniem, że brakuje średnika [i tutaj mrugam do programistów C/C++]. Podpowiada także, że zrobiliśmy literówke w nazwie podprogramu [funkcji lub procedury] lub w nazwie zmienne i mówi także co chcieliśmy prawdopodobnie napisać.
A teraz kilka mitów nt. Ady:
"Ada jest językiem tylko dla symulacji/systemów czasu rzeczywistego/systemów embedded." - Mit. Ada posiada szeroką palete funkcjonalności które w żadnym z powyższych nie są używane. Bardzo dobrym przykładem tego jest Unbounded_String - ciąg znaków oparty na liście z dynamicznie przydzielaną pamięcią, o długości maksymalnej takiej jak Integer'Last. Tego rodzaju funkcjonalności posiadają niedeterministyczne czasy przetwarzania, są tworzone na stercie [której niektóre systemy embedded w ogóle nie posiadają] itp.
"Ada jest klonem Pascala." - Mit. Ada coprawda używa składni Pascala, jednak posiada inną semantyke. Przykładem jest chociażby znaczenie średnika.
O Adzie będę jeszcze pisał, bo to mój ulubiony język programowania.
Klucz uczucia ; 2007-05-26 16:08:09; komentarze (30) i trackbacki (0)
Dziś o mechanice związków: Załóżmy, że mamy hipotetyczny związek dwóch ludzi, niezależnie czy heteroseksualny czy nie. W takich związkach prawie zawsze pojawia się zazdrość.
Najpierw powiedzmy sobie co to jest. Zazdrość w związkach jest to uczucie generalnie biorące się z chęci posiadania. Osoba czuje się źle z powodu, że jej partner robi coś z innymi osobami - ogólnie rzecz biorąc. Może to być zazdrość o wspólne robienie zadań, może to być zazdrość o rozmowę, ale może to być zazdrość o seks. Bierzę się to na ogół z tego, że osoba zazdrosna nie może dać tego swojemu partnerowi co daje inna osoba, lub parner po prostu potrzebuje odmiany.
Najpopularniejszym modelem walki z zazdrością, walki z jej efektami jest... zabronienie partnerowi robienia tego o co osoba jest zazdrosna. Działanie takie raczej nie rozwiązuje kwestii zazdości. Osoba zazdrosna dalej jest zazdrosna, dalej ma świadomość, że nie daje swojemu parnerowi tego czego by chciał, a z drugiej strony parner nie robi tego tylko ze względu na zakaz. Model jest wybitnie prosty do stosowania, dlatego jest tak często stosowany. I niestety jest przyczyną rozpadania się niektórych związków.
Ja przedstawię swój własny model, należący do mojego wymyślonego modelu związku idealnego, o którym może jeszcze będę pisał.
Mój model walki z zazdrością opiera się na próbie zmiany siebie tak, aby nasz partner nie czuł już potrzeby robienia tego, co nam się nie podoba. Jeżeli np. jednej stronie związku nie podoba się to, że drugia ogląda się za przedstawicielami płci przeciwnej, to może spróbować zmienić coś w swoim wyglądzie, żeby zwrócić jej uwagę. Gdy chłopak woli posiedzieć na uczelni i pogadać z kumplami o analizie matematycznej niż przyjść do dziewczyny, to może ta dziewczyna powinna dowiedzieć się co to jest całka i poprosić go o wytłumaczenie sposóbów rozwiązywania równań różniczkowych?
Mój model jest trudny. Wymaga od strony zazdrosnej wielu wyrzeczeń i poświęconego czasu dla swojego partnera. Jednak w moim modelu zazdrość zamiast przyczyną ograniczania wolności, wykorzystywania miłości partnera dla swoich pragnień jest mobilizacją do ulepszania się i dopasowywania do osoby z którą się jest. Mój model także faktycznie rozwiązuje konkretne problemy związane z tym uczuciem. Gdy partner będzie miał zaspokojoną pewną określoną chęć przez pierwszą stronę związku, nie będzie już powodu do zazdrości.
Klucz linux monitor ; 2007-02-27 14:46:49; komentarze (10) i trackbacki (0)
Od wczoraj jestem szczęśliwym posiadaczem dwóch monitorów podłączonych do jednego komputera. Rozwiązanie jest w miarę proste, kupiłem sobie przejściówkę z wyjścia cyfrowego video [DVI] na analogowe [VGA] i podłączyłem drugi display.
Gdy go włączyłem bez dodatkowej konfiguracji pojawił się na nim identyczny obraz jak na pierwszym - nic zaskakującego. Jednak moja karta NVidii posiada opcje 'TwinView' - potraktowanie dwóch wyjść jako oddzielne. Włączenie tej opcji sprowadza się do dodania Option w pliku konfiguracyjnym Xorg-a i podania częstotliwości odświeżań drugiego monitora. Trzeba także dodać informacje jakie mają być dostępne rozdzielczości obu monitorów i jak są względem siebie ustawione - a dokładnie jak jest ustawiony drugi względem pierwszego.
Miałem już dwie prośby o udostępnienie mojego xorg.conf.
Po zaaplikowaniu powyższych zmian, Xorg pokazał różne obrazy na monitorach. Jednak mój WM, Kwin, nie był 'świadom' istnienia dwóch monitorów. Dla niego pulpit był po prostu dwa razy szerszy, więc przykładowo 'maksymalizacja' okna powodował jego rozciągnięcie się na dwa monitory. Rekompilacja wszystkiego, tak aby używały rozszerzenie Xinerama, 'uświadomiła' programy o tym, że to nie jest jeden pulpit. I tak, przykładowo, w opcjach tapety pulpitu pojawiła się opcja na którym monitorze co ma się pokazywać.
Jeżeli miałbym dać rady co do wyboru monitorów, to powiem tylko jedno - najlepiej dwa takie same. Osobiście nie mam identycznych, co powoduje, że kolory na jednym są trochę inne niż na drugim, mimo, że próbowałem je dopasować. Jednak oba moje monitory posiadają te same parametry - częstotliwości odświeżania przy odpowiednich rozdzielczościach. Z drugiej ręki wiem, że monitory z różnymi odświeżaniami odpadają, bo wzrok się strasznie męczy - gdy oko dopasuje się do jednego to drugi widocznie 'miga'. Także z drugiej ręki - oczy się także męczą przy połączeniu LCD i CRT. Tak więc chyba najważniejsze, żeby były takie same, mniej ważne jakie.
Ogólnie nie oceniam to jako czegoś, co musi mieć każdy, co jest wymagane do działania na komputerze, o nie. Jednak jest to ciekawa rzecz, niektóre rzeczy ułatwia. I zawsze, jak ktoś nie jest w nastroju, to drugi monitor może wyłączyć.
Klucz jabba ; 2007-01-07 15:51:40 (2007-01-07 16:14:38); komentarze (33) i trackbacki (0)
Ci, którzy rozumieją ironie poczują gorzki jej smak:
Jak widać bardzo dokładnie ja nigdy nie chciałem wprowadzić tu, na Jabbie, wysokiego poziomu. Ja zrobiłem tutaj cenzurę w najgorszej postaci. Udałem, że zrobiłem dobry system blogowy. Niektórzy nawet się zastanawiali czy jest blogowy. Tak naprawdę to mimo dobrej woli wszystkich użytkowników, ich niesamowicie ogromnej pomocy i codziennej dawki motywacji robiłem tutaj co mi się żywnie podobało. Kasowałem wpisy, komentarze, krytykowałem autorów, a jak ktoś podniósł głos przeciwko mnie to usuwałem mu jabbę i blokowałem dostęp
Jak widać poziom robi się sam, nie potrzeba mu żadnej motywacji. Ludzie mają sami w sobie potrzebę bycia jak najlepszymi. Wystarczy, że ktokolwiek założy sobie gdziekolwiek bloga i natychmiast stara się jak najbardziej etycznymi sposobami przyciągnąć jak najszerszą widownie. Od razu zaczyna pisać tematy mądre i potrzebne językiem pełnym acz zrozumiałym dla każdego.
O tak, oczywiście miałem setki tysięcy genialnych pomysłów rozwijania Jabby pochodzących od użytkowników. Wszystkie były bardzo przyszłościowe, nowoczesne, rozszerzalne i wydajne. Ale ja jestem ten zły człowiek, który mówił 'Nie!'.
A teraz bez ironii: Ludzie! Czy wy naprawdę nie widzicie, że jeżeli istnieje Bóg to stworzył cierpienie i ból po to, żeby ludzie się rozwijali?
Klucz linux kde youtube ; 2007-01-06 22:35:53; komentarze (3) i trackbacki (0)
Pewnie wiecie, że Flasha nie lubię ze względów ideologicznych i z powodu nieistnienia jego normalnej implementacji pod x86_64. Ale YouTube polubiłem ostatnio. Kiedyś trafiłem na youtube-dl i byłem bardzo zadowolony bo się okazało, że mplayer odtwarza pliku o mimetype 'video/x-flv'.
A dziś jakoś mnie ogarnęła chęć uprzyjemnienia sobie życia. Brakowało mi w tym skrypcie możliwości otworzenia programu zaraz po ściągnięciu albo otworzenie programu ze URI zasoby zdalnego. No to sobie dopisałem: youtube-watch.
Potem sobie dorobiłem akcje do Konquerora: youtube.desktop - należy wrzucić do .kde/share/apps/konqueror/servicemenus/.
A potem jeszcze sobie te akcje wrzuciłem do Klippera.
Wymagania:
Klucz perl ; 2006-12-31 15:48:52 (2006-12-31 20:51:11); komentarze (5) i trackbacki (0)
...a jak mi się nudzi to programuje w PERLu. Dziś stwierdziłem, że zrobię skrypcik do wysyłania SMSów przez SMSowe API Ery. Pobawiłem się i proszę: SendSMS-Era 1.0. Pierwszy raz zalecam uruchomić po prostu i patrzeć co się dzieje.
Wymagania:
Zapraszam do używania i zgłaszania błędów.
Aktualizacja: SendSMS-Era w wersji 1.1 obsługuje też wysyłanie z bramki sponsorowanej.