The First 419 Guy was an American Child

One day, however, a new sort of ad appeared in the pages of several dailies: an appeal from a certain Prince Bil Morrison.

The prince was of noble birth and hailed from the far reaches of Nigeria. All he wanted was some American pen pals.

So moving was the wording of the ad that the papers had published his mailing address free of charge. Should not the poor prince find some good old American correspondents?

Continue reading The First 419 Guy was an American Child

ES6 is Over-Engineering JavaScript

Don’t let acronym fool you. npm is more than node’s package manager; it’s the package manager for all of JavaScript.

It houses great big libraries like React, Electron and It also contains itty-bitty snippets of code. Code so small you’d expect their behavior to be native to the language.

This has turned JavaScript into a language with a small, serviceable core and lots of useful extensions available in npm.

ES6 is expanding the core of JavaScript.

Not by adding things that currently don’t exist in the JavaScript + npm realm, but by introducing new ways to do things we could already accomplish before.

This seems like a very bad idea to me.

Continue reading ES6 is Over-Engineering JavaScript

JavaScript ES6 is Doing Too Much

Swiss Army Knife

This is a Swiss Army Knife. The Handyman, to be precise. According to the site, it has 24 functions. Can opener, scissors, nail file, pliers, wine opener, bottle opener, wood saw, toothpick, nail cleaner … the list goes on.

Conceptually, it’s really great to have one thing that does so much.

Realistically, Swiss Army Knives have not replaced the need for single-purpose devices in any of those categories.

It’s doing too much to be good enough at one task to replace a device crafted specifically to solve a single purpose in any of those categories.

I fear ES6 is introducing tools that make JavaScript do too much.

Continue reading JavaScript ES6 is Doing Too Much


Have you watched Inception?



It’s a really interesting movie where people can enter the dreams of others. I don’t wanna ruin it for anyone but the ability to enter dreams is infinite.

You can enter the dream of someone who is sleeping in a dream. Dream within a dream.

My first dream was to design for the internet.

The moment I saw the Cartoon Network website in the late nineties, I knew that’s exactly what I wanted to do. I learned how to use Photoshop, Illustrator, picked up HTML + CSS, designed MySpace pages and built a static website.

The static website was the accomplishment of my dream. I designed a website, coded it up, published it on the internet and got paid handsomely for it.

Almost immediately after, I was unsatisfied.

Continue reading Deeper


I have nothing but respect for game developers. What they create are nothing short of technical feats and they tend to work with anemic budgets.

If you think a second is fast, bear in mind the benchmark to reach in game development is processing and rendering sixty times a second! To put this in perspective, most websites are unable to process and render sixty times a second despite doing far less work.

Imagine how much code is powering this League of Legends fight


How do game developers accomplish these awesome feats? They gain a working knowledge of the environments their games run in and figure out how to take advantage of it to accomplish their goals.

More practically, they identify what makes it impossible for their code to reliably run sixty times a second. The source of the limitation is labeled expensive and they use their knowledge of the environment to create clever ways to workarounds.

As web developers we can learn a lot from this practice. We need to understand what keeps our websites from running smoothly and work around them.

Continue reading Expensive

Why Rappers Are Smarter than Startups

Society tends to think little of rappers. Very rarely do their lyrics go beyond a certain range of topics. As Biggie Smalls once (or twice) put it: “money, hoes and clothes, blunt smoke coming out the nose is all a nigga knows“.

Despite the unflattering depiction, I feel these are individuals start-ups need to embrace as role-models. Not because Ben Horowitz loves raps and writes big cheques to start-ups. Not because rappers can get your whole team to actually come into the office. It’s a lot simpler and more important than all that:

There is no rapper who isn’t about making money.


Continue reading Why Rappers Are Smarter than Startups

Tips For Making Better Software

Writing code seems really easy from the outside looking in. You sit at a computer all day and get paid for it.

In a lot of minds, it’s about showing up. Sit in front of the computer and the code will flow. The longer you’re there, the more code you get. The more code the better.

Having more bags of cements doesn’t guarantee a better building. Having more salt doesn’t guarantee a better meal.

While it’s important to the final product, time spent writing code just an ingredient like any other.

The knowledge on effectively using it is critical to getting the best possible results.

Continue reading Tips For Making Better Software