Distributed Systems

Old blog

Projects

distributed systems learnings.

Kafqa

Opensource tool to test kafka clusters on performance, testing the flow of events and kafka-mirror setup.

Beast

Tool to consume from Kafka and store in Bigquery (opensource).

Pet Projects

Web app for connecting and networking in tech communities. Lunchclub for tech meetups. https://revoir.netlify.app/

Gcloud-Client

Utility cmd application wrapper around gcloud compute to add ssh keys to compute machines with filter. (golang) code

Mirror

An echo server you could run locally to view the request data. You could add filter on methods, url (body, regex yet to do) and see it. (golang) code

Dum-E

Helper shell scripts - which is of use at times, and at times needed the most. Just like stark’s dum-e

Chiru

Flying crazyflie quadcopter without controller, and using laptop like we do in game was absolute fun. seeing both hardware and software play together and seeing action, we should do it often.

code video presented in pycon 2016

DevMacSetup

Everytime i had to setup laptop fresh, it was a big task, with ansible automated the requirements, mostly for me :) code

Sublime packages

Share File : To share files across different sublime users

Preference Sync : sync my preferences and make sublime customized to me, across all machines, as in fresh/others sublime editors in other machine you could download and make it look/work like yours,

OpenSource

Some of the projects which i use, follow and contribute to. If you want to contribute or know more, reach out to me.

Testify

Awesome testing library, I’ve used it extensively for testing our Go services. My commits suites, mocks, tests, asserts and other helpful features for writing unit tests readme.

Athens

Recently came across gomods/athens, after the gostudy group with Caryolyn. This will serve as a proxy (you can host your mods) and registry. Very diverse concepts and you can learn with community.

Gocraft/Work

Background job processor, similar to sidekiq, rabbitmq if you’ve used. i’ve explored the code, and it was awesome to know how it (any job processor) works. Uses redis as storage.

Other libs:

Other libs which’re quite helpful writing REST sevices:

  • negroni - middleware stitcher, very simple but helpful when we’ve huge codebase, with modularised functionalities as middlewares
  • logrus - logging library
  • envconfig - configuration loader, though there’s alternate viper, i love this library, and its simplicity. concise code. you might know kelsey for nocode
  • mux - router and dispatcher, when you’ve pathparams helps you to parse, similar functionality as negroni, and used to have context even before golang adopted it officially.
  • migrate - tool to run migrations against your db.
  • cli - build enhanced commandline application. you don’t need to parse flags, and assign actions