Articles

I Love Technical Debt

I’m pretty sure we all know what technical debt is, attributed to Ward Cunningham in 1992, it basically states that there is no free lunch. But I love it. It makes us ship things quickly, validate them then refine them later. But it comes with a condition…

I Love Technical Debt Read More »

System Models in Distributed Systems

The foundation of every algorithm in a distributed system is on what kind of underlining hardware system it will execute on. In practice, nodes (physical or virtual machines) and communication links between them (the physical network layer), can behave in a variety of ways. So for an algorithm to be correct, we need to assume what properties the underlining systems will have.

System Models in Distributed Systems Read More »

Cache Coherence

In order for a CPU to see all the different memories as a single fast and large memory component (see memory hierarchy) and to boost the performance by not going to the main memory to fetch the data, modern processors rely heavily on caching. Processors have multilevel caches after which, in case of a cache

Cache Coherence Read More »