New
The latest blog posts to take off on Hacker News. 21,835 posts.
Introduction to ARM Assembly Basics
Welcome to this tutorial series on ARM assembly basics. This is the preparation for the followup tutorial series on ARM exploit development . Before we can dive into creating ARM shellcode and build ROP chains, we need to cover some ARM Assembly basics first.
Realizing Hackett, a metaprogrammable Haskell
Almost five months ago, I wrote a blog post about my new programming language, Hackett , a fanciful sketch of a programming language from a far-off land with Haskell’s type system and Racket’s macros. At that point in time, I had a little prototype that barely worked, that I barely understood, and was a little bit of…
Principles of TLA+
TLA+ is a formal specification and verification language intended to help engineers specify, design and reason about complex, real-life algorithms and software or hardware systems. We explore its motivation, application and principles of design.
UIDebuggingInformationOverlay
Update, December 9, 2017: This overlay still exists, but this post’s instructions don’t work on iOS 11 and later. In an update to his excellent book, Advanced Apple Debugging and Reverse Engineering, Derek Selander describes how to get the panel working in iOS 11. He’s generously posted the chapter for free here.While…
Npm v5.0.0 released
npm Blog (Archive); updates from the npm team are now published on the GitHub Blog and the GitHub Changelog
Writing a Fast JSON Parser
Several holidays ago, I got a bee in my bonnet and wrote a fast JSON parser whose parsed AST fits in a single contiguous block of memory. The code was small and simple and the performance was generally on-par with RapidJSON, so I stopped and moved on with my life.
Twilio Functions – Public Beta
Write and run Twilio code without dealing with servers. 10k free invocations every month—$0.0001/invocation after. Now available to everyone in public
Qt Creator 4.3.0 released
Explore the Qt Blog for the latest insights on e.g. Qt Creator, your go-to source for cross-platform development tips and updates.
Readable Clojure
Some advices to writing Clojure code
The largest Git repo
It’s been 3 months since I first wrote about our efforts to scale Git to extremely large projects and teams with an effort we called “Git Virtual File System”. As a reminder, GVFS, together with a set of enhancements to Git, enables Git to scale to VERY large repos by virtualizing both the .git folder […]
Mavo: An HTML-based language for creating many kinds of web applications
Today I finally released the project I’ve been working on for the last two years at MIT CSAIL : An HTML-based language for creating (many kinds of) web applications without programming or a server backend. It’s named Mavo after my late mother ( Ma ria V er o u), and is Open Source of course (yes, getting paid to work…
Little Things I Like to Do with Git
Handy Git tricks and aliases: leaderboards, praise, word-diff, branch history, daily recaps, changelog generation, and more in one quick guide.
Helping a Million Developers Exit Vim
You're not alone, jclancy. In the five years since this question was asked, there have been over a million other developers who got stuck in Vim and couldn't escape without a bit of help. Indeed, the difficulty of quitting the Vim editor is a common joke among developers.
Little Lisp interpreter
Little Lisp is an interpreter that supports function invocation, lambdas, lets, ifs, numbers, strings, a few library functions, and lists. I wrote it for a l...
How a 64k intro is made
The demoscene is about producing cool real time works (as in “runs on your computer”) called demos . Some demos are really small, say 64 kilobytes or less, and these are called intros . The name comes from “crack intros”. So an intro is just a demo that’s small.
Linux utils that you might not know
I’ve used Linux as my primary operating system for well over ten years, yet I still stumble upon things that are completely unknown to me. For example...
Building a legacy search engine for a legacy protocol
Most users who use the internet today, are mostly focused on three protocols, HTTP, TLS, and DNS.
Mono 5.0 Ships with Concurrent Garbage Collector
In Mono 5.0 we are shipping a new operation mode for our Garbage Collector: Concurrent Garbage Collection.
Writing a lexer in Go with Lexmachine (2016)
This article is about lexmachine , a library I wrote to help you write great lexers in Go. If you are looking to write a golang lexer or a lexer in golang this article is for you.
Adding a new Bytecode instruction to the .NET runtime
Now that the CoreCLR is open-source we can do fun things, for instance find out if it’s possible to add new IL (Intermediate Language) instruction to the runtime.
P: A programming language for asynchrony, fault-tolerance and uncertainty
To address the challenges of asynchronous computation, we have developed the P programming language for modeling and specifying protocols.
An Intro to Integer Programming for Engineers: Simplified Bus Scheduling
Explore what’s new, what’s next, and what should be on your radar in the world of transportation. Our insights are supported by real-world data from our partners across the globe.