In a JavaScript program, null and undefined are sometimes employed loosely and can be interchangeable. However, they are distinct data types and knowing the differences and similarities between them can help to avoid bugs and save time in troubleshooting errors.

Photo by Dylan Shaw on Unsplash

Photo by AltumCode on Unsplash

This knowledge may come intuitively after some practice in programming, but if you cannot wait or are simply curious to shed some light on these terms, this blog might be of interest to you.

The difference between JavaScript’s two major syntactic categories, expressions and statements is a fundamental and yet easily misapprehended concept in JavaScript. At times, the boundaries to define each of these two terms can be hazy and not always too obvious. In this blog, I try to clarify the main differences between these two denominations and briefly explain why it is important to understand them.

Being able to discern some of their key features has given me a slight edge in further understanding the inner parts of JavaScript, for example, why certain parts of the code return certain errors or has…


The Vanitas of Andy Warhol — 1976
The Vanitas of Andy Warhol — 1976
The Vanitas of Andy Warhol — 1976

Checking whether an array is empty or not sounds like a simple task in any programming language…it is, but only if you understand the fundamentals

I am preparing for the first written assessment in Launch School and one of the topics in the study guide is array elements and how to determine if an array is empty. You might be wondering why is this an important question? Well, understanding that will help you to know what types of elements can exist in an array, how these elements can be accessed and also, how they can be added. These things are…


Should work environments minimise less context switching in different knowledge domains to promote better team performance?

Photo by Lysander Yuen on Unsplash

Recently I interviewed someone to replace me in my previous QA position. This person indicated that they won an end-of-the-year company prize for being a great multi-tasker. This could be a good trait for this role since QAs in this team are normally part of concurrent projects, requiring Adhoc knowledge in different domains. …


A scene from the movie Nosferatu 1922

What is ‘variable shadowing’ and why it should be avoided.

Before we go straight to the definition, it is important to observe that a more comprehensive understanding of variable shadowing requires knowledge of two other fundamental programming concepts. Firstly, the importance of naming variables and, secondly, local variables and scoping rules.

What is ‘variable shadowing’? Variable shadowing occurs when a variable of an inner scope is defined with the same name as a variable in the outer scope. In the inner scope, both variables’ scope overlap.


Photo by Alex Eckermann on Unsplash

Part of mastering a craft is understanding fundamental concepts

One of the first topics I came across when learning to program was pass-by-reference and pass-by-value. At the time I knew it was a fundamental concept, but thought I could get away by understanding it just well enough. Perhaps I did not quite understand why this concept is important.

Now after having to consult a hand full of style guidelines and language documentations I think I finally get it. In order to write readable and maintainable code, a software engineer should have a complete comprehension of what a function does to…


One of the most fundamental knowledge in programming is understanding how to assess variables in the code. This concept is a cornerstone to the act of ‘coding with intention’ and mastering any programming language.

At the beginning of our journey, we are mostly focused on playing with code, exploring its limits and if it happens to achieve the needed task, then it is ‘good enough’.

As we begin to program we might tend to immediately reach out to a global variable only because it is accessible everywhere in the code. Also, doing so does not require an understanding of how…


Polonius: what do you read, my lord? Hamlet: words, words, words. Shakespeare
Polonius: what do you read, my lord? Hamlet: words, words, words. Shakespeare

Naming things in programming is at least as important and as hard as knowing the syntax of a language

It’s been only five months that I have started my journey into web development at Launch School and I have already realised something that might be one of the hardest and most important skills a developer can acquire: naming things in programming.

Picking meaningful names for variables, methods and classes seems to be a trivial task when compared to complex concepts a fully-fledged web developer needs to master. However, naming things appropriately can be crucial in setting ‘good’ and ‘bad’ code apart. This is a skill that will helps programmers write maintainable and clear code. Software Engineers spend a good…

Mayumi Nishimoto

Software Engineer in tireless pursuit of improving my craft and in a journey to learn by sharing with the community.

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