Platforma Amazon Web Services jest uważana za największą i najdojrzalszą chmurę obliczeniową. Oferuje ponad setkę gotowych usług, praktycznie niewyczerpywalne zasoby mocy obliczeniowej, nieograniczone bezpieczne magazynowanie oraz pierwszorzędne możliwości automatyzacji. Jest przy tym nieustannie unowocześniana i udostępnia coraz to nowsze możliwości. Pozwala na tworzenie i utrzymanie aplikacji w elastyczny i niezawodny sposób. Dla wielu organizacji decyzja o migracji infrast...
Mimo że w 2018 roku Kubernetes zyskał reputację standardowego narzędzia do zarządzania kontenerami, wciąż należy traktować tę technologię jako znajdującą się w dość wczesnej fazie rozwoju. Możliwości tej platformy z czasem rosną i stają się coraz ciekawsze. Standardowym działaniem jest uruchamianie klastrów w Kubernetesie, jednak o wiele bardziej interesujące wydaje się samodzielne rozszerzanie tej platformy o własne kontrolery i rozbudowa API Kubernetesa w celu dostosowania ...
Kubernetes jest platformą do orkiestracji kontenerów. Projekt ten należy dziś do najpopularniejszych i najbogatszych narzędzi w swojej klasie, stanowi także podstawę dla wielu innych platform, znanych jako systemy typu PaaS. Dzięki nim Kubernetes zyskał możliwość tworzenia aplikacji, jednak tego rodzaju narzędzia wymagają od programistów i architektów zastosowania odpowiednich wzorców projektowych. Opisują one schematy rozwiązywania problemów na różnych poziomach dokładności,...
Język Go, zwany także golangiem, został opracowany w firmie Google i zaprezentowany światu w 2009 roku. Zaprojektowano go pod kątem wydajności przetwarzania sieciowego i wieloprocesorowego. Autorzy chcieli, aby łączył łatwość pisania aplikacji z wydajnością języków kompilowanych. Podobnie jak JavaScript czy Python, Go jest językiem, który można szybko zrozumieć, a dzięki temu bezzwłocznie zacząć tworzyć funkcjonalny kod. Niemniej, aby zyskać uznanie potencjalnego pracodawcy i...
Rosnące możliwości różnych form sztucznej inteligencji niepokoją ludzi od kilkudziesięciu lat. Stopniowo uzależniamy się od ciągłej asysty nowoczesnych technologii, jednak coraz doskonalsze metody uczenia maszynowego, dostępna i potężna moc obliczeniowa korzystająca z niewyobrażalnie wielkich zasobów danych każą zadawać sobie pytania: do czego doprowadzi ten szalony rozwój techniki? Jak będzie wyglądało społeczeństwo przyszłości? Czy ludzie wyginą? Czy grozi nam zniewolenie z...
JavaScript to bardzo popularny język programowania, który z rozwiązania stosowanego niegdyś głównie do wykonywania prostych akcji na stronach internetowych ewoluował do postaci pełnoprawnego narzędzia, które z powodzeniem można wykorzystywać w rozmaitych sytuacjach i na wielu różnych platformach do tworzenia całkiem zaawansowanych aplikacji. Uznanie użytkowników zapewniła JavaScriptowi jego prostota, doskonała dokumentacja oraz duże i stale powiększające się możliwości.Jeśli ...
Spójrzmy prawdzie w oczy: większość ludzi nie lubi matematyki. Co dziwne, nie jest ona również ulubioną dziedziną wiedzy wielu osób zawodowo parających się informatyką. Niejedną z nich w prawdziwy popłoch wpędza konieczność posłużenia się choćby najbardziej niewinnie wyglądającą funkcją matematyczną, nie wspominając o przeprowadzeniu bardziej skomplikowanych obliczeń statystycznych, wykreśleniu przebiegu funkcji czy implementowaniu działań na macierzach.Niepotrzebnie, bo mate...
Mimo upływu lat Java wciąż pozostaje jednym z najważniejszych języków programowania, konsekwentnie wybieranym przez profesjonalnych deweloperów. Jest równocześnie nowoczesna i dojrzała. Twórcy Javy od początku jej istnienia stawiali na elastyczność i stale dostosowywali ten język do zmieniających się warunków pracy programistów. Od pierwszego wydania Java zapewnia narzędzia do programowania rozwiązań internetowych, jest więc naturalnym wyborem programistów tworzących aplikacj...
Wzorce projektowe są bardzo przydatnym narzędziem w przyborniku programisty. Pozwalają na szybkie opracowanie złożonych zagadnień, ale można je również potraktować jako wstęp do ciekawego i inspirującego dochodzenia, jak rozwiązać konkretny problem na wiele różnych sposobów, na różnych poziomach zaawansowania technicznego i z zastosowaniem różnego rodzaju kompromisów. Takie próby jednak często prowadzą do nadinżynierii lub powstawania zbyt skomplikowanych struktur i mechanizm...
PHP to interpretowany skryptowy język programowania zaprojektowany do generowania stron internetowych i budowania aplikacji webowych w czasie rzeczywistym; obecnie wykorzystywany przez niemal 80 procent stron działających w sieci. Jego zalety zostały docenione przez takie firmy jak Google, Facebook, Yahoo! czy Wikipedia, a więc przez prawdziwe giganty internetu, z których usług korzystają codziennie miliony użytkowników. O popularności PHP świadczy również liczba interesujący...
JavaScript jest dziś jednym z ulubionych języków programowania projektantów profesjonalnych aplikacji internetowych. Deweloperzy mogą korzystać z kilku znakomitych technologii do tworzenia front-endu i back-endu aplikacji. Największy potencjał mają Node.js, MongoDB, Backbone.js, Parse.com, Heroku i MS Azure. Są wciąż unowocześniane, a każda kolejna wersja dostarcza innowacyjnych rozwiązań. Mimo to wyszukiwanie informacji potrzebnych programiście w danej chwili bywa problemem:...
Laravel to wydajny, nowoczesny i dostępny za darmo framework do tworzenia aplikacji internetowych, napisany w języku PHP i bazujący na wzorcu architektonicznym Model-View-Controller. Zalety tego rozwiązania ceni coraz większa rzesza programistów tworzących różne aplikacje webowe. Swoją popularność framework zawdzięcza stałemu rozwojowi, spójnemu i przystępnemu kodowi, świetnej dokumentacji oraz aktywnej społeczności, zapewniającej wsparcie również mniej doświadczonym programi...
Język Swift poznaliśmy w 2014 roku. Został on opracowany przez Apple specjalnie dla platormy iOS z uwzględnieniem takich założeń, jak przejrzystość, bezpieczeństwo, prostota, łatwość stosowania, zorientowanie obiektowe. Kod w tym języku sam zarządza pamięcią i zapewnia ścisłą kontrolę typów. Swift od początku wzbudził ogromne zainteresowanie programistów, którzy prędko docenili jego zalety. Dziś jest uważany za łatwe do opanowania i bardzo wygodne narzędzie dla profesjonalist...
Skuteczność w innowacyjności jest dziś warunkiem sukcesu w biznesie. Wygra ta firma, która sprawniej i elastyczniej zareaguje na napływające informacje zwrotne, zgrabniej wybierze najlepsze pomysły i trafniej odpowie na wymagania klienta, by dostarczyć mu najbardziej odpowiednich wrażeń. Menedżer produktu odgrywa wyjątkowo niewdzięczną rolę w tym procesie: musi nieustannie doskonalić przyjęte strategie i wciąż dążyć do najlepszego wykorzystania pojawiających się możliwości. W...
Język Python obecny jest na rynku od ponad 20 lat. Opracowany został na początku lat dziewięćdziesiątych XX wieku i błyskawicznie zaczął zdobywać uznanie programistów na całym świecie. Python sprawdza się doskonale w pisaniu skryptów oraz narzędzi, a w dużym projekcie także nie zawiedzie oczekiwań. Język ten korzysta z automatycznego zarządzania pamięcią oraz umożliwia obiektowe i funkcyjne podejście do tworzonego programu. Jednym z jego najważniejszych atutów jest bardzo sil...
Arduino od wielu lat cieszy się niesłabnącą popularnością wśród miłośników elektroniki, robotyki i tych, którzy lubią w domowym zaciszu zbudować sobie własny gadżet. Arduino może komunikować się z komputerem, posiada także porty służące do podłączania zewnętrznych elementów elektronicznych, takich jak silniki, przekaźniki, fotodiody, diody laserowe, głośniki, mikrofony itp. Oprogramowanie służące do programowania Arduino jest dostępne za darmo. To wszystko sprawia, że platfor...
Aby aplikacje mogły spełniać oczekiwania dotyczące wydajności i szybkości działania, programista musi orientować się w typowych problemach z wykonywaniem kodu i wiedzieć, które techniki sprawdzą się w danej sytuacji. W tym celu powinien biegle posługiwać się algorytmami i strukturami danych. Wiedza ta umożliwia rozpoznawanie typowych zagrożeń i wybór najlepszych rozwiązań. Warto pamiętać, że w przypadku większości codziennych problemów z kodem istnieją już wypróbowane rozwiąz...
Fale radiowe, światłowody, kable - sieci oplatają świat. Dziś komputer bez połączenia z Internetem stanowi właściwie tylko kosztowny kawałek elektronicznego złomu. To właśnie sieć sprawia, że otaczające nas zewsząd urządzenia cyfrowe zapewniają dostęp do interesujących treści, umożliwiają korzystanie z map, pozwalają monitorować otoczenie, słuchać strumieniowanej muzyki i oglądać filmy - słowem, dają nam wszystkie te możliwości, które kojarzymy z rewolucją informacyjną.Książk...
Ruby to nowoczesny, wieloparadygmatowy, interpretowany język programowania. Wraz z platformą Rails stanowi jedno z najpopularniejszych rozwiązań służących do szybkiego tworzenia aplikacji sieciowych; wspiera wiele znanych serwisów dostępnych w internecie. Ruby on Rails od lat utrzymuje się w ścisłej czołówce platform klasy MVC - dzięki rozbudowanym funkcjom, wysokiej wydajności oraz łatwości pisania kodu, a także możliwości stosowania dużej liczby rozszerzeń.Jeśli chcesz się ...
JavaScript jest jednym z najpopularniejszych języków programowania, wykorzystywanym na wiele sposobów. Pozwala na wdrażanie różnych paradygmatów w zależności od potrzeb i preferencji programisty. Warto wypróbować programowanie modularne w JavaScripcie choćby dlatego, że dzięki temu kod staje się czytelny, łatwy w utrzymaniu i skalowaniu. Moduł grupuje funkcjonalnie związane ze sobą dane oraz procedury. Architektura modularna, o ile tylko została poprawnie zaimplementowana, po...
W codziennej praktyce programiści często muszą sobie radzić z coraz większą złożonością tworzonego kodu. Mnożą się błędy, a ryzyko spektakularnej porażki rośnie. Jeśli ten scenariusz dotyczy także Ciebie, poziom złożoności Twoich projektów Cię przytłacza i czujesz, że nie dajesz rady, już teraz wdróż fundamentalne reguły, dzięki którym Twój kod odzyska prostotę i niezawodność! Jeśli każdy dzień z nowym projektem Cię rozczarowuje i przestałeś wierzyć w swoje możliwości, sięgni...
C++ jest dojrzałym językiem programowania, od wielu lat wykorzystywanym przez profesjonalnych programistów do wielu różnych zastosowań, włączając w to pisanie gier, programowanie GUI czy tworzenie złożonych aplikacji użytkowych. Zaprojektowano go pod kątem maksymalizowania wydajności, jest więc najczęściej wybieranym językiem w sytuacjach, w których najważniejsza jest efektywność działania kodu. Aby jednak wykorzystać te zalety C++, trzeba nauczyć się nim posługiwać. A biegło...
W skrócie uczenie maszynowe polega na wyodrębnianiu informacji z surowych danych i budowie modelu, który służy do przetwarzania kolejnych surowych danych. Technologia ta od kilku lat intensywnie się rozwija, a w miarę wzrostu jej możliwości rosną również zainteresowanie i oczekiwania architektów i użytkowników. Niektórzy widzą w głębokim uczeniu poważne zagrożenie, jednak obietnice, jakie daje ten rodzaj sztucznej inteligencji, są fascynujące. Narzędzia służące do programowan...
C# jest uważany za flagowy projekt firmy Microsoft. Język ten charakteryzuje się niezwykłą elastycznością i wszechstronnością. Udostępnia wysokopoziomowe abstrakcje, takie jak wyrażenia, zapytania i kontynuacje asynchroniczne, ale też pozwala na korzystanie z mechanizmów niskopoziomowych. W efekcie dzięki takim konstrukcjom, jak własne typy wartościowe programisty czy opcjonalne wskaźniki, można znacząco zwiększyć wydajność aplikacji. Wersja 7.0 jest kolejną poważną aktualiza...