A bad citizen in Javaland (2006)
You are born with no body parts. One by one, your organs are pushed into you. Should anyone attempt to interact with you before your organs have finished arriving you will die. Luckily this doesn&#…
The ups of downs of porting 50k lines of C++ to Go
Rob Pike, one of the creators of the Go language, stated that he expected the language to be adopted by C++ programmers, a prediction that hasn’t been realised. Recently however at the HFT fi…
Neural Networks, Types, and Functional Programming
Deep learning, despite its remarkable successes, is a young field. While models called artificial neural networks have been studied for decades, much of that work seems only tenuously connected to modern results.
The Beauty of Clojure
Owen Rees-Hayward - Data Engineer, Software Developer, Certified Spark Developer
Use Haskell for shell scripting
turtle 1.0 announcement post
Lisp in Your Language
I'm a fan of Lisp programming languages, but there's an incredible conceptual elegance that struggles to materialise as readable elegance for many unfamiliar programmers. The underlying concepts are incredibly simple, but the learning curve can represent a disproportionate challenge.
Asynchronous Python and Databases
To quote the last part of this blog post, "I think it's [asyncio] really well done, it's fun to use, and I still am interested in having more of a SQLAlchemy story for it, because I'm sure folks will still want this no matter what anyone says.". To that end, SQLAlchemy 1.4 now includes complete support for asyncio …
“The GNU Make Book”: probably more than you ever wanted to know about make
So, it's finally here. My second book, entitled The GNU Make Book and published by No Starch Press later this month (electronically it's a...
My Top 100 Programming, Computer and Science Books: Part Three
Hi everyone! Here's part three of my favorite programming, computer, and science books. If you're just joining, please see part one and part two for introduction. This time I'll be sharing my favorite books about Unix, logic programming, thermodynamics, and mathematical foundations of computer science. In one of the...
Finite state machines as data structure for representing ordered sets and maps
It turns out that finite state machines are useful for things other than expressing computation. Finite state machines can also be used to compactly represent ordered sets or maps of strings that can be searched very quickly.
Counting Things in Python: A History
Sometimes the Pythonic way to solve a problem changes over time. As Python has evolved, so has the Pythonic way to count list items. Let’s look at...
Three Tales of Second System Syndrome
In the last decade, three major scripting languages embarked on project to produce a major revision to each language: Perl 6, Python 3, and...
Microservice Trade-Offs
The microservices architecture can be useful, but to know if it's suitable in your context you need to understand its costs and benefits.
Falsehoods programmers believe about addresses
Perhaps you've read posts like Falsehoods Programmers Believe About Names and Falsehoods programmers believe about time . Maybe you've also read Falsehoods programmers believe about geography .
Pokemon Yellow Total Control Hack
Taking over Pokemon Yellow from the inside.
What most young programmers need to learn
In the past 7.5 years I have supervised over a dozen programming interns at Ronimo and have seen hundreds of portfolios of students and gra...
BEAM languages, Hindley–Milner type systems, and new technologies
Eric Merritt, Erlang and distributed systems expert, gives his views on BEAM languages, Hindley–Milner type systems and new technologies In this case, This is not a Monad tutorial interviewed Eric …
A few spy tools for your operating system (other than strace)
A few spy tools for your operating system (other than strace!)
State of the Common Lisp Ecosystem
Personal website of Fernando Borretti.
Procedural City Generation
Since seeing the city generation from the shelved Introversion Software game “Subversion” in action , I’ve wanted to to try writing a basic procedural city generator myself. The developers followed a method described in Parish and Müller’s paper: Procedural Modelling of Cities (2001) . The paper is well-written and…
I made an NES emulator – What I learned about the original Nintendo
Interesting technical tidbits about the NES…
SIMD in Rust
An overview of my work on improving SIMD in Rust.
A cartoon guide to Flux
Flux is both one of the most popular and one of the least understood topics in current web development. This guide is an attempt to explain…