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

After-FOSDEM videobox updates

The FOSDEM video capture box is a custom device for doing all the in-room stuff for the live-streams of the event. It contains a Radxa x4 SBC, a digital audio mixer, an HDMI capture card, some USB chargers and a network switch. Every room that is livestr…

via BrixIT Blog March 10, 2025

What's cooking on SourceHut? Q1 2025

Hello all! We’re back with another “What’s cooking”, after another too-long hiatus since September. We did promise to resume monthly updates, but in hindsight that seems a bit ambitious given everything on our plate. For now we’re going to aim for the more m…

via Blogs on Sourcehut March 7, 2025

Summary of changes for February 2025

Hey everyone!This is the list of all the changes we've done to our projects during the month of February. Summary Of Changes 100r.co, added Dinghy gelcoat, Week 10, Week 11, and Week 12 of the Victoria to Sitka logbook. Updated solar with new pictures…

via Hundred Rabbits March 1, 2025