Blog Posts
In these blog posts I write, sometimes rant, about a number of topics. These posts are often not quite fleshed out or complete. Fully finished pieces of writing are found in my articles. These blog posts are often a prelude to an article, where I further refine a post, or combine multiple posts, in a single article.
Building Emacs 30.2
I was still running Emacs 29.4 so it was time to upgrade to Emacs 30.
To read more Emacs 30.1, checkout the great information from Mickey Petersen on the Mastering Emacs website about this release: https://www.masteringemacs.org/article/whats-new-in-emacs-301.
Build instructions
First step is pulling down the emacs source via git:
git clone https://git.savannah.gnu.org/git/emacs.git
Since I want to build version 30.2, I did a checkout of that tag using
git checkout emacs-30.2
My usual build instructions are a bit out of date since Native Compilation is now enabled by default! Just make sure you have libgccjit installed as native compilation is a must have feature if you want a fast Emacs setup!
Building Emacs on Debian is quite straightforward, run ./autogen.sh, followed by ./configure.sh and make.
This can take some time as after compiling all C code, emacs will compile all elisp code required for Emacs. If everything went well, you can start Emacs 30.2 from the binary in the src folder. If you want, run make install to install the binary on your system.
After building Emacs 30.2 I restarted my Emacs daemon and fired up trusty emacsclient. Success!
GNU Emacs 30.2 (build 1, x86_64-pc-linux-gnu) of 2025-09-18
gptel - LLM client in Emacs
My mind was just blown by gptel. gptel is described as A simple LLM client for Emacs, but it is anything but simple. Simple to use, yes, but incredibly powerful!
In true Emacs fashion, the number of options and featuresis extensive. I'm still discovering all the possibilities, but here are my initial thoughts on gptel.
I configured gptel with OpenRouter.ai as the backend. This allows me to use multiple LLM models without the need to configure multiple API keys, keep track of the usage on those accounts, etc.
One of gptel's strongest features is its buffer-based workflow. You can select part or all of a buffer's contents and send it directly to gptel. You also have control over which buffer will receive the response. This tight integration streamlines your experience within Emacs by eliminating the need to manually copy and paste between buffers or windows. To use this feature, simply mark the lines you want to include, add your prompt, and send them to your preferred LLM - all within Emacs.
For example, I marked the paragraph above in Emacs, called the gptel-menu function and asked GPT-4.1 to critique and analyse it. The output was sent to a dedicated buffer so it didn't clutter my html code.
I then added that output to the context gptel uses. Yes, you can manage the context manually. This allows you to carefully manage the context you send along to your LLM. With the managed context, I asked GPT-4.1 to rewrite the paragraph taking the previous critique into account.
I'm very excited to see what's possible when I define some elisp based tools and tie them into gpel! More on that later!
Blogs are dying, Blogspot is still around
I was surfing around on Planet Lisp just catching up recent Lisp related posts and ended up on a Blogspot powered blog.
It dawned on my that blogspot is still around after all these years! Which really surprised me because of the reputation of Google to sunset products that no longer fit their strategic vision of that quarter.
Of course I image the content on there is invaluable these days as a source of LLM content they can process. LLM training takes huge amounts of data and the blogs that are present on Blogspot combined with the still active ones are without a doubt a great source of LLM training material.
I then tried to find out how many blogs are still active in 2025, which was very hard to be honest. The SEO spam that filled the search results really made it hard to find good data. The few sources I did find that had any meaningful content on the topic stayed away from time series or any other form that allowed me to determine if and how much blogging has slowed down in past X years.
Without data it's difficult to make an educated statement but I have a feeling that mainstream blogging has very much declined. Mainstream websites still have large amounts of SEO Spam (ie: posts to score higher in the every evolving tragedy that are search engine results). More niche websites, personal websites or The small web still have a large number of active bloggers.
Sentimental for simpler things
I turned 40 this year though I don't know if it's relevant or not. I find myself getting more and more sentimental for simpler things, easier times.
Throughout my life I have always loved technology. Learning things, finding out how things work, building things, using technology. It's been the constant throughout my life.
The past couple of month's feel like (yet another) rollercoaster. I'm doing a lot of very interesting, technological things both on a professional and personal level. I keep growing and evolving as an individual. Yet it feels more forced, more busy, more difficult than ever before.
I don't know, maybe I'm just tired, maybe it's my age catching up.
Dedicated devbox for remote development
I've been using some form of devbox for a couple of years now. With devbox I mean a dedicated server, aka development box, for all my development purposes.
You could view it as a bit wasteful. After all, my main laptop (and secundary one) are plenty powerful for all my development needs. I do get a number of advantages from having a separate devbox.
The main advantage, for me personally, is that I can keep editing sessions open when I logoff, shutdown or move between laptops.
These days I'll either use Neovim or VS Code, depending on what project I'm working on. Both are very suited to use with a remote development server. I either have Neovim running in a tmux session or connect to VS Code.