Java, Spring, JavaScript, Python, TensorFlow, AI, ML
Od kliku miesięcy projekt inżynierski zajmował 90% czasu, który mogłem poświęcić na programowanie po godzinach. Oficjalnie projekt nosił nazwę „Architektura mikroserwisowa na przykładzie aplikacji do komunikacji”. Na początku nieco obawiałem się podejmować problem (czyt. mikroserwisy), który znałem tylko teoretycznie, ale po pewnym czasie przekonałem się, że nie taki diabeł straszny jak go malują. Wykonane odpowiednio […]
W ramach Szybka akcja #1 – Play Framework napisane zostało REST API do aplikacji Hobusu. Mając stworzoną logikę po stronie serwera przyszedł czas na realizację części frontendowej. Do tej pory wszystkie projekty realizowałem na bardzo podobnym stosie technologicznym – Bootstrap + jQuery + zewnętrzne biblioteki JavaScript. Miałem również chwilową przygodę z MustacheJS. Projekt Hobusu chciałem […]
Jesteśmy obecnie w trakcie okresu w roku, w którym poziom naszej motywacji sięga najwyższych wartości. Jednym z moich postanowień na rok 2017 jest zaoszczędzenie pewnej sumy pieniędzy. W związku z tym stwierdziłem, że potrzebuję w jakiś sensowny sposób mieć wgląd w swoje wydatki, aby móc je stale kontrolować, analizować i na bieżąco korygować. W ten […]
Projekt, nad którym obecnie pracuję, to system aplikacji mikroserwisowych komunikujących się za pomocą protokołu HTTP. Ze względu na ograniczone konteksty używanej domeny poszczególne aplikacje nie mają pełnej wiedzy o encjach – po prostu nie ma takiej potrzeby. Niestety „odchudzenie” encji w pewnych częściach systemu powoduje konieczność ich konwertowania i uzupełniania o dodatkowe dane podczas komunikacji. […]
HTTPS to szyfrowana wersja protokołu HTTP, która zabezpiecza dane wymieniane pomiędzy serwerem a klientem. W niniejszym wpisie pokażę w jaki sposób włączyć obsługę HTTPS w kontenerze Apache Tomcat oraz jak skonfigurować aplikacje klienckie. Poprawna konfiguracja HTTPS wymaga, aby serwer posiadał „dokumenty”, które to będzie przedstawiał przy łączeniu się do źródeł wrażliwych danych. Takim dokumentem jest […]
Rozmowy rekrutacyjne dla programistów nie od dziś owiane są lekką mgiełką tajemniczości. O procesie rekrutacji „u gigantów” można usłyszeć wiele ciekawych historii, które czasami są prawdziwe, a czasami nico od tej prawdy odbiegają. Dla każdego programisty rekrutacja wiąże się z przejściem przez kilka etapów, jednym z nich jest sprawdzenie umiejętności kodowania. W Internecie na ten […]
Jedną z nagród w Pekatonie były wejściówki na Bitspiration Festiwal. W niedzielę 5 czerwca około godziny 12:00 wrócilismy do domów po 24-godzinnym hackatonie, a o 23:00 siedzieliśmy na Skype organizując wyjazd do Warszawy, ponieważ Bitspiration zaczynał się o 09:00 dnia następnego. Z Krakowa wyjechaliśmy o 05:45, w Warszawie byliśmy grubo po 08:00. Żaden z nas […]
Pekaton to 24-godzinny hackaton, który został organizowany przez Wydziałową Radę Samorządu Studenckiego Wydziału Inżynierii Elektrycznej i Komputerowej Politechniki Krakowskiej. Maraton rozpoczął się 4 czerwca o godzinie 10:00 a zakończył się 24 godziny później. Do rywalizacji stanęło 12 drużyn. Po wielu perturbacjach wystartowaliśmy w 3 osobowej drużynie o nazwie „Spring is coming”. Gwoli ścisłości – nikt z […]
Funkcja preg_replace służy do podmiany podciągów ciągu znaków na podstawie wyrażeń regularnych. Język PHP został dodatkowo wyposażony w modyfikator [crayon-5b9f5884d7831816889764-i/]. To dzięki niemu mieliśmy możliwość wykonywania dodatkowych funkcji na dopasowanym ciągu np. [crayon-5b9f5884d783b533033946-i/]. W wersjach od 5.5.0 modyfikator ten został oznaczony jako DEPRECATED, a w 7.0.0 i wyższych usunięty. PHP w wersji < 5.5.0 Zacznijmy od przykładu: [crayon-5b9f5884d7841006643046/] […]
Mulesoft, twórca m.in. Mule ESB, organizuje ośmiotygodniowy kurs dla programistów oraz architektów. Przez 8 tygodni, co 7 dni, udostępniane będą kolejne materiały kursu (o długości 2-4 godzin). W ramach kursu zostaną omówione następujące zagadnienia: Wykorzystanie Anypoint Studio do budowania aplikacji integracyjnych. Wykorzystanie AnyPoint Platform do stworzenia API z RAML, a następnie implementacja, jako web services […]
W poprzednim poście opisywałem konfigurację aplikacji dostawcy tożsamości. W tej części przejdziemy przez zagadnienia integracji CAS z naszą aplikacją za pomocą biblioteki Pac4J. Zależności Maven Pierwszym krokiem integracji jest dodanie do naszego projektu niezbędnych zależności. Jest to [crayon-5b9f5884d96c8785340779-i/] oraz integracja wspomnianej biblioteki ze Spring MVC lub Spring Boot. [crayon-5b9f5884d96d1300446356/] Przykładowe wersje powyższych artefaktów: [crayon-5b9f5884d96d7949874278/] Najnowsze wersje […]
Istnieje wiele różnych technik debugowania. Jedną z najlepszych i najwygodniejszych jest debugowanie za pomocą narzędzi, które pozwalają nam zatrzymywać wykonywanie aplikacji w wyznaczonych miejscach (breakpoint). Realizacja jednego z projektów nasunęła pytanie: w jaki sposób debugować aplikację napisaną w Javie przy użyciu Springa, która jest uruchamiana za pomocą Mavena we wbudowanym kontenerze Tomcat, używając narzędzi dostępnych […]
Ktoś kiedyś dodał plik z logami do repozytorium. Polecenie [crayon-5b9f5884db7c4682920811-i/] wyświetla całą listę zmian – głównie logi. Rozwiązaniem jest ich ignorowanie czyli dodanie folderu z logami do [crayon-5b9f5884db7ce722389059-i/] . Dodajemy, ale po sprawdzeniu statusu indexu i możemy być lekko zaskoczeni – zmiany są nadal widoczne. Zastanówmy się jak możemy takie zmiany ignorować. Aktualizacja indexu Pierwszym rozwiązaniem jest […]
Manager projektu Maven to narzędzie, które możemy rozszerzać za pomocą pluginów. Dzisiaj przedstawię dodatek umożliwiający automatyczne budowanie, testowanie i umieszczanie aplikacji w kontenerze Apache Tomcat. W tym poście posłużyłem się aplikacją, która została stworzona w poście SPRING MVC – KONFIGURACJA I URUCHOMIENIE PIERWSZEJ APLIKACJI. Konfiguracja kontenera Na początku przystępujemy do konfiguracji kontenera Tomcat. Pierwszym krokiem jest utworzenie odpowiedniego użytkownika. […]
W artykule o tworzeniu własnych szablonów wspomniałem, że są one tylko jedną z wielu funkcjonalności oprogramowania firmy Jetbrains. W tym poście opisze w jaki sposób możemy efektywnie łączyć podstawowe narzędzia środowisk takich jak PhpStorm czy IntelliJ do przyspieszania naszej pracy. Tematem tego postu są filtry wyszukiwania. Za przykład posłużą nam bardzo często wykorzystywane przez programistów […]
Java, Spring, JavaScript, Python, TensorFlow, AI, ML
I’m an IT student and programmer with a few years of commercial experience. I’ve been into programming since I was 12.
My programming interests focus mainly on back-end programming – from simple web applications to big enterprise systems. In the recent months, I’ve spent a great deal of time studying microservice architecture and artificial intelligence solutions.