End of year 2005

Vreme leti (i zimi i leti) i evo, samo što nismo ispratili ovu 2005-u godinu.

Svi nešto kao prave analize, sumiraju rezultate, pa evo i ja da se pridružim. Ovo je moje lično, koga interesuju globalni utisci, pravac na DevTalkPro :)

Godinu sam započeo sa velikim promenama na poslovnom planu. Napustio svoje višegodišnje prijatelje iz Boox-a kao i rad na SiteBuilderu sa svojim američkim kolegama. Sledi prelazak u Outcomesresearch, traženje developera, otvaranje office u Kragujevcu, … jednom rečju era optimizma. Nakon sjajnog početka (par revolucionarnih projekata … pssst top secret) i velikih obećanja, lagano korak po korak smo se razišli u svemu. Nakon manje od godinu dana, sledi razlaz i nov posao. Back to Lamp :)

Nakon nekoliko meseci zatupljivanja sa Macromedia Directorom, ponovo sam “kao riba u vodi”. PHP/Unix programiranje, rad sa milionskim tabelama i sl. Mali projekti sa kratkim rokovima, nekako mi to najviše leži. Nakon sjajna 3 meseca na novom poslu nudi mi se partnerstvo sa sadašnjom kompanijom, i ponovo isto, potraga za novim developerima, office i sl. Krug se zatvara kao što smo ispratili i prošlu godinu ? Hmm … ne baš. Ovaj put je drugačije. Lampix.

Ovaj put radim za sebe. Lampix je ime firme (u osnivanju) koja se neće baviti lampama već razvojem LAMP based Web Aplikacija. Za ime Lampix zaslužan je Kuki (Kuki kad postanem milioner možda i dobiješ nešto od toga, no sada kada sam u “garaža” fazi dosta je i što te pominjem na blogu ;) O Lampix priči i o programerima u Srbiji pričaću drugi put. Tek sledeće godine :)

Have a good one! :)

MySQL – Prebacivanja tabele iz jedne baze u drugu

Pre neko veče sam morao da prebacim nekoliko tabela iz jedne baze (na istom MySQL serveru) u drugu. Pošto nisam imao vremena da se smaram sa dump-om, posle kraćeg razmišljanja došao sam do sledećeg rešenja:

use prvabaza;
create table foo like drugabaza.foo;
insert into foo select * from drugabaza.foo;

gde je prvabaza baza u koju prebacujemo tabele iz drugebaze. create table like … kreira tabelu identično originalnoj uključujući i indexe, a drugi iskaz kopira podatke iz jedne u drugu. I tako za svaku tabelu posebno (srećom nije ih bilo mnogo).

Danas sam listajući MySQL knjigu došao do znatno jednostavnijeg rešenja :)

alter table drugabaza.foo rename prvabaza.foo;

Jednostavno, brzo, efektno! Nadam se da će nekome ovo koristiti.

Firefox 1.5 final

Par meseci nakon najave, finalna verzija Firefox-a 1.5 od danas je dostupna za download.

Iako sam se pribojavao da bi nova verzija mogla da napravi (uobičajene) probleme sa extenzijama, instalacija je protekla sasvim glatko. Firefox me je obavestio da su extenzije koje imam instalirane nekompatibilne sa novom verzijom, ponudio update istih što sam prihvatio i nakon 10-tak sekundi sve extenzije su bile update-ovane na kompatibilne verzije.

Od vidljivih poboljšanja tu su novi “drag ‘n drop” tabovi, kao i nova opcija “Clear Private Data” (ovo je očigledno preuzeto iz Opere). Posebno izdvajam novi “Automated Update” koji će za razliku od prethodnih verzija sada (konačno) biti u stanju da skine mali “patch” umesto da izvona instalira ceo proizvod prilikom instalacije raznih sigurnosnih zakrpa.

Poboljšanja ispod haube su impresivna. Novi Firefox donosi potpunu podršku za SVG, CSS 2 i CSS 3, kao i JavaScript 1.6. Očigledno da će novi IE7 (kada se konačno bude pojavio) i dalje kaskati za Firefoxom barem kada su u pitanju W3C standardi. Više o novinama u novoj verziji Firefox-a možete naći ovde.

Za kraj interesantna novost. Firefox i Thunderbird se od sada nalaze na Mozilla.com sajtu.

PHP 5.1 released

Nakon nekoliko meseci od najave i desetak nezvaničnih “release candidata”, nova verzija PHP-a konačno je ugledala svetlost dana.

PHP 5.1 po nekim testovima donosi značajna unapređenja u perfomansama u poređenju sa prethodnim verzijama. Tu su i već pominjani PDO (PHP Data Object – DB persistant layer) kao i kontroverzne promene u date funkcijama.

Koliko će nova verzija uticati na značajniji proboj “petice” na serverima, ostaje da se vidi. Po onome što sam do sada video, nažalost moram da priznam da sam vrlo skeptičan.

Browser Detection – Revisited

Pre nekoliko nedelja postavio sam na blog jednostavnu klasu koja služi za detekciju browsera. Kao svoj doprinos open source-u, istu sam submitovao na phpclasses.org sajt (pod BSD licencom) i moram da priznam da me je priličo iznenadio njen uspeh.
U prvoj nedelji od postavljanja, klasa se nalazi na trecem mestu po popularnosti, što je moram da priznam bilo iznenađenje za mene. No, ne mogu poreci da me je njen uspeh obradovao, tim pre sto se radi o “projektu” koji je nastao kao rezultat jednog lenjog i dosadnog nedeljnog popodneva :).

Zend Studio 5.0 is out

Kompanija Zend danas je objavila petu verziju Zend Studia, bez premca najboljeg okruženje za razvoj PHP aplikacija, koje će očigledno Zend i PHP još više pribiližiti velikim “Enterprise” korisnicima.

Zend Studio 5 donosi niz poboljšanja od kojih posebno izdvajam podršku za subversion – sve popularniji open source version control software, naslednik CVS-a.Od ostalih novosti tu je podrška za Web servise, SSL FTP kao i takozvani “Case Folding”. Više informacija o novoj verziji možete pronaći ovde.

Više rada = manje sexa ?

Na osnovu globalnog istraživanja koje je sproveo Durex, najmanju seksualnu aktivnost imaju stanovnici azijskih zemalja. Čak 9 od poslednjih 10 su zemlje u regionu istočne Azije (Indija, Indonezija, Kina, Japan, Hong Kong, Malezija, Signapur, Tajvan, Tajland). Menadžeri Durexa ovo tumače time da se sve gore navedene zemlje nalaze u periodu ubrzanog ekonomskog razvoja, te se njihovi stanovnici zbog konstantnog stresa na poslu slabo upuštaju u seksualne aktivnosti.

Naravno, vodeći na ovoj listi su Balkanci. Prva je Grčka sa prosečnih 138 seksualnih odnosa godišnje, slede Hrvatska sa 134, Srbija i Crna Gora sa 128 i Bugarska sa 127. Poređenja radi, Japan koji se nalazi na samom dnu ima prosek od samo 45 odnosa godišnje.

Browser Detection

I needed a simple PHP class that detect browser and OS based on user agent string. I’ve tried some free available classes on net like PEAR::Net_UserAgent_Detect, but none worked for me. They were either too big or didn’t worked well with most recent browsers (like Opera 8.5 or Netscape 8).

After I spent some time by looking to code that suit my needs, I’ve decided to write my own class which should be working fine with most recent browsers. It recognize most popular browsers (like IE, Firefox, Opera …) as well as it’s version and subversion number (like Opera 8.50, Firefox 1.0.6, etc.). I didn’t care to add support for ancient and no longer used browsers like Netscape 4.x etc.

Here is the class code. You can use it in your projects for free as long as you don’t change header information.

Read More

Vreme promena

U jednom od prethodnih zapisa rekoh da se tokom perioda u kome je blog bio down dešavalo “svašta/nešto” (uh koja glupa fraza :) E danas sam nakon par dana ludila konačno nahvatao vremena da malo pišem o tome. E pa krenimo redom.
Read More