Parsowanie kodu źródłowego

Kompilator lub interpreter przetwarza kod źródłowy w formie tekstu, aby wyprodukować kod wynikowy. Ponieważ program nie rozumie “po polsku” to język programowania musi mieć odpowiednią formę, która następnie posłuży do wygenerowania algorytmu, który ten plik tekstowy przekształci na inną formę, łatwo rozumialną przez maszynę, czyli zazwyczaj abstrakcyjne drzewo składni. Ten process przetwarszania tekstu nazywamy parsowaniem.

Czytaj dalej Parsowanie kodu źródłowego

Mój własny język programowania

Na Językach i Paradygmatach Programowania mamy duże zadanie zaliczeniowe - napisać interpreter do jakiegoś języka programowania. Postanowiłem skorzystać z okazji i zaprojektować swój własny język programowania, któremu nadałem nazwę Functional Script. Interpreter mamy napisać w Haskellu (jak zacząć pracę z Haskellem?). Poniżej możecie przeczytać opis mojego języka.

Czytaj dalej Mój własny język programowania

Łączenie kilku dysków w Storage Pool

Czasem się zdarza, że zaczyna nam brakować miejsca na dysku. Mając pod ręką kilka starych dysków twardych o małych pojemnościach, możemy je połączyć w jedną dużą przestrzeń dyskową przy użyciu Storage Spaces w systemie Windows. Ja akurat nie miałem fizycznego dysku, więc poniższy opis zawiera również tworzenie dysków wirtualnych VHD.

Czytaj dalej Łączenie kilku dysków w Storage Pool

Bezpieczeństwo twojej aplikacji webowej

Podczas Warszawskich Dni Informatyki 2018 miałem okazję poprowadzić warsztat-prezentację o bezpieczeństwie aplikacji webowych. Mój cel - zastraszyć słuchaczy, aby zawsze mieli z tyłu głowy, że trzeba pamiętać o zabezpieczeniach, już od początku pisania aplikacji, a nie na sam koniec, bo jest to bardzo poważna sprawa.


Czytaj dalej Bezpieczeństwo twojej aplikacji webowej

WannaCry

Na przedmiocie Bezpieczeństwo Systemów Komputerowych miałem bardzo ciekawe zadanie, które wykorzystywało atak na protokół RSA oraz nielosowe dobieranie klucza do szyfrowania symetrycznego. A celem było odzyskanie plików, które padły ofiarą spreparowanego ataku WannaCry.

Czytaj dalej WannaCry

Linux podłączony do Active Directory?

Od niedawna zacząłem pracować z systemami opartymi o Microsoft Windows. I to nie po prostu pecetami, tylko systemami z siecią serwerów, tak jak to często bywa w firmach. Wtedy głównym źródłem danych logowania użytkowników jest domena Active Directory. Poniżej opiszę rewelacyjne narzędzie, do podłączenia maszyny Linuxowej do AD.

Przy okazji zerknij na mój post dla APN Promise na podobny temat.

Czytaj dalej Linux podłączony do Active Directory?

Dalsza przyszłość mojego bloga

Strasznie ciężko żyć z myślą, że nasze hobby stało się obowiązkiem. Przez ostatni miesiąc nie wypuściłem ani jednego posta, częściowo ze względu na studia i sesję, a częściowo ponieważ rozpocząłem tą serię .NET Web. Z jakiegoś powodu nie chce mi się na razie jej kontynuować, ale za każdym razem kiedy myślami wracałem do bloga, dochodziłem do ściany “powinienem napisać kolejny post z tej serii” mimo, że mam inne tematy, które mogą się tu pojawić. I tak o to nic się nie pojawiało.

Więc zmieniam teraz podejście. Moje posty często będą krótsze, z różniejszych dziedzin -> bezpieczeństwo, programowanie funkcyjne, Windows, Linux, .NET, inne języki, itd. No i nie będzie żadnych serii.

Czytaj dalej Dalsza przyszłość mojego bloga