Why not give away the music onlne and also sell CDs?
Authors should give away their books and make money on the lecture circuit.
Or do like Doctorow and give away the actual contents of the books as well as selling printed versions.
Programmers should give away their software and make money from consulting.
Alternatively, open source the software and charge for a hosted solution. At this point you're not charging for the software, you're charging for the server resources and bandwidth that a user consumes.
I'm not a fan of creating atificial scarcity, as in DRM on bits that cost nothing to duplicate, but if you're also making available formats that cost to produce, then why not charge for those? They're not artificially scarce.