RSSAmplifier

Blog

Home on Batuhan Aydın

Recent content in Home on Batuhan Aydın

batuhanaydin.devRSS feed ↗9 posts

Latest posts

Better PR Process

My notes from the book “Looks Good to Me”, especially focusing on actionable steps. Pull Request 1. Titles The first the reviewer sees is the title, it should be short enough but enough to understand the answer of “what” the PR is about. On top of that, just like the Conventional Commits, you should prefix it with correct category. feat(project or component name): short…

Notes - Grokking Continuous Delivery

This post is my summary from the book Grokking Continuous Delivery. Continuous integration is the process of combining code changes frequently, with each change verified on check-in. Continuous delivery is the collection of processes that we need to have in place to ensure that multiple software engineers, writing professional-quality software, can create software that does what they want. It aims…

Integration Test in .NET using TestContainers

Integration tests aim to ensure that the integrated parts of the application(such as database and your app) work together as expected. They’re even more important if you are using Dapper, cause what if you made a mistake in your query? When you mock the database, you will not able to figure out the error. We need 4 things to prepare integration tests using test containers in .NET: A custom…

Notes - Practical Event-Driven Microservices Architectures

Encrytion & GDPR If you are keeping user information, and you need to remove it for legal reasons, it might be harder to do if you’re using event-sourcing. In that case, you can use a key management service to encrypt data, and just remove the key from there when you want it to be removed. So when you don’t have the key, the data will be unaccesible anyway. Definitions Command:…

Dapper Bulk Operations

If you are using Dapper, and you need to do bulk operations to reduce I/O time, there isn’t many sources how. In this post, we’ll explore some of our options. SqlBulkCopy SQLBulkCopy is a .NET framework class that provides a fast and efficient way to copy large amounts of data from a source data store to a destination SQL Server database table. It is designed to quickly transfer large…

March 2023

The notes of the month. Practical Optimizations by Jason Booth In his video, as an experienced game developer, he talks about data-oriented degign and use cases in some of the projects he took part it. However, not everything was applicaple, as i see Unity packages are unmaintaned for .NET. Some of the things I noted was Keep data together. Meaning instead of having thousands of objects, spreaded…

Quotient Filter

Definition A quotient filter is a probabilistic data structure used for efficient set membership testing. It is similar to a Bloom filter, but it provides exact false positive rates and can also support deletions. The basic idea behind a quotient filter is to divide a large hash table into a fixed number of small, equally sized cells. Each cell contains a quotient and a remainder value, which are…

High Performance C#

1. Span Span is a simple data structure to reference some data, it reminds me Rust&rsquo;s slice which holds a reference and length. Span also has indexer, but the idea is same. public readonly ref struct Span<T> { private readonly ref T _pointer; private readonly int _length; ... } Let&rsquo;s say you&rsquo;re making some operations on some strings, such as splitting or getting substring. Since…

About me

Hi. I&rsquo;m Batuhan(Batu in short), a software engineer located in Turkey, currently working as a backend engineer at Nesine Turkey&rsquo;s one of the biggest betting provider, previously worked at Broadage Sports(Sport Data provider) and Kaizen Technology(Loyalty Management). I use C#(.Net && Orleans) professionally, F# for hobby and fun. To do our jobs good, we need to be constantly learning…