Moral Excellence – Part II

August 19, 2009 under theology

One of my favourite classes in school was a class on moral excellence.

Ooops – that’s a typo. I took a degree in Computer Engineering, and they don’t have classes on moral excellence in Computer Engineering. I meant to say, “One of my favourite classes in school was a class on computer interfacing.”

It was cool stuff, and it was useful stuff, but most of all… it was humbling.

Here’s how it would go. You would sit in the lab spending a painstaking couple of hours wiring up your breadboard with the LEDs and the peripheral components. You took your time cutting the wires to length and stripping the ends. You paid attention to how you laid stuff out. You ensured your wires were not a rat’s nest.

Not because the lab instructor would dock you marks otherwise (although she certainly would), but because you knew that if you didn’t take the care, you would spend the next two hours testing every possible connection on the breadboard to find the bum connection.

Anyway, once your breadboard was done, you’d hook it up to the microcontroller, and try and run your C code. And it would fail. Again. And Again. And Again.

So you’d spend more hours debugging your code. Once you had exhausted all your patience (and your pride), you’d ask your lab instructor for help. She’d hook up her breadboard (the one that was guaranteed to be perfect) and when it failed, she’d say,

“Try another micro-controller station.”

And so you would and it would work, except it wouldn’t work, because now that your code was actually running, you realized it was completely bug ridden.

Then you got to spend the next hours actually debugging your code (not the fake debugging you were doing before).

When it was all over and everything worked, you’d jump up and down and scream with joy, and call over the lab instructor so that she could mark it.

And she’d come over and she’d run the command and your code would start to do its stuff and it would finally come up with….

‘A’

Yes! Yes! Oh Joy! Sweet Victory! Let’s do it again!

At this point it would crash because you only tested it the first time through. But you’d throw some more time at it, and eventually you’d get it stable and running, and it would do it again.

‘A’

At this point, you’d gain some perspective. The realization would dawn that although you felt like you’d done the best thing in the world… All you’d managed to do was to get the computer to print an “A” on a computer terminal. You’d like to go home and tell your friends, but in all likelihood, they’d just look at you and say, “You printed an ‘A’ today? Very Good! Here’s a gold star! Now run and drink your juice and have a cookie.”

(An ‘A’. Woo-hoo. I’ve used 146 of them already in this post.)

Getting software to “do what it’s supposed to” is not easy. It’s actually really hard.

But it’s the bare minimum.

I think we all know what it’s like to use a computer program that only “does what it’s supposed to.” It’s painful. It’s horrific. It looks like Lotus Notes. Users know a crummy app when they see it. Hey, it works, for a gouge my eyes out and remove my fingernails definition of ‘works’. Or for a Microsoft definition. Microsoft Works… have you tried it? :-P

It’s not excellence.

To get software that goes beyond functional, there needs to be some sort of passion. There needs to be some sort of intangible quality, some verve, some vim… some pizzazz. You can’t build something that people love without some sort of love. It has to be cohesive, focused, whole.

(Hmm… this sounds like some sort of design problem. Designers talk like this. They love intangible stuff.)

The software has to be transparent. It has to be invisible. It has to get out of the way. The program isn’t important. There’s a goal or a task (which is important), and the software’s job is to acheive that, all the while reducing friction. Don’t make the user think about the software. Let them think about the goal.

That’s what excellence looks like in software.

Does it look the same in morality?

For I desired mercy, and not sacrifice; and the knowledge of God more than burnt offerings.  — Hosea 6:6

Functionality matters. Functionality is hard. Functionality is not enough.

“Woe to you, teachers of the law and Pharisees, you hypocrites! You give a tenth of your spices—mint, dill and cummin. But you have neglected the more important matters of the law—justice, mercy and faithfulness. You should have practiced the latter, without neglecting the former.” — Matthew 23:23

3 Responses to "Moral Excellence – Part II"

  • Amba Sewa says:

    More quotes. Yes, non-techies don’t think about the code at all when the applications work perfectly.

    There is too much foreign matter in us,
    for us to become a perfect medium of God’s light.
    The soiled surface of our fragile living hinders God’s light
    from shining through us,
    and then our shadow strikes the ground
    so that people looking up see us instead of looking through us
    to our God.
    It is his final intention to have us utterly transparent.
    .–.Geoffrey T. Bull

  • A. Lurkar says:

    Now was that 146 ‘A’s or 146 ‘a’s and ‘A’s? Or is that a bug?

  • happy_moron says:

    Counts both, but I did do some post count editing so it may be off by one or two.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Comment

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>