25 Minutes of Rust 25 Minutes of Rust (Part 7) In this episode I finally finish the guessing game by adding a loop to allow multiple guesses.
Bf Interpreter Brainf*** interpreter optimization excercise (part 4) In this post the brainf*** interpreter is further optimized by translating the source code to an internal instruction set.
music SKYGGE: AI Assisted Pop Music I found out about SKYGGE and its pop album "Hello World" with AI assisted compositions that actually sound good.
blog Adding Disqus comments to Ghost In this post I describe how I modified my Ghost Template to include Disqus comments in my blog posts.
25 Minutes of Rust 25 Minutes of Rust (Part 6) In this episode I get random number and convert strings into more numbers. All this to build a guessing game, using the book "The Rust Programming Language" as a guide.
Bf Interpreter Brainf*** interpreter optimization excercise (part 3) In this part I optimize the Interpreter to run code in 43 seconds instead of 1 minute 7 seconds.
25 Minutes of Rust 25 Minutes of Rust (Episode 5) In this episode, Results and Crates. I continue to build a Rust guessing game, using the book "The Rust Programming Language" as a guide.
25 Minutes of Rust 25 Minutes of Rust (Episode 4) In this episode I aim to learn some Rust concepts beyond Hello World, using the book "The Rust Programming Language" as a guide.
25 Minutes of Rust 25 Minutes of Rust (Episode 3) In this third episode I explore the possibilities of the Rust (rls) Visual Studio Code extension.
tools Screen Recording with OBS Studio Every year I end up looking for easy to use screen recording software. Today I found out about OBS Studio.
25 Minutes of Rust 25 Minutes of Rust (Episode 2) In this episode I investigate an error with the build environment (cargo run) of my new Rust installation (missing link.exe). I'm doing a series of 25 minute sessions where I try to
25 Minutes of Rust 25 Minutes of Rust (Episode 1) I'm doing a series of 25 minute sessions where I try to get familiar with the Rust programming language. This session I try to set up a Rust development environment on my Windows 10 machine.
blog Running Ghost on Digital Ocean with Docker I changed a bunch of things to how my blog is hosted. In this post I explain how I used docker compose to run Ghost on a Digital Ocean droplet.
blog Welcome to the new blog.aaronlenoir.com I have just swapped out the old blog with an upgraded version. Several things were done: Created a new Digital Ocean $5 droplet (the new $5 droplets have slightly better specs) Simplified the
english Debugging FlacLibSharp I maintain a .NET library to read and write FLAC metadata, FlacLibSharp which some people find useful. There's a bug that I'd like to fix. I thought it could be interesting to document
english FlacLibSharp: Improving the Vorbis Comment API I maintain a small .NET library FlacLibSharp which some people seem to find useful. But an issue was reported that seemed to indicate part of the API was not user friendly. VorbisComment The
Bf Interpreter Brainf*** interpreter optimization excercise (part 2) In part 1, I looked at a reference implementation for Brainf*** and a first optimization. The execution time was reduced from 2 minutes, 16 seconds to 1 minute, 6 seconds. Now we'll look
javascript Map Reduce in JavaScript There seem to be a lot of people who believe using map and reduce to loop through lists of items produces more readable code. I want to figure out how to do this,
.net Learning .NET from the experts (Part 2) As previously I felt like browsing around the .NET Core source code again, with the aim to pick up some things. I ran into a class I didn't know: ArrayPool. Which, according to
english Creating and Publishing a Browser Extension I made a super-tiny browser extension. It's a button. When pressed it sends the current page to the Internet Archive. The business end is about 10 lines of code. In case you are
commuting Long Commutes (and an updated podcast list) I've updated my Podcast List. I've also added a link to the navigation menu above, because its a post that evolves and remains useful. There are several things I do to make my
english Running this blog with docker on Digital Ocean I try not to blog too much about running this blog itself. But this is still interesting in how it works. The past Before this blog, I ran my blog on an OpenShift
english How do One-Time Passwords work? I took some time to understand how One-Time passwords work. Sometimes technology feels like magic. I'm not a big fan of magic, so in those cases I like to get a basic understanding.
c# Get original length from a Base 64 string A question was posed today: can I get the exact length in bytes of the input data, if I have a Base64 string? The answer is yes. Summary (TL;DR) Base64 encodes three
.net Get and Set File Access Right in .NET (Windows) I had an issue in FlacLibSharp in which I incorrectly removed a file's access rights when saving changes. To make a test for this issue, I had to do two things: Set a