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. Teaching in the field

Teaching in the field

Scheduled Pinned Locked Moved The Lounge
c++wpflearning
38 Posts 19 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.
  • R Rage

    And this is how you give birth to software horrors. And why I hate that is it so easy to create software and that you can change it at almost no cost as many times as you wish : Nobody would come to the idea of teaching mechanical construction at a newbie in a crash course, just because the amount of costly havoc that they can create with that partial knowledge in a real project is not accountable. :sigh:

    Do not escape reality : improve reality !

    0 Offline
    0 Offline
    0x01AA
    wrote on last edited by
    #17

    On the other hand, I hate softies who only get excited about software technology, but have no idea about the business domain... ;)

    1 Reply Last reply
    0
    • M Mircea Neacsu

      I second Rage's opinion and I have a personal story to support it. Eons ago I was installing one of our systems overseas. A combination of hardware and software skills were required to make the customer happy. When time came to rotate back home, I was replaced by one of the tech support guys who was ok-ish on the hardware side (had background as a sonar technician in the Navy), but null on the software side. At that time, broadband was just a dream and anyway infrastructure was very limited were we worked. The guy in the field had to solve any problems that showed up. As he was supposed to make only minor changes to a few routines, I said, no problem, I'm going to give him a crash course of C++ and he will be able to manage. It turned out that when he returned from this assignment he was convinced he is a programmer and started touching lots of other parts that he shouldn't have. Not only that I hated myself for giving him the idea that he knows how to program, but I'm sure a lot of my colleagues never really forgave me :)

      Mircea

      H Offline
      H Offline
      honey the codewitch
      wrote on last edited by
      #18

      I've done it before with great success during the dot.com boom when you had a lot of people who had no business in software being in software. It's half washing out those who don't have the innate ability to think like a coder, and half fostering those that do, and then supervising results until they get it. It works. I've helped foster some incredible talent that way. Maybe I've just got a skill for mentorship, but while I understand the risks, that's why I review everything that goes out on this project. Plus this particular person is very cautious to begin with, being an engineer, he's pretty conservative and would rather ask me about how to do something if he is not sure. That makes him easy to work with.

      To err is human. Fortune favors the monsters.

      M 1 Reply Last reply
      0
      • H honey the codewitch

        I've done it before with great success during the dot.com boom when you had a lot of people who had no business in software being in software. It's half washing out those who don't have the innate ability to think like a coder, and half fostering those that do, and then supervising results until they get it. It works. I've helped foster some incredible talent that way. Maybe I've just got a skill for mentorship, but while I understand the risks, that's why I review everything that goes out on this project. Plus this particular person is very cautious to begin with, being an engineer, he's pretty conservative and would rather ask me about how to do something if he is not sure. That makes him easy to work with.

        To err is human. Fortune favors the monsters.

        M Offline
        M Offline
        Mircea Neacsu
        wrote on last edited by
        #19

        If you've done it before, you know that teaching is a dance for two. Even the best teachers have useless students. I hope in your case things will turn out well. On the other hand, if you are contracting people from Eastern Europe, it might be easier to find someone that already knows C++. In those parts of the world they are dime a dozen - I am a living proof :D (not that I would value myself at 0.10/12$) Good luck anyways!

        Mircea

        H 1 Reply Last reply
        0
        • H honey the codewitch

          I work with an electrical engineer and he's learning software development in the field as he goes. I often work with him, and am teaching him C++. It can be challenging because there are things he needs to know by certain deadlines, and he's got about 2 hours worth of stamina for a lesson at any given time. He knows a little C, still new to classes, understands pointers (sort of), gets static members to the point where he wished he knew they existed in previous endeavors of his. I have to teach him C++ templates and avoid STL containers because I've only got two hours to convey the fundamentals. Also he's in Eastern Europe right now, and I'm in North America, just to up the difficulty setting a bit. *cracks knuckles* *sips coffee* I got this.

          To err is human. Fortune favors the monsters.

          S Offline
          S Offline
          Slacker007
          wrote on last edited by
          #20

          honey the codewitch wrote:

          *sips coffee*

          smokes a big bowl, I mean huge bowl Now, I got this.

          H 1 Reply Last reply
          0
          • S Slacker007

            honey the codewitch wrote:

            *sips coffee*

            smokes a big bowl, I mean huge bowl Now, I got this.

            H Offline
            H Offline
            honey the codewitch
            wrote on last edited by
            #21

            Heh. Whatever works for folks.

            To err is human. Fortune favors the monsters.

            1 Reply Last reply
            0
            • M Mircea Neacsu

              If you've done it before, you know that teaching is a dance for two. Even the best teachers have useless students. I hope in your case things will turn out well. On the other hand, if you are contracting people from Eastern Europe, it might be easier to find someone that already knows C++. In those parts of the world they are dime a dozen - I am a living proof :D (not that I would value myself at 0.10/12$) Good luck anyways!

              Mircea

              H Offline
              H Offline
              honey the codewitch
              wrote on last edited by
              #22

              Mircea Neacsu wrote:

              On the other hand, if you are contracting people from Eastern Europe

              He's temporarily there on vacation - he's from the states. And he brought *me* the project - brought me on as a consultant because he knew he was out of his depth. Also he's a good student. First, he knows his limitations. Second he's ambitious and dedicated without being "hold my beer" about it - he's a good engineer as it is. We'll be fine. :)

              To err is human. Fortune favors the monsters.

              1 Reply Last reply
              0
              • H honey the codewitch

                I work with an electrical engineer and he's learning software development in the field as he goes. I often work with him, and am teaching him C++. It can be challenging because there are things he needs to know by certain deadlines, and he's got about 2 hours worth of stamina for a lesson at any given time. He knows a little C, still new to classes, understands pointers (sort of), gets static members to the point where he wished he knew they existed in previous endeavors of his. I have to teach him C++ templates and avoid STL containers because I've only got two hours to convey the fundamentals. Also he's in Eastern Europe right now, and I'm in North America, just to up the difficulty setting a bit. *cracks knuckles* *sips coffee* I got this.

                To err is human. Fortune favors the monsters.

                C Offline
                C Offline
                CPallini
                wrote on last edited by
                #23

                Quote:

                I have to teach him C++ templates

                Do not leave out meta programming... :laugh:

                "In testa che avete, Signor di Ceprano?" -- Rigoletto

                H 1 Reply Last reply
                0
                • C CPallini

                  Quote:

                  I have to teach him C++ templates

                  Do not leave out meta programming... :laugh:

                  "In testa che avete, Signor di Ceprano?" -- Rigoletto

                  H Offline
                  H Offline
                  honey the codewitch
                  wrote on last edited by
                  #24

                  We actually touched on the concept a little today before he tapped out. He doesn't need to learn it - more just recognize it when he sees it. :)

                  To err is human. Fortune favors the monsters.

                  J 1 Reply Last reply
                  0
                  • R Rage

                    I have been too long in the industry to know how this kind of things will end : On your day off there will be a quick metal piece that need to be urgently welded, it will be done because urgent and stuff, and the welded axle of the school bus will not be well welded, will break and the bus will violently hit two walls, run through the kindergarten, and fall from a cliff. :)

                    Do not escape reality : improve reality !

                    D Offline
                    D Offline
                    DRHuff
                    wrote on last edited by
                    #25

                    This applies to every new dev. Even you! It’s called experience and it’s why you have more experienced people in charge of juniors. If he crashes the bus that’s not just his fault. It’s also the witches responsibility. That’s just the way it is. Edited to not be such a dickhead. Sorry!

                    If you can't laugh at yourself - ask me and I will do it for you.

                    R 1 Reply Last reply
                    0
                    • H honey the codewitch

                      We actually touched on the concept a little today before he tapped out. He doesn't need to learn it - more just recognize it when he sees it. :)

                      To err is human. Fortune favors the monsters.

                      J Offline
                      J Offline
                      jmaida
                      wrote on last edited by
                      #26

                      Having about 40+ years of experience to call upon, I think you have this in hand, plus you will learn new stuff. Good luck.

                      "A little time, a little trouble, your better day" Badfinger

                      1 Reply Last reply
                      0
                      • H honey the codewitch

                        I work with an electrical engineer and he's learning software development in the field as he goes. I often work with him, and am teaching him C++. It can be challenging because there are things he needs to know by certain deadlines, and he's got about 2 hours worth of stamina for a lesson at any given time. He knows a little C, still new to classes, understands pointers (sort of), gets static members to the point where he wished he knew they existed in previous endeavors of his. I have to teach him C++ templates and avoid STL containers because I've only got two hours to convey the fundamentals. Also he's in Eastern Europe right now, and I'm in North America, just to up the difficulty setting a bit. *cracks knuckles* *sips coffee* I got this.

                        To err is human. Fortune favors the monsters.

                        B Offline
                        B Offline
                        BernardIE5317
                        wrote on last edited by
                        #27

                        May I inquire the number of lines of code he is expected to write and the duration of task. -Best PS When I began work at a company learning intel 8088 assembler the first thing I did was type RET AL I hope and trust your student is a better C++ learner than I as assembler. PPS My current sage advice to any student is below though no doubt yours is superior. As for myself I find it very helpful to design C++ code in a manner which suits "ease of use" and "ease of understanding" and then figure out the language details to make it so. It is all merely a matter of providing all necessary information to compiler and to one's own code to perform requested task whether it be to compile or to execute. So in summary I recommend ask yourself for each task you wish to execute what is the most "easy" manner to specify said execution what information is needed from whence does that information come how it should be processed/calculated with/utilized where it should be stored/passed and its types

                        H 1 Reply Last reply
                        0
                        • B BernardIE5317

                          May I inquire the number of lines of code he is expected to write and the duration of task. -Best PS When I began work at a company learning intel 8088 assembler the first thing I did was type RET AL I hope and trust your student is a better C++ learner than I as assembler. PPS My current sage advice to any student is below though no doubt yours is superior. As for myself I find it very helpful to design C++ code in a manner which suits "ease of use" and "ease of understanding" and then figure out the language details to make it so. It is all merely a matter of providing all necessary information to compiler and to one's own code to perform requested task whether it be to compile or to execute. So in summary I recommend ask yourself for each task you wish to execute what is the most "easy" manner to specify said execution what information is needed from whence does that information come how it should be processed/calculated with/utilized where it should be stored/passed and its types

                          H Offline
                          H Offline
                          honey the codewitch
                          wrote on last edited by
                          #28

                          We don't count lines of code, and it's a year long project, though at some point - probably 9 months in, we'll be ready to freeze development. I'd really like my C++ code to be easier to understand, but I don't write efficiently that way, because I don't think efficiently that way. I use GP. People don't like GP even though with C++ it's what's for dinner. So it's comments to a degree but I accompany my code with external documentation about it.

                          To err is human. Fortune favors the monsters.

                          S 1 Reply Last reply
                          0
                          • H honey the codewitch

                            We don't count lines of code, and it's a year long project, though at some point - probably 9 months in, we'll be ready to freeze development. I'd really like my C++ code to be easier to understand, but I don't write efficiently that way, because I don't think efficiently that way. I use GP. People don't like GP even though with C++ it's what's for dinner. So it's comments to a degree but I accompany my code with external documentation about it.

                            To err is human. Fortune favors the monsters.

                            S Offline
                            S Offline
                            Southmountain
                            wrote on last edited by
                            #29

                            sorry to ask: what is "GP" here? GNU C++?

                            diligent hands rule....

                            H 1 Reply Last reply
                            0
                            • S Southmountain

                              sorry to ask: what is "GP" here? GNU C++?

                              diligent hands rule....

                              H Offline
                              H Offline
                              honey the codewitch
                              wrote on last edited by
                              #30

                              No, sorry, I mean Generic Programming.

                              To err is human. Fortune favors the monsters.

                              1 Reply Last reply
                              0
                              • H honey the codewitch

                                I work with an electrical engineer and he's learning software development in the field as he goes. I often work with him, and am teaching him C++. It can be challenging because there are things he needs to know by certain deadlines, and he's got about 2 hours worth of stamina for a lesson at any given time. He knows a little C, still new to classes, understands pointers (sort of), gets static members to the point where he wished he knew they existed in previous endeavors of his. I have to teach him C++ templates and avoid STL containers because I've only got two hours to convey the fundamentals. Also he's in Eastern Europe right now, and I'm in North America, just to up the difficulty setting a bit. *cracks knuckles* *sips coffee* I got this.

                                To err is human. Fortune favors the monsters.

                                C Offline
                                C Offline
                                Cpichols
                                wrote on last edited by
                                #31

                                Having graduated as a mechanical engineer, and being a very good programmer, one of my first jobs was as a liaison between a pack of engineers and my programmer brethren. The engineers thought they knew programming because they wrote a few crappy programs in FORTRAN and dumped their data in a heap into a database they could do little with, so the hard part was convincing them that the programmers knew things and had skills that they needed. It sounds like your engineering friend has that part down. So tell me, how does learning C++ from a base of 'a little C' compare to learning Java from the same base?

                                H 1 Reply Last reply
                                0
                                • D DRHuff

                                  This applies to every new dev. Even you! It’s called experience and it’s why you have more experienced people in charge of juniors. If he crashes the bus that’s not just his fault. It’s also the witches responsibility. That’s just the way it is. Edited to not be such a dickhead. Sorry!

                                  If you can't laugh at yourself - ask me and I will do it for you.

                                  R Offline
                                  R Offline
                                  Rage
                                  wrote on last edited by
                                  #32

                                  A new dev is usually hired based on a set of competences and skills, may them also be small at the beginning, and software dev is their future job. Here we are talking about making people whose it is not the main job to do software, which is something completely different, and, and that was my point, only possible because software is so easy to produce. And precisely that is how to generate, again IMHO backed up by now 20 years of experience, very quickly very bad software. Our coding witch is very skillful and I do not doubt she has good teaching skills, but this is kind of an exceptional situation : I am facing every day, literally, people who are given tasks of coding (whatever it is, excel macros, vb code, website cms, ... ) and who are not qualified to do it. If what they would need to to do so was more than a computer and a bunch of software tools, like for instance a caterpillar or a $20k equipment, a professional would have been recruited so as to not waste money and they would not have ask to touch software. Not sure about what you wrote, but I am not impressed anymore by the Internet, don't worry :-D ;)

                                  Do not escape reality : improve reality !

                                  J U 2 Replies Last reply
                                  0
                                  • C Cpichols

                                    Having graduated as a mechanical engineer, and being a very good programmer, one of my first jobs was as a liaison between a pack of engineers and my programmer brethren. The engineers thought they knew programming because they wrote a few crappy programs in FORTRAN and dumped their data in a heap into a database they could do little with, so the hard part was convincing them that the programmers knew things and had skills that they needed. It sounds like your engineering friend has that part down. So tell me, how does learning C++ from a base of 'a little C' compare to learning Java from the same base?

                                    H Offline
                                    H Offline
                                    honey the codewitch
                                    wrote on last edited by
                                    #33

                                    Cpichols wrote:

                                    So tell me, how does learning C++ from a base of 'a little C' compare to learning Java from the same base?

                                    Honestly, I would have to learn Java better before I could teach it, so I can't comment on that. I only know enough Java to be able port code away from it, same with python.

                                    To err is human. Fortune favors the monsters.

                                    D 1 Reply Last reply
                                    0
                                    • M Maximilien

                                      honey the codewitch wrote:

                                      It can be challenging because there are things he needs to know by certain deadlines, and he's got about 2 hours worth of stamina for a lesson at any given time.

                                      I don't know, but this seems like a loose-loose situation. good luck.

                                      CI/CD = Continuous Impediment/Continuous Despair

                                      M Offline
                                      M Offline
                                      MikeTheFid
                                      wrote on last edited by
                                      #34

                                      Lose the loose and loose the lose! :)

                                      Cheers, Mike Fidler "I intend to live forever - so far, so good." Steven Wright "I almost had a psychic girlfriend but she left me before we met." Also Steven Wright "I'm addicted to placebos. I could quit, but it wouldn't matter." Steven Wright yet again.

                                      1 Reply Last reply
                                      0
                                      • R Rage

                                        I have been too long in the industry to know how this kind of things will end : On your day off there will be a quick metal piece that need to be urgently welded, it will be done because urgent and stuff, and the welded axle of the school bus will not be well welded, will break and the bus will violently hit two walls, run through the kindergarten, and fall from a cliff. :)

                                        Do not escape reality : improve reality !

                                        D Offline
                                        D Offline
                                        dandy72
                                        wrote on last edited by
                                        #35

                                        Now that, I actually wanna see.

                                        1 Reply Last reply
                                        0
                                        • H honey the codewitch

                                          Cpichols wrote:

                                          So tell me, how does learning C++ from a base of 'a little C' compare to learning Java from the same base?

                                          Honestly, I would have to learn Java better before I could teach it, so I can't comment on that. I only know enough Java to be able port code away from it, same with python.

                                          To err is human. Fortune favors the monsters.

                                          D Offline
                                          D Offline
                                          DRHuff
                                          wrote on last edited by
                                          #36

                                          That exactly sums up my knowledge of assembly languages. Well it used to. I haven’t touched it in 15 years or so. So my current knowledge of assembly language is that it is called assembly language!

                                          If you can't laugh at yourself - ask me and I will do it for you.

                                          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