Go

By yuseferi, 2 January, 2023

if you want to deal with google clould clients directly in Golang, https://github.com/googleapis/google-cloud-go is most common option for you.
it has several different clients that give this possibility to work with most of the google cloud services.

we used this package in one of our project, particulary Bigquery client.  the documentation is good.

This is  a sample: 

By yuseferi, 12 July, 2022

In a large scale miscroservice architecture there are lots of  comunication between services ( Sync and Asyc).
After several days discussion and investigation finally we decided to use "Google Protocol Buffers" as a serializer in our infra.

I would like to share my experience with you.

What is protobuf? 

In Google’s own words: “Protocol buffers are Google’s language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler.”

By yuseferi, 28 June, 2022

it's been a long time since I haven't written here on my blog, and since that time lots of things has been changed in my job.
it's been almost 3 years I've been writing Go codes and we have multiple programming languages in our team that developers use them.
I don't want to go deep into this part now because I would like to write a post about it, about the time I loved concurrency and thread management in C++ a long time ago but due to lake ( or weakness) of multi-threading in PHP, I missed it for a long time.

By yuseferi, 28 January, 2022

Although it's not an idiom in Golang to do method changing in some cases that would be useful if you chain your method.

The reason behind it why it's not idiomatic is different exception handling, in another programming language in terms of exceptions in one of the chan functions it throws the exception and other methods won't get run. 
in this article, I'm going to show how we can implement it in Golang. 

let's suppose that I want to have an app registry that wanted to add clients dynamically,