Why did we ever think a student's first programming language didn't matter?
51–60 of 286 posts
Re: Why did we ever think a student's first programming language didn't matter?
#52It’s unfortunate that CS curriculums lean so heavily on math and proofs.
I think it's worth distinguishing between "Computer Science" and "Programming". One of the motivating examples in the OP is "conversational programmers". OP defines that as people who want to be able to have conversations about programming stuff, but won't program. -- For those people, sure, assuming heavy technical/math background when teaching programming isn't helpful. But many topics in Computer Science heavily r…
Re: Why did we ever think a student's first programming language didn't matter?
#53Even learning JS + HTML, or Spreadsheet + Bash/PowwrShell, with good instruction, should be enough to instill the key idea that languages are abstractions and there are radically different languages for different problem domains, and you should find ones that fits the applications you are interested in.
Re: Why did we ever think a student's first programming language didn't matter?
#54The biggest problem with the first language is that a student has nothing to compare it to, and so naturally comes away thinking that the design decisions in that language are a reflection of some deep underlying truth, that this language is The Way Things Should Be Done rather than a product of its time and particular goals of its designers. When I was a wee coder I thought BASIC was the bee's knees. I don't think t…
This is an argument for teaching intro programming with Scheme.
Re: Why did we ever think a student's first programming language didn't matter?
#55Earlier quoted context omitted.
Most programmers are not computer scientists. Even most people with computer science degrees are not computer scientists at heart, they forced themselves to do the coursework so they could get a job (mostly web, utilizing almost nothing they were taught). I learned to program as a child (I taught myself, for fun!) but I didn't learn much computer science until well into adulthood.
As someone who fought hard to switch careers into this industry and teaches software engineering now I understand the impulse to think this but I have to say all my experience thus far contradicts it.
Re: Why did we ever think a student's first programming language didn't matter?
#56I'd like to know where the author thinks mathematical learning can stop. In the US we live in a society where people will say with a smile, as though it was a badge of honor, "Oh I can't do math, I always hated it in school."
I'm sure the author isn't talking about that level of learning and would still want a reasonable degree of knowledge for all people, but their opinion on what that should be would be would be interesting in this context.
Re: Why did we ever think a student's first programming language didn't matter?
#57Me in an incredibly dull Java class in college: This is awful! I dreamed of making computers do interesting things, but it turns out programming sucks and is mind numbingly boring to learn! (I eventually dropped out and went on a different path)
Learning Python on my own 20 years later from various free online resources: This is incredible! I can make computers do anything and it all makes sense! What else can I learn?!?
For me, having both the right starter language and the right form of resources were required for it work out (ingesting lessons via video as I am curious about a certain topic works infinitely better than a classroom).
Re: Why did we ever think a student's first programming language didn't matter?
#58Python and Javascript have very low barriers to entry for the overhead (it can get complicated but for small programs it's easy).
You can use those to teach a lot of basic things.
In my own education we started with C/C++ and we were all drowning in pointers 80% of the time, the actual course material was pedantic.
What Uni tends to not focus on very well is just teaching the real, applicable basics of a language, with some good professional 'best practices' and students can spend years wasting their time trying to get things to compile, lost in bad manpages etc..
Start with something 'very light' and for everything else - provide a short 101 course for languages of instruction which focus on the practical mechanics of the language and nothing else. Those courses might even be taught by professional developers, outside of the regular kind of pedagogy. It feels 'not very academic' but that's the reality of the discipline.
If you want to teach architecture, and expect students to 'build buildings' ... you need to teach them properly how to use the hammer, nails, measuring tape - even if that in and of itself is not particularly academic.
Re: Why did we ever think a student's first programming language didn't matter?
#59After graduation, I fought my undergrad to switch the CS 101 course from Java to Python for the simple reason that public static void main() has a huge number of concepts built in and "just trust us, we'll cover that later" is a terrible excuse. Edit: Even now, years later, I still got them in the wrong order. Arg.
Processing is Java but doesn't have public static void main.
Python has a the beginners problem that a small error won't block compile but will make the program behave on completely bizarre ways.
Re: Why did we ever think a student's first programming language didn't matter?
#60After graduation, I fought my undergrad to switch the CS 101 course from Java to Python for the simple reason that public static void main() has a huge number of concepts built in and "just trust us, we'll cover that later" is a terrible excuse. Edit: Even now, years later, I still got them in the wrong order. Arg.