Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Is programming an art or a science?

Is programming an art or a science?

Scheduled Pinned Locked Moved The Lounge
visual-studiodesignhelptutorialquestion
95 Posts 20 Posters 2 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C Chris Austin

    I'd say it is a young science in a emperical stage. Marc Clifton wrote: I mean "art" in the inspirational sense of creativity--the "ah ha" experience when writing a nifty function, for example. In a past life I was an engineer in the SemiConductor industry. And, why most of everything we did was driven by pure science one would derive a sense of artistic satisifaction by a subtle well engineered solution. I think too many people belive that because you are following a scientific foundation / ideas you can't be creative inside that structure. Fill me with your knowledge, your wisdom, your coffee.

    M Offline
    M Offline
    Marc Clifton
    wrote on last edited by
    #21

    I'd say it is a young science in a emperical stage. Early 1900's then. :-D I think too many people belive that because you are following a scientific foundation / ideas you can't be creative inside that structure. I agree. What comes to mind is how our educational system seems to stifle the creativity part. So, one can have a set of programming tools/guidelines that are based on solid "science" but apply them creatively? Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

    C 1 Reply Last reply
    0
    • M Marc Clifton

      Or a mixture of both? and how much in each category? What are your thoughts, and where do you think programming is an art, and where do you think it is a science? An by art, I'm not referring to GUI or web design or any other graphical element. I mean "art" in the inspirational sense of creativity--the "ah ha" experience when writing a nifty function, for example. Personally, I would say that programming is more of an art, but it has the potential to become more of a science. Sort of like being a doctor in the 19th century vs. in the 21st century. Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

      K Offline
      K Offline
      KaRl
      wrote on last edited by
      #22

      Obviously an art, as is the job of an engineer. It is was about science, how to explain all these bugs ? :rolleyes: It would be in the same category than astrology :-D


      Ohé Partisans, Ouvriers et Paysans C'est l'alarme! Le Chant des Partisans

      M 1 Reply Last reply
      0
      • J Jon Rista

        I'm a strong beleiver of the...idea...of programming beeing some of both. Programming is a science because there are, though few, certain laws that one must abide by. Depending on the language and platform, these laws can hamper or release your creativity. Programming is also an art for the sole reason that to program you have to be creative. You have to imagine and extrapolate and obfuscate :wtf: and whatever else to twist your program into the creature you want it to be. This often requires more creativity than logic. So while programming is a science, its more of a creative art. :-D

        M Offline
        M Offline
        Marc Clifton
        wrote on last edited by
        #23

        To use Chris Losinger's word: a "craft"? I'm wondering how much of the creative part of programming could actually be done mechanically at the present time. Are there are set of rules that can get you to the 80-90% mark of implementing a quality program? This is not intended to obsolete the programmer, but to free him/her to perform truly creative tasks. (We've heard that line before, and it always seems to turn out to simply change our tasks, never really freeing us. Reminds me of the book "How Technology Bites Back") Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

        J 1 Reply Last reply
        0
        • S Samsung

          It is business, man, business. Art is business, science is business. Everything is business. :)

          M Offline
          M Offline
          Marc Clifton
          wrote on last edited by
          #24

          Everything is business. Even, aah, the pleasures of life? Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

          P 1 Reply Last reply
          0
          • M Marc Clifton

            Or a mixture of both? and how much in each category? What are your thoughts, and where do you think programming is an art, and where do you think it is a science? An by art, I'm not referring to GUI or web design or any other graphical element. I mean "art" in the inspirational sense of creativity--the "ah ha" experience when writing a nifty function, for example. Personally, I would say that programming is more of an art, but it has the potential to become more of a science. Sort of like being a doctor in the 19th century vs. in the 21st century. Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

            T Offline
            T Offline
            Taka Muraoka
            wrote on last edited by
            #25

            Good morning Marc :-) It should be a combination of both, similar to architecture, say. But unfortunately, it currently seems to be more of a voodoo practice[^] than anything else. I like the analogy of 19C doctors, though.


            I'd wear a miniskirt and pimp myself for an extra ten grand a year. - David Wulff

            M 1 Reply Last reply
            0
            • J Jorgen Sigvardsson

              An engineer without a sense of art is a mechanical robot. :) -- This space for rent.

              M Offline
              M Offline
              Marc Clifton
              wrote on last edited by
              #26

              An engineer without a sense of art is a mechanical robot. Art without a sense of science is an irrelevant abstraction? (Couldn't help myself). So, art is implicit in the non-mechanical aspects of engineering (or science in general)--ie., the creative aspects. Creativity = art? This space for rent. $5 for "Marc Loves Karen" going once... going twice... Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

              J 1 Reply Last reply
              0
              • M Marc Clifton

                I'd say it is a young science in a emperical stage. Early 1900's then. :-D I think too many people belive that because you are following a scientific foundation / ideas you can't be creative inside that structure. I agree. What comes to mind is how our educational system seems to stifle the creativity part. So, one can have a set of programming tools/guidelines that are based on solid "science" but apply them creatively? Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

                C Offline
                C Offline
                Chris Austin
                wrote on last edited by
                #27

                Marc Clifton wrote: So, one can have a set of programming tools/guidelines that are based on solid "science" but apply them creatively? Exactly! This how a lot of scientific and engineering advances seem to happen. Look at Einstein. While a lot of people belived he was smoking some good *stuff*, he used first principles in physics to develop radicaly new theories. Fill me with your knowledge, your wisdom, your coffee.

                1 Reply Last reply
                0
                • B brianwelsch

                  definitely more an art. However, the closer you get to the hardware the more scientific it becomes. BW "I'm coming with you! I got you fired, it's the least I can do. Well, the least I could do is absolutely nothing, but I'll go you one better and come along!" - Homer J. Simpson

                  M Offline
                  M Offline
                  Marc Clifton
                  wrote on last edited by
                  #28

                  the closer you get to the hardware the more scientific it becomes. Oooh, I've seen some really artistic hardware engineering. More in the analog world, but sometimes some really interesting things in the digital world. Boy, just think about those pictures magnified a million times of all the transistors in a processor. I always thought there was a lot of "art" in the laying of circuit boards (especially when things like 6 or more layers were unheard of or prohibitively expensive). I might have misunderstood you though--yes, when writing to software that interfaces with hardware, there's little art except for what gets thrown at the wall because the hardware documentation is wrong. (been there, done that). Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

                  B 1 Reply Last reply
                  0
                  • M Marc Clifton

                    Or a mixture of both? and how much in each category? What are your thoughts, and where do you think programming is an art, and where do you think it is a science? An by art, I'm not referring to GUI or web design or any other graphical element. I mean "art" in the inspirational sense of creativity--the "ah ha" experience when writing a nifty function, for example. Personally, I would say that programming is more of an art, but it has the potential to become more of a science. Sort of like being a doctor in the 19th century vs. in the 21st century. Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

                    N Offline
                    N Offline
                    Nitron
                    wrote on last edited by
                    #29

                    22.22912% Science 19.35983% Brute Force 19.35983% Skill 18.87821% Art 10.21232% Previous Work 8.22121% Emperical Data 1.71783% Opinion 0.02165% Divine Inspiration But truly, 100% CodeProject ;P - Nitron


                    "Those that say a task is impossible shouldn't interrupt the ones who are doing it." - Chinese Proverb

                    M 1 Reply Last reply
                    0
                    • K KaRl

                      Obviously an art, as is the job of an engineer. It is was about science, how to explain all these bugs ? :rolleyes: It would be in the same category than astrology :-D


                      Ohé Partisans, Ouvriers et Paysans C'est l'alarme! Le Chant des Partisans

                      M Offline
                      M Offline
                      Marc Clifton
                      wrote on last edited by
                      #30

                      It would be in the same category than astrology Sometimes I think it is! It is was about science, how to explain all these bugs ? Well, that's why I asked the question. If it were more scientific, we would have less bugs. We would have better designs, better implementations. Why can't it be more scientific??? Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

                      K 1 Reply Last reply
                      0
                      • M Marc Clifton

                        Thinking of it as an art does no good and only causes you to come up with useless and silly opinions about programming. I think so too, but if it's a science, shouldn't I be able to demonstratably prove that one implementation is better (or at least equal) to another, without actually doing the implementation???. Or am I mixing metaphors, in the sense that there is really no theoretical aspect to programming--it's all applied? Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

                        T Offline
                        T Offline
                        Tim Smith
                        wrote on last edited by
                        #31

                        Too many variables to be able to prove something without testing. Also, since we are talking human's here, we have to test. The lack of testing in computer science is something that frustrates me to no end. People see a problem, devise a solution, and then claim it is better without showing that the solution doesn't cause side effects. But how do you test? :( Tim Smith I'm going to patent thought. I have yet to see any prior art.

                        M 1 Reply Last reply
                        0
                        • T Taka Muraoka

                          Good morning Marc :-) It should be a combination of both, similar to architecture, say. But unfortunately, it currently seems to be more of a voodoo practice[^] than anything else. I like the analogy of 19C doctors, though.


                          I'd wear a miniskirt and pimp myself for an extra ten grand a year. - David Wulff

                          M Offline
                          M Offline
                          Marc Clifton
                          wrote on last edited by
                          #32

                          voodoo Love it! Especially the "waving a dead chicken...Things programmers do that they know shouldn't work but they try anyway" Good evening, Taka. I liked Chris Losinger's term "craft". Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

                          T 2 Replies Last reply
                          0
                          • N Nitron

                            22.22912% Science 19.35983% Brute Force 19.35983% Skill 18.87821% Art 10.21232% Previous Work 8.22121% Emperical Data 1.71783% Opinion 0.02165% Divine Inspiration But truly, 100% CodeProject ;P - Nitron


                            "Those that say a task is impossible shouldn't interrupt the ones who are doing it." - Chinese Proverb

                            M Offline
                            M Offline
                            Marc Clifton
                            wrote on last edited by
                            #33

                            And the +/- error in these numbers is???? But truly, 100% CodeProject Well said. Well said! Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

                            1 Reply Last reply
                            0
                            • C Chris Austin

                              Navin wrote: . If you are involved in designing the code, then it is more of an art. I'd say this is where it should be aproached as more of a Science ie. following good design guidelines (exanple avoiding tight coupling and low cohesion) and best know practices. God knows how many late nights at work I've had because our System Architect considered himself an artist. Fill me with your knowledge, your wisdom, your coffee.

                              L Offline
                              L Offline
                              Lost User
                              wrote on last edited by
                              #34

                              Chris Austin wrote: because our System Architect considered himself an artist. :-D My article on a reference-counted smart pointer that supports polymorphic objects and raw pointers

                              1 Reply Last reply
                              0
                              • T Tim Smith

                                Too many variables to be able to prove something without testing. Also, since we are talking human's here, we have to test. The lack of testing in computer science is something that frustrates me to no end. People see a problem, devise a solution, and then claim it is better without showing that the solution doesn't cause side effects. But how do you test? :( Tim Smith I'm going to patent thought. I have yet to see any prior art.

                                M Offline
                                M Offline
                                Marc Clifton
                                wrote on last edited by
                                #35

                                without showing that the solution doesn't cause side effects Have you read the book "Why Technology Bites Back?" Very recommended. The lack of testing in computer science is something that frustrates me to no end. Me too. Something that interests me is how to get programs to test themselves. However, the first step (and also of interest) is tools that can help a programmer to test, and not just debuggers, but things that produce meaningful information (whatever that means). But how do you test? Aye, there's the rub! Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

                                1 Reply Last reply
                                0
                                • M Marc Clifton

                                  Or a mixture of both? and how much in each category? What are your thoughts, and where do you think programming is an art, and where do you think it is a science? An by art, I'm not referring to GUI or web design or any other graphical element. I mean "art" in the inspirational sense of creativity--the "ah ha" experience when writing a nifty function, for example. Personally, I would say that programming is more of an art, but it has the potential to become more of a science. Sort of like being a doctor in the 19th century vs. in the 21st century. Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

                                  J Offline
                                  J Offline
                                  joan_fl
                                  wrote on last edited by
                                  #36

                                  I think it's 10% art, 90% science... 10% art because I prefer well formatted pretty code. ;P

                                  N 1 Reply Last reply
                                  0
                                  • M Marc Clifton

                                    voodoo Love it! Especially the "waving a dead chicken...Things programmers do that they know shouldn't work but they try anyway" Good evening, Taka. I liked Chris Losinger's term "craft". Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

                                    T Offline
                                    T Offline
                                    Taka Muraoka
                                    wrote on last edited by
                                    #37

                                    Marc Clifton wrote: I liked Chris Losinger's term "craft". Yes, I've always loved the term "craftsman", with its implications of the love we have for our work, the effort we put in over and above just getting something to work and pushing it out the door. I've had people question me why I bother making my comments look nice and lay out my code the way I do - what a total waste of time! But I give a damn about how my code looks, even if doesn't make a difference to how it runs. I make the analogy between when you're out looking to buy a car. If it's dirty and the engine is covered in oil then the chances of the owner having taken care of it and it being in good condition mechanically are not good. I also like the connection with tools. A master carpenter will have the best tools he can afford, is very proud of them and takes care of them. I think the best sign that you've make a good hire is when the new guy spends the first few hours on his first day installing his toolset :-)


                                    I'd wear a miniskirt and pimp myself for an extra ten grand a year. - David Wulff

                                    M 1 Reply Last reply
                                    0
                                    • M Marc Clifton

                                      Or a mixture of both? and how much in each category? What are your thoughts, and where do you think programming is an art, and where do you think it is a science? An by art, I'm not referring to GUI or web design or any other graphical element. I mean "art" in the inspirational sense of creativity--the "ah ha" experience when writing a nifty function, for example. Personally, I would say that programming is more of an art, but it has the potential to become more of a science. Sort of like being a doctor in the 19th century vs. in the 21st century. Marc Help! I'm an AI running around in someone's f*cked up universe simulator.

                                      N Offline
                                      N Offline
                                      Nemanja Trifunovic
                                      wrote on last edited by
                                      #38

                                      Neither. It's a skill. :beer:

                                      M K 2 Replies Last reply
                                      0
                                      • J joan_fl

                                        I think it's 10% art, 90% science... 10% art because I prefer well formatted pretty code. ;P

                                        N Offline
                                        N Offline
                                        Nitron
                                        wrote on last edited by
                                        #39

                                        joan_fl wrote: 10% art :wtf: What about the UI?!?! "If it has a nicer splash screen, it's gotta run better!" (Right? :rolleyes: ) Or are you one of those form follows function types... :~ - Nitron


                                        "Those that say a task is impossible shouldn't interrupt the ones who are doing it." - Chinese Proverb

                                        J 1 Reply Last reply
                                        0
                                        • N Navin

                                          The technical term for that is "code monkey". :-D Even a broken clock is right twice a day.

                                          J Offline
                                          J Offline
                                          Jorgen Sigvardsson
                                          wrote on last edited by
                                          #40

                                          ROFL! :laugh: -- This space for rent.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups