Dołącz do kursu “C dla Zaawansowanych”!

W kursie online “C dla Zaawansowanych” uczestniczy już 128 osób, a od wczoraj jest kolejna szansa, aby wziąć w nim udział. Wszystkie potrzebne informacje znajdziesz na stronie cdlazaawansowanych.pl.

“C dla Zaawansowanych” to ponad 27 godzin nagrań wideo podzielonych na 13 modułów, które poruszają całe spektrum tematów potrzebnych programiście C.

Dzięki niemu:

  • Dogłębnie poznasz składnię C i zobaczysz, co się dzieje pod maską – jest bardzo dużo kompilatora online
  • Poznasz dobre praktyki i antywzorce, aby pisać czytelnie i efektywnie
  • Zdobędziesz wiedzę o całym toolchainie – kompilator, linker, biblioteki statyczne, biblioteka standardowa, rozszerzenia kompilatora
  • Poznasz techniki i narzędzia ułatwiające codzienną pracę w większych projektach.

Na stronie kursu znajdziesz pełną agendę i przykładowe lekcje. Są tam również opinie osób, które przeszły kurs.

Continue reading

Stań się lepszym programistą C! – webinar we wtorek o 20:00

We wtorek 8 czerwca o 20:00 zapraszam na webinar:

“Stań się lepszym programistą C! – wskazówki ułatwiające codzienną pracę z kodem”

Czego możesz się spodziewać?

Pokażę kilka mniej znanych elementów składni C. Zobaczymy sobie w kompilatorze online, jakie są skutki pisania kodu zawierającego undefined behavior. Zobaczymy sobie ciekawe opcje zależne od poszczególnych kompilatorów i zastanowimy się jak je wykorzystać w praktyce.

Zobaczysz jak znajomość języka C, kompilatora i procesora może nam pomóc rozwiązać codzienne problemy w projektach.

Podczas webinaru wystartuje również trzecia edycja kursu “C dla Zaawansowanych”!

Zapraszam!

Książki dla programisty embedded – live na YT

Dzisiaj o 20:00 zapraszam na YT na live o książkach dla programisty embedded:

A w nim odpowiedzi na pytania:

  • Jakie książki wybrać do początkowej nauki?
  • Jakie książki polecam na później?
  • Jakie książki polecam o testach, architekturze, prowadzeniu projektów itd.
  • Jakie do C? A jakie do C++?
  • Jakie o elektronice?
  • Z czego sam się uczyłem?
  • Czy trzeba czytać książki od deski do deski?

Większość książek programistycznych pomija kwestie sprzętowe, a o samym embedded literatura jest dużo uboższa. Dlatego będzie też o tym jak odnosić informacje w książkach do naszej konkretnej sytuacji.

Migracja projektu z STM32 Cube IDE do CMake – live na YT

Problemy z konfiguracją IDE to prawdziwa zmora. Mogą objawiać się na różne sposoby – na przykład:

  • Wiesz jak coś ma działać, ale nie umiesz wyklikać tego w wizardzie.
  • Przenosisz projekt na inny komputer i się nie kompiluje.
  • Chcesz uruchomić kompilację bez instalowania IDE i nie wiesz jak.

Narzędzia się zmieniają, ale problemy pozostają te same. Musimy umieć sobie z nimi radzić.

Dlatego właśnie dzisiaj o 20:00 zapraszam na live na YouTube. Tematem będzie Migracja projektu z STM32 Cube IDE do CMake. A przy okazji pokażę co IDE robią pod maską.

Continue reading

Jak dodać analizę statyczną w CMake?

Języki takie jak C i C++ zakładają, że programista wie co robi i pozwalają mu na wiele. Są bardzo konserwatywne w zgłaszaniu błędów i warningów. Nieraz obraca się to przeciwko programiście, dlatego sami aktywujemy dodatkowe flagi warningów podczas kompilacji i używamy różnych narzędzi do analizy kodu.

Ale do narzędzi takich jak cppcheck czy clang-tidy musimy podać te same pliki źródłowe, include, define co w głównym buildzie. Konfiguracja jest dosyć trudna. Na szczęście system budowania może nam w tym pomóc. W końcu posiada wszystkie informacje przekazywane kompilatorowi. Dzisiaj zobaczymy jak skonfigurować analizę statyczną w CMake.

Continue reading

CMake – automatyczna obsługa podprojektów z gita

W poprzednim odcinku skonfigurowaliśmy sobie większy projekt. Mieliśmy oddzielne targety na poszczególne podprojekty. Dzięki temu dało się na przykład utworzyć bibliotekę statyczną, czy dodać bibliotekę header only. Dzięki odpowiedniej konfiguracji byliśmy w stanie raz skompilować podprojekt i używać go w wielu targetach. Teraz pójdziemy o krok dalej. Nasze podprojekty będą automatycznie ściągane z własnych repozytoriów.

W przykładzie użyje repo na GitHubie, ale równie dobrze można użyć innych systemów kontroli wersji, serwerów, czy nawet lokalnych plików. Zalety takiego rozwiązania w większych projektach są nieocenione. Po pierwsze możemy sensownie zarządzać aktualizacjami zewnętrznych bibliotek, a po drugie możemy tworzyć własne reużywalne biblioteki z aktualizacjami propagowanymi na wszystkie projekty.

Continue reading

CMake – jak używać w większych projektach?

We wcześniejszym artykule pokazałem jak napisać prosty skrypt CMake. Za jego pomocą możemy zrealizować najważniejsze zadania stawiane skryptowi budowania. A więc możemy dodawać pliki źródłowe, headery, flagi kompilacji, czy definicje preprocesora.

Na początek taki skrypt jest jak najbardziej w porządku. Robi to co powinien i pozwala nam oswoić się ze składnią i działaniem CMake. Ale to nie jest najlepszy sposób pisania skryptów CMake i kiedy będziemy chcieli skorzystać z bardziej zaawansowanych opcji – możemy mieć problemy.

Dlatego w dzisiejszym wpisie zobaczymy jak pisać skrypty CMake zgodnie ze sztuką i jakie z tego będziemy mieć korzyści. Dowiemy się też dlaczego w skryptach CMake powinniśmy zawsze korzystać z komend z prefixem target_.

Continue reading

Rekrutacja w embedded – live na YT

W poniedziałek o 20:00 zapraszam na YouTube na kolejny live! Porozmawiamy sobie o rekrutacji na programistę niskopoziomowego. Będzie między innymi o tym:

  • Jakich pytań możesz się spodziewać?
  • Co jest brane pod uwagę przy ocenianiu odpowiedzi?
  • Co musisz umieć aplikując na juniora/mida/seniora?
  • Kiedy aplikować do swojej pierwszej pracy?
  • Jak w embedded radzą sobie osoby, które się przebranżowiły?
  • Czym różni się rekrutacja zdalna od klasycznej?
Continue reading

Rusza druga edycja “C dla Zaawansowanych”!

Na wczorajszym webinarze ogłosiłem drugą edycję kursu online “C dla Zaawansowanych”. To jest pełne kompendium dla osób chcących zajmować się zawodowo programowaniem niskopoziomowym. Dzięki temu kursowi:

  • Dogłębnie zrozumiesz składnię C. Pokażę Ci mniej znane fakty, dobre praktyki i antywzorce. Pozwoli Ci to pisać bardziej czytelnie i uodpornić się na różne rodzaje błędów.
  • Zapanujesz nad kompilatorem, asemblerem i pamięcią. Dowiesz się, co się dzieje przed funkcją main, czy jak możemy kontrolować pamięć za pomocą skryptów linkera. Pozwoli Ci to również podejmować lepsze decyzje dotyczące optymalizacji.
  • Poznasz narzędzia i techniki usprawniające pracę w większych projektach.

Możesz się zapisać na cdlazaawansowanych.pl. Znajdziesz tam również wszystkie najważniejsze informacje takie jak:

  • Agenda,
  • Przykładowe lekcje,
  • Odpowiedzi na najczęstsze pytania,
  • Cena kursu.

W pierwszej edycji wzięło udział 66 osób i na stronie znajdziesz również ich opinie.

Continue reading

Jak pisać bardziej zrozumiały kod w C? – webinar

W środę 24 lutego o godzinie 20:00 organizuję webinar:

Jak pisać bardziej zrozumiały kod w C? (który po prostu działa)

Aby nieprzegapić startu – możesz się zapisać korzystając z linka powyżej.

UPDATE: Jest już nagranie z webinaru:

Continue reading

© 2021 ucgosu.pl

Theme by Anders NorénUp ↑