Code Europe 2017

Już 5, 7 i 13 grudnia Kraków, Warszawa i Wrocław staną się kolejno stolicami branży IT. Po raz pierwszy w Polsce, właśnie na grudniowej konferencji programistycznej Code Europe, topowi eksperci z najbardziej innowacyjnych firm z branży IT podzielą się unikalną wiedzą. To jedyna okazja do spotkania się z ponad 130 specjalistami IT, którzy przyjeżdżają do Polski specjalnie na Code Europe, wśród nich są:

  • Edward Burns, na co dzień Consulting Member of the Technical Staff w Oracle, bloger mochimachine.org, badacz programistów i autor książki “Secrets of the Rock Star“, poprowadzi wykład “Secrets of the Above Average Programmers”. To spotkanie dla tych, którzy zastanawiają się, jak zadbać o rozwój zawodowy, inwestować swój czas i rozwijać kompetencje.
  • Nicolás Bevacqua, Front-end Engineer z Elastic, znany jako bloger Ponyfoo, autor m.in. “JavaScript Application Design” czy “Practical Modern JavaScript”, poprowadzi wykład “Modular Design”. Nicolás podpowie, jak efektywnie tworzyć moduły w JavaScript i budować duże aplikacje o strukturze modułowej.
  • Alex Castillo, autor bloga http://www.castillo.io/, na co dzień Software Engineer w Netflix, pasjonat Angulara, Reacta i NeuroTech poprowadzi wykład “NeuroJavascript III: Moving things with your mind”, w którym podzieli się najnowszymi odkryciami na temat pracy ludzkiego mózgu. Dołącz, jeśli chcesz się dowiedzie , jak przeprowadzać eksperymenty behawioralne za pomocą Angular 2 i uczenia maszynowego.
  • Janna Loeffler, Senior Ride Control Software Engineer w The Walt Disney Company, opowie o tym, co stoi za sukcesem parków rozrywki Walt Disney World. Jeśli chcesz poznać najnowsze rozwiązania stosowane w branży rozrywkowej, wybierz się na wykład “DevOps at Walt Disney Imagineering: Integrating Talent and Tools”.

Zdobądź najnowszą, praktyczną wiedzę na Code Europe:

  • 10 ścieżek tematycznych: Cloud Computing, Data Science, Future & Inspire, Gamedev, Java & Scala, DevOps & Architecture & Microservices, Everything Hardware, Programming languages, Tomorrow Web, Security & Testing
  • ponad 130 światowej klasy prelegentów z 22 krajów
  • ponad 150 wykładów i 15 warsztatów, na których w kameralnej atmosferze zdobędziesz najnowszą wiedzę.

W przerwie między warsztatami i prelekcjami uczestnicy będą mogli zapoznać się z prezentacjami nowych technologii, strefą produkcji gier komputerowych oraz posilą się pizzą. W tym sezonie nowością jest specjalna strefa Automotive Zone powered by TomTom, w której uczestnicy otrzymają unikalną szansę na zapoznanie się z autonomicznymi samochodami TomTom oraz nowoczesnym systemem map nawigacyjnych firmy.

„Pracujemy nad usługami geolokalizacyjnymi, systemami nawigacyjnymi oraz niektórymi, kluczowymi komponentami wykorzystywanymi w pojazdach autonomicznych, takimi jak RoadDNA oraz trójwymiarowe, nawigacyjne mapy HD” – komentuje Marcin Kmiecik, CTO działu Map w TomTom.

Sprawdź agendę Code Europe: https://goo.gl/hStKBE

Kiedy i gdzie zapraszamy?

  • Kraków, 5 grudnia, ICE Kraków Congress Centre
  • Warszawa, 7 grudnia, PGE Narodowy
  • Wrocław, 13 grudnia, Hala Stulecia

Bilety do pobrania na: https://goo.gl/qp1ZgX

Organizator Code Europe: Grupa Absolvent

Partner Ścieżki Tematycznej Automotive: TomTom
Partner Ścieżki Tematycznej Big Data: MicroStrategy
Banking Technology Partner: Alior Bank
Clean Code Partners: Capgemini Kraków, StepStone Services
Cloud Partners: Deloitte, Demant Technology Center, Dreamlab, Ericsson, Future Processing, Infopark AG, Motorola, Netcompany, Tieto
Mecenasi: Ministerstwo Cyfryzacji, Minister Nauki i Szkolnictwa Wyższego, Marszałek Województwa Dolnośląskiego, Marszałek Województwa Mazowieckiego, Marszałek Województwa Małopolskiego, Narodowe Centrum Badań i Rozwoju, Prezydent Miasta Krakowa, Prezydent Miasta Warszawy
Partnerzy medialni: 4programmers, Antyweb.pl, Komputer Świat, Mam Startup
Patroni medialni: dotnetomaniak.pl, fintek.pl, Geek Girls Carrot, GoMobi.pl, KrakWhiteHat.pl, it-leaders.pl, Magazyn-it.pl, Mobiletrends.pl, mobiRANK.pl, Notatnik Programisty, pcfoster.pl, Pixel-magazine.com, Programistamag.pl, Spotkania-IT, Startup Academy, Thinkapple, Virtual-IT, Womenintechnology.pl, Wroclife, Wydarzenia-IT,

 

Programowanie funkcyjne w Javie.

Co nieco o programowaniu funkcyjnym.

Czy możliwe jest całkowite usunięcie ze swojego kodu wyrażeń typu if / else, for, while, do while? Wydaje się to niemożliwe, bo wielu programistów nauczyło się, że podejmowanie decyzji to podstawowy element budowania każdego programu.

Wraz z wydaniem Javy 8 pojawiło się nieco funkcjonalności funkcyjnych i jeśli programujesz w tym języku, zapewne znasz interfejsy z pakietu java.util.function takie jak choćby: Function, Supplier, czy Consumer.

Aby obsłużyć dane opcjonalne, wprowadzono w Javie 8 klasę Optional. Ale jak można byłoby ją zaimplementować lepiej?

Czytaj dalej

Zostań Liderem zmian w swoim mieście.

Pół roku temu opisywałem na blogu i na FB projekt Szkoła 3.0. Dziś krakowska Fundacja szuka osób chętnych do działania w kolejnych województwach.

Innowacyjna inicjatywa społeczna – Szkoła 3.0 – rusza w Polskę. Jest to projekt polegający na nauce programowania i przekazywaniu przyszłościowych umiejętności dla dzieci z domów dziecka oraz z rodzin w trudnej sytuacji życiowej i materialnej. Krakowska Fundacja Sarigato rozszerza działalność i szuka osób, które będą współtworzyć akcję w kolejnych województwach.
Czytaj dalej

Kurs Android – podstawy tworzenia aplikacji. Recenzja kursu video

Poniżej kolejna recenzja przygotowana przez Bartka Medonia. Tym razem 8-godzinny kurs video „Android – podstawy tworzenia aplikacji”. Autorem wszystkich lekcji jest Piotr Dzwiniel, z wykształcenia psycholog i neurobiolog, doktorant Instytutu Biologii Doświadczalnej im. M. Nenckiego PAN. W swojej pracy wykorzystuje różne języki programowania: Java, Python, Matlab, czy Haskell. Tworzy narzędzia diagnostyczne, projektuje procedury eksperymentalne oraz zajmuje się przetwarzaniem i analizowaniem danych.

Na blogu był już recenzowany bardzo dobry materiał jego autorstwa z nauki podstaw Javy.


Dziś przyszło mi napisać słów kilka o video kursie podstaw tworzenia aplikacji na platformę android, który znajdziecie tutaj.

Czytaj dalej

Benefity w branży IT w 2017 roku

Oferowanie niektórych benefitów stało się już standardem na Polskim rynku pracy, a szczególnie w branży IT. Firmy informatyczne dbają o to by pakiet proponowanych przez nich świadczeń był bogaty. Często pracodawcy wręcz prześcigają się we wdrażaniu coraz to bardziej luksusowych benefitów. Wysiłki te są doceniane, bo 82% pracowników z branży IT jest zadowolonych z oferowanych przez firmę świadczeń. W artykule przedstawiono jakie benefity oferują swoim pracownikom pracodawcy z branży IT. Dane pochodzą z Raportu płacowego Sedlak & Sedlak dla branży IT – 2017.

„Są rzeczy na niebie i na ziemi, o których się filozofom nie śniło”.
(W. Szekspir)

Czytaj dalej

Coś tu cicho ostatnim czasem…

Od kilku lat dzieje się tak samo. Styczeń jest u mnie miesiącem, w którym mam najmniej wolnego czasu. Nie wiem z czego to wynika, ale wtedy pracy mam najwięcej. Sytuację spotęgowało moje zaangażowanie w rozwój niedawno założonej firmy mojej żony (jeszcze większej pasjonatki do swojej pracy niż ja). Uruchomienie strony, crm-a, smsapi, projekty graficzne, bannery, wizytówki, itd, Koniec końców styczeń 2017 to chyba pierwszy miesiąc od czasu istnienia bloga, w którym nie opublikowałem ani jednego wpisu. Wszystko wskazuje na to, że luty będzie wyglądał podobnie…

ELK Stack, dobre praktyki zarządzania logami

 

Cat | tail | grep – nierzadko jest to dla wielu osób podstawowy zestaw komend do wyszukiwania pewnych informacji w logach. Rozwijając jakąkolwiek aplikację, tworzymy pewien ekosystem składający się wielu usług, generujących własne pliki rejestru zdarzeń w różnych formatach. Na przykład w pierwszej lepszej aplikacji którą rozwijałem informacje rejestrowane są przez:

  • serwer proxy – NGINX
  • serwer http – Tomcat
  • bazę danych – PostgrteSQL
  • no i aplikację.

Już przy tak podstawowym zestawie usług, generowanych informacji jest ogrom. Przegląd i analiza takich logów jest dosyć problematyczna. Jeszcze pół biedy, gdy wszystkie z tych danych znajdują się na jednym serwerze.

Jak nad tym zapanować? W tym artykule przedstawię open source’owy zestaw narzędzi służących zarządzania logami ELK Stack w skład którego wchodzą:

  • Elasticsearch – silnik wyszukiwania pełnotekstowego oparty na Apache Lucene.
  • Logstash – narzędzie przetwarzające, filtrujące, normalizujące i wysyłające gdzieś logi (w naszym przypadku do Elasticsearch’a).
  • Kibana – interfejs, aplikacja webowa do przeglądania i wizualizacji logów w czasie rzeczywistym.

W poniższym artykule zaprezentuję przykład aplikacji wykorzystującej Javovy Log4J wysyłającej do Logstasha logi za pomocą SocketAppendera (na potrzeby wpisu w Windowsie 10).

Zaczynajmy, jak zwykle bez zbędnego rozpisywania się.

Czytaj dalej

Wykonywanie kodu JavaScript w Javie

ausmalbild-nashorn-7Wraz z pojawieniem się Javy 8 został udostępniony nowy silnik JavaScriptowy dla JVM o nazwie Nashorn. Zastąpił on starszą implementację Rhino, dostępnego od Javy 6. JavaScriptowy silnik Rhino został stworzony dawno temu przez firmę Netscape (chyba w 1997 roku), a w późniejszym czasie rozwijany był przez Mozillę. Nashorn to silnik pozwalający uruchamiać kod Javascriptowy po stronie serwera. Daje to duże możliwości, bo w łatwy sposób można udostępnić „język / składnie” jakiejś konfiguracji dla użytkownika, dzięki czemu w trakcie działania aplikacji można modyfikować implementację pewnych zachowań i dodawać nowe. Dzięki wykorzystaniu takiego silnika można np. dać użytkownikowi możliwość oprogramowania jakiegoś fragmentu systemu.
Wykorzystując taki silnik można zaimplementować np. walidację formularzy przechowując ją tylko w jednym miejscu systemu / modelu. Z formularza przekazujemy JSONa, po stronie serwera wykonujemy ten sam kod który był wykonany po stronie przeglądarki.

Bez zbędnego wstępu, przejdę do konkretnych przykładów pokazujących możliwości wywoływania kodu JavaScript z poziomu Javy.

Przykład Hello World:

W wyniku uruchomienia czego, na konsoli pojawi się tekst: „Cześć, tu Notatnik Programisty!”

Interfejs ScriptEngine posiada przeciążoną metodę eval przyjmującą obiekt klasy Reader, dzięki czemu można wywołać kod bezpośrednio z zewnętrznego pliku:

W Javie 7 metoda getEngineByName(„js”) zwróci implementację Rhino. Od wersji ósmej będzie to już silnik Nashorn.

Czytaj dalej