Wiedza o algorytmach jest niezbędna przy rozwiązywaniu problemów programistycznych i prowadzeniu złożonych obliczeń. Każdy programista powinien dobrze znać algorytmy, musi też umieć je zaprojektować, modyfikować i stosować. Niezależnie od tego, czy zajmujesz się uczeniem maszynowym, kwestiami bezpieczeństwa, czy inżynierią danych, rzetelne zrozumienie algorytmów jest Ci bardzo potrzebne. Dzięki tej książce nauczysz się stosować algorytmy w praktycznych sytuacja...
Selenium pozwala na automatyzację pracy przeglądarek internetowych. Kluczowym komponentem tego projektu open source jest Selenium WebDriver - biblioteka do programistycznego kontrolowania przeglądarek. Podstawowym zastosowaniem Selenium jest implementacja testów systemowych w celu weryfikacji funkcjonowania aplikacji. Narzędzie to zdobyło ogromną popularność - stanowi ono jedno z wiodących rozwiązań w zakresie testów systemowych. Jest chętnie używane zaró...
W ostatnich latach zdecydowanie wzrosła popularność frameworka React, pozwalającego w pełni skorzystać z możliwości nowoczesnych przeglądarek i urządzeń mobilnych. Nowym narzędziem służącym do testowania obiektowego modelu dokumentu (DOM) jest React Testing Library. Zostało ono zaprojektowane tak, aby ułatwiać projektantom pracę zgodną z podejściem test-driven development (TDD). Jest to bardzo cenna właściwość, gdyż prawidłowo napisane komponenty testowe znacznie obniżają ryz...
Zmiana nawyków czy modyfikacja zachowania bywa bardzo istotną kwestią. Często chodzi o coś więcej niż o proste przestawienie się z produktu na produkt - stawką może być zdrowie albo bezpieczeństwo. Jest sporo produktów cyfrowych, które mają za zadanie ułatwić użytkownikom wprowadzanie takich ważnych zmian: celem może być na przykład regularna aktywność fizyczna czy racjonalne zarządzanie swoim budżetem. Użyteczność tych produktów bywa jednak niewie...
Wiedza o algorytmach jest niezbędna każdemu, kto rozwiązuje problemy programistyczne. Algorytmy są również ważne w teorii i praktyce obliczeń. Każdy programista powinien znać możliwie szeroki ich zakres. Powinien też umieć z nich korzystać przy rozwiązywaniu rzeczywistych problemów, w tym przy projektowaniu algorytmów, ich modyfikacji i implementacji. Niezależnie od tego, czy zajmujesz się sztuczną inteligencją, zabezpieczaniem systemów informatycz...
W miarę rozwoju systemu rośnie jego złożoność. Skomplikowane systemy uważa się za trudniejsze w zarządzaniu i bardziej podatne na awarie. Nie można uniknąć złożoności systemu w czasach błyskawicznego rozwoju mikrousług i technologii rozproszonych, ale można nad nią zapanować. Odpowiednio zaplanowane testy i eksperymenty pozwalają wykryć podatności i zapobiec wystąpieniu problemów, zanim zaczną utrudniać realizację celów biznesowych firmy. Relatywnie nowym, lecz ...
Każdy inżynier oprogramowania zna teoretyczne podstawy testowania. O tym, że sumienne przeprowadzenie testów ma podstawowe znaczenie dla jakości gotowego produktu, nie trzeba nikogo przekonywać. A jednak wciąż zbyt często okazuje się, że zaplanowanie, napisanie i przeprowadzenie testów jednostkowych w praktyce nie jest łatwym zadaniem. Co gorsza, niewłaściwe testy psują kod, mnożą błędy i zabierają mnóstwo cennego czasu i pieniędzy. Okazuje się, że dla uz...
Przedsiębiorstwa z branży technologicznej ciągle mierzą się z silną konkurencją. Nietrudno zrozumieć, co stanowi o przewadze firmy niezależnie od branży czy wielkości. Wygrywanie wymaga utrzymywania przewagi konkurencyjnej, jaką jest zdolność określania, wdrażania i osiągania poziomów wydajności nieosiągalnych dla konkurencji. Najczęściej przewaga konkurencyjna ma dwa źródła. Pierwszym jest dostarczanie funkcjonalnych rozwiązań, które dają radość użytkown...
Na początku, w 1989 roku, był tylko wakacyjnym projektem Guida van Rossuma. Dziś jest potężnym językiem programowania o niesamowitej wszechstronności: można się nim posłużyć do napisania skryptu ułatwiającego prace administratora sieci, stworzenia aplikacji internetowej, a także opracowania systemu głębokiego uczenia maszynowego. Co więcej, dookoła Pythona skupiła się międzynarodowa społeczność tworząca niesamowite biblioteki i frameworki, co przenosi programowanie w Pythonie...