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, 

By yuseferi, 12 July, 2018

It's been a long time since last year I have written nothing, busy on life and busy on work make me lazy to write about my experiences, actually, I enjoy sharing my knowledge and experiences with others and learn from  their knowledge and experiences as well,I  come back to write you about the new experiences  I've faced since last  six month. 

Stay with me, I have good articles with you, I want to write about  Microservice architecture, Data Engineering, cool tools in Machine learning and Data Engineering,

 

 

By yuseferi, 28 January, 2017

After several years working with Bash today, I decide to migrate to ZSH, 
What is ZSH?

The Z shell (zsh) is a Unix shell that can be used as an interactive login shell and as a powerful command interpreter for shell scripting. Zsh is an extended Bourne shell with a large number of improvements, including some features of bash, ksh, and tcsh.

By yuseferi, 26 January, 2017

what is Heroku? It’s a service for developers eager to get their applications online without having to worry about infrastructure details. Metered, pay-as-you-go Cloud Computing services come in all kinds of flavors. Infrastructure as a Service (IaaS) offerings like AWS allows enterprises to shift their entire operations away from traditional data centers. The downside is that you’ll have to manage networking and provisioning yourself.