Bootstrap 9.7
Wybrałem się dzisiaj na to z założeniem, że choćby w celach kulturoznawczych trzeba zobaczyć, jak wygląda zbiorowisko rockstarowych nerdów z macbookami i iphone'ami. Iphone'a żadnego nie widziałem, ale parę maców i owszem. I Aleksa z kaskiem motocyklowym zamiast maca.
Jestem pozytywnie zaskoczony, bo oryginalny plan miałem taki, żeby pójść z dwa razy na coś takiego, stwierdzić, że z webem 2.0 to ja niewiele mam wspólnego, po czym sobie dać siana. A to było całkiem ciekawe!
Przez pierwszą godzinę gadał Paul Bakaus, lead developer czegoś, co się nazywa jQuery UI i jak rozumiem jest zbiorem widgetów i takich tam w javascripcie. Gadał o owym jQuery UI oraz ogólnie o tym co teraz można zrobić w przeglądarkolandzie i wyglądało to całkiem impressive: hw-accelerated 3d na webkicie, różne zaawansowane ficzery 2d bezpośrednio w css-ie, bez konieczności robienia hacków w js-ie i różne toolsy ułatwiające życie webludziom. Oczywiste skojarzenie było takie, że podobnie musiał wyglądać stan "normalnych" systemów operacyjnych naście lat temu -- techniczne możliwości już są, można tym robić fajne efekty, ale nie wszędzie jest odpowiednie wsparcie, biblioteki jeszcze nie osiągnęły odpowiedniego poziomu dojrzałości no i wydajność w niektórych miejscach kuleje.
Zapytałem prelegenta o parę rzeczy w tym klimacie i pogadałem z nim chwilę po jego wystąpieniu i highlevelowo sytuacja wygląda tak:
- JS-owe backendowe biblioteki koncepcyjnie mają działać tak samo, jak te systemowe, czyli zapewniać programiście wygodny i przyjazny sposób na tworzenie różnych podstawowych i zaawansowanych ficzerów, a ze swojej strony zajmować się przezroczyście niekompatybilnościami przeglądarkowymi i robić graceful fallback przy nieobsługiwanej funkcjonalności.
- jQuery UI osiągnęło taki poziom rozwoju community, że nawet jeśli jednego core dewelopera rozjedzie autobus, drugi się ożeni, a trzeciego wsadzą za zabójstwo żony, to projekt i tak powinien przeżyć. Or so he says.
- Acz projekt oficjalnie sponsorowany przez nikogo nie jest. Sam Paul w poprzedniej firmie pracował nad nim bardziej fulltime'owo, w obecnej znacznie mniej.
- Spooooooro lat zajmie dojście do momentu, w którym wszystkie przeglądarki będą obsługiwały w odpowiednio dobry sposób wszystkie API wymagane do tego, żeby w przeglądarce dało się robić takie UI, jak bezpośrednio w OS-ach.
- A jakiejś specjalnej współpracy pomiędzy programistami jQuery UI, a twórcami przeglądarek obecnie nie ma (hgw jak to wygląda w przypadku alternatyw do jQuery UI).
- Mają jakieś fajne frameworki do autotestowania UI.
Ogólnie -- fajnie, że to zmierza w tym kierunku, ale dlaczego tak przeraźliwie wolno? Jest 2009 ffs! Zanim zwykły śmiertelnik będzie mógł tego używać bez obrzydzenia, to ja pewnie będę miał już gromadkę dzieci.
Później gadał Rafał Agnieszczak (of fotka.pl fame) o tym jak stwierdził, że ma parę fajnych pomysłów na startupy, ale nie ma czasu ich zrealizować, ale za to ma 200k PLN-ów, żeby zrobili to inni. I tak powstał Startup School, czyli bodajże 10 teamów po 2 osoby każdy (wychodzi 20k per team). Talking pointsy jeśli dobrze pamiętam:
- Kompetentni młodzi w dwuosobowych grupach (techniczny+marketingowy) mają całe wakacje na stworzenie funkcjonalnej wersji projektu. Opłacony hotel w wawie przez ten czas i zapewnione miejsca przy biurkach oraz kieszonkowe. Założenie jest takie, że w takich warunkach pracuje się kilka razy szybciej, niż w "normalnej firmie".
- Młodzi ludzie są fajniejsi, niż starzy ludzie (acz były wyjątki, gdzie starzy == 25+ lat), bo im człowiek starszy, tym mniej sobie może pozwolić na tego typu kodowanie przez parę miesięcy po dużo godzin w tygodniu. W sumie się zgadzam -- sam mam 24 lata, narzeczoną, za rok ślub, za pół roku kupowanie mieszkania z kredytem, więc znacznie mniejsze możliwości spędzania czasu w ten sposób. Z przegięć w drugą stronę -- w skład jednego z teamów wchodzi 17-letnia dziewczyna.
- W międzyczasie trza się było pożegnać z trzema osobami.
- Za jakieś trzy tygodnie publiczne prezentacje projektów.
- Każdy team kodował w czym chciał. Jeden nawet w .NECIE.
- Biznes internetowy nie rządzi się jakimiś magicznymi prawami i najlepsza strategia to wymyślić sposób na odseparowywanie użytkowników od ich pieniędzy. Liczenie na dochody z reklam, zwłaszcza przy obecnym rynku, nie jest najlepszym pomysłem.
Ogólnie facet ciekawie gada.
No i na koniec był lightning talk jakiegoś człowieka, co w przyspieszonym tempie w Rubym zaimplementował serwis do wymiany gier (chyba gametrade.pl, ale nie jestem pewien) i z liczb wynika, że nawet mu to wyszło. Interesujące.
Na rozmowy "w kuluarach" już niestety nie zostałem i nie miałem okazji się pointegrować (i pomęczyć Paula o aspekty security takiego zwiększania możliwości przeglądarek), bo w pracy miałem spory problem, więc i tak mnie sumienie gryzło, że ponad trzy godziny wyciąłem na obijanie się na imprezie. Acz chyba niepotrzebnie, bo (a) jakbym się pokapował wcześniej, niż o pierwszej w nocy tego samego dnia, że dzisiaj jest bootstrap, to bym sobie piątek lepiej rozplanował i (b) pracowy evil xenU from outer space chyba został pokonany, więc w praktyce jednak miałem znacznie mniej roboty, niż się obawiałem, że mogę mieć. Ale o tym innym razem.
Podsumowując: czekam na następną edycję. Pewnie się dla odmiany zawiodę, że jakieś webotechniczne lowlevelowe nudy :)
06 IX 2009 o 00:28
Ależ te wszystkie nowości możesz stosować już teraz – jako „progressive enrichment”. Nigdy nie osiągnie się stanu 100% wsparcia. HTML5 i jego bajerki można (i trzeba) wykorzystywać już teraz. Zwykłe CSS transitions degradują się znakomicie, <canvas> jest wspierany wszędzie (włącznie z IE, jak się doda excanvas), web fonts działają super, pozostaje kwestia copyrightów… Ok, bo się rozpędzam. :)
Chodzi o to, że tak jak HTML5 nie będzie „ready” w 2022, tak wszystkie inne nowości z CSS3 można z powodzeniem implementować już teraz.
06 IX 2009 o 00:46
A, właśnie, Paul jeszcze coś mówił o tym, że IE ma jakieś zapomniane przez wszystkich ficzery, których można użyć do zaimplementowania css-owych transformersów.
A co do używania tego -- obsługi 3d raczej nie zaemulujesz programowo :), a css ogólnie się z tego co Paul mówił średnio nadaje do wsparcia sprzętowego (dla 2d), więc dojście do momentu, żeby taki wolfenstein 3d przez przeglądarkę nie żarł 100% procesora pewnie zajmie wieeeeeele lat, jeśli w ogóle kiedykolwiek nastąpi.
Także pojedyncze nowe fajne ficzery to jedno, ale parytet z normalnym GUI systemu operacyjnego, to zupełnie co innego.
06 IX 2009 o 01:25
Moim zdaniem to nie przeglądarki idą w kierunku biurkowego GUI, ale odwrotnie. Trzeba rzucić okiem na zarysy nowych technologii i trendów.
1) Microsoft i jego XAML
2) SVG w projektach FLOSS
3) Lekki i wygodny do osadzania WebKit w GTK+, Qt4, Cocoa, PalmPre
Sam jestem na etapie robienia projektu w którym model danych będzie przekazywany do WebKit, a widok to JS+SVG.
Taki zestaw powoduje niezłą elastyczność zarówno w dostosowywaniu interfejsu użytkownika do dowolnych potrzeb, jak i backendu do dowolnej platformy.
Co do aplikacji 3d? To oczywiste. Dla nich potrzebne są wydajne silniki, ale rola natywnego GUI z predefiniowanymi widgetami będzie się coraz bardziej kurczyć, aż skończy na jakiś systemowych formularzach konfiguracyjnych.
06 IX 2009 o 13:10
(Komentarz zmodyfikowany 06.09.2009 o 18:21)
"bodajże 10 teamów po 2 osoby każdy (wychodzi 20k per team)."
Początkowo było prawie 17 teamów (3 jednoosobowe i 14 dwuosobowych). Niestety, część się "wykruszyła" lub odeszła. Na szczęście mogę powiedzieć, że najbardziej obiecujące (moim zdaniem) projekty są dalej rozwijane ;-) Ciekawe tylko jak je przyjmie branża na prezentacji pod koniec września ;-)
[tutejszy system komentarzy nadinterpretuje uśmieszki z myślnikami --mmazur]
06 IX 2009 o 15:10
"Jeden nawet w .NECIE" - czy to coś złego?
06 IX 2009 o 18:11
"JS-owe backendowe biblioteki koncepcyjnie mają działać tak samo, jak te systemowe, czyli zapewniać programiście wygodny i przyjazny sposób na tworzenie różnych podstawowych i zaawansowanych ficzerów, a ze swojej strony zajmować się przezroczyście niekompatybilnościami przeglądarkowymi i robić graceful fallback przy nieobsługiwanej funkcjonalności."
Pokochalem to zdanie, ilosc madrych slowek wrecz miazdzy ;-)
06 IX 2009 o 18:22
@demikaze
Nie wiem, nie znam się na tym.
06 IX 2009 o 19:39
@demikaz - Nietypowego.