The difference “” vs null vs 0

Recently as I was conversing with my young friend, he looked at some of my code and wondered why I was using a zero or null or empty string (“” or ‘ ‘ ) instead of using one wherever I wanted.

Programming is an interesting though weird or confusing discipline, especially to the novice things don’t mean a lot because most novices concentrate on the output than the efficiency and effectiveness of the output. For the mature programmers optimization is key, after all at the end of the day a user wants something working but requires less attention than something erroneous and slow.

So let’s get to it. How does null, empty string and zero differ?


First of all the similarity is of the three is that they are all values to variables and mostly used as the initial value of a variable.

Second the empty string and null will usually output nothing if printed on the screen.


Differences might be defined differently per programming language.

For example in Python there is no null but there is None which means the same as null in other programming languages.

To find out the datatype of None and other values in python use the type( ) function e.g type( None ), will return NoneType data type in python. While in JavaScript we use typeof value to find out the Data type of a value stored in a variable. i.e. console.log( typeof null ) will return object as the data type of null.

PHP 4+ we use gettype( ) function to find out the datatype of the value stored in the variable. For example gettype( null ) will return for NULL.

If you are a JavaScript novice it’s good to pay much attention to null values since they are of data type object. For example find out how object data types are treated in JavaScript before you hit a nail in your foot.


Almost all programming languages “” or ” is treated as a string and it occupies the space in memory of the size that is occupied by a string or char datatype. In fact in JavaScript if a value starts with ” even if it’s proceeded by a number or decimal it will be type cast to a string so that the resulting value will of data type string.

So be careful initializing variables with ” especially if they will be used in mathematical expressions.

In Java, Python and PHP 0 is treated as an integer whereas it’s treated as a number in JavaScript because in JavaScript integers and floats are number data types. I know most people might be wondering why not a Boolean?

Though 0 or 1 might represent false/true they are not treated boolean data types.

Why care?

It’s always good to code what a programmer and fellow programmers understand to avoid spending time in refactoring than improving functionality and optimization.

It’s also important to ship a software which will give more predictable results than not to avoid the users plucking hair out of their heads, assuming they’re wrong yet it’s the programmer is the calprit.

DataTypes determine how big your program will be and how it nay handle memory, avoid confusing by planing to code rightfully from the beginning.


This tutorial assumes you have some programming knowledge and some level of practice with the one or more of the programming languages cited in the tutorial.

The tutorial is dedicated to Were Calvin a Ugandan African motion graphics designer and emerging front-end developer practicing at Gagawala Graphics limited.

Learn to develop web applications the modern way – Part 3

In the programming industry like others, you will find many terms(vocabulary) which are not usual in  common speech. In this article of the series about “learning how to develop web applications in the modern way”, allow me introduce to some of those terms. In case you missed reading some parts,  click here to read part one or click an item in the table of contents below.

  1. Prerequisite
  2. Web design vs Web applications development
  3. Extending is smart!
  4. Components of a Web application.
  5. Powering web applications with WordPress
  6. The do list application

What is extending in programming? 

In simple terms it’s the opposite of developing applications from scratch. In detail it means a coder will write his/her own application from the start to finish without using and relying on other programmers code. Therefore to extend is when a coder starts with someone’s code to develop an application or feature.

In Object Oriented Programming paradigm, to extend means to derive/instantiate objects which inherit features in terms of method and properties from existing class(es).

What are the advantages of extending?

  1. It makes programming a lot easier because you don’t have to write every line of code by yourself.
  2. It is cheaper than starting from scratch which will require a bigger team and tools for the team besides investing in the team to learn how to work together.
  3. Availability of help from all corners though this depends on the choice of framework. Most programmers choose a framework which has a large number of contributors, the profile of the founder, the number of tools in place and how old it is.
  4. Easier learning curve due to availability and supply of learning material on top of a comprehensive documentation.
  5. Ask me how people become better than others at coding and I will tell you that the secrete is hidden in reading code written by others whether good or bad coders.

My personal recommendation is to spend more time creating solutions than learning how to create solutions. In the upcoming part, share about the basic and major components of a Web application.

Merry Christmas and a marvelous New year.