Author Archive for SkyKnightPage 3 of 8

Wielki Brat vs. Stallman

Na Onecie pojawił się wywiad ze Stallmanem, który to ostatnio wpadł do Krakowa (mam nadzieje, że nie spotkał brytyjskich turystów). Mało kto z “branży” go nie zna i wiele już toczono bitew od wyższości jego idei nad innymi. Nie o to mi jednak chodzi. Zastanawia mnie, czy stwierdzenia takie jak “Cloud computing to głupota” albo to, które pojawiło się w wywiadzie, że “Nie mam ani jednej komórki. Nie pozwolę Wielkiemu Bratu, by mnie śledził” nie są lekką przesadą? Każdy postęp i wygoda użytkowania ciągnie za sobą jakieś zagrożenia. Będę korzystał z produktów Google oraz innych serwisów udostępniających mi niezbędne usługi, nawet kosztem własnej prywatności, bowiem nie widzę sensu wywarzania tych samych drzwi. A to, że otwarcie tych drzwi może coś kosztować, to już inna sprawa.

Własny widget dla Wordpressa

Wordpressowy sidebar bardzo mi się podoba – nie muszę grzebać w kodzie, by coś poprzesuwać, zmieniać. Jednak zanim napiszesz własny prosty widget, pamiętaj, jest jeden mały “myk” ;-) W dokumentacji Widget API napisano, że aby zarejestrować nowy widget należy wywołać (np. w pluginie) register_sidebar_widget(). Szkoda tylko, że ktoś nie wspomniał o tym, że w najnowszych wersjach WP (bodajże od 2.5.x) ta funkcja dołączana jest przez core Wordpressa później niż plugin w związku z tym otrzymujemy piękny komunikat:

Call to undefined function: register_sidebar_widget

“Szybkie” rozwiązanie zostało przedstawione w tym poście, chociaż wydaję mi się trochę błędne, stąd też sadzę, że ten kod jest lepszy:

function widget_becool ($args) {
echo $args['before_widget'];
echo $args['before_title'];
echo ‘Becool!’;
echo $args['after_title'];
// sth
echo $args['after_widget'];
}

function widget_init_becool() {
register_sidebar_widget( ‘Becool’, ‘widget_becool’ );
}
add_action(‘widgets_init’, ‘widget_init_becool’);

Można użyć create_function(), ale myślę, że tak jest czytelniej :-)

Mp3Arranger

Przetrząsając swój dysk w poszukiwaniu zaginionych plików muzycznych, zachciało mi się programu, który to zrobiłby porządek w katalogach układając je wg nazwy artysty i albumu. Nie doszukałem się takiej funkcjonalności w Winampie, a w Googlach nawet nie szukałem. W ramach poświątecznego ruszania mózgiem postanowiłem napisać sobie coś takiego samemu. Wybór padł oczywiście na C#.

Założenie było proste: na podstawie tagów w plikach muzycznych program ma pozakładać katalogi z nazwą artysty i podkatalogi z nazwami albumów oraz przenieść tam pliki.

Na oficjalnej stronie ID3 znalazłem odpowiednie implementacje dla C#. Wybrałem TagLib# ponieważ obsługiwał nie tylko Mp3, ale również Ogg i WMA (oraz jeszcze kilka innych formatów, których nawet nie używam). I tu chciałem zamieścić krótką informację. Skompilowana dll’ka, która jest tam dostępna ma problemy z innymi formatami niż mp3 – należy pobrać najświeższy kod z ichniego svna, wtedy wszystko działa.

Pliki:

Wymagany jest .Net 3.5 (nie chciało mi się zmieniać projektu na dwójkę… ;-) )

Features:

  • obsługa Mp3, Ogg i WMA
  • możliwość wprowadzenia własnych wzorców nazw katalogów
  • ubogi design ;-)

Known bugs:

  • niestety, TagLib# ma problemy z polskimi literami w tagach ID3v1 – rozwiązaniem jest używanie tylko IDv2 lub przymknięcie oka na “krzaczki” w nazwach katalogów ;-)

Licencja: WTFPL

Muzyczna mufinka

Lubię Last.fm. Nie tyle za to, że pozwala dzielić mi się z innymi tym, czego słucham, ale przede wszystkim za bardzo dobry system “odkrywania” nowej muzyki. Dzięki temu poznałem wielu nowych twórców i ich albumy. Idea podpowiadania nowej muzyki jest prosta – każdy artysta/utwór/album jest otagowany przez społeczność i to na tej podstawie ładowane są do lastowego odtwarzacza nowe kawałki.

Mufin - your music discovery engine

Mufin - your music discovery engine


Jak donosci AntyWeb, Mufin działa inaczej. Nie ma tagów, nie ma opisów. Muzyka tutaj rekomendowana jest przez podobieństwo samych piosenek, tj. porównywane są ich brzmienia. Pomysł naprawdę świetny i bardzo mnie zaintrygowało na ile się on sprawdza. Po wyszukaniu kilku topowych kawałków wg lasta, trochę się rozczarowałem – brzmienie, faktycznie, było może podobne, ale zupełnie mi nie odpowiadało.
Nie, nie podoba mi się ta rekomendacja...

Nie, nie podoba mi się ta rekomendacja...


Aż się prosiło, by w którymś z nieistniejących pól formularza wpisać jakie gatunki muzyki mnie interesują. Bo chociaż jest to jedna z zalet strony, którą chwalą się twórcy, niemniej nie sądzę, by można było podczas przeszukiwania muzyki uwzględniać tylko i wyłącznie podobieństwo tempa czy instrumentów. Chyba, że dopracują algorytm… W każdym razie będę ich obserwował ;-)