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. And for new arguing pleasure... Learn programming in Ten Years...

And for new arguing pleasure... Learn programming in Ten Years...

Scheduled Pinned Locked Moved The Lounge
htmlcomlearning
15 Posts 10 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.
  • E El Corazon

    http://www.norvig.com/21-days.html[^] Although I would like to support his learn 6 languages, being from a multi-language (computer that is) background. But I think that is likely to scare away more people. although I love this section: Work on projects with other programmers. Be the best programmer on some projects; be the worst on some others. When you're the best, you get to test your abilities to lead a project, and to inspire others with your vision. When you're the worst, you learn what the masters do, and you learn what they don't like to do (because they make you do it for them). :doh: guilty... I will have to be better... don't want people learning my secrets.

    _________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)

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

    I'm not a big fan of the learn 6 languages thing, unless there is some definite logic to it; you have both an issue of diminishing returns and risking becoming a jack of all trades, master of none. (This pretty much describes my general skill set at most things; however, I can say I am a genuine expert at assembly language, C and C++ and most of the Windows API and MFC.) I do find his general argument refreshing, though. It does take time to become a genuine expert. One of my pet peeves are developers with two or three years experience passing themselves off as Senior Engineers. This isn't just a title thing, but how they insert themselves into development process and throw their weight around and ignore those people who really are experts. This isn't a regurgitating knowledge thing. It's experience over time. Nothing can speed that up. Nothing can replace it. For example, when I make time estimates, I'm not just making up numbers; among other things I'm comparing the task to several similar tasks in the past. Another great piece of advice he gives is to just write code. Play around. With few exceptions you can't destroy your computer doing that (though I did blow away a bios once on accident.) Few things astonish me more in software development than programmers who don't have test programs where they try various approaches and refine their algorithms. (I'm also surprised at how many developers haven't created what I call their bag-o-tricks--proven libraries and code snippets they can use on any project.)

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

    R L 2 Replies Last reply
    0
    • E El Corazon

      http://www.norvig.com/21-days.html[^] Although I would like to support his learn 6 languages, being from a multi-language (computer that is) background. But I think that is likely to scare away more people. although I love this section: Work on projects with other programmers. Be the best programmer on some projects; be the worst on some others. When you're the best, you get to test your abilities to lead a project, and to inspire others with your vision. When you're the worst, you learn what the masters do, and you learn what they don't like to do (because they make you do it for them). :doh: guilty... I will have to be better... don't want people learning my secrets.

      _________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)

      P Offline
      P Offline
      peterchen
      wrote on last edited by
      #5

      Bascally I think he's right. Learniung to program takes so long, no matter what language, because the language itself is the "starters vocabulary", no more. On the "code monkey skills" side: Language, Language Libraries, Patterns + Best practies, Pitfalls, Platform, Platform Libraries, Source Control, Project Management from soruce control to Install CD, IDE, Code Creation and Maintenance tools, Debugger. On the "Developer Skills" side: Specification, design, design tools, planning, quality control + testing, working in teams, and all the stuff I tend to forget :)


      Developers, Developers, Developers, Developers, Developers, Developers, Velopers, Develprs, Developers!
      We are a big screwed up dysfunctional psychotic happy family - some more screwed up, others more happy, but everybody's psychotic joint venture definition of CP
      Linkify!|Fold With Us!

      1 Reply Last reply
      0
      • J Joe Woodbury

        I'm not a big fan of the learn 6 languages thing, unless there is some definite logic to it; you have both an issue of diminishing returns and risking becoming a jack of all trades, master of none. (This pretty much describes my general skill set at most things; however, I can say I am a genuine expert at assembly language, C and C++ and most of the Windows API and MFC.) I do find his general argument refreshing, though. It does take time to become a genuine expert. One of my pet peeves are developers with two or three years experience passing themselves off as Senior Engineers. This isn't just a title thing, but how they insert themselves into development process and throw their weight around and ignore those people who really are experts. This isn't a regurgitating knowledge thing. It's experience over time. Nothing can speed that up. Nothing can replace it. For example, when I make time estimates, I'm not just making up numbers; among other things I'm comparing the task to several similar tasks in the past. Another great piece of advice he gives is to just write code. Play around. With few exceptions you can't destroy your computer doing that (though I did blow away a bios once on accident.) Few things astonish me more in software development than programmers who don't have test programs where they try various approaches and refine their algorithms. (I'm also surprised at how many developers haven't created what I call their bag-o-tricks--proven libraries and code snippets they can use on any project.)

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

        R Offline
        R Offline
        Ryan Roberts
        wrote on last edited by
        #6

        For web development, you need at least 3 with current tools and techniques. Add to that a background in C/++ + a preference for python as a scripting language and it's easy to pick up 6 without meaning to. Even if they all do look like C++ :) I get the impression a good grounding in functional programming is going to be a plus in the next few years when making day to day use of the increasing parallelism available in modern processors.

        Ryan

        "Michael Moore and Mel Gibson are the same person, except for a few sit-ups. Moore thought his cheesy political blooper reel was going to tell people how to vote. Mel thought that his little gay SM movie about his imaginary friend was going to help him get to heaven." - Penn Jillette

        A 1 Reply Last reply
        0
        • R Ryan Roberts

          For web development, you need at least 3 with current tools and techniques. Add to that a background in C/++ + a preference for python as a scripting language and it's easy to pick up 6 without meaning to. Even if they all do look like C++ :) I get the impression a good grounding in functional programming is going to be a plus in the next few years when making day to day use of the increasing parallelism available in modern processors.

          Ryan

          "Michael Moore and Mel Gibson are the same person, except for a few sit-ups. Moore thought his cheesy political blooper reel was going to tell people how to vote. Mel thought that his little gay SM movie about his imaginary friend was going to help him get to heaven." - Penn Jillette

          A Offline
          A Offline
          Anand Vivek Srivastava
          wrote on last edited by
          #7

          Ryan Roberts wrote:

          a good grounding in functional programming is going to be a plus in the next few years

          Lots of applications already use SQL which is a functional language. Funny lots of people don't realize that till they try some other functional language that replaces the imperative languages.

          J 1 Reply Last reply
          0
          • E El Corazon

            http://www.norvig.com/21-days.html[^] Although I would like to support his learn 6 languages, being from a multi-language (computer that is) background. But I think that is likely to scare away more people. although I love this section: Work on projects with other programmers. Be the best programmer on some projects; be the worst on some others. When you're the best, you get to test your abilities to lead a project, and to inspire others with your vision. When you're the worst, you learn what the masters do, and you learn what they don't like to do (because they make you do it for them). :doh: guilty... I will have to be better... don't want people learning my secrets.

            _________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)

            G Offline
            G Offline
            Gary Wheeler
            wrote on last edited by
            #8

            I agreed with him except when he offered Scheme as an initial language choice :omg:.


            Software Zen: delete this;

            1 Reply Last reply
            0
            • A Anand Vivek Srivastava

              Ryan Roberts wrote:

              a good grounding in functional programming is going to be a plus in the next few years

              Lots of applications already use SQL which is a functional language. Funny lots of people don't realize that till they try some other functional language that replaces the imperative languages.

              J Offline
              J Offline
              Jasmine2501
              wrote on last edited by
              #9

              I think better terms are 'declarative' and 'procedural'... Many, many procedural-oriented programmers write horrible SQL because they don't understand that declarative nature. In SQL, you tell the computer what you want, and it figures out how to get it. In procedural languages you build what you want by describing how to create it... it's the other side of the coin. OOP languages combine those two concepts, but I think they tend to lean toward the procedural side of things. Bottom line is, people should know the difference between the two types of languages and not try to force one to be the other. I've seen a lot of 100-line SQL procs that could be reduced to single queries, simply by understanding the declarative nature of SQL.

              "Quality Software since 1983!"
              http://www.smoothjazzy.com/ - see the "Programming" section for (freeware) JazzySiteMaps, a simple application to generate .Net and Google-style sitemaps!

              J 1 Reply Last reply
              0
              • J Jasmine2501

                I think better terms are 'declarative' and 'procedural'... Many, many procedural-oriented programmers write horrible SQL because they don't understand that declarative nature. In SQL, you tell the computer what you want, and it figures out how to get it. In procedural languages you build what you want by describing how to create it... it's the other side of the coin. OOP languages combine those two concepts, but I think they tend to lean toward the procedural side of things. Bottom line is, people should know the difference between the two types of languages and not try to force one to be the other. I've seen a lot of 100-line SQL procs that could be reduced to single queries, simply by understanding the declarative nature of SQL.

                "Quality Software since 1983!"
                http://www.smoothjazzy.com/ - see the "Programming" section for (freeware) JazzySiteMaps, a simple application to generate .Net and Google-style sitemaps!

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

                Jasmine2501 wrote:

                I've seen a lot of 100-line SQL procs that could be reduced to single queries, simply by understanding the declarative nature of SQL

                Which is why, even if you have C++/C# or whatever experts who can write SQL code, it is often beneficial to hire an actual SQL expert.

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

                J 1 Reply Last reply
                0
                • E El Corazon

                  http://www.norvig.com/21-days.html[^] Although I would like to support his learn 6 languages, being from a multi-language (computer that is) background. But I think that is likely to scare away more people. although I love this section: Work on projects with other programmers. Be the best programmer on some projects; be the worst on some others. When you're the best, you get to test your abilities to lead a project, and to inspire others with your vision. When you're the worst, you learn what the masters do, and you learn what they don't like to do (because they make you do it for them). :doh: guilty... I will have to be better... don't want people learning my secrets.

                  _________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)

                  J Offline
                  J Offline
                  Jasmine2501
                  wrote on last edited by
                  #11

                  I started writing on this and it got so long I decided to just put in on my blog for today... http://smoothjazzy.blogspot.com/2006/12/be-programmer-but-not-today.html[^] I basically just re-iterate what that guy said, but there's some important differences.

                  "Quality Software since 1983!"
                  http://www.smoothjazzy.com/ - see the "Programming" section for (freeware) JazzySiteMaps, a simple application to generate .Net and Google-style sitemaps!

                  1 Reply Last reply
                  0
                  • J Joe Woodbury

                    Jasmine2501 wrote:

                    I've seen a lot of 100-line SQL procs that could be reduced to single queries, simply by understanding the declarative nature of SQL

                    Which is why, even if you have C++/C# or whatever experts who can write SQL code, it is often beneficial to hire an actual SQL expert.

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

                    J Offline
                    J Offline
                    Jasmine2501
                    wrote on last edited by
                    #12

                    I wouldn't say that it's necessary that they be two different people. I'm very good at switching between the two things. There are a lot of folks out there who claim 5 years experience with SQL, but what they really mean is that for the past 5 years, they have had the occasional need to write a SELECT statement into their ASP code. I spent a good 3 years writing nothing but SQL and that solidified my concepts in that area. There are not too many jobs out there right now where you can get that experience, because HR thinks SQL programming is 'collateral ability', and are happy to tack the DB responsibilities onto someone hired for a C# or VB position. As a result, they get crappy databases, but nobody ever knows about it until they bring in someone like me. Ideally, you would have a DB admin who was an expert at SQL programming and DB administration, but if you can find anyone at all who's an expert in SQL, you'll be better off, even if they are also your C++ programmer.

                    "Quality Software since 1983!"
                    http://www.smoothjazzy.com/ - see the "Programming" section for (freeware) JazzySiteMaps, a simple application to generate .Net and Google-style sitemaps!

                    L 1 Reply Last reply
                    0
                    • W WillemM

                      Jeffry J. Brickley wrote:

                      guilty... I will have to be better... don't want people learning my secrets.

                      Yep, that's also part of that kind of work. Although I have to agree with the author that books in 7/21/... days and books in 24 hours aren't all that when you really want to learn how to build applications. On the other hand, I think these books are great when you have experience in building applications, but want to do something new or when you are assigned on a job that requires you to learn a new language.

                      WM. What about weapons of mass-construction? "You can always try to smash it with a wrench to fix that. It might actually work" - WillemM

                      J Offline
                      J Offline
                      James Foxall
                      wrote on last edited by
                      #13

                      I've written a number of 24 Hours books for Sams (including Teach Yourself Visual Basic 2005 in 24 Hours and Teach Yourself C# 2005 in 24 Hours), and I agree that none of these titles will make you an expert in 24 hours - or even get you close. The goal of these books is to provide adequate, useful, and hopefully entertaining instruction for you to learn the basics of a language and its tools and allow you to begin creating your own applications using the language; yu won't know all the answers as you stumble along with your own applications, but hopefully you will have learned enough of the basics to understand what's going on and how to find help or experiment to solve your own problems. These books serve a purpose, but I don't think anyone (publishers, authors, or readers) really believe that the books will make you an expert in the stated amount of time.

                      james commercial developer, author, speaker, dude. www.jamesfoxall.com

                      1 Reply Last reply
                      0
                      • J Joe Woodbury

                        I'm not a big fan of the learn 6 languages thing, unless there is some definite logic to it; you have both an issue of diminishing returns and risking becoming a jack of all trades, master of none. (This pretty much describes my general skill set at most things; however, I can say I am a genuine expert at assembly language, C and C++ and most of the Windows API and MFC.) I do find his general argument refreshing, though. It does take time to become a genuine expert. One of my pet peeves are developers with two or three years experience passing themselves off as Senior Engineers. This isn't just a title thing, but how they insert themselves into development process and throw their weight around and ignore those people who really are experts. This isn't a regurgitating knowledge thing. It's experience over time. Nothing can speed that up. Nothing can replace it. For example, when I make time estimates, I'm not just making up numbers; among other things I'm comparing the task to several similar tasks in the past. Another great piece of advice he gives is to just write code. Play around. With few exceptions you can't destroy your computer doing that (though I did blow away a bios once on accident.) Few things astonish me more in software development than programmers who don't have test programs where they try various approaches and refine their algorithms. (I'm also surprised at how many developers haven't created what I call their bag-o-tricks--proven libraries and code snippets they can use on any project.)

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

                        L Offline
                        L Offline
                        led mike
                        wrote on last edited by
                        #14

                        Joe Woodbury wrote:

                        Few things astonish me more in software development than programmers who don't have test programs where they try various approaches and refine their algorithms. (I'm also surprised at how many developers haven't created what I call their bag-o-tricks--proven libraries and code snippets they can use on any project.)

                        5... describes everyone in my group :^):(

                        led mike

                        1 Reply Last reply
                        0
                        • J Jasmine2501

                          I wouldn't say that it's necessary that they be two different people. I'm very good at switching between the two things. There are a lot of folks out there who claim 5 years experience with SQL, but what they really mean is that for the past 5 years, they have had the occasional need to write a SELECT statement into their ASP code. I spent a good 3 years writing nothing but SQL and that solidified my concepts in that area. There are not too many jobs out there right now where you can get that experience, because HR thinks SQL programming is 'collateral ability', and are happy to tack the DB responsibilities onto someone hired for a C# or VB position. As a result, they get crappy databases, but nobody ever knows about it until they bring in someone like me. Ideally, you would have a DB admin who was an expert at SQL programming and DB administration, but if you can find anyone at all who's an expert in SQL, you'll be better off, even if they are also your C++ programmer.

                          "Quality Software since 1983!"
                          http://www.smoothjazzy.com/ - see the "Programming" section for (freeware) JazzySiteMaps, a simple application to generate .Net and Google-style sitemaps!

                          L Offline
                          L Offline
                          led mike
                          wrote on last edited by
                          #15

                          Jasmine2501 wrote:

                          because HR thinks

                          They do? I have seen no evidence of that. :)

                          led mike

                          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