Mikrousługi są dla wielu organizacji wspaniałą alternatywą. Systemy rozproszone złożone ze współpracujących ze sobą mikrousług pozwalają na efektywne i elastyczne dostarczanie oprogramowania, które ściśle odpowiada na wymagania użytkowników. Dodatkową zaletą jest możliwość relatywnie szybkiego wprowadzania modyfikacji w systemie, co ułatwia płynne zaspokajanie zmieniających się potrzeb. Pewnym wyzwaniem dla programistów jednak może być złożoność powodowana przez właściwości a...
Język SQL został stworzony jako narzędzie do przetwarzania danych. Mimo że zwykle jest używany do pracy z bazami danych, jego możliwości są o wiele większe. Poprawny kod SQL ułatwia przetwarzanie potężnych zbiorów danych z dużą szybkością. Szczególnie obiecującą perspektywą jest zastosowanie języka SQL na wielkich zbiorach danych przechowywanych w chmurze. Dzięki nieco bardziej złożonym konstrukcjom SQL analityk danych może z dużą efektywnością wydobywać z nich wiedzę.Ta prak...
Rynek stron internetowych i aplikacji jest nasycony do granic możliwości. Użytkownicy mogą wybierać spośród setek produktów spełniających ich potrzeby. Jak sprawić, żeby wybrali właśnie Twoją witrynę lub aplikację? Jak przebić się na trudnym rynku i odnieść sukces? Na te pytania znajdziesz wiele odpowiedzi, ale najprostsza składa się z dwóch liter - UX! User eXperience, bo tak brzmi pełna nazwa, to pojęcie, które określa wrażenia użytkownika po kontakcie z produktem. Im lepsz...
JavaScript pozwala na tworzenie znakomitego kodu, ale wymaga od programisty sporych umiejętności. Tworzenie nawet bardzo złożonych aplikacji jest jednak łatwiejsze dzięki dostępnym narzędziom. Szczególnym uznaniem cieszy się React - popularna biblioteka open source służąca do tworzenia dynamicznych aplikacji na bazie niewielkich komponentów wielokrotnego użytku. React jest narzędziem, które w stosunkowo prosty sposób pozwala w pełni skorzystać z możliwości nowoczesnych przegl...
SQL jest najważniejszym narzędziem pracy na bazach danych. Profesjonalny twórca aplikacji bazodanowych czy administrator baz danych nie mógłby wykonywać swoich obowiązków bez sumiennego zgłębienia niuansów tego języka. Zdobycie takiej wiedzy kosztuje sporo wysiłku. Niemniej już podstawowa znajomość SQL przynosi wiele korzyści każdemu programiście, twórcy aplikacji internetowych i mobilnych, a nawet nieco bardziej zaawansowanemu użytkownikowi pakietów biurowych. Szczęśliwie si...
C++ należy do najpopularniejszych i najbardziej cenionych za uniwersalność języków oprogramowania - umożliwia projektowanie rozbudowanych, a zarazem intuicyjnych w obsłudze aplikacji wysokiego poziomu. Pozwala tworzyć wydajną i czytelną architekturę oprogramowania również w wypadku znacznie zaawansowanych systemów i programów. Dzięki tej książce poznasz narzędzia i rozwiązania, które ułatwiają projektowanie w języku C++ nawet najbardziej skomplikowanych aplikacji. Autorzy prz...
Dawny Linux był niezawodny w działaniu, ale nie miał efektownego wyglądu i wymagał mozolnej konfiguracji, aby dostosować go do potrzeb użytkowników. Trzeba było znać wiele poleceń, skryptów i plików konfiguracyjnych. Zarządzanie systemem i siecią kosztowało sporo ręcznej pracy. Dzisiejszy Linux jest o wiele łatwiejszy w użytkowaniu. Poszczególne elementy zostały zmienione i usprawnione bez utraty tego, z czego Linux słynął od dawna: niezawodności, wydajności i bezpieczeństwa....
Praca nad niemal każdym projektem informatycznym wymaga współdziałania wielu osób, często pracujących z dala od siebie. W takich warunkach bardzo łatwo popełnić błąd, nadpisać jakiś ważny plik albo przypadkowo zdublować dane. Mały projekt po takiej wpadce da się jeszcze uratować, ale większy… można wyrzucić do kosza. Chyba że od momentu jego inicjalizacji używamy narzędzia odpowiedzialnego za właściwą synchronizację danych, czyli systemu kontroli wersji, co jest standardem we...
Czy kiedykolwiek zastanawiałeś się nad tym, dlaczego na świecie istnieje aż tyle języków programowania i czym różnią się one od siebie? I których z tych języków warto się nauczyć? Na pewno co najmniej kilku, ale na Twojej krótkiej liście nie może zabraknąć Pythona! Ten język ma dwie potężne zalety: po pierwsze, jest znacznie łatwiejszy w nauce i bardziej intuicyjny niż choćby C czy C++, a po drugie, umożliwia tworzenie skryptów, czyli funkcjonalnych programów, przydających si...
Pod intrygująco brzmiącą nazwą micro:bit kryje się niewielkich rozmiarów płytka będąca mikrokontrolerem ― czy inaczej: mikrokomputerem. Sercem wielu urządzeń, takich jak różne roboty i inteligentne modele samochodów. Micro:bit stanowi punkt wyjścia dla ich konstrukcji i jest urządzeniem niezwykle często pojawiającym się przy okazji rozmaitych projektów związanych z nauką programowania ― korzystają z niego nauczyciele i uczniowie na całym świecie. Mikrokontroler micro:bit pozw...
Większość poważnych organizacji docenia wartości płynące z danych. Doświadczeni analitycy potrafią nie tylko wyciągać z ich zbioru informacje niezbędne do podejmowania decyzji biznesowych, ale także zastosować odpowiednie style wizualizacji danych i tworzyć przekonujące narracje cyfrowe. Przy tym wszystkim konieczne jest pełne wdrożenie zasad bezpieczeństwa danych. Niezastąpionym narzędziem dla specjalisty BI może być pakiet samoobsługowych narzędzi analitycznych Microsoft Po...
Cyfrowe konflikty stały się codziennością. Organizacja, która chce przetrwać w tym wrogim świecie, nie może szczędzić sił ani środków na cyberbezpieczeństwo. Napastnicy prowadzą wyrafinowane ataki z rosnącą skutecznością. Nawet jeśli Twój system komputerowy jest dobrze zabezpieczony, a procedury cyberbezpieczeństwa zostały wdrożone i są stosowane, musisz się przygotować do ataku. Innymi słowy: musisz dobrze wiedzieć, co robić, kiedy prawdziwi hakerzy wtargną do Twojego system...
Spośród wielu koncepcji tworzenia oprogramowania na szczególną uwagę zasługuje model programowania sterowanego testami, znany jako TDD. Technika ta opiera się na integracji procesów projektowania aplikacji i pisania kodu z prowadzeniem testów. Mimo że taki sposób pracy wydaje się dość wymagający dla zespołów deweloperów, łatwo się przekonać, że TDD pozwala na stałe uzyskiwanie dobrych efektów, a opracowane tą metodą aplikacje zaskakują stabilnością i przewidywalnością w środo...
Rozbudowane projekty wymagają zaangażowania zespołu programistów. By ich współpraca była efektywna, niezbędny jest system kontroli wersji, taki jak Git. Umożliwia on tworzenie historii projektu, zarządzanie jego wersjami, przeglądanie wszystkich zmian, a także przywracanie pliku do dowolnej wcześniejszej wersji. Repozytoria Gita można przechowywać w GitHubie - w ten sposób bez ponoszenia dodatkowych opłat udostępnia się kod innym osobom. Korzystanie z Gita i GitHuba nie jest ...
Bez znajomości algorytmów nie można się nauczyć programowania. Algorytmy są też przydatne w pracy naukowców i inżynierów. Właściwie każdy z nas codziennie z nich korzysta: gotując, wypełniając urzędowe formularze czy przeprowadzając mniej lub bardziej złożone procedury. Co więcej, ludzki organizm również wykonuje skomplikowane działania bez udziału świadomości, ale zgodnie z ukrytymi algorytmami. Łatwo się przekonać, że dzięki umiejętności zastosowania odpowiedniego algorytmu...
Kubernetes zmienił podejście do budowy i wdrażania oprogramowania korporacyjnego. Przedsiębiorstwa szybko zrozumiały, że dzięki tej potężnej technologii mogą korzystać z zalet wysoce dostępnych, samonaprawiających się i autoskalujących wdrożeń oprogramowania. Systemy są zdolne do automatycznego zapewniania pożądanych reakcji na podstawie zadanych warunków, a przy tym są szybsze i bardziej niezawodne od jakichkolwiek operacji wykonywanych ręcznie. Jednak ceną za ten postęp jes...
Z internetu korzystamy codziennie do różnych celów. Odnajdujemy potrzebne informacje, używamy go do pracy, nauki, rozrywki i kontaktów z innymi. Musimy też unikać zagrożeń i przestrzegać zasad cyberbezpieczeństwa. Ale czy na pewno wiesz, jak działa internet, kto nim zarządza, kto go cenzuruje i w jaki sposób przepływają w nim informacje? Nawet jeśli nie lubisz zagadnień technicznych i nie wiesz dokładnie, czym są algorytmy, wiedza o tych podstawach jest dla Ciebie wyjątkowo w...
Technologia druku 3D, zwanego również drukiem przestrzennym, jest uważana za jedną z najbardziej perspektywicznych. Polega na addytywnym wytwarzaniu trójwymiarowych obiektów na podstawie cyfrowego modelu. Może służyć do budowania prototypów albo gotowych produktów. Zakres komercyjnego stosowania druku 3D z każdym rokiem jest coraz szerszy. Zainteresowanie tą technologią stale rośnie, a drukarki 3D są dziś dostępne również dla pasjonatów.Oto inspirujący, przystępny i praktyczn...
Sieci komputerowe oplatają świat dosłownie i w przenośni. Stanowią krwiobieg współczesnych systemów informatycznych, zapewniając dostęp do internetu nawet w najdalszych zakątkach globu i dostarczając miliardom ludzi najrozmaitszych informacji i usług cyfrowych. Oczywiście sieci nie utrzymują się same. Odpowiadają za to wykwalifikowani specjaliści ― administratorzy sieci ― którzy od lat mogą przebierać w atrakcyjnych ofertach zatrudnienia i bez wątpienia także w przyszłości bę...
Go pojawił się w 2009 roku, służy do tworzenia usług internetowych. Pozwala na łatwe pisanie wydajnych aplikacji. Zdobył popularność, jednak wielu programistów nie wykorzystuje w pełni jego możliwości. Dotyczy to zwłaszcza osób, które przy pisaniu kodu Go korzystają z konstrukcji właściwych dla innych języków. Nie jest to właściwa metoda programowania. Aby tworzyć przejrzysty, prawidłowy kod w Go, należy do niego podejść w sposób idiomatyczny.Ten praktyczny przewodnik jest pr...
Inflacja, sterowane kryzysy gospodarcze, pękające bańki, afery związane z udzielaniem kredytów i zadłużaniem się — to tylko kilka problemów, których doświadczamy w efekcie scentralizowanej bankowości powiązanej z polityką. Z drugiej strony bitcoin i łańcuch bloków kojarzą się z mrocznym półświatkiem i łatwymi pieniędzmi, przez co rozbudzają ludzkie lęki i chciwość. Jeśli jednak odsunie się na bok wątki sensacyjne, łatwo zauważyć, że zdecentralizowana cyfrowa waluta ma potencj...
Wraz z rozwojem internetu rzeczy, a także upowszechnianiem się elektronicznego sterowania i kontrolowania różnych procesów przestępcy doskonalą techniki łamania zabezpieczeń systemów wbudowanych. Konsekwencje skutecznego ataku na jakiś kluczowy element infrastruktury mogą się okazać dotkliwe i niezwykle kosztowne. Oznacza to, że testowanie pod kątem bezpieczeństwa powinno dotyczyć sprzętu i systemów wbudowanych. Również elektronicy powinni umieć chronić przed atakami swoje ur...
Analiza danych sprawia, że dzięki ich dużym i mniejszym kolekcjom uzyskujemy wartościową wiedzę, która pozwala na podejmowanie najlepszych decyzji. Dzieje się to poprzez odkrywanie wzorców lub trendów. Obecnie Python udostępnia przeznaczone specjalnie do tego celu narzędzia i biblioteki. Możemy więc łatwo korzystać z wyrafinowanych technik wydobywania wiedzy z danych. Aby jednak osiągnąć zamierzone efekty, trzeba dobrze poznać zarówno metodologię analizy danych, jak i zasady ...
Python jest wieloparadygmatowym, wszechstronnym językiem programowania, zoptymalizowanym pod kątem efektywności pracy, czytelności kodu i jakości oprogramowania. Jego popularność rośnie, co wynika z wielości i różnorodności zastosowań oraz z tego, że jest darmowy i łatwo przenośny, można się go szybko nauczyć, a tworzenie kodu Pythona sprawia sporo przyjemności. Wszystkie te cechy dają zespołom deweloperskim strategiczną przewagę w dużych i małych projektach. Aby wykorzystać ...
Kategoria „Internet, komputery, informatyka” zawiera publikacje skupiające się na wszystkich zagadnieniach związanych z siecią, komputerami, programami komputerowymi czy oprogramowaniem. Książki z tej kategorii poświęcone są w głównej mierze programowaniu – znajdują się tu m.in. podręcznik „Wstęp do informatyki” Jacka Lembasa i Rafała Kawy przeznaczony dla studentów pierwszego roku kierunków informatycznych, poradnik „Sztuka dobrego programowania” Krzysztofa Jassego i Andrzeja Ziemkiewicza, w którym dobre rady znajdą zarówno początkujący, jak i zaawansowani programiści, poradnik „Java. Uniwersalne techniki programowania” pod redakcją naukową Krzysztofa Barteczki dotyczący programowania w języku Java, podręcznik „HTML. Tworzenie stron www i programów desktopowych” Rafała Strychalskiego (podzielony na 3 części: dla początkujących, średniozaawansowanych i zaawansowanych). Znajdują się tu także poradniki z innych dziedzin, jak np. e-commerce („Narzędzia Google dla e-commerce” Krzysztofa Marca), marketingu internetowego („AdWords i Analytics” Krzysztofa Marca i Tomasza Trzósły), praktyk zwinnych („W poszukiwaniu zwinności w architekturze systemów IT” Krzysztofa Bończaka”), rzeczywistości wirtualnej („Rzeczywistość wirtualna (VR) dla każdego – Aframe i HTML 5” Krzysztofa Wońka). Nie brakuje również pozycji dla dzieci, które już od małego chcą rozpocząć swoją przygodę z programowaniem w Scratchu, Pythonie czy Javie („Bawimy się, programując w Scratchu” i „Twórz własne gry komputerowe w Pythonie” Ala Sweigarta, „JavaScript dla dzieci. Programowanie na wesoło” Nicka Morgana), grafiką komputerową („Piksele, wektory i inne stwory” Alicji Żarowskiej-Mazur i Dawida Mazura), produkcją filmową („Zostań gwiazdą YouTube'a” Nicka Willoughby’ego).