Giving Ada a Chance
ajxs personal site
The latest blog posts to take off on Hacker News. 14,541 posts.
ajxs personal site
Asking a "why?" question means we want to be told a reason. But would we accept any reason? It seems not, for if any answer suffices, then the answer is irrelevant, so why bother asking?
When I was a kid, I wrote a BASIC program to explore Conway’s Game of Life on my 8088. It was painfully slow, so I began an assembly rewrite. But I failed at Life: I abandoned the project in frustration because I kept freezing up my system.
I would like to thank krazhier and Keits for taking hours out of their busy schedules to discuss technical aspects of netcode with me, and Sajam for taking time to answer interview questions and being supportive throughout the writing process. I would also like to especially thank MagicMoste for making all the…
A blog about life, programming, math, logic, and physics.
We continue our walk on the path leading to Vim mastery by reviewing crazy Vim functionalities which will increase even more your productivity.
Sure, we all pretend to know them, but rarely do we think they apply to us. Your manager certainly doesn't...
Two years ago, I starting learning PureScript. I had been intrigued by purely functional programming for some time but had failed to learn Haskell once or twice. PureScript seemed to be a kinder, gentler introduction to this world while retaining the fundamental properties of pureness that made Haskell intriguing to…
It's taken me much longer than I hoped, but I finally have a second version of my patches to build static executables tested and ready to go! This set of patches vastly improves upon the first by reducing the amount of compilation needed at the cost of sacrificing a little purity. Additionally I have created a system…
In the Unity for Software Engineers (now updated and available as a book), series, I give an accelerated introduction to game development in Unity.
How types might be the missed part of the future of code
At this point, most developers use Git as a tool for collaboration. We have our rote-learned commands to pull, commit, and push. And of course, there's that one coworker who knows a bit more about Git…
Wouldn't it be nice if more JSON tools supported a truly pretty JSON format? Demand options for truly pretty JSON now! Viva la revolucion!
Summary: JWCC is a minimal extension to the widely used JSON file format with (1) optional commas after the final element of arrays and objects and (2) C/C++ style comments. These two features make it more suitable for human-editable configuration files, without adding so many features that it’s incompatible with…
Research software (i.e., software written to support research in engineering or the sciences) is usually a tangled mess of spaghetti code that only the author knows how to use. Very occasionally I encounter well organized research software that can be used without having an email conversation with the author (who has…
Over the last 25 years, I’ve written a lot of event-driven code in C++. A typical example of event-driven code is registering a callback that gets invoked every time a socket has data to be read. Once you have read an entire message, possibly after many invocations, you parse the message and invoke another callback…
Go is not an easy programming language. It is simple in many ways: the syntax is simple, most of the semantics are simple. But a language is more than just syntax; it’s about doing useful stuff . And doing useful stuff is not always easy in Go.
Say you run an online book store and want to build a data pipeline that figures out who the top-selling authors are. Logically, the input to the pipeline is a log of every individual book purchase on the store for all time, along with details about each book like who authored it. And the output is a list of the…
I released Datasette 0.55 and sqlite-utils 3.6 this week with a common theme across both releases: supporting cross-database joins. Cross-database queries in Datasette SQLite databases are single files on disk. …
An introduction to the TCC course “Formalising Mathematics”
To infinity and beyond!
There is a popular movement on Choosing Boring Technology started by article by Dan McKinley, followed by some discussions on Hacker News…
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
There’s a scene in Moneyball in which Brad Pitt’s character, the manager of the Oakland A’s , is watching a recording of one of his players trying so hard to run fast that he stumbles and falls. Lying on the ground he’s angry at himself, because he doesn’t realize that right before he started his run he hit a home run…
This post is the second in a three-part series about Cranelift . In the first post , I described the context around Cranelift and our project to replace its backend code-generation infrastructure, and detailed the instruction-selection problem and how we solve it. The remaining two posts will be deep-dives into some…
Today you are frustrated.