There is more to software engineering than just solving weird puzzles

Photo by Startaê Team on Unsplash

The mania to do well in competitive programming here in Indian colleges is very very real. I get it, all of us want those big pay packages and are ready to do whatever it takes.

But, just like most other things in life, the extreme of anything is bad and this is an extreme that people do bend towards. I understand the deal here, learning about data structures and algorithms are crucial and competitive programming is a very good way to practise and implement what you learn. …


A super quick guide to learn enough Scrum and start managing your projects.

The Traditional Method

How to do you plan and manage a project ?

Easy, plan everything before hand and follow the damn plan. That’s called the Waterfall method, plan every single detail of the project and execute.

The problem with the waterfall methodology is that most of the time, the planner isn’t smart enough to cover all the edge cases. The plan doesn’t account for the problems the team is going to face during the development and then one problem causes another, you keep running against time and the entire project collapses and the plan fails.

Scrum is more of a plan as…

Please don’t dig yourself a grave with raw pointers

Photo by Fredy Jacob on Unsplash

C++ is not a garbage collected language, that means the responsibility to free the memory allocated on the heap lies entirely on the programmer. In straight forward terms, it means that for every new you write, there has to be a delete at the right place.

pip, virtualenv, pipenv and poetry

Photo by chuttersnap on Unsplash

One of the things that makes Python developers really productive is the vast ecosystem of third party packages available to the developers.

But the experience of installing and maintaining packages for different projects is pretty fragmented. By default when we do pip install something the package is installed globally in your python environment.

The most conventional way to manage dependencies in python has been to install everything globally and then list all dependencies in a requirements.txt file, so that when someone clones your project then they can install all the dependencies using pip install -r requirements.txt

However, this method absolutely…

March 24, 2020.

Almost all of the colleges in India are shut due to the COVID-19 pandemic. We know you might be bored to death at home.

If you are someone who has heard about “Competitive Programming” either from your seniors or your peers but still don’t know what it is about then this article might help you out. This article will be more relatable to the undergrads studying in Indian colleges, possibly someone who took a semester of maybe programming in C or Python, depends on your curriculum. …

March 21, 2020

If quarantine is boring you to death, this article might help you out.

This article is meant as a tutorials guide for someone who is looking out to learn python but is overwhelmed by the number of tutorials and resources to learn from. We hope this is the kind of article you’d bookmark and comeback to again and again to get links to tutorials, books, articles and the official documentation for Python.

Why learn Python ?

A language that doesn’t affect the way you think about programming, is not worth knowing.

— Alan J Perlis

If you are someone who has…

Photo by Allie Smith on Unsplash

If you have just begun your journey into web development, you’ve probably heard and read the acronym “API” a lot. It’s short for Application Programming Interface. You hear it in the tutorials, courses, you read it in the articles but still fail to deeply understand what it really means.

Being a righteous web developer you take the trouble to google the term “API”, and Wikipedia gives you this…

An application programming interface is a computing interface exposed by a particular software program, library, operating system or internet service, to allow third parties to use the functionality of that software application.

Photo by Charles Deluvio on Unsplash

This article is a simple tutorial on the react-loader-spinner package. You can use it to add those spinning or any type of loader in your react projects.

We mostly use loaders to signal the user that some data is being asynchronously fetched. There are many libraries to implement this in react, you can even write one yourself from scratch, but react-loader-spinner is one of the easiest to implement in my opinion. I really love using it.

1. Installation

It’s simple. Run any one of the following depending on your package manager.

npm install --save react-loader-spinner


yarn add react-loader-spinner

2. Usage

Just add the…

Photo by Jeremy Bishop on Unsplash

Date: 31st December 2019.

Dear 2020 me,

I hope you are as healthy, happy and motivated as I’d expect you to be. I am the 19 year old version of you, yeah the one you probably look back and laugh at because of my naivety, but that’s a good sign I guess, it means that we’ve made progress.

Let’s talk about career. Because right now it’s the most important thing we care about I guess. I don’t know what position in life you’re at right now, but I hope you have kept up the spirit of constantly learning and creating…

Photo by Sai Kiran Anagani on Unsplash

I was 15 when I first tried Ubuntu 14.04, at that time I had been programming for a year and just knew how to write some basic python scripts. I was blown away by how fast Ubuntu ran on my old laptop.

After using linux distributions for years, I just love the entire Linux ecosystem and the community. No wonder its the OS that runs the world.

Here are my 10 reasons why I love Linux for Software Development

Junaid Rahim

CSE Undergrad at KIIT. Web Developer at DSC KIIT. Web Technologies. Systems. Machine Learning.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store