I found myself locked out of a recent GitLab free account I created for a specific purpose. Frustratingly, I have yet to be informed why my account was closed, and there has been no communication from GitLab. I’ve since recreated everything in GitHub. To be locked out without any communication is poor.
Web development like it's 2009
I am in favour of Simon Willison’s “no build frontend” web development approach.
If you’ve found web development frustrating over the past 5-10 years, here’s something that has worked great for me: give yourself permission to avoid any form of frontend build system (so no npm / React / TypeScript / JSX / Babel / Vite / Tailwind etc) and code in HTML and JavaScript like it’s 2009.
I’ve been building Writeabout in Sinatra, and I’ve reached the point where I need to add a bit of JavaScript to allow the changing of the light, dark, and system themes. I already have these implemented in the original Rails code as Stimulus controllers, but I’m sure it won’t be too much work to rewrite them as plain old JavaScript.
I don’t have a favourable opinion of frontend web development. I’ve always found it unnecessarily complicated and constantly changing, but rarely for the better. For the last few years, I’ve used TailwindCSS because its build step in Rails applications is minimal—the productivity gains outweigh the added complexity. Beyond small learning projects, I’ve resisted adopting anything like React or TypeScript.
I love blog posts like this. It’s about the benefits of a pen and a notebook for software developers.
That post led to another post by the author about how they take notes at work as a software developer and a few others I have read.
Definitely a blog worth subscribing to.
That’s the 2nd time in a matter of weeks I’ve used a YAML file as a data source instead of going to straight to creating a table in the database.
The YAML file bridges that gap nicely of not needing the database quite yet, but we do need to store some structured data.
That’s pretty much most of my repositories moved from GitHub to sourcehut.
Writeabout is still on GitHub but is undergoing a Sinatra rewrite. Once that’s complete, I’ll mark the one on GitHub as archived and publicise the new one on Sourcehut.
More of my projects will gradually appear on sourcehut.
Finding the Right Git Platform for Personal Projects
I migrated one of my two GitHub accounts to GitLab a few weeks ago. The move itself had nothing to do with missing features or pricing. It was primarily to try out something else that wasn’t GitHub.
At my job, I spend most of my days on GitHub. When working on my little projects, stepping back into GitHub feels like I am back at work again. With the lines blurring between work and personal coding, I started to think that when I spent time coding on my projects, it still felt like “work”.
So, for one GitHub account, I migrated that account to GitLab. It’s been a great move, and despite being on GitLab’s free tier, I can still match feature for feature what I was paying GitHub for. And when it comes to working with that account, I don’t feel like I am back at my desk.
After the move, I considered moving my other private repositories to GitLab, but GitLab would be more than I needed. It has many great tools for maintaining code bases, but I don’t need them for smaller projects.
I needed something other than GitHub or GitLab.
Enter SourceHut, created by Drew DeVault. SourceHut is a collection of open-source development tools that are a good alternative to GitHub and GitLab.
I’ve been considering using SourceHut for a while, but I have only started seriously considering it in the last couple of weeks.
Today, I created my account and initialised a single repository to get me started. A much more straightforward and basic user interface is strange, but it works. I have become accustomed to the feature-rich user interfaces of GitHub and GitLab. While SourceHut lacks many of the features found in the two bigger platforms, the simplicity of the SourceHut user interface makes it refreshing to use, with just the essentials.
Over the next few weeks, I will migrate more repositories, and then I can demote my GitHub account to be used only for work.
I’ve been having quite a positive experience with Claude.ai inside the Zed text editor. More verbose than Copilot, but definitely better results than ChatGPT and Copilot.
Finally finished my greenhouse project.
A much better use of the space and will be a better environment for growing. We’ve more flowers growing on the deck as well. Be nice when these are in full bloom.
We’ve more plans for next year. A couple of raised beds will be added for vegetables and herbs.

A cracking for our golf club’s juniors to start their league matches. It’s looking like a draw but could still go either way.

I started putting the steel base down on top of my greenhouse’s foundation tonight. Hopefully, it will be fully built and ready to host some plants by next week.
Good times ahead at Green Bay?
Green Bay’s first wide receiver round 1 pick since 2002 isn’t the only reason the Packers fan base is excited. Matthew Golden had some great stats for last season and the playoffs.
In 16 games last season, he hauled in 58 receptions for 987 yards — 17.0 yards per catch — and nine touchdowns as a trusted target for quarterback Quinn Ewers. Golden saved his best play for down the stretch, posting season highs in receptions (eight) and receiving yards (162) against Georgia in the SEC Championship Game. During the Longhorns' thrilling double overtime win over Arizona State in the quarterfinals of the College Football Playoff, Golden had seven receptions for 149 yards and the game-tying touchdown in the first overtime.
Stats like this are encouraging, and hopefully, Golden can carry this production level to the Packers for many seasons to come. I’m also looking forward to seeing Christian Watson return. Having Golden and Watson on the field together gives Love a lot more options.
I’ve been using the Claude 3.7 Sonnet LLM within Zed and the results have been pretty good. Claude is a lot more verbose than my previous experience with Copilot and a few times has recognised issues around my code that I didn’t see initially.
On-course lesson for the boys today with their coach. Turned out to be a cracking day for it despite the downpour this morning.
I’m just acting as caddy for the wee yin. 😂
