---
title: "Mostafa Asgari (@mostafa-asg) | Hashnode"
description: "Software Developer. Read the latest articles by Mostafa Asgari on Hashnode."
url: "https://hashnode.com/@mostafa-asg"
---

@mostafa-asg

# Mostafa Asgari

@mostafa-asg · Joined May 2021

Software Developer

[Website](https://mostafa-asg.github.io/)

### [State Design Pattern: Let's build a circuit breaker](https://returnfn.com/state-design-pattern-lets-build-a-circuit-breaker?utm_source=hashnode&utm_medium=feed)

Definition of State pattern: The state pattern is a behavioral software design pattern that allows an object to alter its behavior when its internal state changes. This pattern is close to the concept of finite-state machines. The state pattern can ...

4 min read · [returnfn.com](https://returnfn.com/state-design-pattern-lets-build-a-circuit-breaker?utm_source=hashnode&utm_medium=feed)

[Aug 20, 2021](https://hashnode.com/posts/state-design-pattern-lets-build-a-circuit-breaker/611fd61fe404793819ca7c1d)

### [tunny: A goroutine pool for Go](https://returnfn.com/tunny-a-goroutine-pool-for-go?utm_source=hashnode&utm_medium=feed)

Tunny is a Golang library for spawning and managing a goroutine pool, allowing you to limit work coming from any number of goroutines with a synchronous API

3 min read · [returnfn.com](https://returnfn.com/tunny-a-goroutine-pool-for-go?utm_source=hashnode&utm_medium=feed)

[Jul 15, 2021](https://hashnode.com/posts/tunny-a-goroutine-pool-for-go/60f0a8e819e3e845d50d03e2)

### [Draw Github's contribution activity using Go](https://returnfn.com/draw-image-in-go?utm_source=hashnode&utm_medium=feed)

I wanted to know how image package works and how can I draw images in Go language. So I decided to draw Github's contribution activity that you find in each user's profile. Here is my contribution activity calendar in Github: Show me the code First...

3 min read · [returnfn.com](https://returnfn.com/draw-image-in-go?utm_source=hashnode&utm_medium=feed)

[Jul 3, 2021](https://hashnode.com/posts/draw-image-in-go/60e02d454f8e376422a7701d)

### [Let's build a concurrent file downloader in Go](https://returnfn.com/lets-build-a-concurrent-file-downloader-in-go?utm_source=hashnode&utm_medium=feed)

How to implement a concurrent file downloader in Golang

3 min read · [returnfn.com](https://returnfn.com/lets-build-a-concurrent-file-downloader-in-go?utm_source=hashnode&utm_medium=feed)

[May 30, 2021](https://hashnode.com/posts/lets-build-a-concurrent-file-downloader-in-go/60b3e1fc241c3d4add68af01)
