31. August 2009

Balmer mal pravdu! Vývojári! Vývojári! Vývojári!

Ujo Balmi mal pravdu, keď vybehol na javisko a hulákal: “Developers! Developers! Developers!

Zvláštne. Nikto ho nebral vážne. Všetci z neho mali srandu. A pritom mal pravdu. Veľkú pravdu.

Niečo však jeho prejavu chýbalo. Človek mal skôr pocit, že sa jedná o nejaký kŕč.

Windows Mobile je skvelý systém. Dobre, tak je to fajn systém. Ok, je to skoro použiteľný systém. Na mašinkách od HTC sa s tým dá telefonovať. Ale nie je to žiadny zázrak, za ktorý by sa oplatilo vyhodiť desiatky tisíc. Na geocaching v teréne stačí.

Prečo Symbian je prakticky mŕtvy? Pretože aplikácie naň sa píšu veľmi zle a certifikačná perepúť je strastiplná. Prečo naopak iPhone kvitne a zarába ťažké drobné za aplikácie? Pretože aplikácie sa píšu jednoducho a on-line sklad s aplikáciami priam prekypuje tovarom.

A kde je Windows Mobile? Človek by si povedal, že niekde v strede. Ohoho, pán/slečna/pani, je optimistka. Blíži sa viac k horizontu za ktorým skončil Symbian. Jediné, čo ho drží v operatívnom strehu je silný kapitál pumpovaný transfúziou zo žíl materskej spoločnosti. Prečo? Posúďte príbeh zo života.

Jedného pekného dňa (ráno pršalo), som si povedal, že napíšem program pre Windows Mobile. Vravím si, páni od Microsoftu najali veľké množstvo developerských ťažkoodencov, šermiarov a žonglérov so zdrojvými kódmi. Museli už za ten rok, čo sa venujem Linuxu, Flexu a Pythonu, pokročiť aspoň o míľový krok dopredu. Naivne nalabužený progresom, ktorý zaznamenal Eclipse za posledné roky, som si myslel, že vývoj bude zábava a že spravím program, ktorý ľudí poteší. Ajaj. Ťažko som zaplakal. Ale nepredbiehajme dej a nevyzrádzajme čitateľovi netušenú pointu. Radšej odveďme pozornosť čitateľa tým, že prestalo pršať.

Naštartujem Windows XP, nakopnem Visual Studio 2005 Express a začnem googliť, ako písať aplikácie pre Windows Mobile. I veru našiel som. Srdce moje zaplesalo. V prehliadači vybehla nejaká pekná stránka, asi vytvorená komunitou vývojárou. V titulku bolo napísané Wiki. Ej hola hej! Vyzerá to dobre. Wiki obsahovala odkazy na materiály, ktoré som potreboval. Kliknem vo Fojerfoxe stredným koliečkom na všetky odkazy, tie vyskočia v nových taboch. A hurá do čítania.

Uh, Not found. Not found. This video session is no longer available. Huh! Na otvorenie tejto stránky použite Internet Explorer. Jedine odkaz na Micorosftie stránky fungoval. Tu už vo mne začal hlodať červ pochybnosti, že či by som sa nemal na to vykašlať a radšej napísať aplikáciu v Pythone. Vravím si. Nie, nie. Sú to borci, vrazili do toho ťažké peniaze, musí to fungovať. A veru, že aj hej!

Stránka s návodom: ako začať s vývojom. Nainštalovať Visual Studio. Mám. Stiahnut SDK. Ťahám, resp. preberám po novom (neviete, ktorý jazykovedec toto vymyslel?). Medzitým, kliknem na reklamu: Vyvíjajte pre Windows Mobile pomocou Silverlight. Joho, skúsim to. Adobe Flex poznám, skúsime niečo ďalšie. Jéé, video tutoriál. Klik.

Video sa natiahlo do bufferu a začalo sa prehrávať.

A potom mi prišlo smutno.

Kedysi, a nie je to tak dávno, mi niekto rozprával príbeh o jednom podnikateľovi. Vymyslel skvelé štvorkolky. Spravil prototypy. Tie sa odberateľom veľmi páčili. Spravili kontrakt na odber obrovského množstva štvorkoliek. Chlapík si zohnal peniaze, postavil mini fabriku a začal vyrábať. Keď mal hotovú asi  polovicu štvorkoliek, prišiel za ním odberateľ, že kontrakt ruší a nič odoberať nebude. Že dostal podstatne lacnejšiu ponuku. Hádajte od koho. Presne rovnaké štvorkolky začala zrazu chŕliť Čína. Chlapík sa šiel pozrieť na onen čínsky zázrak a očiam neverí. Jeho stroj 1:1 a ešte okopírovali aj zle naolejovanú reťaz so šmuhami.

A tak to vyzeralo aj so Silverlightom. Vykradnutý Adobe Flex, ešte aj s pokazenou prevodovkou a odpadnutým zadným kolesom. Áno, nalepili na to pár nálepiek viac. Ale…

Proste smutné.

Tu sa dostávame k prvému miestu, kedy sa potvrdí, že Balmík mal pravdu. Vývoj sotvéru nie je mechanická záležitosť. Na to, aby softvér fungoval ako má, potrebuje okrem štruktúry aj svoju dušu, ktorú tam vložia vývojári. Môžete okopírovať technológiu, ale pokiaľ nemáte vývojárov, ktorý žijú týmto softvérom, máte stále len prázdnu schránku. Vývojarov, ktorý mu pridávajú novú silu a energiu. Bez nich softvér umiera. Takýchto vývojárov, Balmi tak zúfalo vo svojom bojovom pokriku hľadal. Dôkaz o ich nedostatku je Silverlight. Tak ako čínsky priemysel, tak aj Microsoft kopíruje, čo sa dá. Nedokážu ale skopírovať to živé.

Opustil som jednu slepú cestu Silverlightu a vydal som sa na pokračovanie vo svojej púti, dúfajúc, že na konci dňa budem mať aplikáciu pre Windows Mobile.

Prebral som si SDK z webu a to ma prebralo. Spustil som inštaláciu. Nešťastný Windows XP získal novú experience. Okrem myšky sa toho moc nehýbalo. Asi po 10 minutách mi vyskočilo okno, že som trúba a že SDK nepobeží s Microsoft Visual Studio Express Edition. Huh! A tak som začal hľadať a inštalovať a…. Zúfalé. Gigabajty stiahnutých dát. Stovky odkazov vedúcich nikam. Už som pochopil, prečo je tak málo aplikácií pre Windows Mobile. Len veľmi málo ľudí sa prestireľa až do posledného levelu, kde je možné aplikáciu spustiť.

Balmi mal pravdu. Nehovorte mi, že nie. Zoberme si taký Debian. Len testing verzia obsahuje cez 28 000 softvérových baličkov. 28 000 kúskov softvéru, ktorý niekto zobral, zhodnotil, zabalil, okomentoval a publikoval a niekto používa. A nie je to nejaký šlendrijánsky softvér plný červov a vírusov. Toto má proste kvalitu. Prečo Windows nemá také? Spomeňme si na Balmiho. Je to presne tak ako kričal. Záleží na ľuďoch, ktorý tomu venujú svoju energiu.

Apple? Pišta a company sú vysmiaty ako lečo. Zobrali silu open source sveta a skonvertovali ju do nového biznis produktu. Primašlili k tomu pekný kukuč. Nachystali vývojárom platformu na vývoj. Jednoduchú, rýchlu. Pridali im on-line obchod, aby mohli svoju ručnú prácu pekne predávať. Tu za dolár, tu za euro.

Googlovic kompánia? Zašli vo svete open source ešte ďalej. V svojom minimalistickom duchu nachystali množstvo nástrojov. Podporu, wiki. Takže nováčik sa dostane okamžite k plnému vývojárskemu výkonu.

A ako to nakoniec dopadlo tá moja aplikácia? Po pol dni strávenom, inštaláciou, sťahovaním, preinštalovaním, upgradovaním, čítaním odkazov, ktoré nikam neviedli, som si povedal a dosť. Zobral som Pythona a PPYGUI a konečne som sa začal hrať.

30. August 2009

Nová verzia GCzII – oprava prihlásenia na server

Server geocaching.com zmenil procedúru na prihlásenie. Tým pádom prestalo v aplikácii GCzII fungovať sťahovanie detailných informácií o geocache. Prejavuje sa to tak, že sa začne sťahovať zoznam, ale žiadna z keší sa nenaimportuje.

Nicque vydal okamžite opravu, stačí stiahnuť a nainštalovať.

Prídem takto jedného pekného slnečného dňa do Augsburgu. Vravím si, nebudem sťahovať kešky, je ich tam moc. Keď budem na mieste stiahnem tie najbližšie. Zapnem Evolve, zameriam pozíciu, zvolím vyhľadať. Zoznam sa zobrazil korektne. Zvolím Download All Caches. Teplomer progress baru nabehne. Vhuuuum. 1 MB stiahnutý. 0 keší importovaných. No, veru nepoteší to človeka keď je v teréne a má len pár minút čas. ;)

27. August 2009

Zabíjajú školy tvorivosť?

Nájdite si 20 minút času. Toto rozhodne stojí za to si vypočuť: Sir Ken Robinson – Do schools kill creativity?. Video obsahuje titulky, takže sa nemusíte báť, že by ste nerozumeli.

Ak sa vám prednáška páčila, tu je ďalšia ;-) A New View of Human Capacity.

Pár informácii o Sirovi Kenovi Robinsonovi nájdete na Wikipédii.

26. August 2009

Pre koho je Python?

Keď Guido začal dávať dohromady nový jazyk Python, mal už za sebou skúsenosti z návrhu jazyka ABC. Najdôležitejšim kritériom pre vývoj tohoto jazyka bola čitateľnosť. Guido potreboval jazyk, ktorý by bol jednoducho pochopiteľný aj pre bežných ľudí. O Pythone prehlasujú autority, že je to multi-paradigmový programovací jazyk a majú veru pravdu.

Python je objektový. V čase keď Python začínal, objektové programovanie už malo za sebou nejaký ten rok, ale stále bolo odsúvané na okraj záujmu. Dôkazom toho sú napríklad jazyky ako Perl a PHP, ktoré odsunuli objektovosť naneskôr a potom ju pracne doháňali. V Pythone je proste všetko objekt a hotovo.

Python obsahuje prvky funkcionálneho programovania. Môj osobný pocit z funkcionálneho programovania je, že vlastne myslíte naruby. Človek musí úplne prevrátiť myslenie, pokiaľ sa chce dostať z procedurálnej paradigmy na funkcionálnu. A oplatí sa to. Získate kratší, účinnejší a čitateľnejší kód. Je síce pravda, že čitateľ musí trochu rozumieť princípom funkcionálneho programovania, ale aj bežný používateľ počítača viacmenej pochopí význam. Dobrá lambda abstrakcia môže výrazne skrátiť kód.

Python umožňuje použiť Aspektovo orientované programovanie – AOP. Pokiaľ vám táto téma nie je ešte známa, odporúčam si vypočuť diel podcastu z Software Engineering Radio – Úvod do AOP. Podstatnou vlastnosťou AOP je lepšia modularizácia kódu, čo má za dôsledok lepšiu znovupoužíteľnosť kódu.

Python umožňuje lietať.

A kde teda začať? Určite treba navštíviť stránky venované Pythonu. A pre začiatočníkov rozhodne odporúčam nainštalovať si IPython shell, ktorý vám môže ušetriť množstvo času. Pre priaznivcov Eclipse odporúčam PyDev s nádherným debuggerom. Pre nepriaznivcov Eclipse odporúčam prostredie Eric, ale mali by ste zvážiť, či sa náhodou nestanete radšej priaznivcami Eclipse ;)

Nezabudnite si po spustení Python shellu zadať príkaz: import this

24. August 2009

Nastavenie slovenskej klávesnice v Linuxe

Prednedávnom som si upgradol svojho verného Debiana testing. Ten už má nejaký ten rok. Žiadne preinštalovanie, maximálne rsync na nové železo. Inštaloval som ho ešte z Knoppixu 3.1 v roku 2003.

No a ako to už tak chodí pri mega upgradoch, vždy sa niečo pokašle. Tentokrát mi prestalo fungovať prepínanie klávesnice US, SK qwerty. Qwertz ma neuveriteľne vytáča. Chviľku som si vystačil s ručným prepínaním klávesnice pomocou:

setxkbmap sk qwerty

Keď už ma to prestalo baviť, tak som pogooglil a prišiel som na to, že konfigurácia Xservra (/etc/X11/xorg.conf) by mala vyzerať nasledovne:

Section “InputDevice”
Identifier  “Generic Keyboard”
Driver      “keyboard”
Option      “CoreKeyboard”
Option      “XkbRules” “xorg”
Option      “XkbModel” “pc104″
Option      “XkbLayout” “us,sk”
Option      “XkbVariant” “,qwerty”
Option      “XkbOptions” “grp:alt_shift_toggle,caps:shift,grp_led:scroll,altwin:super_win”
EndSection

Lenže toto fungovalo predtým. Nie taraz. Konfiguroval som, prekonfigurovával, reštartoval Xserver. Nič. Stále koťuha zanovito prepínala US, SK qwertz. V Gnome sa cez GUI dalo toto nastavenie prepnúť v danej session, ale môj WindowMaker s kačičkou zostával naocot. Samé qwertz. Tak som si povedal: Dosť! Tebe došli konfiguráky, mne trpezlivosť.

Použil som jedno z obyčajných riešení. Umiestil som nasledujúci príkaz do GNUstep/Library/WindowMaker/autostart:

#!/bin/sh
setxkbmap us,sk -variant ,qwerty -option “grp:switch,grp:alt_shift_toggle,grp_led:scroll”

A tak všetko zase šťastne funguje. Kačička si veselo pláva a mne funguje sk qwerty.

kacicka

BTW: Kačička bola nahraná pomocou programu Byzanz:

byzanz-record -x 1336 -y 64 -h 64 -w 64 -d 27 -l kacicka.gif

23. August 2009

Coord.info – rýchle hľadanie geokeší

Niektoré URL sú veľmi dlhé a nie je ich možné vtesnať do pár znakov na Twitter. Na skrátenie URL existujú služby ako Tinyurl.com, kam zadáte vašu URL a portál vám vygeneruje iné, kratšie URL.

Vrámci geocachingu vznikla nová služba coord.info na rýchlejšie sprístupnenie informácii o keškách. Funguje na podobnom princípe ako Tinyurl.com. Jednoducho za adresu zadáte meno kešeky alebo waypointu a budete okamžite presmerovaný na stránku s informáciami o danej keške. Táto služba veľmi hodí pre mobilné zariadenia, kde sa stránka geocaching.com nespráva veľmi prívetivo a hľadať informácie o nejakej keške zaberie aj 5 minút.

22. August 2009

Lepenie fólie na HTC Kaiser

HTC Kaiser sa pri hľadaní geokešiek skutočne osvedčil. BeeLineGPS, či GCzII fungujú výborne a rýchlo. Nanešťastie už mi táto tehlička niekoľko krát zletela na zem a na displeji zostali škrábance. Hollock mi poradil, že za 3€ zoženiem sadu 3 fólií, z ktorých si vystrihnem rozmer, čo potrebujem. A mal veru pravdu.

PDA Body-Care balíček som zohnal v Nay elektro-dome. Súčasťou balíčka bola aj mokrá a suchá utierka, ktorou sa vyčistil displej od neporiadku. Rovno som ju využil aj na vyčistenie všetkých LCD displejov, na ktoré ľudia veľmi radi capkajú. Pekne som fóliu obstrihol. Zapnem telefón. Huh, ťukám do displeja, nereaguje.

Celý problém spočíval v tom, že som na rohoch zatlačil fóliu pod rám. Displej mal pocit, že je pod neustálym tlakom a už nič nesnímal. Vystrihol som preto novú fóliu. Trošku opatrnejšie som ju nalepil a všetko fungovalo. :-)

21. August 2009

WSGI – rýchle web aplikácie v Pythone

V dobách, keď sa rozdeľovali sféry vplyvu medzi web technológiami, prišlo PHP s niečím, čo ostatným technológia zobralo vietor z plachiet. Viete, čo to bolo? Nie, nebol to dobrý návrh jazyka a dátových štruktúr. Nebola to ani obsesia v dolároch. A nebolo to ani množstvo modulov, ktoré umožňovali všetko od generovania obrázkov, až po generovanie zisku. To s čím PHP prerazilo, bola jednoduchosť nasadenia a rýchlosť. Tu dostali CGI aplikácie postavené na Perle, Pythone, Bashi a Haskelli poriadne na frak. Stačí si porovnať energetickú náročnosť Zope/Plone portálov, ktoré zožerú server so zdrojom aj so sieťovým káblom, verzus PHP portály.

Pythonieri sa bez boja nevzdávali a tak začali vymýšľať riešenie. CGI. Nie, nie. To nebola správna cesta. Overhead bol skutočne veľký. FastCGI? Trošku rýchlejšia voľba. Aj Trabant môžete vytuniť. Ale pokiaľ nepoužiteje prístup Pána Tragáčika a nevymeníte motor z Trabantu za dvanásť valec, tak máte stále Trabant. Mod_python bol už krok trošku správnejším smerom. Zrýchlenie bolo zhruba 10 násobné. PHP však rýchlostné limity zvyšovalo ďalej. Tu sa niekto z Pythonierov zhrozil. “Chlapi! Baby! Veď mi sme postavili parnú lokomitívu. Musíme vymeniť paradigmu.” Tak sa po mnohých rokoch objavil nový koncept WSGI.

Tentokrát sa podaril husársky kúsok. Nie len zvýšiť rýchlosť, ale dostať sa tam, kam sa PHP ešte nedostalo. Okrem rýchlosti sa totiž objavila nová požiadavka webových obláčikov: škálovateľnosť.

Je WSGI až taký zázrak. Áno je. A dokonca o trošku väčší.

WSGI je skratka od Web Server Gateway Interface. WSGI definuje rozhranie, pomocou ktorého napojíte vašu aplikáciu na web server. To, čo WSGI prináša je unifikácia pripojenia rôznych web frameworkov. Toto zároveň umožňuje podstatne lepšiu optimalizáciu rýchlosti. A ako bonus dostane vývojár škálovateľnosť. Vynikajúcim príkladom je Google App Engine.

Hurá, zahodím PHP a idem na Python. Hou, hou, zadrž! Škálovateľnosť nie je zadarmo. Python je objektový jazyk a tak sa je k nemu potrebné aj správať. Prechod vyžaduje trochu učenia a skúmania. Niektoré z konceptov sa v PHP vôbec nevyskytujú. Niektoré sú naopak pre PHP vývojárov používajúcich dobrý framework veľmi známe.

Tu pripájam video z Google Tech Talks venované popisu WSGI.

Kde Python aplikácie hostovať? Napríklad mi môžete napísať a nejaký ten serverový výkon sa pre vás určite nájde. Alebo si môžete objednať za pár bubáčikov virtuálny server od Web4U. Alebo ísť rovno na Google App Engine a vaša aplikácia bude v obláčkoch cestovať medzi kontinentami a hostingovými centrami.

19. August 2009

Nová geocache: Nad Považskou

Juch! Z radosťou oznamujem, že sa mi podarilo umiestniť moju prvú geocache. Je dostupná z Považskej Bystrice. Ďalšie informácie už na stránke Geocaching.com. Kód kešky je GC1XDNR.

Prajem veselý odlov.

Update: Už sa objavila aj v oficiálnom oznámení od Groundspeeku:

11. Nad Považskou (Traditional Cache) (GC1XDNR)
Location: Trenčiansky kraj, Slovakia (38.9mi S (62.6km S))
Date: 8/17/2009 by georgik

http://coord.info/GC1XDNR

19. August 2009

Okúsané jablúčko

Když jsem šel z Kalifornie z požehnání,
potkal jsem děvčicu znenadání.

/:Potkala mě, poznala mě, okúsané jablúčko dávala mě:/
Že jsem byl šohajek nerozumný,
vzal jsem si tarifek z ručky její.
Jak jsem volal, tak jsem volal:
Kredit jsem, doteďka nepřevolal.
Neber si, synečku, co kdo dává,
z takových jablúček bolí hlava.
Hlava bolí, srdce svírá,
na tuhle faktúrku, se težce dívá.

- adaptácia ľudovej IT tvorby

Tak je to tu zas. Pišta Džobsovie vyrukoval s nový vynálezom. Tentokrát, už operátori nezaspali a hneď pochopili, že musia našróbovať ceny tak vysoko, že aj Ajfelove železné dielko bude malé. Vrhli sa po produkte od Okúsaných jablúček. Vymysleli také úžasné tarify, že vašu peňaženku z toho chytí zrádnik. Zlatá baňa, Klondajk hadra. Žiadna zima, pekne teplé pohodové zisky.

Treba uznať, že Okúsané jablúčka sú skutočne kreatívne. Zatiaľ čo ostatný výrobcovia mobilov pridávali nechcené fcie na prenos fotiek a obrázkov. Či nebodaj písali hyper rýchle aplikácie v Jave. Pištík povedal: Figu borovú, choďte s Javou niekam, na tom nepostavíme biznis model. A tak vznikla jedinečná vodováha, kombinovaná s okarínou, gitarou a mobilným telefénom. Medzi pospolitým ľudom, iPhone zvaná.

Niektorí plačú nad vysokými cenami. Tu si však treba dať pozor, že momentálne vrcholí humbuková vlna (hype) okolo iPhonu. Otázka znie, či sa surferi z iPhonovej vlny pustili správnym smerom. Niekedy sa totiž hodí si skontrolovať mapu. Najhoršie sú skaly tesne pod hladinou.

  • Babel fish

      Translate from:

      Translate to:

  • Where’s the fish?

  • Starfish

  • Fish for you

  • Further info

  • Badges

  • Video channel

  • Learning

    Grow your brain.
  • Tags

  • Topics

  •  

    August 2009
    M T W T F S S
    « Jul   Sep »
     12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31  
  • Comments