Siema!Tu Cezary

Programuję aplikacje, przemawiam do ludzi, piszę blogi pomimo dysleksji, rozbawiam ludzi na imprezach oraz słucham i się uczę. Niektórzy mówią, że jestem idiotą. Inni twierdzą, że zmieniłem ich życie. Zajrzyj tutaj i przekonaj się sam.

Zobacz o czym możesz przeczytać:

Programowanie

C#, ASP.NET, JavaScript, Java.
Jak programować?

Przemawianie

Zdolności komunikacyjne, opisywanie siebie.
Jak przemawiać?

Mój poprzedni webinar:

Aplikacja C# od Zera z CleanArchitecture, CQRS i Event Sourcing obrazek reklamujący wydarzenie

jakprogamować logo fanpage Cezary WalenciukProgramowanie

Zawodowo programuje w C# i za pomocą niego tworze biznesowe mechanizmy, które działają za kurtynami stron internetowych w ASP.NET. Oto ostatnie wpisy z mojego bloga.

Początki, Pierwsze kroki Programisty .NET, C# nie są wspaniałe

Początki programowania nie są łatwe. Ja, chociaż chciałem zostać programistą, od kiedy miałem 5 lat to miałem problemy ze zrozumieniem jak działają pętle i warunki logiczne w Pascalu. Tak, technicznie Pascal na studiach był moim pierwszym językiem programowania. HTML i CSS w liceum się nie liczy. 

Jak więc zacząć programować? Z

tego, co widzę po ruchu na moim od czasu do czasu ten wpis na temat porady jak zacząć programować w .NET jest często wyświetlany.

Kto by nie chciał mieć instrukcji jak zacząć swoją przygodę w programowaniu. Jaką książkę kupić? Jaki kurs na Udemy kupić za 20 zł? 

W jakim języku programowania się zakochać i potem szukać pracy tak, aby to cieszyło.  Jakie technologię pod ten dany język trzeba poznać, aby było dobrze.

Ja zakochałem się w C#? Naturalnie jako osoba, która programuje w C#  już prawie 10 lat zawodowo uwielbiam ten język programowania i go polecam. Jednakże wcale to nie znaczy, że nie ma z nim pewnych problemów. Sama platforma .NET też nie jest taka oczywista. 

Ten wpis może mnie kopnąć w przyszłości, ale będę z tobą szczery C# i jak platforma .NET ma swoje krzaczki i nie jest taka beginner friendly jakby się mogło wydawać.

Dark mode w Swagger UI

Ultra krótki wpis. Swagger UI jest dołączany domyślnie do aplikacji ASP.NET CORE i mnie to nie dziwi, gdyż tworzy on super formatkę do twojego REST API, która może służyć do testów, jak i do dokumentacji.

Zrobiłem o tym osobny wpis. A w tym wpisie właściwie to Ciebie tylko przekieruje do pliku CSS, który utworzy tryb ciemny w Swagger UI.

.NET Interactive Notebooks, Jupyter w Visual Studio Code

Czym są te interaktywne notatniki? Dlaczego ostatnio jest o nich głośnio? Dlaczego ta moda doszła do środowiska .NET? Zacznijmy od początku. Interactive Notebooks i rozwiązanie Jupyter zaczęły swoją przygodę w środowisku Python.

Python to fantastyczny język programowania do tworzenia sztucznej inteligencji i pięknych wykresów. Ktoś pomyślał, że fajnie by było tworzyć interaktywne dokumenty, które będą zawierać kod, który wygeneruje coś na tym dokumencie.

Dlaczego ta moda doszła do środowiska .NET? C# nie jest na razie językiem programowania stworzonym do pisania sztucznej inteligencji, czy tam do tworzenia kolorowych wykresów, ale Microsoft chciałby, aby tak było w przyszłości.

Tak C# jako drugi Python. W końcu chcemy, aby C# stał się popularny wśród wielu programistów.

Async, Task i Memoization, Precomputation w C#

W poprzednim wpisie omówiliśmy techniki z programowania funkcyjnego jak Precomputation i Memoization. Pytanie, jak te techniki mają się do kodu w C#, który jest asynchroniczny i opiera się na obiektach takich jak Task, które symbolizują w C# przyszłość.

Jak się domyślasz Memoizacja może być bardzo utrudniona. W poprzednim wpisie nawet zaznaczyłem, że same słowniki Dictionary nie są wielowątkowo bezpieczne.

Trzeba by było korzystać z innych słowników, które są bardziej bezpieczne jak ConcurrentDictionary

A co z Precomputation? Nie wiem czy wiesz, ale sam obiekt klasy Task wspiera tą filozofię aby nie wyliczać ponownie czegoś co już zostało zrobione.

dotnet repl : Pisanie kodu C#, F# w Command Line Interface

Okno, które daje możliwość pisania interaktywnego kodu w C# nie jest czymś nowym w .NET. Jednak zawsze brakowało czegoś co dało efekt wow.

Bądź szczerzy, ale umiejętności pisania kodu w konsoli to fajny bajer do powalenia na kolana innego programistę.

dotnet-reply , który domyślnie korzysta z Specter.Console pozwoli taki efekt tobie zrobić.

Precomputation, Memoization w C# : Programowanie Funkcyjne

Komputery są dobre w zapamiętywaniu rzeczy. Gdy patrzysz na jakąś aplikację biznesową to zapewne nie jesteś zafascynowany tym co ona może wyliczyć, ale co ona może zapamiętać. To główny cel naszych aplikacji wyświetlić wcześniej zapamiętane dane. 

Gdzie te dane są? W plikach, w bazach danych? 

Witaj w kolejnym wpisie z kursu programowania funkcyjnego w C#?

To niesamowite jak długo prowadzę ten cykl. 

W programowaniu funkcjonalnym koncentruję się na wykonywaniu samych funkcji niż na przetrzymywania stanów pośrednich. Funkcje w programowaniu funkcyjnym mają być czystymi funkcjami.

Funkcyjne programowanie polega na uniknięciu ukrytych wejść i wyjść jak:

  • Używanie Wyjątków, aby kontrolować przepływ programu
  • Funkcja nie modyfikuje stanu
  • Funkcja nie trzyma referencji do obiektu, który miałby być zmieniony
  • Funkcja nie zapisuje czegokolwiek w polach statycznych

Z drugiej strony pamiętanie stanów jest częścią aplikacji. Zawsze gdzieś będzie warstwa dostępu do danych. 

Mamy jednak kolejne ciekawe założenie programowania funkcyjnego. Zakłada ona, że raz wyliczona nie powinna zostać wyliczana ponownie. Możemy też założyć, że raz pobrana rzecz z bazy danych nie powinna być także odczytana ponownie do jakiegoś limitu czasu.

Czyli mówimy o Cache w naszej aplikacji o możliwości pamiętania tego, co już zrobiliśmy wcześniej aby nie robić czegoś ponownie z takim samym rezultatem.

Mamy dwa style zapamiętywania rzeczy i omówimy je w tym wpisie.

Uwierzytelnienie z JSON Web Token, Cebula z ASP.NET CORE, Swagger

Dziś na swoim fanpagu "JakProgramować" dostałem wiadomość, aby komuś pomóc jak napisać prostą aplikację, która ma wydzielone UI i REST API. Dodatkowo chcielibyśmy wykorzystać zasady Clean Architecture w tym projekcie tak, aby nasze warstwy były elastyczne. 

W sumie mam na ten temat mnóstwo prezentacji i prelekcji.

Jednak nie mam wpisu na ten temat. Postanowiłem wiec wyjąc aplikację demo, którą napisałem na prelekcję Warszawski Dni Informatyki. Omówimy więc taką aplikację i dodatkowo zastosujemy autoryzację przy pomocy JSON Web Tokenów.

Nawet taki krótki projekt wymaga dwóch wpisów. W tym wpisie skupię się na części Serwerowej, a w drugim napiszemy klienta Blazor, który przeczyta i sprawdzi ten token.

Samuraju, oto opis tej prelekcji do kodu demo:

Subscriptions, Subskrypcje w GraphQL z ASP.NET CORE

GraphQL ma możliwość  poinformowania swoich klientów, gdy zajdzie jakieś zdarzenie. Korzysta on z modelu subskrypcji.

W tym wpisie pokaże Ci jak to wszystko napisać w ASP.NET Core po stronie serwera i po stronie klienta. 

Kategorię, czyli o czym piszę

Zawodowo programuje w C# i za pomocą niego tworze biznesowe mechanizmy, które działają za kurtynami stron internetowych w ASP.NET. Oto ostatnie wpisy z mojego bloga.

Kursy i cykle na blogu programistycznym

Blog prowadzę od 2011 roku, więc naturalnie napisałem na nim mnóstwo cykli i kursów.

GraphQL klient i serwer z ASP.NET CORE

GraphQL to inne podejście do pisania i odczytywania REST API. Zamiast mnóstwa metod HTTP jak POST, GET, PUT, DELETE to ty piszesz zapytanie w postaci podobnej do JSON do jednej metody HTTP. GraphQL analizuje twoje zapytanie i wykonuje odpowiednią akcję.  Jak stworzyć takie API w ASP.NET CORE? Jak takie API potem odczytać? Zapraszam na ten cykl

Programowanie Funkcyjne C#

Wiesz, że programować obiektowe to nie cały świat. C# od wersji 4 do 9 staje się coraz bardziej językiem hybrydowym. Co to znaczy? Znaczy to, że można w nim programować funkcyjnie

Narzędzia z których korzystam

Oto lista programów, które pomagają mi przy pracy programisty i nie tylko. Obrazki w końcu trzeba formatować na bloga. Gdy robie webinary potrzebuje także pewnych ułatwiających narzędzi 

Aspect Oriented Programming w .NET

Czym jest AOP? Brzmi skomplikowanie, a tak naprawdę jest to prosta technika służąca do ponownego wykorzystywania kodu najczęściej stosowana ze wzorcem dekorator.

Nie samym programowanie, programista żyje

Oto lista cyklów o tematach nieprogramistycznych dla programistów

Listy od czytelników

Dzięki, za email. Kto by pomyśłał, że ktoś zadaje mi pytania. Oto cykl w którym otwarcie zaczynałem odpisywać na e-mail moich czytelników.

Karier programisty

Co zrobić, aby mieć szczęśliwe życie zawodowe. Czy jesteś świadomy tego co robisz? Czy w ogóle podejmujesz jakieś decyzję?Czy idziesz z myślą w stylu "jakoś to będzie".

Aktywny programista

Każdy ma 7 dni po 24 godziny do dyspozycji. Jak być produktywny? Jak wykorzystać swój czas jak najlepiej? Jak się nie wypalić?

Zarobki Programisty

Jako programista dużo zarabiasz. Teraz co z tymi pieniędzmi zrobisz? Spełnisz swoje marzenia z dzieciństwa i zalejesz się przedmiotami. Czy może kupisz mieszkanie na korzystyny kredyt

Toksyczność poglądów

Jak negatywna energia innych osób wpływają na Ciebie. Czy życie to niekończąca sie kupa? A gdzie tam. Masz prawo być szczęśliwym

jakprzemawiać logo fanpage Cezary WalenciukPrzemawianie

Po pracy zbieram wiedzę na temat przemawiania publicznego i dziele się z nią innymi. Jak się nią dziele? Przemawiając i pisząc. Oto ostatnie wpisy


Jak COVID
zmienił świat przemawiania
Wirtualna Scena
4 typy
charyzmy
według książki The Charisma Myth
Jordan Peterson i posprzątaj swój
pokój
Czy dobrze się czujesz w okolicy
Słuchanie
i rzeczywiste powody by nauczyć się słuchać
Sytuacje
5 obaw z którymi trzeba się
zmierzyć
by stać się lepszy
Pisać czy nie pisać mowy
Dlaczego
Zalety i wady obu podjeść
32 pomysłów na tworzenie
argumentów
Przegląd pierwszy

Kategorię w przemawianiu, czyli o czym piszę