Istorija razvoja projekta „The GIMP“ (1995-2005)

Zvezda je rođena

GIMP uvodni ekrani

Davne 1995. godine iz glava dva studenta nastao je danas jedini ozbiljan GNU program za obradu bitmapirane grafike. Deset godina se on razvijao od zamisli do velikog projekta koji ni grafičke profesionalce neće ostaviti ravnodušnim. Čak je, pored osnovne namene, ovaj pionirski GNU poduhvat, sasvim slučajno izrodio popularnu grafičku podlogu i još popularnije radno okruženje. Zovu se jednostavno: GIMP, GTK+ i GNOME.

U početku beše želja…

Dva studenta na Berkliju, jula 1995. godine umesto da stečeno znanje u programiranju ulože na pisanje prevodilaca u lisp-u, rešili su da napišu program za obradu bitmapiranih slika. Iako nijedan od njih dvojice nije imao kontakta sa likovnom umetnošću, imali su tehničkog predznanja za realizaciju takvog projekta. Tako su Spenser Kimbal (Spencer Kimball) i Piter Matiz (Peter Mattis) utemeljili korene programa za manipulaciju slikama „General Image Manipulation Program“ (GIMP).

Pre nego što su objavili prvu javnu verziju 0.54 (januar 1996.) koja je predstavljala funkcionalan proizvod, na GIMP-u su radili oko deset meseci. U prvom izdanju, GIMP je imao dosta ugrađenih alata, sadržao je sistem dodataka (PlugIn), pa su drugi razvojni timovi mogli da pišu samostalne programe koji se bezbedno mogu dodati u glavni program bez narušavanja njegove funkcionalnosti. Postojali su osnovni alati za crtanje i operacije nad kanalima, akcija za opoziv akcije (Undo), što drugi programi ove namene nisu imali. GIMP je postao omiljen program među korisnicima, zaštićen pod GNU Opštom javnom licencom i imao je zanimljivo i jednostavno ime koje se lako pamti. Uprkos mogućnostima, program se često rušio, što zbog grešaka u glavnom programu, što zbog grešaka u dodacima.

U početku je bio baziran na Motif grafičkoj biblioteci, što je predstavljalo problem velikom broju korisnika, obzirom da je Motif veoma skupa komercijalna platforma (radi se o hiljadama dolara). Iz istog razloga, veliki broj programera koji su želeli da daju svoj doprinos projektu pišući sopstvene dodatke, nisu to mogli da rade.

Kao i svaki drugi projekat na početku razvoja, i GIMP je imao veoma mali broj korisnika koji su podržavali njegov razvoj. Spenser i Piter nisu očekivali veći uspeh svog programa, bili su zadovoljni činjenicom da je njihov pionirski projekat koliko toliko zaživeo.

Predstavljanje javnosti

Jedan od prvih koraka u cilju promocije programa nakon izdanja 0.54 bio je organizovanje dopisnog društva za razvojni tim. Autorima je bila potrebna povratna informacija o upotrebljivosti njihovog čeda, a dopisno društvo je bio jedan od načina da korisnici urade tako nešto. Kada su počela da pristižu pitanja vezana za osnovnu upotrebu programa, 5. jula 1996. godine gimp-list je podeljen na gimp-user i gimp-developer. Ubrzo je projekat dobio podršku i u vidu glavne Internet prezentacije na serverima Berklija. Zič Bin (Zach Beabe – Xach), kao i veliki broj drugih korisnika, počeli su sa pravljenjem uputstava tipa „korak po korak“ kako izvesti neku operaciju u programu.

TUX koga je Larry Ewing nacrtao u prvom GIMP-u 0.54

Jedan od naprednijih korisnika bio je Leri Iving (Larry Ewing), koji je u prvom izdanju GIMP-a „nacrtao“ čuvenu maskotu GNU/Linuks operativnog sistema – pingvina poznatijeg kao Tux.

Nova grafička osnova - serija 0.60

Piteru je bilo dosta Motif-a, pa je odlučio da napiše sopstvenu grafičku osnovu od početka. Nazvao je gtk (Gimp Tool Kit) i gdm (Gimp Drawing Kit). Nikada nije ni zamišljao da bi jednog dana gtk mogao da postane jedna od najkorišćenijih grafičkih osnova; hteo je samo da napravi osnovu za GIMP. Ubrzo nakon pojave gtk-a, došlo je do promene punog naziva GIMP-a iz General Image Manipulation Program u GNU Image Manipulation Program.

Razvoj 0.6x izdanja bio je eksperimentalan. Sistem dodataka nije bio kompatibilan sa starim API-jem iz verzije 0.54, tako da dodaci pisani za to izdanje nisu mogli da se koriste u novom. Autori dodataka su sporo prevodili svoje radove na novi API. Problem je nastao i oko dokumentacije jer niko nije želeo da piše dokumentaciju za seriju 0.6x koja je bila privremena i u razvoju.
Realno, ovo izdanje je imalo manju upotrebnu vrednost od prethodnog 0.54 izdanja; program se učestalije blokirao. Broj preuzimanja nove verzije znatno je opao i pored predstavljanja novih mogućnosti programa na Berklijskoj prezentaciji (rad sa slojevima, automatizacija poslova skriptama, dobro osmišljene transformacije).

Serija 0.6x dala je razvojnom timu mogućnost da se ugradi veliki broj unapređenja, poveća stabilnost u radu kao i da se doda veći broj alata za crtanje. Ovaj period evolucije GIMP-a najbolje jeopisao Andreas Dilger citatom: „It’s good to see that the next version of GIMP is here. Let the enhancing begin!“

Serija 0.99 - dug put do 1.0

Izdanje 0.99 objavljeno je 26. februara 1997. godine. Osnovni cilj je bio prevođenje dodataka na novi API, koji je izostao u prethodnom 0.60 izdanju. Objavljeno je i novo izdanje gtk/gdk nazvano GTK+2. U ovoj verziji su ugrađena revolucionarna unapređenja prethodnog gtk modela.
Ubrzo je objavljeno osveženo izdanje 0.99.9, nakon čega je nastala duža pauza. Trent Jarvi je napravio veliki broj sitnih izmena na ovom izdanju, a Spenser i Piter su 9. juna 1997. godine objavili nova izdanja GTK+ i GIMP 0.99.10. To je bio njihov poslednji rad na projektu.

Spenser i Piter su diplomirali, zaposlili se i više nisu imali vremena da rade na projektu. Nisu odredili naslednika koji bi nastavio njihovo rukovođenje, a čak su zaboravili i da najave napuštanje projekta.

Pred-11 izdanja

Napuštanje projekta od strane inicijatora usporilo je njegov razvoj. Pojavilo se nekoliko neoficijelnih predizdanja. Pošto je prikupljanje zakrpa postao veliki problem, novi privremeni nosilac projekta Met Hovkins (Matt Hawkins) objavio je izdanje pre-11.
Novi nosilac projekta postao je Federik Min Kvinter (Federico Mena Quintero – Quartic), koji je na prvo mesto stavio stabilnost i upotrebljivost programa. Za izdanje 0.99.14, Kvartik je najavio zaustavljanje dodavanja unapređenja i otklanjanje grešaka, sve do izdanja 1.0. Neka od zanimljivih unapređenja, koja su većim delom bila gotova, nisu ugrađena zbog insistiranja na stabilnosti programa.
Kvartik je održao GIMP u razvoju, sve dok nije prešao na druge projekte. Ipak, nije bilo većih pauza između njegovog odlaska i dolaska novog nosioca projekta.

Nove komunikacije

Dopisna društva su korisna kada funkcionišu a veb strane su odlične za davanje saveta i predstavljanje mogućnosti projekata. Međutim, ništa se ne može porediti sa razgovorom uživo. Februara 1997. godine projekat GIMP je dobio IRC kanal #gimp na serveru irc.freenode.org. Kanal je bio otvoren za diskusije i otklanjanje otkrivenih problema. Veoma brzo je postao jedan od glavnih izvora tehničke podrške za korisnike programa. Na posletku je postao i izvor informacija o željama i potrebama korisnika za novim mogućnostima programa, kao i informisanje o načinu na koji pojedinci mogu da pomognu projektu. Preko kanala je širena i ideja o održavanju projekta u životu od strane članova razvojnog tima.

Novi razvojni model

Otišli su začetnici projekta, Spenser i Piter, a potom i Kvertik. GIMP se podelio u projekat razvoja grafičke osnove (GTK+) i projekat razvoja programa. Došao je trenutak da oba projekta dobiju nosioca.

U novoj podeli, imenovani su članovi timova: Mejnš Sing (Mainsh Singh - yosh) je zadužen za objavljivanje novih izdanja. Edrijan Lajkins (Adrian Likins) za održavanje podataka. Leri Iving (Larry Ewing - lewing), Metju Vilson (Matthew Wilson - msw) i drugi su radili na pronalaženju i otklanjanju grešaka.

I sada je bilo dosta ljudi koji su istovremeno radili na više projekata, ali su svi oni radili kao tim bez vođe. Svaki pojedinac je radio na svom doprinosu projektu i uvek se znalo kome se treba obratiti za neki savet ili kada nešto zapne.

Različitost

Zeč je 13. aprila 1997. godine započeo projekat GIMP News, koji je stekao popularnost svakodnevnim izveštajima o razvoju GIMP-a. Ako je neko napravio novi dodatak, Zeč ga je pronašao i o tome obavestio javnost. Ako je izdata nova verzija programa, slao je na dopisna društva vest i o tome. Njegova uputstva i formular za prijavu grešaka, koji je kasnije dodat, bili su direktno povezani na stranu sa vestima.
Tada se pojavio i veliki broj novih dodataka pa je pokrenut i Registar dodataka, koji omogućava autorima da osveže svoje dodatke, i ostalima da najave svoje planove u vezi sa razvojom novi dodataka. Ako ste autor, prijavićete svoj dodatak na ovoj adresi, tako da korisnici uvek imaju uvid u njegov razvoj. Svaki korisnik odavde može da preuzme i prevede dodatak koga nema u zvaničnoj distribuciji GIMP-a. Tu čak postoji i „korpica“ u koju možete ubaciti sve dodatke koje želite, a onda će svi oni biti spakovani u jednu TAR arhivu dostupnu za preuzimanje.

Krajem maja 1997. godine Sit Bargis (Seth J. Burgess) započeo je projekat GIMP Bugs. Tu je prihvaćen veliki broj prijava grešaka koje su ranije slate na dopisno društvo gimp-developer, i organizovane za lakši uvid razvojnog tima i otklanjanje grešaka. U početku je sve rađeno ručno, uz pomoć nekoliko Perl skripti, pošto je dnevno prijavljivano samo nekoliko grešaka, da bi se kasnije ceo proces automatizovao.

Često zanemarivana oblast projekta bila je dokumentacija, pa su dva korisnika, Kerin i Olaf Kejlender (Karin i Olof S. Kylander) 7. oktobra 1997. godine započeli projekat Gimp Users Manual, koji je predstavljao sveobuhvatan popis mogućnosti u GIMP-u, opisanih na preko 200 strana dokumentacije. Danas ovaj projekat sadrži preko 600 strana i nalazi se na serverima ITC u Virdžiniji.
Početkom aprila 2000. godine zaživeo je projekat Gimp user group koji okuplja korisnike GIMP-a.

Komercijalizacija

Nasuprot mnogim projektima slobodnog softvera, kod GIMP-a postoji javna komercijalizacija. Pojedini članovi razvojnog tima GIMP-a videli su šansu da zarade prilagođavajući kôd ili pišući dodatke u komercijalne svrhe. Takođe su prodavali CD-ROM-ove sa GIMP izdanjem 1.0, upotpunjene odgovarajućom bitmapiranom grafikom i dopunskim programima. Oformljen je i WilberWorks.
Ipak, ovo ne može naškoditi razvoju GIMP-a pošto je sav rad na projektu i dalje zaštićen GNU Opštom javnom licencom i novac nije glavni motiv učešća u razvoju.

Centralizacija

Kao odgovor na potrebu da se svi izvori vezani za GIMP projekat centralizuju, Šon Oumundson (Shawn Amundson - Snorfle) je 7. oktobra 1997. godine registrovao domen gimp.org. Ovde se nalazi velika količina podataka koja će vas informisati o samom projektu, od izvornog kôda do saveta i trikova. Osnova za ovaj tekst preuzeta je iz Istorije GIMP-a sa ove adrese.

Publikacije

Majkl Hemel (Michael J. Hammel) je u periodu od oktobra 1997. do januara 1998. godine u časopisu Linux Journal napisao četvorobrojni serijal o GIMP-u. Iako je program opisan samo površno, uradio je to na pravi način. Dobro napisani i kvalitetni tekstovi predstavili su GIMP Linuks zajednici, kao i svim drugim čitaocima Linuks literature. GIMP je takođe postigao publicitet zahvaljujući Graphic Muse tekstovima u Linux Gazette.

Ko je Wilber?

Wilber The GIMP

Maskota GIMP-a je Vilber (Wilber). Vilbera je 25. septembra 1997. godine osmislio Tomas Kosmenen (Tuomas Kuosmanen – tigert). Postao je prepoznatljiv znak koji asocira GIMP. Globalno gledano, Vilber je za GIMP ono što je TUX za GNU/Linuks.

A šta je bilo posle?

Sećate se GTK+? Neki članovi razvojnog tima GIMP-a su došli na suludu ideju da je to odlična osnova za pisanje raznih alata i da se, između ostalog, na njemu može izgraditi čitavo radno okruženje. U početku je i ova ideja, kao i mnog druge, smatrana nemogućom misijom. Danas smo svedoci izuzetne upotrebljivosti GNOME okruženja, projekta koji je zasnovan na Gtk+ grafičkoj podlozi.

Konačno se dogodilo „čudo“ o kome Spenser i Piter nisu ni sanjali. 5. juna 1998. godine u 17:17 po srednjem evropskom vremenu objavljeno je GIMP izdanje 1.0. Bio je dovoljno stabilan program koji se mogao izboriti i sa profesionalnim zahtevima obrade bitmapirane grafike.

U sledeće dve godine radilo se na razvojnom izdanju 1.1. GIMP se već razvio u izuzetno stabilan i veoma korišćen program, kada je 24. decembra 2000. godine objavljeno stabilno izdanje 1.2.0. Ovo je bio početak jednog novog poglavlja u istoriji GIMP projekta. Naime, naredne dve godine nije objavljeno ni jedno stabilno izdanje GIMP-a. Tek je 14. juna 2003. godine objavljeno izdanje 1.2.5 koje je sadržalo veliki broj ispravki i poboljšanja. Posle toga započet je rad i među članovima razvojnog tima objavljeno je i izdanje 1.2.6, ali ono nije ugledalo svetlost dana za nas obične smrtnike. Međutim, razvoj GIMP-a sa izdanjem 1.2.0 nije stao. Tokom narednog perioda rađeno je na razvojnoj seriji 1.3.x. Prvo stabilno izdanje ove serije, 1.3.0 objavljeno je 13. novembra 2001. godine. Tokom naredne dve godine izdata su još 23 izdanja iz ove serije, a poslednje 1.3.23 je objavljeno 24. novembra 2003. godine. Kompletan kôd je napisan od početka, upotrebljen je Gtk+ 2.x API, ispravljen veliki broj grešaka, unapređene su opcije podešavanja alata, dodat je novi alat za vektore, dodata podrška za datoteke veće od 2 GB i keširanje od preko 4 GB, dodata manipulacija EXIF informacijama u zaglavlju JPEG datoteka, interni pretraživač pomoći je prebačen na GtkHtml2.

U toku 2004. godine, tačnije od 7. januara, razvijano je stabilno izdanje 2.0. Posle četiri predizdanja i jednog kandidata (RC), 2.0.0 izdanje je objavljeno 23. marta 2004. godine, implementiran je Gnome 2 HIG standard (Human Interface Guidelines), unapređen alat za pisanje teksta, otklonjno je dosta sitnih grešaka. U sledećih sedam meseci razvijana je stabilna serija 2.2. Izdanje 2.2.0 objavljeno je 19. decembra 2004. godine. Ispravljeno je dosta grešaka od prošle stabilne verzije, dodata mogućnost uvoza Photoshop (.act) paleta, dodati prikazi rezultata u filterima, živi prikaz rezultata transformacija, akcije u toku se mogu obustaviti pritiskom Escape tastera, dodati novi filteri, uvoz SVG (SVG na Vikipediji) kontura kao putanje, podešavanja prečica sa tastature, Copy&Paste između GIMP-a i drugih programa. Za ovo izdanje je bio organizovan konkurs za uvodni ekran (splash).

Suma sumarum

GIMP je sastavljen od preko 230.000 linija C kôda, od čega je najveći broj linija napisan od početka u toku evolucije izdanja 1.2 na 2.0. Sa stanovišta korisničke upotrebe programa, GIMP 2.x je u osnovi ostao sličan izdanju 1.x; mogućnosti su slične onima koje su postojale na izdanjima iz 1.x serije, tako da se korisnici ranijih verzija mogu snaći i u novom okruženju. Kôd je prečišćen i omogućeno je lakše dodavanje novih mogućnosti u program, mada se taj deo manje tiče korisnika.

Program je zahvaljujući projektu lokalizacije na srpski jezik prevod.org preveden na srpski jezik tokom 2003. godine.

NAPOMENA: Tekst „Zvezda je rođena“ pisao sam januara 2005. godine za drugi broj magazina GNUzilla povodom jubileja projekta - „Deset godina GIMP-a“.

Ostavite komentar


U komentaru možete koristiti sledeće XHTML: kôdove: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>