Programista 9/2017 (64)
Programista 9/2017 (64)
Nikt nie lubi czekać. Miło jest móc dostawać informacje, które nas interesują tak szybko jak to tylko możliwe. W tym artykule opowiem, co sprawia, że filtr Blooma jest tak użyteczny oraz dlaczego firmy między innymi takie jak Google czy Facebook zdecydowały się na jego użycie. Mimo swoich niewątpliwych zalet ma również kaprysy, zdarza się mu czasem oszukiwać. Postaramy się pokazać, jak te błędy można zniwelować.
Analiza gramatyczno-leksykalna to zadanie powszechnie wykonywane w wielu typach programów. Głównym przykładem programów, gdzie tego typu analiza jest stosowna, są kompilatory, jednak wiele innych programów posiada pliki tekstowe opisujące konfigurację, zatem i tam taka analiza zawartości pliku jest wykonywana.
We wrześniu tego roku standard C++17 został formalnie zaakceptowany przez komitet ISO, co oznacza, że można uznać go za zamknięty. W najbliższych miesiącach wsparcie dla tego standardu zdecydowanie poprawi się i bez większych problemów będziemy mogli używać go w swoich projektach.
Na rynku można znaleźć bardzo dużo zaawansowanych silników gier, które pozwalają na szybkie stworzenie gry bez zbytniego zastanawiania się: „jak to działa pod spodem?”. Czasami twórcy gier decydują się na stworzenie własnego silnika, ponieważ te dostępne na rynku nie nadają się do gry, jaką sobie wymarzyli. Często też napisanie własnego silnika pozwala lepiej doszlifować finalny produkt poprzez rezygnację z komponentów, które są dla nas zbędne. Ogólnodostępne silniki posiadają ich wiele, ponieważ muszą objąć swoimi możliwościami jak najwięcej gier, które potencjalni developerzy będą tworzyć za ich pomocą. Jednym z takich przypadków, gdzie warto spróbować napisać własny silnik gry, może być gra opierająca się na wokselach. A na pewno będzie to świetny pretekst, by spróbować napisać własny silnik dla celów edukacyjnych.
Napisaliśmy kod. Ktoś go zazwyczaj sprawdza. Nietrudno tu o różnicę zdań, który wariant lepszy, czytelniejszy itp. Jak również o wykrycie oczywistych defektów. Dobrze, gdyby pod ręką znajdował się jakiś automat, najlepiej taki, który pozwala na przekrojowe analizy, również w dziedzinie czasu. To nasz nowy kolega – SonarQube. Wykonuje te i kilka innych czynności, a jak się postaramy, to dla każdego pull-requestu. Artykuł pozwala nam go lepiej poznać, a zwłaszcza jak pracuje nad kodem .NET samego Jona Skeeta.
Czy zastanawialiście się kiedyś, jak bardzo kruche są podstawy, na których budujemy oprogramowanie, i jak niewiele trzeba, aby zachęcić system operacyjny do nieplanowanego zamknięcia procesu? W tym artykule przedstawione zostaną okrągłe 64 wybrane metody na uzyskanie takiego rezultatu.
Praca rozpoczęta i niezakończona w ustalonym terminie to coś, co często zdarza się przy pracy z niejednym produktem. Często winą obarczamy zespoły. Jednak powodów porażki możemy doszukiwać się także w działaniach PO. W dalszej części artykułu przedstawię Ci kilka przyczyn niezakończonej pracy oraz kilka rozwiązań, które pomogą lepiej sobie z nimi radzić.
W dzisiejszych czasach bezpieczeństwo każdej istniejącej aplikacji internetowej silnie polega na skrótach kryptograficznych. Co więcej, znalezienie praktycznej metody ich odwracania wywołałoby globalny kryzys w całej informatyce. To argument, który sprawia, że warto się z nimi zapoznać. W tym artykule pokażemy, jak poprawnie używać hashy oraz jak skonstruowane są algorytmy HMAC i PBKDF2.
W połowie września miała miejsce trzecia edycja zawodów EKOPARTY CTF organizowanych przez drużynę Null Life (zawodnicy pochodzą z Ameryki Południowej i Środkowej). Ja w EKOPARTY brałem udział po raz drugi i nie mogę się doczekać kolejnej edycji. Zadań zawsze jest dużo, są różnorodne i ciekawe. A ponieważ większość z nich jest raczej prosta, nawet osoby rozpoczynające przygodę z CTFami mają szansę zdobyć kilka flag, a przy okazji czegoś nowego się nauczyć.
Jakiś czas temu pojawił się na łamach naszego pisma nowy dział „Wspomnienia zgreda”. Jego istnienie zainicjowane zostało przytoczoną pewną kontrowersyjną historią, lekko podkolorowaną, tego, co działo się ponad piętnaście lat temu na scenie. Może współcześnie wyglądać to troszkę dziwnie. Jednak wtedy nie było to aż tak nietypowe, jak może się wydawać autorowi tamtego tekstu.
Przedstawiam dziewiątą lekcję minikursu angielskiego dla programistów. Tym razem tematem przewodnim jest bezpieczeństwo. Zachęcam do wielokrotnego wykonywania ćwiczeń, aby dobrze utrwalić sobie przyswojony materiał.
Uwaga, uwaga! Oto ON! Wybraniec! Zbawca! Czysty, płonący, zapamiętały. W ognistym rydwanie, z seledynowymi, zero-jedynkowymi lejcami. Programista pasjonat. Poświęcony programowaniu. Prawdziwie.