Some must-have tools for a rock-star developer

Photo by Eduardo Torre from Pexels

ReactJS is very performant by default. But now and then you get a chance to make it even better. And the awesome React community has come up with some fantastic libraries.

Today we will talk about seven such libraries that can improve the quality of your code and at the same time improve performance.

Let’s begin.

1. React Query

React Query is known to be the missing state management library for React. In its documentation, it says, “Fetch, cache, and update data in your React applications all without touching any ‘global state’.”

Yes. This is exactly what it does. It helps us to…

Practical advice for improving code quality

Photo by Diana Polekhina on Unsplash.

React is very unopinionated about how things should be structured. This is exactly why it’s our responsibility to keep our projects clean and maintainable.

Today, we will talk about some best practices to follow to improve your React application’s health. These rules are widely accepted. As such, having this knowledge is imperative.

Everything will be shown with code, so buckle up!

1. Use JSX ShortHand

Try to use JSX shorthand for passing boolean variables. Let’s say you want to control the title visibility of a Navbar component.



2. Use Ternary Operators

Let’s say you want to show a particular user’s details based on role.



3. Take Advantage of Object Literals

Practical advice for designing REST APIs

Photo by Andrea Piacquadio from Pexels

Ever got frustrated with a horrible API where everything’s a guessing game? Well, I have.

In this world of microservices, a consistent design for your backend API is imperative.

Today, we’ll talk about some best practices to follow. We’ll keep it short and sweet — so buckle up!

First, Some Terminology

Any API design follows something called Resource Oriented Design It consists of three key concepts

  • Resource: A resource is a piece of data, For example, a User.
  • Collection: A group of resources is called a collection. Example: A list of users
  • URL: Identifies the location of resource or collection. Example: /user

1. Use kebab-case for URLs


Habits that make the difference

Photo by Danial Igdery on Unsplash

Getting the job done is the most important thing in software development. But how do you separate yourself from others? Well, from my experience, I can say the difference is in the approach.

Over the years, I’ve worked with a number of React developers. Here are some things that separate a great developer from an average one.

1. They Don’t Use Index as the Key

When we render a list, usually we get a warning saying that we need to provide a key for each list item. We lazy people often use the index as the key.

Something like this:

Bad example

But in the React documentation, they…

If you’re writing enterprise-level code, you need to know this

Photo by Dan Dennis on Unsplash

Over the years I have had the privilege to work on some large-scale react projects. Today I am gathering some essential things to keep in mind when building a new project or enhancing the functionality of any large scale application.

We will start from the absolute basics and then go deeper. So buckle up!

1. Project Structure

When I started with React it was intuitive for me to keep files by their types. Bus as I had the privilege to work on some larger projects I understood how difficult it can be to navigate through your files as any project grows bigger


Explained with real-world examples

Photo by Brendan Church on Unsplash

NextJS is a framework that we React developers love and admire. It’s high in demand and very, very powerful.

But when you start to learn this you will see that ReactJS and NextJS mainly differ in the capability of pre-rendering. Which can be a little tricky to grasp at first.

There are multiple strategies for us to choose and it gets confusing at first to apply the correct solution in the correct place. We will take a real-life application and understand which strategy works best for which scenarios.

Let's get started.

The Functions

I hope you already have a basic understanding of…

The Epitaph of My Tech Startup

Photo by Andrea Piacquadio from Pexels

3.5 Years… That is the time we dreamt of building something that will disrupt the world. It’s all coming to an end now. We ran out of money 3 months ago. We had to fire the whole business team and Only 2 guys from the dev team are still with us.

Ups and downs are part of a start-up journey but I don’t think we will be able to come back this time. Some mistakes are just too serious to come back from. Maybe You can understand why after reading the whole story.

Ideas are easy…

It all started at the end of…

The anatomy of the single-table design approach. Is it good?

Photo by Zarak Khan on Unsplash.

What if I told you that your system only needs one table? If you are like me and have experience with SQL queries and schema design, I bet you are just as surprised as I am.

But this is actually a recommended way to model your database in NoSQL-type databases — especially in DynamoDB.

Today, I will explain how a system can be designed with a single table and the justifications behind this decision.

Tell Me More

Single-table database design is exactly like it sounds. You will have a single table for your entire system.

But how does it work? Different data have…

3 data modeling strategies

Photo by Zdeněk Macháček on Unsplash.

Data modeling in NoSQL is trickier than normal SQL. Sometimes, it goes against our intuition. Especially coming from an SQL background, I found it hard to comprehend the various reasons behind the data modeling in NoSQL databases like AWS DynamoDB or Firebase.

In this article, I will explain three strategies for modeling one-to-many relationships and the scenarios in which you can use them.

Denormalization + Complex Attribute

Denormalization is a dirty word for SQL developers. But in the NoSQL world, it has its use cases.

Let’s say you have some customers who pay a certain fee at the end of the month. …

What is GSI, how does it work, and when to use it.

Photo by Boitumelo Phetla on Unsplash

AWS DynamoDB is one of the most important services offered by AWS. This is a NoSQL database and solves the scaling problems of fixed schema-based databases like MySQL, Postgres, etc.

But DynamoDB has its own flaws. You don’t have the flexibility of joining tables and querying data at your will. You have to be very careful about how you are modeling your data in order to be able to access data in any way.

There are multiple strategies on how you can model data and I won’t go into the details today. …

Mohammad Faisal

Passionate about Clean code and SOLID Architecture

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