Publ: Development Blog

Entries tagged design

The downside to running on Heroku

Posted Wednesday, June 27 at 8:01 PM (2 years ago)

So, sorry to anyone who was subscribed to the RSS feed for this and got spammed with v0.1.24 release announcements. I made a mistake and pushed a version of the entry that didn’t have a canonical ID assigned yet, and as a result, every time Heroku spun up, it assigned a new ID. This is something that’s happened before and I really ought to do something about it.

Three things come to mind:

  1. Figuring out how to always make IDs get assigned in an idempotent manner (hard to do correctly)
  2. Don’t run on Heroku so the assignments persist between executions (easy)
  3. Add a pre-push hook to the repo that verifies that all entries alread have an assigned ID (???)

2 seems like the easiest approach for now, so that’s what I’ll probably do.

Dates are hard

Posted Friday, May 18 at 12:00 PM (2 years ago)

There’s an old joke in programming, that the two hardest things to do are naming things, cache invalidation, and off-by-one errors. But this doesn’t pay sufficient respect to one of the other hardest things, namely handling date and time.

Asynchronous workers

Posted Tuesday, May 15 at 5:21 PM (2 years ago)

Today I got two major bits of functionality in: Publ will now asynchronously scan the content index (which speeds up startup and fixes some annoying race conditions with entry creation), and it also asynchronously generates image renditions (which makes pages not take forever to load on first render, and will also use multiple CPU cores if available). Seems to work well so far.

I was running into scaling problems with beesbuzz.biz (what with there being a couple thousand entries and some pages with hundreds of images on it) and this keeps it feeling pretty good.

So, this brings us up to version 0.1.14.

The Trouble with PHP

Posted Tuesday, May 8 at 12:00 AM (2 years ago)

I’ve had people ask me why I’m not building Publ using PHP. While much has been written on this subject from a standpoint of what’s wrong with the language (and with which I agree quite a lot!), that isn’t, to me, the core of the problem with PHP on the web.

So, I want to talk a bit about some of the more fundamental issues with PHP, which actually goes back well before PHP even existed and is intractibly linked with the way PHP applications themselves are installed and run.

(I will be glossing over a lot of details here.)