Watcher, azaz munkaidő trackelő
2006-tól két évet töltöttem egy magenta multinál (csak akkor még egy leányvállalat leányánál) és hát, ahogy ezeknél a lassan mozduló mamutoknál szokás, a munkaidőt követni és jelenteni kellett, szerencsére "csak" fél órás felbontásban.
Volt egy fantasztikus Visual Basic (!) "alkalmazás", amivel egy MS Access adatbázisba lehetett ezeket adminisztrálni. De nem is a technikai megvalósítás itt a kérdés igazából, hanem az, hogy ezekre az információkra hogyan kellene egyáltalán emlékezni.
Az egyik megoldás ugye, hogy amikor taszkot váltok, akkor rögtön adminisztrálom is az eseményt, illetve beírom az előző taszkváltás óta eltelt időt. Ezt meglehetősen kivitelezhetetlennek éreztem, tekintve, hogy a taszkok nem sorban, fél órával osztható granulátumokban jönnek felém, hanem teljesen szétszórtan és én is pont ugyanígy kezelem őket (a mai napig).
A másik megoldás, hogy minden nap végén, esetleg több nap végén (mondjuk egy csendes péntek délutáni időszakban) megpróbálok visszaemlékezni, hogy mi történt a héten. Ez is kihívásnak bizonyult, mert az én memóriám nem annyira terjedelmes, hogy akár csak a főbb feladatokat fel tudjam idézni, úgyhogy ilyenkor jött az, hogy megnéztem a heti e-mail forgalmat, hátha abból kiderül, hogy melyik nap miket csináltam és beblöfföltem az időket.
Elég sokszor előfordult, hogy a jelentés és a valóság közötti átfedés 50%-nál kevesebb volt, így elgondolkodtam, hogy milyen technikai megoldással tudnám mégis kideríteni, hogy mire ment el a drága idő. Az egyik, hogy talán pontos lesz a jelentés, a másik, hogy - számok és statisztikák kedvelőjeként - számomra is kiderül egy halom érdekes részlet, a harmadik pedig, hogy ez egy remek szakmai kihívás.
Így született meg a watcher.exe, ami egy borzalmasan egyszerű szoftver volt: másodpercenként megnézte, hogy milyen program van fókuszban és beírta egy naplófájlba, valahogy így:
2021-05-05 23:30:48 Startup
2021-05-05 23:30:49 Watcher 3448 watcher.exe
2021-05-05 23:30:58 {W:\52het\53-2006-watcher} - Far 22872 ConEmu64.exe
2021-05-05 23:30:59 view watcher.log - Far 22872 ConEmu64.exe
2021-05-05 23:31:03 Process watcher, logger - Brave 16988 brave.exe
2021-05-05 23:35:25 view watcher.log - Far 22872 ConEmu64.exe
2021-05-05 23:35:27 {W:\52het\53-2006-watcher} - Far 22872 ConEmu64.exe
2021-05-05 23:35:30 edit watcher_unit.pas - Far 22872 ConEmu64.exe
a watcher.exe működés közben
Egyéb funkciói: tud indulni a Windows-zal, elfér a tálcán az óra mellett, rögzíti, hogy mikor un/lockolódik a gép (ugye nem biztosítunk lehetőséget a troll kollégáknak vicces háttérképek beállítására! :), így látszik az ebédidő, megbeszélés az irodán kívül, stb.
Forráskód a githubon.