5 i 6 września Kraków gościł europejską edycję konferencji Google Developer Days, nazywanej nieoficjalnie „małym I/O”. Jako członek programu Google Partners nasza Agencja otrzymała zaproszenie na tą prestiżową imprezę i 6 września miałem okazję przez cały dzień uczestniczyć w sesjach i warsztatach odbywających na terenie ICE Kraków.
Jako jedna z dwóch odbywających się w tym roku konferencji Google Developer Days, krakowska edycja zgromadziła prawie 2500 programistów z całego świata. Przez dwa dni mogli oni uczestniczyć w sesjach technicznych odbywających się na dwóch salach audytoryjnych, doskonalić swoje umiejętności podczas warsztatów, a także spotykać się i wymieniać doświadczenia z kolegami po fachu oraz porozmawiać z pracownikami Google.
Tematyka konferencji obejmowała cały przekrój rozwiązań i technologii rozwijanych przez Google, od Analytics i G Suite, przez technologie mobilne i Internet Rzeczy, aż po Cloud Computing i uczenie maszynowe.
Mimo to patrząc na program imprezy wyraźnie było widać, na jakie tematy Google chce szczególnie zwrócić uwagę developerów:
Mobile Web i Progressive Web Apps
Już pierwsza sesja, odbywająca się w głównym audytorium, zaraz po otwierającym konferencję Keynote, dotyczyła Progressive Web Apps. W skrócie można określić je jako kombinację stron internetowych oraz aplikacji mobilnych, otwierającą przed twórcami stron zupełnie nowe możliwości.
Strony, które zostały stworzone jako PWA mają na ekranie telefonu swoją własną ikonę jak zwykłe aplikacje i tak jak one ładują się jako niezależne, pełnoekranowe doświadczenia. Dzięki instalowanym na urządzeniach tzw. „service worker’om” możliwe jest:
- pobieranie w tle wybranych zasobów, aby strona działała szybko nawet przy słabym połączeniu,
- działanie w trybie offline dzięki przechowywaniu na urządzeniu kluczowych zasobów i treści, a nawet umożliwienie użytkownikom pracy na stronie offline i synchronizacji po połączeniu z Siecią
- wysyłanie powiadomień push i ponowne angażowanie użytkowników
- tworzenie jeszcze szybciej działających stron dzięki możliwości połączenia PWA z technologią AMP (Accelerated Web Pages)
W ciągu dwóch dni konferencji odbyły się w sumie 4 sesje techniczne i 3 warsztaty poświęcone Progressive Web Apps, podczas których można było zdobyć wiedzę na temat samej technologii, metodologii jej wdrażania i najlepszych praktyk, czy narzędzi i bibliotek stworzonych przez Google, a także praktyczne umiejętności pozwalające tworzyć własne PWA.
Podczas drugiego dnia konferencji miałem przyjemność uczestniczyć w sesji „Frameworks and Tools for Progressive Web Apps” Stephena Fluina oraz warsztatach „Integrating AMP into PWA” prowadzonych przez Sarah Clark. W ciągu tych 3 godzin można było posłuchać nt. narzędzi udostępnianych przez Google i dobrych praktyk i implementacji rozwiązania na witrynach oraz udało się na nich opanować podstawy tworzenia PWA i na udostępnionych przykładach przećwiczyć łączenie ich z AMP. Tyle wystarczyło, żeby przekonać się, jak ciekawa to technologia i jakie daje możliwości – zdecydowanie warto się nią zainteresować!
Aplikacje mobilne, Cloud Computing i Machine Learning
Wiele uwagi poświęcono także tematyce natywnych aplikacji dla systemu Android i całej palecie udostępnianych developerom przez Google narzędzi, bibliotek i API.
Google stawia zdecydowanie na poprawę doświadczenia użytkownika poprzez czynienie interfejsu aplikacji, wygody jej obsługi i wydajności działania coraz lepszymi. Programistom mają w tym pomóc biblioteki takie jak Architecture Componenets, która dostarcza gotowe do wykorzystania elementy, dzięki którym znacznie można przyspieszyć budowanie aplikacji zarówno od strony UI, jak i zarządzania danymi.
Bardzo interesujące dla osób zajmujących się UI i UX były też sesje i warsztaty poświęcone bibliotece Androidowi O i Support Library (dotyczące między innymi możliwości tworzenie bazujących na fizyce animacji oraz innym nowościom pozwalającym wzbogacić interfejs aplikacji). Nie można też pominąć sesji technicznych i warsztatów poświęconych skutecznemu budowaniu nawigacji w aplikacjach oraz edytorowi Constraint Layout, wspomagającemu budowanie elastycznych i sprawnie działających layout’ów.
W programie GDD nie mogło oczywiście zabraknąć mnóstwa treści przeznaczonych stricte dla programistów. Poza wspomnianymi już Architecture Components można było dowiedzieć się wiele na temat biblioteki TensorFlow dostępnej dla Android O (umożliwiającej uczenie maszynowe i wykorzystywanej m.in. do rozpoznawania głosu, wykrywania języka tekstu, rozpoznawania obrazów czy analizy plików wideo).
Kolejnym ważnym punktem były sesje i warsztaty poświęcone platformie Google Cloud i możliwościom tworzenia dzięki niej rozbudowanych aplikacji bez konieczności budowania dla nich fizycznej infrastruktury czy wykorzystaniu dostarczanych przez Google Machine Learning API dających dostęp do gotowych modeli rozpoznawania dźwięku, obrazu, czy tekstu.
Android Things i Internet Rzeczy
Nie można pominąć także Android Things, czyli stworzonej przez Google platformy pozwalającej tworzyć oprogramowanie dla urządzeń wpisujących się w koncepcję Internetu Rzeczy. Bazująca na systemie Android platforma doskonale współpracuje usługami chmurowymi Google, dzięki czemu programiści zaznajomieni z tym systemem mogą łatwo rozpocząć tworzenie inteligentnych urządzeń wykorzystujących np. rozpoznawanie obrazu czy wysyłających dane do usług takich jak Google Weather.
Platformie IoT od Google zostało poświęcone całe stoisko, na którym można było obejrzeć działające urządzenia z niej korzystające i porozmawiać o nich z pracownikami Google, którzy chętnie odpowiadali na wszystkie pytania. Na zainteresowanych tematem czekały vouchery umożliwiające odebranie za darmo zestawu PicoPro Maker Kit dostarczanego przez TechNexion, na bazie którego można zbudować swoje własne urządzenie.
Jednym z ciekawych przykładów wykorzystania Android Things był wyposażony w kamerę i flamaster robot, który po zrobieniu zdjęcia na kartce papieru rysował portret sfotografowanego – przykład powyżej 😉
… i wiele innych.
To oczywiście nie wszystko, co czekało na uczestników konferencji. Spośród wielu innych tematów z punktu widzenia SEO bardzo interesujące wydaje się narzędzie Lighthouse, służące do analizy i audytowania stron internetowych z podziałem na kategorie: Progressive Web Apps, Wydajność, Dostępność i Dobre Praktyki.
Po analizie strony otrzymujemy procentowe wyniki w każdej z kategorii i sugestie poprawek. Kategoria Wydajność, Dostępność i Dobre Praktyki są podobne do PageSpeed Insights, ale bardziej rozbudowane i z powodzeniem można wykorzystać je do optymalizacji strony. Kategoria Progressive Web App pomoże w uwzględnieniu na stronie wyznaczników pozwalających zmienić ją na pełnoprawną PWA.
Na stoisku poświęconym narzędziu można było w praktyce zobaczyć jego działanie i przetestować je na własnej stronie oraz porozmawiać z pracownikami Google zajmującymi się projektem. Na pytanie o to, czy wyniki z tego narzędzia (przede wszystkim PWA) mogą mieć w przyszłości znaczenie dla pozycji w wynikach wyszukiwania nie udało się uzyskać odpowiedzi 😉 Nie warto wyciągać pochopnych wniosków, ale chociażby ze względu na ilość czasu poświęconą na konferencji PWA, nie zaszkodzi zainteresować się tym narzędziem.
Jest ono dostępne w najnowszej wersji Google Chrome – aby z niego skorzystać, w narzędziach developerskich należy przejść do zakładki „Audits”.
Ostatnią, ale nie mniej ważną kwestią jest temat wsparcia i dbałości Google o różnorodność i równouprawnienie, który jest częścią polityki firmy. Miejsce imprezy – ICE Kraków – jest przystosowane do potrzeb osób niepełnosprawnych a podczas sesji technicznych dostępna na żywo była transkrypcja wypowiedzi prowadzących dla osób niesłyszących.
Podczas obu dni konferencji odbywały się meetup’y programu Women Techmakers, który wspiera kobiety w biznesie technologicznym poprzez organizację szkoleń, budowanie społeczności i promowanie ich osiągnięć. Zadbano również o to, by rodzice uczestniczący w GDD mogli pozostawić pociechy w specjalnej strefie opieki oraz oferowano zwrot kosztów opieki najmłodszych dzieci.
To podejście znalazło swoje odzwierciedlenie także w zamykającym konferencję keynote, które wygłosili Dirk Primbs i Sowmya Subrama. Jedną z najważniejszych poruszonych w nim kwestii była idea „inclusive design”, którą Google uczynił jednym z priorytetów w procesie tworzenia swoich produktów. Polega ona na tworzeniu produktów i usług, które będą dostępne i użyteczne dla każdego, niezależnie od wieku, płci, rasy, orientacji, czy niepełnosprawności. Jako przykład zostało przywołane tutaj YouTube Kids, wersja serwisu przystosowana specjalnie do potrzeb najmłodszych.
Google Developer Days Europe 2017 to nie tylko duże wyróżnienie dla Krakowa, ale również potwierdzenie, jak ważnym regionem dla branży technologicznej jest Europa. Konferencja dała okazję programistom i developerom z całego świata nie tylko do zapoznania się z najnowszymi rozwiązaniami i kierunkami rozwoju wytyczanymi przez Google, ale również wymieniać doświadczenia i nawiązywać nowe kontakty. Pozostaje liczyć na to, że impreza powróci jeszcze do Polski!