Linux E X P R E S

Facebook

Rozhovor: Jindřich Nový

Jindřich Nový pracuje pro firmu Red Hat jako vývojář, má sídlo v Brně a stará se o mnoho RPM balíčků pro tuto distribuci.


Dobrý den, jak jste se vůbec dostal k práci pro Red Hat?

Díky tomu, že jsem byl tak trochu nadšenec a hledal práci, kde bych mohl pracovat na plný úvazek, pracovat na vývoji GNU/Linuxu a narazil jsem na firmu, která dostala zakázku od firmy Red Hat na sestavení vývojového týmu v Brně, takže jsem příliš dlouho neváhal. Byl jsem tak trochu pionýr, protože jsem byl prvním členem Red Hat týmu tady v Brně.

Co jste dělal před tím?

Vystudoval jsem Fyzikální inženýrství na FSI VUT a nyní dokončuji doktorské studium Matematiky na téže univerzitě. Dizertační práce se týká volume renderingu, obrazových filtrů a waveletových kompresních algoritmů.

Jak jste se dostal k Linuxu a programování?

Velmi brzy. Když mi bylo 12, naprosto jsem propadl programování v BASICu a vzápětí Assembleru na slovenském klonu ZX Spectra, který jsem si vyškemral od rodičů. Potom jsem na DDM ve Vyškově přičichnul k PC a Pascalu, který mi brzy přestal vyhovovat, takže jsem přešel na C. V té době jsem však jako student střední školy neměl peníze na koupi drahých komerčních kompilátorů, takže jsem začal hledat nějakou vhodnou alternativu.

Našel jsem DJGPP. S překvapením jsem zjistil, že je v mnoha směrech kvalitnější, i když je zadarmo. Proto jsem začal pátrat proč a zjistil jsem, že DJGPP je portem GNU/CC pod DOS. A GNU/CC je doma pod GNU/Linuxem, takže jsem si od kamaráda na univerzitě (zdravím Mirka Matouška) půjčil Red Hat Linux 7.3 a byla to láska na první pohled.

Co je náplní vaší práce?

Hlavní náplní jsou zmíněné balíčky, respektive příprava balíčků, které jsou součástí operačních systémů Red Hat, řešení chyb, které se v nich mohou vyskytnout a podílení se na vývoji těchto balíčků, i když nejsou vyvíjeny exkluzivně firmou Red Hat. V současné době pracuji např. na odstranění posledních chyb před vydáním Midnight Commanderu 4.6.1.

Programuje se v Linuxu dobře? Srovnejte to například s jinými systémy, pod kterými jste pracoval či pracujete.

Samozřejmě. Protože většina distribucí GNU/Linuxu obsahuje desítky nástrojů sloužících přímo programátorům nebo k ulehčení jejich práce. Pokud to srovnáme například s komerčními Unixy, se kterými jsem měl možnost pracovat, např. s Compaq Tru64 Unixem na platformě DEC Alpha nebo Irixem na SGI, jsou tyto Unixy poněkud chudší. Možná právě proto tyto firmy se teď otevírají nasazení GNU/Linuxu na těchto platformách. Z nekomerčních Unixů považuji za nejvhodnější k programování rodinu BSD, např. FreeBSD.

Jaké nástroje při práci používáte? Jste tím skalním příznivcem Emacsu, nebo snad používáte nový KDevelop 3.0?

Nepoužívám významně ani jeden z těchto nástrojů. Stačí mi pouze textový editor se zvýrazněním syntaxe a shell. KDevelop však přestal trpět dětskými nemocemi a vypadá to, že se z něho pomalu stává výkonné IDE, které může směle konkurovat svým komerčním ekvivalentům. KDevelop však není jediné „vizuální“ vývojové prostředí, které usnadní hlavně práci při vytváření aplikací s kvalitním GUI. Velmi dobré je například prostředí Anjuta, ve které jsem vytvářel několik GTK+/GNOME projektů a neměl jsem důvod přejít na KDevelop.

Spěje vývoj jádra podle vás tím správným směrem?

Doufám, že ano. I když Arjan van de Ven, náš správce kernelu, si na vývojářské diskusi pořád na něco stěžuje... Hlavně na kvalitu hardwarových ovladačů hardwaru poskytnutých jako jaderné moduly od různých firem.

Kolik má firma Red Hat vývojářů?

Náš tým, zodpovědný za základ operačního systému, má kolem 25 vývojářů, z toho 9 je tady v Brně v naší pobočce.

Jak probíhá vývoj, jak je možné všechno koordinovat takto na dálku? Nástroj diff bude zřejmě váš denní chleba.

Je to díky open-source modelu, kdy každý z vývojářů má přístup ke zdrojovým kódům všech balíčků, tedy nejen těch, o které se stará. Takže pokud změna v našem balíčku ovlivní jiný balíček, můžeme to sami opravit nebo podílet na vývoji balíčku, který nám „nepatří“. Koordinace je zajištěna použitím systému souběžné správy verzí (CVS). Máte pravdu, nástroje jako diff, gendiff a jejich kamarádi jsou nezbytností pro dělání záplat (patchů).

Popište vlajkové produkty firmy Red Hat.

Hlavním komerčním produktem jsou operační systémy Red Hat Enterprise Linux, které mají tři hlavní větve, AS – určené pro vytížené servery s podporou až 16procesorových systémů, ES – ideální pro provoz v síti, web, mail, desktopové aplikace s podporou dvouprocesorových systémů , WS – určený pro pracovní stanice, technické výpočty a programování s podporou až 2 CPU. Jako nejnovější přírůstek je Red Hat Desktop, který je, jak název napovídá, vhodný pro desktopové použití na jednoprocesorových systémech.

Co firma připravuje na zimu?

Horkou novinkou počátku zimy je samozřejmě Fedora Core 3, vydaná nedávno. V průběhu zimy se předpokládá vydání Red Hat Enterprise Linuxu 4.

Kolik má Fedora vlastně RPM balíčků a aktivních správců?

Víc než bychom si přáli. Konkrétně Fedora Core 3 má kolem tisíce zdrojových balíčků, ze kterých vznikne zhruba 1650 binárních RPM.Správců je odhadem kolem stovky.

Spravujete balíčků hned několik. Co to obnáší? Musíte mít speciální počítač na sestavování?

Samotné sestavování se děje v našem paralelním sestavovacím systému, který požadovaný balíček sestaví ze zdrojových kódů pro všechny podporované platformy. V případě úspěšného sestavení na všech platformách je tento balíček zahrnut do distribuce. Díky tomu, že sestavovací systém používá pracovní stanice různě po světě, není nutné, abych měl v kanceláři 7 různých pracovních stanic na různých platformách. Jelikož mám zaručen přístup na všechny sestavovací pracovní stanice v rámci Red Hatu, tak v případě chyby se na stanici, kde došlo k chybě, přes internet připojím, chybu spravím a může se pokračovat.

Binární RPM pak vytváří zmíněný paralelní sestavovací systém rozesláním zdrojových balíčků na volné pracovní stanice v rámci firmy a jejich „posbíráním“ v případě úspěchu. Takže není nutné, abych sestavoval binární RPM pro každou platformu zvlášť, což šetří čas. Zdroje a záplaty jsou odděleny od binárek.

Vyšla Fedora Core 3, co se vám na ní líbí nejvíc?

Jako vylepšení, které snad bude patrné hned po nainstalování, je, že se oproti předchozím verzím fedory znatelně zvýšila rychlost náběhu systému, což uživatele jistě potěší. Velký důraz byl kladen právě na zlepšení práce s fedorou pro „normálního“ uživatele, o čemž svědčí OpenOffice.org 1.1.2. Programátory dále potěší gcc 3.4.2. Z hlediska bezpečnosti SELinux.

Oblíbený editor?

mcedit, vim.

KDE, nebo GNOME?

GNOME

Aktuální distribuce a jádro na vaší pracovní stanici je které?

Fedora Core 3, "uname -r" říká, že Linux 2.6.9-1.667 s podporou symetrického multiprocessingu (smp).

Co vlastně dělá ten kousek kódu z jazyka C na vašich internetových stránkách?

To je úplný kód! I když má jenom 183 bajtů! Zkuste si ho zkompilovat. Vykreslí vám na obrazovku sierpiskeho kobereček. Používá pro to jednoduchý rekurzívní algoritmus a dynamickou alokaci paměti. Navíc programu můžete specifikovat na příkazové řádce, jaké rozměry má mít. Je to taková malá ukázka, čeho je jazyk C schopen, ale rozhodně bych nedoporučoval někomu takto programovat.

Za LinuxEXPRES se ptal Lukáš Zapletal

Diskuze (0) Nahoru