Jak robić wersje językowe w PHP

slav

Tym razem kilka słów o robieniu wersji językowych dla naszych aplikacji. Praktycznie każdy framework oferuje jakieś wbudowane rozwiązanie. Wbudowane rozwiązania wiadomo – raz działają szybciej, raz wolniej.

Tak naprawdę mamy do wyboru kilka opcji – trzymanie wszystkiego w osobnych szablonach dla każdej wersji językowej (widoki), wykorzystanie stałych (define('zapisz', 'save') – i odpowiedni plik dla każdego języka), trzymanie danych w tablicach globalnych (array('zapisz' => 'save') – reszta jw).

Potem w grę wchodzą rozwiązania dedykowane – pliki .ini i parsery (m.in. Smarty) no i co tam sobie wymyślimy – można tłumaczenia trzymać w bazie, potem generować jakieś pseudo konfiguracje i podmieniać. Wszystko opiera się na jednej zasadzie – musimy mieć gdzieś oryginał i tłumaczenia.

Nowa kategoria: realizacje

Nowa kategoria: realizacje

slav

Od czasu do czasu ktoś zadaje mi pytanie: “No dobra, taki mądry jesteś, a jakieś realizacje? Portfolio?”. Prawda jest taka, że przez parę ładnych lat (dobijam do 10) wykonałem kilkadziesiąt a może więcej różnego rodzaju produkcji. Częściowo sam, częściowo z moim nieistniejącym już zespołem (pozdrowienia dla Konrada który był ze mną praktycznie od początku i chyba najdłużej, Sita który wprowadził obiektowość i mnóstwo rozrywki no i oczywiście dla Rafała który nie istnieje online ;). Niestety z racji ilości produkcji nie byłem w stanie, a w zasadzie brakowało czasu dla dokumentowania naszych osiągnięć.

Cache w MySQL

Cache w MySQL

slav

Temat optymalizacji i przyspieszania skryptów, serwerów i komputerów towarzyszy mi od zawsze. Pisałem już trochę o wszelkiego rodzaju mikro optymalizacjach, o cache’owaniu wyników PHP, przyspiesznaiu serwerów poprzez rozwiązania typu eaccelerator, ale jakoś pominąłem podstawowy i ważny aspekt prawie każdego projektu – serwer MySQL.

Lighttpd i mod_expire

Lighttpd i mod_expire

slav

Optymalizacji ciąg dalszy 🙂 Page Speed Online często doczepia się do ustawienia expiry date dla plików, które mają być długo cache’owane. Generalnie chodzi o to, żeby przeglądarka automatycznie cache’owała nam pliki jak najdłużej sięda – pliki naszego serwisu, które nie często sięzmieniają jak biblioteki CSS czy JS, a nawet niektóre obrazki.

Jak to zrobić jeżeli nasze strony serwuje lighttpd? Z pomocą przychodzi nam mod_expire – moduł przeznaczony dokładnie do tego zadania. Oczywiście nie będziemy się bawić w zbędne wstępy – esencja.

KeePass Password Safe – czyli jak bezpiecznie przechowywać hasła

KeePass Password Safe – czyli jak bezpiecznie przechowywać hasła

slav

O KeePass’e wspominałem już kilka razy, ale zasadniczo nigdy go porządnie nie przedstawiłem. Jest darmowy – wieloplatformowy – menadżer haseł. Istnieje wiele podobnych programó, ale ten jest OpenSource – kod można samodzielnie skompilować, jeżeli ktoś “nie wierzy”. Działa zarówno pod Linux’em, Windows’em no i oczywiście Mac OS X. Są też wersje na iPhona – niestety wszystkie płatne, oraz darmowa na Androida.

Generowanie bezpiecznego hasła z linii poleceń

Generowanie bezpiecznego hasła z linii poleceń

slav

Generowanie bezpiecznych haseł nie jest prostym zadaniem. Wprawdzie możne klepać na oślep w klawiaturę, albo generować “pseudo” bezpieczne hasła w postaci A1a-ma_k0ta, ale jeżeli musisz wygenerować takich haseł kilkadziesiąt jest to zadanie raczej nudne i upierdliwe.

Na tzw. desktopie zwykle używam KeePass a – genialnego managera haseł, który ma też funkcję generowania haseł o wysokim poziomie “losowości”. Pod konsolą jednak – nie jest tak wesoło. Prosty skrypt, który ułatwi nam to zadanie.

Safari 5.1 developer preview

Safari 5.1 developer preview

slav

Jakieś 3 godziny temu dostałem informacje o nowym wydaniu Safari 5.1 – jest to wersja poglądowa dla Developerów. Czy warto się z nią zapoznać? Co nowego przynosi nam wersja 5.1:

FreeNAS 8.0 duże zmiany

FreeNAS 8.0 duże zmiany

slav

O FreeNAS pisałem już wcześniej, w kwestii porównania go do OpenFiler ‘a. Tym razem twórcy zaskoczyli nas zupełnie nową wersją – jest to najpoważniejsza zmiana od początków projektu, które sięgają roku 2005.

Kilka słów historii – FreeNAS powstał na bazie m0n0wall ‘a, z racji na swoją prostotę obsługi i ogromne możliwości bardzo szybko stał się popularnym rozwiązaniem dla każdego, kto chciał szybko i bezboleśnie uruchomić serwer NAS.

10 minutowy email

slav

Podawanie swojego adresu email często wiąże się z ogromną ilością SPAMu jaki potem na niego dostajemy. Można mieć dwie skrzynki, jedną dla wszystkich, drugą na SPAM ale nie jest to specjalnie wygodne rozwiązanie – choć pewnie przez wielu stosowane.

Wprawdzie gmail doskonale radzi sobie ze SPAMem, ale czasami można go po prostu uniknąć. Jak? Recepta poniżej.

Linux expect czyli wysyłanie danych sftp przez skrypt

slav

Dzisiejszy dzień przyniósł mi do wykonania kolejne zadanie z którym ktoś sobie nie poradził. Wiadomo Linux jest cool, da się wszystko zrobić tylko trzeba się naklepać. Zadanie było nader proste: zautomatyzować proces wysyłania danych na serwer SFTP.

Wydaje się to być proste – mamy crona, mamy login i hasło do serwera SFTP jest tylko jeden problem serwer SFTP zaraz po połączeniu pyta o hasło i nie przejmuje go z linii poleceń.