vi and javac is my environment of choice, but I use Eclipse at the day job because they require me to work on their Windows machine. Eclipse is not terribly painful, but I find its attempts to help me quite irritating. I'll write my own code, thanks very much, I don't want some machine throwing suggestions at me.
jon.kiparsky
Posting Virtuoso
1,849 posts since Jun 2010
Reputation Points: 383
Solved Threads: 187
If you're just starting out, you should certainly not be using an IDE, any more than you should use a calculator in a math class. The conveniences provided by an IDE might be useful for someone who knows what they're doing, but they will prevent you form learning things you need to know if you're just beginning.
IMHO, at any rate.
jon.kiparsky
Posting Virtuoso
1,849 posts since Jun 2010
Reputation Points: 383
Solved Threads: 187
Some universities make students code in Notepad/Wordpad. Asking students to use an editor which doesn't go syntax highlighting is a sure shot way of "frustrating" the hell out of students and making them hate the course.
I personally use Eclipse (work) / gvim (home).
BTW, it's not "JAVA" but Java.
~s.o.s~
Failure as a human
11,938 posts since Jun 2006
Reputation Points: 3,281
Solved Threads: 734
Some universities make students code in Notepad/Wordpad. Asking students to use an editor which doesn't go syntax highlighting is a sure shot way of "frustrating" the hell out of students and making them hate the course.
... or making them learn the language top to bottom and develop an eye for flaws in the code. One or the other.
But I wouldn't ask someone to use wordpad for coding. That's just torture. vi(m) is the way to go - or emacs, if you must, but emacs has the terrible habit of breaking into song or starting your computer up like a motorbike and driving off if you hit the wrong key combination. :)
jon.kiparsky
Posting Virtuoso
1,849 posts since Jun 2010
Reputation Points: 383
Solved Threads: 187
... or making them learn the language top to bottom and develop an eye for flaws in the code. One or the other.
True; but language is something students would never have control over, at least those who are interested are bound to download a sane editor and work in it rather than following the footsteps of "notepad lovers".
I'm not sure as to why Smalltalk isn't the language which is used for teaching OO to students. Maybe teaching Java is a way of preparing the students for the enterprise world out there. ;-)
Emacs is on my TODO list but mastering vim comes first. :-)
~s.o.s~
Failure as a human
11,938 posts since Jun 2006
Reputation Points: 3,281
Solved Threads: 734
I've never played with Smalltalk - is it fun?
I suppose the popularity of java as a first language is not unrelated to the fact that it's widely used in business. After all, if you're doing a masters program for people who are going out to write back-end software for financial services, you might as well give them a language that you know they're going to run into in their careers.
But it seems a sensible choice. It's a powerful language with a lot of support (both in terms of libraries and literature, as well as smart people in forums like this one), and the learning curve is pretty good. Would you be surprised if I told you that I wrote my first line of java about two years ago, and before that my programming was pretty much shell scripts and some perl? Java does let you get places pretty fast. I imagine it's got its limits, but that's why you don't stop there - I'm working on scheme now. Learn a new language every year, that was the advice I got from the guy who started me out in java, and I think that's the best advice I've gotten about programming.
jon.kiparsky
Posting Virtuoso
1,849 posts since Jun 2010
Reputation Points: 383
Solved Threads: 187
I started out with C++ and never really understood it.
But you should, really. If not C++ (I admit C++ is a pretty complicated language when it comes to gotchas) then C and the basics of assembly programming to know *how* it works under the hood.Does anybody know what that's called?
Programming with 'final' in Java to avoid destructive updates is kind of inspired by the "pure functional" languages where destructive updates are avoided. Another thing which can be achieved using final is immutability for your classes.C# is a Windows thing (I'm almost positive) No, it isn't.
and Python and JavaScript aren't precompiled at all.
Not entirely true, pyc files are the byte compiled version of your Python source file. Though something like this doesn't exist for Javascript ATM, I'm sure it isn't impossible. You have to understand that there is a difference between the language specification and its implementation though for most of the cases it would be safe to assume that you are talking about the standard implementation.
PS: Is Objective C is worth learning?
Depends on what you want to do with it?
~s.o.s~
Failure as a human
11,938 posts since Jun 2006
Reputation Points: 3,281
Solved Threads: 734
Notepad? What is this notepad talk? Have you people not heard of text editors? There are two standard ones, vi and emacs. You really should know both well enough to know which of the two you prefer. Or, hell, you're programmers, right? Write a text editor. Shouldn't take you too long.
Coding in notepad might make sense, if the alternative is having your eyes dug out with a runcible spoon, and fresh lemon juice squeezed lovingly into the bloody sockets. Otherwise, no, not when it's so easy to get a well-made editor. (Or emacs. :) )
jon.kiparsky
Posting Virtuoso
1,849 posts since Jun 2010
Reputation Points: 383
Solved Threads: 187
ya NetBean Is Good Tool For Java If your A Beginner You Just Practice It In notepad In At Lest 6-Month And After That You Can Go For IDEs ok there is Number Of Tool In World
Webspeher,Eclipse,J unit,Web logic This Are The Good Tool i Use ok
No, NetBeans is NOT a good tool if you are a beginner. As being said earlier in this thread, if you're just learning the language, you should stay away from IDE's, especially those that auto-complete your statements. All you'll learn with that, is how to type and click-click-click, instant code, without actually understanding what you're doing or how it works.
After a few months, when you're a bit familiar with the Java syntaxis and you're switching from a text editor to an IDE, you should still start off with one of the simpler ones, that have just the basic functionalities, without the 'generate my code for me' parts.
Something wrong with your shift key btw? :)
stultuske
Posting Sensei
3,137 posts since Jan 2007
Reputation Points: 1,114
Solved Threads: 433
Anything isn't good or bad in an absolute sense. IDE's are a necessity when it comes to professional development since you get paid for each and every minute. The organization doesn't pay you to *learn* but to *develop*. But, when it comes to beginners, IDE's are notorious for making them lazy and taking things for granted.
You'd be surprised at the number of job applicants I've seen who can't name *five* methods of the class they have used all these years. I call these kids the "CTRL + SPACE" generation. :-)
~s.o.s~
Failure as a human
11,938 posts since Jun 2006
Reputation Points: 3,281
Solved Threads: 734