Od mniej więcej piętnastu lat jesteśmy świadkami rewolucji w nauczaniu maszynowym na niesamowitą skalę. Rewolucji tej sprzyja intensywny rozwój głębokich sieci neuronowych oraz niezbędnego do tego sprzętu obliczeniowego, takiego jak karty graficzne. "Deep learning", "machine learning" - te słowa klucze rozpalają wyobraźnię programistów, innowatorów i przedstawicieli przemysłu na całym świecie. Także studentów kierunków politechnicznych. Na świecie wydaje się sporo literatury ...
Nie wystarczy znajomość jednego języka programowania, aby zostać programistą. W rzeczywistości trzeba opanować dość szeroki zakres pojęć i paradygmatów, a także zrozumieć zagadnienia związane z algorytmami. Trzeba być na bieżąco z nowymi technologiami i narzędziami. Należy również poznać i zacząć stosować dobre praktyki programistyczne i przyswoić sobie zasady pracy w zespole. Przede wszystkim jednak priorytetem jest sama praktyka, ponieważ wielu programistów wciąż ma problem...
SQL stanowi podstawowe narzędzie komunikowania się z relacyjnymi bazami danych. Jest to dość skomplikowany język o rozbudowanych możliwościach. Pozwala na pobieranie z bazy zestawów danych wyszukiwanych na podstawie wyrafinowanych kryteriów. Umożliwia też modyfikację zarówno danych, jak i struktury bazy, w której są gromadzone. To potężne narzędzie powinni znać nie tylko programiści baz danych, ale również specjaliści zajmujący się ich analizą, jednak zdobycie praktycznych um...
Wykonanie produktu o dużej wartości rynkowej i osiągnięcie prawdziwego sukcesu często wymaga od menedżerów zmiany dotychczasowego podejścia. Współczesne firmy są połączonymi systemami, a samo zarządzanie dotyczy głównie ludzi i relacji. Podejście zwane zarządzaniem zwinnym czy też programowaniem zwinnym (agile) ma szczególne miejsce w nowoczesnej teorii systemów złożonych i procesach wytwarzania oprogramowania. Co istotne, wdrożenie metodologii zwinnych ułatwia realistyczne p...
Od oprogramowania wymaga się solidności i poprawności, a równocześnie oczekuje wydajnego działania i skalowalności. Jako programista odpowiadasz za zapewnienie aplikacjom tych właśnie cech. Niezależnie od tego, jakiego języka programowania używasz, praca zgodnie z paradygmatem TDD umożliwi Ci otrzymanie testowalnego kodu o wysokiej jakości. Choć te korzyści przeważają nad niedogodnościami podejścia TDD, wielu programistów narzeka na czasochłonność, pracochłonność i sprawiając...
Głębokie uczenie przez wzmacnianie rozwija się bardzo dynamicznie. Dziedzinę tę charakteryzuje niewyczerpany potencjał rozwiązywania trudnych problemów. Zajmuje się tym co najmniej kilka grup badawczych, koncentrujących się na wdrażaniu głębokiego uczenia przez wzmacnianie w różnych branżach. Niestety, opisy najnowszych osiągnięć są trudne do zrozumienia i zbyt abstrakcyjne, aby można było je łatwo zastosować w praktycznych implementacjach, a przecież poprawne działanie aplik...
JavaScript jest jednym z najwartościowszych języków programowania, cechuje go wszechstronność i elastyczność. Ucząc się JavaScriptu, adept programowania nabiera dobrych nawyków i nabywa umiejętności wymaganych od profesjonalistów. Warto też poznać język TypeScript wraz z towarzyszącymi mu narzędziami. Projektant aplikacji internetowych, który programuje w TypeScripcie, może łatwo skorzystać z wielu dopracowanych frameworków. W ten sposób w pełni wykorzystuje się możliwości no...
Python cechuje się dużą prostotą, a przy tym jest wszechstronny. Ma bardzo szeroki zakres zastosowania, przez co coraz więcej osób podejmuje naukę programowania w tym języku. Python należy do języków najczęściej używanych przez programistów, którzy tworzą w nim gry i aplikacje webowe. Świetnie sprawdza się ponadto w pracy z wykorzystaniem sztucznej inteligencji i uczenia maszynowego. Tym, co programiści doceniają w Pythonie, jest też obiektywność. Ucząc się, przyswajamy bowie...
Należący do języków ogólnego przeznaczenia C++ od lat pozostaje niezwykle popularny wśród programistów. I wciąż zdobywa nowych entuzjastów. Jeśli chcesz się przekonać, jak się pracuje z tym wszechstronnym i potężnym językiem, przygodę z nim koniecznie rozpocznij od tego podręcznika! Przeprowadzi Cię on krok po kroku przez najważniejsze zagadnienia i definicje związane z C++. Z pewnością docenisz to, że każde pojęcie, które należy opanować, zostało zilustrowane gotowym, działa...
"Jeśliby posadzić milion małp przy milionie klawiatur, któraś z nich napisze w końcu program w Javie. Reszta zrobi to w Perlu" - głosi jedna z informatycznych anegdot punktujących Javę. Cokolwiek by jednak mówić o tym języku programowania, trzeba przyznać, że powstały w nim kod jest niezależny od systemu operacyjnego i procesora. Właśnie ta cecha stanowi o ogromnej popularności Javy.Jeśli chcesz dołączyć do licznego grona programistów piszących aplikacje w tym języku, z pewno...
Programowanie wciąga. Łatwo zapalić się do własnego pomysłu na świetny program, ale jeśli zabraknie umiejętności, nietrudno w poczuciu frustracji porzucić kod po napisaniu kilku linijek. Wiele osób, marząc o wykorzystywaniu imponujących możliwości Pythona, przepracowało cierpliwie liczne samouczki. Nie jest to zły sposób na rozpoczęcie przygody z programowaniem i przyswojenie składni języka. Ale do samodzielnego tworzenia kodu trzeba nieco innych umiejętności. Skąd jednak ma ...
Praca programisty wydaje się dziś znacznie prostsza niż kilkanaście lat temu. Wydaje się taka, ponieważ ma on dostęp do niezliczonych bibliotek przypisanych do języków programowania. Gdy pojawia się problem, sięga do biblioteki ― i po sprawie. Problem rozwiązany, zgadza się? I tak, i nie. Owszem, w wypadku prostych projektów wystarczy bazowa znajomość zasad programowania, podstawowa znajomość danego języka i wiedza na temat tego, co zawiera konkretna biblioteka. Tak jednak dz...
Java jest obiektowym, bazującym na klasach, współbieżnym językiem programowania. Niezwykłą popularność zawdzięcza on między innymi niezależności od platformy, łatwości pisania w nim programów i klarownemu kodowi. Nic więc dziwnego, że Javę pokochało wielu programistów. To do nich jest skierowana dwuczęściowa publikacja Java. Zadania z programowania, której autorem jest Mirosław J. Kubiak.Jej druga część, zatytułowana Przykładowe funkcyjne rozwiązania, jest przeznaczona dla od...
JavaScript cieszy się opinią wszechstronnego i elastycznego języka programowania. Przy czym bywa dość wymagający dla programisty. Rozwiązaniem dla osób, którym zależy na pisaniu niezawodnych aplikacji w krótkim czasie, okazują się frameworki. Szczególnym uznaniem cieszy się React, gdyż pozwala na pełne wykorzystanie możliwości nowoczesnych przeglądarek i urządzeń mobilnych. Jest to jednak narzędzie, które na początku przysparza problemów ze zrozumieniem sposobu działania, a b...
Oto propozycja dla specjalistów zajmujących się programowaniem sztucznej inteligencji i studentów kształcących się w tej dziedzinie. Autor przybliża tajniki tworzenia sieci neuronowych stosowanych w uczeniu głębokim i pokazuje, w jaki sposób używać w tym celu bibliotek Keras i TensorFlow. Objaśnia zagadnienia dotyczące programowania AI zarówno w teorii, jak i praktyce. Liczne przykłady, czytelna oprawa graficzna i logiczne wywody sprawiają, że to skuteczne narzędzie dla każde...
Django zaskarbił sobie uznanie wielu programistów. Jest to platforma, która udostępnia wszystkie narzędzia potrzebne do tworzenia aplikacji internetowych w Pythonie. To również narzędzie pozwalające na sprawne rozpoczęcie pracy i rozwijanie solidnego i bezpiecznego kodu. Aby jednak zapewnić sobie satysfakcję, a tworzonym projektom profesjonalną jakość, trzeba przyswoić koncepcje i zasady pracy z Django.Dzięki temu praktycznemu przewodnikowi po Django zdobędziesz wiedzę i pewn...
W świecie finansów sztuczna inteligencja okazała się przełomową technologią - w połączeniu z odpowiednim zastosowaniem algorytmów i dużych zbiorów danych bowiem pozwala na poprawę jakości usług finansowych. Autor tej książki zdaje sobie z tego sprawę - ma wieloletnie doświadczenie i kompleksową wiedzę na temat projektowania i wdrażania zaawansowanych mechanizmów AI w największych podmiotach z branży. Swoją wiedzą dzieli się z czytelnikami.Dr Yves Hilpisch szczegółowo opisuje ...
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...
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...
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).