W ostatnich latach byliśmy świadkami ogromnego postępu technik sztucznej inteligencji, uczenia maszynowego oraz uczenia głębokiego. Konsekwencje tego błyskawicznego rozwoju są odczuwalne w niemal każdej dziedzinie. Wydaje się, że to jedna z tych technologii, które powinny być dostępne dla jak najszerszej grupy ludzi. Dopiero wtedy uczenie głębokie wykorzysta w pełni swój potencjał i stanie się prawdziwym impulsem rozwoju naszej cywilizacji. Co prawda na pierwszy...
Algorytmy i struktury danych - szybko, łatwo, skutecznie! Poznaj najważniejsze algorytmy i techniki programistyczne Naucz się skutecznie wykorzystywać typy i struktury danych Dowiedz się, jak w praktyce zastosować zdobytą wiedzę Algorytmika to dziedzina, która w ciągu ostatnich kilkudziesięciu lat dostarczyła wielu efektywnych narzędzi wspomagających rozwiązywanie różnorodnych zagadnień za pomocą komputera. Dla niektórych stanowi swego rodzaju ksią...
Zostań ekspertem od anonimizacji wrażliwych danych! Czym są dane poufne? Jak je zabezpieczyć przed wyciekiem? Jak maskować dane i pozostać anonimowym w sieci? Współczesny świat produkuje ogromne ilości danych, z których duża część to dane wrażliwe. Wyciek takich danych poza przechowujące je przedsiębiorstwo czy instytucję może nie tylko narażać na szwank reputację organizacji, lecz również nieść za sobą ryzyko konkretnych strat finansowych i poważn...
Opanuj Bootstrapa, żeby tworzyć zindywidualizowane i responsywne aplikacje webowe! Bootstrap jest coraz popularniejszym frameworkiem CSS i JavaScriptu, służącym do szybkiego i bezproblemowego tworzenia responsywnych interfejsów WWW. W sierpniu 2011 roku został zaprezentowany światu w jako projekt open source, a dzisiaj jest marką powszechnie znaną wśród projektantów front-endów aplikacji. Bootstrap jest prosty w użyciu, kompatybilny z różny...
C++ to dojrzały język programowania o wielu różnych zastosowaniach. Inżynier oprogramowania, który chce w pełni skorzystać z jego zalet, powinien płynnie posługiwać się dostępnymi w tym języku strukturami danych i algorytmami. W ten sposób łatwiej można rozwiązywać konkretne problemy. Zastosowanie odpowiedniej struktury danych oraz algorytmu jest również ważne z punktu widzenia wydajności działania kodu, co bezpośrednio przekłada się na szybkość pr...
Przewodnik po kodowaniu i myśleniu komputacyjnym Programista to bardzo szczególny typ specjalisty. Jeśli uważasz, że myśli w inny sposób niż tak zwani normalni ludzie, to masz rację. Dobra wiadomość jest taka, że i Ty możesz się nauczyć myślenia komputacyjnego - umiejętności, która się przydaje niezależnie od charakteru rozwiązywanego problemu, środowiska czy języka programowania. Tylko w ten sposób można od początku nauki programowania pisać prze...
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...
Poznaj Ruby on Rails od praktycznej strony! Odkryj język Ruby i platformę Rails Naucz się testować i uruchamiać swój kod Poznaj zalety mikrousług i konteneryzacji 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 ści...
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...
Zgodnie z paradygmatem programowania funkcyjnego największy nacisk należy kłaść na stałe i funkcje. Polega to na konstruowaniu funkcji oraz na obliczaniu wartości wyrażeń. W ten sposób otrzymuje się kod odporny na błędy. Python nie jest w pełni funkcyjnym językiem programowania, jednak pozwala na taki sposób pisania programów. Dzięki temu umożliwia tworzenie zwięzłego i eleganckiego kodu. Na przykład stosowanie wyrażeń generatorowych w Pythonie sprawia, ż...
Python jest językiem, którego można się nauczyć stosunkowo łatwo - a potem dość szybko przejść do praktyki. To duża zaleta: nic tak nie motywuje do dalszej pracy, jak pierwsze sukcesy na wczesnym etapie. Niemniej wielu nawet dość doświadczonych programistów Pythona nie wykorzystuje najlepszych cech tego języka. Ich aplikacje mogłyby być bardziej niezawodne, a kod - czystszy. Co gorsza, wiele ze znakomitych narzędzi i technologii powiązanych z Pythonem nie przebi...
Python jest wszechstronnym językiem programowania o imponującej elastyczności i wydajności. Można dzięki niemu rozwiązywać przeróżne problemy programistyczne z różnych dziedzin wiedzy. Nawet jeśli nie masz zamiaru stać się pełnoetatowym programistą, prędko się zorientujesz, jak świetnym i elastycznym narzędziem jest Python. Można za jego pomocą budować oprogramowanie, ale również wspierać pracę statystyków, ekonomistów, maklerów giełd...
Aplikacje internetowe, które dobrze działają i ładnie wyglądają wyłącznie na ekranach komputerów osobistych, już jakiś czas temu zostały uznane za przestarzałe. Przejrzysty blog, piękna strona z portfolio czy ciekawy profil z galerią zdjęć w portalu społecznościowym muszą doskonale wyglądać na urządzeniach z ekranami o rozmaitych rozmiarach i proporcjach oraz różnej rozdzielczości. Wzrost liczby urządzeń wyposażanych w przeglądarki jest jednym z sygnał&oa...
Mimo że nowe wydania dystrybucji Linuksa są coraz łatwiejsze w obsłudze, a ważniejsze czynności administracyjne mogą być wykonywane za pomocą intuicyjnego interfejsu graficznego, wciąż nie można się obejść bez powłoki Bourne'a, znanej jako bash. Dobrze napisany skrypt powłoki pozwala na automatyzację nudnych obowiązków, umożliwia monitorowanie stanu systemu, optymalizację jego wydajności czy dostosowanie go do potrzeb. Warto też wypróbować ciekawą alternatyw...
C# jest nowoczesnym, lubianym i popularnym wśród programistów językiem ogólnego zastosowania. Jego sztandarową zaletą jest wszechstronność i elastyczność: może posłużyć do tworzenia serwisów internetowych, aplikacji biznesowych oraz gier. Oprogramowanie zbudowane w C# będzie poprawnie działać na tradycyjnych komputerach, serwerach, urządzeniach mobilnych, a także na specjalnych urządzeniach do gier. Tworzenie kodu C# w środowisku Visual Studio jest...
Spring jest frameworkiem ułatwiającym tworzenie nowoczesnych aplikacji w Javie. To narzędzie, które dynamicznie się rozwija i z każdym nowym wydaniem zapewnia programistom kolejne, ekscytujące możliwości. Piąta wersja Springa okazała się krokiem milowym. Obecnie projektanci mogą tworzyć mikrousługi, korzystać z funkcji programowania reaktywnego i doskonalić budowanie aplikacji zgodnie z modelem MVC. Dzięki pełnej integracji Springa ze Spring Boot nawet najbardziej złoż...
Nie rozumiesz języka branży IT? Sięgnij po tę książkę!_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Opanuj słownik informatyków_x005F_x000D_ Poznaj cykl życia oprogramowania_x005F_x000D_ Naucz się komunikacji z branżą IT_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Kto choć raz miał do czynienia z informatykami, wie, że rozmowy z nimi często przypominają kontakty z przybyszami z innej galaktyki. Posługują się specjalistycznym żargonem, są mocno skupieni na aspektach technic...
Zapomniałeś? Sięgnij po ściągę!_x005F_x000D_ _x005F_x000D_ React to zdobywająca coraz większą popularność biblioteka do budowania graficznych interfejsów użytkownika serwisów internetowych. Dzięki deklaratywności, modułowości i niezależności od jakiejkolwiek platformy stała się jedną z wiodących technologii w branży, a budowane za jej pomocą interfejsy są przejrzyste, elastyczne oraz łatwe do utworzenia i utrzymania._x005F_x000D_ _x005F_x000D_ Tablice informatyc...
Programowalna i zautomatyzowana sieć upraszcza pracę jej administratora. Rozwój technologii radykalnie komplikuje takie zadania jak zarządzanie i operowanie sprzętem sieciowym, topologiami sieci i połączeniami sieciowymi. Trzeba tu mieć na uwadze systemy operacyjne, nowe metodologie oraz narzędzia. W takich warunkach zarządzanie większą czy nieco bardziej złożoną siecią wyłącznie za pomocą działań manualnych jest obarczone sporym ryzykiem. Profesjonalny inżynier siecio...
Od profesjonalnych systemów informatycznych wymaga się wysokiej dostępności usług, łatwego wprowadzania niezbędnych zmian, skalowalności i możliwości przetworzenia ogromnej ilości danych. Java EE 8 znakomicie nadaje się do tworzenia aplikacji spełniających te wyśrubowane kryteria. Poza tym Java to język wieloplatformowy, jej kod jest otwarty, została dobrze przetestowana, a doświadczenie i wsparcie społeczności użytkowników okazują się nie do przecenienia. Wszec...
Opanuj Javę jak prawdziwy profesjonalista! Podstawy algorytmiki dla praktyków Modelowanie struktur danych w Javie Skuteczne techniki programowania na przykładach Java jest obecnie jednym z najpopularniejszych języków programowania, co zawdzięcza przede wszystkim swojej prostocie, nowoczesności, dużym możliwościom oraz niezależności od architektury platform sprzętowych i systemowych, na których mają pracować napisane w tym języku programy. Java znal...
W ostatnich latach CSS bardzo się rozwinął. Mimo że istnieje od kilku dekad, wciąż jest ważnym elementem warsztatu profesjonalnych projektantów stron internetowych. Co prawda przyswojenie podstaw CSS nie jest specjalnie trudne, ale osiągnięcie prawdziwej biegłości w korzystaniu z tego języka wymaga stałego uczenia się i ciągłych ćwiczeń. Trzeba dobrze zrozumieć wszystkie części kodu CSS, a także sposób, w jaki są do siebie dopasowane. Wysiłek włożony w doskonałe...
Django jest frameworkiem do budowy profesjonalnych aplikacji sieciowych w języku Python. Cieszy się zasłużoną opinią potężnego narzędzia, którego można się szybko nauczyć. Spodoba się każdemu, kto ceni prostotę użytkowania i pragmatyczne podejście do projektowania. Z pewnością Django jest atrakcyjnym rozwiązaniem dla programistów, którzy profesjonalnie podchodzą do tworzenia aplikacji WWW i stawiają na niezawodność. To drugie, zaktualizowane i uzupełnion...
Docker jest nową technologią, która radykalnie zmieniła podejście do wdrażania oprogramowania. Obrazy i kontenery Dockera upraszczają zarządzanie zależnościami, dzięki czemu testowanie, wdrażanie i skalowanie aplikacji staje się o wiele prostsze. W ciągu ostatnich lat Docker znacznie się rozwinął. Jest teraz bardzo stabilny i daje programistom wiele narzędzi do wyboru. W oczywisty sposób zwiększa to jego popularność wśród twórców dużych syst...