CategoryBez kategorii

[LIVE] – Jak stać się lepszym programistą C?

W poniedziałek (21.09) zapraszam Cię na pierwszy po wakacyjnej przerwie LIVE na YouTube. Tematem będzie “Jak stać się lepszym programistą C?”.

W trakcie tego live porozmawiamy sobie o umiejętnościach potrzebnych w pracy programisty C. Dowiesz się między innymi:

  • W jaki sposób te umiejętności podnosić i na czym szczególnie się skupić.
  • Czym się kierować przy wyborze dobrych praktyk i jak je weryfikować.

Pokażę również trochę fajnego kodu, który możesz wykorzystać w swoich projektach. Zejdziemy też sobie niżej do poziomu asemblera, żeby zobaczyć kod utworzony przez kompilator.

Pojawi się też więcej informacji o kursie “C dla Zaawansowanych” i jedno ważne ogłoszenie. Będzie też czas na pytania i odpowiedzi.

Krótko mówiąc – będzie ciekawie!

30 devstories

Od jakiegoś czasu biorę udział w akcji #30devstories i publikuję nagrania na YouTube. Chodzi w skrócie o to, żeby nagrać 30 filmików związanych z różnymi aspektami programowania.

Na razie opublikowałem 6 odcinków:

Więcej o samej akcji mówię tutaj:

Kolejne odcinki znajdziecie na moim kanale YouTube.

Jeżeli również chcesz wziąć udział w akcji – weź kamerę i podziel się swoimi przemyśleniami z pracy jako programista!

Stream o IDE i debugerach sprzętowych

Ostatnio na live omawiałem IDE i debugery sprzętowe w embedded. Nagranie jest dostępne tutaj:

Pod nagraniem są też timestampy i linki. Wyszło tego bardzo dużo więc lepiej to będzie zebrać we wpisie. Od razu zapraszam również na kolejny live w czwartek 28 maja o 20:00, gdzie tematem będą języki programowania w embedded.

Continue reading

Compiler explorer – Twój najlepszy przyjaciel w rozmowach o wydajności kodu

W artykułach o sprytnym kodzie i mikrooptymalizacjach postawiłem tezę, że często większa wydajność kodu, którą usprawiedliwiamy zmniejszenie czytelności, jest fikcją. Aby to stwierdzić potrzebujemy danych. Tymi danymi są czas wykonania aplikacji i kod asemblerowy generowany przez kompilator. Dzisiaj opiszę narzędzie przeglądarkowe pozwalające nam analizować właśnie kod asemblerowy. A jest nim Compiler Explorer.

Continue reading

Mikrooptymalizacje są bez sensu

Poza próbą napisania jak najsprytniejszego kodu robiącego wszystko w jednej linijce o czym pisałem ostatnio, drugim największym grzechem programistów C jest próba optymalizowania wszystkiego i wszędzie. Jest to koronny argument usprawiedliwiający nieczytelny kod. A ta optymalność bardzo często jest fikcją. Nie jest poparta żadnymi pomiarami dla naszego konkretnego przypadku. Bazuje tylko na legendach i przekazach ustnych kultywowanych przez kolejne pokolenia programistów C. O ile kiedyś – w zamierzchłych czasach – te zasady miały jakiś sens, teraz najczęściej kompilatory mogą wykonać tą robotę za nas. Albo nie musimy w ogóle się tym przejmować, bo już nam wystarczy RAMu. A my możemy cieszyć się kodem, który da się rozczytać.

Continue reading

Zapowiedź BitConf 2019, do wygrania darmowe bilety

Zapraszam Was na 20 września 2019 do Bydgoszczy, gdzie odbędzie się konferencja BitConf, na której będę miał przyjemność wystąpić. Jedna ze ścieżek będzie dotyczyła systemów embedded. To święto dla naszej społeczności, ponieważ do tej pory mimo, że firm działających w branży było coraz więcej, niechętnie dzieliliśmy się publicznie naszymi doświadczeniami na konferencjach w Polsce. Zdarzały się pojedyncze wystąpienia, jakieś mniejsze eventy, ale nie przypominam sobie całej ścieżki na temat embedded. BitConf 2019 będzie więc nie tylko okazją do posłuchania na żywo osób z branży, ale również do wymiany doświadczeń w kuluarach i budowania społeczności. Pokażmy więc, że jest zainteresowanie taką tematyką.

Konkurs

Mam do rozdania dwa darmowe bilety na BitConf. Z tej okazji przygotowałem mały konkurs. Aby wziąć w nim udział należy:

  1. Zapisać się na Newsletter ucgosu.pl – >>LINK<<
  2. Opisać jakąś ciekawostkę, projekt (najlepiej własny), newsa itp. związane z systemami embedded i wysłać do mnie mailem
  3. Jedna osoba może wysłać kilka zgłoszeń
  4. Ostateczny termin wysyłania zgłoszeń – piątek 23.08.2019 godz. 23.00

Autorów dwóch najciekawszych ciekawostek nagrodzę biletami na BitConf. Dodatkowo ciekawostki opublikuję na blogu albo na Facebooku. Dlatego najlepiej w mailu dodajcie od razu informację o autorze, którą mogę umieścić we wpisie (imię i nazwisko/nick/anonim, czy chcecie dodatkowo mail, adres do strony/githuba).

Tablice przyspieszające wyszukiwanie elementów

Kolejnym – po Lookup Table – tematem związanym z tablicami, którym się zajmę jest przyspieszenie wyszukiwania elementów. Zwykle nasze możliwości w tym zakresie ograniczają się do podawania indeksu tablicy albo wyszukiwania w pętli. Możemy jednak przyspieszyć te operacje wykorzystując dodatkowe tablice z mapowaniem indeksów, albo skorzystać z hash table.

Continue reading

Interfejsy w C

Poprzednio pisałem o obiektowości w C, dzisiaj kolej na kolejny wzorzec zapożyczony z języków wyższego poziomu – interfejsy. W tym artykule opiszę jak je implementować w C i jakie dzięki temu możemy odnieść korzyści.

Continue reading

© 2020 ucgosu.pl

Theme by Anders NorénUp ↑