📌 SOLID
· ☕ 2 min read · ✍️ t1
The SOLID design principles are a set of guidelines for writing maintainable and scalable software.

Array and slice in Go
· ☕ 2 min read · ✍️ t1
Arrays are used when the number of elements is known and constant. Slices are preferred when you need a sequence with a dynamic size or when you need to take advantage of Go's built-in functions for handling collections.

Close Channel in Go
· ☕ 1 min read · ✍️ t1
Closing a channel can be a good practice to prevent unnecessary blocking or resource leaks, but it's not mandatory.

Channels and mutexes in Go
· ☕ 7 min read · ✍️ t1
Channels and mutexes in Go serve as tools for managing concurrency but are suited for different scenarios based on the nature of the problem you're solving. Choosing between them depends on what you aim to achieve in terms of synchronization, communication, and the architectural patterns you prefer in your concurrent applications.

Repository
· ☕ 10 min read · ✍️ t1
The repository design pattern is a way to abstract the data access logic of an application, allowing the business logic to depend on a simple interface for storing and retrieving data without having to worry about the details of the underlying storage technology. It promotes separation of concerns and can make the code more reusable and testable.

Concurrency and parallelism in Go
· ☕ 3 min read · ✍️ t1
Concurrency and parallelism are two related concepts that are used to describe the ability of a program to perform multiple tasks at the same time.

GraphQL in Go
· ☕ 2 min read · ✍️ t1
GraphQL is a query language for your API that allows clients to request specific data and enables the API to return only the requested data, reducing the need for multiple round trips and over-fetching of data.

REST API in Rust
· ☕ 2 min read · ✍️ t1
Web service that follows the principles of REST (Representational State Transfer) architecture.

Singleton pattern
· ☕ 1 min read · ✍️ t1
The singleton pattern ensures that a class has only one instance and provides a global access point to it.

Hexagonal in Rust
· ☕ 2 min read · ✍️ t1
The hexagonal architecture, also known as the ports and adapters architecture, separates the business logic of an application from the infrastructure concerns, allowing the application to be tested and deployed in different environments.

Decorate pattern
· ☕ 2 min read · ✍️ t1
The decorator pattern dynamically adds behavior to an object by wrapping it in a decorator object.

Factory pattern
· ☕ 3 min read · ✍️ t1
The factory pattern defines an interface for creating objects in a super class, but allows subclasses to alter the objects that will be created.

Builder pattern
· ☕ 2 min read · ✍️ t1
The builder pattern separates the construction of a complex object from its representation, allowing the same construction process to create different representations.