piątek, 29 czerwca 2007

Dostępność formularzy MXML

Są dwie rzeczy na które mało przykłada się uwagi: problemy alternatywnej nawigacji po aplikacjach RIA i kwestie drukowania formularzy MXML.

O dostępności we aplikacjach RIA tworzonych w Adobe Flex już pisałem. Głównym pytaniem pozostaje to jak może wyglądać nawigacja po formularzach MXML w przypadku jak użytkownik nie chce bądź nie może korzystać z myszki.

Projektując formularz MXML trzeba uwzględniać to w jakiej kolejności użytkownik ma poruszać się po polach i kontrolkach, następnie warto pomyśleć o skrótach klawiszowych. Aby sprawdzić jak z formularzem MXML radzą sobie narzędzia do czytania zawartości z ekranu, polecam zainstalować programik Inspect32.exe z Microsoft Active Accessibility 2.0 SDK Tools, dzięki temu narzędziu dowiemy się co mogą przeczytać programy czytające z ekranu.
Nawigacja w formularzach MXML z poziomu klawiatury jest omawiania w dokumentacji o interakcji. Warto wiedzieć że spacja jest tym co wyzwala większość akcji klikania myszką.

Drugim ważnym zagadnieniem jest drukowanie. Ja często zauważam, że podgląd wydruku w Internet Explorerze i jak Firefoxa czy w Operze dają całkiem różne widzenie tego jak można wydrukować formularze MXML. Ja testuję to w ten sposób że drukuję je do pliku .XPS a potem porównuję je ze sobą (oszczędzam na wydruku). Doszedłem do wniosku, że warto byłoby dodawać do formularzy MXML przycisk "drukuj". Wiadomo, że Flash Player ma API do sterowania wydrukiem. Pozwoli to uzyskiwać ten sam wygląd wydruku, niezależnie od tego z jakiej przeglądarki internetowej korzystamy. Polecam zapoznanie sie z artykułami z dokumentacji o programowaniu druku z poziomu ActionScriptu 3 przy użyciu klasy flash.printing.PrintJob, a także z wykorzystaniem komponentów do drukowania mx.printing.FlexPrintJob czy z komponentem do drukowania tabelarycznych danych mx.printing.PrintDataGrid.

Czy rzeczywiście warto dodawać przycisk "drukuj" na formularzach MXML? Jak wyglada sprawa drukowania z poziomu aplikacji AJAXA? Wydaje mi się że właśnie fakt posiadania przez Flash Playera programowalnego API sprawia że aplikacje RIA staną sie dostępne dla drukarek pozwalająć na uzyskiwanie o wiele lepszych wydruków formularzy z drukarek, i nie ma wtedy potrzeby generowania PDFów ze serwera ale z samego Flash Playera.

wtorek, 26 czerwca 2007

Formularze MXML

Ostatnio w pracy jest interesująco, do tej pory właściwie zajmowałem się "ewangelizowaniem" w Polsce technologii Adobe Flex 2 i to tak naprawdę mi wychodziło przez rok czasu. Teraz chyba więc trzeba już przejść do działania. Co przez to rozumiem? Wiadomo, że najlepiej działa się poprzez pokazywanie przykładów w działaniu. Naśladowanie poprzez przerabianie tego co, już zostało zrobione. Ruch open source zrobił już wiele przykładów, ale potrzebne jest takie miejsce gdzie klienci firmy wiedzieliby, co można osiągnąć dzięki zastosowaniu Adobe Flex 2. Dema i przykłady często są tym co pozwala znaleźć punkt odniesienia w tworzeniu prototypów, nowych serwisów internetowych. Obszarów wykorzystania jest wiele. Na przykład ciekawym zagadnieniem może być "zastępowanie" formularzy HTML formularzami MXML wykonanymi w Adobe Flex 2 przy pomocy języka znacznikowego MXML i skryptów ActionScript 3.

Jakie są korzyści takiego rozwiązania?

  • formularze internetowe nie muszą być indeksowane przez roboty sieciowe
  • pozwalają na unikanie problemów z "captcha" - obrazkami blokującymi działanie robotów spanujacych
  • pozwalają na zastosowanie skomplikowanych pól formularza takich jak pola z "maską"
  • jest dużo większy wybór kontrolek niż w przypadku klasycznego HTMLa (kalendarz, scroller)
  • łatwiej napisać walidację pól formularza niż w przypadku stosowania bibliotek JavaScript
  • szybsze przetwarzanie dużych formularzy
Wady rozwiązania zastępowania formularzy HTML formularzami MXML kompilowanymi przy pomocy Flex 2
  • nie jest łatwo "przepisać" kod ze rozwiązań AJAX na rozwiązania wykorzystujące Flex (mimo że istnieją odpowiednie biblioteki do obsługi JSON w ActionScripcie 3 czy integrację aplikacji AJAX z formularzami MXML)
  • formularze MXML mogą przytłaczać rozmiarami (pliki swf powyżej 200KB) , ale czasami szybciej zrobi się formularz kontaktowy formularzu HTML na prostej stronie niż wstawiać plik swf z formularzem MXML.
Czy warto używać formularzy MXML? A może i tak ludzie przyzwyczaili się do formularzy AJAX, że nie ma potrzeby wprowadzania lepszych rozwiązań?

czwartek, 21 czerwca 2007

ActionScript 3: Biblioteki - Fizyka

Open source to potężny ruch! Od pewnego czasu mam wrażenie, że jak potrzebuję czegoś do zaimplementowania w ActionScripcie 3 to w większości przypadków już znajduję przykłady i udostępnione kody źródłowe.

Zastanawiam się nad zrobieniem pewnego repozytorium kodów źródłowych ActionScript 3 i Flexa 2. Myślę że bardziej przydałoby się lista bibliotek i kodów, które znalazłem w internecie. Tych kodów i przykładów chyba mam już ponad 500. Warto już brać się za uporządkowanie tego wszystkiego. Gdyby jeszcze opisywać jak je używać to pewnie by zainteresowaliby się wydawcy. Jak zauważyłem w książkach o ActionScript 3 czy o Flex 2 brakuje jakby takiej pozycji która byłaby "podsumowaniem" dorobku OpenSource. Myślę, że większość autorów udostępnionych kodów chętnie znalazłoby się w takiej książce. Mam pomysł związany z wydaniem takiej pozycji książkowej, ale do realizacji długa droga.

Repozytoria projektów we ActionScript 3 i Flex 2 znajdują się na: RIAForge (53) czy na Google Code (80). Istnieje też spis komponentów SWC opublikowanych w internecie - Flexbox (140)

Przykładem jest wyjaśnienie w przystępny sposób ludziom zagadnień związanych z fizyką. Są to kwestie dotyczące pisania silników do reprezentacji trójwymiarowej (przedstawiania modeli czy jak nawigacji po przestrzeni trójwymiarowej), ciekawe zagadnienia związane z kinematyką ciała i płynów, a także problemy ze sztuczną inteligencją. Do tego przyda się znajomość fraktali czy silników do animowania.

Obecnie najbardziej popularnym silnikiem 3D rozwijanym bardzo intensywnie jest Papervision3d, natomiast od dłuższego czasu silnikiem 3D który służył programistom do modelowania trójwymiarowego był Sandy. Na Google Code znajduje się kod źródłowy tej biblioteki napisany w ActionScript 3.

Problemy symulacji ruchu są bardzo interesującym zagadnieniem dla programistów gier. Na razie można zapoznać się z takimi bibliotekami jak APE czy Fisix. Alex Cove napisał bibliotekę APE, która pozwala miedzy innymi na testowanie kolizji, wykorzystywanie efektów cząsteczkowych Kod źródłowy tej biblioteki znajduje się na Google Code. Warto też zapoznać sie z API i jak śledzić dyskusje wokół tego projektu. Można zobaczyć demo gry Tetris opartej na tej bibliotece.

Fisix to biblioteka która bardziej jest znana z dem takich jak Mona the RagDoll czy Klepsydra. Obecnie ona jest do ściągnięcia w wersji 0.5, można tez zapoznać się z dyskusjami dotyczącymi tej biblioteki. Ciekawym przykładem wykorzystania tej biblioteki jest gra Calamity. Można też zobaczyć inny przykład wraz z kodem źródłowym

Michael Baczynski pracuje nad kolejnym silnikiem "Motor Rapid Flash Dynamics", na razie można czytać jego wpisy o tym.

Bardzo interesujący blog matematyka Jim Armstrong, o zastosowaniu odwrotnej kinematyki, która była przedstawiania na konferencji FITC 2007 w Toronto wraz z kodami źródłowymi biblioteki Singularity. On też jest autorem ciekawych artykułów o zastosowaniu matematycznych algorytmów których mogą pomóc programistom Actionscriptu w ich rozwiązywaniu problemów z animacja i fizyką.

Problemy sztucznej inteligencji ma przykładach w ActionScripcie 3 omawia Joe Makar w swoim blogu. Przykładem tego jest wynajdywanie ścieżki w labiryncie czy gra w życie.

Ciekawą propozycja dla programistów gier są frameworki napisane z myślą o lepszym programowaniu gier. Są to Data Structures Michaela Baczynski`ego. Zaimplementowano w nim algorytmy: wielowymiarowych tablic, kolejki, stosu, drzew, BST, list, grafów oraz wektora binarnego. Drugim frameworkiem jest Hexagon. Więcej można poczytać na blogu autora tego frameworka

Istotna jest też znajomość mechanizmów animacji. Jedna z nich jest biblioteka Tweener napisana przez Zeh Fernado. Można śledzić dyskusje związaną z rozwojem tej biblioteki, czy zapoznać sie z kodem źródłowym przykładów. Jest interesujący kurs po japońsku wprowadzający w programowanie przy użyciu tej biblioteki. Innym silnikiem animacyjnym, który napisał Ryan Taylor jest AS3 Animation System v2.0. Kod źródłowy można ściągnąć stąd a także wprowadzenie do tego silnika

Jak widać jest wiele interesujących bibliotek - można spędzić wiele czasu na poznawanie ich możliwości. Czy warto napisać o tym książkę?

niedziela, 17 czerwca 2007

RIA w Java ME

Obserwuję rozwój aplikacji internetowych i zastanawiam się nad tym, czy kiedykolwiek nadejdzie moment, kiedy ludzie zaczną masowo korzystać z internetu przez komórkę. Obecnie sytuacja przypomina mi jak płacono za łączenie z internetem przez modem analogowy. Z drugiej strony zastanawiam się czemu rozwój oprogramowania na komórki kojarzy sie z grami czy zawartością taką jak muzyczki czy tapety. Możliwości komórek są coraz większe. Ze strony programistycznej niewiele sie zmieniło. Zazwyczaj robi się to w Java ME albo w Flash Lite. Uważam że w najbliższym czasie rozwój oprogramowania bardzo się zmieni na korzyść Java ME, bo ma dużo więcej możliwości do tworzenia midletów, które mogą wykorzystywać AJAX na równi z aplikacjami webowymi. Z drugiej strony Flash Lite też staje się interesującym rozwiązaniem dla aplikacji internetowych czego przykładem są projekty Shuriken zestaw komponentów UI dla FlashLite 2.0 oraz Flyer biblioteka w Pythonie pozwalająca na wykorzystanie przez Flash Lite Playera możliwości jakie są w Symbianie (np: komunikacje za pomocą Bluetootha).

Same urządzenia mobilne można podzielić na dwie grupy. Pierwsza, do której należy większość telefonów komórkowych, to urządzenia o mocniej ograniczonych zasobach pamięci i mocy procesora (przygotowano dla nich konfigurację CLDC - Connected Limited Device Configuration). Druga grupa to urządzenia lepiej wyposażone, posiadające więcej pamięci operacyjnej i szybsze jednostki obliczeniowe. Należą do niej na przykład palmtopy, handfieldy. Dla nich podstawą jest konfiguracja CDC - Connected Device Configuration. Na bazie tych dwóch konfiguracji przy pomocy zestawów dodatkowych specyfikacji można budować kompletne rozwiązania.

Wraz z pojawieniem się nowej wersji Sun Java Wireless Toolkit 2.5 for CLDC wprowadzona została specyfikacja JSR 248: Mobile Service Architecture definiująca podział środowisk mobilnych, a także określająca rekomendowane zestawy komponentów platformy Java ME. Jest ona rozszerzeniem wcześniej obowiązującej specyfikacji Java Technology for the Wireless Industry (JTWI).

Dodatkowo pojawiły się też nowe rozszerzenia platformy. Wśród ciekawszych wymienić można:

JSR 234: Advanced Multimedia Supplements, umożliwia między innymi kontrolowanie z poziomu aplikacji J2ME dodatkowych gadżetów coraz częściej obecnych w nowoczesnych telefonach komórkowych, takich jak aparaty fotograficzne, czy radioodbiorniki FM, a także pozwoli na zaawansowaną obsługę dźwięku.

JSR 179: Location API for J2ME, umożliwia pisanie aplikacji na urządzenia przenośne wyposażone w odbiorniki GPS, które dostarczą informacji o fizycznym położeniu geograficznym urządzenia.

JSR 229: Payment API umożliwia użytkownikom telefonów komórkowych dokonywanie płatności.

JSR 226: Scalable 2D Vector Graphics API for J2ME zapewnia obsługę obrazów wektorowych w formacie SVG.

Obecnie programiści Java ME mogą wybierać środowiska RAD: jakim są NetBeans Mobility Pack i jak rozwiązania bazujące na Eclipse (EclipseME czy Carbide.j). Wiele ciekawych rzeczy zostało powiedzianych na konferencji Java One 2007. Sun opublikował w ramach uwalniania kodu Javy na licencji GPLv2 rozwiązania Java ME pod nazwą phoneME Dla rozwiązań opartych na CLDC przyjęło nazwę phoneME Feature, a dla CDC przyjęło nazwę phoneME Advanced. Jest też ciekawy przykład tego jak wykorzystać phoneME w NetBeans Mobility Pack.

Rebranding nazwy z Java ME na phoneME chyba się nie przyjmie. Zawsze to będzie Java ME. Sun wprowadza już nowe projekty takie jak phoneME UI (User Interface) Labs który kładzie nacisk na zastosowanie SVG - JSR 226. Jest też zbiór kodów źródłowych do obsługi AJAX w Java ME pod nazwą Mobile Ajax for Java ME. Można także ściągnąć kody źródłowe pokazujące wykorzystanie wielu nowych możliwości jakie są w nowszych pakietach JSR w projekcie Developer Demo Box. Warto też zwrócić uwagę na projekty związane z Rich Internet Application - Project Orbit i JavaFX Mobile.

W przyszłości najbardziej można oczekiwać wprowadzenia w urządzeniach mobilnych w latach 2008-2011 następujących specyfikacji.

JSR 256 - Mobile Sensor API - wprowadza sposób komunikacji aplikacji J2ME z różnego rodzaju czujnikami/sensorami takimi jak: mikrofon, kamera, czujnik rytmu serca czy termometr.

JSR 257
- Contactless Communications API
ma być standardem bezstykowej komunikacji na niewielkie odległości (wykorzystywana np. przy odczycie kodów kreskowych, czy chipach RFID).

JSR 271: Mobile Information Device Profile 3 ten standard wprowadza sporo nowych rozwiązań takich jak: równoczesne uruchamianie wielu midletów, komunikację pomiędzy midletami. pozwala na tworzenie współdzielonych bibliotek wykorzystywanych przez wiele midletów, wprowadza obsługę standardu IPv6, wprowadza możliwość tworzenia bogatszego interfejsu graficznego.

JSR 280 - XML API for Java ME ma być standardem do obsługi programistycznej dokumentów XML bazując na DOM i SAX2

JSR 287
: Scalable 2D Vector Graphics API 2.0 for Java ME - następna wersja API do obsłygi standardu SVG Mobile 1.2 (z wykorzystaniem animacji i mediów dostarczanych w sposób strumieniowy)

JSR 290 - Java Language & XML User Interface Markup Integration - pozwala to na integrację w aplikacjach mobilnych kodu SVG czy XHTML w midletach,

JSR 293: Location API 2.0 - dalszy rozwój standardu odpowiedzialnego za obsługę lokalizacji użytkownika, nowością ma być wsparcie dla nawigacji GPS, geolokalizacji na mapach,


JSR 297: Mobile 3D Graphics API 2.0 - następna wersja standardu do programowania grafiki trójwymiarowej, wykorzystująca możliwości jakie daje implementacja sprzętowego wsparcia OpenGL ES 2.0

JSR 300: DRM API for Java ME - jest to propozycja programistycznego standardu dla wsparcia OMA DRM2.0

Z perspektywy czasu tempo rozwoju technologii wydaje sie bardzo szybkie - chociaż informacje o tym są znane tylko wąskiej grupie specjalistów pracujących nad implementacją tego w swoich produktach. Z drugiej strony czas przyswajania nowych technologii jest bardzo wolny, wiele czynników na to się składa. Najbardziej istotny to brak dobrej literatury wprowadzającej w możliwości Java ME. Po drugie też różnorodność urządzeń mobilnych wspierających tą platformę sprawia (pomimo bibliotek wspomagających takich jak J2ME Polish) , że trudno ogarnąć jak dana aplikacja może zachowywać się konkretnym modelu urządzenia. Kolejną cechą sprawiającą trudności w połapaniu są bardzo szybkie zmiany w rozwoju systemów (platform) operacyjnych na urządzenia mobilne. Aż 7 wersji Symbiana wypuszczono w ostatnich latach Symbian OS 6.0 (2001), Symbian OS 7.0 (2003), Symbian OS 8.0 (2004), Symbian OS 9.1 (2005), Symbian OS9.2 i Symbian OS 9.3 (2006), Symbian OS 9.5 (2007).

Nokia ma 4 platformy operacyjne (Series 40, Series 60, Series 80, Series 90)
SonyEricsson rozwija graficzne UI dla urządzeń mobilnych UIQ (są dostępne wersje 2.0 2.1 i 3.1) SonyEricsson wprowadziło też podział na 7 platform Javy

Czy w Polsce jest więcej programistów Java ME niż tych od Flash Lite?

piątek, 15 czerwca 2007

AIR i SQLite

Adobe Integrated Runtime jest kolejną aplikacją która wspiera lokalne SQLite, tak jak Google Gears. Zawiera nawet pakiet flash.data, warto sprawdzić jakie polecenia SQL mogą być wykonywane.

Sean Moore pokazał najprostszy przykład kodu wykorzystania lokalnej bazy danych. Bardziej złożone przykłady przedstawił Rich Tretola na swoim blogu pokazując aplikację EmployeeDirectory Jego aplikacja wykorzystuje Cairngorma i jak ColdFusion. Przedstawił kod na tworzenie bazy danych i jak zapisywania i pobierania danych z tej bazy danych. Najciekawszą aplikację SQLite Admin Application for AIR napisał Christophe Coenraets, który też udostępnił kod źródłowy. Ten sam programista po dwóch dniach poszedł dalej i przedstawił już w pełni działającą aplikację SalesBuilder On AIR i jak kod źródłowy do niej.

Wydaje mi się, że pojawia się nowy trend tworzenia aplikacji internetowych w oparciu o Adobe Apollo i jak Google Gears. Ale czy zwykli internauci potrzebują aplikacji offline zsynchronizowane z tymi które korzystają w wersji online?

wtorek, 12 czerwca 2007

Bugi i usprawnienia do Adobe Flex

Znalazłem stronę w której mogę śledzić zmiany jakie zachodzą w Flex 2 i Flex 3. Świetne źródło informacji o tym co się zmienia, czego unikać. Przy tej okazji możemy poznać jak wygląda praca w Adobe testerów i programistów zaangażowanych w rozwijanie produktu Flex. Myślę że w przyszłości więcej ludzi będzie zaangażowanych w ulepszanie Flexa

Oto Flex Bug and Management System

poniedziałek, 11 czerwca 2007

Adobe Integrated Runtime i Adobe Flex 3

Adobe Apollo stało sie Adobe Integrated Runtime (AIR) . Staje sie częscią Adobe Flex 3
Zanim zainstaluje sie AIR trzeba odinstalować wersję Apollo alpha (i aplikacje tworzone dla tej wersji). W przyszłości będzie dokonywana automatyczna aktualizacja. Warto też zobaczyć zaktualizowane kody aplikacji AIR Dokumentacja do AIR jest na stronie AdobeLab to: dokumemtację dla programistów Flexa można ścigasnac wersje offline, natomiast dokumentację dla programistów HTML i AJAX Adobe tez wprowadziło rozszerzenie dla Dreamweawera CS3 pozwalajace HTMLDeveloperom tworzyć zawartość do AIR Dla programistów Flexa czekają wersje Adobe Flex 3 Builder beta i jak Adobe Flex 3 SDK beta Sporo tych nowości jak na ostatni tydzień. Jeszcze do tego dochodzi Adobe LiveCycle Data Services ES.

Adobe Flash Player 9.0.60.120.

Adobe wypuściło Flash Playera 9 9.0.60.120. ze wspomaganiem ze strony karty graficznej w trybie pełnoekranowym, oraz wsparciem w architekturze wieloprocesorowej. Do ciekawych cech też należy obsługa cachowania komponentów. Tas cecha podyktowana wprowadzeniem na rynek wersji beta Adobe Flex 3 i Adobe Integrated Runtime (AIR), Więcej informacji o instalacji nowego Flash Playera można przeczytać tutaj.

niedziela, 10 czerwca 2007

Papervision3D

Papervision3D staje się coraz bardziej popularną biblioteką dla programistów którzy chcieliby programować modele trójwymiarowe i wyświetlać je w Flash Playerze.

Bibliotekę napisało 3 programistów Carlos Ulloa, John Grden, Ralph Hauwert przy wsparciu Patrick Pietens, Ron Valstar

Podstawowym zbiorem informacji o wykorzystaniu Papervision3D jest artykuł na wiki. Kod jest dostępny przez SVN. Dla programistów taki sposób dystrybucji kodu nie robi wielkiego wrażenia. Dla wprowadzenia w świat programowania Papervision3D trzeba być obeznanym w zagadnieniach związanych z programowaniem grafiki trójwymiarowej (tekstury, światła, rzutowanie modeli, format Collada).

Oto artykuły, które w jakiś sposób pokazują jak można zacząć programować w Papervision3D. Denis pokazał na swoim blogu pierwsze kroki w pierwszej części ukazał jak wymodelować model i wyeksportować do formatu Collada. W drugiej części pokazał jak ładować modele i zapewnić odpowiednią interakcję. Neill Webb w swoim blogu próbuje wyjaśnić jak zacząć programować w Papervision3D. Agencji Interaktywnej Blitz udało sie pokazać jak przygotować modele do dalszej pracy. Grupa użytkowników Flasha w Danii przygotowała materiał szkoleniowy online po duńsku o tym jak programować we Adobe Flex 2 i w Adobe Flash 9 Prewiew IDE. Na stronach Adobe można przeczytać artykuł Paula Spitzera o ładowaniu plików video na modele trójwymiarowe. Kolejnym przykładem typu "Hello World" dla Flash CS3 jest spakowany plik źródłowy z bloga. Natomiast programistów Adobe Flex 2 zapewne zainteresuje kod źródłowy fxpv3danimator z bloga Saqoosha Najlepszym źródłem informacji o programowaniu Papervison3D jest japońskojęzyczny blog. Aby tego było mało Japończycy napisali sporo przykładów: grę Reversi (z kodem źródłowym), czy demo z sześcianami albo gwiazdę 3D. Programiści z Rosji miedzy innymi Den Ivanow stworzyli aplikację do malowania modeli ( w tym przypadku trzeba zamalować model autobusu) . Mamy też polski akcent w Papervision3D. Marcin Czech pisze w swoim blogu o możliwościach jakie daje integracja modeli z Google Earth z tą biblioteką co pozwoli na stworzenie aplikacji Google Earth online.

Z kodu Papervision3D powstał nowy silnik renderujący Away3D napisany przez Alexander Zadorozhny, który implementuje sporo nowych elementów (między innymi Occlusion culling, Level-of-details.) Można obejrzeć możliwości w tym demie. Strona projektu jest na Google Code (w tym forum dyskusyjne). Jego możliwości zwróciły uwagę twórców Papervision3D że prawdopodobnie włączą ją do którejś wersji Papervision3D. Jednym z najbardziej efektywnych przykładów zastosowania Away3D jest gra Garapon (kod źródłowy)

piątek, 8 czerwca 2007

Professional Adobe Flex 2

W środę odebrałem w Empiku zamówioną książkę "Professional Adobe Flex 2". Tak bardzo cieszę się z zakupu, że postanowiłem uwiecznić radość na zdjęciach.

Najbardziej mnie ucieszył rozdział o Cairngornie.
Chyba wam nie przeszkadza, że jestem niedosłyszący?

środa, 6 czerwca 2007

Python, Django a Flash Remoting

Ostatnio poznaję możliwości jakie ma do zaoferowania Django. Django to jest framework do pisania aplikacji internetowych w Pythonie. Nie od dziś wiadomo że jest jednym z najbardziej wydajnych frameworków dla aplikacji internetowych. Pomyślałem że warto poświęcić trochę czasu na poznanie możliwości jakie daje Django w współpracy z Flash Remoting. Otóż w Japonii pewni programiści napisali bibliotekę do obsługi AMF w Pythonie.

Django AMF 0.4..2 na razie nie jest szeroko znane tak jak samo stosowanie Pythona w internecie. Znalazłem tylko taki wpis na blogu o tym i serię wpisów na japońskojęzycznym blogu.

Na tej stronie można przeczytać instrukcję jak zainstalować Django AMF oraz przykładowa aplikację Adressbook (kod działa z Django AMF 0.3.3) opublikowaną dla artykułu w japońskim czasopiśmie WEB+DB PRESS Vol.37 . Ta aplikacja wykorzystuje zapisywanie narysowanego obrazka w formacie PNG Warto też zainteresować się Strippers Remoting Classess dla Flash CS3 i jak S2Flex2 compoments

wtorek, 5 czerwca 2007

FrogStar i Moxie

Niedawno wyszła premiera Flash CS3. Flex 2 już dość długo istnieje na rynku, więc dalej istnieje potrzeba rozwijania produktów. Otóż nazwa kodowa dla Flash Playera 10 to "FrogStar". A nazwa kodowa Flex 3 to "Moxie". Adobe Flex 3 to będzie bardziej narzędzie designerskie tak aby programiści mogli zawartość tworzoną przez designerów używających Flasha CS3.
Co do Flash Playera 10 chyba planowana jest obsługa pisma arabskiego i bardziej modyfikowalne pole tekstowe. Flex 3 to też kilka nowych komponentów.

poniedziałek, 4 czerwca 2007

Weblisko.com





Mam zaszczyt współtworzyć serwis społecznościowy weblisko.com. Od strony technicznej serwis będzie tworzony w Pythonie na bazie frameworka Django. Niektóre elementy serwisu mogą wykorzystywać interakcję tworzoną w Adobe Flex 2. Na razie projekt jest na etapie tworzenia prototypów, które w przyszłości będą połączone w pewną całość i udostępnione betatesterom pod koniec wakacji. Zapraszam do komentowania devbloga. Można wygrać iPoda.