Kod JavaScript dość często jest kompresowany w celu zmniejszenia jego rozmiaru a tym samym ilości danych wysyłanych do klienta czyli przeglądarki. Kod ten oprócz oczywistych zalet czyli zmniejszonego rozmiaru ma też poważną wadę - jest kompletnie nieczytelny dla człowieka. Wynika to z faktu, iż najczęściej posiada minimalną (potrzebną do poprawnego przetworzenia przez przeglądarkę) ilość białych znaków takich jak odstępy, znaki końca linii czy wcięcia czyli wszystkie te elementy, które czynią kod czytelnym.

Microsoft na początku marca wypuścił publiczną betę swojej przeglądarki Internet Explorer w najnowszej wersji 8. Niestety jak można było się spodziewać wypuszczona wersja nie działa jako samodzielny program i nie bardzo rozumiem dlaczego chcąc tylko przetestować produkt w niestabilnej jeszcze wersji (bo po to w końcu MS wydaje wersję beta) muszę zaktualizować obecną stabilną wersję. Na szczęście istnieje dość prosty sposób aby obejść to ograniczenie.

Testy Acid zostały przygotowane przez organizację Web Standards Project (WaSP) do weryfikacji zgodności silników przeglądarek ze standardami World Wide Web Consortium (W3C). Producenci przeglądarek zazwyczaj dążą do bezbłędnego przejścia tych testów i o ile test Acid2 przechodzi większość najnowszych wersji przeglądarek (oprócz Internet Explorera - mimo zapowiedzi nawet w wersji 8 beta) o tyle Acid3 po prostu masakruje większość najnowszych browserów.

Baza danych SQLite stanowi ciekawą alternatywę dla niezwykle popularnego serwera MySQL. Jest niezwykle prosta w utrzymaniu, bo cała baza mieści się w 1 pliku, który można łatwo skopiować lub przenieść ale mimo tej pozornej prostoty posiada obsługę transakcji, triggerów, widoków, możliwość tworzenia własnych funkcji oraz wykonywania zagnieżdżonych zapytań. Nie korzysta ona z typowego silnika pracującego w tle ale ze zwykłej biblioteki dostępnej dla większości współczesnych języków programowania.

Jak wiadomo Google udostępnia coraz więcej darmowych narzędzi online umożliwiającymi współdzielenie danych między użytkownikami. Narzędzia te pozwalają na tworzenie kalendarzy, arkuszy i dokumentów, albumów zdjęć i wiele innych. Narzędzia te oferują dużą funkcjonalność a największa zaleta to możliwość udostępniania wszelkich wprowadzonych danych. Do pełni szczęścia brakuje jedynie możliwości dostępu do aplikacji Google z poziomu własnych aplikacji.

DOMPDF jest jedną z lepszych bibliotek do konwersji dokumentów HTML do formatu PDF w PHP. Jest darmowa, wygodna w obsłudze i posiada stosunkowo dobre odwzorowanie kodu html. Niestety w tego typu konwersjach zazwyczaj pojawia się problem z polskimi znakami i klasa DOMPDF nie należy do wyjątków. Okazuje się, że istnieje rozwiązanie tego problemu.

Projektując aplikację internetową dość często korzysta się z plików konfiguracyjnych zawierających chociażby dane do połączenia z bazą. Sposób zapisu tych danych jest zależny od formatu pliku z konfiguracją. Dość często formatem tym jest XML ze względu na możliwość uzyskiwania praktycznie dowolnej struktury pliku. Niestety wadą formatu XML jest często przerost formy nad treścią czego wynikiem jest spory narzut informacji o strukturze pliku w porównaniu do samych danych, które mają być wykorzystane.

Wbudowany w PHP mechanizm sesji ze względu na łatwość użycia jest zdecydowanie najbardziej popularnym sposobem przechowywania zmiennych między kolejnymi przeładowaniami strony. Niestety mechanizm ten ze względu na swoją prostotę nie jest do końca bezpieczny. Istnieją różne sposoby zabezpieczenia sesji i własne mechanizmy obsługi zmiennych sesyjnych jednak najczęściej są one dosyć skomplikowane. Ja chciałem przedstawić bardzo prosty bo wbudowany sposób uczynienia sesji bardziej bezpiecznymi.

Aplikacje internetowe korzystając z technologii AJAX prawie zawsze muszą wymieniać dane pomiędzy interfejsem użytkownika (JS, Flash itp) a serwerem (PHP, ASP itp). Jak wiadomo nie można wprost przesłać np. tablicy czy obiektu z funkcji JS do skryptu PHP korzystając z obiektu XMLHttpRequest gdyż struktura takiej tablicy czy obiektu zostanie utracona. Należy więc dane jakoś przekształcić a najlepiej do pojedynczego łańcucha znaków. Dobrze byłoby gdyby po stronie przeglądarki w skryptach JS nie trzeba było korzystać z dodatkowych bibliotek niepotrzebnie powiększających ciężar strony. Ideałem byłoby gdyby format był zwięzły i w miarę czytelny. Spełnienie wszystkich tych życzeń wydaje się być nierealne a jednak!

Wzorzec factory należy do wzorców konstrukcyjnych. Pozwala na tworzenie obiektów bez konieczności specyfikacji klas na podstawie której będą tworzone. Umożliwia on stworzenie osobnej metody odpowiedzialnej za tworzenie nowych obiektów.
Aby pokazać działanie wzorca factory posłużę się prostym przykładem.