Работните навици са ми проблем. Преди не бяха – нямах нужда от структура в работата. Стигаше ми ясен проблем и ясен краен срок. Сядах пред компютъра и се хвърлях върху него, докато го реша. Обикновено в срок. Напоследък намирам това за по-трудно. Не знам дали загубвам способността да се фокусирам или е просто старческо слабоумие, но работата изисква концентрация, която понякога ми липсва. Съответно съм си изработил система, която да се бори с това. Ще ви разкажа за нея.
Добрите дни в текущата ми работа се делят на два вида – тези в които правя pair programming и тези, в които работя сам. Ще говоря за вторите.
В 9:00 имам stand-up. Дотогава гледам да съм се събудил и да съм закусил. Понякога тичам рано сутрин (от 6:30 до 7:00) или дори си правя сам закуската. Преди да ида на работа гледам да почета малко, за да си раздвижа мозъка. След това хващам автобус, метро и друг автобус (нето 20 минути).
После идва сутрешният stand-up. Събираме се в „project space“-а, пред „iteration board“-а. Гордея се, че срещите ни протичат като по учебник. Рядко отнемат повече от пет минути, никой не словоохотничи, никой не си позволява да седи и ако има мениджъри, мълчат. Обсъждаме кой какво е свършил, какво ще свърши днес и дали нещо му пречи.
Системата ни е простичка. Работата в текущата итерация е разбита на истории (user stories), бъгове и домакинска работа (chores). По-обемните са разбити на подзадачи. За първите ползваме картонени картички, които закачаме с магнити, докато за вторите – post-it бележки. Всяка има оценка в часове. Разпределени са в четири категории – планирани, текущи, чакащи одобрение и готови.
На всеки stand-up правим три неща – (1) обновяваме оценките на картите, (2) местим ги в друга категория (ако трябва) и (3) изчисляваме колко време и колко работа остава до края на итерацията. След като дъската е осъвременена, всеки се запътва по задачи. Някои остават да се любуват на закачките, които един колега оставя из офиса.
Аз отивам да си сипя вода, след което се връщам в „project space“-а и планирам деня.
Планирането ми се върти около The Pomodoro Technique. Идеята е проста – работите фокусирано – без никакво разсейване – за 25 минути. Един такъв интервал се нарича „помодоро“. След всяко помодоро почивате 5 минути, а на всеки четири – 15 минути.
В The Pomodoro Technique: Illustrated се разглежда подробно как това подобрява концентрацията. Но има и друго предимство. Помодоротата са добра единица за оценка на работата. Оценявам всяка задача в брой помодорота и така добивам представа какво (горе-долу) ще свърша през деня.
За да се организирам ползвам едни листове, които наричам „pomodoro sheets“. Вземам Whitelines A4 лист разграфен на квадратчета и го сгъвам по средата. От едната страна пиша датата, задачите за деня и оценката им.
На другата поддържам ToDo списък, подобен на тези в Test-Driven Development by Example. Това са по-дребни неща, които отнемат по-малко от помодоро и не искам да разбравя. Преписвам незавършените неща от предния ден. През деня списъка расте.
Разтвореният лист изглежда така:
Ползвам вътрешната страна за бележки по дизайна. Обикновено не обичам да правя up-front design – все пак за това пиша тестове. Но понякога нямам ясна идея докъде искам да докарам кода. Затова в повечето сутрини отделям 15-20 минути да направя дизайна на всичко, което ще правя през деня. Най-често зарязвам тези идеи за по-добри, които са ми дошли докато пиша кода. И все пак намирам практиката за полезна – помага ми да обхвана в главата си всичко, което ще правя. По-късно ми спестява чудене как да продължа напред.
Цялото упражнение отнема към 25-30 минути. След това оставям листа на бюрото си (така че да се вижда ToDo списъка) и правя кратка почивка, в която се снабдявам с вода и кафе или чай.
После се захващам за работа.
Ползвам таймер за помодоротата. Преди да го пусна слагам накитници и слушалки и се уверявам, че има достатъчно музика, вода и кафе/чай за следващите 25 минути.
По време на помодорото не си позволявам да се разсейвам. Не проверявам поща, Google Reader, Twitter или Facebook. Пред мен има само TextMate, терминал и Firefox. Не ставам от компютъра докато съм в помодоро. Колегите ми са наясно с моя ексцентризъм и не ме прекъсват, докато съм със слушалки. Освен ако не е нещо важно.
Таймерът ми е iPhone приложение (PomodoroPro). Изглежда е написано по много идиотски начин, понеже е напълно способно да изпие батерията за един ден. По тази причина го държа dock-нат под монитора.
Когато таймерът звънне, пускам всичко и ставам от компютъра. Обикновено отивам в „project space“-а където има топки за жонглиране.
Подмятам ги за пет минути. Понякога се зачитам в нещо или разговарям с колегите (стига да не са концентрирани). Опитвам се да проверявам пощата само в 15-минутните почивки, но това ми се отдава по-рядко. Когато таймерът звънне отново, оставям топките/книгата/колегите, измивам си ръцете и се връщам към кода.
Това миене на ръцете на всеки половин час ме кара да се чувствам като хирург. А начина, по който подскачам на часовника, кара колегите ми да ме сравняват с един герой от Бамсе.
През деня бюрото ми изглежда така:
От ляво държа ToDo списъка, който ползвам често. Отдясно има освежаващи напитки. Ако цъкнете на снимката, ще видите подробни коментари на всичко по него.
ToDo списъкът е един от най-важните ми инструменти. Често работя над нещо и откривам, че трябва да рефакторирам друго или да напиша нов тест. Вместо да се захващам веднага, аз го записвам и продължавам. Правя го след като приключа. Често ми се случва да запиша 4-5 неща докато добавям нова функционалност и после да ги оправя едно по едно. През деня постоянно добавям и отмятам задачи в него. Често съвпадат с commit-ите, които съм направил. Когато приключа е набъбнал.
Същото важи и за списъка със задачите.
Можете да видите, че съм подценил едни и надценил други. В първите случаи, правя нова оценка и отбелязвам допълнителните помодорота с кръгчета. Ако и те не ми стигнат, новата оценка е с триъгълничета. Трия си сол на главата за всяко триъгълниче.
И бележките по дизайна набъбват.
Преди да си тръгна оставям pomodoro sheet-а върху бюрото си – ползвам го на следващия ден за да си припомня откъде да продължа. Вчерашния прибирам в едно чекмедже, където държа всички до момента.
Старите листове изглеждат полезни за статистика, но все още не съм превъзмогнал мързела, който ме възпира да направя такава. Имат приятна емоционална стойност – понякога ги разглеждам и си припомням какво съм правил през февруари. Купчината не е толкова внушителна, колкото ми се иска.
И това е. После се запътвам към вкъщи, където гледам да не нося работа. Ето още няколко бележки:
- ToDo списъкът ми е кръстен „Beck“ на Kent Beck от когото откраднах тази практика.
- Нямам никаква идея защо водя бележките си на английски. Вероятно защото двата езика в офиса са английски и Ruby. Не съм пробвал да ги водя на Ruby.
- По-рано използвах тетрадка за да записвам разсъжденията по дизайна. Така ми харесва повече.
- В по-голямата си част това е базирано на The Pomodoro Technique: Illustrated, която горещо ви препоръчвам.
- Ползвам таймер и за почивките. Иначе ги проточвам над 5 минути.
- Не всички дни смогвам да работя така. Въпреки това, усещам че тези дни обикновено са по-продуктивни от другите.
- Всички снимки са качени във Flickr. Ако това ви е било интересно, сред тях има допълнителни коментари.
Ще се радвам да чуя ако ви е било интересно. Също ще се радвам да разбера как работите вие.
Много интересно, доста полезни бележки мисля да си взема. Поприцип тази година доста си променях начина и организацията ми на работа. Но въпреки това не постигам нужните резултати, което до някъде се дължи смяната на квартири (все пак работя главно от вкъщи) и посещенията ми до офиса. п.п. преди време бях описал как минава една моя седмица и реално когато ходя до офиса все още вървят така нещата – http://blog.rstankov.com/2009/07/02/%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%BA-%D0%BD%D0%B0-%D0%B5%D0%B4%D0%BD%D0%B0-%D0%BC%D0%BE%D1%8F-%D1%81%D0%B5%D0%B4%D0%BC%D0%B8%D1%86%D0%B0-%D0%BF%D0%BE-%D0%B7%D0%B0%D1%8F%D0%B2%D0%BA%D0%B0/
Бих искал да отбележа, че ти се възхищавам за уникалния режим.
Въпреки, че и до ден днешен си работя от вкъщи, трябва да се опитам да го възпроизведа и в домашни условия. Неприятното е, че вкъщи по време на почивките не винаги са налице обекти, с които да проведа нормален човешки разговор, но пък и дистракторите са по-малко…
Харесва ми това „двайсетипетминутибездаспирам“. При мен е 10 минути писане, 10 минути разсейване (поща, reader…). Ще пробвам да се контролирам….
ROFL @ „ако има мениджъри, мълчат.“ :)))
Много са ми полезни подобни съвети; смятам да приложа доматите като започна работа пак. А защо точно 25 минути? Никога не е бил интервал, в който мога да завърша нещо. Мислех си по-скоро за 40-50. Ще видим.
Намирам спорта през седмицата за жизнена необходимост при все, че прекарваме по 8+(, а понякога 8++++…) часа дневно на стол. И съквартирантката ми успява да спортува сутрин, аз обаче съм смотана и не мога да се организирам да стана толкова рано. Съответно, ходя вечер на салса. Много добър начин човек да се отърси, когато е зациклил.
Относно работното място – аз имам нужда от странни неща, които да ми създават творческа обстановка. На последното работно място си градях пирамида от празни кутии от Coca-Cola Light. Ядосвах се какво огромно количество от чашки, кутии и пр. отиват на боклука всеки ден и почнах да си ги събирам. Кръстих си пирамидата „Pool of Resources“. И я ползвах да си представям схеми докато мислех решения за „Resource Pools“.
Както чичката беше казал „I am not a great programmer, I am a good programmer with great habits.“. Одобрявам насоката!
Фредерик Тейлър би се гордял с теб, ако изключим факта, че си позволяваш да почиваш 😛
Не ми харесва. Може и да е ефективно, но не е приятно. Това е като да знам какво ще вечерям следващата сряда. Освен това си мисля, че разграфяването на деня на примерно 10 задачи носи повече напрежение от простата мисъл, че днес имаш задачата да работиш. Между другото и аз пиша със слушалки, та и моите колеги са се научили да не ме прекъсват, особено късно вечер, когато вече съм набрала и скорост 🙂
Страхотна подредба!!! Според мен е доста полезно. Смятам да прочета книгата.
Леле не знам как съм учил и работил преди да прочета за тази техника. От три дни я ползвам и се чувствам много по-продуктивен и успявам да си свърша работата доста по-бързо.
Много интересен артикъл само не разбрах едно – ползваш iphone-а си с някакъв софтуер, който се казва PomodoroPro, a това, което разбирам е, че просто ти трябва таймер на 25 мин да пищи. Аз лично бих ти препоръчал да ползваш вградения ако си с iOS 4 ор хайър.
Чиърс.
Би трябвало да е очевидно, но iPhone приложението има разни екстри. Ако не друго, помни колко помодорота съм направил и ми дава 15 минутните почивки между всеки 4 помодорота.
Така и си помислих. Просто не съм огледал още приложението. Както и да е – идеята е страхотна.
Много полезно! И лекцията днес беше брилянтна! Евала! Ще пробвам!
Working days | On the road
Цели за момента « MOB | Memory overflow buffer