Page 6 of 22

Jak korzystać z Lookup Table?

Pod wpływem doskonałej książki Code Complete autorstwa Steve’a McConella postanowiłem napisać o zastosowaniach tablic w C. Nie chodzi mi tu oczywiście o podstawy, składnię itp. Chociaż jak to w C, nawet tutaj znalazłoby się kilka niuansów. Mam zamiar zająć się bardziej zaawansowanymi tematami takimi jak lookup table, hash table, maszyny stanów, czy polimorfizm na tablicach wskaźników na funkcje. Wyszło tego sporo, dlatego podzieliłem tekst na kilka wpisów. Na pierwszy ogień idą Lookup Table.

Continue reading

Devoxx Poland 2019 – relacja

W Krakowie między 24 a 26 czerwca 2019 odbywała się konferencja Devoxx Poland. To jedna z największych konferencji w regionie. Uczestniczy w niej około 2500 osób, a przez trzy dni występuje ponad stu prelegentów. W tym Venkat Subramaniam, Sandro Mancusso czy ludzie z Google, Thoughtworksa, czy Red Hata. Tematyka skupia się wokół Javy, ale jest też co nieco o security, chmurze, czy machine learningu. Do tego tematy dla każdego programisty takie jak architektura aplikacji i umiejętności miękkie. Dlatego cieszę się, że mogłem wziąć w niej udział, a nawet wystąpić ze swoją prezentacją o safety-critical. Minęło już parę dni od tego wydarzenia, pora więc na relację.

Continue reading

Ada Europe 2019 – prezentacje

W ostatnim poście dzieliłem się wrażeniami z konferencji Ada Europe 2019, która miała miejsce 12 i 13 czerwca w Warszawie. Tekst wyszedł dosyć długi i zabrakło w nim miejsca na opis poszczególnych prezentacji, które dodaję dzisiaj. Podczas konferencji można było między innymi usłyszeć o wojskowym projekcie tak tajnym, że nie można o nim mówić, o rakiecie Ariane 6, czy o nowościach w Ada 2020. Zapraszam do lektury!

Continue reading

Ada Europe 2019 – relacja

W zeszłym tygodniu (12-13 czerwca) byłem w Warszawie w Instytucie Lotnictwa na Ada-Europe. Konferencji poświęconej językowi Ada i systemom safety-critical. Wszystkich tematów, które chciałbym zawrzeć w relacji wyszło bardzo dużo. Dlatego podzielę ją na części. W tym wpisie skupię się na ogólnych wrażeniach z konferencji i różnych ciekawostkach technologicznych w systemach safety-critical. Najciekawsze prezentacje omówię w osobnym wpisie.

Continue reading

Co serial Czarnobyl ma wspólnego ze sztuczną inteligencją?

Ostatnio nie miałem weny na pisanie o technicznych tematach (co widać po ostatnim braku aktywności). Dlatego dzisiejszy wpis będzie się mocno różnił od ostatnich. Punktem wyjścia będzie dla mnie bijący ostatnio rekordy popularności serial „Czarnobyl”. Jeżeli jeszcze go nie widziałeś – koniecznie musisz to nadrobić. Serial jest świetnie zrealizowany, trzyma w napięciu i zachęca do poznania również informacji historycznych dotyczących tej katastrofy. Przy okazji serialu pojawiło się na ten temat sporo materiałów. Przyczyny wypadku, do których należały wady konstrukcyjne, błędy ludzkie, czy wadliwe procedury czynią go także ciekawym z punktu widzenia systemów safety-critical. Ale ja dzisiaj skupię się na czymś zupełnie innym.

Continue reading

Jak uzyskać obiektowość w C?

W języku C nie mamy czegoś takiego jak klasy. Jeżeli chcemy pisać programy w sposób obiektowy musimy wykorzystać w tym celu struktury i funkcje. Traktowanie modułów większego systemu jako obiektów zawierających pewne dane i umożliwiających operacje na nich jest sposobem na ukrycie szczegółów implementacyjnych. Abstrakcje pomagają zapanować nad złożonością projektów. Dlatego mimo, iż obiektowość w C musimy emulować, chętnie sięgamy choćby po niektóre elementy obiektowości. W tym wpisie pokażę jak poprawnie implementować obiektowość w C.

Continue reading

Generowanie plików runtime Ady – część 2

W poprzednim wpisie opisałem proces generowania runtime Ady dla STM32F401. Myślałem, że to już koniec przeprawy z konfiguracją, ale okazuje się, że nie. Pliki wygenerowane zgodnie z instrukcją z poprzedniego postu wymagają jeszcze małej modyfikacji. Poza tym jeżeli chcemy skorzystać również z Ada Drivers Library czeka nas kolejna runda walki ze skryptami. Udało mi się doprowadzić do stanu, gdzie program na STM32F401 się kompiluje, uruchamia na debugerze i poprawnie steruje peryferiami. Z tego postu dowiesz się jakie kroki musiałem wykonać, żeby do niego dojść.

Continue reading