Generally, when a request for a feature comes in, you would want to start coding to build it. Later on, you would write your unit tests to make sure that your code was correct.

Test-driven development (TDD) believes that you should create your unit tests first and then write out the code that actually performs the work. It’s essentially about writing your unit tests first and then “filling in the blanks” by writing out the code to make things actually work.

At the core, that’s what TDD is all about. However, many programmers find it a waste of time to…


An important part of getting your first entry-level web developer job is your resume. But what exactly is a resume?

Your resume is essentially a track record of the value that you have provided others in the past. This can be anything from past jobs to volunteering experience or even freelancing. Even if you don’t have “professional experience” in the industry, such as past developer jobs or internships, you can still show how you’ve provided value.

Your resume gets the employer interested in how you can help solve the problems that the employer is having. …


Amazon Web Services (AWS) is a technology that allows developers and companies to use IT resources to build applications. This has allowed businesses to not worry about buying and setting up an IT infrastructure.

I like to imagine AWS as a developer’s “Lego kit”. You get many prebuilt “blocks” to play with and you can put them together however you’d like in order to build an application.

Businesses and organizations in the past (the 1990s and early 2000s) had to create their own IT infrastructure, essentially their own Lego kit. This was expensive as computing and infrastructure were not cheap.


When you type in a URL and hit Enter, your browser essentially sends an HTTP request to the server that is associated with the URL. The server then responds with an HTTP response and may send back something like an HTML file.

Once the connection is made and the transaction is done, the connection ceases to exist. No more communication can happen between your browser and the server.

What if we wanted to build a chat application where we know when others have sent a new message? With regular HTTP, you’d have to keep refreshing the page to see the…


You may have seen tutorials online where they tell you that you need to install something using NPM. Generally, you’re given the command to copy and paste, and without really thinking, you do so.

However, what’s really going on whenever you’re using NPM? When you copy and paste commands from a tutorial, do you truly understand what they mean?

What is NPM?

NPM stands for Node Package Manager and is one of the multiple package managers (others include Yarn, Bower, etc.) available for the Javascript programming language. Furthermore, it’s the default package manager for Node.js.

NPM has a command-line client, which is generally…


As a front-end developer, we have many choices at our disposal as to how we want to style our components. However, some choices, such as using CSS files or inline styling are becoming things of the past.

The future of styling components is trending towards CSS-in-JS. What is CSS-in-JS? In simple terms, it’s a way for you to write CSS code in a JavaScript file. Styled Components is the leading CSS-in-JS library on the Internet right now.

Furthermore, companies such as Airbnb, Lyft and Google make use of Styled Components. Why does this matter? It means that Styled Components has…


Imagine that one day you’re building a website that has a user portal. You’ve created the login and register page. You finally finish the website and you’re itching to deploy it and see how it does. But first, you click on a bunch of links and test out the site to make sure if it’s working.

You finally deploy the website. To your amazement, users are starting to use your website. You’re excited. But then you get an email from one of your users that one of the features isn’t working correctly. You’re scrambling to get that feature fixed. You…


Did you know that for every second a potential customer waits for your website to load, you’re losing more and more business. The consumers of this day and age expect for things to load quick. The days of waiting for a site to load up are long gone. If your website isn’t loading quickly, you’re losing money.

Google did some research and found that bounce rates increased dramatically the longer a user has to wait for a website to load. Below is a small snippet of what they found:


In this article, I will use the least amount of technical jargon to explain what Redux is. An intuitive understanding of Redux will help you use it better in your next React or React Native project.

Let’s get started.

State Containers

One of the first things you will see on the official Redux website is that “Redux is a predictable state container for JavaScript apps.” Let’s break this down.

First of all, a state container is basically something that holds the state of your application. A state, for example, can be whether or not a user is logged in or not. Your…

Sunny Singh

Full-Stack Web and Mobile App Developer

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