Software Development Is ...

by Roger Willcocks 5/4/2008 2:22:00 AM

OK.  So here is my opinion.

I'll go into why at the end of this post 

Science   Pronunciation [sahy-uhns]   -noun

  1. a branch of knowledge or study dealing with a body of facts or truths systematically arranged and showing the operation of general laws: the mathematical sciences.
  2. systematic knowledge of the physical or material world gained through observation and experimentation.
  3. any of the branches of natural or physical science.
  4. systematized knowledge in general.
  5. knowledge, as of facts or principles; knowledge gained by systematic study.
  6. a particular branch of knowledge.
  7. skill, esp. reflecting a precise application of facts or principles; proficiency.

Art  Pronunciation [ahrt]   -noun

  1. the quality, production, expression, or realm, according to aesthetic
    principles, of what is beautiful, appealing, or of more than ordinary
    significance.
  2. the class of objects subject to aesthetic criteria; works of art
    collectively, as paintings, sculptures, or drawings: a museum of art; an
    art collection.
  3. a field, genre, or category of art: Dance is an art.
  4. the fine arts collectively, often excluding architecture: art and
    architecture.
  5. any field using the skills or techniques of art: advertising art;
    industrial art.
  6. (in printed matter) illustrative or decorative material: Is there any
    art with the copy for this story?
  7. the principles or methods governing any craft or branch of learning:
    the art of baking; the art of selling
    .
  8. the craft or trade using these principles or methods.
  9. skill in conducting any human activity: a master at the art of
    conversation.
  10. a branch of learning or university study, esp. one of the fine arts
    or the humanities, as music, philosophy, or literature.
  11. skilled workmanship, execution, or agency, as distinguished from
    nature.
  12. trickery; cunning: glib and devious art.
  13. studied action; artificiality in behavior.
  14. an artifice or artful device: the innumerable arts and wiles of
    politics.
  15. Archaic. science, learning, or scholarship.

Craft   Pronunciation [kraft, krahft]   -noun

  1. an art, trade, or occupation requiring special skill, esp. manual
    skill: the craft of a mason.
  2. skill; dexterity: The silversmith worked with great craft.
  3. skill or ability used for bad purposes; cunning; deceit; guile.
  4. the members of a trade or profession collectively; a guild.
  5. a ship or other vessel.
  6. a number of ships or other vessels taken as a whole: The craft were
    warned of possible heavy squalls.
  7. aircraft collectively.
  8. a single aircraft.
  9. -verb (used with object)
    to make or manufacture (an object, objects, product, etc.) with skill
    and careful attention to detail.

OK.  I cheated a bit :)

Software development is treated by many as an ART.  Often a black art.  Everything is built by hand.  Slow, inefficient, and prone to error, but beautiful to its creator.

It is really a CRAFT.  Something done with consideration, consistency and attention to detail.  Note the word consistency.

Profitable software development needs to be approached as much as possible as a SCIENCE.  Controlled, automatic processes that produce consistent, quality code quickly.

Upwards of 90% of software development is "boiler-plate", code written to do the basic things that need to be done to get to the fun stuff.  Read, Write and Delete data.  Populate a screen.  Accept user input.  All of this can be reduced to a science.  Work out how to do it once, and create a system that can do it for you.

The remaining 10% is that art that keeps this a craft rather than a pure science.  It has to do with understanding what people need, and how they want to interact with it.

 

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Software Development

Related posts

Comments are closed

Pages

    Calendar

    <<  May 2012  >>
    MoTuWeThFrSaSu
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910