Building a GuixSD Vagrant box

Tom Parker-Shemilt wrote “I’ve been curious about the use of declarative mechanisms for creating operating systems for some time. In contrast to most configuration management tools which say certain things that will be true and let everything else do what it likes (particular packages will be installed, particular services in a named state, etc), declarative mechanisms declare the…”

Lego Telepresence bot: how not to try and build one

Tom Parker-Shemilt wrote “Four years ago, I built a Dalek-based telepresence bot (part 1, part 2), and I’d been idly thinking for some time that what I really needed to do was make a better follow-up, as a much better one could probably be done with Lego Mindstorms especially given the existence of the BrickPi board for interfacing…”

Vellere: exposing Github vulnerability notifications to Slack

Tom Parker-Shemilt wrote “A few years ago, Github introduced vulnerability alerts on repositories and although it was initially just for Javascript and Ruby, they’ve since expanded it to Python, Java and .Net and I’m guessing more languages are also on their roadmap. It’s a useful feature, except for one problem: it’s notifications are poorly implemented. They appear to…”

AWS Lambda and Actix: easy conversion of small web apps into serverless

Tom Parker-Shemilt wrote “I’ve been idly considering the uses of serverless computing, and I’m still not convinced it’s worth it. I’ve used it before, mostly as a means to make things happen in response to AWS events, but the pattern everyone talks about is using them to run web apps, and I’m not fully convinced about that. However,…”

On the value of maintenance

Tom Parker-Shemilt wrote “Most of our posts here talk about new software, but there’s also a lot of value in the longer-term maintenance of code and given I’ve done some of that recently, I thought it worth revisiting various earlier projects in that light. None of these are really large enough to have their own post, but collectively…”

Serialising Rust tests

Tom Parker-Shemilt wrote “I’m once again prodding the potboiler tests and a couple of the tests I was doing wanted to mess around with the shared database. This had the problem that multiple tests would collide with each other, as the default for Rust testing is to run everything in parallel. This is unusual, but good in many…”

Making a Spaceteam timer app with Flutter

Tom Parker-Shemilt wrote “Some of you may have run into the excellent Spaceteam mobile game. It’s best described as ‘co-operatively shouting at each other to fix your broken ship’, and it’s a lot of fun. Some fun folks then went and made a card game variant of it, which is similar in many ways. Now, both games have…”

Experiments in converting code from C to Rust

Tom Parker-Shemilt wrote “I’m quite fond of Rust (as a few blog posts on the topic may indicate), but one item I hadn’t really explored was replacing/rewriting existing C code bases in Rust. There’s a general joke about the general notion of “rewriting everything in Rust is of course always the right thing to do!” (Google “rust evangelism…”

Clincher: checking your signed git commits

Tom Parker-Shemilt wrote “Recently for a project with tight regulatory requirements we decided that git signing throughout the project was a good idea. There’s a debate about it’s level of effectiveness, given that all it tells you is that a particular commit was made from a particular developers machine, and if they’re not careful, they can end up…”

Even more Rockstar: using WebAssembly to run Rust code in browser

Tom Parker-Shemilt wrote “Two months ago I blogged about how to be a Rockstar developer, and demonstrated it with a Rockstar interpreter called Maiden written in Rust. Now, normally Rust is considered a systems programming language (it even says so on the Rust homepage), and the command-line nature of Maiden aligned well with that. Except that Rust is slowly…”

Not all watchers are created equal (or how to make yak shaving useful)

Tom Parker-Shemilt wrote “I’ve been hacking around with a Clojurescript project recently, and it resulted in a certain amount of yak shaving when I found the watcher system I was using was eating a lot of CPU. On the one hand, yak shaving is bad, because you’re doing other things that aren’t the core task you’d originally meant…”

How to be a Rockstar developer!

Tom Parker-Shemilt wrote “You’ve probably followed that clickbait of a title and are hoping for some super-secret tips on how to be a ‘Rockstar developer’, and I’m not going to disappoint on that (technically). But before that, I’m going to note to those of you lucky enough to have not seen that particular variety of recruiter spam that…”