Previously I wrote a blog post about what my next adventure will be in software development. I had quite an ambitious list of things I wanted to learn and accomplish. However, life happens and I wasn’t able to accomplish nearly what I set out to, theres still time, but that might take years.

Some of what I have completed:

  • I learned a lot more about self-hosting AI models
  • I fought with Librechat (I had a bad experience with that)
  • I got a nicely working local interface working with Open-WebUI
  • I attempted to create a RAG (Retrieval-Augmented-Generation) from my local E-Book collection (More will be written about that later)
  • I finally tried out ChatGPT. I was using Copilot at my last employer (It wasn’t a great experience) ChatGPT voice mode is a game changer
  • I converted my site into a full blog. This was a long needed task and there was some cleanup involved.
  • I leetcoded, alot.
  • For fun I’ve gotten into the game Cult of the Lamb- it’s a game that mixes resource management with Hades in a fun twist.

Well I must admit.. I vibe coded.

That feels so dirty to admit. But it helped. It helped with a context switch and gave creative answers. It helped with reintroducing concepts and syntax with the Liquid templating language. Vibe coding reduced the barrier of effort to get in and resolve this problem of working on the blog. Writing articles with Markdown is easy. But it’s not easy to completely move over your previous site’s content and migrate it to the main site. The tools I used were ProxyAI that connected to Ollama and used the Qwen2.5-coder mini model in order to help answer questions and fill in blanks.

How did it turn out?

It worked ok. Some suggestions about basic syntax were great. There were hallucinations that took me down some bad rabbit holes. For example, with Liquid templating, you can sort a list of objects by a property. But you can’t set dynamic behavior to do this. It went way overboard in it’s solutions. Also in setting up redirects with the blog, it made suggestions about dynamic behavior for the jekyll-redirect-plugin that didn’t exist.

So it was hit or miss. But ultimately it helped me, and it helped with motivation to get this done.

The site is fully converted over now!

This is a big deal. Previously, this was really 2 websites. One site was more of a portfolio, and the other was more of a blog. It didn’t make sense to have the two separate sites. Now they’re combined and it’s easier to update everything. The technology is a bit more complex, but at least there’s statically generated content and I have tooling support. The old site was coded in a large XML document supported by an XSLT transform and a PHP script that pulled the content from the XML file on demand. The new site is entirely done in Jekyll.

What changed?

I ported over the following Project Pages and added some more details:

I created an “All Posts” page that groups all the blog posts by their publish month and year.

I fixed a few minor issues with the tags page.

What I’m still excited about:

  • There’s still a ton of blog posts that I need to finish and write.
  • Doing a POC with Broadway and Elixir
  • More applications with Rust

I still think all of those items in the last blog post are improtant, but I will work on that as I get time.