Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!
Zadejte Vaši e-mailovou adresu:
Kamarád fotí rád?
Přihlas ho k odběru fotomagazínu!
Zadejte e-mailovou adresu kamaráda:
Začínáme s
Uživatelský pohled: Z Linuxu na Mac OS X
linux vs Mac OS X
20. ledna 2009, 00.00 | Po více než šesti letech s Linuxem na desktopu jsem si chtěl vyzkoušet něco jiného. Rozhodl
jsem se pro Macintosh. Tento článek je o začátcích používání tohoto stále populárnějšího
systému z pohledu vývojáře.
Musím říci, začátky byly trochu rozpačité. Ne zcela přesné bylo moje očekávání toho jak se se systémem pracuje, ale jinak byl přechod bezproblémový. Pro člověka, který je zvyklý řešit problémy linuxového světa, představuje Mac úplnou oázu. Možná podobnou té, do které směřuje firma Canonical, stojící za linuxovými distribucemi Ubuntu nebo Kubuntu. Samozřejmě, MacOS X (dále jen OSX) je dělaný tak, aby se dal intuitivně, snadno a jednoduše ovládat. Jistě, tyhle profláknuté termíny můžete slyšet na každém rohu, nicméně zde jsem poznal jejich opravdový význam. Prostředí, do kterého budete vtaženi, je úžasně komfortní. Dost těžko se tenhle pocit popisuje, ale Linux nebo MS Windows mi nyní připadají uživatelsky neohrabané. Ano, vše lze nakonfigurovat, ale musíte většinou zaplatit vcelku velkou mírou času, který do toho investujete. V OSX se hledí hlavně na uživatele, jejich typické operace a potřeby. To má samozřejmě své klady a zápory. K těm se dostanu později. Jinak je celé uživatelské prostředí promyšlené do ohromných detailů, které jsou šikovné, a jejichž taje lze objevovat ještě po letech.
Celkově vzato vytváří svět firmy Apple specifické prostředí, na které si člověk velmi rychle zvykne. Návraty k produktům z Redmondu jsou pak pro mne spojené s nelibými pocity. Jednotlivé prvky „Apple-ekosystému“ jsou vymyšleny pro opravdu rychlé a jednoduché nastavení. Jejich využití pro osobní účely, vývojářskou práci nebo design (foto, video editace, úprava hudby) je bezproblémové. S novým strojem zákazník obdrží kromě operačního systému i zdarma balík iLife pro práci s fotkami, zvukem, videem nebo DVD. Kromě kancelářského balíku tedy máte všechno. Z technického pohledu bylo pro mne důležité povědomí, že systém vychází z FreeBSD. Není to sice Linux, ale příkazová řádka s shellem tu je.
Negativní zkušenosti
Nejprve se podívejme na nepříjemnosti spojené s přechodem na Macintosh.
Pozor na správnou volbu souborového systému
Protože Unix je tradičně „case-sensitive“, zvolil jsem při instalaci souborový systém (file
system) citlivý na velká a malá písmena. V OSX se používá HFS+. Všechno fungovalo
normálně až do chvíle, kdy jsem se rozhodl nainstalovat Adobe InDesign nebo Photoshop.
V tom okamžiku instalátor odmítl software nainstalovat s hláškou o tom, že daný FS není
podporován.
Takže, pokud chcete používat programy od firmy Adobe, použijte při instalaci „necitlivý“ FS.
Proč tomu tak je? Nevím přesně, zřejmě se jedná o historickou záležitost. Teprve mnohem
později jsem totiž nalezl v dokumentaci větu, že za standardní FS se považuje právě ten
„necitlivý“. Je to divný standard. Abych ale nehanil jen Adobe, můžu uvést ještě jako příklad
balík Microsoft Office 2008 for Mac, který se sice nainstaluje v obou variantách, bohužel ale
vedle domovského adresáře /Users/malina, kam se nakopírují některá data, se ještě
vytvoří adresář /users/malina, kam se zapisuje například cache aj.
Trochu strpení, „Beach ball“ na scéně
V OSX se pro znázornění pracujícího systému nepoužívají přesýpací hodiny, nýbrž tzv.
„beach ball“. Děje se tak už od pradávna a jeho výskyt do značné míry souvisí s plánovačem
sytému. Není to tak tragické, jak by se mohlo podle jedné parodické reklamy firmy Microsoft
zdát, ale přesto. Občas se stane, že se „beach ball“ vyskytne z nejasného důvodu, v okamžik,
kdy systém, jak se zdá, není vůbec zaneprázdněn. Možná je tento neduh součástí dědictví
z FreeBSD, které tuto část systému poměrně nedávno inovovalo zcela novým plánovačem
ULE, přinášejícím mnohem lepší výkonnost a rychlejší odezvu systému. Možná, ale že OSX
používá jiný, upravený plánovač mikrojádra Mach. Ať už je tato skutečnost jakákoliv, je
pravděpodobné, že v následující verzi OSX („Sněžném Leopardu“) bude významně
vylepšené využití víceprocesorových systémů. Jednou možností je změna plánovače. Dalším
je přepsání vlastních programů s využitím šikovné knihovny, která využití více procesorů
výrazně zjednodušší. Momentálně se totiž může stát, že vidíte „beach ball“ i v případě, kdy
procesor nevykazuje téměř žádné vytížení. V budoucí verzi už doufejme uvidíme duhový
balónek jen ve výjimečných případech a vždy pouze na okamžik.
Komunita, zdroj pomoci
Rozdíl v komunitě uživatelů je markantní. V Linuxu je celá řada uživatelů, kteří rozumí
systému až po velmi nízkou úroveň, chápou velmi přesně, co systém provádí a jsou schopni
poradit. Takovýchto uživatelů není bohužel ve světě „sadařů“ příliš. Mám trochu pocit, že to
ani není ze strany Apple příliš podporováno. Nevím. To samozřejmě neznamená, že se
nenajdou jedinci, snažící se pomoci v nesnázích. To ne, jen mám pocit, že těch opravdu
znalých je trochu míň.
Nevypočitatelné chování v jablečném království
Chování firmy Apple se v některých případech blíží monarchovi, nebo chcete-li chování
Microsoftu před 10-ti lety. Z pohledu uživatele je někdy zatěžko některá rozhodnutí pochopit.
Jako příklad můžeme uvést následující. Proč nové stroje mají pouze lesklý display? Proč
z nich zmizelo rozhraní FireWire 400, či snad proč iPhone stále nemá GPS navigaci bez
nutnosti připojení k internetu?
Na druhé straně se zde jen těžko setkáme s nedodržováním nebo „vylepšováním“ standardů,
jak to rád provádí Microsoft. Apple si naštěstí nemůže dovolit nebýt interoperabilní.
S tradiční politikou Apple typu mlčeti zlato, se máme vždy na co těšit. O překvapení není
nouze. Pro obyvatele jablečného království jsou už tradičním kořením.
Neutrální novinky
Nyní trochu k tomu, co je pro začátečníka u OSX nové, překvapující a bez kontextu pozitiva
či negativa.
Utajená konfigurace
I když se to na první pohled nezdá, je nastavení uživatelského prostředí mnohem více
konfigurovatelné, než je oficiálně systémem umožněno. Důvodem je zřejmě snaha o
zjednodušení. Uživateli zůstavají skryty možnosti, které nevyužije. Souvisí to s jedním z
velkých rozdílů oproti jiným unixovým systémům nebo Linuxu. Tím rozdílem je formát
konfiguračních souborů. V OSX se používá XML, formálně kontrolované dle DTD. To se
týká jak nastavení jednotlivých programů, tak i konfigurace systému jako takového. V XML
souborech je skryta celá řada vlastností, někdy nepříliš dobře dokumentovaných. Výsledkem
je fakt, že existuje kvantum nástrojů (ať už zadarmo nebo za peníze), umožňujících dodatečně
nastavovat a ladit systém k potěše a dle přání uživatele. Jednoduchost textových souborů je
nahrazena modernější technologií. Bohužel znalosti z velkých unixů nebo Linuxu nelze
v tomto případě úplně dobře využít.
Tak trochu jiné pojmenování procesů
Identifikace procesů - tedy běžících programů - je ukryta v již zmiňovaných konfiguračních
souborech. Systém zavedený v OSX funguje podobně jako kvalifikovaný jmenný prostor
(například syslogd se skrývá pod termínem com.apple.syslogd). Čeho se tím dosáhne? Kromě
počátečního lehkého zmatení se tím zabrání tzv. „names space clashes“, tj. zmatení
z duplicitních jmen procesů. Na tento evidentně dobrý počin je nutno si zvyknout.
AppleScript, jeden z jazyků správného sadaře?
Již v předchozích verzích OSX byl představen jazyk AppleScript, který se snaží svou syntaxí
o pokud možno maximální přiblížení k mluvené řeči. Tím určitě není unikátní a nechť si
každý rozhodne, do jaké míry je mu sympatický. Jedná se o jazyk objektový, který je v rámci
aplikace ScriptEditor možno šikovně ukládat jako aplikaci nebo skript. Zkusil jsem si napsat
jeden instalační skript, výsledkem je fungující aplikace. Vlastní proces jeho ladění a tvorby
mne ale příliš nepřesvědčil. Jazyk mi připadá příliš odlišný od současných jazyků nebo je
možná jen potřeba více času na zažití. Naštestí jsou k dispozici staré a dobré tradiční
skriptovací jazyky jako bash, perl nebo python.
To nejlepší na konec
Nyní se tedy přesuňme k tomu pozitivnímu. Jak téměř každý ví, Macintosh se v drtivé většině
případů prodává jako kombinace HW&SW. Dostanete obvykle do ruky nádherný kousek
železa, z inženýrského i designérského hlediska velmi propracovaný. Jako příklad šikovného
nápadu uvedu použití USB rozhraní pro připojení klávesnice nebo touchpadu, což by mělo
přinášet menší počet hardwarových přerušení a snad i rychlejší odezvu systému. O designu
asi nemá smyslu moc mluvit. Stroje firmy Apple si obvykle kupuje ten, kdo je dokáže ocenit.
Za sebe musím říci, že můj MacBook Pro (MBP) se mi ani po roce neokoukal. Mám radost
pokaždé, když stroj beru do ruky a jeho estetika mi bere dech.
Z hlediska vývojáře si také nemůžu stěžovat. Možná proto, že platformu Windows se mi profesně daří úspešně vynechávat. K dispozici je celá řada vývojových prostředí a nástrojů jako Xcode, Netbeans nebo jiné. Jsou kvalitní a podporují dostatečný výběr jazyků.
Použití balíku iLife, který dostanete k systému zdarma je pozitivní kapitolou samo o sobě. Stříhání videa, správa fotek nebo výroba DVD už asi nemůže být o moc snazší a intuitivnější. Zkrátka radost.
V případě nouze je zde příkazová řádka, bez které si to ani nedokážu představit. Jádro OSX Darwin není zatíženo podmínkami GNU licence, takže není problém naportovat DTrace firmy Sun, který umožňuje pohled pod pokličku systémovým nástrojůmnebo souborový systém ZFS.
Třeba se to nezdá, ale pozitivní zkušenosti u mne převažují. Nebudu lhát, když řeknu, že mám Linux rád a přál bych si, aby se linuxový desktop dožil stejné míry vyladění jako OSX. Pro některé lidi by OSX mohl každopádně být tou správnou volbou. Pro moje profesionální použití bez potřeby nejnovějších grafických karet jsou stroje firmy Apple zcela vyhovující. Osobně je mi Macintosh blízký a nehodlám ho opustit. Vyhovuje mi. Ba co víc, zakoupil jsem si od firmy Apple i další zařízení. Zkuste některé to jablko také nakousnout, možná dopadnete stejně.