1. Bruce Evans personla profile: My story begins with a love of Knives at a very young age...
2. Wilson Bruce Evans (1824-1898), a leading black abolitionist and successful member of Oberlin's commercial and educational communities
3. Bruce Evans' Page: The Great Divide in Victoria is not a mountain range - it is between city and country...
4. "Arizona's Real Estate Solution": Bruce Evans - Associate Broker, Certified Relocation Specialist
5. GOOD LIFE NOW, Dr. Bruce Evans, Sexuality, books, publications, poems ...
6. Bruce Evans @ Hollywood.com. Bruce Evans news, Bruce Evans gossip ...
...
Poznamka o BitKeeperu svedci o tom, ze autor vubec nepochopil vyvojovy model, ktery BitKeeper (a dalsi _distribuovane_ SCM systemy jako treba GNU Arch) umoznuje. Ano, do _Linusova_ BK repository smi zasahovat pouze Linus sam. Ale pak taky kazdy dalsi vyvojar muze mit svoji repository, do ktere muze zasahovat take jen on sam. A je jeho veci (Linusovou stejne jako ostatnich), jake zmeny si do svych repository natahaji. A SCM system pak zajisti, aby pri preposilani zmen mezi jednotlivymi repositories nedochazelo k dvojitemu aplikovani teze zmeny, pokud se ta zmena do cilove repository uz dostala drive jinymi kanaly.
Pri pouziti CVS nezbude, nez na kazdy trochu vetsi subprojekt udelat vetev a pak ji slozite mergovat. Krome toho potrebujete explicitni pristupova prava do te centralni repository. Navic vas to porad omezuje v tom, abyste do CVS necommitovali jednotlive logicke zmeny, ale az praci za jeden nebo vic dni (aby ostatni vyvojari nevideli polofunkcni stav). Cimz ztracite logy a ztracite provazanost jednotlivych zmen (takze pak nekdo jiny kdo sleduje vasi repository nemuze do sve repository mergovat jen nektere veci, ale vidi vzdy az vasi celodenni praci).
Rozdil mezi vyvojem kernelu Linuxu a vyvojem *BSD (nebo obecne projektu pouzivajicich CVS) je ten, ze Linux je vyvijeny _distribuovane_, zatimco *BSD centralizovane.
Centralizovane CVS vam umoznuje neco si soukrome vyvijet, a pritom sledovat i hlavni vyvoj. Distribuovany system vam dovoli neco si _verejne_ vyvijet, sledovat hlavni vyvoj, a sledovat i to, co si _verejne_ vyviji dalsi uzivatele, aniz by k tomu potrebovali nejaka specialni prava do nejake centralni repository.
Pokud chcete namitnout, ze takove distribuovane vymyslenosti nepotrebujete, pak mate pravdu, distribuovany vyvoj je vyrazne lepsi hlavne u _velikych_ projektu. Docela dobry citat od autora BK, Larryho McVoye: (priblizne, zpameti) "Pokud nechapete, proc potrebujete distribuovany vyvoj, pak ho s velkou pravdepodobnosti nepotrebujete. Ale nesnazte se presvedcovat ty, kteri vedi, jake vyhody distribuovany vyvoj prinasi".
-Yenya
chapu vyhody distribuovaneho vyvoje (bk) ale timco jsem napsal jsem chtel rict ze v pripade ze se linus zblazni pak pujde linux do kytek. fbsd ne... to ze se muzou verze mergovat je fakt... slo mi o pocet commiteru kteri muzou ovlivnovat system - tj. napr. backoutovat zmeny atp.
Pokud by se Linus zblaznil, nic zvlastniho se nestane. Pokud bude nekdo dostatecne dobre ridit svuj vyvoj, stane se jeho vetev tou hlavni (ostatne stabilni vetve stejne ridi jini lide nez Linus a distributori si taky udrzuji dohled nad tim, co maji v distribuci za jadro). O takoveto krizove situaci to neni (to bych zrovna tak mohl namitat ze *BSD bude mit problem, pokud jim FBI zabavi primarni CVS server, nehlede na bezpecnostni aspekty CVS, ktere vyplynuly na povrch v posledni dobe).
V Linuxu muze "ovlivnovat system" kdokoli kdo umi programovat. Samozrejme pomuze pokud se za konkretni zmenu postavi nejaka znama osobnost, ale to je vedlejsi.
I nadale tvrdim, ze *BSD maji obecne daleko vic centralizovany (a tim uzavreny) vyvoj nez Linux.
-Yenya
Distribuovany release se dela proste tak, ze pokud si myslite, ze je Vase prace dostatecne kompletni, zabalite ji a vystavite na FTP (treba ftp://ftp.kernel.org/pub/linux/kernel/people/<vase_jmeno>)
nebo jinak reknete, jak tuhle konkretni verzi muzou ostatni uzivatele ziskat.
Kdyz Linus rekne ne, pochopitelne se do Linusova jadra nedostanete. Kdyz rekne Andrew Morton ne, pochopitelne se do jadra -mm nedostanete. atd.
Vyvoj Linuxu a BSD podle meho neni vubec podobny - ostatne clanek to i popisuje. V Linuxu existuji docela velke projekty (devfs, alsa, ucLinux, atd.) ktere dlouhe roky existovaly samostatne proste proto, ze svym uzivatelum vyhovovaly, a nebyla infrastruktura (nebo i vule ji delat) pro to, aby jejich upravy v centralni casti jadra nemely negativni vliv na "mainstream" uzivatele.
V *BSD se dela "profesionalni" release engineering,
Linux si na nic takoveho nesnazi hrat - je-li treba neco opravit, opravi se to. Pokud sledujete vyvoj jadra Linuxu, tak ona "stabilni" vetev je ciste jen o tom, aby tohle zacali pouzivat uzivatele a tim se zvysila pravdepodobnost zachyceni chyb. Skutecny code freeze je dlouho pred release, ale na druhe strane nektere zmeny se delaji i po release v prubehu cyklu zivota stabilni vetve.
Nekomu se muze libit ta striktnost pravidel v *BSD, nekomu zase to, ze se Linux nenecha takovymi pravidly svazovat, je-li treba neco zmenit.
-Yenya
Podobnost vyvoje vidim v tom, ze mate u Linuxu i FreeBSD jako vyvojar dve moznost:
a) vystavit nekde na sve strance patche (v Linuxu devfs, ve FreeBSD ALTQ, atd.)
b) nebo presvedcit nekoho, kdo to protlaci do oficialniho releasu (RELEASE verze u FreeBSD nebo Linusove release u Linuxu)
Kde je ten rozdil pro vyvojare? Pouze v pripade b) to u FreeBSD znamena presvedcit tym (tj. majoritu) a u Linuxu Linuse. Oboje ma svoje vyhody i nevyhody. Ja uprednostnuji rozhodnuti tymu pred absolutnim vlivem jedince. Kazdy at si vybere, co je mu blizsi.
Rikate sledovat vyvoj jadra. Vidite. Jsem presvedcen, ze tim mate na mysli vyvoj Linusova jadra, nikoli (abstraktniho) "distribuovaneho" jadra se vsemi jeho zdroji, coz neni ani mozne. Jde o centralizovany release zrovna jako u FreeBSD. Jinak to ani neni pochopitelne mozne. Jen ten centralni release se u FreeBSD dela proste jinak nez u Linuxu. A o tom ten clanek byl.
Ano, takto pro vyvojare je to podobne. Jen s tim rozdilem, ze pri SCM zalozenem na changesetech muzete sledovat praci vice nezavislych vyvojaru. Pod pojmem "sledovani vyvoje jadra" nemyslim nic abstraktniho - myslim tim sledovani vyvoje u konkretniho vyvojare (ano, muze to byt Linus nebo akpm nebo kdokoli dalsi).
-Yenya
Nevite nekdo ktera ceska firma zasila FreeBSD packages na CD? Myslim ty oficialni z ftp. Mam instalacni CD na kterem je uplne prd a potreboval bych to trochu rozjet. Bohuzel nemam moznost tahat z netu tolik dat. Proboha proc tam neni ani midnight commander to nepochopim. Ale jinak je to fajn system. Diky za odpoved
Midnight Commander jsem nevidel zatim v zadnem "oficialnim" *BSD - v nejake konferenci to kdosi vysvetloval 2ma duvody - 1. MC je "big memory eater" (:-)) a 2. "a lot of security holes". Ale chapu stesky lidi, kteri jsou bez nej podobne jako ja "bez ruky" (jojo, ti preuceni DOSaci :-)).
FreeBSD (nejaka "CURRENT" verze) vysla jednom z cdckovych casaku od SoftwareMedia - tam bylo velke mnozstvi baliku, m.j. i MC. V OpenBSD neni vubec, tam jsem si ho dycynky kompiloval sam (dycynky, protoze verze z 3.0 v 3.3 uz nejela).
Toto je troska rozdiel, pretoze FreeBSD ma na instalacnom CD aj baliky (niektore, vsetky sa nevojdu a ani nesmu kvoli licenciam), NetBSD tusim nie (ale je par CD s balikmi pre i386). Ale ak sa nemylim, na zakladnom instalacnom CD FBSD mc naozaj nie je. (Hm, i tak z CD instalujem malokedy...)
Na druhej strane _vzdy_ je to balik, nie sucast zakladneho systemu.
""1. MC je "big memory eater" (:-))"
aha a proto je tam treba KDE nebo GNOME"
z toho důvodu je u citace smajlík :-)
"paneboze to jsou volove"
Taky se divím - netvrdím, že MC je zcela bezchybný a chybuvzdorný soft, ale co do frekvence chyb se IMHO nevymyká běžnému Open Source průměru - když se člověk podívá na jiné programy, které jsou součástí packages u různých *BSD (zejména u OpenBSD, které má bezpečnost jako prioritu) - Apache, Bind, Sendmail, ... kroutí hlavou podobně jako vy.
Nicméně je asi pravda, že v základním systému tento nástroj nemá co dělat, podobně jako třeba chybí v základním systému Debianu. V případě FreeBSD máte alespoň výhodu, že si můžete balíček najít na Internetu a nainstalovat nějakým tím pkg-add (sorry, nepamatuju si to přesně) - asi ještě budete potřebovat pár knihoven, ale rozhodně to nebudou gigabajty dat. Nebo zkompilovat - k tomu ani ports nepotřebujete, i když přijdete o různé výhody, které vám ports nabízejí.
Ovšem pokud někdo udělá distribuci FreeBSD na 2 CD, trochu se divím, že zrovna tento balík není zařazen...
Předem podotýkám, že toto nepíšu z nějaké zahořklosti, ale když před 15 lety nic jiného než komerční BSD nebylo, tak jsem vyvíjel SW i na BSD (aspon do té doby, než ke mě přišel v roce 1992 linux). Všem 3 současným BSD klonům vytýkám následující "drobnosti", které mají společný původ právě v centrálním vývoji.
- vývoj řízený core teamem je "příliš stabilní" (rozuměj ustrnulý) a nepřináší sice překvapení jako třeba ladění problémů s VM i ve stabilních releasech, ale konkrétně FreeBSD mě před pár lety dost zklamalo během vyhodnocování vhodného OS pro jeden projekt pro jeho nízké výkonové parametry kde téměř všechna IPC byla na polovičních hodnotách oproti Linuxu (2.2.x) a zaostávala dokonce i za komerčním Solarisem x86 (tehdy čerstvé r.7).
- "open source" vývoj má právě jako vedlejší efekt tu skutečnost, že se ověří napřed spousta řešení, než se vybere to, které je nejlepší. Toto není schopen suplovat žádný core team, i kdyby byl složen z těch nejskušenějších vývojářů.
- NEotevřený model vývoje OS je černou můrou vývojáře SW. Vývoj libc současně s kernelem vede k tomu, že specifikace od různých interfejsů jsou těžko dostupné a méně exaktní právě v detailech.
- Disribuce kernelu, libc a utilit je tak svázána do jednotlivých releases, základní systém není rozčleněn do menších přehlednějších balíčků a dostupnost zdrojových kódů je potlačena natolik, že z BSD nejde udělat nijak jednoduše embeded instalaci.
....závěr článku mě dostal na kolena. Nemohl jsem si nevzpomnět na svědky jehovovy kde centrála bdí nad jednotným výkladem bible. Toto paradigma vyhovuje většinou jen narušeným jedincům, ale mě spíš děsí. Mockrát předem děkuji, ale tohle raději NE!!!
ad strnulost: ktery open source mel jako prvni M:N threading? ktery mel jaily? a zrovna VM FreeBSD je obecne povazovan za extremne kvalitni a vykony. je fakt ze neni zoptimalizovan na mikrobenchmarky jako ten linuxovy, to je fakt
ad open-source: inteligentni to delaji tak ze nejdrive napisou vedeckou zpravu, tu vyhodnoti komunita a pokud je to ok, tak se to implementuje (i FreeBSD ma vedlejsi projekty)
ad embeded: tohle je jeden z primarnich trhu - viz. napriklad Wasabi, ruzne instalace netbsd atp.
ad zaver: napsal jsem neco co by nebyla pravda? (to s tim VM je pravda a to ostatni jsou me nazory)