- Is programming/computer science an art or science? or both?
- Posted by apngss@yahoo.com on September 28th, 2005
Is programming an art or science? Or both? I don't know how programming
can belong
to art, because programming requires algorithms, and math is science.
Art is subjective,
and science is objective. How can programming be subjective? If the
program doesn't
produces the right output, then there is a bug.
And how about computer science, is computer science an art or science?
Some schools
put this major in Languages and Arts department.
I just know computer science != programming.
Please advise. thanks!!
- Posted by RobertSzefler on September 28th, 2005
apngss@yahoo.com wrote:
For me both art and programming are subjective and objective the same
way. The sole act of creation (of program, painting, sculpture) is
undoubtedly objective (creation of concrete entities), but the act of
evaluation and possibly (dis)appreciation is entirely subjective. No
difference for me. And (in case you don't know from personal experience)
programmers are often motivated and guided in their work by subjective
values like elegance.
This one is trickier. Vide infra.
Give me a break! Which ones?
IMHO CS is much closer to "science" than "art" but the crux is
subjective evaluation which can cause all sorts of things appear
artistic (like seeing a beautiful and brilliant proof of algorithm
correctness, which happenened, I hope, not only in my past).
- Posted by osmium on September 28th, 2005
<apngss@yahoo.com> wrote:
Please name some of these schools.
- Posted by Russell Shaw on September 28th, 2005
apngss@yahoo.com wrote:
Programming is design which requires imagination. It is a science
because it implements algorithms of mathematics and logic. It is also
engineering which requires tradeoffs of size, speed, maintainability,
and time to implement. It is art because it requires the programmer
to choose the most efficient and elegant of multiple possible solutions.
- Posted by Peter Bushell on September 28th, 2005
<apngss@yahoo.com> wrote in message
news:1127919936.669998.233490@o13g2000cwo.googlegr oups.com...
Why do you care?
--
Peter Bushell
http://www.software-integrity.com/
- Posted by Julienne Walker on September 28th, 2005
Neither. Programming is a craft. :-)
- Posted by Laurent Bossavit on September 28th, 2005
Painting requires paints, and chemistry is a science...
Laurent
- Posted by Chris Sonnack on September 28th, 2005
apngss@yahoo.com writes:
Since art is subjective, the answers you get to this will be just
as subjective.
My take: programming--the act of writing programs--is both. One
of analogs I like is that programming is much like architecture.
Architecture uses--depends on--material *sciences* and engineering,
but also has a strong aesthetic component. It's not just that a
building should look good and fit in with its environment, it's
also things like how it flows and works for its occupants.
Same with software. Just working isn't enough--much software also
interacts with humans, so there are aesthetic and human factor
components. None of which is a science.
Also, just as there are many ways to design a building, there are
many ways to design a software. Many of the choices are creative
in nature.
Why do you think it's called Computer Science? (-:
A quote I've always liked is that Computer Science is no more about
computers than astronomy is about telescopes.
Which is to say that it's a LITTLE BIT about them, but they are not
at all the point. They are a means.
Computer Science is about the *Science* of Computation.
--
|_ CJSonnack <Chris@Sonnack.com> _____________| How's my programming? |
|_ http://www.Sonnack.com/ ___________________| Call: 1-800-DEV-NULL |
|_____________________________________________|___ ____________________|
- Posted by Dmitry A. Kazakov on September 28th, 2005
On 28 Sep 2005 08:05:36 -0700, apngss@yahoo.com wrote:
Art requires chemistry, geometry, metallurgy...
It is a vicious circle. Bug = when output is wrong. But:
1. Which output is right? ("No space left on hard drive! So, what?")
2. How to evaluate outputs from inputs? ("What if I press this button?")
3. Do we know the inputs? ( "What a hell is going on?")
.. . .
Computer science is a science. (:-))
Programming is an engineering activity which applies that science.
Though, CS is not much science (yet). It is close to what Ernest Rutherford
called "stamp collecting." (:-))
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
- Posted by moop™ on September 29th, 2005
both
- Posted by Randy Howard on September 29th, 2005
moop™ wrote
(in article
<1127957986.901772.290660@z14g2000cwz.googlegroups .com>):
How wonderfully content-free.
--
Randy Howard (2reply remove FOOBAR)
- Posted by gcrhoads@yahoo.com on September 29th, 2005
Julienne Walker wrote:
That's exactly my view of programming, though a number
of people don't seem to know what is meant by "craft."
- Posted by Martin Brown on September 29th, 2005
Chris Sonnack wrote:
I am inclined to agree that programming is closer to civil engineering
than almost anything else. And to extend the analogy that we are still
at the same stage of development as mediaeval cathedral builders for
large projects. i.e. if it is still standing after 5 years then it was
obviously a good design.
Even in simple programming languages there is an element of poetry. Some
ways of writing the same algorithm can look nicer and be easier to
understand than others even if they are all functionally identical.
And the human computer interaction side is incredibly subjective. I find
several Windows programs almost unusable because I cannot understand the
relationship between the weird random icons and the underlying function
that they perform. Sometimes even the helpful hover over text is still
monumentally uniformative. Perhaps it is just me?
I am more inclined to view Computer Science in its purest form as a
branch of applied mathematics. They use hard theorems with proofs of
correctness whenever possible. Formal methods based on languages like Z
& VDM share this trait.
Several famous computer departments started life in the mathematics
faculty originally. And science and mathematics also have an artistic
side too... (something seldom recognised by the general public)
Regards,
Martin Brown
- Posted by Steve O'Hara-Smith on September 29th, 2005
On 28 Sep 2005 08:05:36 -0700
apngss@yahoo.com wrote:
Part art, part engineering, not a science. Then again the scientific
method is useful in debugging so I suppose debugging qualifies as a science.
--
C:>WIN | Directable Mirror Arrays
The computer obeys and wins. | A better way to focus the sun
You lose and Bill collects. | licences available see
| http://www.sohara.org/
- Posted by iamfractal@hotmail.com on September 29th, 2005
apngss@yahoo.com skrev:
Pick a definition and run with it.
Art:
"Human effort to imitate, supplement, alter, or counteract the work
of nature."
Science:
"The observation, identification, description, experimental
investigation, and theoretical explanation of phenomena."
In those contexts, programming is perhaps more art than science.
..ed
--
www.EdmundKirwan.com - Home of The Fractal Class Composition.
- Posted by Thomas Gagne on September 29th, 2005
Paul Graham wrote an interesting comparison between programmers and
painters. You can read it here: <http://www.paulgraham.com/hp.html>
- Posted by blmblm@myrealbox.com on September 29th, 2005
In article <e5ilj155ligpbfte9hojrl7mhu6o5pd0os@4ax.com>,
Chris Sonnack <Chris@Sonnack.com> wrote:
[ snip ]
You haven't heard the line about how any field with "science" in
the name isn't one? political science .... social science ....
hm, the indicators seem good?
Well, it seems to appeal to my acquaintances with degrees in "real"
sciences. No idea who said it first.
--
| B. L. Massingill
| ObDisclaimer: I don't speak for my employers; they return the favor.
- Posted by Laurent Bossavit on September 29th, 2005
For me, a defining characteristic of craft is how skill is considered an
exclusive property of the craftsman (as opposed to industry, where skill
is inherent in the factory itself, and considered a property of the
employer - this is what "software engineering" is all about), but
nevertheless subordinate to the desires of a client (as opposed to art,
where the artist's intention is what primarily matters).
The peculiar organization of craftsmen into guild-type systems is a
consequence of this view of skill.
Laurent
- Posted by RobertSzefler on September 29th, 2005
Laurent Bossavit wrote:
A typical postmodern prejudice. There was a time (a good time) where
artists actually had to make a living off their creations...
- Posted by Chris Hills on September 29th, 2005
In article <1127919936.669998.233490@o13g2000cwo.googlegroups .com>,
apngss@yahoo.com writes
It is neither an art or a science but a branch of Engineering.
--
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills Staffs England /\/\/\/\/
/\/\/ chris@phaedsys.org www.phaedsys.org \/\/\
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/