Předvánoční letem netem

Zdá se, že můj zápisník se (krom toho, že do něj poslední dobou skoro nic nepíšu) pomalu mění na takový občasný mírně komentovaný odkazník – mé vlastní myšlenky se tu objevují stále řidčeji. Ne že bych snad intelektuálně zakrňoval, spíš mám čím dál tím méně času a také vůle své myšlenky uspořádávat do publikovatelné formy. Přeci jen, když člověk píše víceméně každý den zprávičky pro CZillu, práce s textem se jaksi nabaží do sytosti.

Možná je ta metamorfóza v odkazovník pro vás jakožto čtenáře dobrá – bavilo by vás vůbec číst zápisky s nadpisy jako "analogie porušování lidských zákonů s reorderingem instrukcí v moderních procesorech z hlediska dostupnosti informací"? (Nad tímhle jsem přemýšlel nedávno cestou ze školy a opravdu to dává smysl :-)

Nebudu to dále protahovat, tady je pár zajímavých odkazů, na které jsem narazil za poslední cca dva měsíce:

Eric Sink: My life as a Code Economist

Eric Sink tvrdí, že lidí se dělí na dvě skupiny:

  1. Ti, kteří vědí, že každá vývojářská firma vydává produkty se známými chybami
  2. Ti, kteří to nevědí.

Proč by měly být programy vydávány s chybami? Protože každou opravou existující chyby riskujete zanesení chyby nové. Eric v článku rozvádí, které chyby opravovat a které nikoliv, v závislosti na závažnosti chyby, frekvenci jejího výskytu, náročnosti opravy a riziku zanesení dalších chyb. Roli hraje i charakter trhu, pro který je vyvíjený produkt určen.

Suma sumárum, poučná lekce ze softwarového inženýrství a ekonomie v jednom.

Ivo Lukačovič: Seznam.cz koketuje s technologií PHP

Ivo Lukačovič před časem zvláštní formou rozhovoru sama se sebou lákal programátory do Seznamu. Budiž. Co mě na jeho mírně schizofrenním článku zaujalo, byla následující věta:

Z minulosti víme, že to, co dokáže lidi totálně demotivovat, je nejasné zadání, neustálé změny v zadání, či přeskupování priorit.

Vystihl to. Přesně. Jen by mě zajímalo, jestli se tím v Seznamu opravdu řídí, nebo je to jen PR...

Charles Petzold: Does Visual Studio Rot the Mind?

Titulek článku Cherlese Petzolda by se dal volně přeložit jako Vymývá vám Visual Stuido mozek?. Článek je o tom, jak jsme si my programátoři za poslední léta zvykli na vymoženosti pokročilých vývojových prostředí a jak to ovlivňuje (a omezuje!) naše myšlení.

Článek je plný konkrétních výhrad vůči Visual Studiu .NET 2005, ale minimálně jedna věc v něm je platná pro všechny pokročilejší prostředí – zánik programování "shora dolů".

Jak se učí snad na všech úvodních přednáškách programování, složitější úlohy je potřeba rozdělit do menších funkcí a tříd, které se pak vzájemně volají a spolupracují. Pokud je návrh kvalitní, tak budou většinou poskládány do úhledných vrstev. Otázka je, odkud začít implementaci – od nejsvrchnější vrstvy nebo odspodu? Debaty, co je lepší, se vedou už od počítačového pravěku.

Ve chvíli, kdy máte vývojové prostředí, které dynamicky parsuje zdrojový kód a upozorňuje na chyby už v průběhu psaní, začnou vás při programování znervózňovat uporoznění na nedefinované funkce a čistě psychologicky vás tak IDE přiměje je implementovat, čímž začnete páchat programování "zdola nahorů". Programovat shora dolů je najednou proti srsti.

Charles Petzold má v tomhle pravdu a pocítil jsem to nedávno taky při práci na našem školním softwarovém projektu. Poté co jsem upgradoval Eclipse na verzi 3.1 náhle IDE začalo můj rozpracovaný kód podtrhávat spoustou oranžových vlnek a já nemám klid, dokud je všechny nevymítím :-)

Michal A. Valášek:  ASP.NET 2.0: Nechejte maličkých přijíti ke mně…
Moc hezká a vystihující úvaha o tom, že Microsoft přes své propracované technologie určené pro velké podniky nemá co nabídnout malým vývojářům, což vede (mimo jiné) k úspěchu relativně jednoduché kombinace PHP+MySQL při tvorbě webů. S přehledem nejzajímavější česky psaný článek o programátorském světě za několik posledních měsíců.
flow|state
Weblog, který se mi natrvalo usídlil v RSS čtečce. Jeho autor, Jan Miksovsky (jméno zní podezřele česky), který byl dříve vedoucím designu UI Microsoft Money, se v něm rozepisuje o záludnostech tvorby dobrého uživatelského rozraní. Pokud to nevíte, tak Microsoft Money byl první produkt této firmy, ve kterém si designeři vyzkoušeli tvorbu inductive user interface, jehož stopy najdete dnes třeba ve složkách a různých konfiguračních nástrojích ve Windows XP.
Larry Osterman: Why is the DOS path character "\"?
Povídání o tom, proč má DOS a potažmo Windows jako oddělovač cesty znak "\" (zpětné lomítko) místo lomítka obyčejného. Stručně řečeno, protože normální lomítko se už používalo k vyznačování přepínačů jednotlivých příkazů. Článek k tomu dodává ještě několik dalších historických zajímavostí.
Paul Graham: Web 2.0
Přiznám se, že tento článek jsem četl už před pár týdny a nepamatuju si přesně, o čem byl. Nechce se mi ho teď celý číst znovu, ale vím jistě, že byl zajímavý – jinak bych si ho do záložek neuložil. Takže vy si ho určitě přečtěte :-)
sci.math FAQ: What is 00?
Malý bonus na závěr pro matfyzáky a jim podobné. Pokud jste stejně jako já v mládí dumali nad tím, proč je 00 neurčitý výraz a zda by neměl být spíš roven 0 nebo 1, najdete zde stručné vysvětlení, jak to s tímhle bodem nespojitosti funkce f(x,y) = xy vlastně je, proč bývá nedefinován, a nebo naopak definován jako 1.

A že jsou ty Vánoce, přidám ještě jeden tip: Máte-li v rodině dítko, které již v útlém věku jeví zájem o počítače a programování, zkuste mu nadělit hru c-jump. Jistě ho potěší a možná bude díky ní za chvíli chrlit céčkové konstrukce jako když bičem mrská :-)