A crash course in compilers
By Ramsey Nasser
Diving deeper into program language theory is a great way to grow as a developer. Here, we go through the essentials of using compilers in language design.
While there are a lot of materials about how to write code and how to deploy distributed systems, there's much less about how humans can work together more effectively to achieve their goals faster. This stuff is complicated and it matters. Version control, code review, pager rotations, devops practices. Increment exists to provide practical and useful insight into what effective teams are doing so the rest of us can learn from them more quickly.
Increment is published by Stripe.

This issue of Increment examines the tech industry’s relationship with programming languages, how they’ve evolved, and where they’re going. More about this issue

Diving deeper into program language theory is a great way to grow as a developer. Here, we go through the essentials of using compilers in language design.
Programming languages have evolved in incredible and innovative ways. Here’s a quick look at just some of the languages that have sprung up over the decades.
By Increment Staff
Engineers at Fastly, Glossier, Optimizely, and more share which languages they use (and love!), how language knowledge factors into hiring, and where they see their current languages heading.

COBOL has been a mainstay of government, business, and banking operations for nearly 60 years—but how long can it be maintained?
Programming languages extend beyond their syntax—and the use of JavaScript with hardware is pushing us to rethink old tools.

A primer on text shaping and rendering non-Latin text in the shadow of an ASCII-dominated world.
Using a Turing-incomplete DSL can have a host of advantages—from predictable resource usage to improved analysis.

Code is poetry. Poetry is code.
The norms and culture of the workplace are a language we all have to learn when we start a new job. Working to demystify the implicit can help make tech more inclusive.

By blending speed and high-level functionality in a language for technical computing, Julia was designed to be just right.
Migrating your codebase to a new programming language can have some big advantages, but the process can be daunting—and risky.
From team structure and annual surveys to RFCs and the release process, a staff research engineer on Mozilla’s Rust team shares what it takes.