sobota 10. listopadu 2007

Měním operační systém

Asi dva měsíce mi leží na stole v nerozbalené krabici nový notebook. Uvedení do provozu jsem odkládal dílem kvůli času a dílem protože jsem čekal na vhodnou linuxovou distribuci (syndrom příliš nového hardwaru). Příští týden budu mít dovolenou a protože je tu Gutsy Gibbon (to není moje milenka, ale kódové označení Ubuntu 7.10), tak mi nic nebrání v migraci. Ač jsem čistokrevný Windows uživatel, rozhodl jse s konečnou platností přejít v práci na Linux a to přesto, že mi Windows plně vyhovuje.

Poznámka na okraj ohledně volby distribuce. Ubuntu jsem zvolil, protože mi přišlo jako začátečníkovi nejpřívětivější. Druhým důvodem byl fakt, že Ubuntu používá několik kolegů, takže mi mohou poradit. Moje důvody k opuštění Windows jsou směska ideologických, pocitových a jiných iracionálních důvodů. Ve zkratce:

  • V celé firmě je jako standard Windows. Moje osobní přesvědčení je vybočovat z řady pokud mohu a obohacuje mě to.
  • Je jen málo radostí, které geeka uspokojí více než hrátky s něčím tak komplexním jako je nepoznaný hardware/software. Linux je pro mě ideálním prostředkem pro rozšíření mikro i makro znalosti v oblastech mě mlhou obestřených.
  • Libí se mi design GNOME. K tomu musím připočíst compiz-fusion pro akcelerovaný 3D desktop, po kterém jsem vždycky slintal.

  • Všichni linuxáci mi tvrdí, že práce se souborovým systémem je daleko rychlejší.
  • Valná většina nástrojů, které používám pro svou práci, existuje i pro Linux. Nejsem tedy s Windows nijak zásadně spjatý. Osobně mám malinko obavy z toho, že mi bude chybět Total Commander a PsPad. V případě prvního mi snad stejný komfort poskytne Krusader a v případě druhého se nechám překvapit. O Firefoxu, Thunderbirdu, Eclipse či OpenOffice nemluvím, protože je již používám nyní.

Doufám, že tu za týden nebudu psát jako Lukáš Křečan na téma Jak jsem nepřešel na Linux. Pokud si chcete Ubuntu vyzkoušet bez nutnosti instalace, pak doporučuji live distribuci a nebo některý VMware image. Ja jsem našel jeden s Ubunut 7.10 a předinstalovanou Javou 6 a Eclipsem 3.3.

středa 7. listopadu 2007

Mikro a makro znalosti

Kdysi dávno jsem znal všechno. Dělal jsem dynamicky generované stránky pro webovou aplikaci. Můj svět byl ohraničen magickou kombinací XML, XSLT, HTML, JavaScript a CSS. Postupem času jsem přibalil Javu na straně serveru. Můj svět se stal trochu složitějším, ale pochopit, jak konvertovat číslo na řetězec, nebylo příliš náročným mentálním cvičením. Tak to šlo dál a dál. Dneska jsem jako architekt zodpovědný za infrastrukturu našeho produktu a můj svět se rozšířil o všechny ty J2EE technlogoie a buzzwordy.

Z hlavy se mi sice vykouřilo, jakým způsobem se zapisuje selektor v CSS pro třídu a identifikátor, ale vím, že něco takového existuje. Nevím přesně, jak se jmenuje thread safe implementace mapy s výkonostně optimalizovaným čtením, ale na požádání to mohu dohledat. Nikdy jsem nepracoval s EntityManagerem z JPA, ale vím, že koncepčně odpovídá Session z Hibernate, takže můžu komukoliv vysvětlit, jak se s ním pracuje. Takto bych mohl pokračovat dál, ale to není účelem.

Předchozími řádky jsem chtěl říci: "čím víc se toho dozvídám, tím méně toho vím". Případně: "čím toho víc vím, tím méně to znám do detailu". Z mikro znalostí, které jsem měl, již moc nezůstalo. Zato mám hromadu makro znalostí a ty mikro znalosti jsem schopen vstřebat. Jsem exot a nebo to máte stejné?

Volně navazující reakce:

pondělí 5. listopadu 2007

Spring != XML

Myslíte si, že Spring rovná se tuna XML? Pak máte poněkud zastaralé informace. Ostatně i v dřevních dobách tomu tak nebylo. Od verze 2.5, v těchto dnech je k dispozici RC1, přináší Spring podporu anotací, kterými lze řídit IoC kontejner. Právě k anotacím a obecně postoji ke konfiguraci Springu vyšly dva zajímavé články od Jurgena Hoellera a Roda Johnsona.

If you think that Spring = XML it's time to rethink. (It was never strictly accurate, in any case, as the Spring core container has always used its own Java metadata, and doesn't know about XML or any other representation.)

This brings us to an important philosophical principle: our mission with Spring is to provide the best component model for enterprise Java, setting the standard for flexibility to meet complex requirements, and providing a comprehensive solution to real-world problems. We don't believe that there is any one size fits all model for configuration, and we believe in accommodating choice, within our strong, extensible model.

O verzi 2.5 si můžete přečíst v článku Spring 2.5 - podpora anotací, testovací framework a další. V rámci našeho programu vzdělávání budu mít na téma Spring 2.5, a speciálně na anotace, prezentaci. Možná to vydá na i větší článek na blog...