
IMHO strasznym zamachem na usability tworzonej strony jest nazywanie pewnych elementów w zupełnie inny sposób. Jako przykład może posłużyć strona logowania do konta na lockerz.com, totalny dramat.
Gdy zakładałem konto potrzebowałem kilku minut aby zrozumieć co kryje się pod słowem "combination". Czy nie można było tego pola od razu nazwać po prostu "password"? A może to jest jakieś zabezpieczenie przed inteligentnymi botami?
Uważam, że pewnych nazw, które są powszechnie używane po prostu nie można zmieniać. Może to się źle odbić na tym jak korzysta się z serwisu.
Na koniec z innej beczki - po kiego wała jest wrzucony ten podpis:
FORGOT YOUR COMBINATION?
Hint, it's your password.
Ja jako szary user za bardzo tego nie rozumiem. Jeśli zapomniałem "kombinacji" to uświadomienie mnie, że to jest "hasło" (co jako użytkownik lockerz.com pewnie już wiem) powinno mi w czymś pomóc? :)
W biurze nastąpiła mała rotacja sprzętu. Wraz z nowym komputerem mam okazję testować Windowsa 7 (o tym może później napiszę). Pomyślałem, że dam również szansę najnowszemu Zend Studio. Niestety połączenie tego IDE z Eclipsem wyszło tylko na gorsze.
Pierwsza rzecz, która sprawiła że straciłem ponad 2 godziny to konfiguracja. Okazuje się, że głupia zmiana kodowania znaków oraz wielkości tabulacji wymagała ode mnie zmian w kilkunastu pozycjach. Oczywiście Eclipse ma osobne konfiguracje dla każdego z edytorów. Wiąże się to również ze skrótami klawiaturowymi, także aby wszędzie mieć te same skróty musiałem się chwilę zastanawiać którą opcję wybrać z menu kontekstowego.
Koniec końców okazało się, że moje wysiłki i tak były daremne. Okazuje się, że nie sposób skonfigurować pewnych rzeczy dla poszczególnych edytorów (każdy typ plików źródłowych ma swój "edytor"). Tak więc edytor PHP nie ma skrótu (Shift+Tab - cofnięcie tabulacji), choć edytor zwykłych plików tekstowych ma taką opcję. Poza tym okazało się, że dla CSSów tabulacje były większe niż w innych edytorach - znowu musiałem szukać w konfiguracji dlaczego tak się stało. Oczywiście aby było zabawniej polskich znaków nijak nie szło używać.
Najzabawniejsze jednak było stworzenie projektu. Po dodaniu odpowiedniej ścieżki do niego nie działało podpowiadanie kodu. Normalnie (czyt w wersji 5.x) wystarczyło wpisać nazwę klasy, a podpowiedzi same się pojawiały. W nowym Zendzie już tak wesoło nie jest. Tutaj poza dodaniem ścieżek do projektu trzeba zdefiniować dodatkowo zewnętrzne źródła, które wskazują na te same pliki tego projektu..
Okazuje się, że taki toporny Zend Studio w wersji 5.x jest o wiele bardziej dopracowany niż najnowsze dziecko firmy Zend. Pierdyliard opcji jakie przynosi ze sobą Eclipse po prostu komplikuje całą sprawę. Aby w pełni postawić to środowisko do normalnego funkcjonowania trzeba pewnie poświęcić cały dzień i przekopać tysiące, powtarzalnych pozycji w konfiguracji. Naprawdę nie warte zachodu i pieniędzy. Zwłaszcza, że ten sam efekt uzyskamy instalując starego poczciwego Zend Studio..
Content Delivery Network, bo tak zowie się potworek, był moim dzisiejszym celem. Konkretnie to znalezienie jakiś informacji o firmach serwujących tego typu usługę. Okazało się, że to wcale nie było takie proste.
Miałem dość konkretny cel, dla którego chciałem zastosować CDNa. Poza faktem hostowania plików potrzebne były maszyny, które mogłyby zająć się encodowaniem i serwowaniem wideo. Tak więc najbardziej skupiłem swoją uwagę na tym aby firmy oferujące usługę (bo tak to roboczo nazwę) CDN pozwalały również na obróbkę plików wideo (im więcej formatów, tym lepiej).
Dodam, że przewinął nam się pomysł postawienia własnej maszyny, ale sobie odpuściliśmy.
Zawartość apteczki w firmie programistycznej? Paczka Ibupromów.
Wczoraj, o 6 rano wreszcie odpaliliśmy jeden z naszych (największy chyba do tej pory) z serwisów. Generalnie po 4 miesiącach pracy nasuwają mi się 2 wnioski, które nie są związane z samym projektem, a tak ogólnie:
- Trzeba do umowy dodać nowy mnożnik cen - Wielki Kurwa Problem (WKP)
- Użytkownicy po zobaczeniu nowej odsłony serwisu oczywiście przyjebali się do najważniejszego - zamiast czarnego tła, jest białe.
Z komentarzy userów można wywnioskować, że jak się raz zrobi serwis, a oni się przyzwyczają, to najlepiej w ogóle niczego nie zmieniać. Olać to, że technologicznie wszystko jest słabe. Oczywiście design jest najważniejszy. Tak więc czytając komentarze pod newsem o nowej wersji serwisu jakieś 90% userów jebie się, że tło nie teges jest..
Podobna sytuacja była z Allegro. Zmienili layout i nagle wszystko jest do dupy, bo... layout się nie podoba ? Choćby kurna system wszystkim facetom laski obciągał, to by przestali z niego korzystać, bo zmieniła się kolorystyka i układ paru elementów.
Generalnie jestem trochę wkurzony tymi komentarzami. Ja, jako developer, spędziłem sporo czasu nad tym serwisem i nawet komentarze typu "zrypany kolor tła" gdzieś tam we mnie trafiają. Wiem, że to jest głupie (zwłaszcza, że nie my projektowaliśmy wygląd), ale tak się jakoś dziwnie przez to czuję. Będę musiał się uodpornić na krytykę takich głupawych ludzi. Zawsze wydawało mi się, że nie mam z tym problemu. Widać, że jak się trochę bardziej w coś zaangażuję to jednak jestem bardziej podatny..
PS. Nie podam nazwy serwisu, ale przyznam, że jest to jeden z największych w polsce serwisów, w swojej dziedzinie, który już jest z nami od ponad 10 lat.

Nie wiem czy zauważyliście. Została odświeżona strona Mozilla Addons. Mamy bardziej przejrzysty układ, ładną kolorystykę i bardzo ciekawy dodatek.
Od tej pory możemy na stronie z wtyczkami tworzyć właśne kolekcje wtyczek. Dzięki rozszerzeniu Add-on Collector można dodawać kolejne subskrypcje kolekcji. Rozwiązanie zgrabne i łatwe. Jedyne wymagania to konieczność posiadania w/w wtyczki, oraz konto na addons.mozilla.org
Na chwilę obecną subskrybuję dwie kolekcje:
Czy warto? Myślę, że tak. Jeśli chcemy w pewien sposób zoptymalizować naszą pracę to niektóre kolekcje będą w sam raz.
Pracując jako programista nie raz, nie dwa musiałem się zmierzyć z tym co klient ma na myśli. Niestety specyfikacja nie oddaje tego jak w rzeczywistości dane funkcjonalności mają się prezentować. Sprawia to sporo problemów. Przede wszystkim konieczność wprowadzania masy poprawek z tego względu, że wyobrażenie klienta było zupełnie inne od wizji programisty.
Jest pewna metoda, która może skutecznie pomóc w poprawieniu tworzenia aplikacji oraz uniknąć wprowadzania zbędnych (a czasami czasochłonnych) poprawek. Ów metoda to, wspomniane w tytule, prototypowanie.
Prototypy pozwalają urzeczywistnić wizję tego jak poszczególne funkcjonalności, a zarazem cała aplikacja mają wyglądać. Pozwalają klientowi w początkowej fazie na ustawienie wszystkiego zgodnie z tym jak chce, a w późniejszych etapach ułatwiają stworzenie serwisu.
Miałem okazję tworzyć serwis zgodnie z wytycznymi dostarczonymi w prototypie. Muszę przyznać, że dostarczony prototyp okazał się niesamowicie pomocny i zdecydowanie przyspieszył stworzenie aplikacji z bardzo prostego powodu - uniknięcia zbędnych pytań oraz tworzenia kolejnych poprawek.
Idąc za Kovalem wrzucam też zdjęcie mojego miejsca pracy :)

Dodam jedynie, że zdjęcie było robione podczas ceremonii otwarcia Igrzysk Olimpijskich i jeden z komputerów posłużył nam za telewizor :)
Ostatnio, podczas testowania którejś z naszych aplikacji (niezależnie czy to forum, edycja profilu etc) ciągle uploaduję zdjęcia z icanhascheezburger.com i tak na wersjach testowych naszych projektów coraz częściej widać jakieś koty i teksty typu 'All heil for teh ceiling cat!'. Czy Wam też zdarza się coś tak dziwnego? :)
Niestety temat, o którym nie chcę mówić powrócił. Mowa o moich nieszczęsnych studiach, o których to nie chcę rozmawiać z własną rodziną. Niestety po raz kolejny czuję się porównywany do własnego rodzeństwa i stawiany do wyścigu szczurów, w którym nie chcę uczestniczyć. Od początku wiedziałem, że wrócę na studia (po tym jak zrezygnowałem), ale nie byłem do końca pewien gdzie. Oczywiście opcją była moja znienawidzona PG, ale tym razem w trybie zaocznym (nie chcę rezygnować z dotychczasowej pracy). Ok, plan był, możliwości finansowe jako tako też. Znałem przedział cenowy za semestr, okazało się, że źle go znałem. O cenach mówił mi znajomy, który aktualnie siedzi na którymś roku zaocznych studiów na PG. Okazało się, że do jego kwoty muszę dodać ~400zł, także już za dużo jak dla mnie.
Mogłem pokazać panom z PG środkowy palec, ale tego nie zrobię. Okazuje się, że moja rodzinka, tak chce mnie wspomóc, że jedyną opcją jest politechnika, bo inne uczelnie nie. Plus taki, że finansowo mnie wspomogą. Minus taki, że znowu jestem pod kloszem, a moje zdanie specjalnie się nie liczy. Chyba mam być spełnieniem oczekiwań rodziców, oraz godnym naśladowcą własnego rodzeństwa. Niestety problem jest taki, że nikt z nich nie chce zrozumieć, że moja chęć do kontynuowania nauki skończyła się wraz z rezygnacją ze studiów. Może to przez lenistwo, ale i tak jestem zdania, że to co się na nich nauczę nie przyda w tym co będę chciał robić.
Jest jeden problem - papier, który ponoć zapewni mi dobrobyt, szczęście i masę innych bajeranckich rzeczy (w tym stadko pięknych kobiet). Jakoś nie jestem przekonany do jego znaczenia. Tym bardziej, że uczelnie do zawodu słabo przygotowują (ostatnio masa artykułów w lokalnym Metrze na ten temat).
W ramach poznawania nauki Pythona postanowiłem zrobić bajer zaczerpnięty z mojej pracy. Właściwie żadna rewelacja, ot zwykłe odtwarzanie strumienia audio (z tzw. Shoutcastów), które co 30 minut zmienia strumień odtwarzania.
Już wcześniej wspominałem o tym, że mam problemy z zaciągnięciem jakiejś fajnej biblioteki, która może bezproblemowo odtwarzać dźwięk. Męczyłem się chwilę z PyMedia, ale tak szczerze mówiąc to program był jedną wielką rosyjską ruletką. Albo nie chciał się połączyć, albo to losowanie feedów i późniejsze ich odpalanie totalnie nawalało. Zdarzało się też tak, że wylosowany feed odtwarzał się dopiero po kolejnym losowaniu.. Niestety błedu nie znalazłem, dlatego na chwilę obecną postanowiłem zrobić małą prowizorkę.
Obecna wersja ma zaimplementowaną klasę, która pobiera listę serwerów (póki co tylko pliki z rozszerzeniem "pls", najlepiej dociągać z shoutcast.com), pobiera plik listy i kopiuje wszystkie adresy serwerów. Później następuje losowanie jednego adresu i przekazanie go jako parametru do programu "mpg123". Niestety na chwilę obecną to jest jedyna implementacja dźwięku jaka dość bezboleśnie przeszła. Niestety kurs obsługi GStreamera w Pythonie spalił w przedbiegach - okazuje się, że wtyczka za bardzo nie rozpoznaje parametru "alsasink". Trudno, później zagłębię się w tym.
Jak się łatwo domyśleć, będzie nam potrzebny program "mpg123" i chyba tylko tyle. Nie jestem pewien co do rozszerzeń samego Pythona. Aplikacja odtwarzająca dźwięk jest pakowana w tło, a jej PID jest zapisywany do pliku. Gdy nastąpi czas zmiany URLa program zostaje zabity, a po wylosowaniu kolejnego feed'u ponownie odpalony. Póki co czas zmiany serwerów to 5 minut (można to zmienić w pliku play.py). Lista serwerów znajduje się w pliku "stations_list". Przy okazji można zobaczyć jak mniej więcej to powinno wyglądać.
Myślę, że warto o tym napisać. Niestety mój pierwszy semestr studiów można spokojnie określić mianem "epic fail". Nie zaliczyłem ani jednego egzaminu (teoretycznie jeszcze do końca marca mam dopytkę), dlatego też postanowiłem zrezygnować. Wprawdzie mogę spokojnie przejść (pod warunkiem zaliczenia tej dopytki) na kolejny semestr, ale nie podoba mi się wizja poprawiania zaległych egzaminów + tych co będą na kolejnym semestrze.
Wielu teraz mogło by powiedzieć, że straciłem pół roku. Możliwe, lecz ja się i tak cieszę. Poznałem ciekawych ludzi, dowiedziałem się wielu nowych rzeczy. Już wiem jak później sobie poradzić. Myślę, że następnym razem nie zrobię podobnego błędu.
W związku z tymi zaległymi egzaminami kombinowałem z tym co zrobić. Ostatecznie wyszła myśl, żeby jakoś podbić legitymację studencką, a drugi semestr olać (wiadomo - zniżki ;p). Rozmawiałem nawet z pewnym prawnikiem (znajomy siostry), który zasugerował dziekankę zdrowotną. Pomysł fajny, szkoda tylko, że ten jełop (bo jak można inaczej nazwać prawnika co sugeruje takie rozwiązania?) zasugerował, że muszę "zdobyć" papiery o mojej chorobie.. Myślę, że więcej nie muszę tłumaczyć..
PS. złożyłem podanie z prośbą o przeniesienie na pierwszy semestr kolejnego roku akademickiego.
Legitymacji nie będę miał podbitej, ale postaram się o inny sposób na zniżki. Znajomy z grupy (był w podobnej sytuacji) właśnie z tego rozwiązania skorzystał i sam poszedł do pracy. Wszystko ze strony prawnej jest legalne (jego ojciec jest inspektorem pracy) także nie byłoby się o co martwić.

Jeszcze gdy byłem gówniarzem na moich korkach z angielskiego bawiliśmy się w pewną fajną gierkę. Niektórzy pewnie ją znają (ja niestety nazwy nie pamiętam...), inni pewnie nie, więc postaram się bardzo krótko przedstawić o co chodziło.
Otóż wymyślaliśmy sobie jakiś temat, a potem na zmianę zapisywaliśmy na kartce swoją część (zazwyczaj dwa-trzy zdania max) opowiadania na w/w temat. Po zapisaniu swojego zdania zaginaliśmy kartkę tak, aby druga osoba nie widziała co było napisane.
Gdy kartka nam się kończyła rozwijaliśmy ją i czytaliśmy to co tam było napisane. Często okazywało się, że efekt był wyjątkowo zabawny i cała historia wbrew pozorom zachowywała spójność.
Taka zabawa bywała na różnych forach, lecz była bezsensu (wiadomo - było widać to co inni napisali). Z tego powodu to raczej było mało ciekawe... Ja, w ramach testowania pewnego skryptu, zrobiłem stronkę (skrypt?), który ponownie wykorzystuje ten pomysł z tą różnicą, że pokazanie wszystkich fragmentów nastąpi mniej więcej za tydzień, czyli 26-01-2008. Dodatkowo widać jest ostatnio dodany fragment, tak żeby cała opowieść była w miarę spójna.
Jeśli coś takiego Ciebie interesuje to zapraszam na radmen.dharkness.info (przy okazji sprawdzę ten hosting ;p).
Jednocześnie proszę o:
- nie spamowanie
- brak wulgaryzmów (albo ich maksymalna redukcja)
Dzisiaj od mniej więcej południa starałem się zainstalować serwer SYBASE ASA. Na pierwszy ogień poszły binarki deb jakie znalazłem, niestety po chwili nie osiągnąłem żadnych rezultatów..
Drugą próbą było pobranie źródeł. Normalnie w 2,5h wszystko powinno być pobrane. W tym jednak wypadku sprawa zajęła ponad 6h. Po rozpakowaniu okazuje się, że to nie są źródła, a instalator napisany w JAVA. Myślę, że będzie ok, czyli coś w stylu instalacji na windowsa... Dochodzi do momentu konfiguracji i zonk. Fail, fail, FAIL... coś ciągle się kaszani, ale na samym końcu serwer (a właściwie dwa z trzech komponentów) działają.. Teraz miała nastąpić próba połączenia, niestety podczas instalacji ani razu nie konfigurowałem użytkownika także jaki login, jakie hasło?
Jestem nieco poirytowany tą sytuacją, bo od tego serwera zależy czy wykonam dość spore zlecenie, a póki co wszystko wskazuje na to, że tak też się nie stanie. To jest również moment, w którym dochodzę do wniosku że pod Windowsem bez pieprzenia miałbym ten serwer i nie musiałbym się przejmować taką drobnostką...
Dzisiaj zmuszony byłem stworzyć skrypt w PHP, który wykorzystuje funkcję mail(). Ponieważ miałem serdecznie dość wgrywać na mój serwer plików, tylko po to aby sprawdzić czy wysyłany mail jest poprawny postanowiłem na szybko zainstalować sobie jakiś serwer SMTP.
Gdzieś przeczytałem, że klasyczny sendmail to przeżytek, a na dodatek jest pełen luk, także wybór padł na POSTFIXa. Instalacja i konfiguracja pod Ubuntu jest banalna. Wystarczyło posłużyć się poleceniem:
sudo apt-get install postfix
A potem przejść bardzo prostą konfigurację (praktycznie wszystko pozostawiłem standardowo). Wprawdzie taka konfiguracja nieczym nie zachwyca. Powiem wręcz, że to jest bardzo ubogi efekt, ale najważniejsze co chciałem zostało osiągnięte. Mogłem korzystać z funkcji mail.
Edie przeszedł kolejną fazę ewolucji. Tym razem jest bogatszy o kilka nowych funkcji.
Przypominam, że Edie jest jabberowym chat botem. Wystarczy, że się do niego zalogujesz i możesz rozmawiać z innymi zalogowanymi. Można powiedzieć, że to jest taka konferencja jabberowa, tylko że nie musimy się martwić tym czy posiadamy obsługę konferencji jabberowych.
Jak masz ochotę pogadać to tutaj masz JID'a Ediego: edi@uaznia.net
Tak jak wcześniej obiecałem daję linka do kodu źródłowego Jabberowego Chat bota - Ediego.
Może jeszcze niektórzy pamiętają notkę o Edie'm. Postanowiłem nieco zabrać się za ten skrypt i są jakieś efekty.