Email or username:

Password:

Forgot your password?
Dan Luu

Ever since getting burned by Hugo (twitter.com/danluu/status/1244, etc.), I've made mental note when I see a maintainer complain that it's stupid to waste effort on backwards compatibility and I don't use their software.

I don't think this would've saved me from Hugo since I'd never heard of the author before they wrote Hugo, but even in just a few years, these mental notes have saved me from software that constantly breaks at the maintainer's whim multiple times.

8 comments
Dan Luu

I don't think maintainers should cater to my whim — if they want to write software that breaks all the time, they should do it. But, per patreon.com/posts/27662175, I want to know that's their attitude so I can avoid their software.

E.g., with Hugo, literally everyone I know who uses it runs some ancient version because the amount of work it takes to migrate is greater than the effort to write a custom SSG, but this means their site has all sorts of annoying bugs because they don't get bug fixes.

phillmv

@danluu i escaped this problem by writing my own SSG, which I am now too busy to maintain or fix 😜

Maciej Sinilo

@danluu I probably run an ancient version but tbh I never bothered updating mostly because I never noticed any bugs :shrug:

Matthew Bloch

@danluu I have made Hugo work several times but it has never made any sense

Carl M. Johnson

@danluu I've been using Hugo since 2016, and I haven't had any problems with backwards compatibility breaking. I think it changed something about RSS at some point, and maybe the Twitter shortcodes. In general, it's not the worst offender for me in terms of breaking BC.

Daniil Baturin

@danluu Before I went on to write an SSG whose explicit goals are extensibility and compatibility, I evaluated Hugo and found it quite amusingly bad: baturin.org/blog/why-not-hugo/

My "favorite" part is that it parses HTML internally in two different ways: in some places with regexes, in other places with a bundled HTML parser, and also calls external utilities for AsciiDoc etc., but gives the user no way to even configure asciidoctor options.

Hazel Weakly

@danluu this is why I clearly document my opinions on what "compatibility" means and what assumptions I try to operate under for what I will do to support things.

I can't make everyone happy, but I *can* take steps to ensure that people aren't surprised (negatively) by things.

Separating out my opinions, tech debt, and forces ecosystem evolution, is something I've found particularly effective for this.

artpi

@danluu I sometimes feel like chasing hype incentives breaking backwards compatibility. The "cool" stuff is rarely compatible
But it's funny to toil away in WordPress mines and see a cycle of hype come full circle. Now server side rendering is en vogue!

Go Up