Jan Kubr

Archive for February, 2007|Monthly archive page

Na volné noze s Neposedou

In Uncategorized on February 26, 2007 at 22:19

Dočasně žiju ve španělské Granadě a protože ani tady peníze na stromech nerostou, živí mě programování webových aplikací. Pracuji na projektu pro Fleur de Santé – Rails aplikaci s několika většími tabulkami, do jejichž buněk zadaná data způsobí přepočitání obsahu (alá Excel). Trocha AJAXu a složitejších vazeb mezi Rails modely ještě nikoho nezabily.

Zajimavější ale je, jak práci na tomto projektu organizujeme. Ačkoliv moje aplikace Neposeda má ještě spoustu nedodělávek, slouží nám překvapivě dobře. Ač je projektové řízení celá věda, nejdůležitější jsou podle mě dvě věci:

  1. Přehled o požadavcích (zadané práci) a průběhu jejich realizace.
  2. Množství práce na úkolech strávených. To jednak slouží pro zjištění aktuálních nákladů projektu, dále pak pro odhady časové náročnosti úkolů budoucích.

Ne již tak zásadní, ale příjemné je i centrální místo shromažďující dokumentaci.

Toto vše Neposeda nabízí. Všimněte si, jak malý je v tomto jednoduchém modelu rozdíl mezi prací na projektu a dlouhodobým poskytováním služeb.

Základem Neposedy jsou tedy přidělené úkoly. Má pro ně čtyři základní stavy: nepřiřazený, přiřazený, ukončený a potvrzený. Úkolům jde kromě změny stavu i přidávat poznámky, pomocí nichž si ujasňujeme zadání a popisujeme řešení. Typicky sem zapisuju až výsledky diskuse, kterou vedeme přes daleko rychlejší ICQ.


Zásadní funkcionalitou Neposedy je pak vykazování hodin. Na každý úkol lze vykázat libovolněkrát hodiny a spolu s nimi datum, kdy byly odpracovány, případně i krátký popis odvedené činnosti.

Výkazy lze pak zobrazit souhrně pro vybrané období a další parametry. (Kdo najde menší bug na tomto screenshotu?).


Další využitou vlastností jsou návody, což jsou jednoduché “články”, u nichž se evidují verze. Zde máme poznamenané pro projekt důležité odkazy a složitější algoritmy, které procházejí nějakým vývojem.

Ačkoliv Neposeda ještě není připraven na úplně veřejný provoz, pokud by někdo měl zájem pomoci s jeho testováním, můžu mu vytvořit zkušební účet. Stačí napsat e-mail (moje gmail jméno je jan.kubr).

Seth

In Uncategorized on February 9, 2007 at 23:43

I like Seth Godin so much. What he says is so true and so funny at the same time. Watch this video for example.

One of the things he mentions is the “Not my job” syndrome. You can see it so often. “I know there’s something wrong here, but I’m not taking any responsibility for that because ..dadada..” I’ve always found it so frustrating to work in this kind of “I don’t care” environment. What is the point of spending the whole day doing something you don’t care about? The money you get paid? Oh come on. Work is a significant part of your life. Why don’t make it much more pleasant by providing much better service to your customers? It is always so inspiring to find people who try to do their job right.

And what about the “I’m not a fish” one? Make products you would love to use. I’m trying to do exactly that with Flempo.

Seth

In Uncategorized on February 9, 2007 at 23:21

Seth Godina si vždycky hodně užívám. Co říká je pravdivé a velmi vtipné zároveň. Zkuste například tohle video.

Jeden z důvodů, proč jsou podle Setha některé služby nebo produkty “rozbité”, je, tzv. syndrom “To není moje práce”. Setkávám se s tím hodně často a určitě nejsem sám. Něco je nelogicky, špatně nebo vůbec fungující a zainteresovaní lidé to vědí, ale nikdo s tím nic nedělá, protože nikdo nemá v popisu práce to napravit. Být v prostředí takového alibismu (na libovolné ze stran) je pro mě značně frustrující. Jaký má smysl trávit významnou část života něčím, co je mi úplně jedno? Výplata každý měsíc? Snad ne. Práce zaplňuje kolem třetiny našeho života – proč si ji neudělat příjemnější tím, že budeme svoji činností zpříjemňovat životy druhých? Setkat se s lidmi, kteří milují svojí práci, je vždy ohromně inspirující.

Sledujíc Setha, napadají mě tři věci, které by se mohlo Česko (Evropa?) od Američanů přiučit.

  1. Řečnické schopnosti. Američané jsou řečníci velmi dobří a nemyslím si, že bychom se s nimi mohli v tomto dobře poměřovat. Schopnost předávání myšlenek veřejnými prezentacemi je velmi důležitá, chcete-li, aby se o vašich názorech někdo dozvěděl.
  2. Určitá jednoduchost sdělení. Američané jsou námi často považováni za hlupáky a jednoduchost se zde příliš nenosí. Co je na první pohled zřejmé je přece povrchní a … hloupé, že? Tady se ale zapomíná na to, že lidé nemusí být hloupí, aby ocenili jasně sdělené myšlenky. Oni na vás prostě nemusí mít čas. Informací je v dnešní době tolik, že nad jedním tématem netrávíme příliš mnoho času, pokud nás nezaujme. A tou jednoduchostí samozřejmě myslím jasnost a stručnost sdělení, ne jeho obsahovou plytkost.
  3. Vztah k zákazníkům. Kdo byl někdy ve Státech, ví, o jak mnoho víc je tam zákazník středem pozornosti. Přenést to sem – alespoň částečně – je úloha mladé generace? Jsem nenapravitelný snílek.

Poslední důvodem, který Seth zmiňuje, je syndrom “Nejsem ryba”. Tím má na mysli situaci, kdy někdo vytváří něco, co sám nepoužívá. S Neposedou se tomu vyvarovávám hned dvojím způsobem: jednak vychází z mých reálných minulých a aktuálních potřeb a druhak hodlám intenzivně sbírat zákaznickou zpětnou vazbu.

A jestli je někdo na pochybách, tak ano, snažit se, aby zákazníci měli americký pocit.

Meetings

In Uncategorized on February 9, 2007 at 22:44

Good news, I don’t feel that weird anymore. I thought it was because of me being stupid, but it is also Joel Spolsky with the same feeling. I’ve always thought it’s so useless to try to figure out something complicated or detailed in a meeting. You can collect rough ideas, but not figure out a big how something should work. (And in fact it is much better to collect rough ideas on paper because you’ll get better material). It seems so much better to make someone responsible for the and give her or him a frequent feedback.

Joel says:
I can’t tell you how many times I’ve been in a meeting with even one or two other programmers, trying to figure out how something should work, and we’re just not getting anywhere. So I go off in my office and take out a piece of paper and figure it out. The very act of interacting with a second person was keeping me from concentrating enough to design the dang feature.

What kills me is the teams who get into the bad habit of holding meetings every time they need to figure out how something is going to work. Did you ever try to write poetry in a committee meeting? It’s like a bunch of fat construction guys trying to write an opera while sitting on the couch watching Baywatch. The more fat construction guys you add to the couch, the less likely you are to get opera out of it.