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. Software engineering myths [modified]

Software engineering myths [modified]

Scheduled Pinned Locked Moved The Lounge
html
16 Posts 6 Posters 0 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.
  • J Joe Woodbury

    The article makes some pretty good points but is ultimately flawed due to the bizarre nonsense that computer science is, and should be, an extension of departments of mathematics at universities. (Yes, there are specialties within the entire computer science field that require "high" mathematics, but in general the mathematical requirements for computer science are low.) In practice, most of computer science, and especially software development, is an engineering discipline and the failure to treat it as such has not served graduates well. I am continually astonished how few software developers use standard engineering type practices in developing code. On the flip side, if I rank the top ten software developers I know, six have engineering backgrounds or degrees, three have computer science degrees (I think--I'm actually not sure of one) and one dropped out of college one semester short of a degree in classical piano. (Of the worse developers I know, they all have computer science degrees from universities or colleges where the CS department is an adjunct of the mathematics department an is in the college of liberal arts.) [I have to revise the above comment. While writing a response below, I remembered that one of the developers on my "top ten" list actually has a degree in mathematics, not engineering. When I worked with him, he was maintaining RSA code and his math came in quite handy.] -- modified at 17:18 Saturday 19th August, 2006

    Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

    C Offline
    C Offline
    code frog 0
    wrote on last edited by
    #7

    Joe Woodbury wrote:

    general the mathematical requirements for computer science are low

    Don't know where you went to school but where I went we were taking 400 level math classes and all of us were at least math minors and with a few more semesters could have double-majored. I plan on going back someday to get a mathematics major but I think I'll master in it. Math permeated everything we did. I tend to agree with this guy a lot! We had to work our butts off in mathematics and we applied it to *everything*.

    I only read CP for the articles. Code-frog System Architects, Inc.

    P J 2 Replies Last reply
    0
    • C code frog 0

      Joe Woodbury wrote:

      general the mathematical requirements for computer science are low

      Don't know where you went to school but where I went we were taking 400 level math classes and all of us were at least math minors and with a few more semesters could have double-majored. I plan on going back someday to get a mathematics major but I think I'll master in it. Math permeated everything we did. I tend to agree with this guy a lot! We had to work our butts off in mathematics and we applied it to *everything*.

      I only read CP for the articles. Code-frog System Architects, Inc.

      P Offline
      P Offline
      Paul Conrad
      wrote on last edited by
      #8

      code-frog wrote:

      applied it to *everything*

      Only have done so in an algorithm analysis course and in an automata course :-D The guy who taught the two courses had a BA in Math, MS/PhD in Computer Science, so he was pretty math-oriented.


      I'd like to help but I don't feel like Googling it for you.

      1 Reply Last reply
      0
      • P Paul Conrad

        Gary R. Wheeler wrote:

        It's a shame his writing style is so poor

        Hopefully when he does his thesis, his advisor will help him out. Writing for Computer Science[^] by Justin Zobel might be a helpful book for him to look at, or anyone who wants to improve their writing in computer science related areas :)


        too much daily WTF for someone... - Anton Afanasyev

        G Offline
        G Offline
        Gary R Wheeler
        wrote on last edited by
        #9

        Along with a copy of The Elements of Style[^] by Strunk and White, and a decent dictionary wouldn't hurt either.


        Software Zen: delete this;

        Fold With Us![^]

        P 1 Reply Last reply
        0
        • G Gary R Wheeler

          Along with a copy of The Elements of Style[^] by Strunk and White, and a decent dictionary wouldn't hurt either.


          Software Zen: delete this;

          Fold With Us![^]

          P Offline
          P Offline
          Paul Conrad
          wrote on last edited by
          #10

          Gary R. Wheeler wrote:

          Along with a copy of The Elements of Style[^] by Strunk and White

          Yep, more the merrier :-D

          Gary R. Wheeler wrote:

          a decent dictionary wouldn't hurt either

          Nope, sure wouldn't hurt at all.


          I'd like to help but I don't feel like Googling it for you.

          1 Reply Last reply
          0
          • C code frog 0

            Joe Woodbury wrote:

            general the mathematical requirements for computer science are low

            Don't know where you went to school but where I went we were taking 400 level math classes and all of us were at least math minors and with a few more semesters could have double-majored. I plan on going back someday to get a mathematics major but I think I'll master in it. Math permeated everything we did. I tend to agree with this guy a lot! We had to work our butts off in mathematics and we applied it to *everything*.

            I only read CP for the articles. Code-frog System Architects, Inc.

            J Offline
            J Offline
            Joe Woodbury
            wrote on last edited by
            #11

            code-frog wrote:

            Don't know where you went to school but where I went we were taking 400 level math classes and all of us were at least math minors and with a few more semesters could have double-majored.

            I didn't major in Computer Science because so many of the classes had so little to do with practical software development. It was all theory and I wasn't interested in that. I ended up majoring in Design Engineering Technology and got burned out on Calculus, Physics 302 (when you get into electrical fields and stuff) and Materials Science (just plain boring), dropped out and finished my degree at a small film school. I have worked in a wide range of fields as a developer. My experience is that mathematics is rarely required for writing software. I also found that when it is needed, its really needed and you're almost better off getting a math major who knows programming (i.e. in 3D transforms or RSA encryption.) I once worked with a theory heavy PhD developer. He was always using formulas to argue what algorithms should be used. Beyond that fact that in actual practice with the actual data sets, his algorithms were rarely faster and even then only marginally so, he was oblivious to all other considerations that a practical engineer has to deal with, especially resource requirements and maintainability. (One thing that really bugged me is how much "paper" programming he did versus actually just writing code and experimenting with it.)

            Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

            C P 2 Replies Last reply
            0
            • G Gary R Wheeler

              He's a graduate student; check his home page[^]. Some of his claims are reasonable. It's a shame his writing style is so poor.


              Software Zen: delete this;

              Fold With Us![^]

              J Offline
              J Offline
              Joe Woodbury
              wrote on last edited by
              #12

              A few years writing commercial, production level code would also be quite helpful.

              Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

              P G 2 Replies Last reply
              0
              • J Joe Woodbury

                code-frog wrote:

                Don't know where you went to school but where I went we were taking 400 level math classes and all of us were at least math minors and with a few more semesters could have double-majored.

                I didn't major in Computer Science because so many of the classes had so little to do with practical software development. It was all theory and I wasn't interested in that. I ended up majoring in Design Engineering Technology and got burned out on Calculus, Physics 302 (when you get into electrical fields and stuff) and Materials Science (just plain boring), dropped out and finished my degree at a small film school. I have worked in a wide range of fields as a developer. My experience is that mathematics is rarely required for writing software. I also found that when it is needed, its really needed and you're almost better off getting a math major who knows programming (i.e. in 3D transforms or RSA encryption.) I once worked with a theory heavy PhD developer. He was always using formulas to argue what algorithms should be used. Beyond that fact that in actual practice with the actual data sets, his algorithms were rarely faster and even then only marginally so, he was oblivious to all other considerations that a practical engineer has to deal with, especially resource requirements and maintainability. (One thing that really bugged me is how much "paper" programming he did versus actually just writing code and experimenting with it.)

                Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                C Offline
                C Offline
                code frog 0
                wrote on last edited by
                #13

                I agree with what you are saying. I believe programmers are like football players. Many people play football and claim to be good. However, the number of players that actually make it into the NFL to the ratio of those who try tells me that the many who play aren't that great. Programmers are the same. Whether they are web developers who picked it up as they went and don't even know what Big O is or MIT graduates who've actually written code for beowolf computing clusters. People coming from both of those backgrounds or similar into programming are not immediately good or bad at what they do. The background really means nothing. I've noticed that outside of degrees (or to say that degrees have nothing to do with it) people on their own are scientist/engineers based upon how they are wired and have been all of their lives. You cannot teach somebody to be a scientist/engineer nor can you teach someone how to be a brilliant programmer. Despite education and background they either have it or they don't. Take any 100 people with a masters degree in computer science and I'd lay odds that greater than 60% suck at designing, developing and implementing practical and useable software. If mathemetics is required I've known many who pop open a reference reason out the math, conduct some experiments to be sure they have it right and boom they are off and running. You've either got it ... or you don't ... but where I went to school the math got pushed hard because the guys teaching knew that programming is fairly easy to pickup. So they forced math and analysis big-time. It was tough work but it taught me to love math. So much in fact that someday I'm going back for a masters in it.


                I only read cp for the articles.

                Iron Speed Designer MVP
                Check out my 7 Part Series on Networking[^]

                1 Reply Last reply
                0
                • J Joe Woodbury

                  code-frog wrote:

                  Don't know where you went to school but where I went we were taking 400 level math classes and all of us were at least math minors and with a few more semesters could have double-majored.

                  I didn't major in Computer Science because so many of the classes had so little to do with practical software development. It was all theory and I wasn't interested in that. I ended up majoring in Design Engineering Technology and got burned out on Calculus, Physics 302 (when you get into electrical fields and stuff) and Materials Science (just plain boring), dropped out and finished my degree at a small film school. I have worked in a wide range of fields as a developer. My experience is that mathematics is rarely required for writing software. I also found that when it is needed, its really needed and you're almost better off getting a math major who knows programming (i.e. in 3D transforms or RSA encryption.) I once worked with a theory heavy PhD developer. He was always using formulas to argue what algorithms should be used. Beyond that fact that in actual practice with the actual data sets, his algorithms were rarely faster and even then only marginally so, he was oblivious to all other considerations that a practical engineer has to deal with, especially resource requirements and maintainability. (One thing that really bugged me is how much "paper" programming he did versus actually just writing code and experimenting with it.)

                  Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                  P Offline
                  P Offline
                  Paul Conrad
                  wrote on last edited by
                  #14

                  Joe Woodbury wrote:

                  have worked in a wide range of fields as a developer. My experience is that mathematics is rarely required for writing software

                  Same thing here. Only time I've ever used any math is for personal projects. Have never been called on for serious math in real world production level work.

                  1 Reply Last reply
                  0
                  • J Joe Woodbury

                    A few years writing commercial, production level code would also be quite helpful.

                    Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                    P Offline
                    P Offline
                    Paul Conrad
                    wrote on last edited by
                    #15

                    Joe Woodbury wrote:

                    A few years writing commercial, production level code would also be quite helpful.

                    So very true. Even if one does a career in the academics, having some commercial work background is beneficial :)

                    1 Reply Last reply
                    0
                    • J Joe Woodbury

                      A few years writing commercial, production level code would also be quite helpful.

                      Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                      G Offline
                      G Offline
                      Gary R Wheeler
                      wrote on last edited by
                      #16

                      Agreed. That's the most irritating thing about academic pontification about what's "wrong" with the software industry. These opinions are granted weight solely because they come from the academic community. These people have no experience producing commercial software. They propose solutions that are impractical and blithely ignorant of the realities involved. Some experience of the real world (say, 4-5 years in a cube and a few hundred thousand lines of code) might give them a better appreciation.


                      Software Zen: delete this;

                      Fold With Us![^]

                      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