Posted by wiktor on Apr 27, 2010 in
Różne,
ciekawostki

Nie jestem w stanie zrozumieć, czemu polskie serwisy tak bardzo boją się udostępniać zgromadzone przez siebie dane poprzez API. Zastanawiam się, z czego to wynika?
Mówię to z perspektywy programisty, który na codzień pracuje przy platformie blogowej, która jako pierwsza około 9 lat temu udostępniła API. Przyczyniło się to do jej sukcesu na rynku. Zdarza mi się także pisać API, korzystać z nich, pisać biblioteki do obsługi ich, publikować przykłady. Nawet udało mi się wygrać MacBooka w konkursie na najlepszą aplikację zewnętrzną dla Grona.
Jak to jest u nas nad Wisłą?
Bez dwóch zdań króluje Blip ze swoim API oraz forem dyskusyjnym, gdzie programiści Blipa się udzielają. Twórca Blipa zadbał o dobre kontakty z deweloperami, co zaowocowało dziesiątkami dodatków do Blipa. Nic dziwnego, że Blip stał się tak bardzo popularny. Flaker też ma jakieś interfejs programistyczny, ale sama nazwa mnie odstrasza od serwisu. Blip FTW, zwłaszcza, kiedy planują wielkie zmiany w serwisie.
Wniosek z API Blipa: technologia, kontakt z deweloperami oraz ewangelizacja.
Grono swego czasu udostępniło API dla aplikacji zewnętrzynych. Ogłosili konkurs z fajnymi nagrodami, trochę prac napłynęło i nawet ktoś tam wygrał. Z dniem zakończenia konkursu wszystko zamarło, nie powstawały żadne nowe aplikacje. Ekipa Grona nie miała pomysłu na ich dalsze wykorzystanie, zrobili dokładnie nic. Kiedy Grono zaczęło przeżywać masowy exodus użytkowników, zaatakowali jeszcze raz z API à la Facebook – nie pomogło. Nie mogę się teraz do tego dokopać, ale była aplikacja odrzucona przez Grono, ponieważ integrowała się z serwisem konkurencyjnym. Dziwię się, że Grono jeszcze funkcjonuje.
Mamy jeszcze naszego lokalnego giganta Allegro, które jest wręcz uroczo staromodne ze swoim interfejsem programistycznym w SOAP. Są to nieznane mi zakątki internetów, lecz wygląda prężnie. Technologia – jest, ewangelizacja – ?, duża kasa – jest. Proste, no nie?
Kto powinien postarać się o API?
Interesują mnie tylko dwa serwisy. Pierwszy to król polskich portali społecznościowych. Nie widzą, że wczesna większość powoli odnajduje się na Facebooku? Nie widzą, że to oni mają lepszy CTR? Wątpię. Nasza-klasa interesuje mnie tylko z jednego powodu: duża baza użytkowników, czyli potencjalne pieniądze. Komuś Farmville? Quizy?
Drugi serwis to Gastronauci, niszowy serwis o knajpach z największą bazą recenzji w Polsce. Plotki głoszą, że gdzieś istnieje ich API (jeśli coś wiesz to podeślij mi info), nawet aplikacja na iPhone się szykuje. Dlaczego zwlekają z jego publikacją?
Posted by wiktor on Jan 21, 2010 in
Różne,
apple
Ostatnio byłem zmuszony to ponownej instalacji systemu na Maku. Przy okazji zrobiłem spis aplikacji, z których korzystam. Lista jest przede wszystkim dla mnie, ale może i coś dla siebie znajdziesz

.
- Xcode & Developer Tools – żeby zainstalować poniższe,
- MacPorts – upraszcza instalację oprogramowania open-source (wget, curl itd),
- Homebrew – jest lżejsze i łatwiejsze w obsłudze,
- Dropbox – dysk w chmurze, doskonała synchronizacja dokumentów pomiędzy komputerami (służbowy-prywatny), a także synchronizacja konfiguracji aplikacji,
- 1password – za dużo loginów i haseł dookoła, a wolę, żeby hasła nigdzie się nie powtarzały,
- Google Chrome – na codzień używam 2 przeglądarek: Safari i Chrome, w pracy Firefox (tylko i wyłącznie dla Firebuga),
- Things – moim zdaniem najlepsza aplikacja do getting things done,
- Evernote – do zbierania losowych myśli, pomysłów, notatek,
- Skitch – jeżeli robisz zrzuty ekranu często lub musisz wskazać coś na obrazku to Skitch jest niezastąpiony,
- ABlip – użwasz Blipa? jedeny sensowny klient na Maka,
- MacBlip – po przejściu na Snow Leoparda preferuje MacBlipa
- Tweetie – klient do Twittera,
- GitX – graficzny klient gita,
- TextMate – edytor tekstu,
- Fstream – do słuchania radio (list polskich stacji radiowych),
- CheckSpell – polski słownik na Maka,
- FluidTunes – wyłącznie dla szpanu,
- aplikacje, których nie trzeba przedstawiać: Skype, Transmission, Cyberduck, Perian, Growl, VLC, Quicksilver, StuffIt Expander,
- od czasu do czasu: Handbrake, Disk Inventory X, AppZapper, CSSEdit, OnyX.
Różne konfiguracje:
- Terminal: wygląd Pro, czcionka Droid Sans Mono (+antialiasing)
- Dodatki do przeglądarek: AdBlock
Tags: apple, mac
Posted by wiktor on Jan 3, 2009 in
Różne

Niby rzecz z pozoru błaha. Ale czy przywiązujesz uwagę do tego, jak wygląda znak zachęty w linii poleceń? Nie? Ja także nigdy się nad tym nie zastanawiałem. Do czasu. Sam nie wiem czemu, ale z uporem godnym maniaka zacząłem przyglądać się bliżej znakowi zachęty. Taki prefekcjonizm
.
Zakres moich poszukiwać ograniczyłem tylko do Basha. Żeby zmienić wygląd znaku zachęty, wystarczy ustawić zmienną środowiskową PS1 i zresetować terminal. Zazwyczaj ustawienie zmiennej odbywa się w pliku konfiguracyjnym Basha (w moim przypadku ~/.bash_login).
Jakie informacje mogą się pojawić w znaku zachęty? Aktualna godzina i data w różnych formatach, nazwa komputera, login użytkownika, bieżący katalog roboczy. Ponieważ już prawie nikt nie używa monitorów czarnobiałych, to warto także pokolorować znak zachęty.
Ostatecznie zdecydowałem się na poniższy wariant:
export PS1="\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ " |

Co tam dobrego można znaleźć? Na pierwszym miejscu login użytkownika oraz nazwa komputera, na którym obecnie znajduje się. Jest to o tyle istotne, gdyż często pracuję zdalnie na innych komputerach i wolałbym ich nie pomylić przez przypadek. Następnie kolorem niebieskim oznaczony jest bieżący katalog. Tutaj miałem dylemat. Czy pokazywać całą ścieżkę do np. ~/Library/Widgets, czy tylko nazwę bieżącego katalog? Zdecydowałem się pokazywać całą bieżącą ścieżkę.
PS. Nowy rok, nowe postanowienia i nowy layout na blogu
. Smacznego.
Aktualizacja (10/08/2010)
Zacząłem używać jednak coś bardziej wymyślnego. Linia poleceń zajmuje dwie linijki, ale pokazuje za to:
- bieżący branch gita,
- cały bieżący katalog,
- kod wykonania ostatniego polecenia (na czerwono, jeśli ostatnie polecenie zakończyło się błędem),
- godzinę.

if [ -f /etc/vanity-hostname ]
then
PROMPT_HOST_SEG="$(cat /etc/vanity-hostname | sed -e 's/\..*$//')"
else
PROMPT_HOST_SEG='\h'
fi
function promptcmd() {
LASTEC=$?
GITBRANCH=`git symbolic-ref HEAD 2> /dev/null`;
GITEC=$?
case $TERM in
xterm*)
local TITLEBAR='\[\033]0;\u@\h:\w\007\]'
;;
screen*)
local TITLEBAR='\[\033k\033\\\]'
;;
*)
local TITLEBAR=''
;;
esac
# PS1="$TITLEBAR\t \j ${ANSI_RESET}${ANSI_BLUE}\w "
PS1="$TITLEBAR\t \j \[\e[0m\e[34m\]\w "
if [ $LASTEC -ne 0 ];
then
PS1="$PS1\[\e[1m\]\[\e[31m\]$LASTEC\[\e[0m\] "
fi
PS1="$PS1\n"
if [ $GITEC -eq 0 ];
then
PS1="$PS1\[\e[36m\][${GITBRANCH#refs/heads/}] "
fi
PS1="$PS1\[\e[32m\]\u@${PROMPT_HOST_SEG}"
if [ -z $WINDOW ];
then
true
PS1="${PS1} "
else
PS1="${PS1}($WINDOW) "
fi
PS1="$PS1\$\[\e[0m\] "
}
export PROMPT_COMMAND=promptcmd
export EDITOR=`which vim`
export HISTIGNORE="&:ls:[bf]g:exit" |
Tags: terminal
Posted by wiktor on Jun 19, 2008 in
Różne,
apple,
ciekawostki,
gui,
java,
swing
W ostatnie wakacje z dobrze skonfigurowanego Windowsa XP przerzuciłem się na Maka. Nigdy za bardzo nie narzekałem na Windowsa. U mnie działał, co nie było chyba częstym zjawiskiem. Od jakiegoś czasu wzbiera się we mnie frustracja, kiedy patrzę wstecz na moje poprzednie życie
. Ponieważ obecnie jestem w trakcie pisania magisterki to posiadam nieskończone pokłady wolnego czasu. Najwyższy czas z siebie wszystko wyrzucić.
Rzut oka na wygląd mojego Windowsa, żeby się przekonać, że Maki już mi wcześniej chodziły po głowie. Nie będę wspominał o ilości pracy, którą trzeba poświęcić, żeby z Windows XP zrobić sensowne środowisko programistyczne, co widać na obrazku wyżej.
Środowisko programistyczne
Kiedy programista siada do czystej kopii Windowsa, nieważne czy XP czy Vista, to pierwszym odruchem jest (a przynajmniej powinno być) zainstalowanie Cygwina. Czynność wręcz obowiązkowa i nikt nie mnie przekona, że ponieważ mamy cudowne IDE to już nic nam nie potrzeba. Naprawdę samo IDE wystarcza? Naprawdę, naprawdę?
W takim razie prosty test: Jak policzyć liczbę linijek kodu w projekcie? (najlepiej na konsolce oczywiście) Pamiętam, że podczas pisania Zespołowego Projektu Programistycznego (można patrzeć na to, jak na licencjat) na UW ciągle z kolegami sprawdzaliśmy, ile już linijek kodu mamy. No bo 20 tysięcy to był dopiero porządny wynik
.
Wracając do Cygwina. Mimo że sprawuje się on znakomicie to jednak estetyką nie powalał.
Jest po prostu brzydki i zawsze będzie tylko imitacją konsolki unikowej. Tym samym przechodzę do kolejnej rzeczy, z jaką chce się rozprawić.
Natywne aplikacje
Aż nie wiem, od czego zacząć. OK, pokopię leżącego, czyli Vista. Nie będę się przecież czepiał, że okienka z edycją zmiennej środowiskowej nadal nie można rozciągnąć, co doprowadza do szału. O masowej adopcji WPF także nie będę wspominał. Przytoczę tylko kawałek postu pt. Where are the native Vista apps?, gdzie Eric Burke pisze:
Vista supports hardware-accelerated graphics. WPF seems to support really cool things like vector-based UIs. [...]
How can Microsoft expect third parties to develop Vista-specific apps if the bundled utilities (chodzi o Paint i Notepad) don’t even take advantage of Vista features? This is incredibly hard to understand.
Good luck, Microsoft. I’m typing this on my new MacBook Pro, and it looks like I have plenty of native Cocoa apps from which to choose.
Wcześniej brak w pełni natywnych aplikacji mi nie przeszkadzał. Ale odkąd przesiadłem się na Maka dostrzegłem ich urok. Spójność wyglądu systemu operacyjnego i aplikacji jest bardzo miła dla oka oraz nie rozprasza. Dopiero teraz zrozumiałem istotę i potrzebę stworzenia biblioteki SWT, na którym oparty jest Eclipse. Aplikacje oparte na SWT będą lepiej prezentować się niż konkurencyjne napisane w Swingu. Sam pisałem aplikacje Swingowe (np. Symulator Sieci Petriego). Dlatego wiem, ile energii i pracy trzeba włożyć, żeby aplikacja napisana w oparciu o Swinga ładnie wyglądała. A tak poważnie to czy aplikacje desktopowe przeznaczone dla zwykłego użytkownika powstają w Javie, w Swingu? Poważnie?
Przyjazny system dla programisty
W Cupertino udało się stworzyć system, który nie ssie. Globalny, systemowy słownik dostępny w każdej aplikacji (tak, tak, jest to bardzo ważne), ujednolicony system notyfikacji poprzez aplikację Growl, czy innowacyjne pomysły na interakcje z użytkownikiem jak Quicksilver to tylko kilka przykładów małych rzeczy, które cieszą na Maku. Przy okazji to jeśli ktoś jest zainteresowany, czym jest Quicksilver to skromnie polecam swoją prezentację o Quicksilverze.
Powszechne w Polsce skojarzenie dotyczące Maków jest tragiczne
, ale mimo to trzeba robić coming out i łamać te stereotypy
. Więc czas na głupiutkie argumenty. Zacznijmy od konferencji i dużych firm. Nie ważne, czy spojrzy się na zdjęcia z RailsConf czy z JavaOne, to zawsze Maki tam przeważają. W Google’u 6 tysięcy na 20 tysięcy pracowników wybiera Maka. Jeszcze nie przekonany?
Papa Windows!
Tags: apple, java, mac, ui, ux, windows
Posted by wiktor on Feb 5, 2008 in
Różne
Nie mogłem się powstrzymać
. Znalezione gdzieś w sieci…

Posted by wiktor on Dec 16, 2007 in
Różne,
ciekawostki

W piątek na stronach technicznego blogu grono.net opublikowano wyniki konkursu na najlepszy widget dla grona. Praca mojego autorstwa – Pięciosłówek – zdobyła pierwsze miejsce!
Co to jest Pięciosłówek? Prosta aplikacja, dzięki której możesz opisać swoich znajomych (z grona) w dokładnie pięciu słowach. Pyszna zabawa
. Pięciosłówek działa jako zwykła aplikacja internetowa, a także jako gadżet dla iGoogle, jako sideBar dla Firefoxa oraz jako widget dla Netvibes.
Teraz trochę techno-informacji. Aplikacja została napisana w oparciu o Ruby on Rails. Przy okazji napisałem bibliotekę RGrono, która rozmawia z API gronowym (tylko w tym zakresie, który potrzebowałem). Jak będę miał trochę czasu wolnego (tiaaa….) to dopiszę brakującą funkcjonalność i upublicznię RGrono.
AKTUALIZACJA (11-02-2008)
W zawiązku z pomówieniami dotyczącymi mojego projektu Pięciosłówek postanowiłem zamieścić krótkie oświadczenie.
Przyznaję, że kolorystyka oraz jedna grafika były wzorowane na serwisie Pownce. Jednocześnie pragną przypomnieć, że w kontekście całej aplikacji rzeczy te nie miały większego znaczenia. Podkreślam także, że Pięciosłówek nie ma nic wspólnego z pomysłami serwisu Pownce.
Ponadto pragnę poinformować, że rozmawiałem z Pownce. Poniżej przedstawiam odpowiedź:
Hi Wiktor. Thanks for contacting us about this issue. If possible, please change the graphics that are taken directly from Pownce’s interface. Otherwise, if you’d just send us something really cool from Poland, we’ll consider the whole matter closed. Cool?
Pownce Inc.
1459 18th Street, Suite 142
San Francisco, CA 94107
USA
Daniel Burka
Interface Designer, Pownce
Chciałbym również podkreślić, że o całej zaistniałej sytuacji dowiedziałem się przypadkowo, gdyż inicjator pomówienia nie był stanie zawiadomić mnie o swoich podejrzeniach osobiście. Warto tu również zauważyć, że wszelkie insynuacje wychodzą od osoby całkowicie anonimowej. Nie miałem żadnych możliwości kontaktu z nią, rozmowy.
Jeżeli wystąpią jakiekolwiek inne wątpliwości dotyczące mojej pracy, proszę o bezpośredni kontakt ze mną.
Posted by wiktor on Oct 22, 2007 in
Różne
Dzisiaj na seminarium magisterskim na MIMUWie przedstawiłem temat mojej pracy magisterskiej. Oto jej tytuł:
- po polsku: “System wspomagający przegląd kodu w rozproszonych zespołach programistycznych”,
- po angielsku: “Code review system for distributed developer teams”.
Poniżej możesz przeczytać opis pracy magisterskiej oraz obejrzeć slajdy z prezentacji:
Read more…
Posted by wiktor on Sep 10, 2007 in
Różne,
ciekawostki
Przechadzając się wśród półek sklepu Kuchnie Świata w Złotych Tarasach znalazłem w lodówce Jolt Colę.

Czym jest Jolt Cola?
- Jolt Cola: bezalkoholowy napój elitarnych hakerów
(ang. “Jolt Cola: The soft drink of the elite hacker”) – tekst z filmu Hakerzy
,
- zawiera 2 razy więcej kofeiny niż zwykła puszka coli,
- jedna puszka Jolt Coli to ekwiwalent filiżanki jeden kawy,
- napój jest to bardzo geekowy, dowodem niech będzie możliwość kupienia jest w ThinkGeek.com,
- jest tańszy niż Red Bull (jego cena to 3,9 PLN), ale nadal to drożej niż poczciwy Tiger
,
- więcej o Jolt Coli znajdziecie na Wikipedii.
A jaki jest wasz ulubiony napój dający zastrzyk energii (w domyśle kofeiny)?
Posted by wiktor on May 14, 2007 in
Różne
Witam w swoje skromne progi. Tym wpisem rozpoczynam działalność mojego bloga o radosnym programowaniu, głównie w Javie. Co to oznacza? W głównej mierze to wszystko, co można odpalić na maszynie wirtualnej Javy (JVM)
. Będę się starał pisać w miarę często i przykładał się, aby wszystkie posty były bardzo dobrej jakości.
Jeśli chcesz od razu wiedzieć, kiedy coś nowego jest na blogu to subskrybuj już teraz mój kanał RSS. Pozdrawiam