Thoughts on technology, the world, and life

Programming

“Backdooring Your JavaScript Using Minifier Bugs”

When shrinking code introduces a security vulnerability

“Git Koans”

Enlightenment through inconsistent command-line options

“Long Names Are Long”

Clear identifiers don’t need to be enormous

“Programming Language Naming Patterns”

The stories behind Scheme, Perl, Forth, and other names

“Survey Of Rounding Implementations In Go”

Floating-point rounding is harder than it looks

“The Default GOPATH”

One less environment variable to configure in Go 1.8

“The JavaScript Minefield”

Finding a safe path through a language’s pitfalls

“The Legacy Of Go”

What Go removes may be its greatest contribution

“Vim Koans”

Enlightenment through the wrong tool

“Why Does Calloc Exist?”

Why zeroed allocation can beat malloc and memset

“Why Go Is Not Good”

A critique of Go, with comparisons to Rust and Haskell

Aphyr Tests Redis Withxa0Jepsen

Redis failover meets the realities of network partitions

Bootstrap

Automating the setup of my Mac development environment

Check Sudoku Solutions

A Go program for validating Sudoku boards of different sizes

Expressiveness In Human Languages

Could the language you speak shape what you can think?

Fixing The Inequity Of Startup Equity

Why leaving a startup shouldn’t mean losing earned compensation

FizzBuzzEnterpriseEdition

A simple problem gets the full enterprise treatment

Frighteningly Ambitious Programming Language Ideas

Rethinking control flow in more than one dimension

Go Raised The Bar

What a modern programming language should come with

Io Language

A programming language that caught my eye

JavaScript Doesn’t Need Class

Rethinking the urge to add classes to JavaScript

JavaScript Garden

A guide to the language’s quirks and pitfalls

New GitHub Reactions For xa0Pull Requests, Issues, And Comments

More ways to respond to issues, pull requests, and comments

Programming Etiquette

Some abbreviations are better left unwritten

Rasmus Lerdorf Comes To Town

PHP’s creator gives a lively lecture at Cal Poly

SQL Injection Can Compromise The OS

One database vulnerability can reach beyond the database

Using The Syntax Tree In Go

A tutorial on transforming Go abstract syntax trees

What’s Awful About Being A Software Engineer IC, Tech Lead & Manager

The frustrations that come with each engineering role

Why I Left Language 1 For Language 2

A familiar programming language breakup, with blanks to fill in

Why Some Diversity Thinkers Aren’t Buying Tech Industry’s ‘Pipeline’ Excuses

How childhood expectations shape the technology talent pool

π