Do or do not, there is no try

Just some random design thought in days where I’m awfully tired due to daylight saving time: people who work on an OS or similarly complex software should not work on some feature unless they feel ready to get it fully done, and should not release it before it’s of release quality.

This may sound stupid and obvious, but look at something like power management on Linux: this is some great feature to have, no question, but do we want it to switch on randomly while we’re watching videos, or to be unable to disable the screen from automatically switching off because the settings panel is broken? Not so much.

Every single feature which is introduced in some piece of software must be tested to check that it is working in expected usage conditions before putting it into a “stable” release. And should be tested in unexpected usage conditions too, when possible.

Why is it so uncommon to see people doing this?

I feel so tired…

Advertisements

3 thoughts on “Do or do not, there is no try

  1. John Doe April 2, 2011 / 11:38 pm

    I do the same question to myself every day…

  2. fran April 3, 2011 / 1:50 am

    I regularly visit the (mantis) issue tracker of one specific Linux open source program. It’s suprising how many bugs can not be replicated on different systems or different linux distributions.

  3. Hadrien April 3, 2011 / 9:09 am

    I think it still means that at some point someone, somewhere, has implemented support for some hardware or hardware feature in the software without checking it by artificially hardcoding some values in the source so that it behaves like the real hardware.

    I agree that this way of testing is boring and cumbersome. It would be better if all hardware worked in the same way, like with VESA VBE, instead of having to fight adaptive monsters like the ACPI spec which would take several human lifes to implement correctly. But if we claim to fully support the spec, it means that every single hardware which complies with the spec should work properly, because as development moved forward we’ve tested every single combination of parameters.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s