Articles
2021
-
Using Neovim and Configuring it with Lua -
A Brief History of Text Editors: from Vi to Visual Studio Code
2020
2019
-
In Defence of Java -
A Proposal for the Web: Improving Security with Versioned Baseline Defaults -
Using Single-Field Wrapper Types to Reduce Bugs -
The Distinct Niches of Go & Rust -
To Secure Systems of the Future, We must Rethink our Notions of "Environment" and "Operating System" -
Skipping Expensive Security Checks with JIT Compilation -
Lambda Syntax in Mainstream Programming Languages
2018
-
Your CI Pipeline has the Skeleton Key to your Infrastructure -
WebAssembly: a Security Engineer's Review -
Syntax Highlighting and Remote Code Execution: Why Developers are an Easy Target -
Timing Attacks: Why being Efficient can Leak Information -
Asynchronous APIs are a Step Backwards for Non-Blocking Code -
Escape-Bypassing Language Injection: Exploiting Multiple-Level Language Embedding -
Unix Parallelism and Concurrency: Processes & Signalling