Tworzenie oprogramowania, zwłaszcza dużych i złożonych aplikacji, bywa problemem. Często objawy złego planowania projektu nie mają wiele wspólnego z uwarunkowaniami technicznymi: wysoki poziom stresu, duża rotacja pracowników, wypalenie zawodowe, brak zaufania, niska samoocena, a nawet różnego rodzaju dolegliwości fizyczne. Przyczyny tego stanu rzeczy są podobne: określane w nierealny sposób koszty, terminy i wymagania. Później okazuje się, że wewnętrznej złożoności systemu n...
Umiejętna analiza danych jest warunkiem podejmowania działań i wprowadzania optymalnych zmian. Zagadnienie to wymaga uwagi kierownika projektu, obecnie bowiem powstają ogromne ilości danych, a w przyszłości tendencja ta będzie się zdecydowanie nasilać. Transformacja cyfrowa bez wykorzystywania licznych strumieni danych okaże się niemożliwa. Oznacza to, że trzeba wprowadzać mechanizmy pozyskiwania danych, ich oczyszczania, agregacji i prezentacji. Kolejnym etapem jest analiza....
Projektowanie usług oraz projektowanie wrażeń użytkownika nie dotyczy tylko oprogramowania. Narzędzia i techniki, jakie oferuje, można wykorzystać w praktycznym funkcjonowaniu właściwie każdej organizacji, której zależy na lepszym działaniu na rzecz klientów, obywateli czy własnych pracowników. Są bezcenne przy łączeniu silosów operacyjnych i doskonaleniu wewnętrznej współpracy w organizacji - dzięki wdrożeniu zasad projektowania usług można doprowadzić do tego, aby ludzie ws...
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...
Sieci komputerowe oplotły dosłownie cały świat, obecnie korzystają z nich miliardy użytkowników, a liczba urządzeń podłączonych do internetu znacznie przekracza populację Ziemi. Rewolucja informatyczna stała się możliwa właśnie dzięki powszechnej dostępności do sieci - to dzięki niej ludzie mogą bez kłopotu korzystać z zasobów zgromadzonych w najsłynniejszych bibliotekach i największych bazach danych, w dowolnej chwili sprawdzać najnowsze informacje ze świata, wygodnie słucha...
Suche dane nie są zajmujące. Trudno zdobyć szczere zaangażowanie odbiorcy, któremu przedstawia się zestaw danych, nawet jeśli niosłyby one ze sobą absolutnie wyjątkową wiedzę. Jest to zupełnie naturalne - ludzki umysł jest przystosowany do przetwarzania opowieści, a nie danych. Właśnie opowieści w magiczny sposób pochłaniają uwagę słuchaczy, wywołują emocje i uczucia, skłaniają do działania i osłabiają chęć krytycznego myślenia. Między opowiadającym a słuchaczem tworzy się ró...
AutoCAD to bez wątpienia najpopularniejszy na świecie system projektowania wspomaganego komputerowo. Jednak nawet najlepsze narzędzie nie jest w stanie zmienić niedoświadczonego użytkownika w profesjonalistę. To można osiągnąć wyłącznie dzięki solidnej nauce popartej praktyką.Jeśli chcesz rozwinąć umiejętności projektowania za pomocą programu AutoCAD, sięgnij po tę książkę! Wprowadzi Cię ona w tajniki parametrycznego i nieparametrycznego projektowania 2D i 3D przy użyciu dowo...
Język C# wciąż cechuje prostota, przy czym jego możliwości rosną z każdą wersją. Od początku jest rozwijany z konsekwencją, a każda nowa funkcjonalność idealnie integruje się z resztą języka. W efekcie C# jest dojrzały, nowoczesny, wszechstronny i bezpieczny. Stanowi integralną część platformy Microsoft .NET Framework. Profesjonalni programiści, którzy dbają o wysoką jakość tworzonego kodu, uważają C# i .NET za swoje ulubione narzędzie pracy. Wersja 8.0 tego języka sprawia, ż...
Chmura obliczeniowa jest rozwiązaniem niezawodnym i zapewniającym wysoki poziom bezpieczeństwa systemu. Nowoczesne rozwiązania tego rodzaju charakteryzują się dużą elastycznością i skalowalnością, pozwalają na budowę i rozbudowę aplikacji, monitorowanie ich pracy oraz zarządzanie nimi, jak również bazami danych i innymi usługami w sposób globalny. Spośród chmur obliczeniowych jedne z najciekawszych i najbardziej innowacyjnych rozwiązań oferuje Google. Aby jednak optymalnie wy...
Projektanci Kotlina postawili na pragmatyzm. Oznacza to, że do dziś wszystkie decyzje związane z rozwojem języka są podejmowane z uwzględnieniem potrzeb biznesowych: produktywności, skalowalności, prostej konserwacji, niezawodności i wydajności. Od początku szczególną uwagę zwraca się również na bezpieczeństwo, czytelność, wielokrotne używanie kodu, łatwość użycia narzędzi i możliwości współdziałania z innymi językami. Bardzo ważna okazała się też wydajność zarówno działania ...
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 uzyskania maksymalnej j...
Systemy informatyczne oparte na chmurze stały się atrakcyjną alternatywą dla standardowej infrastruktury. Wymusiły jednak radykalne zmiany w praktykach tworzenia, wdrażania i utrzymywania aplikacji. Dziś uwaga profesjonalistów skupiona jest na Kubernetes, który w ciągu zaledwie kilku lat stał się faktycznym standardem wdrażania natywnej chmury. Aby tworzone aplikacje funkcjonowały wydajnie, bezawaryjnie i niezawodnie, warto wdrożyć i stosować wzorce i najlepsze praktyki. Koni...
Komputery kwantowe nie są już tylko urządzeniami teoretycznymi. Nie są też futurystycznym monstrum, obcą maszyną, która zamieni całe istniejące oprogramowanie w jakąś jego niezrozumiałą alternatywę. Komputery kwantowe (QPU) staną się raczej radykalnym rozszerzeniem możliwości współczesnej informatyki, które pozwoli nam rozwiązać problemy dotychczas nierozwiązywalne. Istnieją ważne zadania, z którymi QPU potrafią sobie świetnie poradzić, a których rozwiązanie byłoby niemożliwe...
Sztuczna inteligencja i uczenie maszynowe rozwijają się z niezwykłą dynamiką i znajdują coraz więcej różnorodnych zastosowań w niemal wszystkich branżach. Ten spektakularny postęp jest silnie związany z osiągnięciami w świecie sprzętu i oprogramowania. Obecnie do uczenia maszynowego używa się wielu języków programowania, takich jak R, C, C++, Fortran i Go, jednak najpopularniejszym wyborem okazał się Python wraz z jego specjalistycznymi bibliotekami. Znajomość tych bibliotek ...
JavaScript ma długą i ciekawą historię. Obecnie to jeden z najpopularniejszych języków programowania. Jego zalety to nowoczesność, wszechstronność, elastyczność i wydajność. Jest przy tym idealny dla początkujących użytkowników: można się go łatwo nauczyć i równocześnie od razu przyzwyczaić się do stosowania dobrych praktyk i pisania czystego, ładnego kodu. Mimo to uzyskanie prawdziwej biegłości wymaga pracy i ćwiczeń. Jest to jednak wysiłek, który warto podjąć, gdyż JavaScri...
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...
Ozobot to niewielki, ale bardzo sprytny robot, którego pokochały dzieci oraz docenili rodzice i nauczyciele informatyki. Ten edukacyjny automat, dwukrotny zdobywca polskiego tytułu Zabawki Roku oraz laureat robotycznych konkursów w USA, ma misję. Każdego chętnego, który ukończył piąty rok życia, gotów jest zabrać w podróż pełną radosnego rysowania, ciekawych problemów do rozwiązania i pracy zespołowej. Ozobot, bawiąc, uczy programowania. Dzieci bowiem komunikują się z nim za ...
Termin wirtualizacja od jakiegoś czasu jest bardzo modny. Oznacza abstrakcję zasobów obliczeniowych opartą na innych zasobach, jednak specjaliści IT słowo to kojarzą z abstrakcją sprzętu (serwerów), czyli oddzieleniem systemu operacyjnego od sprzętu, na którym jest uruchomiony. Dzięki temu na jednym fizycznym serwerze można jednocześnie uruchamiać wiele systemów operacyjnych. W takiej właśnie technologii działa rodzina produktów VMware vSphere. Tego rodzaju wirtualizacja przy...
Java to nowoczesny, współbieżny, obiektowy język programowania, który zdobył uznanie tysięcy programistów na całym świecie. Ogromne możliwości, niezależność od platformy, niezawodność i bezpieczeństwo, a także łatwość tworzenia i przejrzystość kodu powodują, że Java od lat cieszy się niesłabnącą popularnością, na programistów posługujących się tym językiem zaś czekają setki atrakcyjnych ofert pracy. Java znajduje zastosowanie w najróżniejszych dziedzinach i branżach, co spraw...
W niezwykle dynamicznie rozwijającej się branży IT sukces projektu zapewnić mogą jedynie jego wysoka jakość i niskie koszty realizacji oraz odpowiednio krótki czas dostarczenia go klientowi. Coraz trudniej to osiągnąć w tradycyjny sposób, dlatego firmy zmuszone są stosować nowoczesne modele współpracy i metodyki zarządzania. Aby zapewnić konkurencyjność swoich usług, muszą zlecać wykonanie zadań pracownikom i zespołom znajdującym się w innej lokalizacji, innym kraju, a nierza...
C++ to bez wątpienia jeden z najpopularniejszych i najpotężniejszych języków programowania. Znajduje zastosowanie w tworzeniu systemów operacyjnych, sterowników przemysłowych, bibliotek, gier komputerowych, najrozmaitszych aplikacji desktopowych, programów bazodanowych i oprogramowania serwerowego - słowem, wszędzie tam, gdzie liczy się wydajność i niskie zużycie zasobów. Co więcej, napisane w nim programy są przenośne, dzięki czemu można je kompilować pod różne platformy spr...
Platforma Amazon Web Services jest uważana za największą i najdojrzalszą chmurę obliczeniową. Oferuje ponad setkę gotowych usług, praktycznie niewyczerpywalne zasoby mocy obliczeniowej, nieograniczone bezpieczne magazynowanie oraz pierwszorzędne możliwości automatyzacji. Jest przy tym nieustannie unowocześniana i udostępnia coraz to nowsze możliwości. Pozwala na tworzenie i utrzymanie aplikacji w elastyczny i niezawodny sposób. Dla wielu organizacji decyzja o migracji infrast...
Mimo że w 2018 roku Kubernetes zyskał reputację standardowego narzędzia do zarządzania kontenerami, wciąż należy traktować tę technologię jako znajdującą się w dość wczesnej fazie rozwoju. Możliwości tej platformy z czasem rosną i stają się coraz ciekawsze. Standardowym działaniem jest uruchamianie klastrów w Kubernetesie, jednak o wiele bardziej interesujące wydaje się samodzielne rozszerzanie tej platformy o własne kontrolery i rozbudowa API Kubernetesa w celu dostosowania ...
Kubernetes jest platformą do orkiestracji kontenerów. Projekt ten należy dziś do najpopularniejszych i najbogatszych narzędzi w swojej klasie, stanowi także podstawę dla wielu innych platform, znanych jako systemy typu PaaS. Dzięki nim Kubernetes zyskał możliwość tworzenia aplikacji, jednak tego rodzaju narzędzia wymagają od programistów i architektów zastosowania odpowiednich wzorców projektowych. Opisują one schematy rozwiązywania problemów na różnych poziomach dokładności,...
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).