.NET, architecture, C#, CSharp, Programming

Wysyłanie maili z wykorzystaniem Handlebars

Niedawno musiałem zmierzyć się z budowaniem maili. Starym sposobem projektu było robienie tego w każdym miejscu, które wysyłało maila, tzn każdy projekt był właścicielem szablonu, a sam szablon był zdeployowany z kodem i wypełniany przez kod źródłowy string.Replace albo string.Format. Brzmi trochę creepy, prawda? To co z tym zrobić, żeby było uniwersalnie i bez jawnych …

.NET, architecture

REST vs gRPC vs GraphQL w .NET

W artykule przedstawię wprowadzenie do gRPC i GraphQL w .NET oraz omówię podstawowe różnice pomiędzy REST, gRPC i GraphQL. GraphQL Wprowadzenie GraphQL został zbudowany przez Facebook w 2015 roku. Twórcy określają go jako język zapytań do API. Rozwiązanie korzysta domyślnie z POSTów (GET też jest dostępny, ale domyślnie wyłączony). Wynika to z podejścia do request’ów. …

Uncategorized

HTTP/3 – nowa propozycja standardu

Na początku czerwca ogłoszono nową specyfikację protokołu HTTP – HTTP/3 w ramach organizacji IETF (RFC 9114). Jest to pierwsza, oficjalna “aktualizacja” od 2015 roku. Najważniejsze zmiany: wykorzystuje protokół UDP zamiast TCP korzysta z QUIC QUIC (Quick UDP Internet Connections) – protokół komunikacji warstwy transportowej, opracowany w Google w 2012 roku, oparty o UDP, pozwala na …

Social

DevConf.pl – krótka relacja z konferencji

Dzięki grupie WrocNet w dniach 1-2.09.2022 udało mi się załapać na konferencję DevConf.pl w Łodzi. Pierwsze starcie to dotarcie na czas na trasie Wrocław – Łódź. Opcji jest kilka: FlixBus, PKP albo własny samochód. Ta ostatnia jest dość nieekonomiczna biorąc pod uwagę cenę paliwa. Niestety opcji za wiele nie ma w rozsądnych godzinach – wygrał …

Software engineering

Pull requests/code review jako dobra praktyka – kit czy hit?

Przedwczoraj Radek Maziarka opublikował draft (?) artykułu “Wysoka jakość kodu bez code review” (dostępny tutaj). W artykule Radek stawia tezę “w przeważającej liczbie przypadków PR Review jest zabójcze dla szybkości dostarczania“. Czy zawsze tak jest bądź musi być czy to jednostkowe przypadki? Ponieważ Radek w swoim artykule wypisał listę powodów, dla których warto mieć review …

Social

Zwiedzanie Kopenhagi.

Tym razem o podróży zamiast o technologii. Lot Berlin-Kopenhaga liniami EasyJet był OK – 50 minut lotu, taki szybki skok. Powrót był odrobinę gorszy – 1:10 h opóźnienia, co skończyło się sprintem na spóźnionego busa (złapany chwilę przed odjazdem). Pomijając ten epizod, po przylocie łatwo można znaleźć biletomat do metra. Co prawda nie jest bardzo …

Social

Współpraca z Indiami – fakty i mity

W tym wpisie chciałbym się skupić na faktach i mitach związanych ze współpracą z Indiami. Nie będzie hejtu, tylko suche fakty – jak jest i dlaczego. Zaprezentowane przykłady są studium moich przypadków oraz moich znajomych. Możliwe, że masz inne doświadczenia i odczucia. Zacznijmy od popularności Indii jako kierunku outsourcingu usług IT – istnieją co najmniej …

Social

Po polsku czy po angielsku?

Po kilku latach prowadzenia bloga, chociaż może przy mojej małej aktywności powinienem napisać posiadania, postanowiłem zmienić formułę (a w zasadzie język). Tworząc bloga byłem przekonany, że pisząc po angielsku dotrę do dużo większej ilości osób co nie okazało się prawdą. Co prawda zgodnie z Google Analytics, docieram na cały świat, ale za to nie jest …

.NET, AWS, C#, CSharp, Programming

AWS DynamoDB – 3 ways to query and read results in .NET

In my very first post, I showed how to use DynamoDB in .NET to receive single result (post). Looking into the evolution of API and layers of abstraction, we have much more options to query AWS DynamoDB. Therefore we have 3 ways to query and read results which I will demonstrate in this post. The …

architecture

SQL vs NoSQL – when to use which?

My neighbour asked me today: SQL was built on integrity and consistency, and it scales up. NoSQL is designed for geographical distribution and speed, and it scales out. What I don’t get is why don’t we always use NoSQL for everything? When the traditional SQL db is more beneficial ? Typical SQL database is designed …