Four principles of software engineering October 9, 2020 on Drew DeVault's blog

Software should be robust. It should be designed to accommodate all known edge cases. In practice, this means predicting and handling all known error cases, enumerating and addressing all classes of user inputs, reasoning about and planning for the performance characteristics of your program, and so on.

Software should be reliable. It should be expected to work for an extended length of time under design conditions without failures. Ideally, it should work outside of design conditions up to some threshold.

Software should also be stable. It should not change in incompatible or unexpected ways; if it works today it should also work tomorrow. If it has to change, a plan shall be written. Stakeholders (including users!) should be given advance notice and should be involved in the planning stage.

Finally, software should be simple. Only as many moving parts should be included as necessary to meet the other three goals. All software has bugs, but complicated software (1) has more bugs and (2) is more difficult to diagnose and fix. Note that designing a simple solution is usually more difficult than designing a complex solution.

This (short) article is based on a Mastodon post I wrote a few weeks ago.

Articles from blogs I read Generated by openring

Trudging Through Nonsense

Last week Anthropic released a report on disempowerment patterns in real-world AI usage which finds that roughly one in 1,000 to one in 10,000 conversations with their LLM, Claude, fundamentally compromises the user’s beliefs, values, or actions. They not…

via Aphyr: Posts February 4, 2026

Hare meetup at FOSDEM 2026

The Hare community is hosting a meetup at FOSDEM 2026 and we would love to meet you there and discuss your projects and the direction of the Hare programming language in the coming year. We will be meeting in UA4.228 at 14:00 on Saturday: check the schedule. S…

via Blogs on The Hare programming language January 22, 2026

BodgeOS pt.6

Getting KiCad working One of the things I want to get working is KiCad so I can also do the electrical design stuff also on the laptop I'm bringing to FOSDEM. It turns out this is pretty hard since I've been building BodgeOS as wayland-only distrib…

via BrixIT Blog January 18, 2026