Opera 8.5 besplatna! :-)

Znao sam da ono davanje licenci za 10.ti rođendan nije bilo tek tako 🙂

Opera je izbacila novu verziju, 8.5o i ovoga puta je potpuno besplatna. Razlog za to je verovatno profit koji Opera ostvaruje od verzija za mobilne telefone.

U svakom slučaju, ako ste se do sada dvoumili / mrzeli reklame, evo prilike da probate još jedan odličan, besplatan pregledač weba.

Opera 8 – jedan fini browser

Jedan sam od onih “čudaka” koji pored Internet Explorer-a, browsera (Internet pregledača? nikad nisam siguran u pametan prevod) “ugrađenog” u sam operativni sistem, traži nešto bolje, kvalitetnije, nešto što će podići udobnost surfovanja na neki viši nivo – smatram da vreme (koje je znatno) provedeno pred mašinom treba što bolje iskoristiti. So, IE nije moj browser 🙂

Iako je tokom vremena mnogo browsera došlo i nestalo, sada je na tržištu samo nekoliko bitnih igrača:

1. Microsoft Internet Explorer

I dalje ga koristi najveći broj ljudi, zbog inercije, lenjosti ili neznanja da tamo negde u divljini postoji nešto bolje. Zastareo sistem iscrtavanja stranice koji ne podržava mnoge prednosti CSS 1 i CSS 2 web standarda. Praktično je razvoj ovog browsera prestao oktobra 2001 – što je u terminima razvoja informacionih tehnologija jaaako staro.

Osnovna prednost mu je što dolazi uz operativni sistem. Osnovna mana mu je što dolazi uz operativni sistem 🙂 Kako je vrlo integrisan, i pun propusta, hakeri ga vrlo često biraju kao vrata za ulazak na vašu mašinu. Barem jednom mesečno se objavljuju sigurnosne zakrpe koje je potrebno instalirati za neku novopronađenu rupu.

Iako je najlakše ne uložiti trud, toplo preporučujem da se klonite ovog browsera.

2. Mozilla / Firefox

Nastao na kodu legendarnog Netscape browsera (koji je pregažen od strane IE-a), ovo je jedan isti browser u dva pakovanja: Mozilla Suite je paket browser + podrška za elektronsku poštu, dok je FireFox “goli” browser. Ovo je drugi najpopularniji browser na tržištu, besplatan je, sa daleko boljom podrškom za web standarde. Preporučujem vam da ga probate.

3. Opera

Komercijalni browser (da, da, za programe se plaća ;)) koji postoji kao i ad-ware verzija – ne plaćate ga, ali gledate (ili ne gledate) nenametljive reklame – ovo nije ad-ware kao spyware, već integralni deo same Opere i ne ide dalje po vašem računaru.

Operu koristim od verzije 5 (tekuća je verzija 8 ) i ono što je ukratko opisuje je: brzina, udobnost, podesivost i podrška standardima. Opera je najbrži browser za koji ja znam – izuzetno se brzo podiže, još brže iscrtava stanice. Ugrađena je podrška protiv dosadnih iskačućih (pop-up) prozora, gde imate punu kontrolu. Sastavni deo je klijent za email, Notes (beleške), i odličan rad sa omiljenim lokacijama (Favorites ili u Opera terminologiji – Bookmarks). Evo nekih karakteristika Opere:

  • Sigurnost – nije integrisana u operativni sistem, pa je upad mnogo teži; ima podršku za odbranu od “pecanja”, nove tehnike koju hakeri koriste da lažno prikažu identitet sajta; jasan prikaz SSL sertifikata i detalja o njima; kontrola kolačića (cookies)..
  • Brzina – ovo sam već rekao, ali je najbolje probati; ako ste još uvek na dial-up vezi, kombinacija: učitaj strane u pozadini bez slika dok ja pregledam tekuću će vam tek pokazati kako treba i kako se može surfovati na 28kbps (probao :))
  • MDI sistem surfovanja – Kod Opere se prozori otvaraju unutar same Opere (mada ima i mogućnost kao kod IE – svaka strana posebni prozor) i samo kretanje kroz otvorene prozore je brzo i intuitivno – bilo preko tastature (Ctrl-Tab / Ctrl-Shift-Tab) ili mišem, kliktanjem na tabove od prozora
  • Direktna pretraga – Prostim unošenjem “g termin” u adresnoj liniji, odlazite na Google i pretražujete po “termin” delu – vrlo brzo do rezultata pretrage
  • Informacija je sve – Kod Opere je maksimalno olakšan dolazak do bilo kakve informacije – stranica koju gledate se može iskoristiti na milion načina: markirajte mišem deo teksta na stani, desni klik na markirani deo i možete pretražiti markirani deo na Googlu, dobiti proveru spelovanja (ako je engleski u pitanju), potražiti značenje u rečniku ili ga pak prevesti na neki od jezika. Dodajte Shift ili Ctrl-Shift pre nego li odabere opciju pa će se sve ovo desiti u novom prozoru il u novom prozoru u pozadini – kada se jednom navučete na ovakav način rada, nema nazad 🙂

Sve komande koje su vam potrebne su na dohvatu ruke (za samo surfovanje vam miš maltene ni ne treba): uključivanje/isključivanje slika (Shift-I), prikaz stranice kakva bi izgledala u štampi (Shift-P), prikaži preko celog ekrana (F11) itd.

Za web programere ima i opcije kao što su: “Pretvaraj se da je ovo mali ekran” (Shift-F11) koja vam omogućava da proverite kako bi određena strana izgledala na Operi za mobilne telefone (svi Symbian telefoni mogu da koriste Operu kao svoj browser), ili “Validate Page” (Ctrl-Alt-V ili u pozadini: Ctrl-Alt-Shift-V)

O Operi bih mogao napisati stranice i stranice (i jesam, za Almanah) ali mislim da je ovo za početak sasvim ok 🙂 Ako sam vas iole zainteresovao, kliknite ovde:

Download Opera

(a donece mi i poene ;)), skinite Operu 8 i probajte je – necete se pokajati (ili barem samo kliknite ;)).

Evo i nekih linkova gde mozete puno nauciti o Operi:

http://tntluoma.com/opera/lover/7/ – 30 Days to becoming an Opera7 Lover (starija verzija, puno stvari primenljivo)

http://operalover.tntluoma.com/8/- 30 Days to becoming an Opera8 Lover (nova serija teksta, stiglo se do osmog dana)

RSS Bandit – jedan dobar RSS čitač

Za uspešno praćenje web dnevnika vam definitivno treba odgovarajući program. Tačno je da sve dnevnike možete pratiti i preko običnog web čitača, ali time gubite iz vida bitnu prednost RSS protokola: svi članci na jednom mestu.

Kao što sam u nekom od prvih postova pomenuo, moj izbor do skora je bio SharpReader – pomalo spartanski, malo zahtevniji (guta solidnu količinu memorije) ali je besplatan i radio je posao. No, kako se povećavao broj dnevnika koje pratim, primetio sam jednu veliku manu: SharpReader nije čitao WordPress dnevnike kojih je svakim danom sve više.

Takvo ponašanje sam uredno prijavio autoru pre nekoliko meseci, ali je autor Luke Hutteman izgleda prezauzet – došlo je vreme da potražim alternativu. Uslovi koje sam postavio nisu mi izgledali previše teški za ispunjenje: nekomercijalan program (Freeware / Open Source), udoban korisnički interfejs i lako prenošenje dnevnika koje pratim s jednog mesta na drugo (čitaj: posao / kuća).

Od jednostavnog zadatka je ispao posao od solidne dve nedelje – oko 10-ak programa koje sam skinuo, probao, maltretirao; na kraju se ubedljivo izdvojio jedan:

RSS Bandit

Nastao kao vežba na MSDN sajtu tj. primer o lakoći korišćenja novih tehnologija u .Net okruženju, RSS Bandit je sada udoban, brz, solidan program i uz to Open Source projekat – izvorni kod vam je dostupan bez ograničenja. Ako vas zanimaju tehnike programiranja, toplo savetujem da bacite pogled na ovaj kod.

Ako niste zadovoljni vašim čitačem, ili želite da probate alternativu, neka vam RSS Bandit bude u vrhu liste 🙂

Blog spam – pošast na pragu

Nije dugo trajalo, ni dva meseca a blog spameri su pronašli moj blog 🙁 – to se može lako desiti i vama, jer po web logovima vidim da su me našli preko Planetoida.

No, ne očajavajte 🙂 Postoji puno načina da ih sprečite ili barem umanjite štetu koju prave. Kao što sam rekao u jednom od ranijih članaka WordPress je moj izbor za pogon ovog dnevnika. I u osnovnoj instalaciji postoji način za borbu protiv spama, ali se na kraju svodi na kontrolisanje svih komentara tj. ručno odobravanje, koje može biti jako zamorno, ako komentari dolaze tempom 1 po minuti.

Na sreću, WP je pisan kao vrlo otvoren sistem, sa dobrim mogućnostima za proširivanje; rečeno – učinjeno: instalirao sam WordPress Hack: AuthImage, i uz modifikacije iz komentara 5 (Verat ne podržava Freetype biblioteku kao ni mod rewrite) naterao ga da proradi.

Znam da ovim komentarisanje članaka činim za nijansu neugodnijim (morate uneti autentikacioni kod), ali od kada sam aktivirao AuthImage (pre sat) ni jedan spam nije prošao.

Redirekcija sa .htaccess

Po završetku redizajna sajta, i kompletnom prelasku sa statičkih .html na dinamičke .php stanice, pogledao sam log sajta, da bih se uverio da je sve na svom mestu (ako ste i vi kod Verata, to je /log/ime-domena-err datoteka).

Užasnuo sam se gomilom grešaka 🙁 prvenstveno HTTP/404 Page not found. Normalno, više od polovine pogodaka na moj sajt dolazi sa raznih pretraživača, a oni ne osvežavaju sadržaj keša preterano često – Google ima keširan sajt od pre mesec dana. Ok, trebalo je rešiti pitanje šta sa starim adresama, koje su se negde zadržale (a u svetlu inicijative “no broken links”).

Jedna od opcija je kreiranje svih strana koje su i ranije postojale, sa kodom za redirekciju na novu stranu (meta tag) ili linkom koji vodi na novu stranu za slučaj da pregledač ne poštuje meta direktive. No, to je bilo krajnje ružno rešenje; posle malo guglovanja, uz činjenicu da je web server Apache, našao sam idealno rešenje: .htaccess datoteka! (o kojoj ama baš nigde ništa ne piše na Veratovom sajtu).

.htaccess je obična tekstualna datoteka, namenjena kontroli ponašanja web servera na direktorijum nivou; primenjuje se u direktorijumu gde je, kao i u svim poddirektorijumima ispod koji nemaju svoju .htaccess datoteku.

Pomoću ovde datoteke moguće je postavljati prava pristupa, kontrolisati redirekciju kao i koja strana odgovara na HTTP greške. Korišćenje je vrlo jednostavno; otvorite je u tekst editoru i postavite:

redirect 301 /index.html http://www.vesic.org/index.php

redirect definiše tip komande, 301 kod koji će se poslati pregledaču (Moved Permanently, za slučaj da je pretraživač u pitanju, znaće da tražena stranica nije važeća i staviće novu u red za keširanje) kao i ciljni URL na koji treba preusmeriti pregledač. Ovo je client-side redirekcija; ako želite da radite server-side redirekciju (brže, ali nema informacije za korisnika da je do promene došlo) koristite Rewrite direktive (rewriteEngine, rewriteCond, rewriteRule).

Kada već menjamo fajl, nije loše dodati i ovo:

ErrorDocument 404 /404.php

Ovako sve HTTP 404 greške preusmeravamo na našu stranu, i time izbegavamo standardnu stranu od provajdera. Za više detalja o .htaccess datoteci, molim pogledajte ovde.

WordPress i lokalizacija

Kada sam odlučio da krenem sa blogom, ispitao sam 4 rešenja za Linux/Apache/Php.

WordPress je bez daljnjeg daleko ispred tih rešenja: izuzetno laka konfiguracija, udoban i efikasan interfejs i minimalni zahtevi:

  • PHP version 4.1 ili noviji (PHP 5 se još ne preporučuje)
  • MySQL version 3.23.23 ili noviji

Ono što je bitno, WP podržava i lokalizaciju; recimo, izmenom fajla wp-includes/locale.php možete podesiti nazive meseci i dana u nedelji. No, šta da radimo sa Četvrtkom 🙂 (jedini pomenuti ima naša slova u nazivu)?

Akcija zavisi od vaše oduke: koji kodni raspored želite na stranicama? Kod nas su uobičajeni osmobitni standardi Windows 1250 (ne preporučujem, iako je lakše pripremati stranice u ovom rasporedu na Windows platformi) i ISO 8859-2 (daleko bolji izbor).

No, više nema razloga da ne koristite neki potpuniji standard, koji vam neće vezivati ruke, ni vama ni vašim posetiocima koji ostave eventualni komentar 🙂 – Unicode.

Unicode definiše tačan raspored karaktera, ali ne i njihovu prezentaciju (zapis) u odgovarajućem mediju. Za to su i dalje odgovorne kodne strane; za Unicode, prirodan izbor je UTF8, Unicode Transformation Format-8, način da Unicode karaktere predstavimo preko 8 bita (ako vas ovo zanima detaljnije, predlažem odličan članak Marka Dejvisa)

Ok, odlučili ste se za UTF8. Potrebne su dve stvari:

1. da pregledaču (browseru) posetioca vašeg sajta "kažete" da je strana zapisana u UTF8 kodnoj strani:

U okviru <head> … </head> sekcije strane, dodajte ovaj meta tag:

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

2. da sadržaj na strani zaista i bude zapisan u UTF8 formatu

Stavka dva zna da bude problem; prvo, "prava" UTF8 datoteka ima na početku tri bajta ili UTF8 signature (xEF xBB xBF) koje znaju da zbune neke tekst editore. Drugo, ako je to datoteka izvornog koda (.php / .asp strana), server može da pravi problema oko tako zapisane strane.

Da se vratimo na primer kojim smo počeli: locale.php; tu je četvrtak zapisan kao:

$weekday[4] = __(‘Četvrtak’);

No, kako zapisati Č? Tip fajla ne može da bude UTF8 jer se php uguši sa ovakvim fajlom a ni jedna od osmobitnih kodnih strana ne vrši posao. Srećom, neko je i na to mislio 🙂 Iskoristio sam HTML kodiranje (&#) bilo kog karaktera; tako gornji red postaje:

$weekday[4] = __(‘&#268;etvrtak’);

zapisan na stari način (osmobitni karakteri) a prikazan kako treba (pogledajte kalendar desno). Prihvatam da ovakav način zapisa izgleda rogobatno, ali rešava mnogo više problema no što ih uvodi.

Zaključak: ako radite u datotekama izvornog koda, koristite gornji način; ako direktno editujete neku statičku HTML stranicu, koristite editor koji to podržava, kao što je recimo Scite. Evo tabele najinteresantnijih karaktera za naše podneblje:

&#262;  Ć   &#263;  ć   &#268;  Č   &#269;  č
&#272;  Đ   &#273;  đ   &#352;  Š   &#353;  š
&#381;  Ž   &#382;  ž   &#128;  €   &#174;  ®

a kompletnija tabela je ovde: http://www.tony-franks.co.uk/UTF-8.htm

CSS, PHP, Smarty na delu

Jako dugo vremena sam zapostavljao Vesic.org i po pitanju sadržaja a i po pitanju samog html koda koji je prikazivao sajt.

Igrom slučaja (čitaj: razboleo se na odmoru ;)) dobio sam malo vremena koje sam posvetio kompletnoj obnovi sajta; uz Aleckovu pomoć, kompletan HTML kod je prepisan po CSS2 standardima što je sledeći korak daleko olakšalo: upotreba šema (templates).

Ono što je za svaki sajt karakteristično je da sve strane slede neki definisani dizajn, i da se samo radni (obično središnji deo) deo menja u zavisnosti šta je potrebno na toj strani prikazati. Ostatak strane je identičan, do nivoa referenci na ostale objekte (skriptove, css datoteke, slike) koje se menjaju u zavisnosti od “dubine” na kojoj se dotična strana nalazi u strukturi sajta.

Za održavanje tog zajedničkog dela postoje ručni 😉 metod, i metod šema – uz pomoć nekog programa obeležite zajedničke delove strane, markirate ih, a taj program se brine o tome da se pri promeni zajedničkog dela to propagira kroz sve stranice koje koriste tu šemu. U početku, taj posao je obavljao jako dobro Dreamveawer, izuzetno dobar, zahtevan i skup program.

No, kako sam ja programer i daleko lakše koristitim čist tekst editor, a moj provajder Verat u okviru web paketa besplatno omogućava Php i MySQL, ideja se sama nametnula – probati nešto novo. Na savet kolege Marjana, pogledao sam Smarty, odličnu php biblioteku šema: stabilna, dobro urađena i laka za korišćenje. Malo programiranja, malo premeštanja stranica po sajtu, izdvajanja zajedničkih delova (navigacije) za grupe stranica i sada je održavanje sajta milina; dve šeme, header.tpl i footer.tpl i set stranica koje izgledaju otprilike ovako:

< ?php
$selectedLink = 1;
$selectedSubNavLink = 0;
include 'subnav.php';
?>

i to je sve 🙂 subnav.php čuva navigaciju za taj direktorijum a sam sadržaj stranice (centralni deo) je u posebnim datotekama, koje su oslobođenje bilo kakve navigacije i formatiranja (tnx to CSS2 i Aleck :)).

Rezultat je pred vama: mnogo brži sajt (Smarty podržava keširanje jednom izvršene strane), i daleko lakše održavanje sajta (što znači više vremena za kvalitetan sadržaj).