Sztuczna inteligencja ma umożliwiać wykorzystywanie danych i algorytmów do podejmowania lepszych decyzji, rozwiązywania trudnych problemów i automatyzowania złożonych zadań. Ma też zwiększać produktywność człowieka. Obecnie sztuczna inteligencja z rozmachem wkracza do kolejnych dziedzin. Budzi zachwyt, ale też kontrowersje i obawy. Nowe narzędzia, choćby były tworzone z najlepszymi intencjami, zawsze mogą zostać wykorzystane w niewłaściwy czy szkodliwy sposób. Oznacza to, że ...
Mam narysować mapę? Przecież ja nic nie pamiętam z geografii!" - znasz ten ból? Sama myśl o przedstawieniu jakichś danych przestrzennych, naniesieniu trasy na mapę albo wyborze na niej obiektów powoduje, że czujesz dreszcze? Czy jesteś informatykiem, dziennikarzem, psychologiem, handlowcem, czy logistykiem - te umiejętności mogą Ci się przydać. Jeżeli nie znasz tajników kartografii, dzięki tej książce odkryjesz je bezboleśnie. W dodatku będzie to całkiem przyjemne doświadczen...
W pewnych kwestiach nic się nie zmienia - Arduino pozostaje praktycznym, tanim mikrokontrolerem, który może komunikować się ze światem zewnętrznym i obsługiwać przeróżne urządzenia elektroniczne. Daje też pole do popisu licznym amatorom i hobbystom. Środowisko programistyczne wciąż ma prosty interfejs, a programowanie płytki samo w sobie jest łatwym zadaniem nawet dla ludzi bez doświadczenia w pisaniu kodu. Zmiany w świecie Arduino dotyczą większych możliwości oraz sukcesywni...
Techniki uczenia głębokiego rozwijają się w imponującym tempie, a sieci neuronowe znajdują zastosowanie w przeróżnych branżach. Coraz częściej komputer wykonuje zadania, które do niedawna były zarezerwowane dla człowieka. Dobrym przykładem jest tworzenie dzieł sztuki: ostatnie postępy w dziedzinie modelowania generatywnego sprawiają, że maszyny tworzą oryginalne obrazy w określonym stylu, piszą spójne akapity tekstu, komponują przyjemną w odbiorze muzykę i generują prawdopodo...
Zapewnienie bezpieczeństwa IT spędza sen z powiek nie tylko inżynierom, ale również menedżerom i kierownictwu organizacji. W tym zadaniu mają im pomóc różnorodne narzędzia, jednak ich skuteczne wykorzystanie wymaga nie tylko wyrafinowanej wiedzy technicznej. Konieczne jest nieco szersze spojrzenie na sprawy cyberbezpieczeństwa, aby zastosować właściwe strategie obronne i środki zaradcze. By podejmować trafne decyzje, potrzebna jest wiedza o najlepszych praktykach cyberbezpiec...
Programiści dysponują coraz lepszym, szybszym i wszechstronniejszym sprzętem. Pojawiają się nowe języki programowania i nowe paradygmaty tworzenia architektury oprogramowania. Są jednak rzeczy, które w świecie programowania pozostają stałe i niezmienne. Wciąż proces stawania się programistą wymaga od adeptów tego rzemiosła sporego wysiłku. Akt kodowania to za mało. Trzeba zmienić sposób myślenia, nawyki, zachowania i oczekiwania. Konieczne jest świadome dążenie do stosowania ...
Django jest potężnym frameworkiem służącym do tworzenia aplikacji internetowych w Pythonie. Pozwala na pełne wykorzystywanie zalet tego języka, takich jak przejrzystość, elastyczność, wszechstronność i łatwość uczenia się. Wykorzystywanie Django do budowania aplikacji w Pythonie jest atrakcyjną możliwością zarówno dla początkujących, jak i zaawansowanych programistów. Aby jednak zapewnić tworzonym projektom odpowiednią, profesjonalną jakość, trzeba się nauczyć rozwiązywać pro...
Scratch jest znany jako projekt edukacyjny, służący młodym ludziom do nauki programowania. W rzeczywistości stał się czymś więcej: jest to cyfrowa piaskownica, w której każdy może wyrazić swoją kreatywność. W trakcie tworzenia projektów w Scratchu można nie tylko nauczyć się sposobu myślenia właściwego najlepszym programistom, ale także ćwiczyć systematyczność, innowacyjność, umiejętność znajdywania rozwiązań i pracy zespołowej. Na stronie Scratcha czeka cała gama ciekawych p...
Adobe InDesign jest niesamowitym narzędziem, które umożliwia przygotowanie wysokiej klasy dokumentów i drukowanie ich na różnych urządzeniach. Służy także do składania publikacji elektronicznych w wielu formatach - między innymi PDF, HTML czy EPUB. Oprogramowanie to zapewnia precyzję, pełną kontrolę nad przebiegiem projektowania oraz doskonałą współpracę z innymi programami Adobe. InDesign jest wyjątkowo złożonym narzędziem, ale kto pozna jego imponujące możliwości, bez trudu...
Co wiesz i co potrafisz ― to dwie różne sprawy. Od wiedzy do umiejętności prowadzi droga usłana... praktyką. A praktykę najlepiej i najbezpieczniej zdobywa się nie w zawodowym boju, gdy na ręce patrzą szef, koledzy z teamu i klient na dodatek, tylko w zaciszu własnego pokoju, przy ulubionym biurku, na ulubionym krześle, w czasie wolnym. Ćwicząc i bawiąc się po prostu! I właśnie w tym celu powstała ta książka. Autor zawarł w niej 102 ćwiczenia, dzięki którym przejdziesz od teo...
Pasja testowania to podręcznik przeznaczony dla osób, które stawiają pierwsze kroki w świecie IT i rozważają, czy praca testera, ważna i nieźle płatna, jest dla nich. Tester oprogramowania - to brzmi dobrze! Tylko na czym polegają jego zadania? Jakich umiejętności się od niego wymaga? Znajomość których narzędzi będzie oczekiwana? Skąd czerpać o nich wiedzę? I przede wszystkim: jak się przekonać, czy będzie się dobrym testerem?Na te i inne pytanie odpowiada Pasja testowania. D...
Rola architekta oprogramowania się zmienia. Dziś jest on odpowiedzialny za wiele spraw, zarówno technicznych, jak i tych wynikających ze specyfiki organizacji, której ma służyć aplikacja. Co więcej, rola architekta nie kończy się na podjęciu decyzji projektowych na początku pracy. Nowoczesne style architektoniczne, takie jak mikrousługi, umożliwiają przyrostowe wprowadzanie zmian, co jednak wymusza ciągłe wypracowywanie kompromisów z innymi kwestiami. Obszar architektury wcią...
Ostatnia dekada zmieniła oblicze IT. Kluczowego znaczenia nabrały big data, a chmura i automatyzacja rozpowszechniły się wszędzie tam, gdzie mowa o efektywności. Inżynierowie muszą wykorzystywać zalety systemów linuksowych w codziennej praktyce, aby zapewnić należyty poziom automatyzacji swoich zadań. Do tych celów świetnie nadaje się Python. Język ten zdobywa coraz większe uznanie z uwagi na jego wszechstronność, jak również wydajność, przenaszalność i bezpieczeństwo kodu. W...
MongoDB jest wieloplatformowym, nierelacyjnym systemem do obsługi baz danych, napisanym w języku C++. Nie przypomina ściśle ustrukturyzowanych relacyjnych baz danych, zamiast tego korzysta z dokumentów w formacie BSON. Ułatwia to bardziej naturalne przetwarzanie informacji w aplikacjach, oczywiście przy zachowaniu możliwości tworzenia hierarchii oraz indeksowania. W ten sposób cały system zyskuje na wydajności, co jest szczególnie istotne przy przetwarzaniu bardzo dużych zbio...
Python nie jest językiem idealnym, jednak przybywa programistów, którzy uważają go za bliski ideału. Wyróżnia się prostotą i wszechstronnością. Jest wdzięcznym narzędziem do badania danych i tworzenia systemów sztucznej inteligencji, uwielbiają go analitycy, ekonomiści i naukowcy. Może posłużyć do tworzenia stron WWW czy aplikacji specjalnego przeznaczenia. Python należy do najbardziej spójnych i czytelnych języków programowania. Jest przykładem całkiem udanego kompromisu pom...
Przybornik narzędziowy webmastera zmienia się bardzo szybko. Technologie, które parę lat temu były ciekawym eksperymentem, dziś są powszechnie stosowane. Responsywność stron internetowych stała się oczywistością. Modele Flexbox i Grid zrewolucjonizowały tworzenie układów stron internetowych. Zmieniły się używane formaty grafik, wzrosła też znacząco liczba narzędzi, które należałoby poznać. Naturalnie, wciąż można wskazać aspekty projektowania, które pozostały niezmienne - prz...
Wydawałoby się, że ze względu na szeroki dostęp do materiałów poświęconych bezpieczeństwu systemów informatycznych, temat ten powinien być świetnie znany każdemu inżynierowi. Mimo to media regularnie donoszą o spektakularnych naruszeniach zabezpieczeń. Następstwem udanych ataków mogą być nie tylko straty finansowe i uszczerbek na wizerunku, ale również zagrożenie bezpieczeństwa narodowego. Zapewnienie wysokiego stopnia bezpieczeństwa systemu informatycznego wymaga ciągłego uc...
SolidWorks to bardzo popularne rozwiązanie do projektowania inżynierskiego, które wraz z wprowadzeniem dodatku Simulation zostało wzbogacone o narzędzia do analizy strukturalnej wykorzystujące metodę elementów skończonych. Oprogramowanie umożliwia przeprowadzanie testów i symulacji działania zaprojektowanych części i złożeń oraz ułatwia ich optymalizację kosztową i materiałową, dzięki czemu końcowe produkty można wytwarzać taniej i szybciej wprowadzać na rynek, bez pogarszani...
Python słusznie cieszy się stale rosnącym uznaniem programistów: jest wszechstronny i efektywny, pozwala też na tworzenie wysokiej jakości oprogramowania. Język ten ma poza tym wiele trudniejszych do uchwycenia zalet. Aby uzyskać naprawdę imponujące efekty w zakresie wydajności kodu, jego przenaszalności i bezpieczeństwa, trzeba zagłębić się w dość subtelne niuanse kodowania. Wielu programistów, choć posiada spore doświadczenie w programowaniu w innych językach, nie dostrzega...
Dlaczego właśnie Python?Pierwsza odpowiedź, jaka się nasuwa, jest dość oczywista: ponieważ Python to jeden z najprostszych do nauki języków programowania. Najkrótszy program zajmuje tylko JEDNĄ linijkę. Z małą pomocą nauczyciela i naszego praktycznego zeszytu ćwiczeń każdy młody adept sztuki programowania zdoła szybko opanować podstawy tego języka i zacząć w nim pisać swoje pierwsze programy. Druga odpowiedź wydaje się z pozoru zaprzeczać pierwszej. Bo choć Python jest prosty...
Połączenie platformy Unity i języka C# zapewnia doskonałe środowisko do tworzenia i rozwijania różnego rodzaju gier komputerowych. To sprawia, że tandem ten jest niezwykle popularny wśród game developerów pragnących szybko i wydajnie osiągać profesjonalne efekty. Jednak sama znajomość narzędzi nie wystarczy, aby sprostać niełatwemu zadaniu zaprojektowania i zaprogramowania prawdziwej gry - by przekuć pomysł i umiejętności w prawdziwy produkt, trzeba czegoś więcej.Niezbędne do...
W lutym 2001 roku grupa kilkunastu pasjonatów programowania zebrała się w Snowbird w stanie Utah, aby podyskutować na temat efektywności tworzenia oprogramowania i określić nowe zasady pracy. Nie był to cel łatwy do osiągnięcia. Siedemnaście osób o całkowicie różnych doświadczeniach i przekonaniach raczej rzadko wypracowuje wspólne stanowisko. A jednak w tym przypadku tak się stało i powstał Manifest Agile. Właśnie wtedy narodziła się jedna z najważniejszych idei w świecie op...
Zmień podejście do programowania - zastosuj wzorce projektowe.Skorzystaj z metod modelowania obiektowego w języku UMLPoznaj różne typy wzorców projektowych.Wykorzystaj wzorce projektowe w swoich programach.Wzorce projektowe to modele rozwiązań wielu zagadnień programistycznych, oparte na zasadach programowania obiektowego. Zastosowanie ich w projektach informatycznych zapewnia szybszą i bardziej efektywną pracę zarówno podczas projektowania i tworzenia oprogramowania, jak i n...
Termin Szybsza Sieć (ang. Faster Web) powstał stosunkowo niedawno. Koncepcja ta skupia się na rozwijaniu wszystkich elementów technologii internetowych oraz interfejsu użytkownika, tak aby przyśpieszyć interakcję między klientem a serwerem oraz działanie samej aplikacji. Efektem tych optymalizacji powinna być poprawa jakości pracy systemu. Aby w pełni przyswoić ideę Szybszej Sieci, trzeba dobrze zrozumieć takie pojęcia jak wydajność, efektywność i postrzegana wydajność. Konie...
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).