Category Archives: IT

Mac OS: Stop desktop cluttering caused by ThunderBird

As you’re reading these lines, you’ve been probably affected by annoying bug in ThunderBird related to dealing with attachments.
I’ve published this post just to sum up my google findings on one place – details described f.e. here.

Scenario is easy – when you open an attachment directly and have a helper application assigned (like MS Word for doc), given file also gets stored automatically on desktop. There is no option effectively affecting this behavior currently available , so your desktop can get quite messy after a while.

You have two options here

  1. Auto delete of temporarily opened files on ThunderBird exit

    Create and set to true browser.helperApps.deleteTempFileOnExit in TB configuration

  2. Change the download directory via different application

    Safari 2.x should work for Mac OS 10.4, whereas Camino works for Mac OS 10.5

Triky pro zvladnuti pretizeni a stresu

Tady je par triku, ktere funguji v mem pripade. Muzete zkusit.

  • za zadnych okolnosti neswitchujte kontext – vzdy se snazte vas ukol dodelat pred prepnutim do emailoveho klienta, rss ctecky ci browseru. To plati i pro pripad, kdy napriklad probiha dlouhy build ci kopirovani a vase interakce neni nutna. Tuto chvili vyhradte premysleni o tasku a akci, ktera bude nasledovat az se zase dostanete k veslu.
  • pokud mate solo ukol, nenechte se vyrusovat okolim – toto souvisi s predchozim bodem. Nasadte si sluchatka, pustte si oblibenou hudbu a neodpovidejte dokud nebudete hotovi. V krajnim pripade (pokud muzete) zustante zakutani doma a vubec nechodte do office.
  • najdete si vase nejefektivnejsi hodiny a ten zbytek venujte ukolum, pri kterych nemusite prilis premyslet ci relaxaci. Treba pro me jsou nejplodnejsi ranni hodiny, klidne se mi stane, ze se probudim ve 4 rano, pracuju 2 hodky a pak si jdu zase lehnout. Ten zasedly Skype a zadne telefonaty jsou pro me jak prazdna dalnice.
  • Najdete si dobre tooly pro spravu informaci s rychlou navigaci a vyhledavanim. Nedavno jsem zacal pouzivat Freemind a Evernote. Stalici jsou desktop searche, v mem pripade QuickSilver a GoogleDesktop.
  • Nezacnete resit zadany ukol ihned po zadani, a take neodpovidejte na email ihned po prijeti. Nejenze se nejspise prohresujete proti pravidlu 1, ale navic jite kasi horkou tak, jak se uvarila a to se nema.

Ruby on Rails – strma krivka uceni

Casto muzete kolem sebe slyset, jake je to jednoduche psat web aplikace pomoci ruby frameworku Ruby on Rails (RoR). Ono tomu tak skutecne vetsinou je, ovsem nez-li se dostanete k vlastnimu psani kodu, nezbyde vam nic jineho, nez se obrnet trpelivosti a vzit si na par mesicu dovolenou na uceni.

Na RoR je dobre videt, jak dvojsecnou zbrani je dynamicnost jazyka (ve smyslu typu i objektoveho modelu). Na jedne strane se jazyk krasne ohyba a vznikaji hlavne diky podpore closures a volne syntaxi elegantni a temer neprustrelna API, na strane druhe moznosti techto API nezjistite jen pouhym pohledem na signaturu (jako vetsinou v Jave), ale az zevrubnym proctenim dokumentace (rdoc). Navic nalezeni odpovidajici dokumentace nemusi byt v pripade dynamicky generovanych API za behu (v RoR vetsi cast) uplne jednoduche a proto jste odkazani na literaturu popr. zdrojovy kod. V RoR je na zacatku temer nezbytny funkcni debugger (mel jsem problem s NetBeans 6 na Mac OS, jehoz reseni naleznete zde (NetBeans 6 and RoR Fast Debugger ).

No konec narku, uceni nikomu neuskodilo. RoR za to stoji, zejmena pokud mate jiz nejakou ruby znalost. Oproti Merbu ma vyhodu vyzralosti a tudiz i vice literatury, jezto je jak bylo popsano vyse, skutecnosti esencialni :). Ovsem, i kdyz to nerad priznavam, pro javistu je prave kvuli prikre krivce uceni na zacatku lepsi posunout se smerem Groovy/Grails.

O pristupu k veci

V soucasne dobe makam jako sroub na trech vecech

1. testovaci proces a framework pro jednu svetovou gumarenskou spolecnost (ne, nejsou to Gumarny Puchov :P )

2. dohled nad zdarnym vyvojem systemu v jedne svycarske pojistovaci spolecnosti

3. mohutne rozsirovani JetMinds

Muze se zdat, ze se jedna o nezazivnou cinnost. Na to reknu jedine – vsechno je takove, jake si to clovek udela. Continue reading

Energie pro kodery

Co potrebuje koder? Poradny sluchatka na poradnou muziku. Deep Purple nebo Ping Floyd? WTF, no to asi opravdu ne. Poslechnete nasledujici set od Ultima C (ceska DnB nadeje); video vjem je samozrejme kvuli zanru bezpredmetny, takze virtualne firefox & a fg %1; me osobne zanechala samotna muzika sedet v aute pred domem az do finishe(na Radiu Jedna).

Git cheatsheet

Dneska jsem objevil u Zacka Rusina zdarily cheatsheet pro verzovaci system Git, ktery jsem zacal nedavno pouzivat pro soukrome ucely. Vrele doporucuji oboji – vlastni Git i obrazek :).



Kouzelne Ruby

Ruby jsem se zacal venovat posledni rok ponekud aktivneji a porad me neprastava prekvapovat svou eleganci, za niz vdeci predevsim blokum(closures), mixinum (injektovani funkcionality vedle dedicnosti) a runtime modifikacim objektoveho modelu.

Demonstrovat silu techto konstruktu si muzeme napriklad na patternu Singleton. V prehistorickych programovacich jazycich obvykle udelam private konstruktor, budu mit lokalni statickou instanci a statickou synchronizovanou metodu pro pristup k ni.

V Ruby kod vypada nasledovne


require 'singleton' 
class FooService include Singleton end

a pouziti

foo1 = FooService.instance