Software 2.0 numer 03/2004
TEMAT NUMERU
Sztuczna inteligencja.
ZAWARTOŚĆ CD:
MySQL 5.0-alfa, GD 2.0.22, ImageMagick 5.5.7, .NET Framework i SDK 1.1 mono 0.30 dla Linuksa, Bitmagic 3.2.0, ReactOS 0.2, Rebol/Core 1.2 J2SDK + J2ME Wireless Toolkit, Series 60 MIDP Concept SDK Nokia Edition wvWare 1.0, zlib 1.2.1, BigApache 1.0.2, Frenzy 0.2, Rebol/View 1.2+ Bochs 2.1 + ReactOS 0.2
W NUMERZE
Wstępniak
AKTUALNOŚCI
Kiedy zamilknie ostatni ftp?
Sądzę, że około dwóch-trzech lat potrzebuje technologia, aby dojść do granic absurdu i rozminąć się z własnymi założeniami. Bo to jest tak: kilka osób postanawia, że wyposaży urządzenia przenośne w maszynę wirtualną - przez co aplikacje będą chodziły wolniej (trudno!), ale za to będą przenośne. I fajnie. Mija trochę czasu, twórcy urządzeń przenośnych implementują J2ME - -i nagle zauważają, że ich telefon/handheld ma rozmaite, niedostępne w maszynach konkurencji możliwości. A więc decydują się na specyficzne dla urzadzena rozszerzenia - dzięki temu aplikacje nie będą przenośne (trudno!), ale za to w pełni wykorzystają moc urzadzenia. Efekt? Mamy gry javowe gry na komórki, które co prawda są wolne (żeby zachować przenośność), ale za to nieprzenośne (żeby chodziły lepiej). Podobna przygoda spotkała HTML: został wymyślony jako język znaczników (dokumentację standardu 1.0 czyta się teraz jak przepisy kulinarne Ćwierczakiewiczowej - z sentymentem i poczuciem odrealnienia) opisujących znaczenie poszczególnych elementów dokumentu. Idea była taka, że każda przeglądarka wyrenderuje obraz na podstawie swoich lokalnych możliwości i przepisów: wielkości ekranu, dostępnych czcionek itp. A więc projektant nie miał co prawda wpływu na ostateczny układ strony (trudno!), ale za to każdy mógł oglądać stronę i w trybie tekstowym, i graficznym - na różnych przeglądarkach (gdyby zachowano oryginalną ideę - nie zaistniałaby potrzeba wymyślania WAP-a!). I oczywiście wydarzyło się to samo co z grami w Javie. Teraz mamy standard, którego żadna używana przeglądarka nie interpretuje "prawidłowo" (cokolwiek by to nie znaczyło), który ma wszystkie wady ścisłego opisu wyglądu (brak realnej możliwości wyboru medium, brak realnej możliwości ułatwienia dostępu do strony niewidomym i niedowidzącym, trudna obróbka elektroniczna) - i wszystkie wady opisu semantycznego, czyli brak jednoznacznej, niezależnej od przeglądarki możliwości określenia wyglądu witryny. Brrrr... Ponieważ gorszy pieniądz zawsze wypiera lepszy (tak przynajmniej słyszałem), można się spodziewać, że będzie jeszcze gorzej, i dzięki temu jeszcze ciekawiej. W tym numerze pisma zachęcamy do zapoznania się z tym wszystkim, co w świecie aplikacji webowych wydaje nam się ciekawe: szczególnie polecam warsztaty o technologii XForms - mam nadzieję, że na przekór zacytowanej powyżej zasadzie XForms zastąpi w serwisach wysłużone formularze. Najważniejsze, to: przyjemnej lektury,
Filip Dreger
redaktor naczelny
Spis treści Software 2.0 wydanie 03/2004
Informatyczny smak codzienności
Skrypt za 100000
Filip Dreger
Tym razem obok zasadniczej kwestii - kto zgarnął kasę podatnika - Filipa zastanawia, jak wiele jeszcze czasu upłynie, zanim informatycy zaczną być powszechnie paleni na stosie.
Aplikacje webowe
Typo3
Marcin Kawalerowicz
Typo3 to najprawdopodobniej najbardziej zaawansowny system typu Content Management, jakim może się pochwalić społeczność Open Source. Marcin pokazuje nam jak rozpocząć pracę z tym systemem, zainstalowć go i postawić swoją pierwszą, typo3ową stronę. Jedną z wielkich zalet systemu jest dostępność wielu różnych rozszerzeń - często praca dewelopera sprowadza się do ściągnięcia i zainstalowania już gotowego i sprawdzonego modułu!
XSLT i .NET
Paweł Kadłuczka
Technologia XSLT zdobyła zasłużoną popularność i szacunek. Są jednak rzeczy, do których nadaje się zdecydowanie gorzej - jest temu winna sama istota XSLT jako języka funkcyjnego. Paweł próbuje przekonać nas, że specyficzne dla dotnetowej implementacji XSLT cechy pozwalają na uzyskanie znacznie lepszych efektów niż samo trzymanie się standardów W3C.
Analiza logów
Piotr Gapiński
Piotr prezentuje rebolowy program, który na podstawie listy adresów IP gości generuje bardzo efektowną mapę odwiedzin dowolnego serwisu. Skrypt, poza tym, że jest bardzo pożyteczny, doskonale pokazuje wykorzystanie specyficznych cech Rebola: bardzo łatwego parsowania tekstów, bezpośredniego dostępu do kompletu protokołów sieciowych itp.
Mason Perl
Sławomir Marcinkowski
Często o wyborze technologii zastosowanej przy projekcie nie decydują wcale jej rozumiane obiektywnie możliwości lub elegancja, a dostępność bibliotek, gotowych komponentów, wreszcie - jej dobra znajomość. Bardzo często okazuje się, że ze wszyskich powyższych powodów najlepszym narzędziem pozostaje Perl: pewny, elastyczny, zapewniający dostępn do setek doskonale udokumentowanych modułów uporządkowanych w archiwach CPAN-u. Sławomir na przykładzie konkretnego projektu pokazuje nam, jak ułatwić sobie jeszcze pracę korzystając z silnika perlowych szablonów - Masona.
Przeczytać warto
Multimedia w kieszeni - MIDP 2.0
Szczepan Kuźniarz
Od wprowadzenia profilu MIDP 2.0 minęło niewiele czasu, ale już teraz można powiedziec, że zrewolucjonizowal on aplikacje multimedialne dla urządzeń przenośnych. Szczepan zapoznaje nas z możliwościami standardu, a potem demonstruje ich użycie w ciekawym przykładzie - programie do obróbki i przeglądania zdjęć, działającym na telfenie komórkowym.
Analiza porównawcza algorytmów uczących sieci neuronowych RBF
Stanisław Osowski, Tomasz Markiewicz
Autorzy prezentują dwa algorytmy wykorzystywane do uczenia sieci neuronowych o radialnych funkcjach bazowych i porównują skuteczność ich działania. Początkującym polecamy najpierw lekturę artykułu o sieciach RBF.
Niezbędnik programisty
Instalator z Inno Setup Eryk Algo
Do najlepszego nawet programu można się zniechęcić w wyniku problemów z instalacją - świadczy o tym chociażby popularność Linuksa, która zaczęła się od powstania wygodnych programów instalacyjnych. Eryk pokazuje nam krok po kroku na konkretnych przykładach, jak zbudować prosty, trudniejszy, a wreszcie - zaawansowany instalator pod Windows, korzystając z darmowego programu Inno Setup.
Biblioteka miesiąca
wvWare
Marek Kawityński
Kiedy przychodzi co do czego, często okazuje się, że najważniejsze dane firmy umieszczone są nie - w bazie danych, a w dziesiątkach dokumentów tekstowych - oczywiście w formacie MS Office'a. wvWare to opensourcowa biblioteka dająca programiście dostęp do zawartości plików DOC, a także umożliwia np. przekonwertowanie takich plików do innych, łatwiejszych do obróbki formatów.