Aplikacja browaru się rozwija

Raz, że trochę poładniała, a dwa — można już komentować wpisy warek. Jeszcze trochę, a przejmę władzę nad światem. ;)

Im mniej mam do czynienia z Django w pracy, tym większą mam przyjemność z drobnych robótek na swoim.

Browar Clair de Lune na zgodowie.org

Mój browar dorobił się własnej aplikacji w serwisie zgodowie.org. Na razie jest tam tylko kilka wpisów, ale sukcesywnie będą się pojawiały zarówno brakujące, jak i nowe. Chwilowo również nie ma możliwości zamieszczania komentarzy, ale i ta funkcja wkrótce się pojawi. A także morze innych funkcji...

Idzie nowe

browar Clair de Lune

W związku z tym, że spora część wpisów od jakiegoś czasu to opisy mojego piwa, postanowiłem coś z tym wreszcie zrobić. Będzie je lepiej widać w serwisie, łatwiej je będzie znaleźć, będą miały historię i da się (choć trochę) prześledzić, co się z piwem dzieje. W przyszłości szczęśliwcy, którzy mogli zakosztować mojego piwa może nawet będą mogli je ocenić! Nie, zaraz, trochę się zagalopowałem, wcale tego nie mam jeszcze w planach... Ale idea nie jest taka zła, możnaby nad tym pomyśleć. Na początek jednak wystarczy, że receptury i zapiski dotyczące piwa zostaną wydzielone z głównego nurtu.

Świat się kończy. ;)

Na szczęście prace jeszcze trwają i potrwają... jakiś czas. Degustacja nastąpi jak będzie gotowe i ani chwili wcześniej.

Django 1.2

Właśnie przestawiłem ten serwis na Django 1.2.1. Migracja i dostosowanie kodu zajęły nie więcej niż pół godziny, pomimo sporych zmian jakie były wprowadzone w wersji 1.2. Jak zwykle jestem pod wrażeniem dbałości o zgodność wsteczną i wzorowej dokumentacji projektu.

I niestety tradycyjnie już memory footprint aplikacji wzrósł — nieznacznie, ale od 1.0.x w sumie jest to już ok. 50% większe zapotrzebowanie na pamięć. Z wersji na wersję Django pożera wciąż więcej i więcej.

Pewna reorganizacja

Zamierzam trochę pozmieniać konfigurację uruchamiania tego serwisu (a przy okazji może dorobię się ciut wygodniejszego deploymentu, do ponownego wykorzystania), więc w ciągu kilku najbliższych dni można się spodziewać niespodziewanych przerw w działaniu.

Expect unexpected, but prepare for better.

Dla poddierżenia razgawora

Ostatnio jest cicho, więc dla poddierżenia razgawora kilka drobiazgów.

@classmethod
def import_object(cls, obj):
    return False, None

Zimno. Odkąd wróciłem z Grecji jest mi nieustająco zimno. Niestety, w te wakacje raczej nie uda mi się dostać 10 dni urlopu, więc jeżeli już pojedziemy do Grecji, to na tydzień.

Ustaliliśmy z żoną, że w przyszłym roku Escort idzie do ludzi. Jakby to wyczuł, bo zaczął się sypać: najpierw jakiś wyciek z układu hamulcowego, teraz problemy ze sprzęgłem i skrzynią biegów.

Po raz pierwszy od ponad miesiąca przyjechałem dziś do pracy komunikacją publiczną. Bez stania w korkach i czekania na autobusy (akurat dziś podjeżdżały w mgnieniu oka) zajęło mi to 70 minut (85 od wyjścia z domu). Samochodem w 70 minut dojeżdżam stojąc w korkach (Piłsudskiego/Chełmżyńska i Marsa). Na szczęście to był jednorazowy wybryk, już jutro znowu zamieniam bus na wóz.

Do koncertu Nine Inch Nails w Poznaniu pozostało 20 dni.

Igranie z przyszłością

Zmiany się szykują... Wspominałem o planach przepisania silnika tego bloga przy użyciu narzędziówki, ale im dłużej nad tym siedzę, tym bardziej jestem przekonany, że nie ma to wielkiego sensu — zbyt wiele rzeczy wymagałoby ręcznej ingerencji, patchowania komponentów i rwania włosów z głowy, bo coś nie działa, jak na przykład odkrycie z wczoraj:

  • nie działa Beaker z powodu błędu w kodzie backendów sesyjnych wykorzystujących bazę danych i memcached (pliki działają OK, ale ich nie chcę);
  • w związku z tym, że nie działa Beaker, nie działa też AuthKit, więc nici z ułatwień autentykacji (np. po OpenID).

Oczywiście, byłbym w stanie naprawić Beaker'a, powstaje jedynie pytanie, czy to się w ogóle opłaca? Alternatywą jest przejrzenie i odchudzenie istniejącej aplikacji w Django, a przy okazji zoptymalizowanie jej nieco, wykorzystując doświadczenie, jakiego nabrałem w ciągu tych kilkunastu miesięcy. To też mogłoby być nienajgorsze rozwiązanie, a na pewno szybsze. Będę żałował Jinja2, ale jak mnie żal przyciśnie, to podłączę sobie ten silnik do Django, żeby stonować trochę ten żal...

Poważnie się zastanawiam i jeszcze nie podjąłem żadnej decyzji — na razie kod wykorzystujący narzędziówkę poszedł do oddzielnego brancha w repozytorium, a w trunku pojawił się kod wersji działającej obecnie, ale nie ma to jakiegoś symbolicznego znaczenia (tak sobie to tłumaczę). Uch, jak ja lubię mieć takie dylematy... :)

Zrobiło się cicho

A to dlatego, że moje przemyślenia na temat technologii przeniosłem do technologicznej tuby tego serwisu, którą w ramach edukacji implementuję na Google AppEngine. Aplikacja, choć wciąż w trakcie rozwoju, powoli zyskuje kolejne funkcje (a ja przy okazji uczę się nowych rzeczy).

Podsumowanie roku 2008

Rok 2008 nieubłaganie zbliża się do końca, czas zacząć podsumowania. Co ciekawego wydarzyło się w upływającym roku?

Jak na rok to raczej było spokojnie. ;)

Nowe komentarze zlądowały

Zaktualizowałem Django na zgodowie.org do wersji 1.0 (a nawet lepiej). Co za tym idzie, są już też nowe komentarze. Udało mi się (przy użyciu brudnych sztuczek, bo inaczej się nie dało) doprowadzić do tego, że najważniejsza zmiana, czyli wymaganie podania emaila przy dodawaniu komentarza, nie jest widoczna — nie jestem zainteresowany kolekcjonowaniem adresów email moich czytelników (prywatnie uważam to za idiotyzm). URL na razie nie jest wykorzystywany, ale myślę, że będzie już niedługo — jak tylko znajdę trochę czasu.

Jak na razie wydaje się, że wszystko działa...

Ładowanie...