Serwis poświęcony Pythonowi - wszechstronnemu językowi programistycznemu. Podstawy i kurs Pythona, Django do tworzenia serwisów internetowych, PyQt4 do tworzenia aplikacji desktopowych.
PyWaw #24 już w najbliższy poniedziałek 13 maja o godz. 18:30 w restauracji Znajomi znajomych (ul. Wilcza 58a, sala na I piętrze, po prawej stronie od schodów). Obecnie przewidziane są dwie prezentacje: Python Worst Practices (Daniel Greenfeld) oraz Django 1.6 and beyond (Russell Keith-Magee), które zapowiadają się bardzo ciekawie.
Mikrokomputer w postaci Raspberry Pi, czy płytka z mikro-kontrolerem pyMCU posiadają szereg pinów GPIO pozwalających komunikować się z różnymi elektronicznymi komponentami. Można zaświecić diodę LED, napisać coś na wyświetlaczu LCD, albo zbudować małego robota. Wszystko to da się zrobić z poziomu Pythona.
W najbliższym czasie możecie spodziewać się szeregu artykułów dotyczących wykorzystania możliwości Raspberry i pyMCU z wykorzystaniem Pythona i różnych elektronicznych układów. Lutownica też może być przydatna.
Pozytywnie.pl poszukuje obecnie Python developerów jak i frontend developerów do pracy w Warszawie przy ciekawych projektach. Wszystkich (potencjalnie) zainteresowanych zachęcam do kontaktu z Tomkiem - czy to mailowo, czy np. na PyWawie.
emberjs to nowy framework JavaScriptowy do tworzenia interaktywnych aplikacji internetowych. Przez interaktywność można rozumieć wiele różnych zachowań. W odróżnieniu od aplikacji napisanej bardziej "klasycznie" nie musimy sami pisać warstwy wysyłającej żądania AJAX w celu pobrania, modyfikacji danych. Nie zakopujemy się także w operacjach na DOM-nodach, czy przechowywaniu danych pomiędzy akcjami użytkownika. Ember zdejmuje z programisty wiele upierdliwych aspektów tworzenia aplikacji internetowych z rozbudowaną interaktywną warstwą JavaScriptowych widgetów.
emberj.js to dość młody framework i na chwilę obecną trzeba pogodzić się z nieco ubogą dokumentacją, czy agresywnym tempem rozwoju zbliżającym framework do wersji 1.0. Mimo to da się już używać go produkcyjnie, przynajmniej w niektórych przypadkach. Konkurentami w tej samej kategorii są frameworki takie jak Backboje.js, czy Angular.js. Każdy ma jakieś dobre i "słabe" strony.
W tym artykule przedstawię aplikację Django-Ember ukazującą framework w działaniu i sposób w jaki programuje się z nim aplikacje. Przyda się także znajomość django-tastypie. Gotowy projekt można też pobrać i odpalić lokalnie.
Pod adresem pl.python.org/planeta znajdziemy polską planetę programistów Pythona. Strona powstała niedawno więc zachęcam wszystkich zainteresowanych do dodania swojego bloga do agregatora.
W niektórych dystrybucjach Linuksa po instalacji serwera PostgreSQL może okazać się że serwer używa jako domyślnego kodowania SQL_ASCII. Próba stworzenia np. PostGISowego szablonu, czy bazy z kodowaniem UTF-8 skończy się wtedy niepowodzeniem:
createdb: database creation failed: ERROR: new encoding (UTF8) is incompatible with the encoding of the template database (SQL_ASCII)
Dokumentacja Django linkuje jedno rozwiązanie polegające na usunięciu całego klastra i stworzeniu go na nowo z kodowaniem UTF-8. Jeżeli mamy już jakieś bazy danych to trzeba będzie je zrzucić do plików i później przywrócić. Jest jednak alternatywne rozwiązanie polegające na usunięciu szablonu "template1" i odtworzeniu go z szablonu "template0" używając kodowania UTF-8.
Do usunięcia i odtworzenia szablonu "template1" pomocny może być poradnik na journal.tianhao.info. Jeżeli "template_postgis" także istnieje to możemy go usunąć bazując na krokach 1 i 2 z tego poradnika. Po wykonaniu tych czynności możemy użyć skryptu "create_template_postgis*.sh" z dokumentacji Django do stworzenia szablonów postgisowych (lub też zrobić to samemu korzystając np. z poradnika na wiki archlinux).
Zaktualizowałem artykuły wprowadzające do Django tak by odzwierciedlały najnowsze wersje tego frameworka (1.5 / 1.4):
Wprowadzenie do Django - Tworzymy prostego bloga - Opis tworzenia prostej strony w Django 1.X Poznajemy budowę frameworka i proces tworzenia aplikacji z wykorzystaniem modeli, widoków, szablonów i panelu admina Django
Nowa wersja Django oznaczona numerem 1.5 zostanie niebawem wydana. Obecnie dostępna jest druga wersja beta, która pozwala zapoznać się ze (sporymi) zmianami jakie zaszły we frameworku. Pełna lista zmian dostępna jest na djangoproject. Poniżej omówię najważniejsze zmiany i nowości.
GeoDjango zyskało obsługę PostGIS 2.0. Porzucono wsparcie dla GDAL starszego niż 1.5.
Dodano eksperymentalne wsparcie dla Pythona 3.2 i nowszego. Oprócz tego obsługiwana jest najnowsza wersja Jythona (ta zgodna z Pythonem 2.7).
Zmiany:
Porzucono wsparcie dla Pythona 2.5. Zaleca się stosowanie Pythona 2.7, w ostateczności 2.6.
Zawartość kontekstu w TemplateView jest dostępna bez opakowywania w słownik params.
Django przeszło na używanie modułu json z biblioteki standardowej. Nie należy już używać django.utils.simplejson.
Nie należy już stosować django.utils.markup.
Zaszły zmiany w tagu "url". Teraz trzeba podawać nazwy widoku jako łańcuch: {% url "myview" %} a nie {% url myview %}.
Dodanie obsługi Pythona 3 mogło i zapewne stworzyło regresje dla Pythona 2.X. Sama obsługa Pythona 3.X nie była jeszcze produkcyjnie testowana - dlatego jest to jak na razie funkcjonalność "eksperymentalna". Należy testować i zgłaszać napotkane błędy.
tesseract to jeden z najlepszych silników OCR - do rozpoznawania tekstu na grafikach. Po instalacji dostajemy konsolową aplikację, która przyjmuje ścieżkę do pliku graficznego i zapisuje wynik w pliku tekstowym. Silnik obsługuje też różne języki przy rozpoznawaniu tekstu, w tym język polski.
sh to nakładka na moduł subprocess z biblioteki Pythona. Oferuje przyjazne i elastyczne "API" do wykonywania systemowych poleceń. Każde polecenie można używać jakby było funkcją.