Featured post

Different tools for serving static files through HTTP

Introduction Serving static files through HTTP is not a difficult task. Every little web developer is doing it. But not many people understand the real action that is happening underneath. HTTP protocol is very simple to understand and needs to be understood by everyone as it is one of the most used protocols in the world wide web.

Working of HTTP
The working of the protocol is very simple. It works on the basis of the request and response. A client (generally a user's browser) makes a request for a particular file and the server it. There are 4 basic types of requests: GET, POST, PUT and DELETE. GET is the most used type of request. When a URL is entered into the browser, the browser makes a GET request to the server. The server serves the required HTML file and the browser renders it.

But for this, we need to have a server which is capable of accepting requests and processing them. There are several tools available to make a simple HTTP server. We are going to have a look at so…

Fix "0xc00007b" error in Windows

It happens the best of us. We have a new game to play now and after spending hours downloading it, you launch it and are greeted with an error. The fix for the problem is not really given by a website clearly and I want to share the solution that works for everyone! Familiar with this?

> What exactly happens?  As soon as you encounter the error code 0xc00007b, a dialogue box may prompt up on your screen and flashing the message stating, “The Application was unable to start correctly (0xc00007b). Click OK to close the Application”
> The reason why :  There can be various scenarios under which you encounter error code 0xc00007b. You may get this error while doing any of the following:

● You might be trying to play a Game on your PC and after launching the application, error code 0xc00007b may flash on your screen. ● You might be launching software but unfortunately the error code 0xc00007b may resist you to do so. ● You may encounter 0xc00007b error when you install a 32-bit application …

Hands-on with the new XDA Feed App

Greetings Droids, 

Today we are going to explore an app released by XDA called "XDA Feed - Customize Your Android". It's the universal version of the app already available for a couple of devices. It's available in Google Play Store and virtually any device running Android Lollipop and higher (5.0+).
The purpose of the app is believed to curate the best stuff from the XDA forums. As going through the forums can be a daunting place for a lot of people.It's easy to miss out on latest ROM releases or must have icon packs. All content from feed is handpicked by humans to ensure quality. If you like to modify your phone or stay up-to-date (with posts notifications) with the latest the community has to offer then this app is what you need. 

Earlier, the app was specially made for Pixel, Pixel XL and OnePlus 3/3T which contained device specific content like ROMs, kernals and Mods and also general content like wallpapers, icon packs and themes. But, with this new app you ca…

How to serve a django app on a local area network

In this post, I will show you how I automated the process of hosting a django app on a local area network. The usual way to host a django app locally is by running “python runserver”. This just hosts the app at Now, this app cannot be accessed by others on your network.
In order for other devices to access your app, you will have to host the app with the IP address that your computer has on the network. For example, if your IP address is, your will have to host the django app at The port number 8000 can be different. To do so, you have to run the command “python runserver”. Now your django app will be hosted on the local area network and can be accessed by others using the address

To get you IP address, you can run the command “ifconfig” on the shell and find out (or “ipconfig” for windows). And then you copy and paste the IP address in the command. 
But there is also a way in whic…

How to geek: Learn to code like a pro

Warning! Philosophical text ahead. Skip to the next section to avoid it.
A lot of people come up with a lot of brilliant ideas. But not all of them are able to execute their ideas due to lack of programming knowledge. Lack of programming knowledge is something that can only be solved by sitting your ass down and doing a course patiently without giving any excuses. It is important to assess yourself thoroughly. If you don’t know something, you need to accept it. You can’t call yourself a web developer after editing a few HTML templates. If you want to be a web developer, stop editing templates and start building one from scratch. Speed is not more important than fundamentals. If you go after speed, you will end up becoming like season one flash. Another thing I’ve noticed in people is, they are not able to stay motivated for more than a day. They start a course online, binge watch a few videos and then forget about it the next day. An online course is not the same as a TV show. You canno…

Vim: The Text Editor For Geeks

Many of us just love to work with Vim , a simplified text editor with Mouse and GUI is rarely something we use.Being a touch typist we don’t want to move our hands from their position on the keyboard.In simple words,there’s command to everything,from moving the cursor to save and exit.

But wait, should I start using Vim just because I’m too lazy to move my hands around mouse?
Let me complete,
Vim can be used remotely. We can use Vim everywhere and can be run over an SSH connection and it works just well. So if you need to do remote work you only need to learn one tool so why not Vim?

What’s Vim?
I’m not good with the definitions so lets just copy it from Wikipedia ,
Vim (a contraction of Vi IMproved) is a clone of Bill Joy's vi text editor program for Unix. It was written by Bram Moolenaar based on source for a port of the Stevie editor to the Amiga and first released publicly in 1991. Vim is designed for use both from a command-line interface and as a standalone application…

What went wrong with Arrow?

At the beginning of the production of the first season of Arrow, showrunner Greg Berlanti stated that the theme of the series will be loosely based upon Christopher Nolan’s Dark Knight Trilogy henceforth the inception of series was with the neo-noir touch.

The character background of Nolan’s Batman is very realistic and thus each of its characters suits to the neo-noir genre. Nolan chose the Joker to be an anarchist psychopath with assaulted facial scars rather than a sick eerie smiling clown who gets deranged due to a genetic reaction with a chemical waste.

Similarly in Arrow, The Count is shown as a drug dealer who rolls drug onto the streets by the name of Vertigo rather than the last descendant of a royal family in the country of Vlatava, who dons an eye gear emitting the EM waves which gives vertigo.

The series stick to its continuous theme but when Berlanti announced that he’ll be producing another series with The CW this time of Flash which will be in same chronology, then the ent…

How to keep your free hosted Heroku web app awake 24/7

Heroku is a very exciting free hosting service that allows us, developers to host free web apps or websites on the cloud in minutes. This service is especially famous among python developers, as it is probably the only free hosting service that supports python (If you know any other service, let me know in the comments). It is very convenient to deploy experimental code or small scale apps. For those of you who don't know, this format of cloud service is called PaaS, which stands for Platform as a Service.

The problem

The thing about all these free services online are, they all come with strings attached. Some of them are free only for a limited period of time, and some are free for a limited set of features. I personally prefer the later. An example of the first kind is Microsoft Azure. They have a 30 day trial period and they take your credit card information while registering. Whereas Heroku doesn't take your credit card information while registering. But it has limited fea…

How to get started with applied artificial intelligence : Make your own J.A.R.V.I.S in minutes

2016 has been the year of the chatbots. A lot of instant messaging platforms have opened up to us developers to allow us to integrate our apps and services with them. This allows the apps/businesses to add an element of conversation to their service. Or it can also act as an automated customer service.

What is a chatbot

A chatbot is a service, powered by rules and sometimes artificial intelligence, that you interact with via a chat interface. This allows us to add an element of conversation to businesses, apps and literally everything around us.

How it is made

A chatbot is made using the power of natural language processing or NLP which helps in parsing text typed or spoken by a user in natural speaking language. This is achieved by the help of machine learning.

Once the language is parsed, the required data can be extracted and used to perform the required actions. This makes it look like the machine is understanding and obeying what we say in our natural language.

How hard is it to ma…

The magic of recursion

I first encountered the concept of recursion in 11th grade, in an object-oriented programming class. At the time, I never really bothered about it that much. But now that I really understand the concept, I realized how magical it is. I was very fascinated to see how elegantly it worked. Sometimes I still wonder how it works.
Last year, I was doing a course on python on edX. And in the course, I again encountered the concept of recursive functions. The professor explained the concept using the example of ‘towers of Hanoi’, which made it all the more interesting. The best part was, the solution for a classic problem like ‘towers of Hanoi’ could be derived using just seven lines of code.
For those of you who don’t know, recursive functions are function that invoke themselves. It works like a loop. The function keeps calling itself until a certain condition is met. All recursive functions can be broadly divided into 2 parts. A condition and a recursive call. A recursive call is what kee…