Hoot

Originally posted on Twitter June 18, 2018.

The creators of the programming language Hoot had a problem. Because of its origins as a language built for microprocessors with limited memory space, it used a custom, 16-bit (“short”) integer data type for dates.

If one wanted to use the standard 64-bit (“long”) integer Unix timestamp, one would have to dig down to Hoot’s internals and create a native extension in C. Obviously, this was time consuming, error prone, and inaccessible to new developers.

Such was it that “Standard Unix Time” became the most requested feature for the upcoming Hoot 4.0 release. Ilbin Feg, Hoot’s creator and primary developer, was particularly embarrassed by his past mistake and made it his top priority to fix it.

In his personal blog, Feg wrote “The current date implementation was a residue of my foolishness and wishing to be ‘clever’. It was silly, and now you all are saddled with the debt. It should be my responisbility [sic] to correct it.”

But time is a difficult thing to design, especially when transferring between a completely novel format and maintaining a semblance of compatibility with hundreds of hand-wrung “solutions” on projects with heavy demands.

So Feg asked for input from the community, but in return got back dozens of incompatible design drafts. The problem of long integer time had become so ingrained that people became extremely passionate that their solution was the right one.

These solutions ranged from the reasonable, like maintaining both the new and old date formats; to the ambitious, like moving the interpreter from C to a bootstrapped version of Hoot; to the strange, like using yet another custom date format using arbitrary length BigIntegers.

The community became toxic, and Feg and other core developers received death threats. The development team disabled its social media, and the once vibrant Hoot community became a ghost town as everyone waited in bated breath for the solution to the Unix date problem.

Emails to the team went unanswered. Rumors began to spread that the team had abandoned the project. Tech journals quickly deemed Hoot a dead language, and companies held meetings discussing moving their systems to another language.

Finally, after months and months of waiting, there was an update. A single, one-line blog post on Feg’s personal blog.

It simply read: “Long time, no C”.

Copyright © 2023-2025 Nat Alison