Programista 5/2021 (99)
Programista 5/2021 (99)
Czy odkrywanie koła na nowo jest czymś, na co warto poświęcać czas? Prawdopodobnie nie. To samo tyczy się implementacji często używanych struktur danych i algorytmów do obliczeń numerycznych. Na szczęście możemy skorzystać z prostego w użyciu rozwiązania, które łączy w sobie najlepsze cechy wielu popularnych bibliotek i dodaje do nich szereg optymalizacji. Zapoznajmy się z Armadillo – biblioteką do realizacji obliczeń numerycznych w C++.
Czasami gdy wieczorami z nudów przeglądam Internet, znajduję memy, które przedstawiają język JavaScript jako niespójny, pełen absurdów twór, który ciężko brać na poważnie. W tym artykule, wykorzystując kilka najbardziej popularnych przykładów kodu JS w memach, chciałbym wyjaśnić, dlaczego JavaScript w tych przykładach działa tak jak działa.
Czy w startupie jest tak cudownie, jak się powszechnie sądzi? „To zależy”. Nasze ulubione branżowe powiedzonko możemy łatwo przenieść na ocenę środowiska pracy.
Zarządzanie operacjami, walidacjami i polami
W poprzednim numerze stworzyliśmy aplikację umożliwiającą nam zarządzanie przedmiotami, które posiadamy w domu. W tym artykule rozszerzymy wiedzę na temat możliwości wykorzystania API Platform o zarządzanie operacjami, filtrowanie, a także dodamy system walidacji reagujący w sposób komunikatywny na dane dostarczane przez użytkownika. Oczywiście zachowując przy tym przejrzystość kodu.
Nie czas umierać – próbuje nam wmawiać popkultura, posługując się postacią słynnego Jamesa Bonda. Z drugiej strony, dopiero niedawne doświadczenia spowodowane światową epidemią skłoniły wiele osób do głębszych przemyśleń związanych z przemijalnością życia.
W tym artykule przyjrzymy się wybranym pułapkom języka Go, na które można natrafić podczas pisania czy przeglądania kodu. Niektóre z nich mogą prowadzić do poważnych błędów bezpieczeństwa czy też umożliwiać ich eksploitację.
W ostatnich latach zauważyć można rosnące zainteresowanie firm tematami bezpieczeństwa. Wiąże się to ze wzrostem świadomości zarówno podmiotów, jak i kadry decyzyjnej, dotyczącej zagrożeń dla danych, produktów, a co za tym idzie – także biznesów. Może to mieć również związek ze stale wzrastającą liczbą incydentów bezpieczeństwa, a także kosztem obsługi takich zdarzeń. Jedno jest pewne – zapewnienie ochrony danych oraz infrastruktury zgodnie z podstawowymi zasadami bezpieczeństwa (triada CIA) jest zadaniem ciągłym, a nie jednorazowym zdarzeniem, i wymaga zaangażowania specjalistów zarówno od strony bezpieczeństwa ofensywnego, jak i defensywnego.
Inżynieria wsteczna i analiza złośliwego oprogramowania jest czasem owiana aurą tajemniczości. Z jednej strony temat wydaje się intrygujący, ale z drugiej strony wysoki próg wejścia i ryzyko „zepsucia sobie czegoś” odstrasza potencjalnych adeptów od nauki. Celem tego artykułu – i kolejnych z tej serii – jest przybliżenie tego świata osobom dotychczas bardziej „wysokopoziomowym”. Postaramy się wytłumaczyć wszystko krok po kroku i unikać nadmiernych przeskoków myślowych. Będziemy również korzystać wyłącznie ze zdekompilowanego kodu – płynna znajomość asemblera nie będzie zatem wymagana (chociaż pozostanie mile widziana).
Rozmowa z Marcinem Bukowskim
Fast White Cat to nietypowy software house. Dlaczego nietypowy? Bo łączy w sobie ekspercką wiedzę software house’ów z nastawieniem na cel, jakim jest wysoka sprzedaż, najważniejsza dla firm e-commerce. To czyni z Fast White Cat e-commerce software house! Co więc robimy? Profesjonalnie budujemy sklepy internetowe w oparciu o platformę Magento 2 i kompleksowo je obsługujemy, aby bardzo dobrze pełniły swoją rolę – przynosiły zyski. Realizujemy projekty zarówno rozwojowe (budujemy sklepy od nowa), jak i utrzymaniowo-rozwojowe (wspieramy i udoskonalamy działające już platformy).
Wordpress jest najpopularniejszym oprogramowaniem do zarządzania treścią (CMS). Obecnie szacuje się, że ponad 40% (dane pochodzą ze strony w3techs.com) wszystkich stron internetowych wykorzystuje właśnie ten silnik – z dostępnym publicznie kodem źródłowym, napisanym w języku PHP. Z tego powodu Wordpress jest atrakcyjnym celem ataków. W tym artykule przyjrzymy się dwóm podatnościom z 2019 roku – CVE-2019-8942 oraz CVE-2019-8943, które wspólnie mogą doprowadzić do zdalnego wykonania kodu (Remote Code Execution, w skrócie RCE). Wagę tych błędów doceniono na międzynarodowej scenie, nominując je do prestiżowej nagrody PWNIE Awards.
Czy to na maturze czy na studiach – kalkulator jest uznawany za podstawowe wyposażenie. Dzisiaj trudno sobie wyobrazić życie bez niego. Były jednak czasy, gdy nie był szeroko dostępny – z uwagi na cenę traktowano go jako towar luksusowy. Jak dawano sobie wówczas radę?
Dzisiaj, kiedy bitcoin (BTC) po raz kolejny bije rekordy wycen, a wiele nowych osób dołącza do rynku kryptowalut, warto zadać sobie pytanie, czy każdy bitcoin ma taką samą wartość. Ktoś mógłby powiedzieć: „Ale jak to? Wystarczy wejść na dowolną giełdę albo portal podający cenę np. Coinmarketcap [1] i zobaczyć samemu. Jest tylko jedna wartość, która w danej chwili określa bitcoina, i nie ma żadnego rozróżnienia na poszczególne monety. Przecież to nie jest NFT!”