Weekly Brain Dump #11
At a Glance
- Taylor Community: Working on the Taylor Community site continues anew
- Building a Programming Language: The bad thoughts win and I look into building a language
- Interesting Links: Cool things I found this week
Taylor Community
Now that I got warden working with Hanami I’ve decided to go back to my Rails implementation of the community site. While I’ve enjoyed Hanami I’m looking to have a high velocity with this so sticking with tooling I know is going to be better. I will absolutely revisit Hanami later as I liked a lot of the decisions they’ve made and found it a great experience.
Going back to an old codebase always means I get to do one of my favourite things, upgrading libraries! I’m not even kidding, I get a lot of pleasure out of bumping gems and doing Rails upgrades. So now it’s running on Rails 8.1.
I decided to take it a step further though and rewrite the entirety of the erb templates I was using into Phlex. I find using Phlex a much nicer experience than writing erb templates.
Building a Programming Language
I’ve gotten the itch to learn how to make a programming language. It’s mostly for the learning experience. I’m curious how all the parts come together to create a binary. I’m familiar with lexers and abstract syntax trees (AST) but I’m excited to learn how an AST turns into a language-independent intermediate representation and then into actual machine code for different platforms.
I’ve been looking at the createlang.rs website and trying to use it in conjunction with parslet to do this in Ruby. This is because ideally I’d like to design a language fairly inspired by Ruby.
I actually have part of a blog post written about my thoughts and complaints about current languages that I think could be interesting. I might try and focus on getting that finished while doing this project.
Interesting Links
Farewell, Rust: Another article about how low level languages aren’t ideal for writing web services.
High-level is the goal: The premise here is that high level languages have nicer tooling and if low level languages had better tooling more people would write efficient software. I dunno if I completely agree with the article, but it’s interesting.
Most Developers Don’t Build New Things: A nice reminder that most software development work is overwhelmingly maintenance and not greenfield projects.
How I made a shooter game in 64 KB: Wow, this was amazing. So many amazing tricks including “just writing a new language because it’s more effecient”.
mruby-examples: A repository for examples of how to use mruby - which is what Taylor uses for scripting.
How We Fixed YAML Comment Preservation in Ruby (And Why We Sponsored It): I had no idea this was possible.
The Death of the Software Craftsman: A great take on the current state of software development with regards to LLMs. I’m not sure I agree entirely with the three options at the end, but it’s interesting.
Roguecraft GB: The process of porting Rogecraft DX to the Gameboy Colour, a truly impressive feat of engineering.