Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Programming Security Technology

Hacking - Art or Science? 220

An anonymous reader asks: "The argument regarding the principle nature of hacking - be it an art or a science is not a new one. This paper hopes to discuss both the meaning of the term 'hack' and the underlying arguments for it being defined as an art or a science, in reference to the base principles and basic methodologies of the discipline. So in your opinion, is hacking art or science?"
This discussion has been archived. No new comments can be posted.

Hacking - Art or Science?

Comments Filter:
  • It's neither (Score:5, Interesting)

    by Reality Master 101 ( 179095 ) <<moc.liamg> <ta> <101retsaMytilaeR>> on Friday September 30, 2005 @02:42PM (#13687360) Homepage Journal
    Hacking (or any programming) is neither art or science. It's applied engineering. And applied engineering is what it is.
  • Hacking (Score:2, Interesting)

    by Rectum2003 ( 686009 ) on Friday September 30, 2005 @02:47PM (#13687416)
    Hacking is when science becomes art.
  • by tcopeland ( 32225 ) * <tom AT thomasleecopeland DOT com> on Friday September 30, 2005 @02:53PM (#13687476) Homepage
    ...from John Littler on O'Reilly's OnLAMP is here [onlamp.com]. He's got some nice quotes, including this one from Fred Brooks:
    The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures.
    And is programming is art, this use of StringBuffer [blogs.com] is... bad art.
  • Re:Why can't.... (Score:3, Interesting)

    by Reality Master 101 ( 179095 ) <<moc.liamg> <ta> <101retsaMytilaeR>> on Friday September 30, 2005 @02:54PM (#13687496) Homepage Journal
    The problem with that definition of art is that it's so broad that everything becomes art.

    I haven't thought about how to define art, but I would say it's something intended to inspire a philosophical thought or emotion in another person. Based on that definition, programming (or any craft) would not qualify as art.

    I'm sure people could nitpick my definition, but I think it would cover things we would traditionally think as art. The important part is that intent counts.

  • Er... (Score:2, Interesting)

    by woah ( 781250 ) on Friday September 30, 2005 @02:54PM (#13687497)
    Couldn't it be both?

    I mean neither of the two disciplines describe perfectly what hacking is. Then again, parallels can be drawn between hacking and either discipline. So, I think the answer is both.

  • by imidan ( 559239 ) on Friday September 30, 2005 @02:57PM (#13687529)
    In my opinion, the completely vapid nature of the paper gets in the way of answering the question posed. But, then, I think the question is a useless one to ask in the first place. From the conclusion of TFA:

    The beauty of this argument is ... the fact that ultimately it does not really matter.

    You know it's a great paper when your conclusion is that your argument is completely irrelevant.

    And it is, too. Why does it matter whether hacking is classified as art or science? What effect would it have on the way hacking is perceived? Who cares?

    Now, if you just wanted to talk about computer science (in terms of applied math, not engineering), I think the art/science question is better suited. Of all the schools in the world that teach CS, how many locate their CS department in the school of engineering, and how many in the school of letters and sciences? Why? Does the context of the CS program affect the quality of its graduates?
  • by Hosiah ( 849792 ) on Friday September 30, 2005 @03:13PM (#13687666)
    It's a sciart !

    PS Thanks to the complete Circus Clown's Fire Drill that has been the attempt to re-re-re-define the word "hacker" from the last quarter of the 20th century into this one, there is officially no such thing as hacking. The number of mis-percieved mis-definitions of the word surpassed the total human population about 1996 (yes, I wrote it down) and thus freed of the confines of mere space-time continuum, has increased exponentially ever since, which explains why each person can define the word five different ways and have *none* of them agree with anybody else's five different definitions.

    This is where black holes come from. I nominate that, along with words like "Tao" and "mu", we puny mortals simply abandon the word back to the Ancient Ones from whence it came, admit that our shriveled husks of cortexes are incapable of fathoming such a deep concept, and hereafter relegate the word to the ranks of words which, if named, are not their true selves.

    Which will spare us the upcoming inconclusive debate, now looming over this thread, over what hacking is for the 998.8E+999 time. Because I can't sit through another one. And to ensure I don't, I'm...I'm...I'm HOLDING THE EASTER BUNNY HOSTAGE! Yes! Drop the flamegun, or the lepus gets it right between the oculi!!! And there'll be no more Cadbury chocolate eggs for any of you!

  • Re:It's neither (Score:3, Interesting)

    by thermostat42 ( 112272 ) on Friday September 30, 2005 @03:23PM (#13687741) Homepage
    If you don't create a design document, enumerate use cases, etc, etc, you can hardly claim to be doing engineering. Some programmers might be doing engineering, most "hackers" are not.

    As for art vs. science, "hacking" is clearly an art. Debugging is a science. This really isn't a hard concept. Art is a creative process, science is a tool for finding truth. Do you use the scientific method when you sit to to write code? Of course not. However, when you look at your (or someone else's) broken code, and want to know why it doesn't do what you think it should, the scientific method should come to mind.
  • Philosophy (Score:3, Interesting)

    by BorgCopyeditor ( 590345 ) on Friday September 30, 2005 @04:07PM (#13688164)
    Y'all should read Book 6 of Aristotle's Nicomachean Ethics--some good thoughts there about different kinds of intelligence and skill.
  • by Anonymous Coward on Friday September 30, 2005 @04:50PM (#13688586)
    I work in R&D, and I, often, describe first-generation analytical techniques, work-arounds, &c. as "hack[s]". When I do so, what I mean is that it [the "hack"] is a quick-and-dirty-but-functional-for-this-specific-c ase solution to the issue in question.

    Here's an example: estimating the density of a composite material by dividing the dry weight by the volume, as determined from the measured hydrostatic pressure caused by immersing the sample in water (weighed down with a paper-clip, and supported by some 50-gauge wire -- correcting for the amount of water displaced by the paper-clip and wire, measuring the "hydrostatic pressure" by putting the beaker of water on a lab scale, and measuring the change in it's "weight"). It worked, for that specific case, and I got the results quickly enough to prevent a production SNAFU, but it's not exactly a general purpose, robust application of Archimedes' principle. It was a "hack".

    Another example: a student, working on his PhD needed to find a way to reproducably, non-destructively, measure the physical dimensions of a large number of samples to within a few (<50) microns (samples are ~10x7x5cm). I pointed him in the direction of a high-resolution flat-bed scanner (2400DPI =~10 microns/pixel -- not bad for less than $100) and an Open Source image analysis program. For ~1% of the cost of a system that I have, in my lab (I let him come in, and use our system for some 3D measures), and a bit more work on his part (that scanner was not exactly NIST tracable, so he had to calibrate, do GR&R, &c.), he was able to get his data. Consumer electronics for scientific analysis? That's a hack, in my book.

    A great deal of my experimentation, in the lab, involves creative application of various hacks -- sometimes to save time, sometimes to avoid purchasing/accounting, sometimes because there's nothing out there designed for what I have in mind.

    Once an application moves on from the lab to being a commodity, it's time to remember that I'm also an engineer, and refine the hack into something more robust... but it still started out as a hack.

"When the going gets tough, the tough get empirical." -- Jon Carroll

Working...