Shiny Object Syndrome in Tech
With the tech moving and evolving so fast, every few years, evaluate the work you are doing vs what the world is doing. Do not let the gap widen.
This edition of the newsletter contains
one quick write-up that will help you grow faster in your career
a video I posted
a paper I read
I have also shared 3 super-interesting articles to read over the weekend. Thank you once again for reading this edition of my Newsletter. Now, without further ado, let’s jump right in.
By the way,
Being hands-on is the best way for you to learn. Practice interesting programming challenges like building your own BitTorrent client, Redis, DNS server, and even SQLite from scratch on CodeCrafters.
Sign up, and become a better engineer.
Shiny Object Syndrome in Tech
With the tech moving and evolving so fast, every few years, evaluate the work you are doing vs what the world is doing. Do not let the gap widen.
Ask yourself if your current projects are building skills or knowledge that align with where the world is moving. Are you solving problems that matter, or are you stuck in areas becoming less relevant? Staying proactive in bridging these gaps will keep you relevant.
This does not mean you keep switching domains; yesterday you were doing web3, today you picked AI, and tomorrow you jump to Quantum Computing.
Never switch your domain due to hype; always make an informed decision considering your aspirations and, more importantly, your abilities. Switch to something you can do well, but only when the field is stable enough or you have a high appetite for risk.
Remember, in the long run, we all are optimizing for impact, financial reward, and longevity of our careers.
Here's the video I posted
I published a video - Yes! You can send a payload in your HTTP GET requests
Let me bust a myth today 🤯 A lot of engineers, including some seniors, believe that we can NOT send data in HTTP GET requests, but that is not true at all!
A client can send the payload, but it depends on the accepting web server to extract and use it. So, when do we need it?
We choose to send payload in GET when our requirements cannot be easily represented in Query or Path params; a classic example complex JSON-based search query for Elasticsearch.
This is precisely why Elasticsearch accepts search queries in the payload in the GET method. Here’s a detailed video of me explaining this.
Paper I read and would highly recommend
I spent some time reading Bigtable: A Distributed Storage System for Structured Data
No matter which system you interact with within Google, you will always stumble upon the old but gold stuff. One of them is BigTable. The things built 15/20 years back have now become the backbone.
Some time back, I revisited and re-read a seminal paper from Google that introduced BigTable to the world in 2006. It is so powerful that back in 2006, it supported real-time data serving with sub-second latencies while handling millions of requests per second in production.
Internally, it is just a sparse, multi-dimensional sorted map indexed by row, column, and timestamp that is optimized for both storage and query. It is built on top of popular Google stuff - SSTables, Chubby, and GFS.
I would highly recommend this paper purely to understand how you can break down a massive and insanely complex problem statement and solve it in a structured way.
always fun to revisit the old gems :)
You can download this and other papers I recommend from my papershelf.
Three interesting articles I read
I read a few engineering blogs almost every day, and here are the three articles I would recommend you read.
Thank you so much for reading this edition of the newsletter 🔮 If you found it interesting, you will also love my courses
I keep sharing no-fluff stuff across my socials, so if you resonate, do give me a follow on Twitter, LinkedIn, YouTube, and GitHub.
Thank you very much, sir. I understand many things from this new newsletter, and now I have created my own HTTP server in Go.