Moving to COFF ...

On Tue, Nov 16, 2021 at 10:50 AM Adam Thornton <athornton@gmail.com> wrote:
 I'm not even sure how much of this you can lay at the feet of teachers: I would argue that we see a huge efflorescence of essentially self-taught programming cobbled together from (in the old days) the system manuals a
Ouch ...   this is exactly my point.  In my experience in ~55 years of programming, with greater than 45 of those being paid to do it, the best programmers I know and have worked with were taught/mentored by a master -- not self-taught.  As I said, I had to be re-educated once I got the CMU.  My Dad had done the best he knew, but much of what he taught me was shortcuts and tricks because that is what he knew 🠪 he taught me syntax, not how to think.  I know a lot of programmers (like myself) that were self-taught or introduced to computing by novices to start and that experience get them excited, but all of them had real teachers/mentors who taught them the true art form and helped them unlearn a lot of crap that they had picked up or miss-interpreted.

Looking at my father as a teacher, he really had never been taught to think like a programmer.  In the late 1950s he was a 'computer' [see the movie "Hidden Figures"].  He was taught FORTRAN and BASIC and told to implement things he had been doing by hand (solving differential equations using linear algebra).    The ideas we know and loved about structured programming and how to do this well were still being invented by folks like Doug and his sisters and brothers in the research community. It's no surprise that my Dad taught me to 'hack' because he and I had nothing to compare to.   BTW: this is not to state all HS computer teachers are bad, but the problem is that most people that are really good at programming are actually quite rare and they tend to end up in research or industry -- not teaching HS.  Today, the typical HS computer teacher (like one of my nieces) takes a course or two at UMASS in the teacher's college.  They are never taught to program or take the same courses the kids in science and engineering take 🠪 BTW I also think this is why we see so much of the popular press talking about 'coding' not programming.  They really think learning to program is learning the syntax of a specific programming language.

When I look at the young people I hire (and mentor) told, it's not any different.    BTW:  Jon and I had a little bit of a disagreement when he wrote his book.  He uses Javascript for a lot of his examples - because of exactly what you point out 🠪 Javascript today, like BASIC before it, has a very high "on-screen results" factor with little work by the user.   Much is being done behind the covers to make that magic happen.  I tend to believe that creates a false sense of knowledge/understanding.

To Jon's credit, he tries to bridge that in his book.   As I said, I thought I knew a lot more about computers until I got to CMU.  Boy was I in for an education.    That said, I was lucky to be around some very smart people who helped steer me.

Clem