Rust, a Raspberry Pi and Addressable LEDs
Tom Arrell's blog. Tom is a Software Engineer who writes about programming, embedded and electrical projects, and life.
Topics /
The most popular blog posts about software engineering on Hacker News. 874 posts.
Tom Arrell's blog. Tom is a Software Engineer who writes about programming, embedded and electrical projects, and life.
PANE is a live, functional programming environment built around data-visibility. In PANE, all intermediate values are visible by default, and you construct a program by acting on these concrete values.
Stuff about things
This post is a write-up of a solution to part of a programming puzzle I did yesterday. It’s a little different than the usual “solution + theory” approach, though: I’m going to talk about the actual steps you’d need to take to get to the solution (i.e. what to google, what intermediate code looks like, etc.). Often…
In the original Unix tradition, command-line options are single letters preceded by a single hyphen…The original Unix style evolved on slow ASR-33 teletypes that made terseness a virtue; thus the single-letter options.
I've just finished teaching a four-day course introducing software engineering for the first time. My plan is to refine the course (I'm teaching it again in October), and it will eventually become the basis for doctoral training programmes in research software engineering at Oxford, and part of a taught Masters. My…
Things I enjoy in Rust:
A loop invariant is a simple yet powerful tool for designing, testing, modifying, documenting and proving code correct.
I have written this post for developers in the Common Lisp community who asked why I am switching to Julia. It may only be relevant for the small set of people who use Common Lisp for scientific computing.
I've released my new iOS app, Vignette.
How I make it work (or not)
I wrote a couple of years ago about the troubles I had finding a good libc for embedded systems , and for the last year or so I've been using something I called 'newlib-nano', which was newlib with the stdio from avrlibc bolted on. That library has worked pretty well, and required very little work to ship.
RiakAround 2013, Riak was at the forefront of Conflict-Free Replicated Data Type (CRDT) development with the engineers at Basho Technologies working hard to integrate efficient, usable CRDTs from t...
Trying to design a new programming language, I’m faced with the question of how to implement a parser for it. Various parser generators are available and sup...
Understanding how the academic community understands software adoption.
A series of how to examples on using jq, a command-line JSON processor
If you're a programmer who's become fed up with software bloat, then may you find herein the perfect antidote.
Back in 2015, Brian Will wrote a provocative blog post: Object-Oriented Programming: A Disaster Story . He followed it up with a video called Object-Oriented Programming is Bad , which is much more detailed. I recommend taking the time to watch the video, but here’s my one-paragraph summary:
I’ve recently been tinkering around with using a Raspberry Pi as a desktop computer. The Pi 4 is fairly powerful; very sufficient for web browsing, audio, video, and terminal use for programming.
Let's take a quick look at what compile-time execution looks like in Zig.
Excessive instruction cache misses are the kind of a performance problem that's going to appear only in larger codebases. In this article, I'm describing some ideas on how to deal with this issue.
Today, I'm publishing a new book: Property-Based Testing with PropEr, Erlang, and Elixir . It's my third book, the second one that is not self-published.
In the current year web developers are regarded as Jacks of all trades, they gotta do everything from manual testing to frontend ninjutsu, but is it worth it?
Many people struggled with my article about Alan Kay and OO programming, so let's talk about the main objection.
Here's what no one tells you when you graduate with a degree in computer science and take up a job in software engineering:
To learn Rust, I implemented an audio game. There were some things I liked and some things I didn't. Some things were easy and some were hard. And there were plenty of libraries that were a joy to use.