var Sovia = new Tech();

29 Marca odbyła się w Warszawie konferencja VarSoviaNewTech organizowana przez Polski oddział firmy Microsoft. Chodź nie było o niej głośno i organizowana była chyba w pośpiechu, gdyż rejestracja ruszyła 3 tygodnie przed samym wydarzeniem, to muszę przyznać, że była to jedna z najbardziej profesjonalnych konferencji, na jakich byłem do tej pory. Największą niespodzianką był fakt, że miał na niej prezentować sam Satya Nadella, szef Microsoftu. Sam się na początku zastanawiałem, czy to nie jest jakiś chwyt marketingowy, ale wszystko wskazywało na to, że jednak jest to prawda i będzie można zobaczyć, posłuchać CEO największej firmy komputerowej na świecie – na żywo.

Poniżej możecie obejrzeć skrót z konferencji, który zmontowaliśmy razem z moją drugą połówką. Mam nadzieję, że zachęci on Was do przyjścia na kolejną konferencję 🙂

Organizacja

Konferencja odbyła się w Muzeum Historii Żydów Polskich. Wspaniałym budynku, do którego można dojechać w 15 min z Dworca Centralnego. Chodź organizatorzy zalecali przyjazd o 8:30 to nawet moje godzinne spóźnienie nie zmieniło faktu, że miałem dużo czasu na zapoznanie się ze wszystkimi atrakcjami, jakie przygotowali na miejscu. Na początek, przez półtorej godziny można było pozwiedzać stanowiska firm, rozwijających aplikacje na HoloLens i zobaczyć magię hologramów na własne oczy. Dodatkowo, jeśli ktoś już się znudził hologramami, były do dyspozycji Xboxy oraz Surface-y, na których można było porozwiązywać zagadki z CodeHunt.

Prezentacje były prowadzone w bardzo ciekawy sposób. Pojawiło się trochę faktów i liczb, ale praktycznie każdy prelegent pokazywał jakieś krótkie dema i kawałki kodu. Bardzo fajne było również to, że prezentacje trwały około 30 min, więc prelegenci zmieniali się bardzo szybko, a słuchacze byli cały czas zaciekawieni. W połowie dnia wystąpił w końcu gość specjalny. Przez ponad 45 minut, Satya opowiadał o tym, w którą stronę zmierza Microsoft oraz pokazywał na przykładach, jak w Polsce prężnie rozwijają się firmy korzystające z rozwiązań Microsoftu. Pokazywał również jakie okazje stoją przed nami, programistami, aby zmienić otaczający nas świat.

Czego się dowiedziałem

  1. Do tej pory myślałem, że HoloLens to tylko gadżet, który podobnie jak okulary VR służy do zabawy, ewentualnie Microsoft tworzy aplikacje na ten sprzęt, aby pokazać je na demach i zachęcić innych do kupna. Prawda natomiast jest taka, że istnieje całkiem duży rynek aplikacji na te urządzenia i całkiem sporo startupów wybija się tworząc aplikacje holograficzne. Przykładem korporacji, korzystających już z HoloLensów może być Volvo. Sam sprawdziłem działanie hologramów i muszę przyznać, że robi wrażenie, gdyby udało się same okulary zminiaturyzować, żeby nie nosić takiego hełmu na głowie to by było coś!
  2. Dowiedziałem się, że Gutek woli .NET Framework od .NET Core 😉 A tak na serio, to Kuba i Bojan Vrnhovnik pokazali różnicę między starym a nowym rozwiązaniem. Na pierwszy rzut oka było widać, że stary framework jest bardzo dopracowany i spełnia większość wymagań programistów, ma jednak również wady. Jest mniej elastyczny i działa tylko pod Windowsem. Osobiście uważam, że .NET Core jest rozwiązaniem, które zastąpi całkowicie .NET Framework, potrzeba tylko jeszcze trochę czasu na dopracowanie samego frameworka jak i narzędzi, takich jak VSCode.
  3. Na prezentacji Karola Żaka można było zobaczyć jak połączyć ze sobą wiele serwisów do zarządzania cyklem życia aplikacji mobilnych pisanych w Xamarin. Pokazał integrację pomiędzy Visual Studio Team Services, Xamarin Test Cloud oraz HockeyApp, by na końcu powiedzieć, że nie trzeba wcale tych rozwiązań integrować samemu, bo powstaje nowe rozwiązanie mobile.azure.com, które łączy je wszystkie. Dlaczego w takim razie nie pokazać tego wszystkiego już na nowym rozwiązaniu?
  4. Dowiedziałem się o sile botów oraz o tym, kiedy napisanie bota jest rozsądniejsze niż napisanie własnej aplikacji mobilnej. Boty działają wszędzie, korzystając z takich aplikacji jak skype, czy messenger można napisać własny serwis, który będzie odpowiadać na wiadomości użytkowników na każdym urządzeniu. Ponadto boty mogą również rozpoznawać mowę, dzięki czemu można ich używać nawet prowadząc samochód, czy biegając.
  5. Nawiązując do poprzedniego punktu, zastanawiacie się jak można rozpoznawać mowę, nie pisząc samemu bardzo skomplikowanych algorytmów? Tutaj z pomocą przychodzi ostatnia rzecz, o której dowiedziałem się na konferencji. Mianowicie, Azure może pochwalić się całkiem dużym zasobem Cognitive Services – serwisów, które mogą za nas zdziałać cuda. Pośród oferowanych aktualnie serwisów jest: rozpoznawanie mowy i twarzy, określanie wieku lub emocji, a także serwis rekomendacji, który można podpiąć do własnego sklepu internetowego.

Ogólna ocena konferencji

Konferencję oceniam bardzo dobrze. Prelegenci pokazali wszystko o czym mówi się ostatnimi czasy i każdy mógł znaleźć coś dla siebie. Z racji tego, że prezentacje były krótkie, nie przekazano na nich jakiejś dużej wiedzy merytorycznej, ale na pewno zainspirowano do dalszego jej zgłębiania. Mam nadzieję, że nie będzie to jednorazowa edycja i za rok Microsoft również zorganizuje coś podobnego, bo dawno nie byłem na tak dobrej konferencji.

Ocena:

IAESTE CaseWeek 2014

Caseweek to ogólnopolska inicjatywa studentów ze stowarzyszenia IAESTE. W tym roku po raz pierwszy inicjatywa ta zawitała również do Łodzi. Jako przedstawiciel firmy Cybercom miałem możliwość poprowadzenia warsztatów z tworzenia aplikacji Modern UI. Poniżej znajduje się prezentacja, kody źródłowe poszczególnych kroków można pobrać tutaj.

Wkrótce postaram się dodać, krótki opis poszczególnych kroków, chociaż większość rzeczy napisałem już na blogu.

ABB DevDay 2013

Brak czasu, który doskwiera mi odkąd tylko rozpocząłem pracę, niestety przekłada się również na mojego bloga. Nie mam za bardzo czasu pisać czegokolwiek, dlatego relację z konferencji, która odbyła się w poprzedni piątek piszę dopiero dzisiaj. Ponieważ na DevDay’u była całkiem spora ekipa ludzi, którzy prowadzą blogi, o tym wydarzeniu możecie już przeczytać tututu i jeszcze tu. Ponieważ jednak w tym roku sesje zostały podzielone na 2 sale, każdy mógł wybrać różne sesje. Miało to niewątpliwie swoje wady i zalety, bardzo chciałem zobaczyć niekiedy obie sesje, które odbywały się w tym samym czasie. Mam nadzieję, że niedługo będę mógł zobaczyć je online :)

devday2013

Krótko o sesjach, na których byłem:

Jon Skeet – Back to basics: the mess we’ve made of our fundamental data types
Pierwszą sesję prowadziła największa gwiazda stackoverflow, człowiek który nawet na devday’u zaraz po swojej sesji odpalał laptopa i udzielał odpowiedzi na pytania zadawane na stack’u. Jego sesja dotyczyła pułapek jakie czekają na programistów C#, w typach prostych takich jak, kiedy powinno używać się double a kiedy decimal, czy dane przechowywane w stringu można zawsze traktować tak samo oraz o tym, że daty w historii bywają zwodnicze i nie zawsze luty ma 28 lub 29 dni… Ogólnie sesja była poprowadzona bardzo profesjonalnie, z odrobiną humoru, którą zapewniał Tony the Pony, czyli pacynka, z którą Jon prowadził czasami rozmowy. Była to świetna sesja na rozpoczęcie, niewiele kodu oraz całość podana w bardzo przystępny sposób. Uwagę mogę mieć tylko, do tego, że rzeczy przedstawione przez Jona zdarzają się niezwykle rzadko, zwłaszcza te z datami, natomiast rozumiem że sesja miała nieść głębsze przesłanie, żeby czasami skupić się również na szczegółach, bo tam może równie często tkwić problem.

Patric Kua – Implementing Continuous Delivery
Wybrałem tą sesję ponieważ zaciekawił mnie jej temat, miałem nadzieję że Patric opowie jakieś praktyczne rzeczy, jak rozwijać duże projekty tak, aby dostarczać nowe funkcjonalności i nie zginąć w starym kodzie. Usiadłem nawet na schodach, żeby tego posłuchać, bo cała sala była już zapełniona, kiedy wszedłem. Co prawda dowiedziałem się podczas sesji, jakie rzeczy kryją się pod nazwą Continuous Delivery, natomiast brakło przykładów i historii z życia, może dlatego że było zbyt mało czasu, temat zaś jest niezwykle obszerny. Mimo wszystko Patric’a bardzo dobrze się słuchało i widać było że wie o czym mówi.

Andreas Hakansson – Guerilla Framework Design
Ponieważ Andreas jest z firmy Tretton37, tej samej co zeszłoroczny prelegent Martin Mazur, próbowałem porównać jego prezentacje z zeszłoroczną. Ciężko było doścignąć Martina, który w zeszłym roku zrobił na mnie ogromne wrażenie. Po kilku minutach przestałem porównywać ich sesji, ponieważ Andreas mówił o rzeczach bardziej technicznych, więc porównanie byłoby niesprawiedliwe. Pokazywał jakie ciekawe rzeczy zastosowali we frameworku Nancy, między innymi poprzez zastosowanie dynamicznych obiektów oraz automatyczne ładowanie zależności.

Ben Hall – Building Startups and Minimum Viable Products
Wiele osób wybrało inną sesję o jakże ostatnio popularnym angularJS, sam też przez chwilę zastanawiałem się nad tym, ale nie żałuje, że poszedłem na sesje Bena. Sesja mówiła całą prawdę o tym jak powstają startupy. Ben ma spore doświadczenie pracując z nowymi firmami, które chcą podbić rynek i sam wie bardzo dobrze na czym należy się skupić, a co powinno zejść na dalszy plan. O ile na wszystkich innych sesjach słyszeliśmy że pisanie testów jest bardzo ważne, o tyle w przypadku startupów, testy nie mają zbyt wielkiego sensu. “Program może być napisany tak świetnie że nie będzie potrzebna do niego dokumentacja, ale co z tego skoro nikt go nie używa”. Wielkie brawa dla niego za otwarcie oczu :)

Paul Stack – Windows – Having its ass kicked by Puppet and PowerShell since 2012
Paul opowiadał o sprawach nie do końca związanych z deweloperką, temat bardziej interesował IT-prosów, nie było jednak tego widać po sali. Jego sesja zgromadziła również komplet w sali i znowu połowę przesiedziałem na schodach, mimo to była to na prawdę świetna prezentacja. Paul śmiał się z produktów Microsoftu, i pokazywał jak zamiast pisać wielostronicowe Install Guide’y (kto z nas tego nie zna), napisać jeden skrypt PowerShellowy instalujący cały system i uszczęśliwić przy tym programistów.

Marco Cecconi – The Architecture of StackOverflow
Temat, którego nie mogłem przegapić, między innymi również dlatego, że moja praca inżynierska opierała się w dużym stopniu na tym jak działa stackexchange. Prawda okazała się jednak znacznie prostrza niż sobie wyobrażałem. Tak na prawdę stackoverflow składa się z 9 projektów. Zaś serwerów obsługujących 3.5 mln użytkowników jest zaledwie 25… są to wszystkie serwery wraz z dwoma load balancerami, i 4 serwerami bazodanowymi. Marco mówił, że pisząc stackoverflow nie skupiali się zbytnio na czytelności kodu, bardziej na tym, żeby to szybko działało. Jak widać udało im się to osiągnąć, bo nawet Jon Skeet nie potrafi ubić ich serwerów. Z ciekawostek dodam, że cały zespół stackexchange liczy sobie tylko 10 developerów!

Rob Ashton – The software journeyman’s guide to being homeless and jobless.
Na koniec, wisienka na torcie, czyli człowiek, który mimo że wszyscy już zasypiali i czekali tylko na afterparty spowodował, że chciałem aby nie przestawał swojej prezentacji i mówił bez końca. Pamiętam Rob’a z poprzedniego roku, kiedy to opowiadał o JSie, lecz tegoroczny Rob to całkiem inna osoba. Biła z niego taka energia i radość z tego, że jest… bezrobotny :) Opowiadał o tym, jak rzucił pracę, tylko po to, by znów odkryć radość z programowania. Teraz mimo, że jest bezrobotny, nie brakuje mu ofert pracy i pracuje przy tym przy czym chce. Rob swoje przygody opisał na swoim blogu (tu), więc jeśli chcecie poczytać zachęcam do lektury.

Na koniec, krótkie podsumowanie… Już w zeszłym roku uważałem, że DevDay to konferencja o wysokim standardzie, po tegorocznej edycji, wszystko zostało ulepszone. DevDay dorównuje o ile nie przewyższa niejedną płatną konferencje. Wielkie podziękowania należą się osobom, które organizowały tą konferencję: Rafałowi,Michałowi i całej ekipie DevDay. Jedyna uwaga co do tegorocznej edycji, jest taka, że nauczyłem się mniej niż poprzednio. Sesje były bardziej ogólne i nie były prawie wcale skierowane do programistów .NET, niemniej cały dzień i jak i noc spędziłem w bardzo miłej atmosferze.

Zdjęcia z konferencji możecie znaleźć na profilu facebookowym abbdevday, natomiast nagrania z sesji będą dostępne na kanale youtube.

ABB DevDay – podsumowanie


Wczoraj w Krakowie odbyła się druga edycja konferencji DevDay, organizowanej przez firmę ABB. O samej konferencji dowiedziałem się na początku września i kiedy zobaczyłem nazwiska prelegentów od razu stwierdziłem, że muszę tam być. O kim mowa i kto był prelegentem na DevDay? Scott Hanselman, Greg Young, Sebastien Lambla, Mark Rendle, Martin Mazur, Rob Ashton oraz Antek Piechnik, który do listy prelegentów doszedł niecałe 2 tyg przed konferencją. Każdy z prelegentów przedstawiał na prawdę wysoki poziom jeśli chodzi o wiedzę oraz prezentacje. Wszystkie sesje mają być dostępne online. Ja z miłą chęcią jeszcze raz obejrzę te prezentacje, bo na niektórych niestety całonocna podróż z Łodzi dała się we znaki i nie wszystko co prelegent mówił do mnie docierało.
Poniżej opiszę pokrótce o czym były poszczególne sesje i co mi się podobało w samej konferencji.

It’s not what you read, it’s what you ignore

Scott Hanselman

Pierwsza sesja chyba rozbudziła każdego, kto przyszedł na DevDay. Mogę śmiało stwierdzić, że Scott Hanselman robi świetne show podczas swojej prezentacji, była to chyba najlepsza prezentacja na jakiej byłem do tej pory. Sesja była o tym jak w dzisiejszych czasach nauczyć się ignorować mało istotne i niepotrzebne rzeczy, tak aby nie cierpieć z powodu przepełnienia informacją. Temat o którym można już było usłyszeć w jego wcześniejszych prezentacjach, czy poczytać na blogu, natomiast sam styl prowadzenia prezentacji był na tyle ciekawy, że publiczność praktycznie nie przestawała się śmiać. Niestety Scott wyszedł zaraz po swojej prezentacji i nie można już było z nim porozmawiać…

Hidden Complexity: Inside Simple.Data and Simple.Web

Mark Rendle

Największą niespodzianką tej sesji było zobaczenie jak Mark Rendle wygląda na prawdę. Zawsze chowa się za swoim awatarem, który nie zdradza do końca tego jak wygląda 😛 Temat jego prezentacji był oczywiście o Simple.Data, trochę mniej o Simple.Web, czyli bibliotekach ułatwiających dostęp do danych w .NET. Podczas sesji pokazał trochę kodu z Simple.Data oraz pokazał jak można wykorzystać techniki dynamicznego typowania w C#. Nie zawsze te przykłady były dobrymi technikami programowania (np przeciążenie wartości true), ale pokazały, że nie trzeba ograniczać się do silnie typowanego stylu programowania.

HTTP Caching 101

Sebastien Lambla

Sebastien opowiadał o możliwościach cache’owania danych zarówno po stronie serwera, jak i po stronie klienta oraz największych paradoksach protokołu HTTP 1.1. Większość jego prezentacji składało się z zapytań http i odpowiedzi serwera 🙂 Mimo wszystko wielką zaletą był entuzjazm z jakim prowadził całą prezentację.

Javascript sucks and it doesn’t matter

Rob Ashton

Bardzo popularny ostatnio temat, czyli Java Script. Rob Ashton pokazał, czemu programiści tak bardzo nie lubią pisać w javascripcie, oraz czemu powinniśmy zaakceptować, że java script ssie i po prostu w nim programować. Pierwsza część polegała na przedstawieniu paradoksów języka, coś podobnego do popularnego ostatnio filmiku na youtube: WAT. Potem już tylko pokazywał przykłady jak pisać w js, jak testować skrypty oraz jak poradzić sobie z brakiem obiektów w js. Warto obejrzeć tą prezentację, jeśli akurat szef zlecił Ci napisanie czegoś w js 🙂

Why you should talk to strangers

Martin Mazur

Kolejny prelegent okazał się bardzo sympatycznym szwedem, polskiego pochodzenia, który mówi równie dobrze po polsku, co po angielsku. Ogólnie prezentacja miała na celu nie tyle zachęcenie do podchodzenia do innych osób, co zmianę w sposobie myślenia o programistach innych języków jako ‚oni’, ‚ci gorsi’. Martin przedstawił kilka języków programowania oraz przykłady co z nich można wyciągnąć. Osobiście zachęcił mnie do poznania jakiegoś całkowicie odmiennego języka programowania, bo ostatnim czasy niczego poza C# nie miałem w rękach. Na koniec wymienił on listę języków programowania, które zna, czym bardzo mi zaimponował.

Shipping code

Antek Piechnik

Antek, mówił dużo o swojej firmie (FutureSimple) oraz o ich flagowym produkcie Base. Ogólnie mówił o tym czemu w jego firmie odeszli od klasycznych scrumowych metodyk programowania i postawili na technikę Programming motherfucker!. Dzięki takiemu rozwiązaniu są w stanie dostarczać rozwiązania o wiele szybciej i efektywniej, niż inne zespoły.

How to get productive in a project in 24h

Greg Young

Ostatnia prezentacja była nie lada wyzwaniem dla Grega Younga, musiał występować przed zmęczonymi i czekającymi na afterparty uczestnikami. Prezentacja Grega była o tym, jak potrafi w 3 dni usiąść do projektu, który widzi pierwszy raz w życiu i powiedzieć liderowi projektu gdzie jest błąd. Pokazał różne narzędzia do analizy kodu oraz zaprezentował gdzie należy w pierwszej kolejności szukać problemów z kodem.

Ogólnie cała konferencja, przebiegła bardzo fajnie i w miłej atmosferze. Firma ABB przy wejściu rozdała mazaki oraz koszulki, które z tyłu miały miejsce na ‚notatki’ od innych uczestników. Bardzo fajna integracja i miło spędzony czas w gronie geeków. Teraz mogę stwierdzić, że 24h bez snu były tego warte.