C2C

czwartek, maja 26, 2005

AJAX – świetna witryna

Przy wpisaniu interesującej mnie ostatnimi czasy frazy – AJAX, w wyszukiwarce RSS feedów Syndic 8, ujrzałem 3 źródła – dwa z nich dotyczyły słynnego zespołu piłkarskiego z Amsterdamu, trzecie, o dziwo, technologii AJAX.

Ajax Blog – wedle mnie rewelacja - artykuły, przykłady, odnośniki i to co wszyscy lubią najbardziej – kompletne tutoriale, ponadto informacje dotyczące współpracy HTMLHttpRequest z różnymi językami programowania. Zachęcam wszystkich zainteresowanych do odwiedzenia owej witryny – naprawdę warto.

poniedziałek, maja 23, 2005

AJAX i .NET

Dla osób programujących w środowisku .NET i chcących poczytać odnośnie współpracy owej platformy z AJAX’em, zapraszam serdecznie na blog Michela Schwarz’a, w którym to prezentuje zalety biblioteki AJAX for .NET (nie ASP .NET, to coś innego niż link prezentowany kilka dni temu), oraz na jego stronę domową gdzie można ściągnąć ową bibliotekę oraz przykłady dla C# oraz VB.NET, lub zobaczyć rzecz „w akcji”.

(dzięki dla empa za link)

Co mi się podoba w VS .NET 2005 beta2?

W związku, iż ostatnio coraz częściej „zabawiam” się betą nowego Visual Studio pragnę w kilku punktach, strasznie treściwie i skrótowo, opisać co mi się podoba w nowej edycji. Wyjaśniam, że generalnie platformą .NET interesuje się od niedawna (wcześniej było to po prostu Visual Studio), a „moim” głównym językiem wśród oferowanych przez MS jest Visual Basic, choć w najbliższym czasie chyba zmienię preferencje...

  • poprawiona strona startowa

  • snippety

  • lepsze zakładki

  • większe wsparcie dla technologii internetowych oraz mobilnych (File > New Web Site :), Device Emulator)

  • ciekawe rozwiązania dla pracy grupowej (póki co nie mam okazji przetestować..., na razie tylko „ładnie wygląda”) oraz Community

  • import / eksport ustawień

  • doskonałe nowe rozwiązania w niektórych kontrolkach, zarówno wizualnych, jak i niewizualnych (MenuStrip wreszcie z ComboBox’ami i TextBox’ami bez żadnych dodatkowych kombinacji)

  • zmodyfikowany na plus system podpowiedzi do kodu


To tyle, po zaledwie kilku godzinkach testowania, niektóre rzeczy bardziej teoretycznie, niż praktycznie, ale niedługo ten stan rzeczy się zapewne zmieni.

Wieści z Microsoft

Po pierwsze – spekuluje się nad kupnem Red Hata przez Microsoft (MS Red Hat?), nie wiem jak się zapatrywać na tą ciekawą nowinkę – może ludzie bardziej związani z obecną sytuacją wewnętrzną MS’a będą chcieli wypowiedzieć kilka słów na ten temat w komentarzach.

Po drugie – na dniach wyszła informacja odnośnie luki w TCP/IP. Rzecz polega na ustawieniu tzw. „budzika” i możliwości zresetowania połączenia TCP i jest niebezpieczna głównie dla protokołów i programów które używają długich sesji TCP. Nie ma możliwości przejęcia pełnej kontroli nad systemem. Systemy XP SP2 i 2003 SP1 są już odpowiednio zabezpieczone, tymczasem dla reszty już w kwietniu wyszła poprawka (MS05-19), którą – jak się okazało – również trzeba poprawić.

Informacje o finalnej poprawce.

Po trzecie – jak informuje Jama Mastaha – do pobrania jest już 120-dniowa ewaluacyjna wersja Windows XP Professional x64 Edition.

Netscape 8.0 – spore zamieszanie

Netscape 8.0 pojawił się w sieci dokładnie na kilka godzin, okazało się bowiem że ma sporo luk. Nic straconego – luki poprawiono i obecnie możemy się już cieszyć wersją 8.0.1 (swoją drogą niezły refleks mieli Panowie z Netscape’a). Przypatrzyłem się programowi nieco bliżej i mogę potwierdzić, że zawiera on kilka ciekawych rozwiązań. Przede wszystkim silnik – w zależności od potrzeb może przełączyć wyświetlanie witryny z silnika Gecko na silnik Internet Explorera. Koniec nerwów i niepotrzebnego zmieniania okien przeglądarek – teraz wszystko da się „załatwić” w jednym. Druga sprawa to dość nowatorskie rozwiązanie funkcjonalne MultiBar – teraz pasek narzędziowy może składać się z kilku przemiennych części. Autorzy programu chwalą się, że ich przeglądarka jest łatwa niczym Internet Explorer i bezpieczna niczym Firefox. Sam nie wiem czy IE jest łatwy (chyba tak...) a dość poważne obawy mam do tego czy Firefox rzeczywiście jest bezpieczny (po ostatniej burzy krytycznych luk i gąszczu poprawek). Jednak moim zdaniem nowe rozwiązania są dla Netscape’a na „in plus”. Warto się zapoznać.

Netscape Browser

Powrót

Przepraszam najmocniej wszystkich zainteresowanych, że ostatnio mój blog jest tak mało aktualizowany, ale uczelnia niestety ode mnie sporo wymaga (poza tym kilka innych rzeczy, takich jak juwenalia czy sprawy domowe). No cóż, skoro znalazłem nieco czasu to zrobię małą aktualizację i przygotuje się powoli do dalszej dyskusji na temat idealnego CMS’a.

poniedziałek, maja 16, 2005

AJAX - artykuły, problemy i inne...

Maciej Strzelecki przetłumaczył dla polskiej Wikipedii ciekawy artykuł odnośnie XMLHTTP, który to (cyt. z artykułu) „jest zbiorem programistycznych interfejsów aplikacyjnych, które mogą być używane przez JavaScript, JScript, VBScript oraz inne języki skryptowe przeglądarek internetowych do przekazywania XML lub innych danych do oraz z serwera internetowego używając protokołu HTTP.”

W skład XMLHTTP wchodzi między innymi XMLHttpRequest, który to obiekt wykorzystywany jest w technologiach AJAX. Maciej wspomniał o przeglądarkach, które obsługują bądź nie obsługują AJAX, na forum.php.pl spotkałem się również z krótkim testem na temat owej obsługi. Więc – z pewnością jest to IE od wersji 5.0, z pewnością jest to Mozilla od w. 1.0, Apple’owskie Safari od w. 1.2 oraz (tutaj pewność jest mniejsza) – Opera 8.0. Ja używam Opery i niestety czasami przeglądarka zachowuje się dziwnie, choć powinno to wyglądać normalnie – w końcu Opera tworzy obiekt ActiveX – identycznie jak w przypadku IE. Dziwne.

Co do innych informacji – istnieje biblioteka AJAX dla środowiska ASP .NET. Wiem to już od jakiegoś czasu, ale z informacją tą wyprzedził mnie na swoim blogu Michał Chaniewski, więc wypadało by również u mnie zamieścić owy odnośnik.

PS. W najbliższym czasie ciąg dalszy dywagacji CMS’owych.

Odnośniki :

sobota, maja 14, 2005

Tworząc najlepszego CMS'a

Przeglądając adaptive path spostrzegłem bardzo ciekawy artykuł Jeffrey’a Veen’a pt. „Making a better CMS” (czyli “Tworząc lepszego CMS’a”). Autor, po uprzednim spojrzeniu na stronę OpenSourceCMS.com, i zapoznaniu się z funkcjami open source’owych CMS’ów, próbuje wykrystalizować na podstawie najczęstszych błędów, kilka punktów, którymi powinien charakteryzować się dobry system CMS. Pozwolę sobie wypisać tutaj niektóre z nich, które moim zdaniem zasługują na szczególną uwagę :

  • CMS musi być prosty do nauczenia, koniec z technicznym żargonem.

  • Administracja CMS’em musi być oddzielona od edycji i zarządzania treścią.

  • Użytkownicy na publicznej stronie internetowej nie powinni nigdy mieć możliwości logowania czy zakładania kont na CMS’ie.

  • Koniec z układem kolumnowym oraz dbanie o czystość wyglądu.


Chciałbym poniekąd ustosunkować się do owych tez, jak i dopisać swoje. Po pierwsze – prostota CMS’a – owszem, to ważne. Będę tutaj bazował na przykładzie księgowej/kadrowej Krysi, która z komputerem ma niewiele wspólnego, a na której to barkach spoczywa dział CMS’a nazwany umownie „księgowość”. CMS powinien być prościutki, bez zbędnych „klików”, bez zbędnego technicznego żargonu, z możliwie najlepszymi opcjami edycji i wizualizacji wprowadzanej treści (tutaj kłania się oczywiście AJAX, o którym musiałem wspomnieć...). Sprawa pierwsza wiąże się z drugą. Administracja systemem, a administracja treścią to dwie osobne rzeczy, przeznaczone dla zupełnie innych użytkowników, co powinno być stosownie zasygnalizowane, nie tylko tytułem karty. Administracja treścią nie powinna mieć kompletnie żadnych odniesień w stosunku do administracji systemem, obydwie rzeczy powinny działać zupełnie niezależnie.

Konta użytkowników, tak ostatnio popularne wśród twórców wszystkich open source’owych CMS – to ciężki orzech do zgryzienia. Rzecz jest bardzo użyteczna przy serwisach hobbystycznych itd., ale co z serwisami firmowymi? Moim zdaniem, w zależności od profilu firmy oczywiście, powinno się udostępniać ten „drobiazg”. Gdy klient wchodzi na stronę firmową często, gdy pragnie przedyskutować pewne rzeczy z użytkownikami i jednocześnie z obsługą techniczną, personalizacja interfejsu oraz kilka ustawień są z pewnością dobrym rozwiązaniem. Dobra strona firmowa to oprócz statystycznej prezentacji, również forum klientów, możliwość oceny produktów czy usług, podzielenia się swoimi doświadczeniami.

Układ kolumnowy to już sprawa czysto wizualna, ale rzeczywiście, ostatnio zauważyłem zbyt duże przywiązanie do tradycyjnego układu. Może czas na zmiany. A może czas na umożliwienie samodzielnego wyboru wyglądu witryny, w zależności od jej specyfikacji. Co zaś tyczy się czystości układu wizualnego – tutaj chyba nic nie muszę mówić, każdy domniema o co chodzi. Wchodząc na jakąkolwiek stronę opartą na którymś ze znanych systemów portalowych, od razu to zauważam. Strona jest, delikatnie mówiąc, kiepsko czytelna.

To tyle dywagacji na temat artykułu Pana Veen’a. Teraz przedstawię kilka moich przemyśleń. Po pierwsze – użyteczność. CMS’y nie spełniają podstawowych standardów związanych z użytecznością! Niepodkreślone odnośniki, mała, nieskalowalna czcionka, brak jednoznacznych określeń co na danej stronie jest czym (czytaj oddzielenie bzdur od właściwej treści). Po drugie – czystość kodu! Open source to przecież otwarty kod, także trzeba założyć, że ktoś chciałby się tym kodem choćby „pobawić”. Przeglądałem kod kilku CMS’ów i pomyślałem, że edytowanie i zmiana czegokolwiek byłaby dość przykrym i uciążliwym doświadczeniem, mało komentarzy oraz niespójność to główne wady. Trzecią sprawą jest myślenie CMS’a. Dziwnie to brzmi, bo faktycznie nie wiem jak to nazwać. CMS w każdym razie powinien robić za użytkownika jak najwięcej rzeczy. Mam tu na myśli głównie stronę edycji treści, i wspomnianą już wcześniej Panią Krysię, dla której pomoc ze strony komputera i twórcy oprogramowania oraz dopełnianie i naprawianie błędów to podstawa.

Myślę, że dałoby się wyróżnić o wiele więcej, bardziej lub mniej szczegółowych punkcików. Ja póki co skorzystałem z przemyśleń Pana Veen’a oraz dopisałem kilka swoich – na gorąco. Liczę na dyskusję ze strony czytelników.

Odnośniki :

piątek, maja 13, 2005

OpenForce od Matida

Matid zaglądnął na mojego bloga, poprawił pisownię i zostawił link do swojego jakże objektowego bloga matid->Blog(); Bardzo zaciekawił mnie jego OpenForce – projekt realizowany w technikach XML, XSLT, XHTML+CSS oraz AJAX (czyli to co lubię ostatnio najbardziej...). Ma to być Framework z modułami CMS, napisany w PHP5 (metodą objektową). CMS ma być prosty w użyciu, struktura modułowa, do szablonów Matid wykorzystuje własny autorski system OpenTemplate. AJAX i system cache’owania (jakkolwiek będzie wyglądał...) ma w zdecydowany sposób poprawić wydajność witryn i przepływu danych.

No cóż... życzę powodzenia, koniecznie subskrybuje RSS’a i mam nadzieję że całość będzie wyglądać w działaniu tak ciekawie jak brzmi w opisie. Strasznie ciekawe przedsięwzięcie w każdym razie, jestem pełen podziwu i trzymam kciuki.

Visual Web Developer 2005 - nauka ASP .NET

Dla osób pragnących nauczyć się programować w języku ASP .NET 2.0, firma Microsoft przygotowała nie lada gratkę. Prawdę powiedziawszy nie wiem, ile czasu program ten leży na serwerze, ale ja dopiero teraz go zauważyłem, więc dzielę się spostrzeżeniami. Mowa tutaj o Visual Web Developer 2005 Express Edition Beta 2 wraz z ASP.NET 2.0 Beta 2. Wiem, nazwy nieco przydługawe, ale niech to nikogo nie odstrasza.

Visual Web Developer to, według słów ze strony asp.net, łatwe w użyciu narzędzie, idealne do nauki ASP .NET. Tworzymy interfejsy naszych stron www wizualnie, kod możemy pisać w języku Visual Basic, C# lub J#. Całość jest zintegrowana z SQL Server 2005 Express.

Ciekawe.

Prawdę powiedziawszy pasjonuje mnie wsparcie MS dla młodych programistów. Chodzi mi tutaj o całą linię produktów sygnowanych końcówką Express. Są to jakby zubożone wersje normalnych developerskich molochów MS’a, z łatwiejszym interfejsem oraz wsparciem na naukę i zabawę (bo programowanie pierwszych aplikacji to przecież nie lada zabawa). Zobaczymy jak potoczy się to dalej.

AJAX - do czego stosować?

Obiecałem sobie napisać kolejne artykuły na temat AJAX-a, tymczasem z powodu braku czasu, będę musiał przełożyć ten zamiar na sobotę i niedzielę. Nadal jestem pod wrażeniem, powoli myślę o kolejnych projektach.

Teraz tylko takie drobne przemyślenia.

Na grupie php pewna osoba zdecydowała się dla ‘testu’ przekonwertować swoją stronę na AJAX (a raczej napisać ją wykorzystując te najnowsze technologie). Strona dotyczy Wrocławskiego osiedla Sępolna i jest oprócz technologii również bogata w treść. Eksperyment eksperymentem – całość ładuje się rzeczywiście bardzo szybko (jak trafnie to określił jeden z moderatorów php.pl – „jak z localhosta”) i sprawnie, ale mimo wszystko pokazuje również, że AJAX jest zdecydowanie technologią przeznaczoną do stron typowo komunikacyjnych. Ostatnio coraz bardziej interesuje się platformami interaktywnymi, i tutaj dopiero, moim skromnym zdaniem oczywiście, AJAX pokazuje naprawdę w pełni swoje możliwości (haha.... można powiedzieć, że jeszcze nie odkryte możliwości).

Dla przykładu chciałbym zademonstrować kilka ciekawych zastosowań. Dynamiczna wizytówka pokazuje w jak łatwy i przyjemny sposób można tworzyć formularze na stronach www. Drugi przykład to chat. „Strona jest dyskusją” – to mi ciągle siedzi w głowie (dzięki Michał za tą myśl, na serio jest piękna). A nikt nie lubi czekać w nieskończoność, aż załaduje się witryna, nikt nie lubi odświeżać, nikt nie lubi chodzić po wolnych, przeciążonych serwerach. AJAX, oprócz wygody daje moim zdaniem porządnego „kopa” w kierunku optymalizacji działania stron. To również bardzo ważne.

Jutro i pojutrze postaram się napisać dużo więcej odnośnie AJAXu, odnośnie XMLHttpRequest (może pokuszę się o jakieś małe wyjaśnienie terminu, dla osób wiedzących o tym nieco mniej) oraz o platformach interaktywnych – czyli przyszłości internetu. Tymczasem zapraszam do dyskusji.

wtorek, maja 10, 2005

AJAX w przykładach

Zastanawiałem się dziś przez cały dzień, jak wielkim krokiem w stosunku usprawnienia funkcjonalności i użyteczności stron internetowych jest AJAX. Myślę, że ogromnym. W dobie gdy „witryna internetowa jest konwersacją” (myśl zaczerpnięta z bloga Michała Chaniewskiego), AJAX jest jakby spoiwem doskonałym. Rysunki na witrynie internetowej Jesse Jamesa Gerretta dobitnie ukazują zalety technologii asynchronicznej. Przedstawię dwa przykłady wykorzystania AJAX’a – jeden prościutki, drugi nieco bardziej skomplikowany.

Przykład I
Załóżmy iż Pan X-iński chciałby na swojej witrynie zamontować prosty kalkulator realizujący działanie sumy. Trzy okienka tekstowe – jedno na pierwszą liczbę, drugie na drugą oraz trzecie – wynikowe. Załóżmy, że kaprysem Pana iksińskiego jest to, iż wszystkie wpisywane przez użytkowników działania będą zapisywane w pliku tekstowym na serwerze. Sposób wykonania owej czynności w technologii asynchronicznej byłby następujący – albo czasowe odświeżanie strony, reagujące na wpisywane przyciski, albo przycisk OK., który sumował by dwie liczby i wypisywał sumę, dodając jednocześnie odpowiedni wpis do pola tekstowego. Skomplikowane. W technologii AJAX nie potrzeba ani odświeżania, ani drugiego przycisku. Dzięki XMLHttpRequest dane mogą być zapisywane bezpośrednio.

Przykład II
Załóżmy że Pan X-iński robi portal młodzieżowy, gdzie każda osoba miała by określić swoje pochodzenie. Dla ułatwienia dodajmy iż portal jest Polski (potrzebne są więc wszystkie miasta), ale użytkownik nie może wpisać „byle czego”. Miasto musi być ściśle określone, tak aby inni mogli się z nim komunikować. W technologii asynchronicznej byłaby to zapewne przydługawa, zajmująca wiele pamięci lista (dodajmy, że niewygodna w użyciu). Lepiej byłoby zrobić auto uzupełnianie i sprawdzanie poprawności danego miasta. W technologii XHTML + JS musiałaby to być wielka tablica umieszczona bezpośrednio w kodzie naszej witryny – tablica, którą użytkownik musiałby ściągać za każdym razem. Aż strach pomyśleć, gdybyśmy robili listę miast w kilku krajach! Horror! Technologia AJAX przychodzi nam z pomocą – lista przechowywana jest na serwerze, a miasta używane do auto uzupełnienia znajdują się na nim właśnie, a nie w kodzie witryny. Olbrzymia oszczędność pamięci, mniej skomplikowany kod, dużo większe możliwości.

Podane przeze mnie przykłady nie są bynajmniej moim wymysłem – podejrzałem je i spisałem ze stron poświęconych AJAX’owi. Na dziś koniec – powiem tylko, iż moim zdaniem AJAX jest przyszłością. Jest to technologia (a raczej zbitek technologii) w fazie eksperymentalnej i do końca nie wiadomo, czy w przyszłości całość będzie wyglądała dokładnie tak samo jak obecnie (może pojawi się jeszcze jakieś dodatkowe spoiwo) i czy nazwa AJAX stanie się standardem. Nie wiadomo. Wiem tylko jedno – warto zainteresować się AJAX’em już dziś.

poniedziałek, maja 09, 2005

Wieści z branży IT

Niebezpieczny Firefox
Kolejne luki krytyczne w Mozilli. Pierwsza wiąże się z IFRAME, druga z instalacją dodatków. Obydwie umożliwiają dostęp do komputera, kody źródłowe programów, które to umożliwiają można znaleźć w internecie. Rada Secunii – wyłączyć JavaScript, wyłączyć opcję instalacji oprogramowania przez strony internetowa. Moja rada – przenieść się na Operę lub poczekać do kolejnej aktualizacji FF.

Odnośniki :
artykuł Secunii
oficjalny komunikat mozilla.org

AJAX – z czym to się je?

Asynchronous JavaScript & XML – AJAX, pojęcie wprowadzone po raz pierwszy przez Jesse Jamesa Garretta. Dawniej (i jak by na to nie patrzeć – obecnie również) budując witryny używaliśmy języków skryptowych server-side (np. PHP) oraz client-side (np. HTML czy JavaScript). Aby jakiekolwiek dane na serwerze zostały zaktualizowane, należało najpierw je tam wysłać. Koniec z tym! Teraz przeglądarka internetowa, za pomocą obiektu XMLHttpRequest sama, bez odświeżania, wymienia z serwerem potrzebne informacje.

AJAX nie jest czymś kompletnie nowym, w pełnym tego słowa znaczeniu. AJAX to bardziej pojęcie, charakteryzujące odpowiedni sposób użycia i wykonywania nowych i starszych technologii – XML oraz JS, które w połączeniu z XHTML, CSS, obiektowym modelem dokumentów (DOM) oraz językiem server-side (PHP czy ASP) – tworzą mieszankę zaiście wybuchową – jakby nowy krok ku interakcji na stronach internetowych.

Technologię AJAX najlepiej widać na przykładach – począwszy od najnowszych serwisów firmy Google – takich jak Google Mail, Google Sugests, Google Maps czy Orkut, aż na wyszukiwarce Amazonu – A9 czy serwisie foto-share flickr.com.

zachęcam do przeczytania tego artykułu w portalu php.pl (wersja polska oczywiście...) – znajdziecie tam szerszy zasób informacji oraz użyteczne odnośniki.

Hmm... jutro chyba dopiszę więcej ciekawych rzeczy o Ajaxie, bo zaczyna mnie to wciągać.

PS. Fajny sampelek XMLHttpRequest.

niedziela, maja 08, 2005

Visual Studio 2005 Beta 2

No więc od paru dni jestem szczęśliwym posiadaczem wersji Beta 2 wspaniałego pakietu programistycznego, jakim jest Visual Studio 2005. Dobra, koniec słodzenia... Dostarczono mi cztery płytki DVD w gustowym opakowaniu. Na jednej samo VS, na drugiej SQL Server 2005, później Team Fundation Server 2005 i wreszcie wefly247.net - płytka zapełniona przykładową aplikacją dla środowiska .NET (linie lotnicze czy coś takiego), demonstrująca jego olbrzymie możliwości oraz wieloplatformowość (interesuje mnie zwłaszcza współpraca z małymi urządzeniami przenośnymi - jak PDA i komórki). Ponadto wiele przykładowych filmów.


No cóż - sam pakiet to moloch, wraz z dokumentacją MSDN zajmuje na dysku twardym około 4 GB. Mnóstwo skrótów w menu start, nowe konta użytkowników itd. - ogólne spowolnienie systemu. Prędkość działania również pozostawia wiele do życzenia, ale cóż... nie w tym tkwi siła.


Do całości dołączony świeżutki .NET Framework 2.0 w wersji Beta oczywiście.


Póki co sprawdzam - będę co jakiś czas zdawał relację z pola boju, obecnie jednak bardziej zajmuje mnie programowanie w PHP oraz dwie dziedziny moich studiów - matematyka dyskretna oraz logika.