Język C#, sztandarowe dzieło Microsoftu, jest rozwijany stopniowo i ze starannością. Wciąż cechuje go prostota, a jego możliwości konsekwentnie rosną. Każda nowa funkcjonalność idealnie integruje się z resztą języka. W efekcie C# jest dojrzały, nowoczesny, wszechstronny i bezpieczny. Jego kolejne wydanie, oznaczone numerem 10.0, różni się od poprzednich, więc aby programowanie w C# pozostało efektywne i satysfakcjonujące, trzeba opanować niuanse nowej wersji języka i narzędzi...
Sztuczna inteligencja staje się powoli nieodzownym składnikiem naszego życia. Przeszła długą drogę od modnego hasła pojawiającego się głównie w specjalistycznych publikacjach do technologii mającej realny wpływ na naszą codzienność. Z każdym dniem lepiej radzi sobie z coraz bardziej zaawansowanymi zadaniami, już nie tylko wygrywając mecze z arcymistrzami szachowymi, lecz również analizując ogromne zbiory danych, tłumacząc teksty, prowadząc samochody, rozpoznając ludzką mowę, ...
Potrzeby w zakresie analizy dużych zbiorów danych i wyciągania z nich użytecznych informacji stale rosną. Spośród dostępnych narzędzi przeznaczonych do tych zastosowań szczególnie przydatny jest PySpark - interfejs API systemu Spark dla języka Python. Apache Spark świetnie się nadaje do analizy dużych zbiorów danych, a PySpark skutecznie ułatwia integrację Sparka ze specjalistycznymi narzędziami PyData. By jednak można było w pełni skorzystać z tych możliwości, konieczne jest...
Gra o cyberbezpieczeństwo jest fascynująca i toczy się o wysoką stawkę. W każdej organizacji są dane, które trzeba chronić przed stale rosnącą liczbą zagrożeń. Jeśli to się nie uda, musimy się liczyć z uszczerbkiem na wizerunku, ze stratami finansowymi, a w niektórych wypadkach nawet z utratą zdrowia lub życia człowieka. Dlatego ważne jest, aby koncepcje bezpieczeństwa defensywnego były znane nie tylko inżynierom do spraw bezpieczeństwa, ale także wszystkim specjalistom IT. J...
Popularność urządzeń mobilnych z roku na rok rośnie. Nic dziwnego ― nowoczesny telefon komórkowy można zabrać ze sobą wszędzie i skorzystać z niego praktycznie w każdej sytuacji, w zastępstwie komputera stacjonarnego czy laptopa. To także sprawia, że na swoich smartfonach gromadzimy coraz więcej danych, często osobistych, jak zdjęcia, filmy, hasła czy karty płatnicze. Mogą się one stać łakomym kąskiem dla osoby postronnej, której zamiarem jest wykorzystać je w nieuprawniony s...
Aby skutecznie przekazać wiedzę płynącą z zebranych danych, szczególnie w przypadku nauk przyrodniczych, ekonomicznych i społecznych, warto sięgnąć po narzędzia do wizualizacji. Nie jest to trywialne zadanie: często trzeba korzystać z coraz większych i coraz bardziej złożonych zbiorów danych, a dostępne narzędzia do wizualizacji zapewniają oszałamiający wybór rozwiązań i opcji, w których łatwo się pogubić. Co więcej, podczas przygotowywania prezentacji należy wziąć pod uwagę ...
Roblox to popularna platforma do tworzenia gier, z której korzystają użytkownicy o różnym poziomie umiejętności w zakresie ich projektowania. W Robloksie używa się języka programowania Lua. Jest to język, którego można się szybko i łatwo nauczyć. Roblox Studio i Lua zapewniają idealne środowisko dla twórców gier, a także prosty dostęp do serwerów multiplayer, narzędzi do modelowania światów, systemów monetyzacji i wielu innych przydatnych funkcji. Ty możesz skupić się na tym,...
Język SQL zwykle służy do pracy z bazami danych. Poprawnie napisany kod SQL przetwarza z dużą szybkością potężne zbiory danych, dlatego stanowi wymarzone narzędzie dla analityków danych. Tymczasem wielu z nich zleca wykonywanie raportów z baz czy hurtowni danych innym osobom. Taki sposób pracy jest nieefektywny - o wiele lepszym rozwiązaniem jest opanowanie języka SQL i samodzielne projektowanie oraz wyodrębnianie potrzebnych zbiorów danych.Ten przystępny przewodnik jest prze...
Dzisiejszy C++ jest wyjątkowym językiem programowania. Umożliwia pisanie zwięzłego, stabilnego kodu, który można zoptymalizować pod kątem wydajności w niespotykanym dotychczas stopniu. Język C++ w ciągu ostatnich lat został unowocześniony. W standardzie C++ 20 znalazło się sporo mechanizmów, które pozwalają osiągnąć wysoką efektywność kodu, a równocześnie uprzyjemniają programiście pracę. Poprawiono także ustawienia domyślne kompilatora. To wszystko sprawia, że wielu profesjo...
Nawet bardzo doświadczony zespół niekiedy popełnia błędy, które mogą przesądzić o porażce obiecującego projektu. Aby uniknąć takich sytuacji, trzeba zadbać o odpowiednie testowanie kodu. To jednak bywa prawdziwym wyzwaniem dla frontendowców, którzy na co dzień skupiają się na innych aspektach pracy aplikacji. Obecnie deweloperzy mogą wybierać spośród rozlicznych narzędzi do testowania i wielu nowych metodyk. Na uwagę zasługują zwłaszcza frameworki służące do automatyzacji tes...
Rosnąca dostępność danych sprawiła, że data science i uczenie maszynowe są powszechnie używane do przeróżnych celów. Równocześnie wiele osób pomija analizy matematyczne przed rozpoczęciem przetwarzania danych. A to wiąże się z ryzykiem popełnienia istotnych błędów już na etapie projektowania danego systemu. Dopiero dogłębne zrozumienie niektórych koncepcji matematycznych i umiejętność ich praktycznego zastosowania sprawia, że kandydat na analityka danych ma szansę osiągnąć po...
Mimo że dysponujemy coraz szybszym i wydajniejszym sprzętem, oprogramowaniu wciąż stawia się wyśrubowane wymagania: musi działać błyskawicznie i niezawodnie. Nieraz od jakości pracy systemu zależy bardzo dużo, nawet bezpieczeństwo i życie człowieka. Eliminacja źródłowych przyczyn problemów wydajnościowych jest jednak niezwykle trudnym zadaniem. Wymaga wiedzy o działaniu sprzętu, interakcjach między komponentami systemu, a także wysokiej klasy umiejętności programistycznych.Ta...
React jest biblioteką służącą do tworzenia interfejsów użytkownika. Ułatwia pisanie aplikacji internetowych, natywnych aplikacji dla iOS i Androida, oprogramowania dla telewizorów czy też natywnych aplikacji dla komputerów stacjonarnych. Dzięki tej bibliotece można szybko zbudować interfejs, który automatycznie będzie reagował na zmiany stanu aplikacji. Idea polega na użyciu małych, zarządzalnych komponentów do budowy nawet dużych i bardzo złożonych aplikacji. Aby zacząć prac...
Apache Spark jest oprogramowaniem open source, przeznaczonym do klastrowego przetwarzania danych dostarczanych w różnych formatach. Pozwala na uzyskanie niespotykanej wydajności, umożliwia też pracę w trybie wsadowym i strumieniowym. Framework ten jest również świetnie przygotowany do uruchamiania złożonych aplikacji, włączając w to algorytmy uczenia maszynowego czy analizy predykcyjnej. To wszystko sprawia, że Apache Spark stanowi znakomity wybór dla programistów zajmujących...
C++ to jeden z najpopularniejszych i najpotężniejszych języków programowania. Stanowi punkt wyjścia dla wielu innych języków, które odziedziczyły po nim składnię i liczne możliwości, dzięki czemu można śmiało stwierdzić, że znajomość C++ otwiera drzwi do świata nowoczesnego programowania i jest podstawą na wymagającym rynku pracy w branży informatycznej. Czasy się zmieniają, lecz to C++ jest wciąż wybierany wszędzie tam, gdzie liczą się możliwości, elastyczność, wydajność i s...
Zapewnienie bezpieczeństwa systemu informatycznego jest dziś nie lada wyzwaniem. Między administratorami a napastnikami trwa ciągły wyścig zbrojeń. Agresorzy dysponują bardzo różnymi narzędziami i często postępują w sposób nieprzewidywalny. W efekcie każde zabezpieczenie usługi czy zasobu, mimo że początkowo wydaje się doskonałe, prędzej czy później okazuje się podatne na ataki. Jedyną rzeczą, jaką może zrobić administrator bezpieczeństwa systemu, jest ciągłe utrzymywanie sta...
Filozofia Agile początkowo rozwijała się w zespołach programistów i szybko stała się synonimem elastyczności, wydajności i zdrowego rozsądku. Podejście to zakłada, że zespoły powinny się samoorganizować i samodzielnie decydować o wykonywaniu poszczególnych części projektu. W rzeczywistości nie wszystkie zespoły radzą sobie z tym stylem pracy. Szczególnie jest to widoczne w organizacjach z innych branż niż tworzenie oprogramowania. Pokonanie tych przeszkód jest niezwykle trudn...
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...
Tempo rozwoju współczesnych aplikacji jest zbyt duże, aby wciąż stosować skostniałe, stare metodyki zarządzania projektami. Obecnie należy błyskawicznie dostarczyć klientowi pierwszą wersję aplikacji i dopiero na podstawie jego uwag rozwijać oraz modyfikować program. Zwinne metodyki, w tym Scrum, pozwalają tego dokonać. Takie projekty nie zawsze są perfekcyjnie dopracowane, ale zazwyczaj pozwalają poznać opinię zleceniodawcy i lepiej zaplanować kolejne przebiegi - tzw. sprint...
Drogi Czytelniku, właśnie trzymasz w rękach nowe wydanie książki zaliczanej do klasyki literatury informatycznej. Napisana przez autorów języka ANSI C w najlepszy możliwy sposób przedstawia arkana tego języka. A co można powiedzieć o samym języku? To też klasyka. To język wymagający systematyczności i skupienia, ale dający w zamian wiele możliwości i świetne wyniki. To najczęściej nauczany język programowania - jego znajomość stanowi znakomity fundament do poznania kolejnych,...
Powiedz, jakie są Twoje relacje z królową nauk. Lubisz ją czy spotykacie się wyłącznie służbowo? A może po nocach śnisz o tym, jak stoisz przed tablicą z kredą w ręku, przed sobą masz równanie do rozwiązania, a w głowie absolutną, przerażającą pustkę? Mamy nadzieję, że nie, ale (także z własnych) doświadczeń wiemy, że cóż... to się zdarza.A nie powinno!Ponieważ matematyka wcale nie jest straszna. Matematyka powinna być, bywa, jest zabawna! Podczas rozwiązywania zadań matematy...
Bezpieczeństwo systemu informatycznego od dawna nie jest problemem wyłącznie administratora IT i jego zespołu. Różnorodność metod, socjotechnik i wyrafinowanych narzędzi wykorzystywanych do ataków oraz zacierania śladów sprawia, że zabezpieczenie usług czy zasobów musi być obowiązkiem całego personelu firmy - od prezesa po stażystę. Co więcej, bezpieczeństwo zasobów informatycznych wymaga systematycznej kontroli i systemowego podejścia, co wcale nie jest łatwym zadaniem. Z je...
MS Excel zasłużył już na miano kultowego. Od ponad 20 lat towarzyszy studentom, naukowcom, ekonomistom, analitykom i wielu innym ludziom. To wszechstronne narzędzie jest konsekwentnie rozwijane i rozbudowywane, a jego możliwości są coraz większe — dziś trudno byłoby znaleźć kogoś, kto dobrze znałby wszystkie jego funkcje! Nawet ci, którzy codziennie korzystają z tego świetnego arkusza, miewają problemy z odnalezieniem potrzebnej opcji. Bywa też, że nowości lub udoskonalenia w...
Rezystory, kondensatory, cewki, diody, tranzystory... Przeciętny zjadacz chleba traci wątek już w tym momencie, a to zaledwie kilka podstawowych typów elementów elektronicznych, z których można zbudować nieskończoną liczbę obwodów pełniących rozmaite funkcje. Urządzenia elektroniczne są wszędzie, mimo to niewielu z nas naprawdę rozumie ich działanie i potrafi naprawić choćby najprostsze z nich. Dlaczego?Powodów jest wiele. Elektronika wydaje się skomplikowana, działania poszc...