JavaScript Engines: How Do They Even Work? From Call Stack to Promise, (almost) Everything You Need to Know

A whirlwind tour of JavaScript engines from Call Stack, Global Memory, Event Loop, Callback Queue to Promises and Async/Await! Enjoy the reading!

JavaScript Engines: How Do They Even Work?

Ever wondered how browsers read and run JavaScript code? It seems magic but you can get an hint of what’s happening under the hood.

Let’s begin our immersion in the language by introducing the wonderful world of JavaScript engines.

Continue reading “JavaScript Engines: How Do They Even Work? From Call Stack to Promise, (almost) Everything You Need to Know”

Decoupling Django with Django REST (and a sprinkle of React) @ Pycon Italia 2019

I gave a talk about Decoupling Django with Django REST at Pycon Italia 2019. Here are the slides and the transcript!

Decoupling Django with Django REST (and a sprinkle of React) @ Pycon Italia 2019

It was a pleasure to attend and speak at the tenth edition of Pycon Italia. I gave a talk about Decoupling Django with Django REST. Here’s a loose transcript of the talk which you can use as a tutorial too, alongside with the slides and some pictures!

Continue reading “Decoupling Django with Django REST (and a sprinkle of React) @ Pycon Italia 2019”

JavaScript in the Browser: What is the Document Object Model? What is DOM manipulation?

A quick introduction to the Document Object Model. Learn what is DOM manipulation and how to use the native DOM API to interact with web pages from JavaScript!

JavaScript in the Browser: What is the Document Object Model? What is DOM manipulation?

JavaScript is not that bad. As a scripting language running in the browser it is really useful for manipulating web pages. In this quick guide we’ll see what function we have at our disposal for interacting and modifying an HTML document.

Continue reading “JavaScript in the Browser: What is the Document Object Model? What is DOM manipulation?”

Back To The Basics: How To Generate a Table With JavaScript (vanilla)

What it takes to generate a table with vanilla JavaScript? Let’s find out in this tutorial!

Back To The Basics: How To Generate a Table With JavaScript (vanilla)

It’s always a good time for refreshing your JavaScript skills: manipulating the DOM with the native API is a topic that comes up a lot in technical interviews.

In the following tutorial we’ll see what it takes to generate a table with vanilla JavaScript, without resorting to any library or framework.

Continue reading “Back To The Basics: How To Generate a Table With JavaScript (vanilla)”

React Hooks Tutorial for Beginners: Getting Started With React Hooks (2019)

In this React hooks tutorial you will learn how to use React hooks, what they are, and why we’re doing it.

React Hooks Tutorial for Beginners: Getting Started With React Hooks (2019)

Here I am, writing a React hooks tutorial for you. I decided to wait until hooks got finally released before dropping this post. Together we’ll learn React hooks step by step, with a look at how the same logic would be implemented with ES6 classes.

Enjoy the reading!

Continue reading “React Hooks Tutorial for Beginners: Getting Started With React Hooks (2019)”

How to Test a Django Application: the Thought Process Behind Testing

In the following tutorial you’ll learn how to test a Django application and the thought process behind testing and refactoring

How to Test a Django Application: the Thought Process Behind Testing

When it comes to backend my tools of choice are Django and Python. Speed of development (particulary useful for rapid prototyping) and the excellent test coverage I can get almost out of the box are the major boons for me.

I use Django for training aspiring developers too and when I run a workshop I don’t go straight to the “right implementation”. What I like instead is guiding newcomers through the initial “working implementation” to refactoring into a more complex application.

In this tutorial you’ll build a small application with the exact same mindset. We’ll make it work first and them we will refactor for adding more functionalities.

Continue reading “How to Test a Django Application: the Thought Process Behind Testing”

Automated testing and Continuous Integration in Drupal 8: an Introduction

Learn how to embrace automated testing and continuous integration in Drupal 8 projects

Automated testing and Continuous Integration in Drupal 8

BesidesĀ frontend consulting, part of my job consists in helping teams to embrace automated testing and continuous integration. These days I’m consulting with a Drupal shop in Italy, Whitedrop. Whitedrop is run by Giovanni and Federico. I met Giovanni at a Meetup in Arezzo last year and soon we became friend.

The team at Whitedrop were interested in knowing more about continuous integration and continuous delivery before taking on more challenging Drupal projects.

Continue reading “Automated testing and Continuous Integration in Drupal 8: an Introduction”

Testing React Components: The Mostly Definitive Guide (ft. react-test-renderer)

A living, breathing guide to testing React components. Constantly updated, better you bookmark it!

Testing React Components: The Mostly Definitive Guide

Web development is fantastic! You know HTML, CSS, JavaScript, and React! You’re ready to build fantastic web applications people will use and love! It sounds like a dream … until you land your first job as a front-end developer.

I don’t want to scare you but imagine this.

Continue reading “Testing React Components: The Mostly Definitive Guide (ft. react-test-renderer)”

JavaScript: What Is The Execution Context? What Is The Call Stack?

What is the Execution Context in JavaScript?

Javascript: What Is The Execution Context? What Is The Call Stack?

I bet you don’t know the answer. What are the most basic components of a programming language?

UPDATE: There is an improved, extended version of this blog post: JavaScript Engines: How Do They Even Work? From Call Stack to Promise, (almost ) Everything You Need to Know

Variables and functions right? Everybody can learn these building blocks. But what lies beyond the basics?

What are the pillars of Javascript that you should master before calling yourself intermediate (or even senior) Javascript developer?

Continue reading “JavaScript: What Is The Execution Context? What Is The Call Stack?”