Update: This article is now part of my book “The Professional Programmer”.

Read the updated version of this content, and more programming advice at jscomplete.com/pro-programmer.

Let me make one thing clear first. If you are a beginner programmer, this article is not meant to make you feel bad about the…

So you want to create a function in JavaScript?

You. Have. Options:

1 — Declaration Function

function sum(a, b) { return a + b; } 

2 — Expression Function

// Can be named:
(function sum(a, b) { return a + b; });
// Or anonymous (AVOID):
(function(a, b) { return a…


I am writing the GraphQL In Action book for Manning and 8 chapters (out of 11) has been published to MEAP. Below is the entire first chapter of the book. Feedback is welcome and very much appreciated.

This chapter covers

  • What GraphQL is and the design concepts behind it
  • How…

The difference between callbacks and promises in JavaScript is subtle but significant! Why exactly are we ditching callbacks in favor of promises?

How would you answer these questions in an interview??

The superiority of promises over callbacks is all about trust and control. Let me explain.

We generally need to…

One of the projects I am involved in is hiring a senior JavaScript developer. To help with the opportunity, I tweeted this:

The response. Was. Overwhelming

I certainly did not expect this much interest in a work opportunity about which I did not share many details!

A few hours…

The GraphQL schema language is great! It is certainly the best way to communicate anything about a GraphQL service. No wonder all documentations now use it!

The Schema Language

Imagine that you’re building a blog app (with GraphQL) that has “Articles” and “Comments” . You can start thinking about its API schema by…

React developers love the modern features in JavaScript and use them extensively in their projects. In this guide, I’ll go over the most popular features that are usually used with React. …

Before I answer, if you‘re reading this article to pick a framework “to learn”, don’t. Read this article instead.

If you want to pick a framework to use (in an actual project), you may proceed :)

“Better” is really subjective. Better for what?

  • Scalability? Code written for all 3 frameworks…

A few weeks ago, I tweeted this interview question:

*** Answer the question in your head now before you proceed ***

About half the replies to the Tweet were wrong. The answer is NOT V8 (or other VMs)!! While famously known as “JavaScript Timers”, functions like setTimeout and setInterval

Let me first define what I think a coding framework is because the word is debatable. I think a framework is a library that defines structures about every aspect or layer that can make the task of creating applications easier. …

Samer Buna

Author for Pluralsight, O'Reilly, Manning, and LinkedIn Learning. Curator of jsComplete.com

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