Posts
An Essay On Technical Sophistication
Building Technical Sophistication As A Developer Idea and concept wise it’s something we all developers are quite aware of. I first came through this exact term, “technical sophistication” in Michael Hartl’s article in Learn Enough Society. The basic idea is as developer one requires a certain set of skills which can elevate their overall vision and can see things in a broad sight. One need not be technically proficient at everything but having good understanding of fundamentals enables us to debug and reach the solution faster.
read morePosts
Some notes on HTTP
Playing with HTTP: Practical Notes and Examples HTTP is the foundation of the web, but it’s easy to overlook how it actually works. This post collects some hands-on notes, experiments, and practical tips for understanding HTTP, inspired by the excellent Udacity client-server communication course. Whether you’re a beginner or just want to refresh your basics, try these out yourself!
Playing with HTTP: Practical Notes and Examples These are some hands-on notes and experiments from the excellent Udacity client-server communication course.
read morePosts
I completed Unix Workbench Course by John Hopkins University in Coursera
I recently completed UNIX workbench course by John Hopkins University in coursera. So, I thought I would write something about UNIX, GNU/Linux.
Love for UNIX There is a documentary by AT&T on Unix on youtube which I regularly rewatch now and again which shows the early story of UNIX and has Brian Kernighan talk about the power, simplicity and elegance of UNIX design.
We know the story of how linux came to be.
read morePosts
Learnings from Redis Meetup at Razorpay
Personally I haven’t extensively used redis. My limited understanding of redis would be summarized as:
redis is in-memory database, stored in RAM (making use of underutilized RAM space in servers) being stored in primary RAM it’s very fast being stored in volatile storage (RAM) it vanished as system goes off, however there are ways to persist it in the file system redis uses key value storage and supports quite a few datatypes including list, hashmaps, geocodes, etc how companies like twitter have made an extensive use of redis in caching for faster retrieval (low latency when the throughput demand is high) it can be used as pub-sub model (message broker) Trivia: Redis is an acronym for “Remote Dictionary Server”
read morePosts
Tracking File permissions in git
Git tracks file permissions too Although I have been extensively using git for quite some time now I never happened to come across this situation where you change the permission of the file which is tracked by git. Yes, by default git is configured to track the changes in file permission mode too.
Just to experiment with the idea, I created a dummy repo and ’touched’ an empty file. The initial default permission being: 775
read morePosts
Learn enough to be dangerous!!
Recently I came to know about a wonderful online learning resource called Learn Enough. (https://www.learnenough.com)[Learn Enough] is an initiative by (https://twitter.com/mhartl)[Michael Hartl] who is popular for his highly acclaimed Ruby on Rails tutorials series, which was, at one point, Wikipedia founder (https://en.wikipedia.org/wiki/Jimmy_Wales)[Jimmy Wales]s’ favorite book. I came to know about learn enough through one of the links in StackOverflow answer where I was reading through some answer on UNIX. After going through some of the articles on (unix, git, dev-environment) I was amazed at the simplicity and the narrative way of teaching.
read morePosts
Vimium, Browser for hackers!
How I came to know about it So, I am a regular reddit user and it’s one of my favorites online communities. While browsing through subreddit posts, there is a feature in the reddit web-app where you have keyboard shortcuts for browsing: N for next post, P for previous post and so on. I found it very convinient and easy to use especially because you don’t have to take your hands off the keyboard.
read morePosts
Leveraging Cron job to monitor network connection
Scenario: There are a handful of ways to run some script periodically on a linux machine. Cron jobs, watch command. Cron jobs are heavily used in server infrastructure for task like regular disk clean up, network monitoring, hard disk storage monitoring, setting up alerts, etc.
I have been running Ubuntu 18.04 and one common issue that I have observed is, in certain wireless connections, after a certain time network-manager stops working.
read morePosts
Leveraging git hooks
Adding tag support to Jekyll Now This blog is a forked version of a popular github blog project called Jekyll Now. It’s based on ruby and is a really elegant and easy to use tool that I have found. Being bare minimum version it doesn’t have tagging support for blog posts.
I have added tags to all the blog posts. This particular plugin isn’t supported by github so running it just like that doesn’t create ’tags’.
read morePosts
SDKMAN, Java9, Jshell, REPL
Working with multiple versions
Most of the times we as developers are working on multiple version of the language or the framework. If not managed properly it can be a nightmare dealing with different projects which use different versions of the same language. Say, project A uses python2 and project B uses python3. In python we have virtual environments which can be managed using, among many others, pipenv. Likewise for Ruby we have rbenv.
read more