Slashdot Mirror


Hacking - Art or Science?

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?"

6 of 220 comments (clear)

  1. To hack or not to hack, that is the question! by AKAImBatman · · Score: 5, Insightful

    Hacking is for newbs! LOLOL!!! ROTFLMAOOMFGBBQ!111!one!!!111one>

    (Now that I've got your attention, and had a good chuckle...)

    Let me put this to rest, once and for all. "Hacking" is not something to strive for, no matter what your defintion. What "hacking" is, is an expression of a natural problem-solving ability that all humans have. This problem solving ability can give us MacGyver-level talents allowing us to fashion a solution to any situation. Such innate talent is a good thing.

    However, expressing it as hacking means that you're creating short term or disruptive solutions rather than long term solutions that will last. When hacking meets the discipline of Engineering, all hell breaks loose. Sure, that ugly hacked code you put in now does the trick in a pinch. But if it's not replaced with a long term solution in a hurry, it will cost the company large amounts of money in support and maintenece.

    That's where true Engineering steps in. As an engineer (or architect as the case may be) you have a responsibility to weigh in all the competing factors to produce a solution that is both long term and inexpensive to maintain. Your solution may have to go through hell and back and still get the job done. You can never quite be certain of what situation your code will go through, especially if people's lives and/or fortunes depend on it.

    So in short, leave the hacking in college. It was a lot of fun when you had raw, unfocused talent, but you should be more mature than that now. Use what you know to build a real solution and leave the "hacking" to the next generation of kids. :-)

    1. Re:To hack or not to hack, that is the question! by AKAImBatman · · Score: 4, Insightful

      Actually, you've managed to redefine "hacking" to Alanis Morissette proportions.

      For example, I've heard Einstein's Theory of Relativity described as a beautiful hack

      Einstein didn't *change* anything. How can it be a hack? Rather, he produced a theory describing the Universe according to scientific method.

      Most certainly, people like Edison and George Washington Carver and Eli Whitney were hackers.

      Actually, they were experimenters. They experimented until they found what they were looking for.

    2. Re:To hack or not to hack, that is the question! by Scarblac · · Score: 4, Insightful

      The problem is that "hack" and "hacking" are extremely badly defined. In fact, it manages to have a few completely opposite meanings. A word that means both beautifully elegant sublimely crafted work, and crisis time horrible stopgap measure is not very well defined. Let alone the fact that the majority of people who use the word use it to mean breaking into computers. You can have heated fights about whether something is a hack or not, where both sides are equally right and completely opposite.

      A bit like with both art and science actually, but not quite. Art is notoriously difficult to define, but we all still have a similar idea about what the word means. A bit of opinion - the fact that something is or isn't functional has no relation to whether it is or isn't art.

      Science is well defined. Science is a process of finding out how things work, by thinking up a way how the world might be, and then testing that idea really rigorously. It's just that there's groups of people with agendas who try to make it look like there's a discussion alive, trying to get FSMism, creationism, moon landing denial, global warming denial, Bigfoot etc into scientific discussions. But that's just flamebait with an agenda.

      So I'd say that hacking isn't really either, except that perhaps those really elegant beautiful hacks could be seen as art.

      --
      I believe posters are recognized by their sig. So I made one.
  2. Why can't.... by five40kix · · Score: 3, Insightful

    It be both?

    As defined by wikipedia Art, in its broadest meaning, is the expression of creativity and/or imagination.

    Science = Reasoned investigation or study...

  3. Does it have to be either? by stefanlasiewski · · Score: 4, Insightful

    Does it have to be either? Hacking, like most things in life, is neither a fine art or a pure science, so I'm always confused why certain people try to pigeonhole some discipline into either "Art or Science".

    I hear this question over and over from some people. This question seems a little too academic and removed from reality-- if a discipline doesn't fit your narrow view of "Art or Science", perhaps the view is wrong.

    If anything, I'd say hacking could loosely be called a craft, in the same way that any trade could be considered a craft--woodcraft, glasswork, gardening, auto mechanic or, just for fun, witchcraft (Hackers do mysterious things by reciting long incantations!).

    Eventually many craftspeople are able to think outside the instruction manual and discover new ways to work their craft in ways that it wasn't intended to do.

    --
    "Can of worms? The can is open... the worms are everywhere."
  4. Re:It's neither (it isn't engineering either) by gosand · · Score: 3, Insightful
    Hacking (or any programming) is neither art or science. It's applied engineering. And applied engineering is what it is.

    Nope. Programming is definitely NOT engineering. Not even necessarily software engineering. Some programming is part of software engineering, but not even close to all of it.

    How can people claim any ownership to the title "engineering" when they refuse to follow any kind of process. Refuse to plan. Refuse to design. Refuse to analyze. Refuse to manage anything. Refuse to follow standards. Refuse to be rigorous in their duties.

    People love to throw around the title "software engineer" when they mean "programmer". Don't get me wrong, not every piece of software needs to be engineered. Not even close. But most programmers in my 12 years of experience aren't engineers, period. But most of them wanted to be called "software engineers".

    Hacking may have some engineering elements and even some artistic elements. But most of it is brute force application of technique.

    --

    My beliefs do not require that you agree with them.