LinuxQuestions.org
Download your favorite Linux distribution at LQ ISO.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Reply
  Search this Thread
Old 09-23-2012, 12:12 PM   #1
Kallaste
Member
 
Registered: Nov 2011
Distribution: Slackware
Posts: 363

Rep: Reputation: 85
Java and Emacs?


Hi All,

I have been studying Java for about a year now, and am still trying to find my preferred IDE. Java is my first language, and I would say I'm probably at a higher-intermediate level in terms of programming skill.

When I started to learn programming, I used a program called BlueJ, which is basically just a text editor that uses color-coding to highlight the class/method/statement relationships within your code. It doesn't have any sort of auto-completion or any other such frills, so it forces you to learn the language rather than relying on an IDE. In truth, that's the way I like it, so I kept using BlueJ even after I probably should have moved on to something else.

I tried Eclipse briefly, but in truth didn't like it at all. Maybe someday I will see its merits, but at the moment it just gets on my nerves. I don't like all the bells and whistles, I don't like having my code completed for me, and I REALLY don't like it when it tries to write class and method stubs and insert my brackets for me. I know you can get rid of most of that stuff in the preferences, but if I do that, it seems like I'm running a huge and complicated program with a style that doesn't appeal to me in order to use approximately none of its functionality. I just don't like it.

So, I am left wondering what to do now. I've been getting along using JCreator, but lately I've been wondering about Emacs. I have very little experience with it beyond opening .txt files in it and wondering what crazy alien language this program was written in and how a mere earthling such as myself was supposed to do anything with it, but I know it's supposed to be able to do lots of things. Since I'm in the process of completing a CS degree and plan on learning quite a few languages in the near future, it would be nice to have a universal, cross-platform tool I could put to use doing whatever I need to do. Furthermore, if Emacs would be valuable to me down the road (and whether it would be or not is one of the things I'm curious about), I'd just as soon learn it early before I settle into a comfort zone with something else.

Besides, even though I have no idea how to navigate it now, I must admit that the arcaneness of Emacs appeals to my geeky side.

I did a little research online on using Emacs for Java, and the consensus seems to be that it can be done and some people do it but that Eclipse is better. Given my feeling for Eclipse, this of course is useless to me. I also read that James Gosling himself advises against using it, but from the article I read (http://www.computerworld.com.au/arti...s_java_father/), this seems to be a personal bias against Emacs itself for being "outdated" rather than for any real lack in function.

So does anyone have any thoughts or suggestions on this subject? Would Emacs be a valuable tool to learn? Would using it for Java be a good idea? How easy would it be, and what would I have to do to get set up? If it is advisable, are there any resources or tutorials I should look at to get me started?

I guess I should also say that I plan on doing the majority of my work from home, so having to learn Eclipse because it is the industry standard on the chance I will need it in the work place is not a concern.

Any thoughts or advice would be appreciated.

Last edited by Kallaste; 09-23-2012 at 12:14 PM.
 
Old 09-23-2012, 01:43 PM   #2
ntubski
Senior Member
 
Registered: Nov 2005
Distribution: Debian, Arch
Posts: 3,780

Rep: Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081
Quote:
Originally Posted by BloomingNutria View Post
So does anyone have any thoughts or suggestions on this subject? Would Emacs be a valuable tool to learn? Would using it for Java be a good idea? How easy would it be, and what would I have to do to get set up? If it is advisable, are there any resources or tutorials I should look at to get me started?
Have you tried the builtin tutorial (<f1> t)? The manuals are quite comprehensive; http://emacswiki.org/ is another handy resource. There are some pretty cool screen casts on http://emacsrocks.com/, they relate more to web stuff (html, php, javascript) but the general editing techniques can give you an idea of how valuable Emacs is as a tool.

If you're comfortable building Java programs with command line tools Emacs integrates pretty well with those. Recent versions of Emacs have added some kind of project system but I've stayed away from that, I prefer the build system be separate from the editor.
 
1 members found this post helpful.
Old 09-23-2012, 03:16 PM   #3
PTrenholme
Senior Member
 
Registered: Dec 2004
Location: Olympia, WA, USA
Distribution: Fedora, (K)Ubuntu
Posts: 4,187

Rep: Reputation: 354Reputation: 354Reputation: 354Reputation: 354
To my mind, the major advantage of Emacs is that it can be run on a non-windowing system, e.g., when X is not functioning. Quite useful when your video card or X-server turns belly-up, and you want to get something done. (And, FYI, the "crazy" language is LISP, with specific "improvements" for Emacs. Many years ago I learned LISP so I could "enhance" Emacs for my needs.)

Anyhow, while it is a useful tool to have available, Java development usually requires a working windowing system, so the ability of Emacs to work without one is probably not very relevant for you.

So, yes, you could do Java development with Emacs, but you'd probably find more modern IDEs a better fit. (I say "more modern" because I first used Emacs on the MIT Multics system in the early 1970's so, for me, Emacs seems fairly old. But it has been kept "current" by generations of maintainers.)
 
Old 09-23-2012, 03:28 PM   #4
Kallaste
Member
 
Registered: Nov 2011
Distribution: Slackware
Posts: 363

Original Poster
Rep: Reputation: 85
Quote:
Originally Posted by ntubski View Post
Have you tried the builtin tutorial (<f1> t)? The manuals are quite comprehensive; http://emacswiki.org/ is another handy resource. There are some pretty cool screen casts on http://emacsrocks.com/, they relate more to web stuff (html, php, javascript) but the general editing techniques can give you an idea of how valuable Emacs is as a tool.
I gave the built in tutorial a go a while back, and now I'm working on another smaller tutorial I found on a college website. Maybe the manuals will look less daunting when I finish.

Those screen casts are cool, thanks! They definitely help me see the possibilities.
 
Old 09-23-2012, 03:51 PM   #5
Kallaste
Member
 
Registered: Nov 2011
Distribution: Slackware
Posts: 363

Original Poster
Rep: Reputation: 85
Quote:
Originally Posted by PTrenholme View Post
(And, FYI, the "crazy" language is LISP, with specific "improvements" for Emacs. Many years ago I learned LISP so I could "enhance" Emacs for my needs.)
Oh, I know it's in LISP. That isn't what I meant. I actually have a little experience in LISP (though Common and not Emacs LISP), and I like it. I just meant that everything I saw on the screen and found in the menus was incomprehensible to me. "Visiting" a file? Split screens? The welcome screen at startup was typed onto the page? It was all completely . . . alien.
 
Old 09-23-2012, 04:19 PM   #6
ntubski
Senior Member
 
Registered: Nov 2005
Distribution: Debian, Arch
Posts: 3,780

Rep: Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081
Quote:
Originally Posted by BloomingNutria View Post
I just meant that everything I saw on the screen and found in the menus was incomprehensible to me. "Visiting" a file? Split screens? The welcome screen at startup was typed onto the page? It was all completely . . . alien.
Well, that's what you get for using an "outdated" program. The terminology was invented before today's standardization.

Quote:
Originally Posted by PTrenholme View Post
To my mind, the major advantage of Emacs is that it can be run on a non-windowing system, e.g., when X is not functioning. Quite useful when your video card or X-server turns belly-up, and you want to get something done.
You sound like a vi(m) user.
 
Old 09-23-2012, 06:02 PM   #7
Kallaste
Member
 
Registered: Nov 2011
Distribution: Slackware
Posts: 363

Original Poster
Rep: Reputation: 85
Quote:
Originally Posted by ntubski View Post
Well, that's what you get for using an "outdated" program. The terminology was invented before today's standardization.


You sound like a vi(m) user.
Hang on now, I never said Emacs was outdated. That was James Gosling. Let's be clear on that or you'll have a hoard of mad LISP hackers out for my head!
 
Old 09-23-2012, 06:08 PM   #8
brianL
LQ 5k Club
 
Registered: Jan 2006
Location: Oldham, Lancs, England
Distribution: Slackware64 15; SlackwareARM-current (aarch64); Debian 12
Posts: 8,298
Blog Entries: 61

Rep: Reputation: Disabled
Quote:
Originally Posted by BloomingNutria View Post
Hang on now, I never said Emacs was outdated. That was James Gosling. Let's be clear on that or you'll have a hoard of mad LISP hackers out for my head!
Not to mention St IGNUcius! Creator of The Holy Emacs.
 
1 members found this post helpful.
Old 09-23-2012, 07:17 PM   #9
Kallaste
Member
 
Registered: Nov 2011
Distribution: Slackware
Posts: 363

Original Poster
Rep: Reputation: 85
Quote:
Originally Posted by brianL View Post
Not to mention St IGNUcius! Creator of The Holy Emacs.
That's brilliant. Best laugh I've had all day, and then some.
 
Old 09-23-2012, 07:43 PM   #10
ntubski
Senior Member
 
Registered: Nov 2005
Distribution: Debian, Arch
Posts: 3,780

Rep: Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081Reputation: 2081
Quote:
Originally Posted by BloomingNutria View Post
Hang on now, I never said Emacs was outdated. That was James Gosling. Let's be clear on that or you'll have a hoard of mad LISP hackers out for my head!
Oh, I didn't mean to suggest that you said that. Although that hoard might get you for implying Lisp is stuck in the punchcard days if you keep calling it LISP!
 
Old 09-23-2012, 07:49 PM   #11
Kallaste
Member
 
Registered: Nov 2011
Distribution: Slackware
Posts: 363

Original Poster
Rep: Reputation: 85
And no, I definitely don't want Richard Stallman mad at me.
 
Old 09-23-2012, 07:53 PM   #12
Kallaste
Member
 
Registered: Nov 2011
Distribution: Slackware
Posts: 363

Original Poster
Rep: Reputation: 85
Quote:
Originally Posted by ntubski View Post
Oh, I didn't mean to suggest that you said that. Although that hoard might get you for implying Lisp is stuck in the punchcard days if you keep calling it LISP!
Sorry, old habits. I had a professor who wrote it that way and it stuck. If it's going to irritate the hoard I'll change it.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
emacs in programming java. It's so difficult. xeon123 Linux - Software 7 12-19-2006 10:41 AM
Want to use Emacs for java but have a few questions vdogvictor Programming 5 06-26-2004 12:02 AM
Emacs and Java AaronUFC Linux - Newbie 2 02-14-2004 06:52 PM
EMACS and JAVA AaronUFC Linux - Newbie 2 01-10-2004 10:16 AM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 07:13 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration