惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Vercel News
Vercel News
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Apple Machine Learning Research
Apple Machine Learning Research
T
Tailwind CSS Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
人人都是产品经理
人人都是产品经理
V
V2EX
量子位
Last Week in AI
Last Week in AI
Jina AI
Jina AI
博客园 - 【当耐特】
爱范儿
爱范儿
宝玉的分享
宝玉的分享
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Hugging Face - Blog
Hugging Face - Blog
博客园 - 三生石上(FineUI控件)
有赞技术团队
有赞技术团队
小众软件
小众软件
IT之家
IT之家
博客园_首页
博客园 - 聂微东
S
SegmentFault 最新的问题
阮一峰的网络日志
阮一峰的网络日志
博客园 - 叶小钗

Red Blob Games: latest blog posts

Red Blob Games: Differential heuristics Red Blob Games: Responsive design calculator Red Blob Games: Academic citations Red Blob Games: Highlighting interactive code blocks Red Blob Games: Optimizing page size Red Blob Games: Writing a guide to SDF fonts Red Blob Games: URLs with trailing punctuation Red Blob Games: What I did in 2025 Red Blob Games: Goodbye Sass Goodbye Sass Red Blob Games: RotMG map seeds Red Blob Games: Mapgen4 Mapgen4's use of WebGL2 Red Blob Games: Mapgen4 river shader Red Blob Games: Mapgen4 renderer Red Blob Games: Harnessing ChatGPT hallucinations Red Blob Games: Let Let's write a search engine, part 2 of 2 Red Blob Games: Let Let's write a search engine, part 1 of 2 Red Blob Games: Hexagon conversions Red Blob Games: Mapgen4 trade routes Red Blob Games: De-optimizing mapgen4 Red Blob Games: Hexagon spiral coordinates Red Blob Games: Thoughts on Flash Red Blob Games: What I did in 2024 Red Blob Games: Hexagon page animations Red Blob Games: SDF Halos SDF Halos Red Blob Games: SDF headless tests, part 2
Red Blob Games: New Blog for 2024
2024-03-09 · via Red Blob Games: latest blog posts
Blog post: 8 Mar 2024

For some time now I’ve been unhappy with how much more friction there is when posting to my blog[1] than posting to twitter[2]. I keep wanting to blog more but I don’t. Part of the problem is content. I did blog more in 2018, when I was working on projects that had more to share. Part of the problem is expectations. On Twitter it’s expected that I write very little (280 character limit, up to 4 images or 1 animation). That constraint makes it easier to post. On my blog I tend to write longer more involved posts. But part of the problem is the process. My posts on Twitter take a lot less effort than my posts on Blogger. The Blogger UI got a lot worse in 2020[3], but it was already inconvenient for me.

So I’ve been thinking about what I actually want, and what I want isn’t Twitter or Blogger. I want something much closer to Hugo or Jekyll — a static site generator. I want to be able to save a file and have it become a blog post. I want to be able to grep over my existing files. I want to be able to write a perl script to fix something across pages. I decided a goal in 2024 is to switch from Blogspot to a static site generator.

But when I looked at Hugo and Jekyll I started thinking of more things I wanted. In particular, I want to integrate into the rest of my site, which isn’t Markdown, but instead a messy mix of technologies that I’ve worked with over the past nearly 30 years of having a web site. I already have a static site generator. I use Emacs Org-Mode instead of Markdown. Hugo does support Org-Mode[4], and Org-Mode has a way to publish posts[5], and there are Org-Mode blogging packages[6]. But I don’t always use Org-Mode. I sometimes use Markdown. I sometimes use XHTML. And I sometimes use other formats. Also I have my own templating system based on XSLT. So either:

  1. I use Hugo/Jekyll/etc and replicate my template and other aspects in their format, which means I need to maintain two versions.
  2. I write my own blog software, which I have to maintain.

But what is actually involved in writing my own blog software? I already have the markup and templating and comments. What’s missing is:

  • Atom/RSS feed
  • Home page showing the most recent posts
  • Browse by category
  • Browse by date

Of these, I already want to add browse by category and browse by date to the rest of the site, so the main thing I need to add is an Atom/RSS feed and a home page listing the posts.

Well, I decided to try it.

  1. Each blog post will be in /blog/YYYY-MM-DD-slug/index.html → no extra work
  2. I’ll use the templating system I already use for the rest of the site → no extra work
  3. When I save a file (markdown or org-mode) it will automatically update the html → no extra work
  4. A short Python script will find all /blog/*/index.html files and generate the feed (xml) and home page (html) → some work
  5. The home page will use my standard page template → no extra work
  6. Each blog post will have comments like any other page on my site → no extra work

“How hard could it be?” → famous last words, right? I’ll see how it goes. I’m using python-feedgen[7] and ElementTree[8], and I think it will be around 200 lines of Python code to implement the blog, assuming nothing goes wrong.