Is it good SEO or good content that drives traffic to your blog? - A causal analysis

When it comes to content publishing, there are basically two camps in the blogging world: The “Content is King” camp The “SEO” camp The first camp insists that it’s good content that entirely drives traffic to your blog or website. The second camp insists that it’s good Search Engine Optimization... Read More

How to use window.hashchange event to implement routing in vanilla javascript

The popular wisdom when it comes to implement routing in your client side apps or single page apps (SPA) as they are called these days, is to just grab an “off-the-shelf” framework like angular or vue and start using it. Well, that’s the easy way out but you will never... Read More

Nobody likes standards anymore, everyone wants to create their own walled gardens

Exactly three years ago, Mozilla had made this wonderful blog post in which they solemnly announced a prize of $2 million to whoever comes up with a fully functional decentralized system. And while there have been some entries on the linked award website, none of them can be called fully... Read More

Two years later, the reasons for Microsoft's Github acquisition still remain a mystery

More than two years have passed since I shared my perspective on Microsoft’s Github acquisition in this blog post earlier, and the point still stands today. Why did Microsoft decide to acquire a startup company much smaller in size which had no viable and long term revenue/profit generation model? If... Read More

Intro to Message Flashing: A handy way to send messages across page requests in Flask

Message flashing is a very handy technique you must be aware of if you are a Flask developer. A common recurring pattern in web development is to send messages across web requests, especially in case of redirects when the route or controller that redirected wants to display some basic text... Read More

How to use robocopy for taking regular backups on windows

Having switched from linux to windows recently, I was looking for an rsync alternative. rsync is a popular tool in the linux world used for taking routine backups and also general file transfer. But since I use it mostly for backups and I’m mostly a command line dude, I was... Read More

A crash course in python packaging

This guide isn’t for the newbie who is just learning python programming (they are better off doing a “proper” reading of the official docs instead). This is for the seasoned coder who dabbles in multiple technologies and needs a quick refresher on how to go about building a neat zip... Read More

Migrating Disqus comments into Wordpress

Further to my earlier blog post about How to Import Disqus comments into Wordpress, I’ve found that script solution to be a bit trickier for first time users who want to migrate disqus comments from their earlier blog to the new wordpress blog. The disqus_parse.php is exactly the same as... Read More

Why you should never use the dict.get() method in python

There is an increasing trend towards using the dict.get() method in Python, it’s very widely used in many tutorials and examples too. Consider the below example for instance: >>> dd = {'a': 1} >>> dd.get('a') 1 This simple dictionary dd has only one key (‘a’) and its corresponding value is... Read More

Linux DIY: How to identify your MTP file-transfer device (such as smart-phone) in Bash

In the good old days, USB file-transfer between your laptop and smart-phone used to happen through the much easier “mass storage” mode which works just as if you had inserted an external pen-drive. But these days, most smart-phones and tablets have shifted to the MTP (Media Transfer Protocol). Unlike a... Read More