Live data from Hacker News

Don't Make Students Use Eclipse

nora.codes

211–220 of 255 posts

Re: Don't Make Students Use Eclipse

#211

Earlier quoted context omitted.

Java is great for exactly that reason. It gives students an introduction to compilation, runtimes, stacks and heaps etc. Perhaps you had a poor learning experience due to who/what was teaching you rather than Java? My second comp sci course in college (first if you count high school AP credits), taught me all of this, and prepared me for the "full details" of MIPS and C.

Learning C first would also introduce students to all of that as well, outside of the magic shell of Java and its tooling; get your compiler, get your text editor, and you are so much closer to the action. If I could have chosen what I started with I would likely have picked C, or possibly a LISP as well.

I went through Basic - > Pascal - > C - > C++ - > many other kinds of languages.

Thanks to C and C++ I did understand the most important bases of programming, how a program runs, how hardware works and the most important algorithms and data structures.

I think it's important to learn something that doesn't do too many abstraction but it isn't too low level like the assembly language.

Re: Don't Make Students Use Eclipse

#212

Earlier quoted context omitted.

Java is great for exactly that reason. It gives students an introduction to compilation, runtimes, stacks and heaps etc. Perhaps you had a poor learning experience due to who/what was teaching you rather than Java? My second comp sci course in college (first if you count high school AP credits), taught me all of this, and prepared me for the "full details" of MIPS and C.

The point is, it's a terrible first language because it's impossible to actually understand what's going on even in a basic "hello world" program until halfway through the semester. So inevitably you have to start them off by saying "here's a bunch of noise that you don't understand, but that's OK, just copy and paste it" which is a terrible habit to reinforce. You need to understand * access modifiers (public/privat…

You are right about first time programmers. But should people come to university without any prior programming knowledge?

If someone applying for an architecture degree or engineering degree is required to have basic drawing skills and basic math knowledge, why we shouldn't assume the same for CS?

Re: Don't Make Students Use Eclipse

#213

I think a better alternative would be "Don't Make Students Use Java", I seriously can't think of a worse language for training beginner/intermediate programmers, I certainly wish my schooling experience consisted of something else. From day one you're introduced to magic on top of magic: "Open up and click 'new project' and name it 'MyProj' and now click on the file in the side menu that says 'MyProj' and inside `pub…

for very beginners, yes... Java is not the right programing language to teach. (I'd say Python is). But for intermediate/advanced classes I think Java is a must learn for every CS graduate. 1. While it is bloated, it has so many modern and not so modern concepts into it, that learning it makes you understand those concepts better. (eg: It is hard to understand Generics if your favorite language doesn't have them) 2.…

Weird reason to promote something in CS courses.

CS programs aren't to let you make some easy money in the next few years. CS programs are to provide an thorough and high level of computing, from which writing code is just a small part. Having a CS degree much more than learning a language and framework.

If one's goal is just to earn some money in the next few years, he would be better served by taking an Udemy course.

University didn't teach me how to code, I did that myself before going to university. What it did teach was the why's and how's of computing without which I would be just a code monkey churning code without having a better understanding.

It is the same difference between someone who make an course learning how to repair electrical appliances and electronics and the engineer who designs them.

Re: Don't Make Students Use Eclipse

#214

I think a better alternative would be "Don't Make Students Use Java", I seriously can't think of a worse language for training beginner/intermediate programmers, I certainly wish my schooling experience consisted of something else. From day one you're introduced to magic on top of magic: "Open up and click 'new project' and name it 'MyProj' and now click on the file in the side menu that says 'MyProj' and inside `pub…

Not to mention those classes would make good programmer candidates start hate programming. I can't imagine why people start teaching teens from C and Java and make them think programming is boring and annoying. Absolutely worse than not taking the class.

What is boring and annoying in C? The only thing simpler than C is Basic.

Re: Don't Make Students Use Eclipse

#215

I think a better alternative would be "Don't Make Students Use Java", I seriously can't think of a worse language for training beginner/intermediate programmers, I certainly wish my schooling experience consisted of something else. From day one you're introduced to magic on top of magic: "Open up and click 'new project' and name it 'MyProj' and now click on the file in the side menu that says 'MyProj' and inside `pub…

I disagree with this as much as I dislike java I believe its a great language to teach someone object oriented programming. And you don't really need and ide at all, any text editor will do and will probably take away the complexity of learning the UI and help concentrate on what actual programming is. An IDE is really not needed to write your first algorithms as a student.

But object oriented programming is gradually considered an antipattern by more and more people.

Re: Don't Make Students Use Eclipse

#216

I think a better alternative would be "Don't Make Students Use Java", I seriously can't think of a worse language for training beginner/intermediate programmers, I certainly wish my schooling experience consisted of something else. From day one you're introduced to magic on top of magic: "Open up and click 'new project' and name it 'MyProj' and now click on the file in the side menu that says 'MyProj' and inside `pub…

I teach Java to first-semester students and I tried a couple of times to switch to another language because I think it’s not a good language to start with and because the students don’t like it either. However, the business (and we are a private university driven by businesses sending students) builds on two primary technologies: Java and COBOL. So even if I did teach another language, I would fail to prepare them for their careers in engineering.

What I do instead, though, talk about the architecture and backgrounds, show different ways and let them make the mistakes that help learn to solve problems.

Re: Don't Make Students Use Eclipse

#217
post #103

I think that this is mixing up two different skills. The first skill is learning to program, and in particular learning to program data structures, or algorithms, or whatever. For this you don't care at all how your code builds, you care about correctness and easy to use testing infrastructure, and an IDE like IntelliJ or Eclipse is going to be almost frictionless for that. Teaching command line necessities together…

> I think we should carefully figure out what skills should be taught, and what the best way to teach those skills are, keeping in mind that for a lot of first-year university students this may be their first introduction to using anything other than a web browser, office programs, and video games on a computer. This is absolutely spot on. I used IDE Good/IDE Bad mostly as a way to get people to think about this, and…

Yes, I’ve thought about it before, since at my university they started on an entirely-eclipse sort of syllabus, and then overcorrected massively to command line. A bunch of new CS undergrads were driven off because they thought that programming was mostly memorising arcane command line invocations just to get simple code to run, and that just doesn’t seem right to me.

Out of interest, your original article pointed out the potential use of repl.it as an alternative to Eclipse and friends, but isn’t it still the whole build-in-a-box experience?

Re: Don't Make Students Use Eclipse

#218

Earlier quoted context omitted.

I disagree with this as much as I dislike java I believe its a great language to teach someone object oriented programming. And you don't really need and ide at all, any text editor will do and will probably take away the complexity of learning the UI and help concentrate on what actual programming is. An IDE is really not needed to write your first algorithms as a student.

But object oriented programming is gradually considered an antipattern by more and more people.

so is the problem that Java is not good as a programming language or that OO is no longer considered cool?

Re: Don't Make Students Use Eclipse

#219

I think a better alternative would be "Don't Make Students Use Java", I seriously can't think of a worse language for training beginner/intermediate programmers, I certainly wish my schooling experience consisted of something else. From day one you're introduced to magic on top of magic: "Open up and click 'new project' and name it 'MyProj' and now click on the file in the side menu that says 'MyProj' and inside `pub…

Seems like your complaint is against using IDEs early on and not Java. It's been awhile since my undergrad, but we used Java and text editor. We compiled with javac and ran the jars from the CLI.

Likewise. It hasn't been that long since I finished my undergrad (The upshot of this was that I didn't have a clue what Maven was until I started working, but you can learn tooling on the job.

Re: Don't Make Students Use Eclipse

#220

I think a better alternative would be "Don't Make Students Use Java", I seriously can't think of a worse language for training beginner/intermediate programmers, I certainly wish my schooling experience consisted of something else. From day one you're introduced to magic on top of magic: "Open up and click 'new project' and name it 'MyProj' and now click on the file in the side menu that says 'MyProj' and inside `pub…

That’s not necessarily true though.

I was thought through Java but it was all command-line and jacvac.

I did once sort a much better programmers final year project for him though - years later that I worked with - cos he had a CLASSPATH issue. That did make me realise there are people thought the way you say that miss some of the basics.

Post reply on HN