.NET Zone is brought to you in partnership with:

Developer with experience in a variety of different systems and technologies, with a customer focus and balance with business goals. Particularly interested in backend and large scale systems, and also interested in high level architecture, and API design. Always open to feedback in order to keep learning and improving as a professional. Rodrigo is a DZone MVB and is not an employee of DZone and has posted 39 posts at DZone. You can read more from them at their website. View Full User Profile

Software is the Art of Beautiful Solutions

10.16.2012
| 4429 views |
  • submit to reddit

I see software as an art. Although it can be used simply as a mundane tool to get something to work, that's not what energizes me when working with software. What does excite me is the art in a beautiful solution, in a nice abstraction, in a great architecture, in readable and maintainable code.

In spite of seeing software as an art, I've been able to deliver in all the projects I've participated in by making the right prioritizations. After all, software must serve a concrete need and be part of a business, adding some sort of value. Even under these pressures, I've treated it as an art and invested myself in making my code more beautiful, regardless of whether that requires harder work.

The problem lies in environments where software is viewed only as a tool, where achieving a result is more important than anything else (even if that result is totally shortsighted), where getting something done simply annihilates the art behind the software, where achieving the reward for doing something (even badly) is more important than doing it well or right.

In these environments, you seem to become merely a cog in a machine of results, because your creativity and your heart are not really required as long as you solve the problem in any way or form. That shifts software from an art or a craft into an almost mechanical task. That simply kills the joy of software development.

If you have similar view of software, how do you actually cope with this in your work environment? Do you try to shield yourself? Or is there any work environment where software as an art/craft is still preserved? I'd love to know about your experiences.

 

Published at DZone with permission of Rodrigo De Castro, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)