Krajobraz tipičnih Linux desktop aplikacija poprilično se izmijenio posljednjih godina. Više to nisu ružne aplikacije od kojih skoro svaka koristi vlastiti gui toolkit već uglavnom imaju neki unificirani izgled. I jedan od dva najkorištenija toolkita započet je za potrebe jedne aplikacije pa je njegov puni naziv Gimp Toolkit (GTK). Osim unificiranog izgleda i težnje za standardizacijom, dosta je primjetan trend izrade aplikacija u interpretiranim ili tzv. skriptnim jezicima. Kako za dosta problema postoje CLI programi potrebno je samo napraviti omotač (wrapper) za njih, a dinamički jezici (još jedan naziv za spomenute :-) ) su za taj zadatak najpogodnije i najbrže rješenje.
Jedna od takvih aplikacija je Jokosher, jednostavni višekanalni audio studio koji je napravljen uz pomoć Pythona, GTKa i GStreamera. Trenutna je inačica 0.1, ali većina uspješnih open source projekata već je i u tom stupnju razvoja funkcionalna. Danas sam prvi put naletio na tu aplikaciju i ona me je i potakla na ovaj post.
Dosta je čest slučaj da developeri započinju razvoj aplikacija kako bi riješili neki svoj problem, pa poznavanje problematike pomaže da razvoj bude učinkovitiji. Predstavljanje aplikacije svijetu, u ranom stupnju razvoja, može biti vrlo korisno jer korisnici mogu pomoći testiranjem, ukazivanjem na probleme, predlaganjem poboljšanja, neki se uključuju u razvoj, drugi pišu dokumentaciju, treći prevode na svoj jezik...U svijetu komercijalnih aplikacija mali developeri nemaju sredstava koja bi im omogučila takvo nešto pa većinu takvih poslova preskaču. Naravno, nije sve tako idealno, korisnici mogu biti i problematični pa će developeri na njih izgubiti dosta vremena, a može se dogoditi da takvi specijalci mobiliziraju i dosta drugih korisnika koji će usmjeriti napore u pogrešnom smjeru.
Scribus je primjer uspješne aplikacije kojoj je bio olakšan posao jer pod Linuxom i nije imala konkurencije, ali njezin uspjeh se ne temelji samo nedostatku DTP konkurenata već na razvojnom timu koji je odlično odgovarao na zahtjeve i probleme, a po nekim osobinama prestigli su i komercijalne programe, a Scribus je portan i na Windows te MacOS platformu.
Programi za vektorsko crtanje bili su još jedna bolna, nedostajuća točka Linuxa. Inkscape mi se učinio prvim rješenjem koje bi zadovoljilo potrebe većine korisnika. Samo čini mi se da se razvoj nekako usporio. Inkscape sam uspješno koristio u jednom projektu gdje je nad ogromnom (par stotina MB) bitmapiranom (skeniranom) slikom, koja se nalazila u jednom sloju, trebalo izvući složene konture u nekoliko različitih slojeva i sve to uskladiti s orginalnom. Uspješno obavljen zadatak uvjerio me da se na Inkscape može računati. Možda je njegov zastoj u razvoju nastao zbog Xare Xtreme, koja je također postala open source aplikacija, i koja predstavlja jedan drugi trend kad komercijalne aplikacije postaju open source. Blender je njihov najuspješniji predstavnik, a sve ih je više (nedavni primjer Eudore)...
Tiny ERP primjer je uspješne aplikacije, koja svoj razvoj duguje načinu i jeziku u kojem je razvijena. Uz pomoć Pythona je napravljena aplikacija koja ima više osobina od drugog open source konkurenta, a broj linija koda je deset puta manji. Naravno, ne ovisi sve o programskom jeziku, neki drugi programeri će i s Pythonom napraviti ERP koji ima slični broj linija koda kao i Compiere: ERP5.
Čini mi se da profil Django i TinyERP developera vrlo sličan. Radi se i iskusnim developerima koji su vrlo dobro upoznati s problemom. Django developeri su razvijali odijelo po svojoj mjeri, a onda su ga ponudili svijetu. Takvi projekti, 'po nečijoj mjeri', obično su malo teže primjenljivi za opću upotrebu. Kompromisi, koji se rade zbog prilagođavanja, često uzrokuju neupotrebljivost za sve ostale. Django developeri su odlično izbjegli te zamke i ponudili nam odličnu razvojnu okolinu koja rješava cijeli niz problema s kojima se susreću developeri web aplikacija. Njihovo rješenje nije zacementirano, već skoro svaku komponentu sustava možete zamijeniti svojim rješenjem.
Nisam ga još stigao isprobati, ali čini mi se da bi DeVeDe mogla biti dobra aplikacija na tragu već spomenutih. DVD authoring je još jedno od područja gdje je Linux slabiji od ostalih platformi. DeVeDe koristi MPlayer koji je jedna od najboljih i najiskorištenijih Linux aplikacija. Pogledajte samo listu projekata koji ga koriste.
Znate li što je zajedničko većini spomenutih projekata? Ili su napisani u Pythonu ili ga koriste za scripting engine. Tako da bi naslov ovog posta mogao biti i O open source aplikacijama za Linux koje koriste Python. :-)
vrijeme da se pocme učiti Python. :-)