21. October 2009

Reinkarnácia projektu mäsožrút?

Nie je to tak dávno a dokonca ani nie tak ďaleko, ako niekto vymyslel projekt Mäsožrút (Carnivore). A sotva sa prach zľahol v bulvári a vo všeobecnom povedomí, je tu nová inkarnácia Carnivoru ako vyšitá. Našťastie dnes ľudia rýchlo zabúdajú a tak sa môžeme presunúť k novému projektu. Projekt Indect. Tentokrát už nie z ďalekej Ameriky, ale z dielne európskych kutilov.

Koľko stojí? Slabých 11 miliónov Euro. A čo za to? Veď posúďte:

Alebo si stačí pripomenúť Minority Report z roku 2002?

Hm, Minority report malo aspoň lepšiu grafiku a lepší rozpočet 102 miliónov $.

20. October 2009

Balsamiq Mockups – dizajn GUI hračkou

Kreslenie návrhov GUI je dôležitý krok pred začiatkom projektu. Problém je však, ako kresliť. Môžete začať kresliť na tabuľu a potom zvoliť workaround, že tabuľu nafotíte a pošlete ďalším členom tímu na pripomienkovanie. Tí si musia vašu fotku prekresliť na svoju tabuľu, dokresliť úpravy a poslať fotku späť.

Prípadne môžete použiť iný postup. Nakresliť to na papier, ten poslať niekomu na pripomienkovanie a on vám vaše drahocenné kresby stratí.

Omnoho zaujímavejšie riešenie prináša projekt Balsamiq Mockups od Peldi Guilizzoni z Talianska. Jeho prednášku bolo možné vidieť na WebExpo 2009.

balsamiq-gui-on-line

Čo aplikácia poskytuje? Umožňuje rýchle a jednoduché editovanie modelov rozhrania aplikácie. Sú nachystané komponenty pre desktop, web alebo dokonca iPhone. Výsledok je možné vyexportovať do obrázku alebo do XML, ktoré môžete spolupracovníkovi.

On-line verziu si môžete vyskúšať zadarmo. Ak máte záujem o desktopovú, tak stojí len 79$. Čo je veľmi smiešna cena, ze ušetrný čas a pohodlnú a rýchlu prácu.

Balsamiq Mockups je krásnym príkladom využitia technológií Adobe Flex v kombinácii s Adobe AIR.

19. October 2009

Silverlight na Linuxe moc nefunguje

Silverlightu sa proste na Linuxe moc nechce bežať. Naviac návod je veľmi zaujímavý: Click to Install. Schválne, kam kliknete?

silverlight-linux-click-to-install

Prezradím vám tajomstvo. Po kliknutí na červený text sa otvorí stránka s inštaláciou Moonlightu od Novellu. Ten sa síce nainštaluje. Portál MSTV.cz stále zanovito tvrdí, že si má človek doinštalovať Silverlight. Takže sme tam, kde sme boli ;-)

Týmto nedotiahnutým krokom bráni Microsoft plnému využitiu Silverlightu pri tvorbe klientských aplikácii a zmenšuje svoj potenciálny trh.

Musím povedať, že je to ostuda. Adobe má inštaláciu Flash Playera na Linuxe rozhodne zvládnutú lepšie. Tým pádom dostať sa k Adobe Edge materiálom je jednoduché a pohodlné aj na Linuxe.

Update: Ukážka drobného workaroundu. Stačí doinštalovať VirtuaBox a doňho Windows 7. Výsledok je použiteľný.

virtualbox-windows-7-mstv

19. October 2009

BranoRac – spravodajstvo z WebExpa

Skutočne podrobné spravodajsto z WebExpa môžete nájsť na blogu BranoRac.sk

18. October 2009

WebExpo – deň na konferencii

Ak ste sa nemohli zúčastniť konferencie WebExpo 2009, tu je drobný video záznam o tom, ako to na konferencii vyzeralo.

Deň 1.

Deň 3.

Ak ste neboli tento rok, určite prídite na budúci. WebExpo je veľká udalosť na poli IT a Webu 2.0. Dozviete sa množstvo úžasných informácií, ktoré vás posunú o kus ďalej.

BTW: K dispozícii je aj materiál z mojej prednášky: Když něco rozeberem, tak leda debuggerem.

16. October 2009

WebExpo 2009 – prednáška – Když něco rozeberem, tak leda debuggerem

Materiály z prednášky sú k dispozícii. Ak sa vám prednáška páčila a niečo vám priniesla, tak je to veľmi dobre ;) Nezabudnite hodnotiť prednášku na stránkach konferencie WebExpo 2009. Ďakujem všetkým, čo prišli. :)

14. October 2009

Sadzba diplomovej práce pomocou LyXu

TeX je veľmi silný nástroj na sadzbu texu. Používa sa pri sadzbe diplomových prác, vedeckých prác alebo kníh. Využíva ho napríklad vydavateľstvo Laser.

TeX je zdarma k dostupný. Vysadený text je na profesionálnej úrovni a výstupy vo forme PDF sú veľmi kvalitné. Samotný TeX je však nemá žiadne grafické rozhranie, cez ktoré by sa dali editovať texty. Tento problém rieši projekt LyX.

LyX je textový procesor, ktorý umožňuje editovať texty a pritom odtieni používateľa od nutnosti písania stoviek zložených zátvoriek a opačných lomítiek. Proste práca s TeXom sa stáva pohodová.

lyx-thesis

Pred nejakým časom som písal diplomovú prácu a na jej sadzbu som použil TeX. Ako editor som použil LyX. Musím povedať, že LyX mi ušetril množstvo času a výsledok bol výborný.

Na sadzbu diplomovej práce pre formát FI MUNI v Brne existuje štýl Fithesis pre TeX. Ja som k nemu vytvoril definíciu pre LyX, takže je možné tento štýl používať priamo z LyXu.

Fithesis je možné stiahnuť zo stránok Jána Pavloviča. Po nainštalovaní, stačí stiahnuť Fithesis rozšírenie pre LyX. Spustiť install.sh, ktorý zmení nastavenia LyXu ~/.lyx.

Moju kompletnú diplomovú prácu v LyXu je možné získať z svn repozitára. Okrem práce nájdete aj niektoré ďalšie podporné nástroje na sadzbu.

svn co https://svn.sinusgear.com/projects/thesis-jm thesis-jm

Ďalšie informácie o TeXu získate napríklad na stránkach CSTUGu.

14. October 2009

Pythoniersky Zen

Princípy implementované v Pythone veľmi pekne zhrnul Time Peters. Vytvoril 20 aforizmov, z ktorých 19 bolo spísaných a vytvorili tzv. The Zen of Python.

Dovolím si ich preklad prevziať zo stránky py.cz

Hezký je lepší než ošklivý.
Explicitní je lepší než implicitní.
Jednoduchý je lepší než komplexní.
Komplexní je lepší než komplikovaný.
Plochý je lepší než vnořený.
Řídký je lepší než hustý.
Čitelnost se počítá.
Speciální případy nejsou dost speciální na prolomení pravidel.
Ačkoliv praktičnost vyhrává nad čistokrevností.
Chyby by neměly nikdy projít tiše.
Pokud nejsou explicitně utišeny.
Čelíce dvojmyslnosti odmítat pokušení hádat.
Měla by být jedna — a nejlépe pouze jedna — zřejmá cesta, jak to udělat.
Ačkoliv tato cesta nemusí být zřejmá hned, pokud tedy nejste Holanďan.
Teď je lepší než nikdy.
Ačkoliv nikdy je často lepší než právě teď.
Pokud je těžké vysvětlit implementaci, bude to špatná myšlenka.
Pokud je snadné vysvětlit implementaci, může to být dobrá myšlenka.
Prostory jmen jsou skvělá myšlenka — nechť je takových více!

Zen je priamo zabudovaný do Pythonu, stačí zadať:

import this

13. October 2009

Twisted – Python engine pre internet

Projekt Twisted už exustije nejakú dobu. Podľa Ohloh.net má tento projekt hodnotu 2.3 M$ a časová náročnosť je 42 človeko-rokov.

Jedná sa o codebase v Pythone, ktorá je určená hlavne na vývoj sieťových aplikácií. Vlastný web server postavíte na pár riadkov. Prípadne ak vás zaujíma VOIP, nie je problém rýchlo napísať malý SIP server alebo simulátor SIP gatewaye. Škála použitia je rozsiahla. Vďaka MIT-licencii je možné Twisted dobre integrovať s komerčnými projektami.

Twisted pracuje asynchrónne, čo je možné vďaka dobrej podpore udalostí. Asynchrónne myslenie môže byť prekážka pre začínajúcich vývojárov, ktorá však stojí za prekonanie.  Odmenou za to budú jednoducho rozšíriteľné dobre škálovateľné aplikácie.

Pokiaľ chcete písať vlastný server, tak Twisted obsahuje twistd, ktorý za vás ošetrí spúšťanie a logovanie aplikácie. Jednou z veľkých výhod Twisted je prenositeľnosť kódu medzi platformami.

Viac sa dá o Twisted dozvedieť napríklad z podcastu.

8. October 2009

Básnik alebo Vývojár?

Mal som opäť tú česť, stretnúť sa s veľmi zaujimavou kompozíciou zdrojového kódu. Bolo potrebné doplniť veľmi jednoduchú funkciu. To však samo o sebe nebolo jednoduché.

Pri pohľade na dadaisticko abstraktný zhluk tisícov písmen som zostal chvíľku vydesene sedieť a rozmýšľal som, či sa nenechať zamestnať radšej v jednotke špeciálneho nasadenia alebo v továrni na pyrotechniku. Život by bol asi podstatne bezpečnejší. Už drobná zmena jedného riadku môže spôsobiť obrovský zosuv funkcií a na povrch by mohli vyliezť noví kostlivci, ktorí sa doteraz pokojne ukrývali pod marastom.

Vravím si. Nebudem sa báť. Trochu to tu prevetráme. Zobral som Eclipse s CDT pluginom a hovorím mu: “Naformátuj ten kód, lebo sa v tom ani kompilátor nevyzná!”. Eclipse schramstol súbor. Začal pracovať. Jedno jadro procesora – plný výkon. Druhé jadro procesora – plný výkon. Kačička začína loziť po strope, tak ako postupne dochádza pamäť. Voda fialovie, tak ako dochádza swap. Vetráky zvyšujú obrátky, tak  ako sa zvyšuje teplota procesoru. Po chvíli Eclipse pustil obe jadrá a kód bol krásne naformátovaný.

Listujem kódom a hľadam jeho význam. Jednoznačne som identifikoval autorov sklon využívaniu refrénu a tajomna, ktoré dosahoval nedokumentovaním funkcií a kryptickými premennými typu: _nFlag. Ďalší zaujímavý literárny prvok bolo otváranie nových tém, bez dokončenia predchádzajúcich. Tento prvok bol dosiahnutý pomocou vnárania obrovského množstva ifov s náhodným returnom.

Nehovoriac o tom, že autor bol skutočným majstrom inotajov. Väčšina básnikov by mu mohla len závidieť. Inotaj bol často tak tajný, že som jeho význam našiel až po dvoch hodinách študovania autorovho rukopisu.

Celé dielo sa svojím rozsahom blížilo hrdinskému eposu. Menšie funkcie dosahovali len tri tisíc riadkov husto písaného kódu.

Pokiaľ sa autorovi podarilo identifikovať jeho skrytý talent, musí byť dnes jedným z najuznávanejších svetových básníkov. Pokiaľ pracuje naďalej ako vývojár, tak je to jeho škoda, lebo mohol zarobiť podstatne viac.

A ako to celé dopadlo? Najskôr som sa pokúsil použiť obojručný debugger, proti ktorému sa kód úspešne bránil využitím forkovania a spúšťaním nových procesov. Nezostávalo nič iné, len porozumieť celému dielu a s presnosťou chirurga odstraňovať kusy mŕtveho kódu a ten živý kód reimplentovať na lepšie miesto.

Nakoniec to všetko otestovať pomocou BOOSTu a švajčiarského nožíka medzi sieťovými nástrojmi: netcat.

  • 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

  •  

    October 2009
    M T W T F S S
    « Sep   Nov »
     1234
    567891011
    12131415161718
    19202122232425
    262728293031  
  • Comments