Async patterns: Promises

Given our understanding of what async is, how the callback pattern manages async, and some of the deficiencies of the callback pattern, let’s dive into another, newer pattern — promises.

Promises are clearly exciting the JS community. As someone who never really knew JavaScript before promises, I have only an academic understanding of the magnitude of this shift. In fact, I think I was exposed to management of async first with callbacks to make promises seem just that much more awesome (like building a node server before meeting Express). Understanding both is important to a deeper understanding of each, individually.

As with callbacks, for a new developer, it can be difficult to sift through the massive amount of information available online. For the benefit of anyone else newly exposed to promises, in this post I’ve attempted to cull the resources and posts that I have found most enlightening through my own learning.

Continue reading Async patterns: Promises

Async patterns: Callbacks

So what is a callback function?

A callback function, also known as a higher-order function, is a function that is passed to another function (let’s call this other function “otherFunction”) as a parameter, and the callback function is called (or executed) inside the otherFunction. A callback function is essentially a pattern (an established solution to a common problem), and therefore, the use of a callback function is also known as a callback pattern. (Source)

Continue reading Async patterns: Callbacks

Intro to web accessibility

Through presenting at bootcamps, I’ve so far had the chance to expose over 100 devs- and engineers-in-training to web accessibility —- what are we really talking about when we say ‘web accessibility’, who does it affect, and what are some very initial considerations to take into account? This is a short blog recap, including the deck.

Update (7.29.2016): Slide deck updated.

Continue reading Intro to web accessibility

Data Structure: Trees and Depth-First Tree Traversals in JavaScript

What is a tree?

Trees are a commonly-used data structure in web development. You interact with a very common example of a tree every time you use your browser, likely without knowing it — the Document Object Model (DOM).

DOM tree
Source: w3schools

Continue reading Data Structure: Trees and Depth-First Tree Traversals in JavaScript

Resources: Getting started & beyond

When self-teaching, almost all of us start at the same point. Where do I start? How do I “pick a language”? What do I focus on? I know I did.

I recently started listening to the JavaScript Air podcast, and even more recently went back to listen to some of the earliest episodes. In episode 001, “Learning and Developing JavaScript”, Ashley G. Williams (@ag_dubs) makes a comment that caught my attention:

Continue reading Resources: Getting started & beyond

Quicksort

Quicksort is a sorting algorithm, used to place the elements of an array into an order. That order is based on comparison —  the things being sorted must have a “less than” / “greater than” relationship. (Source).

Continue reading Quicksort

Devume

I recently test-drove the ‘Devume‘ project from the wonderful and talented Justin Seiter, and wanted to briefly highlight the project.

Devume is the hackable JSON resume.
Fork it, tweak it, deploy it!

Devume is a starter repo for a fully JSON-based resume, using Webpack for code bundling and Handlebars for templating. In just a few minutes, you can spin up and host your own resume.

Continue reading Devume

‘Just break things’

‘Just break things.’ ‘Get your hands dirty.’ ‘Just dive in.’

A simple, and infuriating piece of advice that I’ve been given, and given to others. So surprisingly difficult to carry out sometimes. I was reminded by this bit of advice while working on a project last week.

Continue reading ‘Just break things’

Recursion

Oh, recursion.

There are two types of people, those who understand recursion and those who understand that there are two types of people in the world… (r/ProgrammerHumor)

But really. There seem to be people who can very naturally digest the concept of recursion, and those whose brains absolutely reject it. I happened to be one of the latter. In this post, we’ll go over recursion generally, and then work through a diagrammed problem example.

Continue reading Recursion