Kto stoi w miejscu, ten się cofa – bardzo popularny cytat z książki Margot Michała Witkowskiego jest chyba najlepszym wstępem do tematu rozwoju umiejętności programistycznych. Technologie IT, języki programowania i framework’i rozwijają się w tak zawrotnym tempie, że aby nie pozostać w tyle warto uczyć się ciągle nowych rzeczy. Wiele jest w internecie dostępnych kursów MOOC, które pomagają się rozwijać. Inna formą uczenia jest podejście bardziej praktyczne polegające na rozwiązywaniu różnych problemów czy zadań programistycznych, a nawet uczestniczenia w konkursach. Z jakich platform warto skorzystać ? Czytaj dalej „Rozwijanie umiejętności programistycznych”
Miesiąc: sierpień 2016
Jenkins – Continuous Integration & Continuous Deployment
Rozwój oprogramowania zgodnie z praktyką ciągłej integracji (CI/CD – Continuous Integration / Continuous Deployment) wymaga, by kod aplikacji możliwe często integrowany z innymi komponentami i wdrażany w produkcji. Pojęcia Continuous Integration & Continuous Deployment są często związane z terminem DevOps, czyli metodyką wg której programiści nie tylko samodzielnie wdrażają rozwiązania jako administratorzy, lecz wykonują wiele innych zadań dla każdej z tradycyjnych ról w zespole. Na potrzeby stosowania zasad CI/CD zbudowano szereg narzędzi – jednym z nich jest Jenkins. Czytaj dalej „Jenkins – Continuous Integration & Continuous Deployment”
RabbitMQ – wymiana wiadomości w rozproszonym środowisku
Wymiana wiadomości w rozproszonym środowisku, w tym również Big Data, między poszczególnymi komponentami jest realizowana przez dedykowany serwer do wymiany komunikatów taki jak np. RabbitMQ. Z kolei dzięki takim rozwiązaniom jak Docker można w szybki i prosty sposób sprawdzić jak w praktyce wysyłać oraz odbierać wiadomości do / z RabbitMQ. Czytaj dalej „RabbitMQ – wymiana wiadomości w rozproszonym środowisku”
Serwer Redis – szybki start
Serwer Redis przechowujący struktury danych może być używany jako baza danych czy też cache. W Redis można przechowywać nie tylko wartoście tekstowe, lecz również bardziej złożonej struktury jak listy czy zbiory danych. Poniżej przedstawię jak szybko zainstalować serwer Redis w systemie OS X, a także kilka podstawowych poleceń. Więcej informacji można znaleźć w oficjalnej dokumentacji. Czytaj dalej „Serwer Redis – szybki start”
MongoDB – najważniejsze polecenia CRUD
Popularność baz NoSQL w ostatnim czasie wzrosła. Jedną z najbardziej popularnych i coraz częściej stosowanych jest baza MongoDB. Rozpoczynając pracę z każdą z baz NoSQL trzeba nie tylko zmienić sposób myślenia o bazach danych, lecz również nauczyć się innych reguł i zasad formułowania zapytań dla operacji CRUD (ang. create, read, update and delete), czyli tworzenia, odczytywania, aktualizacji i usuwania danych. Poniżej przedstawię kilka najważniejszych poleceń. Więcej o operacjach CRUD można znaleźć w oficjalnej dokumentacji MongoDB. Czytaj dalej „MongoDB – najważniejsze polecenia CRUD”
Twelve-Factor App – 12 zasad rozwoju aplikacji
Współcześnie rozwój aplikacji internetowych czy mobilnych to nie tylko sam proces kodowania, lecz szereg aspektów związanych z programowaniem takich jak zarządzanie kodem źródłowym, testowanie, wdrażanie czy monitorowanie. W ciekawym sposób powyższe zagadnienia zostały opisane w dokumencie Twelve-Factor App, w którym zebrano 12 zasad rozwoju aplikacji. Poniżej krótko opiszę każdy z wymienionych aspektów. Czytaj dalej „Twelve-Factor App – 12 zasad rozwoju aplikacji”
Przykład aplikacji ToDo z użyciem wzorca architektonicznego MV*
Implementowanie aplikacji z użyciem nowoczesnego i sprawdzonego wzorca architektonicznego MVC (ang. model-view-controller), MVP (ang.model-view-presenter) czy MVVM (ang. model-view-viewmodel) umożliwia oddzielenie danych (modelu) od informacji prezentowanych użytkownikowi (widoku) i przeniesienie logiki do dedykowanych obiektów (kontrolerów czy prezenterów w zależności od wybranego wzorca architektonicznego). Dla uproszczenia czasem zamiast rozróżniać poszczególne wzorce używa się skrótu MV*, co zastosuje również w poniższym artykule. Czytaj dalej „Przykład aplikacji ToDo z użyciem wzorca architektonicznego MV*”
MEAN stack – MongoDB, Express, Angularjs Node.js
Nowoczesne aplikacje internetowe budowane w oparciu o sprawdzone technologie coraz częściej wykorzystują tzw. stos MEAN – MongoDB, Express, Angularjs Node.js – zestaw różnych technologi, które łączy jeden język programowania JavaScript (a dokładniej – ECMAScript 🙂 ). Dlaczego warto budować aplikacje w oparciu o stos MEAN ? Do czego służą poszczególne komponenty ? Czytaj dalej „MEAN stack – MongoDB, Express, Angularjs Node.js”
Rozwiązania w chmurze
Cloud computing (chmura obliczeniowa) oraz cloud technologies (rozwiązania w chmurze) są pojęciami coraz częściej używanymi ze względu na szybki rozwój technologii oraz przenoszenie wielu aplikacji z tradycyjnych serwerów do chmury w Internecie. Liczba różnych możliwości oraz rodzajów rozwiązań chmurowych jest jednak ogromna – jakie zatem wybrać? Jakiego rodzaju rozwiązania w chmurze są dostępne ? Czytaj dalej „Rozwiązania w chmurze”