The Cathedral and the Bazaar
by Eric S. Raymond
$Date: 1998/08/11 20:27:29 $
Sto paron analuw ena epityxhmeno project anoixtou kwdika (open
source), to fechmail. Ayto htan poy epaije to rolo enos eskemmenoy
test merikwn ekplhktikwn 8ewriwn gurw apo thn texnologia logismikou
(software engineering) opws ypodeixthkan apo thn istoria toy Linux.
Pragmateuomai aytes tis 8ewries me toys oroys dyo 8emeliaka diafore�
tikwn styl anaptyjhs, to Ka8edriko montelo (cathedral) yio8ethmeno apo
to megalutero kommati toy emporikou kosmoy enantion toy Pazariwtikoy
monteloy (bazaar) toy kosmoy toy Linux. Deixnw oti ayta ta montela
katey8unontai apo anti8etes ypo8eseis gia thn fush ths diadikasias
aposfalmatwshs logismikou. Sthn synexeia dhmioyrgw ena yposthriktiko
epixeirhma apo thn empeiria toy Linux gia thn ypo8esh "exontas arketa
matia, ola ta bugs einai rhxa", proteinw paragwgikes analogies me
alla ayto-dior8wsima systhmata apo egwistikous syntelestes kai kleinw
me ejereunhsh twn synepeiwn ayths ths diorashs gia to mellon toy
logismikou.
______________________________________________________________________
Table of Contents
1. O Ka8edrikos kai to Pazari.
2. To Mhnyma Prepei na Perasei.
3. H Spoydaiothta toy na Exeis Xrhstes.
4. Ekdoseis Nwris, Ekdoseis Syxna.
5. Pote Ena Triantafyllo den Einai Triantafyllo?
6. O Popclient Ginetai Fetchmail.
7. To Fetchmail Enhlikiwnetai.
8. Merika Akomh Ma8hmata apo to Fetchmail.
9. Proupo8eseis gia to Styl Pazariou.
10. To Koinwniko Plaisio toy Logismikou Anoixtou Kwdika.
11. Eyxaristies.
12. Gia Peraiterw Meleth.
13. Epilogos: H Netscape Agkaliazei to Pazari!
______________________________________________________________________
1. O Ka8edrikos kai to Pazari.
To Linux einai anatreptiko. Poios 8a skeftotan, akomh kai prin apo
pente xronia , oti ena leitoyrgiko susthma pagkosmias embeleias 8a
ftiaxnotan, san apo mageia, apo tmhmatika hacking poy ekanan xiliades
programmatistes skorpismenoi s' olo ton planhth, enwmenoi mono me ta
adunama nhmata toy Internet;
Kaneis, bebaia. Thn wra poy ma8aina gia to Linux stis arxes toy 1993,
asxoloumoyna hdh me to Unix kai ton programmatismo anoixtou kwdika
[open source]epi deka xronia. Hmoyn apo toys prwtoys dianemhtes ths
GNU sta mesa ths dekaetias toy '80. Eixa kataskeyasei kai dia8esei
enan sebasto ari8mo logismikou anoixtou kwdika sto diktyo,
anaptussontas h synanaptussontas polla programmata (nethack, Emacs VC
kai GUD modes, xlife kai alla) poy paramenoyn se eyreia xrhsh ews
shmera. Nomiza pws hjera pws eixan ginei ol' ayta.
To Linux anetrece polla ap' ayta poy nomisa oti hjera. Yposthriza to
"Eyaggelio" twn mikrwn ergaleiwn toy Unix, thn grhgorh anaptyjh
prwtotupwn kai ton ejeliktiko programmatismo [evolutionary
programming] gia xronia. Pisteya, omws, oti yparxei mia
sygkekrimenh krisimh polyplokothta panw apo thn opoia apaitountan mia
perissotero kentrikh, apriori proseggish. Pisteya oti ta pio
shmantiko logismiko (leitoyrgika systhmata kai pragmatika megala
ergaleia opws to Emacs) eprepe na xtistoun san ka8edrikoi naoi,
prosextika ftiagmenoi apo memonwmenoys eidikous [wizards] h mikres
omades apo "magoys" [mages] poy na doyleuoyn se apolyth apomonwsh,
xwris na dhmosieuontai oi beta prin thn wra toys.
To styl programmatismou toy Linus Torvalds- prwimes kai ana mikra
diasthmata ekdoseis logismikou, metabibaseis toy ka8e ti, anoxh sto
zhthma ths eterogenous megalhs anameijhs - htan ekplhjh. Den emoiaze
me 8rhskeytiko ka8edriko nao - h koinothta toy Linux emoiaze
perissotero me ena megalo fluaro pazari diaforetikwn praktikwn kai
proseggisewn (poy symbolizontai me arxeio8hkes [sites] logismikou gia
Linux, sta opoia mporei na syneisferei o ka8enas) apo to opoio ena
synepes kai sta8ero susthma mporouse na ftiaxtei mono meta apo mia
akoloy8ia 8aymatwn.
To gegonos oti ayto to pazari edeixne na doyleuei kai na doyleuei
kala, htan ena jeka8aro sok. Ka8ws o kairos pernouse ki egw ma8aina,
douleya sklhra oxi mono se sygkekrimena projects, alla kai
prospa8wntas na katalabw giati o kosmos toy Linux oxi mono den epefte
se sugxysh alla edeixne na dynamwnei synexws, me mia taxuthta poy den
thn fantazontan oi arxitektones ka8edrikwn nawn.
Sta mesa toy 1996 arxisa na katalabainw. Moy do8hke h eykairia na
dokimasw thn 8ewria moy me thn morfh enos project anoixtou kwdika poy
8a prospa8ousa na 8esw se leitoyrgia me to styl toy pazariou. Etsi ki
ekana - kai h epityxia htan megalh.
Sto ypoloipo meros aytou toy ar8roy 8a afhgh8w thn istoria aytou toy
project kai 8a to xrhsimopoihsw gia na proteinw kapoies 8eseis gia thn
apotelesmatikh anaptyjh programmatwn anoixtou kwdika. Polla apo ayta
den ta prwtoema8a mesa apo to kosmo toy Linux, alla 8a doume pws aytos
toys dinei ena idiaitero nohma. An eimai swstos stis apoceis moy, 8a
sas boh8hsoyn na katalabete ti akribws einai ayto poy kanei thn
koinothta toy Linux mia phgh toso kalou logismikou-kai 8a sas boh8hsei
na ginetai kai eseis oi idioi pio paragwgikoi._
2. To Mhnyma Prepei na Perasei.
Apo to 1993 exw thn ey8unh ths texnikhs pleyras enos mikrou Paroxea
eleu8erhs prosbashs, poy onomazetai Chester County InterLink (CCIL)
sto Dytiko Tsester ths Pensylbania (eimai synidryths toy CCIL kai
kataskeuasa to diko mas monadiko polyxrhstiko bulletin-board software
--mporeite na to deite kanontas telnet sto locke.ccil.org
<telnet://locke.ccil.org>. Shmera yposthrizei sxedon treis xiliades
xrhstes se trianta grammes). Ayth h doyleia moy epetrepe eleu8erh
prosbash sto diktyo epi 24wroy basews mesw ths 56K grammhs toy CCIL.
in fact, it practically demanded it!
Epomenws, hmoyn ma8hmenos sthn xrhsh toy amesoy hlektronikou
taxydromeioy. Gia kapoioys periplokoys logoys htan duskolo na syndesw
me SLIP ton ypologisth poy exw sto spiti moy (snark.thyrsus.com) kai
ton CCIL. Otan, telika ,ta katafera anakalyca oti prepei na
syndeomai (telnet) periodika ston "locke" gia na paralambanw thn
allhlografia moy. Ayto poy h8ela gia thn allhlografia moy htan na
paradidetai ston snark etsi wste na mporw na eidopoioume otan ftanei
kai na mporw na thn xeiristw xrhsimopoiwntas ola ta topika ergaleia
moy.
H aplh prow8hsh mhnymatwn me to sendmail den douleye, epeidh o
proswpikos ypologisths moy den einai synexws sto diktyo kai den exei
statikh dieu8ynsh IP. Ayto poy h8ela htan ena programma poy 8a
epairne ton elegxo panw apo thn SLIP sundesh moy kai 8a metefere thn
allhlografia moy na thn paralabw topika. Hjera oti tetoia programmata
yphrxan kai oti ta perissotera xrhsimopoiousan ena aplo prwtokollo poy
legetai ROR(Post Office Protocol). Kai hmoyn arketa sigoyros oti
yphrxe enas ROR3 serber poy symperilambanetai sto BSD/OS leitoyrgiko
poy briskotan ston "locke".
Xreiazomoyn enan ROR3 client. Etsi, synde8hka sto diktyo kai brhka
enan. Sthn pragmatikothta Brhka treis tesseris. Xrhsimopoihsa pop-perl
gia ligo, alla elleipe mia shmantikh dynatothta, H dynatothta na
metatrepontai oi diey8unseis twn paralambanomenwn mhnymatwn wste h
dynatothta apanthshs [reply] na doyleuei swsta.
Idou to problhma: ypo8este oti kapoios poy legetai "joe" ston "locke"
moy esteile ena mhnyma [mail] An paralabw to mhnyma ston snark kai
meta epixeirhsw na apanthsw, to programma hlektronikou taxydromeioy
8a prospa8hsei na to steilei s' enan "joe" poy den yparxei ston snark.
H taktikh metatrophs me to seri twn diey8unsewn pros apanthsh [Reply
addresses] ston "@ccil.org" grhgora apodeix8hke polu duskolh.
Htan kati poy o ypologisths eprepe opwsdhpote na kanei gia mena.
Kanenas, omws, apo toys yparxontes ROR clients den hjere pws! Ki
erxomaste sto prwto mas ma8hma:
1) Ka8e kalh doyleia ston xwro toy logismiko arxizei me thn
proswpikh fagoura toy programmatisth.
Isws ayto 8a eprepe na einai olofanero (apo palia exei eipw8ei, "H
anagkh einai h mhtera ths efeureshs") alla, polu syxna, oi
programmatistes jodeuoyn tis meres toys pasxizontas gia ena
merokamato ftiaxnontas efarmoges poy oute xreiazontai oute toys
endiaferoyn. Oxi, omws, kai ston kosmo toy Linux--pragma poy ejhgei
giati h mesh poiothta toy logismikou gia Linux einai toso ychlh.
Ti nomizete, loipon; Oti bouthja sthn dinh ths kwdikopoihshs enos
olokainoyrgioy ROR3 client gia na antagwnistei toys yparxontes; Me
tipota ston kosmo! Erija mia prosektikh matia sta ROR utilities poy
eixa sta xeria moy, kai anarwth8hka "poio ap' ola einai plhsiestero se
ayto poy 8elw;".
2) Oi kaloi programmatistes jeroyn ti na gracoyn. Oi spoydaioi
jeroyn ti na janagracoyn (kai na janaxrhsimopoihsoyn).
An kai den isxyrizomai oti eimai spoydaios programmatisths, prospa8hsa
na moiasw tetoios. Ena shmantiko gnwrisma twn spoydaiwn
programmatistwn einai h eggenhs toys tempelia. 3eroyn oti xreiazetai
ena programma oxi gia na pernane oi xrhstes thn wra toys alla gia na
exoyn kapoia apotelesmata kai oti einai sxedon panta eykolotero na
jekinas apo mia merikh lush apo to na jekinas apo to mhden.
O Linus Torvalds <
http://www.earthspace.net/~esr/faqs/linus>, gia
paradeigma, den egrace to Linux ap' thn arxh. Anti8eta ,jekinhse na
janaxrhsimopoiei kwdika kai idees ap' to Minix, ena mikro Unix-oides
leitoyrgiko gia mhxanes 386. Telika, o kwdikas Minix apomakrun8hke h
janagrafthke entelws--oso, omws, htan ekei leitoyrgouse san h skala
gia to brefos poy, telika, egine to Linux.
Sto idio pneuma, arxisa na caxnw gia ena ROR utility poy 8a eixe kalo
kwdika, gia na moy xrhsimeusei san bash programmatismou.
H paradosh eleu8eroy kwdika toy Unix htan panta filikh pros thn
epanaxrhsimopoihsh kwdika (gi' ayto ton logo to GNU project epeleje to
Unix san basiko leitoyrgiko, para tis sobares nomikes epifylajeis gia
to idio to leitoyrgiko). H koinothta toy Linux w8hse ayth thn
paradosh sxedon sta texnologika ths oria. Prosferei se oloys terabytes
eleu8eroy kwdika. Etsi, to na afierwneis ligo xrono gia na breis thn
katallhlh efarmogh kapoioy alloy einai perissotero pi8ano na dwsei
8etika apotelesmata ston kosmo toy Linux, para opoydhpote allou.
Etsi egine kai sthn dikh moy periptwsh. Mazi me ayta poy brhka
nwritera, h deuterh ereyna moy katelhje m' ena sunolo ennea
ypochfiwn--to fetchpop, to PopTart, to get-mail, to gwpop, to pop-
perl, to pimp, to popc, to popmail kai to upop. Ayto poy egkatesthsa
prwto htan to 'fetchpop' toy Seung-Hong Oh. Ebala to xarakthristiko
header rewrite s' ayto ki ekana kai kapoies alles beltiwseis tis
opoies o dhmioyrgos toy symperielabe sthn ekdosh 1.9.
Liges bdomades argotera, omws, skontaca ston kwdika toy 'popclient'
toy Carl Harris kai anakalyca oti eixa problhma. An kai to 'fetchpop'
eixe merikes kales idees ston kwdika toy (opws thn leitoyrgia se
katastash daemon), mporouse na diaxeiristei mono ROR3 kai htan
erasitexnika kwdikopoihmeno (o Seung-Hong Oh htan enas ejypnos alla
apeiros programmatisths kai ta duo ayta xarakthristika toy
ekdhlw8hkan sto programma ayto). O kwdikas toy Carl htan kaluteros,
alh8ina epaggelmatikos kai sta8eros, alla apo to programma toy eleipan
polla shmantika kai mallon duskola sthn ylopoihsh toys xarakthristika
poy hdh eixe to fetchpop (symperilambanomenwn ki aytwn poy
kwdikopoihsa egw).
Na ta parathsw h na epimeinw; An ta paratousa, 8a eprepe na petajw ton
kwdika poy eixa hdh ftiajei se antallagma mias kaluterhs
programmatistikhs bashs.
Ena praktiko kinhtro gia na ta parathsw htan h paroysia yposthrijhs
pollaplwn prwtokollwn. Apo ta prwtokolla poy xrhsimopoioun oi
diametakomistes taxydromeioy to ROR3 htan to pio koino, alla oxi to
monadiko. To fetchpop kai oi alloi antagwnistes toy den yposthrizan
ROR2, RPOP h APOP kai skeftomoyn, hdh, na pros8esw IMAP (Internet
Message Access Protocol, to pio kainourio kai pio isxyro prwtokollo
taxydromeioy) IMAP <
http://www.imap.org>, mono kai mono gia thn
eyxaristhsh moy.
Omws, eixa enan pio 8ewrhtiko logo gia na pisteuw oti, to na ta
parathsw 8a htan kalh idea, kati poy ema8a polu prin to Linux.
3)"Sxediazeis na aporriceis kapoio programma; 8a to kaneis, outws h
allws". (Fred Books, "The Mythical Man-Month", chapter 11)
H, gia na to pw alliws, synh8ws den katalabaineis to problhma mexri th
stigmh poy ylopoieis mia lush. Thn deuterh fora isws jereis
perissotera gia na prajeis swstotera. Etsi, an 8eleis na eisai
swstos, etoimasoy na arxiseis ap' thn arxh toylaxiston mia fora.
Loipon (eipa ston eayto moy) oi allages poy ekana sto fetchpop htan h
prwth prospa8eia. Etsi, ta parathsa.
Meta thn paradosh toy prwtoy synoloy dior8wtikwn paketwn kwdika gia to
popclient [popclient paches] poy esteila ston Carl Harris stis 25
Ioynioy 1996, anakalyca oti eixe xasei to endiaferon toy gia to
popclient ligo kairo prin. O kwdikas htan ligo skorpios, me mikra
bugs edw ki ekei. Eixa polles allages na kanw kai katelhja grhgora sto
oti to pio logiko pragma poy eprepe na kanw htan na analabw to
programma.
Sxedon xwris na to prosejw, to project klimakw8hke. Den 8a
katapianomoyn allo me ashmanta dior8wtika paketa [patches] gia toys
yparxontes ROR clients. 3ekinhsa na doyleuw panw s' enan ap' aytous
kai oi idees strimwxnontan mesa sto myalo moy kai hjera oti, pi8anon,
na odhghsoyn se megales allages.
Se mia koyltoura logismikou poy en8arrunei thn apo koinou kwdikopoihsh
[code-sharing], aytos einai enas fysikos tropos anaptyjhs enos
sxedioy. Energousa ws ejhs:
4) An h symperifora soy einai swsth, 8a synanthseis endiaferonta
problhmata.
H symperifora toy Carl Harris, omws, htan akomh pio shmantikh.
Antilhf8hke oti
5) Otan ena programma pauei na s' endiaferei, to teleytaio soy ka8hkon
einai na to paradwseis s' enan ikano diadoxo.
Xwris pote na xreiastei na to syzhthsoyme, o Carl ki egw jerame oti
eixame ton koino stoxo na dwsoyme tis kaluteres luseis. To mono
erwthma kai twn duo, htan an hmoyn katallhlos gi' ayth thn doyleia.
Mia fora poy toy edeija oti hmoyn, antedrase gennaiodwra. Hlpiza na
antidrasw ki egw etsi, otan 8a erxotan h seira moy._
3.
H Spoydaiothta toy na Exeis Xrhstes.
Etsi, klhronomhsa to popclient. To idio shmantiko htan oti
klhronomhsa kai toys xrhstes toy. Einai polu kalo na exeis xrhstes ki
oxi mono epeidh dhlwnoyn pws ikanopoieis mia anagkh toys, h oti kaneis
kati swsto. An antimetwpis8oun katallhla, mporoun na ginoyn
synergates sthn anaptyjh ths efarmoghs.
Mia allh dunamh ths paradoshs toy Unix, poy to Linux w8ei sta oria
ths, einai oti polloi xrhstes einai epishs kai hackers. Epeidh o
phgaios kwdikas einai eleu8eros, mporoun na ginoyn apotelesmatikoi
hackers. Kati tetoio mporei na apodeix8ei ejairetika xrhsimo gia thn
meiwsh toy xronoy aposfalmatwshs [debugging]. Me ligh en8arrynsh, oi
xrhstes sas 8a diagnwsoyn problhmata, 8a proteinoyn dior8wseis kai 8a
boh8hsoyn sthn beltiwsh toy kwdika, polu pio grhgora apo to na to
kanate monos sas xwris boh8eia.
6) H antimetwpish twn xrhstwn san synergates programmatistes einai o
ligotero epikindynos dromos pros thn grhgorh beltiwsh toy kwdika kai
thn apotelesmatikh aposfalmatwsh.
H dunamh ayths ths apochs eukola mporei na ypoektimh8ei. Sthn
pragmatikothta, polloi apo emas ston kosmo toy anoixtou kwdika
ypoektimoume se dramatiko ba8mo to poso kalutera 8a ayjanomastan se
ari8mo xrhstwn ki enantia sthn polyplokothta twn systhmatwn, mexri
otoy o Linus Torvalds mas edeije oti ta pragmata mporoun na einai kai
diaforetika.
Nomizw oti to pio ejypno kai apotelesmatiko kator8wma [hack] toy
Linus, den htan h kataskeyh toy idioy toy pyrhna toy Linux alla,
mallon, h efeuresh toy monteloy anaptyjhs Linux. Otan, paroysia toy,
ejefrasa ayth thn apoch ekeinos xamogelase kai sigana epanelabe kati
poy syxna elege: "Basika, eimai polu tempelhs an8rwpos poy toy aresei
na toy anagnwrizoyn pragmata poy alloi an8rwpoi ekanan". Tempelhs san
gatos. H, opws 8a elege o Robert Heinlein, polu tempelhs gia na
apotuxei.
Ek twn ysterwn, ena prohgoumeno ths me8odoy ki epityxias toy Linux
mporei na 8ewrh8ei h anaptyjh ths biblio8hkhs GNU Emacs Lisp kai twn
arxeiwn kwdika Lisp [Lisp code archives]. Se anti8esh me to
ka8edriko-megaleiwdes styl toy C pyrhna toy Emacs kai twn
perissoterwn ypoloipwn ergaleiwn FSF, h ejelijh toy kwdika ths Lisp
htan reysth kai ejarthmenh apo toys xrhstes. Diafores idees kai
leitoyrgies prwtotupwn syxna janagrafontan treis h tesseris fores prin
katalhjoyn se mia sta8erh morfh. Kai oi xalares synergasies, mesw toy
Internet, ala Linux, hsan syxnes.
Pragmatika, to pio epityxes proswpiko kator8wma mou, prin apo to
fetchmail, htan isws to Emacs VC mode, mia Linux-oidhs synergasia
mesw hlektronikou taxydromeioy triwn an8rwpwn, ek twn opoiwn mono enan
(ton Richard Stallman, ton kataskeyasth toy Emacs kai idryth toy FSF
<
http://www.fsf.org>) gnwriza ws ekeinh th mera. Htan mia leitoyrgia
front-end gia SCCS, RCS kai, argotera, CVS mesa apo to Emacs, poy
epetrepe xeirismous elegxoy ekdoshs "me ena aggigma" ["one-touch"].
Anaptux8hke apo mia mikrh, axarh leitoyrgia sccs.el, poy eixe gracei
kapoios allos. Kai h anaptyjh toy VC petyxe, epeidh, anti8eta me to
idio to Emacs, o kwdikas toy Emacs Lisp mporouse na perasei grhgora
mesa apo diadikasies ekdoshs / dokimhs / beltiwshs.
Ena anapantexo, deytereuwn apotelesma ths politikhs toy FSF gia nomimh
sundesh kwdika mesa sto GPL htan oti, ginotan diadikastika olo kai pio
duskolo gia thn FSF na xrhsimopoihsei thn xalarh / pazariwtikh
leitoyrgia, afou oi an8rwpoi ths FSF pisteyan oti prepei na apokthsoyn
copyright efarmoghs gia ka8e jexwristh dianomh perissoterwn apo eikosi
grammwn kwdika, wste na prostatecoyn ton kwdika GPL apo toys nomoys
gia to copyright. Osoi askhsan pneymatika dikaiwmata xrhsimopoiwntas
tis adeies twn konsortsia BSD kai MIT X den exoyn tetoia problhmata.
Den prospa8oun na ejasfalisoyn dikaiwmata, poy o ka8enas 8a mporouse
na exei kinhtra na prokalesei.
4. Ekdoseis Nwris, Ekdoseis Syxna.
Oi prwimes kai ana mikra xronika diasthmata ekdoseis einai krisimo
meros toy monteloy anaptyjhs toy Linux. Oi perissoteroi
programmatistes (symperilambanomenoy kai emena) pisteyan oti ayto
einai mia kakh politikh gia megalutera apo ta tetrimmena projects,
epeidh oi prwimes ekdoseis einai sxedon ej orismou gemates bugs kai
to mono poy den epi8ymeis einai na ejantleis thn ypomonh twn xrhstwn
soy.
Ayth h apoch enisxye thn genikh apodoxh enos "ka8edrikou" eidoys
anaptyjhs. An o kurios stoxos einai na synantoun oi xrhstes oso to
dynaton ligotera bugs, tote giati na ekdideis mia fora ka8e ejh mhnes
(h kai ligotero syxna) kai meta na doyleueis sklhra (like a dog) gia
na apallax8eis ap' ta bugs; O pyrhnas toy Emacs C ftiaxthke m' ayto
ton tropo. Enw anti8eta, h biblio8hkh Lisp oxi, ayto synebh epeidh
yphrxan energa arxeia Lisp ejw ap' ton elegxo toy FSF, sta opoia
mporouse kaneis na anatrejei gia na brei nees ekdoseis toy kwdika,
anejarthta ap' toys kukloys ekdosewn toy Emacs.
H pio shmantikh ap' aytes tis arxeio8hkes, h elisp toy Oxaio,
proeblepe to pneuma kai polla ap' ta xarakthristika twn shmerinwn
megalwn arxeio8hkwn toy Linux. Alla ligoi apo mas skeftontan
pragmatika polu gia to ti kaname, h gia to ti shmaine h uparjh aytwn
twn arxeio8hkwn gia to problhma toy "ka8edrikou" monteloy anaptyjhs
toy FSF. Ekana mia sobarh prospa8eia gurw sto 1992 na prosarthsw
megalo meros toy kwdika toy Oxaio sthn epishmh biblio8hkh toy Emacs
Lisp. Mphka se politikous mpelades kai h apotyxia moy htan megalh.
Omws, ena xrono meta, ka8ws to Linux ginotan eyrutera gnwsto, egine
jeka8aro oti kati diaforetiko kai ygiestero symbainei. To anoixto
monteloy anaptyjhs toy Linus htan to akrws anti8eto toy "ka8edrikou"
monteloy. Ekanan thn emfanish toys oi arxeio8hkes sunsite kai tsx-11
ka8ws kai pollaples dianomes. Ki ol' ayta odhgoumena apo mia
anapantexh syxnothta ekdosewn toy pyrhna toy systhmatos.
O Linus antimetwpize toys xrhstes toy san syn-programmatistes me ton
kalutero dynato tropo:
7.Ekdoseis nwris, ekdoseis syxna kai akoy toys xrhstes soy.
H kainotomia toy Linus den htan toso ayto (kati tetoio synebaine gia
polu kairo ston kosmo toy Unix), alla h klimakwsh toy se ba8mo poy
plhsiaze thn periplokothta ths pros anaptyjh efarmoghs. Ekeinh th
xronia (peri to 1992) den toy htan agnwsth h taktikh na ekdidei neo
pyrhna ka8e mera! Ayth h prospa8eia petyxe epeidh aneptysse thn bash
twn syn-programmatistwn toy kai xrhsimopoiouse thn dunamh toy
Internet gia synergasia pio kala apo ka8e allon.
Alla pws ta katafere; Kai htan kati poy mporousa na mimh8w h
basizotan se kapoia monadikh eyfyia toy Linus Torvalds;
O Linus htan enas polu kalos hacker (posoi apo emas 8a kataskeuazan
enan paragwgika poiotiko pyrhna leitoyrgika systhmatos;). To Linux
den htan kanena tromero alma pros ta empros. O Linus den einai (h oxi
akoma) kamia idiofyia sto na sxediazei opws, as poume, o Richard
Stallman h o James Gosling (NeWS kai Java). Emena moy fainetai oti o
Linus einai enas eyfyhs programmatisths, me mia ekth ais8hsh na
apofeugei ta bugs kai programmatistika adiejoda kai eukola briskei to
pio suntomo dromo ap' to shmeio A pros to shmeio B. Pragmatika,
oloklhros o sxediasmos toy Linux apopneei ayth thn poiothta kai
antanakla thn oysiastika synthrhtikh kai aplopoihtikh proseggish toy
Linus.
An, loipon, oi grhgores ekdoseis kai h plhrhs xrhsh toy Internet den
hsan tyxaia gegonota alla oloklhrwmena merh ths dioratikothtas toy
Linus, poia htan h prwtotypia toy;
Gia na to pw apla, h erwthsh apantatai monh ths. O Linus kratouse toy
hackers/xrhstes synexws se yperentash kai toys antameibe-se yperentash
mesw toy project h diathrwntas ena egwistiko kommati ths olhs drashs
kai toys antameibe me thn sta8era (sxedon ka8e mera) beltiwsh ths
ergasia toys.
O Linus skopeye amesa sthn megistopoihsh toy ari8mou an8rwpowrwn sthn
katarghsh twn bugs kai sthn anaptyjh, akomh kai me pi8ano kostos thn
asta8eia toy kwdika h thn axrhsteysh ths bashs twn xrhstwn toy, an ena
sobaro bug apodeiknyotan ati8aso. O Linus symperiferotan san na
pisteye sto ejhs:
8. Dedomenhs mia megalhs bashs dokimastwn beta kai syn-
programmatistwn, sxedon ka8e problhma grhgora 8a entopis8ei ki ena fix
8a kanei thn emfanish toy.
H , ligotero typika, "exontas arketa matia, ola ta bugs einai rhxa".
To allaja se: "O Nomos toy Linus".
H arxikh moy skech htan oti, ka8e problhma "8a ginei fanero se
kapoion". O Linus apanthse legontas oti, to proswpo poy katalabainei
kai dior8wnei to problhma den einai anagkaia h synh8ws to proswpo poy
prwto to xarakthrizei. "Kapoios briskei ena problhma", leei, "kai
kapoios allos to katalabainei. Kai h anakalych toy problhmatos einai
h megaluterh proklhsh". To zhthma, omws, htan oti kai ta duo eteinan
na ginontai taxutata.
Edw, pisteuw, oti brisketai h kentrikh diafora poy ypogrammizei ta duo
styl programmatismou, to ka8edriko kai to styl pazariou. Apo thn
apoch toy ka8edrikou programmatisth, ta bugs kai ta alla problhmata
programmatismou einai aproblepta, upoyla, ba8ia fainomena. Xreiazontai
mhnes leptomerous ejetashs apo merikous afosiwmenoys an8rwpoys gia na
kataskeyasoyn empisto kwdika. Gi' ayto kai ta megala dialeimmata
metaju twn ekdosewn kai h anapofeykth apogohteysh otan oi ekdoseis
aytes, poy toso kairo perimeneis, den einai teleies.
Ap' thn apoch toy se "styl pazariou" programmatismou, ta bugs einai
genika epipolaia fainomena-h, toylaxiston, katalhgoyn na ginoyn
epipolaia otan ekti8entai se xilioys anypomonoys syn-programmatistes
poy meletoun ka8e nea ekdosh. Etsi, kaneis syxnes ekdoseis gia na
kerdiseis perissoteres dior8wseis kai san deytereuon kerdos, exeis
ligotera na xaseis an paroysiastei kapoia peristasiakh tsapatsoylia
An o "Nomos toy Linus" einai esfalmenos, tote ka8e susthma poy einai
toso periploko oso o pyrhnas toy Linux, poy "mastoreuetai " apo tosa
xeria, 8a eprepe na katarreei katw apo to baros twn aprobleptwn kakwn
allhlepidrasewn kai kala krymmenwn bugs. An, apo thn allh einai
swstos, ejhgei ikanopoihtika thn sxetikh apoysia bugs apo to Linux.
Ws pros ayto, den 8a eprepe na apotelei ekplhjh. Oi koinwniologoi
prin apo xronia anakalycan oti h mesh gnwmh enos synoloy isodunama
eidikwn (h isodunama anidewn) parathrhtwn einai ligo perissotero
ajiopisth apo ekeinh enos monadikou tyxaia epilegmenoy parathrhth.
Ayto apokaleitai "Fainomeno twn Delfwn". Fainetai oti, ayto poy
apedeije o Linus einai oti to fainomeno ayto briskei efarmogh sthn
apomakrynsh twn bugs apo ena leitoyrgiko susthma - oti to Fainomeno
twn Delfwn mporei na elegjei thn programmatistikh polyplokothta, akomh
kai sto epipedo polyplokothtas enos pyrhna leitoyrgikou systhmatos.
Eimai ypoxrewmenos ston Jeff Dutky (
[email protected]) poy ypedeije
oti o Nomos toy Linus mporei na parafras8ei se "H Katarghsh twn Bugs
Mporei na Parallhlis8ei". O Jeff parathrei oti, an kai h katarghsh twn
bugs apaitei apo aytous poy to pragmatopoioun na epikoinwnoun me
kapoion synergazomeno programmatisth, den apaitei shmantiko syntonismo
metaju twn prwtwn. Etsi, h katarghsh twn bugs den peftei sthn pagida
ths idias deyteroba8mias polyplokothtas kai ejodwn management poy
ka8istoun thn aujhsh twn programmatistwn sthn ergasia problhmatikh.
Sthn prajh, h 8ewrhtikh apwleia apotelesmatikothtas ejaitias toy
diplasiasmou ths ergasias twn programmatistwn gia thn katarghsh twn
bugs sxedon pote den apasxolei ton kosmo toy Linux. Ena apotelesma
ths "politikhs syxnwn kai prwimwn ekdosewn" einai h elaxistopoihsh
tetoiwn diplasiasmwn me thn grhgorh anadrastikh [fed-back] diadosh twn
dior8wsewn.
O Brooks ekane mia parathrhsh sxetika me ekeinh toy Jeff: "To synoliko
kostos synthrhshs enos eyrews xrhsimopoioumenoy programmatos einai,
typika, to 40% h kai perissotero toy kostoys kataskeyhs toy. Ayto to
kostos ephreazetai polu apo ton ari8mo twn xrhstwn. Perissoteroi
xrhstes briskoyn perissotera bugs".
Perissoteroi xrhstes briskoyn perissotera bugs, epeidh h pros8hkh
perissoterwn xrhstwn pros8etei perissoteroys diaforetikous tropoys
dokimwn toy programmatos. Ayto to fainomeno enisxuetai otan oi
xrhstes einai syn-programmatistes. Ka8e programmatisths proseggizei
thn ergasia xarakthrismou toy bug me elafra diaforetika antilhptika ki
analytika ergaleia, apo diaforetikh gwnia, se sugkrish me alloys. To
"Fainomeno twn Delfwn" fainetai na exei isxuei akribws ejaitias ayths
ths poikilias. Sto plaisio ths katarghshs twn bugs h poikilia ayth
teinei epishs na meiwsei ton diplasiasmo ths prospa8eias.
Etsi, h pros8hkh perissoterwn dokimastwn isws den meiwnei thn
polyplokothta toy duskoloy bug, apo thn skopia toy programmatisth,
ayjanei omws thn pi8anothta oti ta ergaleia kapoioy programmatisth 8a
tairiajoyn me to problhma me tetoio tropo wste to bug na ka8istatai
epipolaio gi' ayto to proswpo.
O Linus, omws, fylaei kai ta rouxa toy. Se periptwsh poy yparxoyn
sobara bugs, h ekdosh toy pyrhna ari8meitai me tetoio tropo wste oi
xrhstes na einai se 8esh na epilejoyn eite thn egkatastash ths
teleytaias "sta8erhs" ekdoshs h na riskaroyn me bugs gia na apolausoyn
nea xarakthristika. Ayth h taktikh den briskei mimhtes anamesa stoys
hackers toy Linux, alla isws 8a eprepe. To gegonos oti kai oi duo
epiloges einai sthn dia8esh twn xrhstwn tis kanei elkystikes._
5. Pote Ena Triantafyllo den Einai Triantafyllo?
Exontas melethsei thn symperifora toy Linus kai sxhmatisei mia 8ewreia
gia ton logo poy htan epityxhs, phra thn sobarh apofash na dokimasw
thn 8ewreia moy sto neo moy sxedio (polu ligotero periploko kai
filodojo).
Alla to prwto pragma poy ekana htan na organwsw ek neoy kai na
aplopoihsw polu ton popclient. H ylopoihsh toy Carl Harris htan polu
hxhrh alla paroysiaze mia mh anagkaia polyplokothta, koinh se pollous
programmatistes C. Metaxeiristhke ton kwdika san na einai to kentro
kai tis domes dedomenwn san yposthrijh toy kwdika. Me apotelesma o
kwdikas na einai omorfos alla oi domes dedomenwn sxediasmenes ad hoc
kai mallon asxhmes (toylaxiston sumfwna me ta ychla stantar aytou toy
paliou LISP hacker).
Eixa ki ena allo epipleon skopo ektos ths beltiwshs toy kwdika kai ton
sxediasmo ths domhs twn dedomenwn thn epaneggrafh toy kwdika ths
efarmoghs. Aytos htan gia na emplakw se kati poy katalabaina plhrws.
Den einai diaskedastiko na exeis thn ey8unh gia dior8wsh twn bugs s'
ena programma poy den katalabaineis.
Ton prwto mhna akoloy8ousa thn ylopoihsh toy basikou sxediasmou toy
Carl. H prwth sobarh allagh poy ekana htan na eisagw yposthrijh IMAR.
Ayto to ekana me thn ek neoy organwsh twn prwtokollwn s' enan geniko
driver kai se treis pinakes me8odwn (gia ROR2, ROR3 kai IMAR). Ayth
kai h prohgoumenh allagh apeikonizoyn mia genikh arxh poy einai kalo
na exoyn kata noy oi programmatistes, idiaitera se glwsses opws h C
poy kanonika den dia8etoyn dynamikh daktylografhsh.
9. Ejypnh domh dedomenwn kai koytos kwdikas doyleuoyn kalutera ap' to
antistrofo.
Brooks, Kefalaio 9: "An moy deijeis ton kwdika soy kai kruceis thn
domh twn dedomenwn soy, 8a parameinw se sugxysh. An moy deijeis thn
domh twn dedomenwn soy, den 8a xreiastw ton kwdika soy. Suntoma 8a
ton ma8w".
Sthn pragmatikothta o Brooks, sthn parapanw paragrafo, anaferetai se
"diagrammata rohs" kai "pinakes". Xrhsimopoiwntas, omws, trianta
xronwn orologikhs /politistikhs metallaghs, einai sxedon to idio.
S' ayto to shmeio (arxes Septembrh 96, eji mhnes apo thn wra mhden)
arxisa na skeftomai oti mia allagh onomatos isws einai epi8ymhth-sto
katw ths grafhs, den htan pia apla enas POP client. Distasa, omws,
epeidh tipota ston sxediasmo den htan gnhsia kainourio. H ekdosh toy
popclient moy eprepe na apokthsei dikh ths taytothta.
Ayth h katastash allaje rizika otan to fetchmail ema8e pws na prow8ei
ta paralhf8enta mhnumata sthn 8ura SMTP. 8a milhsw gi' ayto se ligo.
Eipa prohgoymenws oti eixa apofasisei na xrhsimopoihsw ayto to sxedio
gia na dokimasw thn 8ewria moy sxetika me thn symbolh toy Linus
Torvalds. Ayto to ekana ws ejhs:
1. Ejedida nwris kai syxna (Toylaxiston mia fora stis deka meres. Sth
diarkeia periodwn entonoy programmatismou, ka8e mera).
2. Megalwsa thn lista twn dokimastwn beta pros8etontas s' ayth ka8e
enan poy epikoinwnouse mazi moy gia to fetchmail.
3. Estelna filikes anakoinwseis sta melh ths listas meta apo ka8e
ekdosh, en8arrunontas ton kosmo na parei meros sto egxeirhma.
4. akoyga toys dokimastes moy, sfygmometrwntas anamesa toys gia tis
apofaseis toy sxediasmou, eyxaristwntas toys ka8e fora poy
apantousan ki estelnan dior8wseis.
To apotelesma aytwn twn aplwn metrwn htan ameso. Ap' thn arxh toy
sxedioy elambana anafores gia bugs, tis opoies oi perissoteroi
programmatistes 8a edinan ta panta gia na exoyn, syxna me
proskollhmena kales dior8wseis. Lambana syllogismenh kritikh,
diaskedastika mhnumata, ejypnes protaseis. Ol' ayta odhghsan sto:
10. An feresai stoys dokimastes soy san na einai h pio polutimh phgh
soy, 8a antapokri8oun san h pio polutimh phgh soy.
Ena metro ths epityxias toy fetchmail einai to spoydaio mege8os ths
listas twn dokimastwn, twn filwn toy fetchmail. Mexri stigmhs exei
249 melh kai prosti8entai duo h treis ka8e bdomada.
Opws diapistwsa sta telh Maioy 1997, h lista arxise na xanei apo ta
peripoy 300 melh ths, poy einai kai o megaluteros ari8mos toys, gia
enan shmantiko logo. Polloi an8rwpoi moy zhthsan na toys diagracw apo
thn lista epeidh to fetchmail douleye toso kala gi' aytous poy den
xreiazontan pleon na einai sth lista! Isws, kati tetoio einai meros
toy fysikou kukloy zwhs ka8e wrimoy sxedioy poy yio8etei to styl
"pazariou".
6. O Popclient Ginetai Fetchmail.
To pragmatiko shmeio kamphs toy sxedioy htan otan o Harry Hochheiser
moy esteile to prosxedio toy kwdika toy gia prow8hsh taxydromeio sthn
8ura SMTP toy ypologisth poy 8a filojenouse ton client. Sxedon amesws
katalaba oti mia swsth ylopoihsh aytou toy xarakthristikou 8a
ka8istouse ka8e allh me8odo paradoshs taxydromeioy aparxaiwmenh.
Gia polles ebdomades emba8yna sto fetchmail olo kai pio polu kai,
taytoxrona, eniw8a oti to interface antexe sthn xrhsh alla htan
aperipoihto, akomco kai me para polla mikra options edw ki ekei. H
epilogh dioxeteyshs toy taxydromeioy poy eixe hdh paralhf8ei sto
arxeio mailbox h sthn stantar ejodo me enoxlouse, alla den katalabaina
giati.
Ayto poy eida, otan skefthka thn prow8hsh mhnymatwn mesw SMTP, htan
oti o popclient prospa8ouse na kanei para polla pragmata. Eixe
sxediastei na einai ena programma metaforas taxydromeioy (MTA) ki ena
programma topikhs dianomhs taxydromeioy (MDA). Me thn prow8hsh SMTP
8a mporouse na apallagei ap' thn leitoyrgia MDA kai na einai ena aplo
MTA, metaferontas ta mhnumata se alla programmata, gia topikh
paralabh, opws akribws to sendmail.
Giati na periplekw ta pragmata ry8mizontas ena programma dianomhs
taxydromeioy h na efarmozw thn leitoyrgia lock-and-append s' ena
mailbox, th stigmh poy h 8ura 25 eggyhmena yparxei se ka8e platforma
me yposthrijh TCP/IP ap' thn arxh; Idiaitera otan ayto shmainei oti,
h allhlografia poy paralambanetai moiazei sigoyra me ena kanoniko
taxydromeio SMTP poy energopoieitai ap' ton apostolea, pragma to opoio
einai ayto poy zhtame.
Ta ma8hmata edw einai polla. Prwton, ayth h idea prow8hshs mesw SMTP
htan to shmantikotero poy kerdisa ap' thn syneidhth prospa8eia moy na
ejomoiwsw tis me8odoys toy Linus. Enas xrhsths moy edwse ayth thn
polu kalh idea-ayto poy eprepe na kanw htan na katalabw tis epiplokes.
11. To pio spoydaio meta apo to na exeis kales idees, einai na
anagnwrizeis tis kales idees twn xrhstwn soy. Merikes fores to
teleytaio einai kalutero.
Suntoma 8a katalabeis oti, an eisai entelws eilikrinhs gia to posa
xrwstas stoys alloys kai kaneis aytokritikh, o kosmos 8a soy
symperiferetai san na einai dikh soy h epinohsh kai 8a einai
metriofrones gia thn emfyth eyfyia soy. Oloi mporoume na doume poso
kala ayto leitourghse gia ton Linus!
(Otan edwsa ayto to keimeno se ena synedrio me 8ema thn Perl ton
Augoysto toy 1997, O Larry Wall ka8ontan sthn prwth grammh. Epeidh
egw ka8omoyn sthn teleytaia seira moy fwnaje, me styl 8rhskeytikhs
anazwpurwshs [religious-revival style], "Pesta, pesta, aderfe!". Olo
to akroathrio gelase , epeidh hjeran oti oi apoceis moy eixan doylecei
kai gia ton dhmioyrgo ths Perl.)
Meta apo liges ebdomades doyleuontas sto sxedio me to idio pneuma
arxisa na pairnw paromoioys epainoys oxi mono apo toys xrhstes moy,
alla ki apo alloys an8rwpoys poy ema8an ol' ayta. Fulaja san 8hsayro
kapoia apo ayta ta Email, merikes fores ta janakoitaw otan arxizw na
anarwtiemai an h zwmou ajizei ton kopo :-)
Omws, edw yparxoyn alla duo 8emeliwdh mh politika ma8hmata, poy
efarmozontai se ka8e eidos sxediasmou.
12. Syxna, oi pio faneres kai kainotomikes luseis emfanizontai otan
blepeis oti h antilhch poy exeis gia to problhma einai la8os.
Prospa8ousa na lusw la8os problhma me to na synexizw na anaptussw ton
popclient san ena syndyasmo MTA/MDA, me ola ta eidh me8odwn topikhs
dianomhs taxydromeioy. Eprepe na skeftw pali to fetchmail ap' thn
arxh, san ena ka8aro MTA, san meros toy kanonikou SMTP Internet
taxydromeioy.
Otan ftaneis se adiejodo-otan nomizeis oti dyskoleuesai na skefteis to
epomeno patch-syxna einai kairos na skefteis oxi an exeis thn swsth
apanthsh, alla an rwtas thn swsth erwthsh. Isws prepei na to problhma
na diey8eth8ei ek neoy.
Ayto ki ekana. 3eka8ara, ayto poy eprepe na kanw htan (1) na eisagw
yposthrijh prow8hshs SMTP ston geniko driver, (2) na thn ry8misw ws ej
orismou leitoyrgia kai, (3) na apallagw apo oles tis alles leitoyrgies
dianomhs, idiaitera thn apo8hkeysh twn mhnymatwn se arxeio kai thn
metabibash sthn stantar ejodo.
Ka8ysterhsa gia ligo sto stadio (3), foboumenos na anastatwsw toys
xrhstes poy xrhsimopoiousan gia megalo diasthma popclient kai hsan
ejarthmenoi ap' toys enallaktikous mhxanismous paralabhs. 8ewrhtika,
8a mporousan na metabainoyn sta arxeia .forward h sta non-sendmail
isodunama toys, kai na exoyn to idio apotelesma. Sthn prajh, h
metabash ayth fainotan akatastath.
Otan, omws, ta katafera to kerdos apodeixthke megalo. Ta dyskolotera
merh toy driver ejafanisthkan. H ru8mish egine rizika aplousterh-
terma h anazhthsh gia to MDA toy systhmatos kai to mailbox toy xrhsth,
telos stis anhsyxies gia to ean to leitoyrgiko programma yposthrizei
kleidwma twn arxeiwn [file locking].
Epishs, o monos tropos na xaseis mhnumata ejafanisthke. An exeis
orisei h paralabh twn mhnymatwn na proskollh8ei s' ena arxeio ki o
diskos einai gematos, ta mhnumata soy xanontan. Ayto den symbainei me
thn prow8hsh mesw SMTP, epeidh o SMTP listener den 8a epistrecei OK
mexris otoy ta mhnumata paralhf8oun h, toylaxiston, mpoyn sthn seira
gia paradosh kapoia allh stigmh.
Akomh, beltiw8hke h apodosh (an kai den 8a to prosejei kaneis me mia
aplh xrhsh toy programmatos). Ena allo oxi ashmanto ofelos ayths ths
allaghs htan oti to egxeiridio xrhshs egine aploustero.
Argotera, eprepe na ry8misw thn paralabh twn mhnymatwn mesw enos
topikou MDA ka8orismeno apo ton xrhsth, wste na epitrecw ton elegxo
kapoiwn skoteinwn katastasewn sxetika me thn dynamic SLIP. Brhka,
omws, enan pio aplo tropo gia na to kanw.
H8iko didagma; Mhn distazeis na petajeis parwxhmena xarakthristika
otan mporeis na to kaneis xwris apwleies sthn apotelesmatikothta. O
Antoyan Saint-Ejperu (poy htan pilotos kai sxediasths aeroskafwn, otan
den egrafe klasika biblia gia paidia) exei pei:
13. H teleiothta (ston sxediasmo) einai dynath oxi otan den yparxei
kati gia na pros8eseis, alla mallon otan den yparxei kati gia na
afaireseis.
Otan o kwdikas soy ginetai kaluteros kai aplousteros, tote jereis oti
einai swstos. Kai sthn poreia to fetchmail apekthse dikh toy
taytothta, diaforetikh ap' ton progono toy popclient.
Htan wra gia thn allagh toy onomatos. To neo programma emoiaze
perissotero m' ena diplo sendmail poy die8ete o palios poclient. Kai
ta duo einai MTA, alla ekei poy to sendmail sprwxnei thn paradosh toy
taxydromeioy, o neos popclient thn elkuei. Etsi, meta apo duo mhnes
leitoyrgias xwris empodia, ton onomasa fetchmail.
7. To Fetchmail Enhlikiwnetai.
Na mia, loipon, m' ena kaloftiagmeno kai neo sxediasmo, m' enan kwdika
poy hjera oti epejergasthka kala epeidh ton xrhsimopoiousa ka8e mera,
kai mia lista dokimastwn poy megalwne. Ba8miaia arxisa na katalabainw
oti den ekana pleon kapoion tetrimmeno proswpiko programmatismo poy
isws na htan xrhsimos gia merikous an8rwpoys. Eixa sta xeria moy ena
programma poy ka8e hacker me Unix kai sundesh SLIP/PPP xreiazotan st'
alh8eia.
Me to xarakthristiko ths prow8hshs mesw SMTP, to programma mphke prwto
ston synagwnismo ki egine o "fonias" ths kathgorias toy, egine ena
klasiko programma poy gemizei toso kala thn gwnia poy katalambanei
wste ta enallaktika pros ayto programmata oxi aporrif8hkan alla sxedon
jexasthkan.
Einai duskolo na exeis tetoia apotelesmata. Prepei na sprwxteis s'
ayta me to na sxediazeis nees idees toso isxyres wste, sto telos, ta
apotelesmata na fainontai anapofeykta, fysika. O monos tropos gia na
exeis tetoies idees einai na exeis polles idees-h na exeis thn
sxediastikh krish na odhgeis tis kales idees allwn an8rwpwn pera ap'
to shmeio poy oi empneystes toys 8a mporousan na to odhghsoyn.
O Andrew Tanenbaum eixe thn arxikh idea na dhmioyrghsei ena aplo
topiko susthma Unix gia 386, gia na to xrhsimopoihsei san didaktiko
ergaleio. O Linus Torvalds w8hse thn idea toy Minix pio pera ap' ton
Andrew. Me ton idio tropo (an kai se mikroterh klimaka) phra merikes
idees twn Carl Harris kai Harry Hochheiser kai tis w8hsa sta akra.
Kaneis mas den htan "gnhsia" idiofyia.
Ta apotelesmata hsan me8ystika-htan akribws h epityxia poy ka8e
programmatisths latreuei! H epityxia ayth shmaine oti eprepe na 8esw
ta stantar moy chlotera. Gia na kanw to fetchmail oso kalo eblepa oti
mporei na ginei, eprepe na to kataskeyasw oxi mono gia tis dikes moy
anagkes, alla epishs na symperilabw kai na yposthrijw xarakthristika
xrhsima gia alloys, ejw omws apo thn dikh moy troxia. Ki ayto na to
kanw diathrwntas to programma aplo kai gero.
To prwto kai polu shmantiko xarakthristiko, poy symperielaba meta ap'
ol' ayta, htan h yposthrijh multidrop-h dynatothta paralabhs toy
taxydromeioy apo ta mailboxes poy exoyn sysswreusei ola ta mhnumata
mias omadas xrhstwn kai h dromologhsh toy ka8e mhnumatos ston
paralhpth toy.
Apofasisa na kanw merikh pros8hkh yposthrijhs multidrop epeidh
merikoi xrhstes diamarturontan, alla kyriws epeidh nomiza oti 8a
jeka8arize ta elattwmata toy kwdika single-drop anagkazontas me na
asxolh8w ejoloklhroy me thn diadikasia diey8ynsiodothshs /
kataxwrhshs. Ki etsi apodeix8hke. Phra to RFC 822
<
http://www.internic.net/rfc/rfc822.txt> kai h eisagwgh ayths ths
parametroy sthn yporoytina me ka8ysterhse arketo xrono, oxi epeidh ta
jexwrista kommatia ths einai duskola, alla epeidh enepleke ena swro
apo allhloejartwmenes kai idiotropes leptomereies.
Omws, h diey8ynsiodothsh multidrop katelhje na ginei mia polu kalh
sxediastikh apofash.
14. Ka8e ergaleio 8a prepei na einai xrhsimo me ka8e anamenomeno
tropo, alla ena pragmatika spoydaio ergaleio prosferetai gia xrhseis
poy pote den 8a perimenes.
H anapantexh xrhsh toy multidrop fetchmail einai h dynatothta
leitoyrgias mias listas allhlografias (mailing lists) poy diathreite
sthn pleyra toy client ths sundeshs SLIP/PPP, kai taytoxrona s' ayth
exei ginei h epektash toy alias. Ayto shmainei oti, kapoios poy
xrhsimopoiei enan proswpiko ypologisth, mesw enos logariasmou se
kapoion ISP, mporei na xeiristei thn lista allhlografias xwris na
diathrei synexws thn prosbash toy sta arxeia ceydwnumwn toy ISP.
Mia allh endiaferoysa allagh poy apaithsan oi dokimastes htan h
yposthrijh leitoyrgias 8-bit MIME. Ayto htan eukolo na to kanw,
epeidh eixa prosejei na diathrhsw ton 8-bit kwdika ka8aro. Oxi epeidh
proebleca thn apaithsh gi' ayto to xarakthristiko, alla mallon
ypakouontas se enan allo kanona:
15. Otan kataskeyazeis gateway logismiko opoioydhpote eidoys,
prospa8hse na alloiwseis to stream twn dedomenwn oso to dynaton
ligotero-kai POTE mhn petas plhrofories an oi paralhptes soy den se
anagkasoyn!
An den ypakoya s' ayto ton kanona h yposthrijh 8-bit MIME 8a htan
duskolh kai gemath bugs. Opws htan twra, ayto poy eprepe na kanw htan
na diabasw to RFC 1652 <
http://www.internic.net/rfc/rfc1652.txt> kai
na pros8esw tetrimmena bits gia dhmioyrgia kefalidwn.
$Merikoi Eyrwpaioi xrhstes moy zhtousan na pros8esw mia epilogh
periorismou toy ari8mou twn mhnymatwn poy paralabainan se ka8e xrhsh
toy fetchmail (wste na elegxoyn ta ejodo sundeshs toys sta akriba
thlefwnika diktya). Antista8hka s' ayth thn apaithsh gia arketo
kairo, kai den mporw na pw oti eimai xaroumenos gi' ayto. Alla otan
grafeis gia ton kosmo prepei n' akous toys pelates soy-ayto den
allazei epeidh den se plhrwnoyn me xrhmata.
8. Merika Akomh Ma8hmata apo to Fetchmail.
Prin epistrecoyme se 8emata genikou endiaferontos paragwghs
logismikou, yparxoyn akomh merika ma8hmata ap' thn empeiria toy
fetchmail gia na melethsoyme.
H suntajh twn arxeiwn rc perilambanei proairetikes desmeymenes lejeis
"8oruboy" [noise keyword] poy agnoountai plhrws apo ton
programmatisth. H suntajh Agglikou tupoy poy protimoun einai polu pio
anagnwsimh ap' ta paradosiaka lita zeugh timwn desmeymenwn lejewn poy
pairnei kaneis otan apogymnwsei aytes tis desmeymenes lejeis.
Ayto arxise san ena peirama, otan proseja poso polu oi anakoinwseis
twn arxeiwn rc arxizan na moiazoyn mia epibeblhmenh mikrh glwssa.
(Aytos einai o logos poy allaja thn arxikh desmeymenh lejh toy
popclient apo "server" se "poll").
Moy fainotan oti an prospa8ousa na kanw ayth thn epibeblhmenh mikrh
glwssa na moiazei me ta Agglika 8a ginotan pio euxrhsth. Omws, an kai
eimai afosiwmenos opados ths sxolhs sxediasmou poy apokaleite "kaneto
mia glwssa", opws mas paradeigmatizoyn to Emacs h HTML kai polles
mhxanes basewn dedomenwn, den eimai spoydaios opados ths suntajhs
Agglikou tupoy.
Oi paradosiakoi programmatistes eteinan na eynooun suntajh elegxoy poy
einai polu akribhs kai sympaghs kai den eixan ka8oloy perittes
epanalhceis. Ayto einai mia politismikh klhronomia apo thn epoxh poy
oi poroi twn ypologistwn hsan akriboi, wste h analysh twn stadiwn na
einai oso to dynaton pio fthnh ki aplh. Ta Agglika, me peripoy 50%
perittwn epanalhcewn, fainotan tote polu akatallhlo montelo.
Den einai aytos o logos poy apofeugw thn suntajh Agglikou tupoy. Thn
anaferw edw mono gia na thn katarghsw. Exontas fthnous kukloys kai
pyrhna h lakwnikothta den 8a eprepe na einai aytoskopos. Shmera,
einai pio shmantiko h glwssa na einai bolikh gia toys an8rwpoys apo to
na einai fthnh gia toys ypologistes.
Yparxoyn, omws, sobaroi logoi na anhsyxoume. Enas, einai to kostos
poy dhmioyrgei h periplokh twn analymenwn stadiwn-kaneis den 8elei na
ayjhsei ayth thn periplokh sto shmeio na einai phgh bugs kai sugxyshs
twn xrhstwn. Enas allos einai oti, prospa8wntas na kanoyme mia glwssa
suntajhs na moiazei me Agglika syxna apaiteitai ta "Agglika" poy mila
ayth na jefeugoyn arketa apo ka8e gnwsth morfh, toso wste h
epifaneiakh omoiothta pros thn fysikh glwssa na einai toso sygxytikh
oso mporei na einai ka8e paradosiakh suntajh. (Ayto to synanta kaneis
se polles emporikes glwsses poy efarmozoyn anazhthsh mesw basewn
dedomenwn kai tis legomenes glwsses "tetarths genias".
H suntajh elegxoy toy fetchmail fainetai na apofeugei ayta ta
problhmata, epeidh o xwros kyriarxias ths glwssas toy einai polu
periorismenos. Den einai mia genikh glwssa. Ta pragmata poy leei
ayth den einai toso periplegmena, wste yparxei mikrh pi8anothta
sugxyshs otan kinoumaste metaju enos mikrou yposynoloy ths Agglikhs
kai ths pragmatikhs glwssas elegxoy. Edw yparxoyn eyrutera didagmata:
16. Otan mia glwssa den einai plhrhs kata Turing (Turing-complete),
tote h kaluterh lush einai h syntaktikh zaxarh.
Ena allo ma8hma einai gia thn asafeia ths asfaleias. Merikoi xrhstes
toy fetchmail moy zhthsan na kanw allages sto programma wste na
apo8hkeuei kryptografhmenoys kwdikous sto arxeio rc, wste na mhn
mporoun na toys doyn tyxaia oi adiakritoi.
Den to ekana, epeidh kati tetoio den prosferei asfaleia. Opoiosdhpote
exei adeia na diabasei to arxeio rc 8a mporei na xrhsimopoihsei to
fetchmail-ki an caxnoyn ton kwdika sas 8a mporoun na apomonwsoyn ton
apokwdikopoihth mesa apo ton idio ton kwdika toy fetchmail.
Opoia kryptografhsh kwdika sto arxeio .fetchmailrc ki an epixeirh8ei
dinei mia esfalmenh ais8hsh asfaleias. O genikos kanonas einai o
ejhs:
17. Ena susthma asfaleias einai toso asfales oso einai kai to mystiko
toy. Prosoxh sta ceydo-mystika.
9. Proupo8eseis gia to Styl Pazariou.
Oi prwtoi anagnwstes aytou toy keimenoy e8etan erwthseis gia tis
proupo8eseis gia enan epityxhmeno programmatismo se styl pazariou,
symperilambanomenwn toso twn prosontwn toy epikefalh toy egxeirhmatos,
oso kai thn katastash toy kwdika kata th stigmh poy kapoios, dhmosia,
jekina thn prospa8eia organwshs mias omadas syn-programmatistwn.
Einai jeka8aro oti kaneis den mporei, me to pazariwtiko styl, na
dhmioyrghsei kwdika ek toy mhdenos sto Pazariwtiko styl. Mporei kaneis
na dokimasei, na beltiwsei kai na kanei debug kapoioy kwdika, alla 8a
htan polu duskolo na dhmioyrghsei ek neoy ena project m' ayth th
me8odo. Oute egw oute ki o Linus to dokimasame. H omada
programmatismou poy molis dhmioyrghsate exei anagkh kati poy einai
xrhsimopoihsimo kai dokimasmeno, gia na jekinhsei.
Otan jekina kaneis thn dhmioyrgia ths omadas programmatismou prepei na
mporeite na paroysiasete alh8ofaneis yposxeseis. To programma sas den
xreiazetai na doyleuei idiaitera kala. Mporei na einai argo, olo
bugs, ateles kai ftwxa tekmhriwmeno. Ekei poy den prepei na apotuxete
einai na peisete toys pi8anous syn-programmatistes sas oti mporei na
ejelix8ei se kati petyxhmeno mesa sto problepto mellon.
To Linux kai to fetchmail dhmosiopoih8hkan exontas stibaro, elkystiko
sxediasmo. Polloi an8rwpoi poy skeftontai me to montelo toy pazariou
opws thn paroysiasa, exoyn labei sobara ypoch ayto to krisimo shmeio
kai katelhjan sto symperasma oti einai apolyta anagkaio o epikefalhs
toy sxedioy na dia8etei sxediastikh diais8hsh ki eyfyia.
$Alla o Linus phre ta sxedia toy apo to Unix. Egw phra ta dika moy
arxika ap' to popclient (an kai argotera 8a allaze para polu kai
perissotero analogika me to Linux). Prepei, loipon, o epikefalhs,
syntonisths mias prospa8eias pazariwtikoy styl na exei ejairetiko
sxediastiko talento, h mporei na proxwrhsei enisxuontas to sxediastiko
talento allwn;
Den nomizw oti einai shmantiko o syntonisths na mporei na dhmioyrgei
sxedia ejairetikhs eyfyias, alla einai apolyta shmantiko na mporei na
anagnwrisei tis kales sxediastikes idees allwn.
Ayto to apedeijan ta project toy Linux kai toy fetchmail. O Linus,
enw den htan (opws eipame kai prin) enas gnhsios sxediasths, epedeije
dejiothta sto na anagnwrizei ta kala sxedia kai na ta oloklhrwnei ston
pyrhna toy Linux. Ki exw hdh perigracei pws h pio isxyrh sxediastikh
idea gia to fetchmail (dhladh, h prow8hsh mesw SMTP) prohl8e apo
kapoion allo.
Oi prwtoi anagnwstes aytou toy keimenoy me kolakeuoyn ypainissomenoi
oti exw prodia8esh na ypoektimw thn sxediastikh gnhsiothta sxediwn
pazariwtikoy styl, epeidh dia8etw o idios arketh apo ayth kai, etsi,
thn 8ewrw dedomenh. Isws ayto na alh8euei. O sxediasmos einai
sigoyra h kaluterh ikanothta moy.
To problhma, omws, otan kaneis einai eyfyhs ston sxediasmo logismikou
einai otan kati tetoio arxizei na ginetai synh8eia-arxizeis na kaneis
pragmata periploka otan 8a eprepe na einai dynata kai apla. Polla
programmata katerreysan epeidh ekana ayto to la8os, alla to apefyga
sto fetchmail.
Pisteuw, loipon, oti to project toy fetchmail petyxe en merei epeidh
empodisa thn tash moy na eimai ejypnos. Kati tetoio erxetai se
anti8esh me thn sxediastikh gnhsiothta poy einai oysiwdhs gia ena
epityxhmeno pazariwtiko project. Ypo8este oti o Linus prospa8ouse na
petuxei 8emeliwdhs kainotomies kata th diarkeia toy programmatismou.
Fainetai api8ano oti o pyrhnas poy 8a epairne m' ayto ton tropo na
htan sta8eros kai petyxhmenos ;
Ena sygkekrimeno epipedo sxediastikhs kai programmatistikhs ikanothtas
einai aparaithto, bebaia, alla anamenw oti oloi osoi skeftontai sobara
na asxolh8oun me thn me8odo pazariou na einai hdh panw ap' ayto to
minimoym. H eswterikh agora ths koinothtas anoixtou kwdika askei
leptes pieseis stoys an8rwpoys na mhn askoun programmatistikes
prospa8eies tis opoies den mporoun na akoloy8hsoyn ws to telos. Ws
twra ayth h symboylh eisakouetai.
Yparxei ki ena allo eidos ikanothtas poy kanonika den syndeetai me thn
anaptyjh logismikou h opoia, nomizw, einai toso shmantikh gia to
pazariwtiko project oso kai h sxediastikh eyfyia-kai isws perissotero.
Enas syntonisths xalarou sxedioy prepei na exei kalous synergates kai
ikanothtes epikoinwnias.
Gia na organwseis mia omada programmatistwn prepei na eljeis toys
an8rwpoys, na prokaleseis to endiaferon toys se o,ti kaneis kai na
toys prokaleis thn eyxaristhsh gia thn posothta ergasias poy kanoyn.
Ta texnika skampanebasmata 8a einai polla mexris otoy na to
kataferete, alla den einai ayto to 8ema mas. H proswpikothta poy
probalete exei shmasia.
Den einai sumptwsh poy o Linus einai kalo atomo kai kanei toys
an8rwpoys na 8eloyn na ton boh8hsoyn. Den einai tyxaio poy eimai enas
energhtikos ejwstrefhs tupos poy toy aresei na doyleuei me alloys.
Gia na exei apotelesmata to pazariwtiko montelo, boh8aei an mporeis na
synergasteis me eyxaristoys an8rwpoys.
10. To Koinwniko Plaisio toy Logismikou Anoixtou Kwdika.
Ayto poy lene einai swsto: oi kaluteres parembaseis sto logismiko
[hacks] jekinoun san proswpikes luseis sta ka8hmerina problhmata toy
programmatisth ki ejaplwnontai epeidh ayta ginontai typika gia megalo
ari8mo xrhstwn. Ayto mas parapempei sto 8ema toy kanona (1), poy
mporei na diatypw8ei me pio xrhsimo tropo:
18. Gia na luseis ena endiaferon problhma, bres ena problhma poy einai
endiaferon gia sena.
Ayto synebh me ton Carl Harris kai to palio popclient, ayto synebh kai
me mena kai to fetchmail. Alla ayto hdh to exoyme katalabei. To
endiaferon shmeio, to shmeio sto opoio oi istories toy Linux kai toy
fetchmail fainetai na apaitoun na estiasoyme epanw toys, einai to
epomeno stadio-h ejelijh toy logismikou paroysia mias megalhs kai
drasthrias koinothtas xrhstwn kai syn-programmatistwn.
Sto biblio toy "The Mythical Man-Month" o Fred Brooks parathrei oti, o
xronos toy programmatisth den einai antallajimos. H pros8hkh
programmatistwn s' ena ka8ysterhmeno project logismikou to ka8ysterei
perissotero. Isxyrizetai oti, to kostos ths polyplokothtas kai ths
epikoinwnias enos project ayjanontai gewmetrika, enw h ergasia poy
oloklhrwnetai ayjanetai ari8mhtika. Ayth h apoch egine gnwsth san "o
Nomos toy Brooks" kai anagnwrizetai apo pollous san kati teleiws
pasifanes. Alla an o Nomos toy Brooks apedide thn olh eikona to Linux
8a htan adunato na yparjei.
To klasiko keimeno "H Yyxologia toy Programmatismou me Hlektroniko
Ypologisth", toy Gerald Weinberg, mas dinei mia zwtikh dior8wsh ths
apochs toy Brooks. Sthn syzhthsh toy gia ton "xwris egwismo"
programmatismo o Weinberg parathrei oti, se ergasies poy
programmatistes den apaitoun "edafika dikaiwmata" gia ton kwdika toys
kai en8arrunoyn alloys an8rwpoys na anazhthsoyn bugs kai pi8anes
beltiwseis, h beltiwsh symbainei dramatika grhgorotera apo opoydhpote
allou.
Oi epiloges orologias poy ekane o Weinberg isws empodizoyn thn analysh
toy na kerdisei thn apodoxh poy ths ajizei-kapoios 8a xamogelouse ston
xarakthrismo twn hackers toy Internet san "xwris egwismo". Alla
pisteuw oti oi isxyrismoi toy moiazoyn shmera perissotero epiblhtikoi
apo pote.
H istoria toy Unix 8a eprepe na mas exei proetoimasei gia o,ti
ma8ainoyme ap' to Linux (kai gia oti exw egw diapistwsei, peiramatika
kai se mikroterh klimaka otan skopima antegraca tis me8odoys toy
Linus). Oti, dhladh, enw h suntajh kwdika paramenei mia oysiwdws
monaxikh drasthriothta, oi pragmatika kales programmatistikes ergasies
proerxontai otan xrhsimopoieitai h prosoxh kai h dianohtikh dunamh ths
omadas. O programmatisths poy xrhsimopoiei to myalo toy toy monos h
monh s' ena kleisto project 8a meinei pisw ap' ton programmatisth poy
jerei pws na dhmioyrghsei ena anoixto, ejeliktiko plaisio sto opoio o
entopismos twn bugs kai h epiteyjh beltiwsewn kataferontai apo
ekatontades an8rwpwn.
Omws, o paradosiakos kosmos toy Unix empodisthke sthn prospa8eia toy
na w8hsei ayth thn proseggish sthn telikh ths fash apo pollous
paragontes. Tetoioi htan oi nomikoi periorismoi diaforwn adeiwn
xrhshs pneymatikwn dikaiwmatwn, epaggelmatika mystika kai ta emporika
symferonta. Enas allos htan oti to Internet den htan akomh arketa
kalo.
Prin apo thn eleysh toy fthnou Internet yphrxan kapoies gewgrafika
sympageis omades twn opoiwn h koyltoura ene8arryne ton "mh egwistiko"
programmatismo toy Weinberg ki enas programmatisths mporouse xwris
dyskolia na proselkusei pollous ikanous parathrhtes kai
programmatistes. Ta Bell Labs, MIT AI Lab, to UC Berkeley eginan
oikoi 8rylikwn kainotomiwn poy einai akomh se isxu.
To Linux htan to prwto project poy ekane syneidhtes kai epityxeis
prospa8eies na ajiopoih8ei oloklhros o kosmos san h dikh toy dejamenh
talentwn. Den nomizw oti einai sumptwsh oti h gonimh periodos toy
Linux emfanizetai thn idia periodo me ekeinh ths gennhshs toy
Pagkosmioy Istou (World Wide Web-WWW) kai oti to Linux egkateleice thn
paidikh toy hlikia kata thn periodo 1993-1994 h opoia eide thn
apogeiwsh ths biomhxanias Paroxewn Yphresiwn Internet (ISP) kai ths
ekrhjhs toy megaloy reumatos endiaferontos gia to Internet. O Linus
htan o prwtos an8rwpos poy ema8e pws na paizei me toys neoys kanones
poy dhmioyrgouse to Internet.
Enw to fthno Internet htan mia anagkaia syn8hkh gia thn anaptyjh toy
monteloy Linux, nomizw pws apo mono toy den hgan mia eparkhs syn8hkh.
Enas allo zwtikos paragontas htan h anaptyjh enos hgetikou styl ki
enos synoloy synergatikwn synh8eiwn poy epetrecan stoys
programmatistes na proselkusoyn syn-programmatistes kai na apokomisoyn
thn megisth isxu.
Ti einai, omws, ayto to hgetiko styl kai oi synh8eies; Den mporoun na
basizontai se sxeseis ejoysias-akomh ki an mporousan, h ejanagkastikh
ejoysia den mporei na prokalesei ta apotelesmata poy diapistwnoyme. O
Weinberg para8etei thn aytobiografia toy Piotr Alejeiebits Kropotkin,
Rwsoy anarxikou toy 19oy aiwna, "Oi anamnhseis enos Epanastath".
"Exontas anatrafei apo mia oikogeneia poy eixe sthn idiokthsia ths
doyloparoikoys jekinhsa thn zwh moy, opws oloi oi neoi ths epoxhs moy,
me pisth megalh sthn anagkaiothta toy na diatazeis, na malwneis, na
timwreis, kai ol' ayta. Alla otan, arketa nwris, eprepe na
leitoyrghsw sobares epixeirhseis kai na sysxetistw me [eleu8eroys]
an8rwpoys, kai otan to paramikro la8os mporouse na odhghsei se
odynhres epiptwseis, arxisa na ektimw thn diafora metaju ths drashs
basei twn arxwn ths entolhs kai ths pei8arxias kai ths drashs basei
ths arxhs ths koinhs katanohshs. Oi prwtes efarmozontai 8aymasia se
mia stratiwtikh parelash, alla den ajizei to paramikro sthn pragmatikh
zwh opoy o stoxos mporei na epiteyx8ei mono me tis sklhrh prospa8eia
pollwn sygklinoyswn 8elhsewn"
H "sklhrh prospa8eia pollwn sygklinoyswn 8elhsewn" einai akribws ayto
poy apaitei to project toy Linux-kai h "arxh ths diataghs" einai
adunaton na efarmostei metaju e8elontwn, mesa ston anarxiko paradeiso
poy legetai Internet. Gia na leitoyrghsoyn kai synagwnistoun
apotelesmatika, oi programmatistes poy 8eloyn na hgh8oun enos
synergatikou project prepei na ma8oyn na stratologoun kai na
energopoioun apotelesmatikes omades programmatistwn me ton tropo poy
proteinei h "arxh ths katanohshs" toy Kropotkin. Prepei na ma8oyn na
xrhsimopoioun ton Nomo toy Linus.
Nwritera anafer8hka sto "fainomeno twn Delfwn" ws mia pi8anh ejhghsh
toy Nomoy toy Linus. Yparxoyn, omws, ki alles ejhghseis opws oi
isxyres analogies twn prosarmosimwn systhmatwn sthn biologia kai thn
oikonomia. O kosmos toy Linux symperiferetai apo polles apoceis san
mia eleu8erh agora h ena oikosusthma, san ena sunolo egwistikwn
dynamewn poy prospa8oun na megistopoihsoyn thn wfeleia h opoia, sthn
diadikasia, dhmioyrgei mia ayto-dior8wtikh ay8ormhth tajh perissotero
peritexnh kai apotelesmatikh apo ka8e tetoia poy mporei na kataferei
opoiodhpote posothta kentrikou sxediasmou. Meta, s' ayto to shmeio
prepei na anazhthsoyme thn "arxh ths katanohshs".
H "wfelimh leitoyrgia" poy prospa8oun na megistopoihsoyn oi
programmatistes Linux den einai oikonomikh alla mia aprosdioristh
ikanopoihsh toy egw kai ths fhmhs toys metaju twn allwn
programmatistwn. (Kapoios mporei na onomasei to kinhtro toys
"altroyistiko", alla 8a agnoei oti o altroyismos einai o idios einai
mia morfh ikanopoihshs toy egw twn altroyistwn). H e8elontikh
koyltoura poy leitoyrgei m' ayto ton tropo sthn pragmatikothta einai
synh8ismenh. Mia allh koyltoura, sthn opoia symmeteixa ki egw, einai
oi opadoi ths episthmonikhs fantasias poy, anti8eta me toys
programmatistes anagnwrizei "ton mpampoula toy egw" (ton employtismo
ths fhmhs kapoioy metaju allwn opadwn) san to basiko kinhtro pisw ap'
thn e8elontikh drasthriothta.
Exontas me epityxia balei ton eayto toy sth 8esh toy fulaka toy
project kata to opoio h anaptyjh toy logismikou ginetai apo alloys kai
kalliergwntas to endiaferon gia to project mexris otoy ayto egine
aytosynthroumeno, o Linus epedeije mia ojyderkh antilhch ths "arxhs
ths koinhs katanohshs" toy Kropotkin. Ayth h hmi-oikonomikh och toy
kosmoy toy Linux mas anagkazei na ejetasoyme pws efarmozetai ayth h
katanohsh.
Mporoume na doume tis me8odoys toy Linus san ena tropo sundeshs toy
egwismou toy jexwristou programmatisth oso to dynaton pio stenhs me
duskoloys stoxoys, poy mporoun na epiteyx8oun mono me paratetamenh
synergasia. Me to project toy fetchmail apedeija (molonoti se
mikroterh klimaka) oti ayth h me8odos mporei na epanalhf8ei me kala
apotelesmata. Isws ta katafera ligo pio syneidhta kai systhmatika apo
ekeinon.
Polloi an8rwpoi (idiaitera ekeinoi poy politika dyspistoun enwpion ths
eleu8erhs agoras) 8a perimenan apo mia koyltoura ayto- diey8ynomenwn
atomwn na einai kermatismenh, topikh, axrhsth, peritth ki ex8rikh.
Aytes oi prosdokies, omws, akyrwnontai apo thn ekplhktikh poikilia,
poiothta kai ba8os ths tekmhriwshs toy Linux, gia na anaferw ena
paradeigma. Oi programmatistes apex8anontai thn tekmhriwsh. Pws,
tote, oi programmatistes toy Linux paragoyn tosh polu; Profanws, h
eleu8erh agora sto Linux doyleuei parexontas kalh, diaforetikh
symperifora apo ekeinh twn mazika xrhmatodotoumenwn ergasthriwn
paragwghs tekmhriwshs twn emporikwn logismikwn proiontwn.
Toso to project toy pyrhna toy fetchmail oso kai toy Linux deixnoyn
oti, antameibontas katallhla toys programmatistes enas kalos
programmatisths/syntonisths mporei na xrhsimopoihsei to Internet gia
na ekmetalleytei ta ofelh otan exei pollous programmatistes xwris,
taytoxrona, na katastrefetai to project mesa se mia xaotikh
anakatwsoura. Etsi, ston Nomo Brooks antiproteinw to ejhs:
19. Me ton oro o syntonisths programmatisths na exei ena meson
toylaxiston toso kalo oso to Internet kai gnwrizontas pws na hgh8ei
xwris katapiesh, polla myala anapofeykta ginontai kalutera apo ena.
Pisteuw oti, to mellon toy logismikou anoixtou kwdika anhkei olo kai
perissotero stoys an8rwpoys poy jeroyn pws na paijoyn to paixnidi toy
Linus, se an8rwpoys poy afhnoyn pisw toys to ka8edriko styl ki
agkaliazoyn to styl pazariou. M' ayto den ennooume oti h apoch kai h
eyfyia toy ka8enos den exoyn shmasia. Alla mallon oti, h aixmh toy
logismikou anoixtou kwdika 8a anhkei se an8rwpoys poy jekinoun ap' thn
atomikh apoch ki eyfyia kai meta tis enisxuoyn me thn apotelesmatikh
dhmioyrgia e8elontikwn omadwn koinou endiaferontos.
Kai isws oxi mono to mellon toy logismikou anoixtou kwdika. Kanenas
programmatisths kleistou kwdika mporei na sygkentrwsei ola ayta ta
talenta poy h koinothta toy Linux mporei na apasxolhsei gia thn
epilysh kapoioy problhmatos. Polloi ligoi mporoun na antepejel8oyn
sto oikonomiko ejodo proslhchs to polu diakosiwn an8rwpwn, oswn
syneiseferan sto fetchmail!
Isws, sto telos, h koyltoura toy anoixtou kwdika 8riambeusei oxi
epeidh h synergasia einai h8ikws or8h h h "fragh" toy logismikou einai
h8ikws lan8asmenh (ypo8etw oti 8a symfwneite me to teleytaio), alla
apla epeidh o kosmos toy kleistou kwdika den mporei na kerdisei enan
ejeliktiko agwna me tis koinothtes anoixtou kwdika, polu perissotero
ki empeiro xrono gia thn epilysh enos problhmatos.
11. Eyxaristies.
Ayto to keimeno beltiw8hke syzhtwntas to me megalo ari8mo an8rwpwn,
poy boh8hsan sthn aposafhnish toy. Eyxaristw idiaiterws ton Jeff
Dutky <
[email protected]> poy proteine ton kanona "to jeka8arisma
einai parallhlhsimo" kai boh8hse sthn epejergasia ths analyshs poy
ejagetai apo ayton. Epishs, eyxaristw thn Nancy
Lebovitz<
[email protected]> gia thn protash ths oti mimoumai
ton Weinberg para8etontas ton Kropotkin. Ojunoys kritikh askhsan h
Joan Eslinger <
[email protected]> kai h Marty Franz
<
[email protected]> ths listas General Technics. O Paul Eggert
<
[email protected]> parathrhse thn sugkroysh metaju toy anoixtou kai
toy GPL monteloy. Eimai eygnwmwn sta melh toy PLUG, omada Xrhstwn
Linux ths Filadelfeia, poy prwtoi diabasan thn prwth dhmosieysh toy
parontos. Telos, ta sxolia toy Linus Torvalds me boh8hsan polu kai me
en8arryne h prwimh yposthrijh toy.
12. Gia Peraiterw Meleth.
Pare8esa polla tmhmata toy biblioy "The Mythical Man-Month", toy
Frederick P. Brooks. 8erma proteinw thn ekdosh ths 25 epeteioy apo
tis ekdoseis Addison-Wesley (ISBN 0-201-83595-9) sthn opoia exei
proste8ei to keimeno toy 1986 "No Silver Bullet".
H ekdosh einai employtismenh me mia anektimhth 20xronh anadromh, sthn
opoia o Brooks ey8ews paradexetai thn kritikh toy arxikou keimenoy to
opoio den anteje thn dokimasia toy xronoy. Diabasa gia prwth fora thn
anadromh meta thn oysiastikh suntajh aytou toy keimenoy kai ejeplaghn
otan diapistwsa oti o Brooks apedide praktikes se pazariwtiko styl
sthn Microsoft!
To "The Psychology of Computer Programming" toy Gerald M. Weinberg
eishgage thn mallon kakws ennooumenh antilhch toy "programmatismou
xwris egwismo". An kai den htan o an8rwpos poy 8a anagnwrize thn
mataiothta ths "arxhs ths entolhs", htan isws o prwtos poy anagnwrise
kai diafwnhse me ayto to shmeio, syndeontas to idiaitera me thn
anaptyjh logismikou.
O Richard P. Gabriel meletwntas thn koyltoura toy Unix sthn pro-Linux
epoxh, me apro8ymia diafwnouse me thn yperoxh enos prwtogonoy
pazariwtikoy styl sto keimeno toy "Lisp: Good News, Bad News, and How
To Win Big". An kai palaio apo merikes apoceis, ayto to dokimio
dikaiws ejymneitai apo toys opadous toy Lisp (metaju aytwn ki apo
emena). Enas allhlografos moy ypen8umise oti to kefalaio me titlo
"Worse Is Better" einai san problech gia to Linux. To keimeno
briskete sto Internet, <
http://www.naggum.no/worse-is-better.html>.
To biblio Peopleware: Productive Projects and Teams (New York; Dorset
House, 1987; ISBN 0-932633-05-6), twn De Marco kai Lister, biblio poy
den ektimatai opws toy analogei, to opoio me eyxaristhsh eida na to
para8etei sthn anadromh toy o Brooks. An kai liga ap' osa lene oi
syggrafeis toy einai efarmosima sto Linux h ston anoixto kwdika, h
ba8ia gnwsh toys gia tis anagkaies syn8hkes gia dhmioyrgikh doyleia
einai ojyderkhs ki ajizei gia ka8e enan poy prospa8ei na eisagei
kapoies ajies toy monteloy pazariou sto emporiko logismiko.
Telos, ofeilw na paradextw oti eixa onomasei ayto to keimeno sxedon "O
Ka8edrikos kai h Agora", opoy o teleytaios oros shmainei thn Ellhnikh
apodosh mias anoixths agoras h enos dhmosioy xwroy syneureshs. Oi
gonimes ergasies gia ta "agoraia systhmata" twn Marc Miller kai Eric
Drexler, perigrafontas tis emfanizomenes idiothtes twn agoraiwn
ypologistikwn systhmatwn me boh8hsan na proetoimastw na skeftw
jeka8ara gia analoga fainomena sthn koyltoura toy anoixtou kwdika toy
Linux, ta opoia diapistwsa pente xronia argotera. Ayta ta dokimia
briskontai sto Internet, <
http://www.agorics.com/agorpapers.html>.
13. Epilogos: H Netscape Agkaliazei to Pazari!
Einai parajeno na niw8eis oti boh8as na graftei istoria...
Stis 22 Ianoyarioy 1998, peripoy efta mhnes meta thn prwth dhmosieysh
aytou toy keimenoy, h Netscape Communications, Inc. ejhggeile thn
pro8esh thsna dhmosieusei ton kwdika toy Netscape Communicator
<
http://www.netscape.com/newsref/pr/newsrelease558.html>. Mexri thn
hmera ths ejaggelias den pisteya oti 8a ginotan kati tetoio.
O Eric Hahn, antiproedros kai Diey8ynths Texnologias ths Netscape moy
esteile, amesws meta, to ejhs mhnyma: "Sto onoma olwn ymwn sthn
Netscape, 8elw na sas eyxaristhsw poy mas boh8hsate na ftasoyme prwtoi
s' ayto to shmeio. Oi skeceis kai ta grapta sas hsan 8emeliwdhs
empneuseis gia thn apofash mas".
Thn epomenh ebdomada phga sthn Silicon Valley, meta apo prosklhsh ths
Netscape gia mia hmerida (stis 4 Febroyarioy 1998), mazi me koryfaia
stelexh kai texnikous. Sxediasame thn strathgikh ekdoshs toy kwdika
kai ths adeias kai epejergasthkame kapoia alla sxedia poy elpizoyme
oti telika 8a exoyn makropnoes kai 8etikes epiptwseis sthn koinothta
toy anoixtou kwdika. Einai polu nwris gia na mpw se leptomereies. Se
liges ebdomades 8a yparxoyn neotera.
H Netscape prokeitai na mas paraxwrhsei mias megalhs klimakas alh8inh
dokimasia toy pazariwtikoy monteloy ston emporiko kosmo. H koyltoura
toy anoixtou kwdika twra antimetwpizei ena kindyno: an to sxedio ths
Netscape apotuxei, h idea toy anoixtou kwdika 8a ypobibastei kai o
emporikos kosmos den 8a thn janaskeftei gia allh mia dekaetia.
Apo thn allh, ayto einai mia 8eamatikh eykairia. H arxikh antidrash
toy Xrhmatisthrioy htan sygkrathmena 8etikh. Dokimazomaste ki emeis,
epishs. An h Netscape kerdisei shmantiko meridio agoras apo ayth thn
kinhsh isws ekdhlw8ei mia ka8ysterhmenh epanastash sthn biomhxania
ypologistwn.
To epomeno etos 8a einai polu didaktiko ki endiaferon.