473,383 Members | 1,815 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,383 software developers and data experts.

Choosing Python

The choice is made. The school where I teach has finally
made its decision to teach Python first. For several years,
we have been teaching Java first, and before that, C++.

I introduced Python in one of my courses and got a lot of
flak from some of the other faculty. I also introduced Ruby,
and got even more flak. In my course, the students loved
Python for its simplicity, its power, and its flexibility.

It is clear that Python is not the ultimate, one-size-fits-all
language. No language is. However, for a beginner's
language it is nearly ideal. Further, it is a great language
for a wide range of serious programming problems.

For large-scale, safety-critical software, I still prefer Eiffel
or Ada. Java could vanish tomorrow and, with Python
and Ruby available, no one would miss Java at all. As for
C++, for any serious software systems, it should always be
the language of last resort. C++, as an object-oriented
assembler, is pretty much its own virus.

Already, students are turning in really good projects in Python,
and some in Ruby. Not all the professors are on-board with
this decision, but in time I think they will be.

Richard Riehle
Mar 19 '07 #1
2 1138

"Dennis Lee Bieber" <wl*****@ix.netcom.comwrote in message
news:q7*****************@newsread4.news.pas.earthl ink.net...
On Mon, 19 Mar 2007 02:21:35 GMT, <ad******@sbcglobal.netdeclaimed the
following in comp.lang.python:
>or Ada. Java could vanish tomorrow and, with Python
and Ruby available, no one would miss Java at all. As for

Except for all those software firms that have based their entire
production on Java <G{Most of which, based on a limited example of
tools at work, tend to be klutzy, idiosyncratic, slow... and for some,
new versions are incompatible with projects created with older ones}
--
Dennis,

The same can be said for those who have chosen other languages
and used them in non-standard ways. COBOL comes to mind.

One of the many things I like about Ada is that it is the same wherever
you use it. Python seems to be that way too. Java started out that way.
It was the intention for Java to be more portable than it is. I have heard
that Java was released before the developers were finished designing it.
That would account for some of the upheaval in the language. I do know
of one set of software systems that has simply stopped working after the
initial release of Java was revised. The appliation was versioned it out
of compliance.

The hype surrounding Java, and the overly optimistic expectations of
C++ are a small sample of good intentions gone awry. The same thing
could happen to Python or Ruby if those who control it are not careful.

Both languages, in my view, could benefit from a model of pre-, post-,
and invariant assertions, but done badly, that could do more harm than
good. So let's hope that Python and Ruby evolve better than C++. For
C++, every new version seems designed to compensate for something
that was wrong with some earlier version.

Richard
Mar 19 '07 #2
ad******@sbcglobal.net wrote:
One of the many things I like about Ada is that it is the same wherever
you use it. Python seems to be that way too. Java started out that way.
It was the intention for Java to be more portable than it is. I have heard
that Java was released before the developers were finished designing it.
That would account for some of the upheaval in the language. I do know
of one set of software systems that has simply stopped working after the
initial release of Java was revised. The appliation was versioned it out
of compliance.
When Python 3.0 comes out, there will be some backwards incompatibility,
but I doubt this will be a huge factor. It might just take some time
before everyone switches to it.
Mar 19 '07 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Carsten Gehling | last post by:
> -----Oprindelig meddelelse----- > Fra: python-list-admin@python.org > På vegne af David McNab > Sendt: 17. juli 2003 01:32 > Til: python-list@python.org > Emne: Re: Choosing the right...
14
by: Lupe | last post by:
I'm convinced to try Python! I've read many posts, and although I recently bought a book on C to start learning it, I'd like to give Python a good chance. What IDE would you recommend for...
42
by: Fred Ma | last post by:
Hello, This is not a troll posting, and I've refrained from asking because I've seen similar threads get all nitter-nattery. But I really want to make a decision on how best to invest my time....
11
by: Jean de Largentaye | last post by:
Hi, I need to parse a subset of C (a header file), and generate some unit tests for the functions listed in it. I thus need to parse the code, then rewrite function calls with wrong parameters....
15
by: Birahim FALL | last post by:
Hi, I'm very fresh to PostgreSQL, coming from Oracle. I want to developp web applications based on apache and postgresql. Is there an equivalent of OWA server (Oracle Web Application server) for...
38
by: ifti_crazy | last post by:
I am VB6 programmer and wants to start new programming language but i am unable to deciced. i have read about Python, Ruby and Visual C++. but i want to go through with GUI based programming...
19
by: hansBKK | last post by:
Upfront disclaimer - I am a relative newbie, just starting out learning about PHP, mostly by researching, installing and playing with different scripts. I am looking for a host that will provide...
28
by: Rico Secada | last post by:
Hi. First let me start by saying, please don't let this become a flame-thing. Second, I need some advice. I am a 35 year old programmer, who program in C/C++, PHP and Bourne Shell almost...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome former...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.