4 ms·
> Using Java or Python in a professional IDE like IntelliJ IDEA, NetBeans, PyCharm, or Eclipse is not a good first introduction to programming for computer scie
by eitland 5y ago
> Using Java or Python in a professional IDE like IntelliJ IDEA, NetBeans, PyCharm, or Eclipse is not a good first introduction to programming for computer science students, whether they’re in the field to become web developers, systems software engineers, or academic computer science researchers.
I was forced to program Java without an IDE and my experience is that I learned less in all those lessons over a year than in a few select days at work during my first year.
Furthermore, according to a friend who is a specialist teacher this is a common problem:
Most kids are inclined to see how things works as a whole while most teachers want to teach analytically by tearing everything apart.
I'm grown-up now and don't mind diving deep into stuff (in fact I enjoy it) but in my understanding we really should try to go with the flow when teaching:
Teach kids the wonders of programming (and everything else) and then go into the details as needed.
Because, if my friend is right and I understood him right (he doesn't teach programming) most kids doesn't want to learn programming because they want to know how to please javac but because they want to create cool stuff.
- cerved 5y agoI feel like a lot of people misread the article. It doesn't say you shouldn't use and IDE to teach students. It says you should avoid professional IDEs and at some later point you shouldn't neglect teaching them about other things like compilers and files. At some point they should have an understanding of how some of the underlying mechanics that a professional IDE abstract away. Also it's about teaching adults at University, not kids
- eitland 5y agoWhen one teach driving, do one start with the ignition system and the gas pump or do one start with the high level controls and how to behave in traffic? Do one (ideally) start in a new, safe car or in an old one with unsyncronized stick shift (the ones where you need to match the engine RPM before the gear lever will enter). Because that, in my eyes, is how programming is taught many places. Edit: What is the result of all this? It takes longer time to grasp the easy parts and the parts that fuel motivation. People drop out. What if we instead taught students using proper tools (e.g. non nerfed versions of Eclipse, IntelliJ or NetBeans for Java) and then used the time we saved in the beginning to dive deeper and deeper towards the end of the course?
- cerved 5y agoThe emphasis was on professional. The article suggests using a simpler IDE. You don't learn to drive in a formula 1 car
- Kwpolska 5y agoI don’t learn to drive in a Formula 1 car, and I don’t drive a Formula 1 car with my driver’s license. I drive a regular car that’s quite similar to the vehicle I learned to drive in. As do the virtually all drivers. So if we go with the assumption that university is meant to prepare for a job in the industry, and that industry uses “professional” IDEs in 99% of the circumstances, then university shuold use IDEA and Eclipse too.
- cerved 5y agoIt's a hyperbole. Virtually everything is designed such that there are different versions for people if different skills. Golf clubs, bikes, skiis, you name it. University is about education. Learning about computer science concepts, not churn out Java eclipse programmers. There's no reason to use a tool designed to do work on an enterprise codebase to teach the concepts behind a linked list.