An unexamined life is not worth living. - Socrates

Ran across a blog entry today from one of the Ubuntu maintainers, Features vs. Freedom . The particular issue he's wrestling with (whether to include binary 3D video drivers with a free software distribution) is of mild interest to me, but there is a larger meta-issue that ties back to the whole reason that I'm writing here at A Fresh Cup. Over the past several years I have become increasingly convinced that our software choices have consequences, and that (sadly) most developers never spend even a moment thinking about these consequences.

Choosing to use Microsoft software as the basis for my work, whatever else it may do, contributes to the growth and health of Microsoft. It supplies funds for Microsoft's continued initiatives in the area of intellectual property and DRM. And it seems to me that the ultimate consequence of these initiatives will be to limit my own freedom of action, both as a software user and a software developer. I realize that reasonable people can (and do) disagree on these points, but that's where it nets out for me.

Having come to that conclusion, the question is what I can and should do about it. In my younger days, I wouldn't have recognized any distinction between "can" and "should," but with age comes either wisdom or exhaustion. I know what my ethics tell me I should do (opt out of using and supporting Microsoft software). But I know that to do this, cold turkey, would have immediate bad consequences (such as an inability to put food on the table for my children). Hence the explorations that you're seeing in this blog. The hope is that I can find some way to if not eliminate, at least minimize, the contradictions between the "can" and the "should" in this area of my life, and so increase my happiness by bringing my actions into closer touch with my ethics.