python

Preventing Flaky Tests and Brittle Tests

Flaky tests and brittle tests are two common pitfalls that make our tests unreliable and hard to maintain. In this post, I will illustrate these concepts wit...

Provision an Amazon EKS cluster with AWS CDK

Previously, I posted a tutorial on creating and configuring an Amazon VPC by using AWS CDK. All the examples in that post are based on L1 constructs to illus...

Property Based Testing with Hypothesis

What is Property Based Testing? Property based testing, which is known to be originated by QuickCheck, is a testing technique which randomly generates test c...

Consumer-Driven Contract Testing with Pact

Consumer-driven contract testing (or CDC for short) is a testing methodology that ensures that providers are compatible with the expectations that the consum...

Creating a VPC with AWS CDK

The AWS CDK(Cloud Development Kit) is an open-source framework to provision and manage the cloud resources using familiar programming languages.

Python Descriptors

A descriptor in Python is a class attribute which defines any of the special methods: __get__(self, obj, owner=None) -> value __set__(self, obj, valu...

Back to top ↑

os

Scheduling

A CPU scheduler is an operating system module that decides which process in the ready queue is allocated a CPU. It checks all of the tasks in the ready queue...

Thread Design Considerations

Thread Data Structures A user-level threading library has its own user-level thread data structure to represent threads in order to schedule and synchronize ...

pthreads

pthreads stands for POSIX Threads which is the de facto standard threading related API that operating systems need to support for thread managements. Almost ...

Threads and Concurrency

A traditional process has a single execution context that can only execute at one CPU at a given point of time. If a process can have multiple execution cont...

Processes

Definition A process is an instance of an executing program. It is also referred to as a “task” or “job”.

Operating System Overview

Definition An operating system, or OS, is just a software that abstracts and arbitrates the underlying hardware components in computer systems.

Back to top ↑

testing

Preventing Flaky Tests and Brittle Tests

Flaky tests and brittle tests are two common pitfalls that make our tests unreliable and hard to maintain. In this post, I will illustrate these concepts wit...

Provision an Amazon EKS cluster with AWS CDK

Previously, I posted a tutorial on creating and configuring an Amazon VPC by using AWS CDK. All the examples in that post are based on L1 constructs to illus...

Property Based Testing with Hypothesis

What is Property Based Testing? Property based testing, which is known to be originated by QuickCheck, is a testing technique which randomly generates test c...

Consumer-Driven Contract Testing with Pact

Consumer-driven contract testing (or CDC for short) is a testing methodology that ensures that providers are compatible with the expectations that the consum...

Back to top ↑

aws

Provision an Amazon EKS cluster with AWS CDK

Previously, I posted a tutorial on creating and configuring an Amazon VPC by using AWS CDK. All the examples in that post are based on L1 constructs to illus...

Creating a VPC with AWS CDK

The AWS CDK(Cloud Development Kit) is an open-source framework to provision and manage the cloud resources using familiar programming languages.

Back to top ↑

kubernetes

Provision an Amazon EKS cluster with AWS CDK

Previously, I posted a tutorial on creating and configuring an Amazon VPC by using AWS CDK. All the examples in that post are based on L1 constructs to illus...

Configuring GitOps with Argo CD

In this post, I am going to share my experience of configuring GitOps for a continuous deployment process. (FYI, you may refer to the following content for c...

Back to top ↑

algorithm

Scheduling

A CPU scheduler is an operating system module that decides which process in the ready queue is allocated a CPU. It checks all of the tasks in the ready queue...

Timsort

Most programmers would be familiar with some fundamental sorting algorithms such as bubble sort, selection sort, insertion sort, and merge sort. Then which a...

Back to top ↑

oop

Back to top ↑

refactoring

Back to top ↑

microservices

Consumer-Driven Contract Testing with Pact

Consumer-driven contract testing (or CDC for short) is a testing methodology that ensures that providers are compatible with the expectations that the consum...

Back to top ↑

networking

Understanding HTTP with netcat

Any web developer would know about HTTP buy may not be familiar with the exact syntax of it because it’s abstracted by the network libraries.

Back to top ↑

redis

Back to top ↑

c

pthreads

pthreads stands for POSIX Threads which is the de facto standard threading related API that operating systems need to support for thread managements. Almost ...

Back to top ↑

data structure

pthreads

pthreads stands for POSIX Threads which is the de facto standard threading related API that operating systems need to support for thread managements. Almost ...

Back to top ↑

kafka

Consumer-Driven Contract Testing with Pact

Consumer-driven contract testing (or CDC for short) is a testing methodology that ensures that providers are compatible with the expectations that the consum...

Back to top ↑

docker

Back to top ↑

serverless

Back to top ↑

cicd

Configuring GitOps with Argo CD

In this post, I am going to share my experience of configuring GitOps for a continuous deployment process. (FYI, you may refer to the following content for c...

Back to top ↑

review

Back to top ↑