Should I learn Python or Java?

Alan Gauld alan.gauld at gssec.bt.co.uk
Wed Jan 10 10:00:21 EST 2001


Charlotte Williams wrote:
>     I am a Visual Basic programmer who wants to increase his knowledge of
> programming languages.  

> I notice that there is a lot of demand for Java programmers.  The only
> experience I have with an OO language is Smalltalk.   My questions are:

> 1.  Which language would be best to learn, Java or Python.  From a VB
> standpoint, which has the least learning curve?

Given the above the answer must be Python.
Python allows you something like the smalltalk workspace for
trying 
out object methods etc on the fly(the interactive prompt/IDLE)
and 
doesn't have the rigid typechecking etc that Java has. Strict
typing 
of variabvles is the biggest shock you are likely to find using
Java, 
not the OO aspects!

Python is also more efficient in terms of the number of lines of
code 
to do a given task(around half as many IME) compared to Java (and
even 
less than VB for non GUI work).

[ On the other hand there are several good Java IDEs which are
more 
  like VB for GUI programming.]

But overall, and especially from the language perspective Python
is 
a much better bet. but if you look at it from an employment view
I'd 
have to say Java...

> 2.  Is going from object-based to object-oriented programming that huge a
> jump?   

Yes. The whjole thinking about OO projects changes when you have 
real polymorphism and ingheritance available. This changes the 
way you ddesign and build applications considerably. Don't 
underestimate the jump but OTOH its certainly not impossible 
and if you have done much smalltalk  then you may already be 
using VB in an OO way as far as is possible.

> 3. Which one is the most "fun" to program in?

Python - its just so much faster to get something working and 
then evolve it as far as you need to go.

> 4.  Is Python multi-platform?  

Yes, more so than Java I suspect.

> How is it's performance compared to JAVA in an internet situation?  

Not quite sure what you mean by the last bit but its at least 
as fast as the Microsoft JVM. I believe the new JIT compilers
(hotspot etc ) might give Java a lead here.

> It's reliability?
If you write good programs they are as good as each other
(see another current thread!)

> 5.  Do you for see Python as becoming a major player like 
> Java servlets and MTS?  Can you see Python demand 
> outstripping Java demand in 2 years time?

Unfortunately not. Python is growing and there are certainly 
jobs around but Java is HUGE just now.

> I'm really interested in hearing from VB programmers that decided to jump
> into one or both of the languages,  

I came to Python from C++/Delphi/Smalltalk and Java with a 
smattering of VB5(CCE).

Alan G.
-- 
=================================================
This post represents the views of the author 
and does not necessarily accurately represent 
the views of BT.



More information about the Python-list mailing list