Velké programátoři najít jednoduchá řešení složitých problémů
Po dlouhé době jsem mohl najít zdroj pro následující citát -
Junior programátor vytvářet jednoduché řešení jednoduchých problémů. Senior programátoři vytvořit komplexní řešení složitých problémů. Velké programátoři najít jednoduchá řešení složitých problémů.
Je to z esej s názvem Beautiful Software Charles Connell.
Dalším favoritem je jeden z mých Zen Pythonu --
Krásné je lepší než ošklivý.
Explicitní je lepší než implicitní.
Jednoduché je lepší než složitá.
Komplex je lepší než složité.
Byt je lepší než vnořený.
Řídký je lepší než hustý.
Čitelnost se počítá.
Speciální případy nejsou dost speciální porušit pravidla.
Ačkoliv praktičnost beats čistotu.
Chyby by nikdy neměly projít potichu.
Není-li výslovně umlčen.
Tváří v tvář dvojznačnosti, odmítnout pokušení hádat.
Tam by mělo být jedno-a pokud možno pouze jeden-zřejmý způsob, jak to udělat.
I když to tak nemusí být zřejmé na první pokud nejste holandský.
Nyní je lepší než nikdy.
Ačkoliv nikdy je často lepší než pravé * * teď.
Je-li implementace je těžké vysvětlit, je to špatný nápad.
Je-li implementace je snadné vysvětlit, může to být dobrý nápad.
Jmenné prostory jsou jedním troubit skvělý nápad - pojďme udělat více takových!
-------------------------
a pak je tu klasická Tao programování
--
úvěrů jako na odkazovaných stránkách -
Přeložila Geoffrey James
Transkripce vévodou Hillard
Přenášené Anupam Trivedi, Sajitha Tampi a Meghshyam Jagannath
Re-html-alien a editoval Kragen Sittler
--
Kniha 1 - Silent Void
Tak mluvil hlavní programátor:
"Když jste se zmocnit jeho kód chyby z pasti rámem,
Bude pro vás čas odejít. "1,1
Něco tajemného je tvořeno, narozený v tichém neplatné. Čekání sám a
nehybná, je to najednou, a stále ještě v neustálém pohybu. Je zdrojem
všech programů. Neznám jeho jméno, tak budu volat to Tao
Programování.V případě, že Tao je skvělá, pak operační systém, je skvělá. Pokud jsou provozní
Systém je skvělá, pak překladač je skvělá. Je-li kompilátor je skvělá,
pak aplikace je skvělý. Uživatel je potěšen, a existuje
harmonie ve světě.Tao programování toků daleko a vrátí se na vítr ranní.
1,2
Tao porodila strojového jazyka. Strojový jazyk porodila
assembler.Assembleru porodila překladač. Teď je deset tisíc
jazyků.Každý jazyk má svůj účel, ale pokorným. Každý jazyk vyjadřuje
Jin a Jang softwaru. Každý jazyk má své místo v Tao.Ale nemají program, COBOL, pokud můžete vyhnout.
1,3
Na počátku bylo Tao. Tao zrod k prostoru a času.
Proto prostoru a času jsou Jin a Jang programování.Programátoři, že nechápete Tao je vždy málo času
a prostor pro své programy. Programátoři pochopit, že vždy Tao
mít dostatek času a prostoru k dosažení jejich cílů.Jak by to mohlo být jinak?
1,4
Moudrý programátor je řečeno o Tao a takto to. Průměrná
Programátor je řečeno o Tao a hledá ji. Bláznivé programátor
se vypráví o Tao a směje se na něj.Kdyby to nebylo k smíchu, neexistoval by žádný Tao.
Nejvyšší zvuky jsou nejvíce slyšet.
Do budoucna je cesta k ústupu.
Velký talent se projevuje v pozdním věku.
Dokonce i perfektní program, má ještě chyby.-------------------------
Kniha 2 - Staří mistři
Tak mluvil hlavní programátor:
"Po třech dnech bez programování, život se stává smysl."
2,1
Programátoři staré bylo tajemné a hluboké. Nemůžeme pochopit
jejich myšlenky, takže všechno, co děláme, je popsat jejich vzhled.Vědomi, jako liška přes vodu. Alert, jako obecné na
bojišti. Druhu, jako hostitelka pozdrav její hosté. Jednoduché, stejně jako
uncarved bloky ze dřeva. Neprůhledné, jako černé bazény v temné jeskyně.Kdo může říct tajemství svého srdce a mysl?
Odpověď existuje pouze v Tao.
2,2
Grand Master Turing jednou nenapadlo, že to byl stroj. Když se probudil, že
zvolal:"Nevím, jestli jsem Turing sním, že jsem stroj, nebo
Stroj sen, že jsem Turing! "2,3
Programátor z velké počítačové společnosti šel do softwaru
konferenci a pak se vrátil k zprávu jeho manažer a řekl: "Jaké
programátorů pracují pro jiné společnosti? Oni chovali špatně a byli
lhostejný k vystoupení. Jejich vlasy byly dlouhé a neučesané a jejich
oděvy byly vrásčitá a stará. Oni havarovali naši pohostinnost apartmá a oni
z hrubé zvuky při své prezentaci. "Manažer řekl: "Měl jsem nikdy tě poslal do konference. Tamti
programátoři žijí mimo fyzický svět. Domnívají se, život absurdní,
náhodná shoda okolností. Oni přicházejí a odcházejí, aniž by věděl, omezení.
Bez péče, žijí jen pro své programy. Proč by měli trápit
se společenské konvence?"Oni žijí v Tao."
2,4
Nováček zeptal Mistra: "Tady je programátor, který nikdy vzorů,
dokumenty nebo zkoušky jeho programy. Přesto všichni, kdo ho znají ho považují za jeden z
nejlepší programátoři na světě. Proč tomu tak je? "Mistr odpovídá: "To programátor zvládl Tao. Odešel
za nutné pro design, nemá se zlobit, když systém
pády, ale přijímá vesmír bez obav. Odešel za
nezbytné dokumentace, on už zajímá, jestli někdo jiný vidí jeho kód.
Odešel za zkoušení, každý ze svých programů, jsou perfektní
sami v sobě, klidný a elegantní, jejich účel sebe-evidentní. Amen,
který uzavřel tajemství Tao. "-------------------------
Kniha 3 - Design
Tak mluvil hlavní programátor:
"Když se program testuje, je příliš pozdě na to, aby design
změny. "3,1
Byla jednou muž, který šel ukázat počítače obchodu. Každý den, když
vstoupil, muž řekl stráž u dveří:"Jsem velký zloděj, známý pro své činy krádeže. Být
varována, se pro tento veletrhu neunikne unplundered. "Tento projev značně narušený strážný, protože tam byly miliony
dolarů, počítačové vybavení uvnitř, a tak se člověk pozorně sledoval. Ale
muž putoval jen z kabiny do kabiny, hučení tiše.Když muž odešel, stráž ho vzal stranou a hledal jeho oblečení, ale
nic nebylo k nalezení.Na další den veletrhu, muž vrátil a pokáral stráž
říká: "Utekl jsem s velkou kořist včera, ale dnes bude ještě
lepší. "Takže stráž ho sledoval stále více, ale marně.Na poslední den veletrhu, může strážný omezit jeho zvědavost
už ne. "Pane Thief," řekl, "jsem tak zmatený, já nemohu žít v
klid. Pouč mě, prosím. Co je to, že jste ukradl? "Muž se usmál. "Jsem vykrádá nápady," řekl.
3,2
Byla jednou jedna hlavní programátor, který napsal nestrukturované programy.
nováček programátor, snaží se napodobit ho, také začal psát
nestrukturované programy. Když se nováček požádal velitel hodnotit jeho
pokroku, velitel kritizoval ho za psaní nestrukturované programy,
řka: "Co je vhodné pro magisterský není vhodné pro
nováček. Musíte pochopit, Tao před přesahuje strukturu. "3,3
Byl jednou jeden programátor, který byl připojen k soudu válečník
Wu. Válečník programátor zeptal: "Který je jednodušší design:
účetní balík, nebo operační systém? ""Operační systém," odvětil programátor.
Válečník pronesl výkřik nedůvěru. "Určitě účetnictví
balíčku je triviální vedle složitost operačního systému, "řekl
řečeno."Není to tak," řekl programátor, "při přípravě účetní balík,
programátor funguje jako prostředník mezi lidmi s různými
myšlenky: jak se musí pracovat, jak se její zprávy musí být, a jak to musí být
v souladu s daňovými zákony. Naproti tomu je operační systém není omezen
vnějším vzhledu. Při návrhu operačního systému, programátor
směřuje nejjednodušší harmonii mezi stroji a nápady. To je důvod, proč
operační systém je jednodušší design. "Válečník Wu přikývl a usmál se. "To je všechno dobré a dobře, ale
který je jednodušší ladění? "Programátor neodpověděl.
3,4
Manažer šel do hlavní programátor a ukázala mu požadavky
dokument pro novou aplikaci. Manažer požádal velitel: "Jak dlouho
Bude trvat, než se návrh tohoto systému, když přiřadit pěti programátorů na to? ""Bude to trvat jeden rok," řekl velitel okamžitě.
"Ale my potřebujeme tento systém okamžitě, nebo ještě dříve! Jak dlouho to bude
podniknout, pokud bych přiřadit deset programátorů na to? "Hlavní programátor se zamračil. "V takovém případě bude trvat dva roky."
"A co kdybych přiřadit sto programátorů na to?"
Velitel programátor pokrčil rameny. "Pak se konstrukce nebude nikdy
dokončena, "řekl.-------------------------
Kniha 4 - kódování
Tak mluvil hlavní programátor:
"Dobře-psaný program je vlastní nebi špatně-psaný program je
vlastní peklo. "4,1
Program by měl být lehký a hbitý, jeho podprogramů připojen jako
perlový náhrdelník. Duchem a záměrem programu by měly být zachovány
po celou dobu. Mělo by být ani příliš malé nebo příliš mnoho, ani
netřeba smyčky, ani k ničemu proměnných, ani nedostatek, ani struktura
zdrcující tuhost.Program by se měl řídit "zákon o nejméně úžasu '. Co je to právo?
Je to prostě, že program by měl vždy reagovat na uživatele ve způsobu, jakým
udivuje, že ho minimálně.Program, bez ohledu na to, jak složitý, by měla fungovat jako jeden celek. Program
by měly být řízeny logikou spíše než ve vnějším vzhledu.Pokud program selže v těchto požadavků, bude ve stavu
nepořádek a zmatek. Jedinou cestou k nápravě je přepsat
program.4,2
Novice asked velitel: "Mám program, který běží a někdy
občas přeruší. Postupoval jsem přesně podle pravidel programování, ale já jsem
zcela bezradný. Jaký je důvod? "Velitel odpověděl: "Vy jste zmatený, protože nerozumíte Tao.
Jen blázen očekává, že racionální chování od svých bližních. Proč jste
očekávat, že od stroje, který lidé mají početně? Počítače simulovat
determinismus, jen Tao je perfektní."Pravidla pro plánování jsou přechodné, jen Tao je věčné. Proto
je třeba uvažovat o Tao dříve, než obdržíte osvícení. ""Ale jak budu vědět, kdy jsem dostal osvícení?" Zeptal se
nováček."Váš program pak bude fungovat správně," odpověděl mistr.
4,3
Pán byl vysvětlující povahu Tao k jednomu z jeho nováčky. "The
Tao je zakotvena ve všech softwaru - bez ohledu na to, jak bezvýznamné, "řekl
pána."Je v Tao-držel ruce kalkulačku?" Zeptal se nováček.
"Je to," zněla odpověď.
"Je Tao ve videohře?" Pokračoval nováček.
"Je to i ve videohře," řekl velitel.
"A je Tao v DOS pro osobní počítač?"
Velitel zakašlal a posunula své pozice mírně. "Poučení je nad
dnes, "řekl.4,4
Prince Wang programátor byl kódování softwaru. Jeho prsty tančily po
klávesnice. Program sestavují bez chybové hlášení a program
utíkali jako mírný vítr."Výborně!" Kníže zvolal: "Vaše metoda je bezchybný!"
"Technika?" Řekl programátor odbočka ze svého terminálu, "Co jsem
sledovat je Tao - za všechny techniky! Když jsem poprvé začal program, který jsem
by viděl před sebou celý problém v jedné hmotnosti. Po třech letech jsem žádné
už viděl hmotnosti. Místo toho jsem použil podprogramy. Ale teď vidím, vůbec nic.
Moje celá bytost existuje v beztvaré neplatné. Moje smysly jsou nečinní. Můj duch,
svobodně pracovat bez plánu, vyplývá, vlastní instinkt. Stručně řečeno, můj program
píše sám. Pravda, někdy je obtížné problémy. Vidím je
jdu, jsem zpomalit, dívám se v duchu. Pak jsem změnit jediný řádek kódu
a potíže zmizí jako obláčky kouře volnoběhu. Pak jsem zkompilovat
program. Já sedět a nechat radost z práce vyplnit mé bytí. Zavřu
oči se na okamžik a pak se odhlaste. "Prince Wang řekl: "Kéž by všechny mé byli programátoři jako moudrý!"
-------------------------
Kniha 5 - Údržba
Tak mluvil hlavní programátor:
"I když je program, ale tři řádky dlouho, jednou to bude muset být
zachován. "5,1
I-použité dveřní nepotřebuje olej na pantech.
Swift-potok neroste stagnuje.
Ani zvuk, ani myšlenky mohou cestovat přes vakuum.
Software hnije, pokud nejsou používány.Jedná se o velké tajemství.
5,2
Vedoucí programátor zeptal, jak dlouho to bude trvat ho dokončit
program, na kterém pracoval. "Bude to hotové zítra, jen"
programátor ihned odpověděl."Myslím si, že jsou nereálné," řekl ředitel, "Upřímně řečeno, jak se
dlouho to bude trvat? "Programátor se na okamžik zamyslel. "Mám nějaké funkce, které bych chtěl
přidat. To bude trvat nejméně dva týdny, "řekl nakonec."I to je příliš očekávat," trval na tom, manažer: "Budu
splněnou, pokud stačí mi říct, kdy program je kompletní. "Programátor s tímto názorem souhlasí.
O několik let později, manažer odešel. Na cestě do svého odchodu do důchodu
oběd, objevil programátor, spal na jeho terminálu. Byl
programování celou noc.5,3
Nováček programátor byl kdysi přidělen kód jednoduchého finančního balíčku.
Začínajícího pracoval zuřivě po mnoho dní, ale když se jeho pán přezkoumána
jeho program, zjistil, že obsahuje obrazovku editor, sada
generalizovaná grafické rutiny, umělá inteligence rozhraní, ale
není sebemenší zmínka o něco financí.Když se velitel ptal se na to, že nováček se stal rozhořčeně. "Nebuďte
tak netrpělivý, "řekl," Dám do finanční věci nakonec. "5,4
Má dobrý zemědělec zanedbávání rostlinné mu zasadil?
Má dobrý učitel přehlédnout i ty pokorný student?
Má dobrý otec dovolit jediné dítě hladovět?
Má dobrý programátor odmítnout udržovat jeho kód?-------------------------
Kniha 6 - Management
Tak mluvil hlavní programátor:
"Ať se programátoři být mnoho a několik manažerů - pak vše bude
produktivní. "6,1
Když manažeři mají nekonečné schůze, programátoři psát hry. Kdy
účetní mluvit o čtvrtletních zisků, vývoj rozpočtu se chystá
být odříznuty. Když starších vědců mluví modrá obloha, mraky jsou asi valit
v.Skutečně, to není Tao programování.
Když manažeři závazky, jsou ignorovány herní programy. Kdy
účetní, aby dlouho-rozsah plány, harmonii a řádu se však brzy
obnovena. Když starších vědců řešit problémy na straně
problém bude brzy vyřešen.Skutečně, to je Tao programování.
6,2
Proč jsou programátoři nejsou-produktivní?
Proto, že jejich čas se promrhá v průběhu jednání.Proč jsou programátoři vzpurný?
Proto, že se střetává příliš mnoho.Proč jsou programátoři odstupující jeden po druhém?
Protože oni jsou vyhořel.Pracovaly pro špatný management, oni už ne hodnotu jejich práce.
6,3
Správce se chystá být vyhozen, ale programátor, který pracoval pro něj
vynalezl nový program, který se stal populární a dobře prodává. V důsledku toho, že
Správce udržel jeho práci.Manažer se snažil dát programátor bonus, ale programátor
odmítl se slovy: "Napsal jsem program, protože jsem myslel, že to byl
zajímavý koncept, a tak očekávám, že žádnou odměnu. "Manažer na jednání tohoto poznamenal: "Tento programátor, ale drží
Postavení malých úcty, chápe i řádné povinnost
zaměstnance. Pojďme podpořit ho vysokého postavení v řízení
konzultant! "Ale když to řekl, programátor opět odmítl se slovy: "Já to existují
že mohu program. Kdybych byl povýšen, chtěl bych dělat nic jiného než odpad
každého času. Můžu jít? Mám program, který I'm working on. "6,4
Správce šel k jeho programátoři a řekl jim: "Pokud jde o vaši práci
doba: budete muset přijít v devět ráno a odejít
v pět hodin odpoledne. "Na to se všichni z nich se rozhněval a několik
rezignoval na místě.Takže manažer řekl: "Dobrá, v tom případě můžete nastavit vlastní
pracovní doba, jak dlouho budete dokončit své projekty podle plánu. "The
programátoři, teď spokojený, začal přijít v poledne a pracovat na malej
ranních hodin.-------------------------
Kniha 7 - Corporate moudrosti
Tak mluvil hlavní programátor:
"Můžete prokázat, program pro firemní výkonné, ale nemůžete
ho počítačově gramotný. "7,1
Nováček zeptal se velitel: "Na východě je velký strom-struktura
že lidé nazývají "Ústředí společnosti '. Je nafouklý z tvaru s
viceprezidenti a účetní. Vydává množství poznámky, z nichž každý
řka: "Jdi, tedy! ' nebo "Jdi, sem! ' a nikdo neví, co znamená. Každý
rok nová jména jsou vkládány do větve, ale bezvýsledně. Jak je možné
jako nepřirozený subjekt byl? "Velitel odpověděl: "Ty vnímání této obrovské struktury a jsou
narušené, že to nemá žádný racionální účel. Nemůžete vzít od pobavení
jeho nekonečné kroužení? Copak si klidný snadné programování
pod jeho ukrývání poboček? Proč jsi obtěžoval jeho
zbytečnost? "7,2
Na východě je žraloka, který je větší než všechny ostatní ryby. To
Změny v ptáků, jejichž křídla jsou jako mraky na obloze naplnění. Když toto
pták se pohybuje po zemi, přináší zprávy z firmy
Velitelství. Tato zpráva je kapek do prostřed programátorů,
jako racka, než učiní své ochranné známky, na pláži. Pak pták montuje na
a vítr, s modrou oblohou na jeho záda, se vrací domů.Pohledy nováček programátor v úžasu nad ptáka, protože chápe, že
ne. Průměrný programátor děsí příchod ptáka, protože se obává
jeho poselství. Velitel programátor pokračuje v práci na jeho terminálu, pro
neví, že ptáci přicházejí a odcházejí.7,3
The Magician ze slonovinové věže přinesl jeho nejnovější vynález pro
hlavní programátor zkoumat. Mág kolové velké černé krabice, do
velitel úřadu a zároveň velitele mlčky čekal."Jedná se o integrovaný, distribuovaný, general-purpose stanici," začal
kouzelník, "ergonomicky navržené s proprietární operační
systém, šesté generace jazyky a více nejmodernější uživatele
rozhraní. Trvalo mi asistenty několik set let, muž postavit.
Není to úžasné? "Velitel zvedl obočí nepatrně. "Je to opravdu úžasné," řekl
řečeno."Ústředí společnosti přikázal," pokračoval mág, "že
všichni použít tuto stanici jako platforma pro nové programy. Souhlasíte s tím,
na to? ""Jistě," odpověděl mistr, "budu mít přepraveno do
datových center okamžitě! "a kouzelník se vrátil do své věže, dobře
potěšen.O několik dní později, nováček putoval do kanceláře velitele
programátor a řekl: "Nemohu najít záznam pro můj nový program. Dělat
Víte, kde by to mohlo být? ""Ano," odpověděl mistr, "zápisů jsou naskládané na nástupišti v
datových center. "7,4
Pohyby hlavního programátora program od programu beze strachu. Ne
změny v řízení může poškodit jej. On nebude propuštěn, i když
Projekt je zrušen. Proč tomu tak je? Ten je plný Tao.-------------------------
Kniha 8 - Hardware a software
Tak mluvil hlavní programátor:
"Bez větru, tráva se nehýbe. Bez software, hardware
k ničemu. "8,1
Novice asked mistr: "vidím, že jeden počítač společnost je hodně
větší než všechny ostatní. Tyčí se nad svou soutěž jako obr mezi
trpaslíci. Některý z jejích divizí by mohlo zahrnovat veškeré činnosti. Proč je
to tak? "Velitel odpověděl: "Proč se ptáš na takové hloupé otázky? Tato společnost
Je velký, protože to je velký. Pokud to pouze tehdy, hardware, nikdo by koupit
to. Pokud to pouze tehdy, software, nikdo by ho používat. Pokud je zachována pouze tehdy,
systémů, by se lidé budou chovat jako sluha. Ale proto, že kombinuje všechny
z těchto věcí, lidé si myslí, že jeden z bohů! Tím, že se snaží
snažit, že zvítězí, bez námahy. "8,2
Velitel programátor prošel nováček programátor jeden den. "Master" poznamenal
nováček posedlost ruka-konat počítačové hry. "Promiňte,"
řekl, "může mi to zkoumat?"Začínajícího přišroubované do pozoru a podal zařízení k pánovi. "I
vidět, že zařízení, tvrdí, že tři úrovně hry: Easy, Medium, a
Tvrdý, "řekl velitel. "Ale každý takový přístroj má jinou úroveň
hra, kde se přístroj snaží se podmanit si lidskou, ani být dobyta
lidským. ""Modlete se, velký pán," prosil nováčků, "jak se dá najít tento
tajemné prostředí? "Velitel klesl přístroj na zem a rozdrtil jí pod nohama. A
najednou nováček byl osvícený.8,3
Byl jednou jeden programátor, který pracoval na mikroprocesory. "Podívejte se, jak
tak už jsem tady, "řekl programátor mainframe, který přišel na návštěvu,
"Mám svůj vlastní operační systém a ukládání souborů zařízení. Nemám na
sdílet své zdroje s kýmkoli. Tento software je self-konzistentní a
Easy-to-use. Proč jste se ukončit své současné práce se ke mně tady? "Mainframe programátor pak začal popisovat svůj systém, který svému příteli,
slovy: "mainframe sedí jako starověký mudrc meditace uprostřed
z datového centra. Jeho disky lhát end-to-end, jako velký oceán
stroje. Software je jako mnohostranný jako diamant, a jak spletité
jako pravěké džungle. Programy, každý jedinečný, pohybovat prostřednictvím systému
jako rychlý-plynoucí řeky. To je důvod, proč jsem rád, kde jsem. "Mikropočítač programátor, na sluchu to, zmlkl. Ale dvě
programátoři zůstali přáteli až do konce svých dnů.8,4
Hardware Software setkal na cestě k Changtse. Software, řekl: "Jste
Yin Yang a já. Pokud budeme cestovat spolu budeme stát se slavnými a získejte
obrovské sumy peněz. "A tak uvedeny společně, myšlení dobýt
celém světě.V současné době se setkali firmware, který byl oblečen v roztrhané hadry a svazuje
podél trnitou opíral o hůl. Firmware řekl jim: "Tao lži
mimo jin a jang. Je to klidná a tichá jako kaluž vody. Je to
nehledají slávu, tedy nikdo neví, jeho přítomnost. To si neklade za cíl
štěstí, protože je kompletní v sobě. Existuje mimo prostor a
čas. "Software a hardware, styděl, vrátila se do svých domovů.
-------------------------
Kniha 9 - Epilog
Tak mluvil hlavní programátor:
"Je na čase, abyste odešel."
-------------------------
Pokud se vám líbil tyto, můžete si přečíst také horší je lepší



































