Live data from Hacker News

Why did we ever think a student's first programming language didn't matter?

m-cacm.acm.org

91–100 of 286 posts

Re: Why did we ever think a student's first programming language didn't matter?

#91

Given the ever-increasing amount of automation in the economy, I believe that programming (of one form or another) is going to become a skill as important as writing. Everyone learns how to write in school, even though only a few become novelists or journalists. Similarly, everyone will learn to code even though only a few will become data scientists or software engineers. Programming for non-professionals looks a lo…

I'm not sure what you expect them to be able to do beside using Excel.

Re: Why did we ever think a student's first programming language didn't matter?

#92
post #89

Earlier quoted context omitted.

Well, I had a similar experience in algebra. Here's an equation; it's the problem we're trying to solve. And we do this operation to both sides, and we get a simpler problem. OK, I understand that. And we do another thing to both sides, and we get an even simpler problem. Great. And we keep doing it, and we get... the answer??? Not a simpler problem, but the answer? How did that happen? Blew my mind. I eventually dec…

my quibble is not really about the equality symbol, more about assignments as a fundamental building concept of code. (Re)assignments exist in social interaction so I guess it's intuitive to people that way, but if you look at code from a perspective of modeling reality that's just not a thing that exists in nature. Maybe it's just me.

I suspect that your mental model doesn't line up with what's happening in an assignment. (I suspect that a similar thing was going on with me and algebra...)

Re: Why did we ever think a student's first programming language didn't matter?

#93

Earlier quoted context omitted.

> “Programming fundamentals” isn’t the same from language to language. You should be able to carry very, very basic concepts over to other languages with much less difficulty than learning them the first time. A student sufficiently skilled in Python will be able to make the same intro level programs in C given enough time. Badly? Yes, but they'll function. Similarly, a watercolor artist won't forget the basics of ar…

“… sufficiently skilled […] given enough time …” Well, sure. For some values of sufficiently and enough.

Sufficiently skilled: understands the topic in their chosen language.

Enough time: however long it takes them to learn the syntax of the second language + the time it took to complete the project in the first language.

Unfortunately I can't give decimal precision hour estimates.

Re: Why did we ever think a student's first programming language didn't matter?

#94
My first programming language was solder. I learned it in 6th grade. My second was BASIC, which I learned 5 years later. I'm old, and I've been around the block quite a few times... I can tell you what was in those fields before they become subdivisions. I tend to go off on tangents sometimes.

Teaching isn't about knowing the one right way... teaching is about giving people information that relates to their existing knowledge base. In the language of RF Design, it's about impedance matching.

If you want to turn out Rust programmers, it's probably a bad choice to teach them COBOL first. BASIC would be less bad. The closer the languages are in terms of impedance, the easier it is likely to be to transit between them.

Tangent: Bear in mind that in RF Design, impedance is only a complex number, in a person's mind, there are an infinite number of dimensions, you'll never get a consistent number.

Tangent: Teaching someone BASIC on a machine with 2K of RAM is also radically different that teaching someone QBASIC with megabytes of RAM and a hard drive. The constraints are different, the language itself has differences.

Tangent: Non Von Neuman systems like Verilog, FPGAs, solder, and Excel are valid tools as well.

Re: Why did we ever think a student's first programming language didn't matter?

#95

Given the ever-increasing amount of automation in the economy, I believe that programming (of one form or another) is going to become a skill as important as writing. Everyone learns how to write in school, even though only a few become novelists or journalists. Similarly, everyone will learn to code even though only a few will become data scientists or software engineers. Programming for non-professionals looks a lo…

It has been a pipe dream of some since the 1960s that "everybody" would program computers in the future. It hasn't happened and won't happen. Most people simply don't have the patience for it.

I'm sure a century or two the same was said for reading and writing.

Re: Why did we ever think a student's first programming language didn't matter?

#96
post #79
post #18

Earlier quoted context omitted.

> If a student has trouble transferring their knowledge of programming fundamentals “Programming fundamentals” isn’t the same from language to language. It’s inconceivable that a student who learned to program with python would develop the same type of fundamental understanding as a student who used C (to develop an understanding of memory-level APIs) or Haskell (to develop an understanding of type and semantic theor…

> “Programming fundamentals” isn’t the same from language to language. It’s inconceivable that a student who learned to program with python would develop the same type of fundamental understanding as a student who used C (to develop an understanding of memory-level APIs) or Haskell (to develop an understanding of type and semantic theories). I think this is a pretty good point and it touches upon something I was thin…

What inspired me to learn programming was your last point: building things. That's why I think that people should be introduced to a loosely typed, high-level, forgivable language. Compiler errors and verbose code does not appeal at first glance, you need to draw people in..

I will never forget the moment 11 year old me saw a message box appear with text that I specified. I made that happen, I built it. I felt so powerful and cool. That 1 line of code in an obscure language got me hooked and over time I moved on to other languages.

Re: Why did we ever think a student's first programming language didn't matter?

#97

Given the ever-increasing amount of automation in the economy, I believe that programming (of one form or another) is going to become a skill as important as writing. Everyone learns how to write in school, even though only a few become novelists or journalists. Similarly, everyone will learn to code even though only a few will become data scientists or software engineers. Programming for non-professionals looks a lo…

I'm not sure what you expect them to be able to do beside using Excel.

Programming an "AI", perhaps.

That ticks the boxes of deceptively simple interface and programs a few lines long.

It also won't require as much formal training and will be more intuitive and trial error based.

GPT-3 and DALL-E have given us a glimpse of what that will look like.

Re: Why did we ever think a student's first programming language didn't matter?

#98
post #70

Earlier quoted context omitted.

> I don’t think everyone can understand computer science. This is a bold claim. None of us are special for working in tech. Our life has presented us the opportunity and passion to invest ourselves deeply in the field, often at great opportunity cost. Saying that a bad teacher makes no difference in student outcomes is equally ridiculous as saying an excellent teacher makes no difference in student outcomes. If that'…

The person you responded to didn't make any claims about bad teachers or good teachers. The claim is that not everyone can understand computer science. As an extreme example do you think a person who is mentally disabled can understand computer science? From my perspective it's clear to me that not everyone can understand computer science and the same applies to many academic areas.

The grandparent comment was about teaching, so I interpreted the parent comment to mean that "innate ability matters much more than good teaching", which my personal experience teaching people disagrees with.

And sure, the statement "not everyone can understand computer science" is technically true if you include people with mental disabilities. But in reality, some people draw the line a lot higher as a form of gatekeeping. I've known a number of professors who let themselves off the hook this way too: Poor student performance couldn't possibly be a failure of their teaching--the students must not be smart enough!

Re: Why did we ever think a student's first programming language didn't matter?

#99
Even MIT abandoned Scheme and SICP and switched to Python. There's a beautiful elegance to that approach. It gives a sense of the mathematical foundation of computer science. It's not that useful for building large programs from off the shelf libraries, which is what almost everybody does today.

At one time, computer science required a good understand of what's in Vol. 1 of Knuth. That's not in much demand any more. Just about everything in there you now get from a well-debugged library.

There are people who still write hash tables, and they're serious hash table theorists. I'm impressed with how good hash table technology is today. You can get over 90%+ fill and near-constant time. But only a few people today need to know about that.

Re: Why did we ever think a student's first programming language didn't matter?

#100
post #18

Earlier quoted context omitted.

> If a student has trouble transferring their knowledge of programming fundamentals “Programming fundamentals” isn’t the same from language to language. It’s inconceivable that a student who learned to program with python would develop the same type of fundamental understanding as a student who used C (to develop an understanding of memory-level APIs) or Haskell (to develop an understanding of type and semantic theor…

> I don’t think everyone can understand computer science. This is a bold claim. None of us are special for working in tech. Our life has presented us the opportunity and passion to invest ourselves deeply in the field, often at great opportunity cost. Saying that a bad teacher makes no difference in student outcomes is equally ridiculous as saying an excellent teacher makes no difference in student outcomes. If that'…

>> I don’t think everyone can understand $RANDOM_DISCIPLINE.

> This is a bold claim.

I disagree. What makes computer science so special that it can be understood by everyone, while it is generally accepted that other disciplines cannot?

After all, saying "Not everyone can understand chemistry" doesn't draw the same ire.

Post reply on HN