Za dużo danych

26 II 2010, 01:32

Do czego nadają się zakładki w przeglądarce? Do niczego. Dzisiaj robiłem porządki i z uzbieranych na przestrzeni ostatnich dwóch lat linków, prawie wszystkie poszły do kosza. Kiedyś dodałem je z założeniem, że przeczytam w wolnej chwili. Takowa nigdy nie nadeszła. Za dużo informacji, za mało czasu, by je przyswoić. Drażni mnie to.

W pracy używamy paru bardziej skomplikowanych technologii. W latach mogę liczyć czas, jaki zajmie mi poznanie ich w stopniu wystarczającym, by następny pracodawca mógł mnie zatrudnić i powiedzieć:"tu masz wytyczne, zrób tak, żeby od razu działało". Ale taka jest charakterystyka mojego zawodu -- co jakiś czas uczyć się nowych systemów abstrakcji i sposobów myślenia o problemach, po czym stosować tę wiedzę w praktyce. Jeśli chcę, żeby pracodawcy/klienci mnie cenili, muszę umieć ten proces sprawnie przeprowadzać. Z każdą kolejną iteracją coraz sprawniej. Przyswajając nową wiedzę muszę myśleć o tym, żeby następnym razem szło mi to lepiej.

Niestety (?) taki rygor myślowy i podejście zadaniowe to nie jest coś, co można po prostu wyłączyć. W takich samych kategoriach myślę o właściwie dowolnej innej czynności. I tu się pojawia problem z nadmiarem danych. W domenie zawodowej za decydowanie na jakim konkretnie wycinku wiedzy powinienem się skupiać, odpowiada mój szef. To jego biznes, on decyduje nad czym należy pracować, żeby klientom się podobało. Potrzebujemy funkcjonalności X? Ok, trochę poszukam, potestuję, po czym znajdę najbardziej obiecujące podejście i zacznę się w nie wgryzać.

Ale w przypadku mojego życia, to ja jestem szefem. Ja oceniam wymagania, ja dobieram priorytety, zawężam pole poszukiwań, wybieram konkretne rozwiązanie, wprowadzam je w życie, obserwuję wyniki, porównuję z oczekiwaniami, koryguję. I to wszystko mocno po omacku. Homo sapiens nie ma instrukcji obsługi.

Nadmiar danych, niedobór czasu. Jakieś półtora miesiąca temu spędziłem z ładnych kilkadziesiąt godzin wgryzając się w egzystencjalizm (tak, jestem w tym wieku). Była to dobra inwestycja czasowa, bo, choć nie znalazłem tam rozwiązań, to znalazłem pewną strukturę, dzięki której wiem na czym mogę się skupiać, a w przypadku czego traciłbym tylko czas.

Ale to było tylko mocno wysokopoziomowe myślenie, "filozofia życiowa". Jak, kiedy i w jakiej kolejności zabrać się za rozgryzanie bardziej przyziemnych spraw? Kilka przykładów takowych:

  • Matematyka nie kłamie: za mojego życia przeludnienie oraz niedobory surowców materialnych będą problemem. Jak i czy w ogóle mogę się zabezpieczyć przed skutkami?
  • Emerytura i ogólnie inwestycje. W co? Ile? Wiem, że nasz system emerytalny nie ma prawa przeżyć w obecnej formie przy obecnej demografii. Wiem też, że system giełdowy jest obecnie bardzo mocno oderwany od rzeczywistej produkcji, a ujemny przyrost naturalny działa dodatkowo na niekorzyść. Jak długo mogę nie znać odpowiedzi na te pytania? Każdy rok, w którym nic nie inwestuję drastycznie zmniejsza moje przyszłe zyski.
  • Ze spraw bardziej krótkoterminowych: na czym powinienem się skupiać zawodowo? W czym się doszkolić? Jakie są moje cele finansowe? Jakie są w ogóle kierunki rozwoju mojego sektora gospodarki?

Każde z powyższych rozbija się na sporą ilość podproblemów, nawet tak prozaicznych, jak wygląd. Przez większość życia ubierałem się byle jak. Czy widzę się za pięć lat na stanowisku kierowniczym? A jeśli tak, to może wypadałoby sobie zacząć powolutku podwyższać poprzeczkę jeśli idzie o sposób ubierania się?

A może nie, bo nie mam tyle czasu, żeby zajmować się wszystkim na raz. Natomiast funkcjonalnie by było, gdybym mógł za rok albo trzy powrócić do rozważań na ten temat i porównać moje obecne wnioski z przyszłymi. Zapewnienie takiej trwałości zgromadzonej przez siebie wiedzy jest samo w sobie ambitnym zadaniem.

Parę lat zajęło mi opracowanie systemu zarządzania informacjami, w którym się nie gubię i który się w miarę sprawdza. Jest to temat na osobną notkę, którą prędzej czy później naskrobię, ale na razie tylko wymienię, że w chwili obecnej na bieżąco korzystam z: mindmap, KDE-owych żółtych karteczek, KDE-owego minutnika, KOrganizera, papierowego megadziennika (w którym prowadzę m.in. dziennik pracowy), mniejszego prywatnego dziennika, kilku notatników z wyrywanymi kartkami, karteczek przyczepianych magnesami do tablicy, pióra na naboje, bit.ly oraz blipa. A ponieważ dzisiejsze porządki w zakładkach uświadomiły mi poważne niedobory stosowania do pewnych zadań kombinacji bit.ly, blipa oraz megadziennika, więc szykują się tu w najbliższym czasie większe modyfikacje.

I skoro mam już za sobą ten przydługi wstęp, to chciałbym przejść do meritum: czy któryś z czytelników może polecić delicious, albo podobny serwis, bo ostatnio zacząłem rozważać korzystanie z tagowania linków? ;)

Tipsy dla pracujących w domu

26 X 2009, 20:55

Jak człowiek siedzi w domu i się obija zamiast pracować, to go nachodzą różne dziwne pomysły. Np. na zrobienie sobie tipsów. Różowych.

Ewentualnie można też coś kombinować. Ja praktycznie od początku, czyli już ładnych paru lat, miałem problemy z systematyczną pracą. Przez jakiś czas się pracowało dobrze, później coraz gorzej, później się odbijało (oh, pardon), znowu jakiś czas dobrze... i tak w nieskończoność. Bardzo męczące i frustrujące. W małych firmach jeszcze o tyle upierdliwe, że człowiek ma świadomość, że jak czegoś nie zrobi, to zastępstwa za bardzo nie ma, zadanie będzie niezrobione, kontraktu nie będzie, pieniędzy nie będzie, firma upadnie, na kredyt nie starczy, dom zabiorą, dzieci będą głodne chodzić, AAAAAAAAA!

Ostatnio miałem kolejny, przedłużający się cykl Problemów z Zabraniem się do Pie... Roboty (aka PZPR), więc się wkurzyłem i zaproponowałem szefowi System -- ja mu codziennie najdalej w południe (ach ten unormowany tryb dobowy) piszę na żabie co zrobiłem wczoraj i co mam zamiar robić dzisiaj (w formie dwóch zdań; aspołeczny nerd jestem, więc często nawet "hi" nie mówię). On natomiast ma pamiętać, że jak godzina zero minie, to ma się dopytywać wtf i o co kaman.

Jak na razie się sprawdza, a i szefowi odpowiada, bo na bieżąco wie co ja tak właściwie w danym momencie robię. Miejmy nadzieję, że System nie będzie kolejnym krótkofalowym motywatorem, ale okaże się skuteczny już na stałe.

A, i w ramach kombinowania jakby tutaj się odgrzebać spod stosu papierowych notatek, jakiś czas temu postanowiłem wypróbować MindMapy (via FreeMind) i okazało się to być bardzo funkcjonalnym i ładnym rozwiązaniem. Ale o tym kiedy indziej.

Moje biuro

25 VIII 2009, 15:06

Oto w jakich warunkach przyszło mi pracować, wypruwając sobie żyły dla kapitalistycznego oprawcy! Tylko spójrzcie!

Summer office

(Na ziemi leży druga klawiatura, na której piszę palcami u stóp. Dwudziestopalczasty touchtyping FTW!)

Papierologia, grrrrr

17 VI 2009, 00:03

Poziom sproceduralizowania społeczeństwa jest idiotyczny. Właśnie ćwiczę przeprowadzanie się ze średniej wielkości miasta do stolicy i ilość rzeczy, które muszę załatwić jest zastraszająca.

Sprzedaż mieszkania to dogadanie się z agentem od nieruchomości (i to jest ta mniej czaso-, ale bardziej pieniądzochłonna opcja), przyjmowanie oglądających mieszkania, podpisanie umowy przedwstępnej, podpisanie finalnego aktu notarialnego, później latanie z nim (oraz możliwe, że z nabywcą mieszkania) po dostawcach prądu/gazu/internetu, żeby porozwiązywać umowy oraz wpadnięcie do spółdzielni mieszkaniowej (w dwóch różnych lokalizacjach), żeby zrezygnować z członkostwa oraz się wymeldować. A, no i jeszcze w ciągu dwóch tygodni od sprzedaży trza do US-u odpowiedni formularz wysłać, żeby mnie nie opodatkowali.

Sprzedanie mieszkania to oczywiście także konieczność przemeldowania się w którymś urzędzie (co chyba wiąże się ze zmianą dowodu?), a później aktualizacja danych w różnych bankach i urzędach (np. w US-ie by się przydało). Ja i tak mam dobrze, że mogę się na jakiś czas u rodziny zameldować, bo z czasowo wynajmowanym w Warszawie mieszkaniem to bym miał pewnie kupę dodatkowej radości.

No a ponieważ mam mieszkanie jako siedzibę dla działalności gospodarczej, to (znowu unikając wersji bardziej upierdliwej, czyli przenoszenia się z działalnością od razu do Warszawy) muszę znaleźć nową siedzibę, uzyskać zgodę właściciela tejże siedziby (spółdzielnia), żeby mi aktualny najemca mógł kawałek podnająć, podpisać umowę podnajmu, iść do jakiejś firmy zrobić sobie baner (bo muszę go mieć), po czym słać do spółdzielni pismo, że chcę powiesić takich rozmiarów baner tu i tu, a na koniec czekać, aż przyjdzie jakiś szpec, popatrzy na moją wybraną lokalizację i zaaprobuje wniosek. A jak już sobie przywiercę co trzeba gdzie trzeba, to czas zacząć latać do banków i US-u (kto wie gdzie jeszcze, Urząd Miasta, ZUS?), żeby zaktualizować swoje dane.

W międzyczasie była jeszcze wycieczka do Wawy, oglądanie mieszkań i podpisanie umowy najmu.

I to ja jestem ten bardziej ceniący swój czas przedsiębiorca, bo mam biuro księgowe, więc nie muszę się aż tak bardzo martwić bieżącą papierologią :/

Grrrr. Zaczynam się bać co to będzie, jak za parę miesięcy przyjdzie czas kupować mieszkanie.

Już abstrahując od tego, że zrobienie tego wszystkiego jest skomplikowane (trzeba najpierw się dowiedzieć, a później pamiętać o sporej ilości rzeczy), to problem jest taki, że jest to cholernie czasochłonne. Ciekawym, czy jest już dostępny jakiś mass-marketowy outsourcing takich rzeczy. I to taki z ubezpieczeniem OC, żebym mógł się domagać odszkodowania, jak coś zrobią źle.

Coś się zaczyna

03 V 2009, 02:06

Zgodnie z planem za dwa miesiące powinniśmy już z narzeczoną mieszkać w Warszawie, więc spędzamy sporo czasu rozważając wszystkie za i przeciw i upewniając siebie nawzajem, że to jest właściwy wybór. Wad przenosin jest sporo, główne to wysokie koszty życia, w tym idiotycznie wysokie ceny mieszkań (i niechęć do brania kredytu na 30 lat), a w konsekwencji poważne problemy z posiadaniem dzieci, bo te dzieci trzeba za coś utrzymać.

W Opolu takich problemów nie ma, ale tylko przy założeniu, że do końca życia będę pracował zdalnie, zarabiając pensję warszawską, a wydając ją tutaj. Bardziej prawdopodobne, że prędzej czy później musiałbym znaleźć robotę na miejscu. I wtedy stałbym się bardzo smutnym człowiekiem.

Ale tak naprawdę tutaj trudno nie stać się smutnym człowiekiem. Gdy byłem sam, moje życie składało się z pracy w domu, różnej maści treningów pięć dni w tygodniu, stołowania się w lokalnych restauracjach i spędzania czasu ze znajomymi z radia studenckiego. Z Magdą nasze życie składa się w zasadzie z dokładnie tego samego (powiedzmy, że jej studia odpowiadają mojej pracy), tylko w innych proporcjach (domowe obiadki zamiast restauracji, mniej treningów i znacznie mniej znajomych).

Wtedy miałem tego po dziurki w nosie i teraz też mam (a Magda ze mną), tak się po prostu na dłuższą metę nie da żyć. Jeszcze gdy byliśmy sami, spędzanie czasu ze znajomymi było o tyle ciekawe, że coś trzeba jednak robić, żeby się nie zanudzić na śmierć, a przy okazji można szukać partnera. Ale teraz? Mamy parunastu wspólnych znajomych oraz grupę ludzi, których znamy ze studiów, gdzie ja studiować przestałem dawno temu, a Magda przestanie za półtora miesiąca. Ze znajomych, z którymi któreś z nas utrzymuje regularny kontakt, praktycznie wszyscy są, w dowolnej kombinacji: sami, młodzi, dopiero testujący kim są i co lubią, bez konkretnych planów co robić w życiu, bądź z planami sprowadzającymi się do zachowania status quo.

Chcę sobie pogadać z kimś na tematy zawodowe? Nie mam z kim. Magda chce sobie pogadać z kimś doświadczonym w branży na tematy zawodowe, żeby mieć jakieś pojęcie w którą stronę najlepiej próbować? Nie ma z kim. Chcielibyśmy sobie spędzić czas w gronie znajomych na podobnym etapie życia? Nie mamy takich. Chcielibyśmy sobie pogadać z kimś starszym, preferowalnie już dzieciatym, o tym jakie wybory mamy do dyspozycji i co nas może czekać w przyszłości? Nie mamy z kim.

W tym mieście po prostu praktycznie nie istnieje pewna kategoria ludzi. Jak niedawno byłem u honejów, to ich do późna w nocy zamęczałem gadaniem na te tematy, bo ja fizycznie nie mam z kim o tym rozmawiać, a rozmawiać chcę, bo to są sprawy, które bezpośrednio dotyczą mnie, nas, w tej chwili. I to są decyzje, które musimy podejmować i nawet nie mamy się kogo zapytać o dostępne scenariusze.

Tak, możliwe, że się przeliczymy. Że w Warszawie wszyscy będą tylko zapierniczać jak małe samochodziki i nikt na nic nie będzie miał czasu. Że jako ojciec stwierdzę, że i tak nie mam ani czasu ani ochoty na absolutnie nic innego poza zajmowaniem się dziećmi i żoną.

Ale kurwa mać najpierw sprawdzę wszystkie możliwe sposoby na to, by mieć ciastko i zjeść ciastko, zanim po prostu rzucę ręcznik i oleję wszystko.

A zacznę od otoczenia się ludźmi o podobnym nastawieniu.

Pracy szukam. W Wawie.

03 IV 2009, 17:25

W skrócie: jeśli ty lub twoja warszawska firma chcielibyście zatrudnić lekko zużytego mmazura, to prosiłbym o maila, albo żabę (jedno i drugie: mmazur@kernel.pl). Będę też wdzięczny za informacje (może być w komentarzach) o ludziach/firmach, którym mogę się ponarzucać oferując swoje usługi :)

Długa wersja:

Dzisiaj rano się obroniłem, więc jestem w końcu panem inżynierem. Tylko dyplom będzie dopiero gdzieś za miesiąc.

Czas zacząć się rozglądać za robotą. Optymalnie by było od mniej-więcej czerwca się już gdzieś zatrudnić i zacząć przenosić, bo Magda akurat będzie kończyć ostatni semestr.

Co chcę robić i co umiem? Tu jest mój profil na LinkedInie, ale to tylko suche informacje. Po prawie czterech latach pracy zawodowej wiem tyle:

1. Najszczęśliwszy jestem, jak ktoś mi raz na jakiś czas daje coś, czego jeszcze nie robiłem z przykazem, żeby się nauczyć. Lubię czytać, a jak mam po co, to mogę i całą dokumentację techniczną od deski do deski przeczytać (ostatnio tak zrobiłem bodajże z mercurialem).

2. Bardzo lubię technologie linuksowe. Wyrosłem na PLD, więc jak jakieś pół roku temu musiałem doprowadzić kilkadziesiąt ubunciaków do stanu używalności, to miałem fajną zabawę porównując sposoby budowania pakietów, maintainowania repozytoriów i takie tam.

3. Lubię systemy równoległe. Kodowaniem czegoś takiego w C na kilkadziesiąt systemów i kilka gigabitów łącza zajmowałem się przez jakieś dwa lata pracy, a ostatnio kazali mi zainstalować Hadoopa z pythonem. Wygląda to naprawdę fajnie, chętnie bym się czymś takim zawodowo trochę więcej pobawił. Nawiasem mówiąc muszę dokończyć swoje proste patche na hadoopa i im wrzucić do bugrackera.

4. Po wielu latach w końcu udało mi się opanować umiejętność pracy z domu. Serio, zaczynanie życia zawodowego od czegoś takiego jest wybitnie niewskazane. Trudno się samemu zmusić do jakiejś systematyczności.

5. Wspominałem już, że lubię technologie linuksowe?

No i to by było na tyle autopromocji. W skrócie: wolę programowanie (Python!), preferowalnie w systemach równoległych, acz mam wystarczająco dużo doświadczenia z adminowaniem, by się bardzo swobodnie czuć w środowisku linuksowym. Tyle.

Proszę, przygarnij mmazurka.

Rynek IT a recesja?

13 XII 2008, 13:50

W tym odcinku, dla odmiany, jest pytanie do publiczności.

W dosyć krótkoterminowych planach (6 miesięcy) mam wyjazd do Warszawy, D.C. Wiąże się to ze zmianą pracy na jakąś "normalną", w sensie nie-zdalną.

No i powstaje problem -- czy za sześć miesięcy w ogóle będzie dało się gdziekolwiek zatrudnić? O ile rozumiem skutki globalnego kryzysu są u nas odczuwalne z lekkim lagiem, ale są. Ma ktoś jakieś doświadczenia? Coś już się na naszym lokalnym rynku zaczęło ruszać w tej kwestii? I jakieś przewidywania na najbliższą przyszłość?

Zostanę humanistą, może socjopatą?

16 XI 2008, 01:53

Nudzi mi się. W obu pracach robię właściwie za admina, w jednej od xena z PLD, w drugiej od blade'ów z Ubuntu. Jednak chęć dogłębnego rozumienia dystrybucji, której używam, wyniosłem z młodości, więc poznawanie Ubuntu (i różnych dziwadeł typu glusterfs) jest całkiem ciekawe, ale... to jednak praca. Gdyby mi za to nie płacili, to bym się za to nie zabrał.

Od paru lat mam ten dziwny stan, gdy poznawanie nowych technologii to tylko kwestia czasu, a nie jakiegoś wyzwania. Mam już wystarczająco cierpliwości, żeby po prostu przeczytać całą dokumentację od początku do końca, jeśli jest mi to rzeczywiście potrzebne (mercurial pwnz), ale żeby np. zainteresować się architekturą tegoż mercuriala? Wgryźć się we wnętrzności i napisać patcha, czy dwa? No cóż, radocha z tego, że upstream mergnął moje wypociny zdecydowanie maleje z każdym wytworzonym patchem, tak, że w chwili obecnej najpierw się zastanawiam, czy mogę bez danej funkcji żyć, później, czy mogę sobie zrobić jakiegoś własnego hacka, a dopiero na końcu rozważam grzebanie w źródłach, po czym kończę rozważania i idę pooglądać następny odcinek House'a. Case in point: w trakcie czytania hgbooka poprawiłem parę literówek, ale przy błędach w treści ograniczyłem się do wysłania maila autorowi. Jego sugestię, bym poprawił i podesłał patcha olałem. Nie chciało mi się zastanawiać jak to poprawnie rozwiązać :(

Eh. Pewnie kwestia wyrobienia magicznych 10k godzin.

Dlatego zacząłem szukać rzeczy, których mógłbym się uczyć od początku.

Poszedłem studiować filozofię i w sumie się nie zawiodłem. Poza sporą ilością głupot [1], jednak regularnie dostaję niewielką dawkę ciekawych dla mnie informacji na temat genezy obecnej nauki i jak ona się wpisuje w szerszy kontekst. Swoją edukację filozoficzną zakończę najprawdopodobniej po pierwszym roku, więc i tak będę musiał sobie po prostu znaleźć książkę na ten temat i doczytać, ale nie powiem, żeby nie było warto. Ciekawe to, a kadra jest zaskakująco dobrze wykwalifikowana.

[1] Ktoś chce, żebym mu wytłumaczył implementację obiektowości w Pythonie w terminach Platońskich idei? Bo umiem. Nie wiem po co, ale umiem.

Ale to mało. W piątek byłem na organizowanym przez politologów wykładzie z rednaczem Gazety Opolskiej, Markiem Świerczem. Ciekawie facet gadał i przynajmniej już wiem dlaczego zawód dziennikarza nie jest dla normalnych ludzi.

Parę tygodni temu stwierdziłem, że ponabijam się trochę z humanistów i wraz z moją kobietą wybraliśmy się na pierwsze w tym roku akademickim spotkanie socjopatów internetu. Plan na ten rok jest taki, żeby wymyślić jakąś definicję "bliskości w tle" [2], po czym stwierdzić co w tejże bliskości jest sensownym zbadać, jak to zbadać (jeśli w ogóle się da), no a na końcu zbadać. Nie ma jak precyzyjne cele, ni? :) Nie pomaga fakt, że prowadzący jest mocno chaotyczny i trzeba go trochę popchnąć, żeby cokolwiek się ruszyło.

[2] Oryginalny termin: ambient intimacy. W skrócie: utrzymywanie kontaktów towarzyskich przez w znacznej mierze pasywne śledzenie blogów, naszych klas, statusów gg, etc.

Ale znowu, opłaciło się. Mi się wcześniej wydawało, że badanie w którym nie uczestniczy statystycznie sensowna grupa osób i z którego później nie wychodzą jakieś liczby (tzw. badanie ilościowe), to tylko strata czasu, bo tak naprawdę nic się z tego przydatnego nie dowiaduję (nie mogę uogólniać, wyciągać wniosków aplikowalnych do większej grupy ludzi). Właśnie czytam książkę "Prowadzenie badań jakościowych" (badania jakościowe to te z których nie wychodzą liczby) i jest tam bardzo prosta argumentacja, mniej więcej w ten deseń: nie zawsze się da przeprowadzić badanie ilościowe, więc bez badań jakościowych byśmy uniemożliwiali jakikolwiek typ poznania pewnych fragmentów rzeczywistości. No i w sumie... kilka obszernych wywiadów z paroma przedstawicielami jakiejś kultury da mi zawsze większe o niej pojęcie, niż kompletny brak danych (z badań statystycznych na pięciu kosmitach mi praktycznie z definicji wyjdą głupoty, więc już lepiej ograniczyć się do wywiadów i obserwacji zachowań).

Zainspirowany nowym odkryciem podharcerzyłem mojej kobiecie (studiuje polonistykę) "Teorie badań literackich" Zofii Mitosek i spora część wstępu okazała się poświęcona zagadnieniu: czy w badaniach literackich daje się cokolwiek ustalić i czy istnieje jakaś spójna metodologia. Wniosek nie był zerojedynkowy, ale dowiedziałem się przynajmniej tyle, że naukom humanistycznym i owszem udało się co nieco ustalić. Scenopis trudno pomylić z powieścią, co to jest narrator i podmiot liryczny pewnie większość osób wie, a terminy takie jak geneza, funkcja, czy struktura utworu są używane w większej ilości nauk humanistycznych. I nie powstała ta wiedza w ramach rozwoju fizyki, czy matematyki.

I żadnej z tych rzeczy nie dowiedziałbym się, gdyby nie studia na uniwerku.

...a w następnej kolejności rozważam kurs gotowania.

Zwyciężył mercurial

27 VIII 2008, 02:21

Vide ostatni wpis. Mercurial jest fajny, bo:

1. Nie jest gitem. Jest specjalnie robiony w taki sposób, żeby być jak najbardziej intuicyjny w użyciu i nie straszyć ludzi nadmiarem opcji (większość bardziej zaawansowanych komend jest domyślnie nieaktywna i trzeba je aktywować w konfigu).

2. Jest w pythonie. Lubimy pythona.

3. Posiada równoważnik najważniejszych funkcji darcsa -- poleceń record/pull, w postaci poleceń record/transplant.

4. Ma out of the box (acz domyślnie nieaktywną) bardzo potężną funkcjonalność Mercurial Queues, które są implementacją koncepcji quilta w oparciu o VCS. Jest to naprawdę zajebista i prosta w użyciu zabawka. Na chwilę obecną w pracy zajmuję się dokładnie tym, co opisywałem w poprzednim wpisie -- grupuję sobie poszczególne commity składające się na implementację jednego konkretnego ficzera, po czym folduję je w jeden (a następnie zmieniam im kolejność, żeby rzeczy branch-specific były zawsze commitowane ostatnie). I nawet jak hg już się dorobi rebase'a, to i tak najprawdopodobniej nie będę z niego korzystał, bo MQ też w bardzo prosty sposób umożliwia zsynchronizowanie się z nowszą wersją upstreama.

I nowy 7thguard będzie trzymany właśnie w mercurialu. Najprawdopodobniej w MQ.

Wheeeee, dawno już nie miałem tyle radochy z nowego narzędzia.

Na ringu zostały: mercurial i git

24 VIII 2008, 19:34

Distributed VCS-y są fajne, od paru lat w pracy używałem darcs-a. Problem z darcsem jest taki, że (a) ma w cholerę bugów i (b) praktycznie rzecz biorąc jest martwy. Czas na alternatywy.

Ostatnio bawię się bazaarem m.in. dlatego, że PLD przeszło na launchpad.net z którym bazaar jest domyślnie zintegrowany, więc gdyby kiedyś mi się nudziło i przerzuciłbym PLD-owego CVS-a do bazaara, to od razu mielibyśmy integrację z bugtrackerem. Poza tym bazaar jest dosyć intuicyjny, Shuttleworth przekonująco pisze, a całość jest w Pythonie.

Problem: nie odpowiada on mojemu trybowi pracy.

Darcs ma dwie wielkie zalety:

1. Polecenie do robienia commitów jest domyślnie interaktywne, tzn. pyta się czy zapisać każdą jedną zmianę w każdym pliku. Brzmi wkurzająco, ale, po pierwsze, wystarczy nacisnąć 'a' (all) i z głowy, a po drugie oznacza to, że mogę, mając kompletnie rozgrzebany plik z kodem, zauważyć, że właśnie stworzyłem self-contained zmianę i sobie ją commitnąć niezależnie od całej reszty śmiecia w pliku. Jest to bardzo naturalny sposób pracy, bo, zwłaszcza przy większych zmianach, dopiero w trakcie ich tworzenia zauważam wyodrębniające się niezależne, eee, ciągi funkcjonalne (?). Afaik inne VCS-y zaadoptowały to w postaci trybu "interactive" (bazaar przez plugin, hg chyba domyślnie w kodzie, nie wiem jak git).

2. Darcs nie ma rewizji, dla niego rezpozytorium to tak naprawdę zbiór patchy. Oznacza to, że (a) komenda rebase (w bazaarze jak zwykle w postaci pluginu, w hg nie mam pojęcia, czy w ogóle jest, a git ma domyślnie) jest kompletnie bez sensu, bo mogę sobie pullnąć patche z czegokolwiek na cokolwiek, ważne, żeby się nakładały i (b) mogę utrzymywać kilka wersji dokładnie tego samego drzewa, różniących się tylko i wyłącznie jednym patchem.

Punkt pierwszy to nie problem, punkt drugi i owszem. Wynikają z niego dwa różne workflowy:

1. Surwiwal fitnessu (survival of the fittest). System ma robić X. Nie mam pojęcia jaki jest najlepszy sposób na zrobienie X, więc robię kilka możliwych implementacji, po czym odpalam je na różnych maszynach. I dalej wprowadzam równoległe zmiany sprawdzając, jak różne wersje na nie zareagują. W darcsie jest to proste, wystarczy, żebym w pewnym momencie do jednego drzewka wprowadził patch XX, a do drugiego XY i pullując nowe zmiany z drzewka A do B lub vice versa, pamiętał o niepullowaniu tych konkretnych patchy. I mogę sobie tak rozwijać równoległe wersje tego samego programu praktycznie w nieskończoność, zachowując owe różniące je patche. O ile wiem w bazaarze w ogóle tak się nie da, nie wiem jak w hg i gicie.

2. Odgałęzianie się od ruchomego pnia (dla twardzieli: odbranchowywanie się od movowalnego trunka). Sprowadza się do tego, że mam gotowy kawałek softu, który jest rozwijany niezależnie ode mnie przez upstream i ja mam na ów soft nałożyć własne poprawki, sporadycznie mergując się z upstreamem. W darcsie nie problem, mogę pullować dowolne patche skądkolwiek dokądkolwiek, w pozostałych natomiast potrzebny jest rebase. Jak pisałem: bzr i git to mają, nie wiem jak hg.

Pierwszy tryb rozwoju softu jest dosyć specyficzny dla mojej pracy, drugi natomiast, co uświadomiłem sobie dosyć niedawno, wcale nie (acz też obecny). radioemiter.pl i pld-users.org to dokuwiki, www.pld-linux.org to MoinMoin, forum.pld-linux.org to bodajże phpbb (acz nie stawiane przeze mnie). I gdybym wtedy wiedział to, co wiem teraz, to wszystkie one od razu lądowałyby w jakimś VCS-ie. Bardzo ładnie ten problem wyszedł z pld-users, gdzie jeden z adminów zupgrejdował do nowszej wersji dokuwiki i wszystkie moje site-specific zmiany poszły do /dev/null. I żeby je teraz odzyskać będę się musiał z jakimiś patchami i diffami bawić (zakładając, że gdzieś się zachowała stara wersja). A tak, to jeden rebase i po paru minutach miałbym z głowy.

I właśnie dlatego nowy 7thguard, stawiany na drupalu, będzie od początku czymś wersjonowany.

Przy czym nie samym rebasem człowiek żyje. Można powiedzieć, że na co mi rebase -- ściągam najnowszą wersję upstreama, diffuję względem wersji od której się odbranchowałem, po czym próbuję nałożyć takiego patcha na swój kod z commitlogiem "upgrade to upstream X.Y.Z". Prawda, rzecz w tym, że w wypadku tego typu workflowu bardzo liczy się przejrzystość commitlogów, gdyż po paru latach pogubię się w tym, co tam właściwie jest zrobione względem oryginału, a już tym bardziej będzie z tym miał problem ktoś inny chcący też coś pomóc.

I tutaj wychodzi drugi problem z bazaarem -- nie wspiera on przepisywania historii. Rebase rebasem, ale po jakimś czasie commitlogi wyglądałyby tak: 3. implemented X; 4. fixed bug in X; 7 upgraded to upstream 5.0; 11 X obsolete, same functionality implemented elsewhere", etc, etc. Tego typu historia jest ważna w przypadku publicznego projektu, do którego jest np. bugtracker i w którym spójność całości jest święta (to dlatego Linus nie rebase'uje swojego drzewa, ani nie grzebie w jego historii post-factum). Jest ona natomiast ewidentną przeszkadzajką (bo zamazuje obraz zmian) w przypadku projektów bardziej prywatnych, typu opisanych powyżej/tych, co mam w pracy. Po prostu utrudnia życie.

Jestem praktycznie pewien, że z gitem tutaj nie byłoby problemów, nie wiem natomiast jak hg.

W ogóle dosyć oczywiste jest, że bazaar odpada i że najprawdopodobniej wyląduje na gicie. Łudzę się jeszcze, że hg spełni moje wymagania, acz nie mam jakiś specjalnych nadziei. Ot, po prostu, autorzy gita najprawdopodobniej przewidzieli powyższe przypadki użycia oraz setki innych, o których jeszcze nie pomyślałem i które pewnie nigdy nie będą mi potrzebne. Do tego git ma pewnie zaimplementowane optymalne sposoby integracji z wszystkimi innymi rozwiązaniami na rynku (perforce anyone?), więc gdybym kiedykolwiek trafił do jakiejś firmy, gdzie standardem jest coś niespecjalnie wygodnego, najprawdopodobniej byłbym w stanie uprzyjemnić sobie życie przy pomocy odpowiednio użytego gita.

Główny problem z gitem jest taki, że jest on trudny i nieintuicyjny dla ludzi wychowanych na czymkolwiek innym. Tego problemu nie ma z bazaarem, nie wiem jak z hg, ale git to jest oczywisty kosmos. Jest to trochę sytuacja jak z vimem -- używam, bo jest dla mnie wydajniejszy, niż alternatywy. Ale gdybym musiał kogoś innego zmuszać do jego używania, to już byłby problem. Ale nie muszę, bo edytować tekst można w czymkolwiek. Z VCS-ami już nie ma tak łatwo. Jeśli wrzucę 7thguarda do gita, to znacznie podniosę poprzeczkę dla kogokolwiek, kto chciałby w tym później coś pogrzebać (ditto dla pld-users i reszty). Tak nie jest w przypadku np. bazaara, bo czyś z CVS-a, SVN-a, czy czegoś takiego, będziesz się czuł jak w domu.

(To jest powód dla którego przy jakichkolwiek zmianach PLD prawie na pewno nie wyląduje na gicie. Zaawansowane funkcje gita i tak nie zostałyby wykorzystane, a ludzie by się pewnie w końcu zbuntowali, że nowy soft działa kompletnie na odwrót, niż stary dobry CVS. Tego problemu praktycznie nie byłoby właśnie z bazaarem.)

W ogóle nowy 7thguard to będzie ciekawy przypadek. W teorii w ogóle nie powinienem musieć grzebać bezpośrednio w kodzie drupala, wszystko powinno być do załatwienia themami, konfigami i pluginami. W teorii. Jak to wyjdzie w praniu, to się jeszcze zobaczy.

Hmmm, tak się zastanawiam. Może te systemy to jest nowy sposób na rozwój różnych webowych CMS-ów i takich tam? Może to właśnie powinno być specjalnie robione tak, żeby klienci mogli upgrejdować swoje rozwiązania przy pomocy jakiegoś bzr-a z rebasem? Nowe tarballe powinny od razu zawierać katalog .bzr, a nowe wersje powinny być także dostępne do łatwego pullowania/mergowania takimi narzędziami? Graficzne konfigo-klikadła powinny automatycznie commitować wprowadzone zmiany? Interesting... Ciekawym, czy dałoby się taki sposób tworzenia stron dla klientów wprowadzić w mojej opolskiej firmie. Acz to już temat na osobny wpis.

Klient, jego SEO i mój problem

13 VIII 2008, 02:19

Jak klientowi zrobiłeś stronę i ją hostujesz, to wypadałoby też wypozycjonować. Problem -- poza jakimiś technicznymi zaleceniami odnośnie samej strony i dodaniem jej do paru katalogów, SEO to nic, czym się można chwalić. Losowo linkowane keywordy w ramach systemu wymiany linków, tworzenie sztucznych stronek na darmowych hostingach, czy wręcz czyste spamowanie różnych internetowych lokacji? Może jednak nie w firmie z którą mam coś wspólnego.

Tylko co robić z klientem, który domaga się takich usług? Nie mogę mu narzucić swojego "systemu wartości", zwłaszcza, że wytłumaczenie jest dla niego pewnie zbyt techniczne, a nielegalne to to afaik nie jest. Może go przekazać jakiejś firmie od SEO? Ale wtedy mogą go podprowadzić z hostingiem i obsługą WWW, a poza tym nie zobaczymy ani grosza z jego pieniędzy na pozycjonowanie. No to wejść w jakiś program partnerski z większą firmą od SEO (są takie?) i obsługiwać klienta via ów program? Tak, super, będę partnerem spamerów. Eh.

Adwordsy afaik takich klientów zazwyczaj nie interesują. Pewnie za drogie. W ogóle Adwordsy się nie skalują. Im więcej pieniędzy na twoim rynku, tym więcej wszyscy licytują. Ty dostajesz taką samą (albo gorszą) usługę, a Google tylko zgarnia coraz więcej kasy. Zdecydowanie powinny powstać jakieś alternatywy.

Może zaoferować naszym klientom za darmo opcjonalny program "wspierania lokalnej przedsiębiorczości"? Tzn. jeśli chcesz, to wybierasz sobie kilka keywordów i my w treści stron innych klientów (którzy też chcą) automatycznie podmieniamy owe słowa na linki do ciebie. Wygląda jak system wymiany linków [1], ale można przedstawić całkiem sensowną argumentację, że podstawową funkcjonalnością jest jednak prowokowanie ludzi do wchodzenia na strony innych lokalnych firm, a pozycjonowanie w Googlu jest tylko skutkiem ubocznym [2]. Bo chodzi o to, żeby klient do ciebie przyszedł. I nie jest ważne, czy zrobi to przez szukanie odpowiednich słów w wyszukiwarce, czy dlatego, że kiedyś wszedł ze strony o czymś zupełnie innym (ale też z Opola) i zapamiętał, że twoja firma istnieje.

[1] Akurat z różnych technik mrocznego SEO automatyczną wymianę linków uważam za najmniej mroczną, bo (a) nie ładuje treści tam, gdzie właściciel strony nie chce (jak spamowanie for) i (b) nie produkuje bezużytecznej treści (jak tworzenie sztucznych stron z linkami).

[2] W wersji light można to zrobić nie z linkowaniem słów w treści, ale z osobną stroną "wspieramy lokalną przedsiębiorczość" (aka "linkownia") w ramach serwisu danego klienta. To już tym bardziej nie było by się do czego przyczepić.

Eh. I tak mi się nie będzie chciało w to bawić, a nawet gdyby, to pewnie nie zadziała (nie jestem w stanie tego teraz stwierdzić, nie znam się na działaniu Googla). Acz mogłoby nieźle namieszać, gdyby jednak zadziałało i gdybyśmy to oferowali za darmo (w sumie tylko tak miałoby prawo działać). Zmniejszyć dochody Googla, to by było coś.

Moje preferencje zawodowe, a mała przedsiębiorczość

10 VIII 2008, 16:21

Ostatnio firma dla której pracuję odczuwa pewną presję finansową, a co za tym idzie pracownicy są pod presją, żeby tworzyć nowe rozwiązania, które będzie można oferować klientom. I dzięki całej tej sytuacji odnalazłem coś ważnego. Przypomniałem sobie co to znaczy, gdy mam konkretną wizję tworzonego systemu, gdy z dnia na dzień widzę, że jest postęp, a rzeczy zaczynają działać zgodnie z zamierzeniami. Gdy po tygodniu rzeczywistej pracy mam działające, dobrze przemyślane demo. Przypomniałem sobie dlaczego tyle lat temu mogłem siedzieć nad PLD i dłubać w paczkach tyle czasu, napisać automatykę, czy robić pierwsze systemy dla w/w pracodawcy. Znowu jestem na bieżąco z LWN-em i listami PLD-owymi. Jest fajnie.

(Oczywiście mój blip na tym poważnie ucierpiał, ale doba nie jest z gumy. Zobaczymy jaki sobie wypracuję rytm dnia na najbliższe kilka tygodni/miesięcy. Wątpię, żebym przetrzymał bez przynajmniej niewielkiej regularnej dawki reddita.)

Uświadomiwszy sobie na powrót co jeszcze może mnie informatycznie kręcić [1], poszedłem sprawdzić co z tego jestem w stanie znaleźć w swojej lokalnej firemce (lokalna firemka!=firma z pierwszego akapitu). Wczoraj usiadłem ze wspólnikiem i pogadaliśmy sobie o tym, jak on widzi źródła przychodów firmy informatycznej w niezbyt dużym mieście (mając rok działalności i doświadczeń za pasem). Jego cele/przewidywania: 60% z umów serwisowych dla firm, pozostałe 40% to proste projekty programistyczne poprzetykane sporadycznie czymś minimalnie ambitniejszym (pomijam klientów indywidualnych na typowe "pogotowie informatyczne"). Czyli nic dla mnie.

[1] Używanie nowych/bardziej zaawansowanych umiejętności/doświadczenia do szybkiego tworzenia/prototypowania (dla mnie) nowych działających systemów. Bonusy za konieczność douczenia się nowej technologii w trakcie.

Umowy serwisowe to zazwyczaj jeżdżenie do klienta i naprawianie mu albo sprzętu, albo użeranie się z Windowsami/dziwnymi programikami. Projekty "programistyczne" to w 90% proste strony www (z flashem), a w pozostałych przypadkach jakieś proste systemy obsługi czegokolwiek, ale też z interfejsem po www. Nie znam się na tych rzeczach, poznać nie chcę (zwłaszcza piekiełka zwanego html/css/js), a w ogóle to wszystko straszne nudy.

Czyli pracy to ja tu nie znajdę. Zajmuję się adminką jednego serwera (PLD z vserverami pod xenem) i wystarczy. Nie mam natomiast nic przeciwko czerpaniu dochodów. Niestety na tak małym rynku jest to raczej utrudnione. Stawki mamy niskie, pracownicy zarabiają niewiele, więc firma większość przychodów przeznacza na koszty stałe i pensje dla pracowników. Płacić takim darmozjadom jak ja jakiś sensownych pieniędzy po prostu nie ma z czego.

No więc temu trzeba zaradzić. Wspólnik twierdzi, że tak naprawdę wszystkie firmy potrzebują obsługi informatycznej, bo prawie wszyscy mają komputery, a prawie nikt nie wie jak z nich sensownie korzystać i się nimi zajmować (stąd te 60% na umowy serwisowe) i praktycznie nikomu nie opłaca się zatrudniać na pełen etat informatyka. Zgoda. Czyli oferując tani [2], kompetentny i spersonalizowany [3] outsourcing IT powinno dać się załapać sporą część tych mas malutkich firemek, które są poutykane po biurach na zadupiu, bądź wręcz po prywatnych mieszkaniach. Nawet bardzo tanie rynki robią się dochodowe przy odpowiedniej skali.

[2] Tani tani. Paręset złotych dla jednoosobowej minifiremki to jest dużo, bo to są pieniądze, których dany człowiek nie może wydać na ubranie czy jedzenie.

[3] Spersonalizowany -- zgłaszając się do średniej/dużej firmy ładujesz się w dział obsługi klienta. W małej/średniej firmie możesz gadać bezpośrednio z szefem, obsługiwać cię może zawsze tych samych dwóch ludzi (z których jeden może być szefem ;), oni sami będą się pewnie interesować sposobami na usprawnienie działania twojej firmy, etc, etc. Moja teoria jest taka, że jeśli sam nie wiesz czego ci potrzeba, to zdecydowanie łatwiej jest sobie niezobowiązująco pogadać z szefem zaprzyjaźnionej firemki, niż próbować szczęścia z BOK-iem czegoś większego.

Ale podczas wczorajszej rozmowy jedna rzecz mi nie dawała spokoju -- czy nie powinniśmy być w stanie zaoferować czegoś więcej albo bardzo bardzo tanio, albo wręcz za darmo w ramach naszej oferty, tak, żeby nasz mały klient miał wrażenie, że nie jesteśmy tylko ludźmi od naprawiania komputerów, ale że rzeczywiście na swój sposób chcemy mu pomóc w lepszym prowadzeniu interesu, że zależy nam na jego wydajności i sukcesie (cholera, gadam jak marketoid). No i na podstawie opisów konkretnych firm, z jakimi miał do czynienia wspólnik ostatnimi czasy, w trakcie rozmowy wpadłem na bardzo prosty, nie wymagający od nas wielkich nakładów, pomysł, mogący potencjalnie osiągnąć wymienione cele i otworzyć nam dostęp do tego rynku. Wspólnik przyznał, że koncepcja jest bardzo dobra, ma potencjał i zdecydowanie trzeba ją wdrożyć i zobaczyć co da. A o co konkretnie chodzi? No cóż, tajemnica handlowa. ;) Jeśli docelowo nie wypali, to pewnie opiszę o co chodziło (i dlaczego moim zdaniem się nie udało).

P.S.
Właśnie mi się przypomniało. Nasza (większa) lokalna konkurencja wpadła na pomysł blokowania maili od nas na swoich serwerach, co oznacza, że nie możemy się kontaktować ze wspólnymi klientami (a mamy takich). Indagowana przeze mnie konkurencja powiedziała, żebym spadał na /dev/drzewo, bo nie jestem ich klientem, więc ze mną nie będą gadać. Strasznie mnie ta małomiasteczkowość ucieszyła, więc zapukałem do naszego wspólnego klienta z prośbą o pełnomocnictwo (w końcu robimy za ich outsourcowany dział informatyczny, więc ma sens, żebyśmy gadali z firmą u której się hostują), po czym udałem się do konkurencji. Co z tego wyniknie dowiem się w poniedziałek. Stay tuned.

Prokrastynacja kluczem do sukcesu

23 VI 2008, 02:15

Studia dzienne powodowały, że (a) regularnie potrzebowałem odreagować nudę codziennych zajęć i (b) miałem konkretne "nieprzekraczalne" terminy na które musiałem oddawać projekty i uczyć się do kół. Skutek praktyczny -- chciało mi się robić coś kreatywnego, żeby nie robić czegoś męczącego (zwłaszcza zamiast uczenia się na koła).

Ostatnie ponad pół roku spędziłem pod znakiem wielkiego nicnierobienia. Studiów nie ma. Nic nie muszę. Zatrudniony jestem na "pół etatu" (ale to się niedługo zmieni). Oddanie pracy inżynierskiej ma dosyć... płynne terminy. Dodatkowo od miesiąca mam praktycznie non-stop przy sobie kobietę, która dostarcza różne sposoby zabijania czasu.

Muszę coś z tym zrobić. W Opolu siedzę jeszcze dwa lata. Może pójść na jakiś kurs z zarządzania, czy czegoś? Już pal licho, czy się czegoś nauczę, bo na zbyt wiele nie liczę, ale ma to jednak różne dodatkowe zalety. Ustrukturyzowanie czasu, okazje do prokrastynacji, a jeśli jakimś cudem skończę, to będzie śmiesznie wyglądało w CV. Hm.

Produktywność biurowa wampirów z kalendarzykami

29 IV 2008, 14:10

Biuro bardzo fajna rzecz. Acz nie wszystkie moje przewidywania się sprawdziły. Tak, siedząc w biurze znacznie wydajniej pracuję. Nie, nie ustabilizowały mi się godziny snu. Wręcz przeciwnie. Do biura zazwyczaj przychodzę przed północą i wychodzę parę godzin później. Nie potrafię się zorganizować na tyle, żeby w (ładny, wiosenny) dzień tam pójść i siedzieć. Może to i dobrze.

I dwa krótkie spostrzeżenia:

1. Jednak metoda GTD działa. Rozpisanie sobie dużego zadania na wszystkie części składowe i sukcesywne odfajkowywanie po jednej, dwóch prędzej czy później powoduje, że zrobi się wszystkie. I jest to bardzo satysfakcjonujące przy większym zadaniu.

2. Podstawową zaletą cyfrowych organizerów jest to, że nie trzeba ręcznie niczego przepisywać z jednej kartki na drugą, bo komputer robi to sam. W rzeczywistości jest to wada. Fakt, że jeśli nie zrobię czegoś w dniu X i muszę to przenieść na dzień X+N oznacza, że fizycznie muszę usiąść z długopisem w dłoni, przeczytać zadanie i je słowo w słowo przepisać gdzie indziej. Często w tym momencie dochodzę do wniosku, że i tak danej rzeczy nie zrobię, więc po co produkować makulaturę. Dzięki temu lista zadań mi nie rośnie do nieskończoności.

Szarpania się z pracą w domu ciąg dalszy

16 III 2008, 03:46

Jestem w połowie "Zarządzanie czasem, strategie dla administratorów systemów" i fajnie się czyta. Kilka pomysłów zdecydowanie przydatnych (np. tankowanie samochodu regularnie co tydzień o tej samej porze), większość sugestii brzmi sensownie, a na dodatek kojarzą mi się z GTD, czyli pewnie sprawdzałyby się całkiem dobrze.

Docelowy odbiorca takich publikacji wygląda tak: biuro, szef, klienci, pięć dni w tygodniu po powiedzmy osiem godzin. Główny problem -- jak zwiększyć produktywność. Sposobów jest multum: unikanie przerywników, efektywne użycie różnej maści organizerów, rozbijanie zadań na części składowe w celu ich łatwiejszego ogarnięcia (i żeby mniej odstraszały), etc., etc., ale to wszystko nadal kierowane do naszego docelowego czytelnika.

A co, jeśli nie musisz robić niczego?

Jest trzecia w nocy. Nie jestem śpiący. Poszedłem spać przed szóstą, a wstałem o piętnastej. Fakt, że wyjątkowo, bo akurat siedziałem do późna ze znajomymi. Zazwyczaj kładę się trochę wcześniej, koło czwartej. Jedyny stały punkt mojego tygodniowego programu to treningi od poniedziałku do piątku koło 17:30, więc kiedy bym nie poszedł spać i tak się zawsze wysypiam. Sypiam po 9-10 godzin.

Problem z pracą w domu polega na braku mobilizacji i natłoku “rozpraszaczy” (obiad, fajny film w tv, kobieta, rodzice, telefony od znajomych, nawet pogoda za oknem). Serio, nawet projekt za 100 tys zł nie jest dość mobilizujący.

Nie, nie jest. "[Praca w domu] to wspaniałe wyjście dla osób zdyscyplinowanych, ambitnych i pracowitych. Jeśli brak Ci którejkolwiek z cech - znajdź sobie zwykłą pracę."

Czy gdybym pięć dni w tygodniu siedział po osiem godzin w biurze, razem ze współpracownikami oraz szefem, to pozwalałbym sobie na dłuższe okresy nicnierobienia? Wątpię. Niestety mojego szefa widuję raz na pół roku (teraz pewnie siedzi w Londynie albo Los Angeles), nasi klienci to bezosobowe międzynarodowe korporacje (ich jaźń zawarta jest w gigabajtach plików Excela i PowerPointa), najbliższy współpracownik mieszka miasto obok (we Wrocławiu), a za biuro robi mi własne mieszkanie (które jak zawsze muszę posprzątać).

W firmie jak zwykle problem, bo trzeba dogodzić klientom, mój deadline upłynął dwa tygodnie temu, a ja się poruszam do przodu krótkimi nieregularnymi wybuchami aktywności. Wiem że mogę być bardziej produktywny. Drażni mnie to.

Ale jest światełko w tunelu. (Przy czym to pewnie pociąg.)

Moja lokalna firemka z której miałem się już do tej pory wycofać ostatnio poinformowała mnie, że po świętach zmieniamy lokal. Nowy znajduje się niedaleko mojego mieszkania. Chyba się jednak z niej jeszcze nie wycofam.

Gdy za pierwszym razem czytałem ten wpis nbw (z którego pochodzą powyższe cytaty) chwilę rozważałem pomysł wynajęcia jakiegoś biura w celu zwiększenia swojej produktywności, ale ostatecznie go odrzuciłem. Po pierwsze, szkoda mi było pieniędzy, a po drugie -- w ogóle nie oglądam telewizji, w domu poza książkami jedyną moją rozrywką jest komputer, więc czy w domu, czy w biurze, jak długo mam internet, wcale nie muszę pracować.

Ale jak tylko będę miał okazję wykorzystać nowy lokal, to to zrobię. Wątpię, żeby inni pracownicy się po nim kręcący działali na mnie motywująco, bo (a) to ja jestem ich przełożonym, a nie na odwrót i (b) oni i tak nie będą mieli pojęcia co ja robię, ale może jakimś cudem uda mi się wyrobić w sobie nawyk otwierania biura powiedzmy o dziesiątej i siedzenia w nim z kilka godzin. Nawet jeśli nie będę wtedy bardziej produktywny, niż zwykle, to chociaż sobie ustabilizuję godziny snu.

Tia, nadzieja matką głupich.

Eh, jeszcze tylko kilka miesięcy. Napisać inżynierkę, wynieść się do wawy, dostać normalną robotę i zostawić tę szarpaninę za sobą. Pewnie będę płakał, że zrezygnowałem ze swojej obecnej wolności (ostatnio zdecydowanie za dużo czasu spędzam ze znajomymi; ale lubię to), ale... Trzeba iść do przodu.

Plan na najbliższe kilka miesięcy

16 I 2008, 00:24

Po kolei:

1. Skończyć semestr na uczelni. Właśnie piszę jeden z dwóch projektów (przy okazji nauczyłem się latexa! :), do tego muszę jeszcze zaliczyć "Prawo autorskie i komputerowe", czy coś w ten deseń i wsio.

2. Moje obowiązki w firmie, której jestem poniekąd współwłaścicielem, zdać komuś innemu. Projekt, który właśnie piszę na uczelnię, to dosyć dokładna dokumentacja tego, jak wygląda konfiguracja serwera firmowego, co z nią jest nie tak i jak to później poprawiać. Przyda się nie tylko na uczelnię.

3. Napisać pracę inżynierską i obronić ją. Tematem jest nowa wersja 7thguarda (kompleksowo zrobiona), więc jak się za to w końcu zabiorę, to powinienem wrzucić kilka wpisów nie compemo, tylko coś w miarę ciekawego. Zrobienie całości jak trzeba zajmie mi pewnie z kilka miesięcy, bo plan jest taki, żeby za jakiś miesiąc z hakiem mieć na głowie tylko inżynierkę i jedną (zamiast dwóch) pracę (na pół etatu), zrobić sobie z dwa-trzy tygodnie kompletnego nicnierobienia i czytania książek i dopiero wtedy wziąć się do roboty.

4. Podomykać wszelkie sprawy w Opolu: zdać bycie "szefem" i adminem radia studenckiego, powiedzieć partnerce, żeby sobie znalazła kogoś innego (o tańcu mówię oczywiście), wymyślić co zrobić z mieszkaniem i pewnie coś jeszcze.

5a. Przenieść się do Warszawy, na 99% wynająć jakieś przyjemne mieszkanie na Kabatach.

5b. Znaleźć sobie wreszcie jakąś ciekawą pracę i zwolnić się z obecnej lub zostać jeszcze przez parę miesięcy w obecnej, gdyż w teorii jest mało absorbująca i po prostu spróbować się trochę pocieszyć życiem. Książki poczytać, Warszawę pozwiedzać, po lesie połazić, znajomych ponachodzić.

Przy czym ta druga opcja jest raczej bardzo mało prawdopodobna, bo po ponad dwóch latach pracy w mojej obecnej firmie, mam jej tak serdecznie dość i jestem nią tak wynudzony (i w ogóle moim dotychczasowym życiem), że mi się zaczynają zwarcia w mózgu robić. O takie:

P.S.

Więcej fotek jak powyższa można znaleźć na pudelku jamniczku. Niech żyje Pani jeszcze-tylko-przez-kilka-miesięcy Prezes!

Kilka spostrzeżeń o pisaniu CV-ków

06 I 2008, 02:35

Cechy wspólne praktycznie wszystkich CV-ków, z jakimi miałem do czynienia: stan cywilny (afaik pracodawca nie może tego oczekiwać), miejsce urodzenia (ekhem? To może jeszcze rozmiar buta, przydatność podobna), literówki i inne błędy (Photoschop anyone? Bender?), wpisywanie rzeczy kompletnie nie na temat (pracowałeś jako dozorca? Na pewno ci się przyda jako programiście) oraz zbytnia ogólnikowość w tych na temat (praktyki w firmie programistycznej? Super, ale jako kto, konserwator powierzchni płaskich?).

Pamiętajcie o złotej zasadzie pisania takich rzeczy -- trzeba wiedzieć jak najwięcej o pracodawcy oraz o stanowisku. Będzie to niezbędne tak przy rozmowie kwalifikacyjnej, jak i przy pisaniu CV-ka oraz listu motywacyjnego. Im lepiej wczujecie się w osobę zatrudniającą, tym większa szansa, że powiecie/napiszecie dokładnie to, co chce usłyszeć. And that's never a bad thing.

Dłuższy czas temu przeprowadzaliśmy ze wspólnikiem rekrutację do firmy i miałem zamiar opisać spostrzeżenia, ale jakoś mi się nie chciało i pewnie połowę zapomniałem. Acz jedną ważną rzecz z drugiej strony barykady wam powiem -- pamiętajcie, że zatrudniający to człowiek, a nie maszyna. Jeśli jest dział HR, to jego pracownicy w teorii wiedzą co robią. W teorii. Jeśli nie ma działu HR, to zatrudniać cię może ktoś, kto ma tak samo mgliste pojęcie o tym, o co pytać, jak ty o tym, jak odpowiadać. A jak już nawet o coś zapyta, to później nie ma pojęcia co zrobić z odpowiedzią (kto będzie lepszy, ten co odpowiedział A, czy ten co odpowiedział B?). No i tak to ślepy prowadzi kulawego.

Martwisz się, że źle odpowiedziałeś na pytania i dlatego cię nie zatrudnili? Całkiem prawdopodobne, że "prawidłowe odpowiedzi" nigdy nie istniały. Zadecydowała faza księżyca...

Zostanę zawodowym ekspertem!

05 I 2008, 03:23

Parę dni temu dostałem mailem propozycję wystąpienia na jakiejś większej konferencji. Fajny bajer -- można sobie pooglądać nowe miasto, spędzić miło czas, przespać się wygodnie w wynajętym hotelu, wieczorami pogadać z ciekawymi ludźmi, a w trakcie samej prelekcji zrobić z siebie idiotę przed zgromadzoną publicznością.

Odpisałem, że nie mam żadnego tematu o którym mógłbym mówić.

Podobnie z pingwinariami. Honej mnie kopał, żebym zgłosił jakąś propozycję, ale nawet mimo faktu, że pingwinaria są bardziej imprezą towarzyską, jak merytoryczną, tej akurat publiczności nie byłbym w stanie powiedzieć niczego ciekawego.

Kwestia dostosowywania tematu do publiczności. Jeśli gadam do swoich lokalnych współstudentów, to staram się gadać o rzeczach podstawowych (a tych trochę znam), bo tego im właśnie potrzeba. Jeśli gadam do pldziarzy, to mogę pogadać o PLD, bo ich to pewnie choćby trochę zainteresuje (ale tylko ich). Jeśli gadam do "obcych", to dobrze by było, gdybym gadał o czymś, na czym się znam i co ich może zainteresować. Jakieś trzy-cztery lata temu wystąpiłem na konferencji o bezpieczeństwie komputerowym i nie mam zamiaru znowu z siebie robić publicznie idioty w ten sposób. (Gwoli wyjaśnienia: taki ze mnie spec od bezpieczeństwa, jak z koziej dupy klarnet; oczywiście podstawy znam...)

Prawda jest taka, że ja się na niczym nie znam poza poziom powiedzmy średniozaawansowany, a co za tym idzie tym co wiem nie jestem w stanie zainteresować nikogo poza "początkującymi". Nie jest to jakoś przeraźliwie dziwne, mam 22 lata, więc trudno, żebym miał rozległą wiedzę i doświadczenie w jakimkolwiek temacie... acz miło by było :) Może kiedyś.

Od dawna zastanawiałem się, czy nie udałoby mi się jakoś przekwalifikować zawodowo, bo perspektywa spędzenia reszty życia na przerzucaniu bajtów przestała mnie podniecać dłuższy czas temu, ale realistycznie patrząc -- nie, nie ma najmniejszych szans, żeby IT nie było integralną (i sporą) częścią tego, czym się będę w przyszłości zajmował, jeśli zależy mi na zarabianiu jakiś sensownych pieniędzy (a zależy; treningi tanie nie są, wino choya też nie, a benzyna nie rośnie na drzewach).

No cóż. Shit happens. Wniosek -- muszę po prostu na nowo znaleźć coś, co by mnie w tych pieprzonych komputerach zainteresowało i wykombinować jak to robić zawodowo. Ta pierwsza część mi się udała, jak byłem nastolatkiem, więc trzeba to po prostu jakoś powtórzyć. Przekichane, jak zawsze, będzie z tą drugą.

Pieprzony pragmatyzm

06 XII 2007, 01:42

Z wiekiem coraz lepiej zdaję sobie sprawę z własnych ograniczeń. Tak, mózg ludzki jest bardzo plastyczny, jeśli bardzo chcę, mogę zmienić dużo rzeczy, jednak genetyka obowiązuje. Wiem więcej, potrafię więcej, ale coraz mniej chce mi się dążyć do jakiegoś ideału, a coraz bardziej zadowalam się półśrodkami pozwalającymi osiągnąć zamierzony cel oraz grupą ludzi, przy których mogę być sobą i którym to nie przeszkadza.

Ma to wady. W coraz mniejszym stopniu jestem w stanie oszukiwać samego siebie. Kiedyś mogłem powiedzieć "postanowiłem, zrobię!". Teraz powiem "bardzo chętnie bym spróbował, ale realistycznie -- nic z tego nie wyjdzie". I coraz częściej jest to przykre. Bo ja bym naprawdę bardzo chętnie spróbował, ale wiem, że i tak nic z tego nie wyjdzie, więc po co mam tracić twój i mój czas.

Ale rzeczywiście przykre to się dopiero zrobi. Moje perypetie ze studiami spowodowały, że skończę je za jakieś cztery miesiące, zamiast za półtora roku. I przydałoby się rozejrzeć za sensowną robotą. Której w Opolu nie znajdę, ponieważ jest to informatyczna dziura.

Po mojej prelekcji sprzed kilku tygodni pogadałem sobie z jakimś człowiekiem, który, ewidentnie posiadając szersze zainteresowania, jednak "z różnych powodów" został w niewielkiej mieścinie. Czy jest to jakaś opcja? Jest. Adminować na Niewidzialnym Uniwersytecie za orzeszki. Może doktorat robić z jakiś głupot. Praca u jakiegoś lokalnego ISP-a za trochę większe orzeszki. Może koder PHP, albo przełożony takowych? No i dorabiać sobie co jakiś czas różnymi pojedynczymi zleceniami.

Już na początku liceum byłem świadom faktu, że nie potrafię pracować systematycznie, a już zupełnie nie potrafię się zmusić do pracy nad rzeczami, które mnie nie interesują. Siedem lat później dodatkowo wiem, że są to stałe cechy mojego charakteru. I nie oprę na ich zmianie kariery zawodowej, bo za parę lat, stojąc na jej gruzach, mógłbym winić tylko siebie.

Z drugiej strony mam w miarę dobrze płatną, mało ciekawą, ale przy tym bardzo mało czasochłonną robotę, więc może dałoby się jakoś wyżyć? Ano dało. Póki robota by nie wyschła, co jest nieuniknione, a ja nie zostałbym na lodzie. Znam kogoś, obecnie dwa razy starszego, kto dawno temu zadowolił się status quo. Do tej pory tego żałuje.

A zbliża się bańka, z której, jeśli dobrze się zakręcić, da się uszczknąć jakieś grubsze pieniądze. Jeśli po trzydziestce nie będę już na emeryturze, to uznam, że gdzieś musiałem przegapić jakąś okazję.

Z regularnie odwiedzanej rodziny mam tu jedynie dziadków. Dziadki nie żyją wiecznie, ale jednak zawsze były obecne.

Osób, które znają mnie trochę dokładniej jest i zawsze było bardzo bardzo mało. Połowę z nich zostawiłbym tutaj.

Kurs tańca -- Gabrysia (16), Marko (15), Kasia (17), Asia (16), Grzegorz (16), a to tylko ci najstarsi. Prawie ich nie znam, nie poznam ich lepiej, ale przyzwyczaiłem się do przebywania wśród nich. Założę się, że trenerzy zauważyli to lata temu -- przebywając z młodzieżą, czujesz się młodziej. Trenerzy, których bliżej nie znam i pewnie też nie poznam, ale od których nauczyłem się już sporo, a mógłbym się nauczyć znacznie więcej.

Dziadkowie, dosłownie kilka osób, które znają mnie trochę lepiej, niż cała reszta, banda dzieciaków, dwoje "obcych" ludzi (trenerzy) oraz cała masa duchów. Całe moje życie tutaj, po 22 latach. Śmiechu warte, ale moje.

Przeniosę się? No cóż, bardzo chętnie bym został, ale realistycznie patrząc...

Quick.Cms: jaki kraj, tacy GPL violators

22 XI 2007, 02:31

Pracownik szukał fajnego prostego CMS-a do użycia jako podstawy w projekcie klienta. I znalazł. Quick.Cms. Nie dość, że mu odpowiadało technicznie, to jeszcze licencja była fajna, bo "GPL z dodatkowym zastrzeżeniem".

Eee, zaraz, jaki GPL?

I rzeczywiście. Banda geniuszy (aka twórcy tego czegoś) wzięli oryginalnego GPL-a i wyprodukowali wersję z czymś takim na końcu:

DODATKOWE ZASTRZEŻENIA AUTORÓW OPROGRAMOWANIA:

Program może być dowolnie modyfikowany, zastrzegamy jednak konieczność pozostawienia w widocznym miejscu na stronie informacji o pochodzeniu i nazwie programu o treści "Powered by Quick.Cart" lub "Powered by Quick.Cms" lub "Powered by Quick.Forum". Informacja ta musi być linkiem kierującym do strony pod adresem http://www.opensolution.org.

I teraz cały wic polega na tym, że trzeci akapit (siódma linijka) pliku z oryginalnym GPL-em, jaki zmodyfikowali, brzmi następująco: (pogrubienie moje)

Zezwala się na kopiowanie i rozpowszechnianie wiernych kopii niniejszego dokumentu licencyjnego, jednak bez prawa wprowadzania zmian.

Innymi słowy wydali swój soft pod licencją, która jest nielegalna. Czyli sam Dadźbóg ze Swarożycem raczą wiedzieć jak on jest tak naprawdę licencjonowany.

Co ich pokusiło? Albo rzeczywiście ni cholery nie potrafią czytać ze zrozumieniem, albo to było zrobione naumyślnie, żeby skusić nieobeznanych w temacie magicznymi literkami "GPL", albo jedno i drugie -- chcieli skusić, a że nie potrafią czytać, to nie załapali, że to co robią jest nielegalne. To już niech ktoś inny się zajmuje pytaniem autorów -- nie mam czasu na reportaż śledczy.

Jako ciekawostkę dodam, że szybki grep na źródłach wersji Light (tej na "GPL-u") mówi mi, iż w środku jest kod na (takim prawdziwym) GPL-u, coś na Creative Commons i dwie rzeczy na czymś MIT-based. I jeśli wersje komercyjne Quick.Cms-a nie mają tych rzeczy usuniętych (a jestem całkiem przekonany, że nie mają), to są tak samo nielegalne, jak wersja Light.

Innymi słowy: biznesplan jak się patrzy!

No a mój pracownik oczywiście niepocieszony, bo myślał, że znalazł rozwiązanie, a tu taki granat. Musi szukać dalej (ktoś ma jakieś sugestie?).

Japiszon: definitywny powrót

14 XI 2007, 15:40

Nie pisałem tego wcześniej, ale całe to moje plumkanie sprzed dwóch miesięcy jak ja to nie lubię mojej pracy się skończyło na tym, że praca powiedziała, że mnie kocha, ja stwierdziłem, że pieniądze fajna rzecz i że jeśli mi dadzą połowę kasy, mniej do roboty i ja sobie będę mógł sam ustalać co robię i kiedy robię, to mogę jednak zostać. Praca się zgodziła. Zarabiam o połowę mniej, nie mam tylu obowiązków (system, którym się zajmowałem od półtora roku, nie jest oficjalnie już moim problemem) i jest fajnie. Teraz zajmuję się w sumie głównie organizowaniem innym ludziom pracy i trochę adminką.

Z kolei moja firemka, co to ją współzałożyłem parę miesięcy temu... też źle nie jest. Zajmuję się organizowaniem innym ludziom pracy, adminką i gadaniem z klientami. Trafił nam się fajny klient, kasiasty, wiedzący czego chce i rozumiejący jak się gada z informatykami. Żyć nie umierać.

Ale żeby nie było za różowo, moja kochana politechnika postanowiła mnie bardzo dokładnie wyruchać. I jej się to udało. Ale o tym w następnym wpisie.

Poprelekcyjnie (nagranie)

09 XI 2007, 04:40
  1. Nagranie jest mocno przeedytowane pod kątem przydatności do słuchania. Jeśli ktoś pamięta, że coś się wydarzyło inaczej, niż jest nagrane, to wysoce prawdopodobne, że dobrze pamięta.
  2. Wyciąłem co najmniej kilka minut swoich mlasknięć (co mikrofon bardzo ładnie ponagrywał), chrząknięć, eeeeeyyyyeeeeeania, za długich pauz, przerw technicznych oraz najzwyklejszych wpadek. Więc nie, wcale tak płynnie nie mówię.
  3. W środę miałem depresję, że poszło tragicznie. Po przesłuchaniu stwierdzam, że aż tak strasznie tragicznie wcale nie poszło. Nic czego nie może naprawić kreatywna sesja z edytorem dźwięku.
  4. Acz kilka rzeczy jest oczywistych -- po pierwsze, wcale nie mówię tak płynnie i poprawnie technicznie, jak mi się wydawało, że mówię :(
  5. Po drugie -- miałem nadzieję zrobić super zajebistą prezentację. Poświęciłem na nią z dwa-trzy razy więcej czasu, niż zwykle poświęcam na takie rzeczy. Wyszło niewiele lepiej, jeśli w ogóle. Jedno staje się dla mnie jasne -- jedyny sposób na idealnie płynną prezentację, to po prostu usiąść, napisać całość słowo w słowo i później albo czytać, albo wyryć całość na blaszkę. Nie ma siły, żebym z kartką opisującą tylko schemat wystąpienia był w stanie przeprowadzić je płynnie -- bez zacięć, bez pauz, bez niepotrzebnego powtarzania się. Po prostu się nie da. Może są jacyś geniusze, którzy potrafią, ale generalnie wątpię, żeby to było w zasięgu normalnego człowieka. Mowa ludzka tak nie działa. Zapomina się słów, robi pauzy, gubi wątki, różne rzeczy rozpraszają.
  6. Po trzecie -- jeśli chcę zrobić płynną integrację tego co mówię, z tym co jest na rzutniku, to powinienem mieć w zasięgu wzroku swój laptop, żebym nie musiał się odwracać w celu upewnienia się co właściwie w danym momencie jest na rzutniku (mam ten bezprzewodowy dynks do obsługi prezentacji, więc mogę zmieniać slajdy patrząc się na publiczność). Takie odwracanie psuje płynność, a i mnie dekoncentruje.
  7. Po czwarte -- różne techniczne drobiazgi o zwracaniu uwagi na które człowiek się uczy z wykładu na wykład.

Link do ogga. Jutro jeszcze powinien być nius na stronie oplugowej wraz z jakimiś fotkami.

A, disclaimer: mówiąc zrobiłem sporo uproszczeń, a i wykład był dosyć konkretnie stargetowany (na studentów, którzy nie wiedzą jak takie rzeczy ugryźć). Dodatkowo co najmniej kilka razy powtarzałem, że coś jest moim poglądem na sprawę i na pewno są miejsca, gdzie to działa (z powodzeniem) kompletnie inaczej. Także wiem, że nie opisałem wszystkiego, co było do opisania. Był to świadomy wybór.

Podługoweekendowo

05 XI 2007, 15:18

Doświadczenie uczy, że jeśli wyjeżdżam do rodzinki na parę dni, to nie zrobię tam absolutnie nic z tego, co sobie zakładałem, że zrobię. Wniosek -- całą robotę "na już" robić przed wyjazdem, by móc w pełni korzystać z urlopu. Starzeję się.

Jedną z rzeczy, które miałem zrobić było przygotowanie tego wykładu. No cóż, mam jeszcze dwa dni czasu. A tak w ogóle, to zapraszam.

Acz jeśli ktoś ma pecha żyć w Polsce B (czytaj: poza Opolszczyzną), to rzecz będzie nagrywana (sam dźwięk; niestety nie mam kamery, żeby nagrać obraz i uzupełnić kolekcję) i jak będzie dostępny ogg, to tutaj dam info (no i na stronę oplugową). Także stay tuned.

Głupie błędy w zarządzaniu, część pierwsza

30 X 2007, 01:04

Niedoszacowałem czasochłonności projektu. Ale tym nie jestem zdziwiony, jeszcze wiele wody w rzece upłynie, zanim będę w stanie w miarę dokładnie terminy przewidywać. Popełniłem inny błąd -- nie zadbałem, by możliwie wcześnie skonsultować odpowiednie fragmenty dokumentacji z osobą, która byłaby kompetentna nam wykazać rozjazdy z rzeczywistym modelem biznesowym. Szczyt kretynizmu jak teraz na to patrzę. Grrr.

Skutek? Kilka mniejszych i niestety kilka większych dziur wymagających poprawek w kodzie. Przy czym ja, jako szef, za swoje błędy płacił nie będę. Nadmiarową robotę będzie miał programista.

Niskoopłacany niedoświadczony programista, który chyba dopiero na tym projekcie zaczyna rozumieć, że "naiwna ocena czasochłonności", typowa dla początkujących koderów ("Ten projekt? Tydzień, maks dwa.") nijak się ma do rzeczywistego mozolnego kodowania. Programista, który zaczyna się wypalać na moich oczach. Programista, którego potrzebuję na zaraz do następnego projektu.

Szlag by to. Przydałoby się zrobić coś konkretnego, tylko co. Na początek niech będzie zapewnienie, że terminy są bardzo fajne, gdy wydają pocieszne dźwięki przelatując nad naszymi głowami. I że nie ma się nimi za bardzo po co przejmować.

How to Get a Job Like Mine

20 X 2007, 02:49

Czasami udaje mi się natrafić na takie źródło wiedzy, że większość z tego, co czytam, wydaje się czystą stratą czasu w porównaniu. Ale właśnie takie znaleziska utwierdzają mnie w przekonaniu, że warto cały czas szukać. Bo nie da się znaleźć, nie szukając.

Najnowsze znalezisko. (Polecam na początek przeczytać wszystkie widoczne wpisy, a jeśli komuś się spodoba, to przejść do pierwszej strony i dalej czytać chronologicznie. Tak, blogi na Amazonie są wybitnie prymitywne.)

Autor tego bloga znalazł swój sposób na zmienianie świata. I płacą mu za to! Einsteinowi obecnie nic po tym, że wpłynął na bieg historii, bo zmarł dawno temu, ale to, czym się zajmował za życia, było dla niego samego fascynujące i po prostu ciekawe. Ja też chcę tak spędzić życie. Robiąc rzeczy nowe, mające znaczenie w szerokim kontekście (nawet jeżeli niewielu będzie sobie z tego zdawało sprawę).

Na pewno mi się to nie uda, jeśli zawodowo będę pracował nad jakimiś głupotami, bo trudno zmieniać świat po godzinach. Ostatnio miałem bliskie spotkania z realiami polskich uczelni, więc karierę naukową mogę sobie wybić z głowy -- nie mam zamiaru sobie marnować życia na mrzonki, że jeśli mam pomysł i energię, to System to doceni i zapewni mi odpowiednie środki, jak temu amerykaninowi.

Więc co mi pozostaje? Zostać jak najszybciej milionerem, żeby móc później poświęcić cały swój czas na fajne rzeczy. Ten pan tak zrobił. Jest rok ode mnie młodszy, rok temu został milionerem i teraz robi co chce.

Jest też amerykaninem, a ja nie. Eh.

Nie wiem, może narkotyki? Albo zostać urzędnikiem? Podobno da się szybko dorobić...

P.S. Tytuł pochodzi z tego wystąpienia. Zwracam uwagę zwłaszcza na drugi akapit.

P.S.2 W kontekście podlinkowanego bloga -- gdyby ludzie zdawali sobie sprawę, jak prymitywna jest ich edukacja w porównaniu do tego, jak powinna wyglądać, to polałaby się krew.

Z pamiętnika młodego przedsiębiorcy

11 X 2007, 22:20

Jak to w życiu -- wszystko ma swoje zady i walety.

Było tak: pracowałem nad systemem korzystającym z dziesiątek procesorów, gigabajtów RAM-u i gigabitów łącza. Naszym klientem były korporacje od których, jako programiści, byliśmy dodatkowo oddzieleni mało przepuszczalną warstwą szefostwa.

Jest tak: nowa firemka oficjalnie działa od półtora miesiąca. Jestem szefem działu IT. W praktyce oznacza to, że zajmuję się naszą "wirtualną" infrastrukturą oraz odpowiadam za większość rzeczy mających coś wspólnego z programowaniem.

Różnice? Sporo. Pierwsza -- poprzednio "klient" był dla nas bytem czysto wirtualnym. Terminy przychodziły i odchodziły. Nie odczuwaliśmy praktycznie żadnych konsekwencji naszej pracy (tak pozytywnych, jak negatywnych). Szefowie wiedzieli co i jak, a myśmy byli za firewallem. Teraz natomiast jeśli zawalę termin, to będę mógł się pójść osobiście potłumaczyć facetowi, który za zlecenie zapłacił. Oraz jego pracownikom, którzy z systemu mieli korzystać. Poziom odczuwalnej odpowiedzialności jest zdecydowanie inny.

Druga różnica -- pieniądze. Zaczynam podejrzewać, że w takim lowendowym plumkaniu, jakim się obecnie zajmuję, po prostu nie ma sensownych pieniędzy, a co za tym idzie, jest ono praktycznie skazane na marną jakość. Jeśli masz doświadczenie, interesujesz się tym, co robisz, jesteś na bieżąco z nowymi technologiami, to będziesz się zajmował nadzorowaniem jakiegoś mikroprojekciku w PHP za grosze? Czy może jednak pójdziesz pracować w sensownej firmie za sensowne pieniądze, albo założysz zaawansowanego technologicznie startupa z zamiarem zbicia na nim kokosów? No właśnie.

Case in point -- mam ponad półtora roku doświadczenia z całkiem sporych rozmiarów systemem rozproszonym. A zajmuję się administracją niewielkiego serwerka linuksianego oraz nadzorowaniem jednego PHP-owego kodera, gdzie wspomniane doświadczenie jest mi tak niesamowicie przydatne...

Oczywiście są i zalety. Po raz pierwszy od lat moja lista TODO nie jest nieskończona. Ba, kurczy się! Mam na niej zaledwie kilka pozycji i wiem, że jeśli przysiądę, to pod koniec tygodnia mogą zostać może dwie. Zacząłem znowu czytać książki! Na razie powoli, ale się rozkręcam.

Dodatkowo fajnie się patrzy na tego mojego PHP-kodera, jak się uczy. Czystszy kod, lepsza struktura, lepsze narzędzia, separacja kodu i HTML-a, smarty, porządnie zaprojektowana baza danych. Jeszcze z dwa takie projekty i będzie na tyle samobieżny, że w ogóle nie będę musiał patrzyć na to co on robi. A jak zechce później znaleźć sensowniejszą pracę, to nie powinien mieć problemów.

I, ponad wszystko, nie ma to jak możliwość ustalania własnych priorytetów. Znacznie przyjemniej się pracuje.

Z deszczu...

05 X 2007, 20:45

Załatać dziury w serwerze, dokończyć jego stawianie, wymyślić cennik, przygotować ofertę dla potencjalnego klienta, zrobić kilka drobiazgów dla aktualnego klienta, zaprojektować importowanie danych w aktualnie trwającym projekcie, poświęcić trochę czasu programiście i sprawdzić, czy robi tak, jak powinien, popłacić faktury.

Jakoś nie przyszło mi do głowy, że w tej firmie, tak jak w poprzedniej, będę musiał robić dziesięć rzeczy na raz. Jestem jeszcze bardzo niedoświadczony.

Tyle dobrze, że w razie konieczności potrafię sobie odchudzić listę TODO o połowę, bez skrupułów wywalając wszystko to, co ma niski priorytet. Zalety bycia własnym szefem.

Japiszon: powrót

25 IX 2007, 01:08

Parę dni temu praca powiedziała, że jednak mnie kocha i czy może są jakieś warunki na których zgodziłbym się zostać.

Zwolnić się nie było łatwo, oj nie było. Wtedy na propozycję zostania odpowiedziałbym bez wahania. To było wtedy.

Mam problemy primabaleriny. Ale mam. Są moje i są kurwa trudne. Honej, ty i ja to nie to samo, ale... trudno było?

Lefthand e-Faktura a administratorzy

14 IX 2007, 14:38

Nie wiem, śmiać się, płakać? (Dla niewiedzących -- poniższa komenda listuje pliki znajdujące się w paczce rpmowej.)

[root@uslugi ~]# rpm -qlp lefthand-server-1.5.3-2.i386.rpm
/tmp/lefthand-server
/tmp/lefthand-server/buildroot.tar.gz
/tmp/lefthand-server/install.sh
/tmp/lefthand-server/manifest.txt
/tmp/lefthand-server/scripts
/tmp/lefthand-server/scripts/postinstall.sh
/tmp/lefthand-server/scripts/postuninstall.sh
/tmp/lefthand-server/scripts/preinstall.sh
/tmp/lefthand-server/scripts/preuninstall.sh
/tmp/lefthand-server/scripts/rpmfiles.txt
/tmp/lefthand-server/scripts/rpmheader.txt
/tmp/lefthand-server/scripts/tarMainInstall.sh
/tmp/lefthand-server/scripts/tarMainUninstall.sh
/tmp/lefthand-server/scripts/tarinstall.sh
/tmp/lefthand-server/scripts/taruninstall.sh

Ja rozumiem, że firmy idą na łatwiznę, bo pełna obsługa systemów linuksowych jest dosyć upierdliwa. Ale powyższe to tak, jakby ktoś mi pokazał środkowy palec. Mam nadzieję, że to będzie działało z PLD-owym Firebirdem, bo średnio mam ochotę takie gówno sobie wrzucać na serwer.

Update: A te pliki to tak naprawdę domyślny instalator Firebirda ze zmianą w postaci ustawienie hasła administracyjnego na masterkey, zamiast zapytania się o nie. Ciekawym, czy sama binarka bazy to też domyślnie wzięta od upstreamu, czy ich własny build.

GIL

10 IX 2007, 19:36

Facet ma point. W pracy zastanawiając się nad wyborem języka, stanęło na stackless pythonie, ale w pracy miałem systemy bardziej zbliżone do google'owych, gdzie wszyscy wiedzieli, że od razu trzeba pisać z myślą o maksymalnej skalowalności, bo drugiego podejścia nie będzie. Więc nikt się specjalnie nie obruszał, że nie będzie można pójść na łatwiznę z normalnymi wątkami.

Ale wątki to jest mainstream, a im dalej w czas, tym więcej systemów wieloprocesorowych na rynku. I jeśli python pozostanie poza mainstreamem, to może się to dla niego źle skończyć, a tego bym nie chciał.

Z drugiej strony, co potrafię dopiero docenić z perspektywy lat, python w dużej ilości sytuacji stara się być mądrzejszy od programisty i podsuwać mu pod nos najlepsze rozwiązanie, utrudniając korzystanie z innych. I może Guido ma rację zniechęcając do korzystania z wątków. A może nie. Na razie wygląda na to drugie.

« prev