wrzesień 23, 2008 at 09:32
· Kategoria wpisu: Narzędzia
Praktycznie od dnia pierwszego zaglądam i majstruję pod maską Mac OS X. Spróbuję w tym wpisie podsumować trochę swoje obserwacje, patrząc oczywiście z pozycji rubisty i celowo pomijając wady i dostrzeżone niedostatki :)
Przeczytaj cały wpis »
[
objective c os x ruby]
Permalink
sierpień 25, 2008 at 10:00
· Kategoria wpisu: Varia
Dziś część druga subiektywnych obserwacji naszego grajdoła z ostatnich kilku miesięcy, tym razem same technikalia:
Przeczytaj cały wpis »
[
ruby]
Permalink
luty 18, 2008 at 17:12
· Kategoria wpisu: Koncepcje
W ostatnią sobotę miałem trochę wolnego czasu, który postanowiłem twórczo wykorzystać realizując jeden ze swoich “krótkich pomysłów badawczych” :)
Dziś większość (wszyscy?) ze znajomych ma swoje profile na którymś z serwisów społecznościowych. Podstawową (a czasem jedyną funkcją) takiego serwisu jest możliwość dodawania do swojego profilu znajomych. Znajomi oczywiście mają swoich znajomych, którzy mają swoich znajomych…. Zaciekawiło mnie jak będzie wyglądał taki graf znajomych na obrazku. Napisałem crawlera, który zajął się zbudowaniem grafu z moich kontaktów, wynik wpuściłem do graphviz i oto mój graf kontaktów goldenline.pl:

Wygląda na to, że moja niewielka liczba kontaktów w GL zawiera sporo osób-hubów (czyli sprytnie sobie dobrałem te kontakty :)). Moja żonka także zażyczyła sobie taki obrazek. Jak widać ona zdecydowanie jest hubem:
Na koniec jeszcze kilka rozważań. Wybrałem GL, a nie np. naszą klasę głownie dlatego, że kontakty w GL są tworzone (przeważnie) z większym namysłem niż w przypadku n-k. Uznałem tym samym, że ‘jakość’ kontaktów będzie lepsza i ciekawsze mogą być wyniki. Nie bez znaczenia była też liczba danych do pobrania i przetworzenia - więcej kontaktów==więcej danych, ale niekoniecznie lepszy wynik.
Wracając do obserwacji - osoba-hub w drugim stopniu oddalenia od centrum (znajomi znajomych) ma ponad 10 tys osób!!! Co oznacza, że gdyby ów graf kontaktów dla huba wykreślić do 4 poziomu zapewne zawierałby wszystkie osoby jakie są zapisane na Golden Line. Niby większość z nas słyszała o eksperymencie Milgrama, ale jednak takie spojrzenie na rozpiętość naszej własnej sieci społecznej robi wrażenie.
Warto też uzmysłowić sobie, jak obliczeniowo zachłanną pracą jest obróbka takich większych grafów (know-how w tej dziedzinie to jedna z istotnych przewag Google’a). Przykładowo jeden z obrazków przy zbyt ambitnie ustawionych parametrach dotyczących wizualizacji zamordował mi serwer, który użyłem do obliczeń - po 4 godzinach serwer wymagał twardego resetu.
Tylko dla übergeeków :)
Zanim zaczniecie pisać własnego crawlera zwróćcie proszę uwagę, że wizualizacja grafu jest znacznie bardziej ambitnym zadaniem od jego budowy. Sam graphviz ma milion opcji, które pozwalają w istotny sposób wpłynąć na wygląd końcowego obrazka. Aby ułatwić rozpoczęcie zabawy załączam do pobrania dwa pliki z grafami w formacie DOT (plik1 ok. 19k, plik2 ok. 240k ). Jeżeli uda się wam wyprodukować ciekawe obrazki, liczę na możliwość ich obejrzenia.
[
ruby visualization]
Permalink
luty 5, 2008 at 17:32
· Kategoria wpisu: Narzędzia, Praktyki
Z emocji związanych z wypuszczeniem w świat bezbiura.pl zapomniałem wspomnieć o najważniejszym technologicznym aspekcie tego projektu. Ale już się poprawiam - otóż mam wrażenie, że bezbiura.pl jest jednym z pierwszych (pierwszym?) serwisem w naszej sieci korzystającym z frameworka Merb.
Przeczytaj cały wpis »
[
merb ruby]
Permalink
listopad 13, 2007 at 15:58
· Kategoria wpisu: Narzędzia
Zaczęło się banalnie od rozbudowy parku maszynowego webankiety… kiedy już całość pracowała pełną parą przyszedł czas na backupy danych. Ponieważ taka zmiana to jedyna realna szansa na wypróbowanie nowych rozwiązań postanowiłem poszukać nowego narzędzia do tego zadania. Istotnym argumentem za zmianą było także to, że zmieniły mi się wymagania stawiane przed systemem backupów, a stare skrypty szelowe były mało elastyczne (i średnio czytelne) - nic więc prostszego, znaleźć zainstalować i voila…
Niestety, poległem już na pierwszym etapie, oprogramowania do robienia kopii bezpieczeństwa jest chyba tyle i frameworków webowych w Javie, przejrzałem ileś-tam-projektów, najbliżej podium znalazł się backup-gem. Przyjrzałem się mu dokładniej i trochę zapał mi minął. Okazało się, że realizacja moich założeń będzie wymagała napisania sporej ilości kodu rozszerzającego backup-gem. Zirytowany tym stanem rzeczy postąpiłem jak rasowy geek… postanowiłem stworzyć własne, najlepsze na świecie (a jakże! :)) 1e10+1 rozwiązanie do obsługi backupów - tak narodził się Backupeer.
Przeczytaj cały wpis »
[
ruby server tool webankieta]
Permalink