A lot goes into a software, much more than a few lines of code. Behind most software projects is a plan, some are loose collections of thoughts, some are made of reams of paper, created by committee. To go from a rough idea to a product takes a lot of work; sure there is some code, perhaps a database or two, a lot of thought (hopefully) on how to optimize the program to perform faster, be more secure, and more user friendly. But what if you want someone to use it? Well there is marketing, be it viral or traditional. Perhaps a business plan. Don’t forget support, so probably some documentation here and there with a support plan: community does it for you, you do it via email, you hire “Support Engineers”, etc. Of course if you want someone to use your software and make some money that brings up yet even more to think about: do you get a merchant account, go with paypal, perhaps ad supported. What about free trials, shareware, and crippleware. What if your users hate it! How will you handle feedback? Perhaps a blog?
A lot goes into software, some call the creation of it an art.
When it comes to software I’m not just interested in the latest version of SQL Server (though I am) or what’s coming to C# in the next release of .Net (though I am) or what the next “scripting language with framework” of choice will be. I’m also interested in what it takes to make a successful software product, user design, user experience, marketing of software, hiring people, handling soft sales, handling strong sales and so much more. Some call this the business of software, but I prefer the Art of Software.