By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
443,923 Members | 1,443 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 443,923 IT Pros & Developers. It's quick & easy.

python vs java & eclipse

P: n/a
Hi,

It seems to me that measuring productivity in a programming language
must take into account available tools and libraries.

Eclipse for example provides such an amazing IDE for java that it is no
longer obvious to me that one would be much more productive in python
for medium sized projects.

Sure, all that Java static typing can be painful, but Eclipse takes
some of that pain away. Moreover, static typing can result in better
on-the-fly error detection and refactoring support.

Any thoughts on this?

Amir

Dec 1 '06 #1
Share this Question
Share on Google+
16 Replies


P: n/a
On 1 Dec 2006 01:24:47 -0800, Amir Michail <am******@gmail.comwrote:
Eclipse for example provides such an amazing IDE for java that it is no
longer obvious to me that one would be much more productive in python
for medium sized projects.
Eclipse can generate a lot of the Java boilerplate code, it's true,
saving you a lot of typing up front. But it can't maintain all those
reams of pointless code for you, and perhaps more importantly, it
can't read it for you. All the useless code that Java requires still
has a large price, even if you don't need to type it yourself.
Sure, all that Java static typing can be painful, but Eclipse takes
some of that pain away. Moreover, static typing can result in better
on-the-fly error detection and refactoring support.
I do sometimes spend some time finding and fixing bugs of the "I
though I had a Spam instance, but it turns out to be a Eggs instance"
issues when coding in Python, but then I spend some time sorting out
"I know you've got a fry() method in there somewhere - just let me
call it!" issues in Java, so it balances out. And the latter problems
are more annoying, 'cos I feel the compiler isn't trusting me. Python
usually trusts me, even if I don't always deserve it. ;-)

FWIW, I spend perhaps 80% of my coding time with Java (and Eclipse),
and 20% with Python.

--
Cheers,
Simon B
si***@brunningonline.net
http://www.brunningonline.net/simon/blog/
Dec 1 '06 #2

P: n/a
just used the py dev plugin for eclipse.
it is great.
auto indentation and intellisence.
and all other things.
so now how does it look from this end?
python + productivity and eclipse + productivity = double productivity!
only problem with the plugin is that I find it difficult to manage the
script running.
I open a command prompt and run the scripts manually.
any suggestion for this.
for example I had name = raw_input("please enter your name") and the
moment I type the first letter on the keyboard the code execution
moves over to the next statement. should it not wait for the return
key as it always does?
Krishnakant.
Dec 1 '06 #3

P: n/a
hg
krishnakant Mane wrote:
just used the py dev plugin for eclipse.
it is great.
auto indentation and intellisence.
and all other things.
so now how does it look from this end?
python + productivity and eclipse + productivity = double productivity!
only problem with the plugin is that I find it difficult to manage the
script running.
I open a command prompt and run the scripts manually.
any suggestion for this.
for example I had name = raw_input("please enter your name") and the
moment I type the first letter on the keyboard the code execution
moves over to the next statement. should it not wait for the return
key as it always does?
Krishnakant.
I don't know about raw_input ... my programs all go through some GUI ...
but I run / debug(although almost never) all of my applications from
pydev - no need to change project as with Visual Studio, I just
run/debug whatever I need with a few clicks ... have not touched Konsole
in weeks.

I also, after weeks of testing, decided to invest in the pydev
extensions / the bugs it has found for me already justify the investment.

hg
Dec 1 '06 #4

P: n/a
Thomas Ploch schrieb:
Amir Michail schrieb:
>Hi,

It seems to me that measuring productivity in a programming language
must take into account available tools and libraries.

Eclipse for example provides such an amazing IDE for java that it is no
longer obvious to me that one would be much more productive in python
for medium sized projects.

Sure, all that Java static typing can be painful, but Eclipse takes
some of that pain away. Moreover, static typing can result in better
on-the-fly error detection and refactoring support.

Any thoughts on this?

Amir

Yes, thats true, but since eclipse is resource monster (it is still
using java), and some people (like me) don't have a super fresh and new
computer, and have to run other services to test their work locally
(like mysql and apache servers), it gets pretty harsh with eclipse. I
personally tried eclipse on my laptop (which I work most with), and I
had quite a system resource problem. So I switched back to vim and
console and it hasn't been too bad, since if you know how to use a
powerful editor, it can be as productive.

But in the end, it is up to anyone to find the best solutiion for
themselves.

Thomas
Yes, thats true, but since eclipse is resource monster (it is still
using java), and some people (like me) don't have a super fresh and new
computer, and have to run other services to test their work locally
(like mysql and apache servers), it gets pretty harsh with eclipse. I
personally tried eclipse on my laptop (which I work most with), and I
had quite a system resource problem. So I switched back to vim and
console and it hasn't been too bad, since if you know how to use a
powerful editor, it can be as productive.

But in the end, it is up to anyone to find the best solutiion for
themselves.

Thomas

Dec 1 '06 #5

P: n/a
hg
Thomas Ploch wrote:
Thomas Ploch schrieb:
>Amir Michail schrieb:
>>Hi,

It seems to me that measuring productivity in a programming language
must take into account available tools and libraries.

Eclipse for example provides such an amazing IDE for java that it is no
longer obvious to me that one would be much more productive in python
for medium sized projects.

Sure, all that Java static typing can be painful, but Eclipse takes
some of that pain away. Moreover, static typing can result in better
on-the-fly error detection and refactoring support.

Any thoughts on this?

Amir
Yes, thats true, but since eclipse is resource monster (it is still
using java), and some people (like me) don't have a super fresh and new
computer, and have to run other services to test their work locally
(like mysql and apache servers), it gets pretty harsh with eclipse. I
personally tried eclipse on my laptop (which I work most with), and I
had quite a system resource problem. So I switched back to vim and
console and it hasn't been too bad, since if you know how to use a
powerful editor, it can be as productive.

But in the end, it is up to anyone to find the best solutiion for
themselves.

Thomas

Yes, thats true, but since eclipse is resource monster (it is still
using java), and some people (like me) don't have a super fresh and new
computer, and have to run other services to test their work locally
(like mysql and apache servers), it gets pretty harsh with eclipse. I
personally tried eclipse on my laptop (which I work most with), and I
had quite a system resource problem. So I switched back to vim and
console and it hasn't been too bad, since if you know how to use a
powerful editor, it can be as productive.

But in the end, it is up to anyone to find the best solutiion for
themselves.

Thomas
If you compare eclipse to VS, it is not that memory hungry - but i agree
with you that a min-config is needed. Yet (I believe that) a complete
IDE can bring functions that an editor, however powerful, cannot (I
still use emacs).

I have tried Komodo, Wing, Eric3, Idle, emacs, (not vi ;-) ), SPE,
boa-constructor, .... and many more - I like most of them but am really
addicted to eclipse + pydev.

.... but even without pydev, I would not use java just because of eclipse.

hg
Dec 1 '06 #6

P: n/a

krishnakant Mane wrote:
just used the py dev plugin for eclipse.
it is great.
But isn't support for java better because the eclipse ide can take
advantage of explicit type declarations (e.g., for intellisense,
refactoring, etc.)?

Amir
auto indentation and intellisence.
and all other things.
so now how does it look from this end?
python + productivity and eclipse + productivity = double productivity!
only problem with the plugin is that I find it difficult to manage the
script running.
I open a command prompt and run the scripts manually.
any suggestion for this.
for example I had name = raw_input("please enter your name") and the
moment I type the first letter on the keyboard the code execution
moves over to the next statement. should it not wait for the return
key as it always does?
Krishnakant.
Dec 1 '06 #7

P: n/a

Amir Michail escreveu:
krishnakant Mane wrote:
just used the py dev plugin for eclipse.
it is great.

But isn't support for java better because the eclipse ide can take
advantage of explicit type declarations (e.g., for intellisense,
refactoring, etc.)?

Amir
The support for Java is light-years ahead. Sometimes I feel that
Eclipse is coding for me (quickfix, for instance). There's the fact
that Eclipse is developed in Java, so they are eating their own
dogfood.

That said, the code completion for Python is still in its early stages.
There is a lot of room for improvement, even for a dynamic language.
Stephen

Dec 1 '06 #8

P: n/a
Stephen Eilert wrote:
>
The support for Java is light-years ahead. Sometimes I feel that
Eclipse is coding for me (quickfix, for instance).
Eclipse may be quite a technical achievement, but I found it
irritating. Aside from the misuse of screen real-estate, I found that
typing two characters and having what seemed like half my source file
underlined in red, with multiple messages telling me that I had yet to
define or import something or other when what I was about to do was to
write the declaration, all conspired to make me want to scream, "WTF do
you think I was going to type in about five seconds time? Work it out
and autocomplete it if you're so damned clever!"

So, Eclipse certainly has its share of detractors, too. ;-)

[...]
That said, the code completion for Python is still in its early stages.
There is a lot of room for improvement, even for a dynamic language.
Agreed. I don't believe in endless refactoring, and I think that's
frequently a symptom of using an overly inflexible statically typed
language (where it's more like "Refactoring" - the big R symbolising
the seriousness and heavy lifting involved), but there are often times
when I've wondered whether something could alert me to obvious
breakage, especially after fairly big changes, acting possibly within
the editing environment. I suppose pylint and similar tools have been
working towards that goal, but I often wonder about producing something
more subtle: something which is more clever than looking at modules and
globals, and yet doesn't nag you continously about things which you'll
discover almost immediately anyway.

Paul

Dec 1 '06 #9

P: n/a
Paul Boddie wrote:
Eclipse may be quite a technical achievement, but I found it
irritating. Aside from the misuse of screen real-estate, I found
that typing two characters and having what seemed like half my
source file underlined in red, with multiple messages telling me
that I had yet to define or import something or other when what I
was about to do was to write the declaration, all conspired to
make me want to scream, "WTF do you think I was going to type in
about five seconds time? Work it out and autocomplete it if you're
so damned clever!"
I had exactly the same experience when trying out Eclipse :D I'll
stick with "good ol' vi".

Regards,
Björn

--
BOFH excuse #227:

Fatal error right in front of screen

Dec 1 '06 #10

P: n/a
hg wrote:
Thomas Ploch wrote:
Yes, thats true, but since eclipse is resource monster (it is still
using java), and some people (like me) don't have a super fresh and new
computer

If you compare eclipse to VS, it is not that memory hungry
And if you compare Saturn to Jupiter, it's not that big.
Yet (I believe that) a complete
IDE can bring functions that an editor, however powerful, cannot
Is there anything _useful_ that it'll bring that a good editor doesn't?
e.g. in vim I do get
* automatic syntax checking (if I type "if a=1:" and hit enter, it'll
immediately highlight the syntax error)
* omni-completion (because Intellisense is trademarked)
* refactoring (with BicycleRepairMan integration)
* folding (which is more important than the above 3 combined, IMO)
* online help (typing cmp( gives me the docstring for cmp in the status
line, F1 to view the whole thing)

As well as all the basics (tags/class browser/good regex support/syntax
highlighting/autoindent/source control integration/etc).

I'm not trolling here, I'm looking for interesting new features I can
steal.

Dec 1 '06 #11

P: n/a
sj*******@yahoo.com wrote:
...

Is there anything _useful_ that it'll bring that a good editor doesn't?
e.g. in vim I do get
* automatic syntax checking (if I type "if a=1:" and hit enter, it'll
immediately highlight the syntax error)
* omni-completion (because Intellisense is trademarked)
* refactoring (with BicycleRepairMan integration)
* folding (which is more important than the above 3 combined, IMO)
* online help (typing cmp( gives me the docstring for cmp in the status
line, F1 to view the whole thing)

As well as all the basics (tags/class browser/good regex support/syntax
highlighting/autoindent/source control integration/etc).

I'm not trolling here, I'm looking for interesting new features I can
steal.
How about we try to find some papers on the subject?

Here's one to start things off:

http://pag.csail.mit.edu/~akiezun/companion.pdf

Amir

Dec 1 '06 #12

P: n/a
Amir Michail wrote:
sj*******@yahoo.com wrote:
...

Is there anything _useful_ that it'll bring that a good editor doesn't?
e.g. in vim I do get
* automatic syntax checking (if I type "if a=1:" and hit enter, it'll
immediately highlight the syntax error)
* omni-completion (because Intellisense is trademarked)
* refactoring (with BicycleRepairMan integration)
* folding (which is more important than the above 3 combined, IMO)
* online help (typing cmp( gives me the docstring for cmp in the status
line, F1 to view the whole thing)

As well as all the basics (tags/class browser/good regex support/syntax
highlighting/autoindent/source control integration/etc).

I'm not trolling here, I'm looking for interesting new features I can
steal.

How about we try to find some papers on the subject?
Thanks. Seems a bit high-level to be very useful, and the plethora of
examples around "self encapsulate field" seem inapplicable, but it
makes me wonder if there's anything to be gained by integrating the vim
refactoring support with the Vim 7 undo branches.

Dec 2 '06 #13

P: n/a
may be emacs can provide code completion (intellicense)
I have not used it so far so can't say.
but the main reason I use eclipse is for the above feature.
and yes indentation happens in eclipse python-mode so that is not a
major feature eclipse offers any way.
syntax highlighting is a very common feature again.
so if there is an editor which will give me auto code completion, I
will happily give up using eclipse.
by the way, there is one problem I am finding with eclipse and py dev.
the following snippad of code is a mesterious problem.
name = raw_input("please identify your self ")
if name == "tom":
print "hello and welcome"
else:
print "I don't know you"

just run this script and you will find that you always get "I don't
know you", even if you entered tom.
I then figured out that length of name actually comes to 4 even when I
entered tom. that's why it always goes in the else claws.
but when I ran the same script from a command promt the length of name
returned 3 when tom was entered and the code worked fine.
I can't understand why is this happening? why is eclipse putting an
extra character in the name variable?
Krishnakant.
Dec 2 '06 #14

P: n/a
Amir Michail wrote:
Hi,

It seems to me that measuring productivity in a programming language
must take into account available tools and libraries.

Eclipse for example provides such an amazing IDE for java that it is no
longer obvious to me that one would be much more productive in python
for medium sized projects.

Sure, all that Java static typing can be painful, but Eclipse takes
some of that pain away. Moreover, static typing can result in better
on-the-fly error detection and refactoring support.

Any thoughts on this?

Amir
FYI: http://showmedo.com/videos/series?name=PyDevEclipseList

hg

Dec 2 '06 #15

P: n/a
Hi,

Here's a blog post that is relevant to this discussion:

http://sixthandredriver.typepad.com/...ted_refac.html

Amir

Dec 2 '06 #16

P: n/a
Amir Michail a écrit :
Hi,

It seems to me that measuring productivity in a programming language
must take into account available tools and libraries.

Eclipse for example provides such an amazing IDE for java that it is no
longer obvious to me that one would be much more productive in python
for medium sized projects.

Sure, all that Java static typing can be painful, but Eclipse takes
some of that pain away. Moreover, static typing can result in better
on-the-fly error detection and refactoring support.

Any thoughts on this?
Yes : Python's productivity does not only comes from dynamic typing.

Dec 12 '06 #17

This discussion thread is closed

Replies have been disabled for this discussion.