Technologie i narzędzia: język PHP 5, Java, JavaScript, Python, system Zend Framework, Django, biblioteka jQuery, Smarty, platforma Eclipse, MySQL, SVN, CVS, UML, Firefox.
WebProgramming - wszystko o serwisach internetowych
O serwisach internetowych.
Serwis dobrzypolitycy.pl w Google.
Kilkanaście dni temu wzmianka o tym serwisie znalazła się nawet w telewizji - postanowiłem więc, że sam tam zajrzę. Z racji jednak, że nie pamiętałem dokładnie adresu (wiedziałem tylko, że był związany ze słowem “politycy” ) postanowiłem skorzystać z wszechwiedzącego Google. Po kilku próbach odnalazłem poszukiwany serwis.. z tym że zaciekawił mnie jego opis (stan na 1 luty 2009).
[jquery] Zaawansowany interfejs użytkownika
Era brzydkich, ciężkich stron internetowych dawno już minęła - teraz przyszedł czas na ładne, proste aczkolwiek funkcjonalne strony i aplikacje internetowe. W tych ostatnich bardzo ważną rolę odgrywa UI (ang. User Interface) tworzone przy pomocy języka JavaScript - coraz więcej powstaje bibliotek do tworzenia ciekawych komponentów graficznych w świecie web. Oczywiście odkrywa to całkowicie nowe możliwości dla projektantów serwisów internetowych, którzy przed rozpoczęciem swoich prac powinni zapoznać się z aktualnymi możliwościami bibliotek JavaScript.
[php|zend] Prosta klasa do konwertowania/sprawdzania typu.
Na potrzeby biblioteki obsługi plików CSV w Zend Framework (i ogólnie w języku PHP) stworzyłem prostą klasę, która miała służyć do konwertowania i sprawdzania typu napisu (ang string). Z racji, że implementuje ona odrębną funkcjonalność postanowiłem przedstawić ją osobno, zanim przejdę do omawiania wspomnianej biblioteki Fasic_Csv.
[php] Nielogiczne instrukcje.
Z przykrością trzeba przyznać, iż zdarzają się “miejsca” w których język PHP nie jest ani logiczny, ani konsekwentny w swoich założeniach. Oto moja lista “zażaleń”.
[eclipse|php] Tworzenie szablonów.
Zapewne nikt nie lubi robić nudnych, często powtarzających się czynności. Do nich niewątpliwie można zaliczyć (i to niezależnie od wykorzystywanego frameworka i języka) tworzenie klas odpowiedzialnych za konkretną rzecz (np klasy modeli, widoku, itp).
Całe szczęście Eclipse (a dokładniej PDT 1.0.3) dostarcza nam mechanizmu szablonów (ang. Templates), które umożliwiają stworzenie szkieletu danej klasy w kilka kliknięć.
[php|zend] Przykłady dla biblioteki Fasic_Mail + nowa wersja biblioteki.
Dwa miesiące temu przedstawiłem system szablonów e-maili oraz najprostszy przykład jego użycia. Tym razem chciałbym podać bardziej zaawansowane przykłady (niektóre z nich były już wspomniane) wraz z kodem źródłowym, w tym: obsługa wielu managerów, wielojęzyczność, treść e-maili w formacie HTML i obsługa załączników.
[usability] 10 porad.
Osoby zainteresowane tematem użyteczności na pewno zaciekawi pewien artykuł, który miałem przyjemność niedawno przeczytać, a mianowicie “10 Ustability Tips for Web Designers“.
Trudno się z tymi uwagami nie zgodzić, zastanawia mnie jedynie ostatnia z wymienionych porad “Unikać CAPTCHAs” - z punktu widzenia użyteczności może to i dobra uwaga… ale po coś to zostało wprowadzone ;). Po usunięciu ich z formularzy wracamy do punktu wyjścia - w tym momencie musimy rozwiązać problem wysyłania formularzy przez automaty.
Po przerwie…
I ponownie moja zdolność twórcza została zagłuszona przez szarość dnia codziennego.. czytaj prace.
Wracam jednak z wielkich hukiem i już niebawem przedstawię parser plików CSV.
Przy okazji życzę wszystkim:
Wesołych, zdrowych Świąt, spędzonych w gronie rodzinnym (z dala od komputera - wytrzymacie te kilka dni
), szampańskiego Sylwestra oraz wielu sukcesów w Nowym Roku. Życzę również (i Wam i sobie), aby spełniło się wielkie marzenie… projektów bez deadlinu ;).
[php|zend] Szablony emaili.
Biblioteka wysyłania e-maili w systemie Zend Framework jest bardzo fajnie zaprojektowana i zaimplementowana (patrz Zend_Mail). Niestety brakowało mi w niej obsługi szablonów, które spełniałyby następujące kryteria:
- Treść e-maila jest poza kodem PHP (patrz też pkt 3)
- Sparametryzowanie e-maili, czyli możliwość wysyłania tych samych e-maili różniących się tylko niektórymi wartościami (np e-mail aktywacyjny może różnić się tylko adresem aktywacyjnym)
- Wybór między źródłem treści szablonów (na przykład pliki xml, baza danych)
- Możliwość ustawiania domyślnych wartości dla pól takich jak: temat, adresat, załączniki.
Tak bardzo mi tego brakowało, iż postanowiłem tą ideę przelać na kod.. oto wynik.
Przeglądarki różnych wersji na jednym komputerze.
Jak powszechnie wiadomo web developer jest nijako zmuszony testować swoje dzieła pod różnymi przeglądarkami - standardem są oczywiście testy pod Internet Explorer 6 i 7 (a niebawem zapewne dojdzie do tej listy numerek “osiem”) oraz FireFox - zarówno dla wersji 2.x jak i 3.x (obie wersje różnią się znacznie, w szczególności w implementacji silnika JavaScript). Jak sobie z tym poradzić mając do dyspozycji tylko jeden komputer?