Good Coding Practices – Five Tips to Enhance Code Quality

Good coding practices are like a bright beacon guiding unwary developers to the shore at night. Good code is predictable. Easy to debug, extend and test.

Good coding practices help your teammates become more productive and makes working with your code base an overall pleasant experience.

What I will share with you are five universal good coding practices that will improve the readability, extensibility and overall value of your code. The sooner you understand and apply these principles, the greater the benefits will be.

Let’s get started.Continue reading

Best Practices != Writing Good Code – Evaluating code quality

Writing good code is the dream of passionate developers.

However, it does not help us that the measuring bar for determining good code is quite relative. It is not like a test score, which states that you scored 89 out of 100. People read and write code differently, resulting in a variety of proven and tested solutions to common problems which are known as best practices.

Best practices such as ideal naming conventions differ for each programming language. For example, writing good code in Java and its best practices may not be in perfect alignment with writing good code in JavaScript.

The most common misconception that I want to tackle is that

Writing good code is all about following best practices

Following best practices is important, as they are proven solutions, ways or methodologies that help developers write value-adding code. However, blindly applying these practices without understanding the purposes and intent behind it will eventually lead to the developer shooting themselves in the foot.

The purpose of this post is for us (myself and those that read this article) to re-evaluate the way we write code by being mindful of what good code is.

This tutorial will examine

  • common criteria for determining code quality.
  • the importance of immediately refactoring poorly written code.
  • the pros and cons of the prevailing mindset towards best practices.

I want this to be informational, meaningful and of great help to developers in all stages of their journey. We will be working from the ground up starting from what is good code, and working out way up towards scrutinizing the initial mindset and view of modern developers when they hear the term “best practice“.

Continue reading

Doubly Linked List Implementation Guide | Data Structures

The doubly linked list data structure is a linked list made up of nodes with two pointers pointing to the next and previous element.

I will assume that readers are comfortable with the basic singly linked list. If not, I recommend reading about the singly linked list before proceeding.

Let’s get started shall we?

Continue reading

Introduction to the Queue Data Structure – Array Implementation

The queue data structure (we will look at queue array implementation in this post) is one of the fundamental data structures in computer science.

Queue is an example of a FIFO data structure.

In this tutorial, we will be exploring the following concepts regarding the queue data structure.

  • Key features and properties.
  • Implementation details.

Without further ado, let’s dive into the content.Continue reading

Introduction to the Linked List Data Structure and Implementation

The linked list data structure is one of the fundamental data structures in computer science.

Think of the linked list data structure as your ABCs. Without learning the ABCs, it is difficult to conceptualize words, which are made up by stringing alphabetical characters together.

Therefore, you want to know the ins and outs of the linked list data structures.

In this article, we will explore the linked list data structure’s key features and operations. Afterwards, we will begin by implementing our own singly linked list.

Another separate post will be dedicated towards the doubly linked list, which is a variant of the linked list data structure.

I will be proceeding on with the assumption that you know what a data structure is. If not, I recommend first getting acquainted with data structures before proceeding.

Continue reading

Introduction to Data Structures – A Beginner Friendly Guide

A solid introduction to data structures can make an enormous difference for those that are just starting out. The world of data structures and algorithms, for the unwary beginner, is intimidating to say the least.

I have written this post to alleviate some of the anxiety and provide a concrete introduction to provide beginners with a clarity and guide them in the right direction.

In this post, we will first examine the most frequent questions beginners have when inquiring about data structures.

  1. What is a data structure?
  2. Why you need to know data structures?
  3. How do you learn data structures?

If you are a data structures veteran, you probably don’t need to read this post. But if you do decide to read it, I would be very interested in hearing about your thoughts and opinion. If you are willing, please share them with me!

Please note that this post will not cover algorithms.

Even though data structures and algorithms often go hand in hand, I want to keep this post exclusively focused on data structures. I will be writing an entirely separate post on introduction to algorithms, as well as a follow up post on both data structures and algorithms.

When I first started learning data structures and algorithms, I didn’t know where to start.

Not knowing where to start not only results in anxiety.

It also results in bright individuals clutching aimlessly at straws without a clear goal or purpose.

This sets aspiring developers back from reaching their true potential.

Every serious programmer and/or software engineer must have a strong understanding of data structures.

Why?

Because every piece of software processes, handles and displays data. Therefore, data structures are the building blocks of every substantial piece of software.

For this post, I will be writing in the FAQ (frequently asked question) format, addressing common questions beginners might have about learning data structures. If you have additional questions, please leave a comment at the bottom of this page.

I will be updating this post continuously in the hope that it will eventually become a great resource for people that are starting out with data structures.Continue reading