Language selection for new projects
Limey Drink
bhicking at bhicking.plus.com
Thu Oct 16 18:47:50 EDT 2003
More information about the Python-list mailing list
Thu Oct 16 18:47:50 EDT 2003
- Previous message (by thread): Language selection for new projects
- Next message (by thread): Language selection for new projects
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Alex, I don't know how you find the time to write such detailed replies :-) but they're very welcome. I have the book Learning Python, I think its an excellent book for learning the core language but I have noticed on the O'reilly website a 2nd Edition being released in December. Has the core of the language changed very significantly from the version covered in the first edition of Learning Python ? By the way, I had no idea of your significance in the Python community, since I have been looking for more information on Python I have noticed your name on various books and websites so I appreciate information from a highly experienced developer like yourself. I am taking the first steps in developing/architecting quite a large project and there are a lot of skills I need to aquire and also technologies to choose for the job, this is not for the benefit of my current employer but for myself :-) so I have alot of time to mess around and play with different technologies and I can also actually enjoy writing the software without silly timescales and sales/marketing types interfering. Would you mind if I email you in the future if I am really stuck witha problem ? looool :-) Thanks again "Alex Martelli" <aleaxit at yahoo.com> wrote in message news:rsGib.211918$hE5.7131319 at news1.tin.it... > Limey Drink wrote: > ... > > Thankyou very much Alex, this is the first time I have attempted to use > > this group for information and I am very pleased with the prompt response. > > > > once again thanks > > You're welcome. > > > > By the way, what do you think to Python with regards to productivity > > benefits in general and also in comparison to other languages ? > > Python, in my experience, is the most productive language over its wide > range of optimal applicability. pyrex, a variant of Python which it might > be still a bit too early to consider fully mature enough for production > use, extends Python's applicability to somewhat "lower levels", in a sense. > > I have seen people with particularly good mathematical mindsets do wonders > with functional programming languages, but I suspect those who'd be more > productive with those than with Python for typical applications would be a > tiny minority of the population. (This remains to be proven, but as a > working hypothesis it seems quite believable). > > If you're after "tinkering" more than "production-level applications", don't > need to consider the issues of group cooperation, or are slowly weaning > yourself from the complexity of perl and don't want the shock of going "cold > turkey" into the simplicity of Python, Ruby may be a good compromise. Perl > itself is too complicated, and other scripting languages (Javascript and > variants, VBScript, bash & variants, PHP, IMHO Tcl too though some Tcl'ers > will disagree, awk, etc) too feeble, to compete for productivity with Ruby > or Python. > > Other languages which, depending on cultural background, available > tools, and problem areas, may be competitive with Python include Lisp > (Common, maybe the lesser-known ISO kind, Arc if it ever matures, Scheme, > ...), Dylan, Smalltalk -- and no doubt others that I haven't had a chance > to try out yet. > > Looking at the kind of languages that currently appear to rule the roost -- > C, C++, Java, C#, Visual (and other kinds of) Basic, Object Pascal, > Fortran, Objective C, Ada, Cobol, Eiffel -- it does not seem to me that any > of them can compete in terms of programmer productivity with the ones > listed above (I do not have sufficient experience with _all_ of them to > make this claim substantially stronger; I do have susbtantial experience > with most, and enough acquaintance with all, to hold this opinion rather > strongly) for application areas suitable for the latter (of course, if I > had to code, e.g., a Linux device driver, I _would_ use C -- that's not > within the application areas suitable for the various languages above). > Once-cool weirdish languages such as snobol, icon, etc, should not really > be considered for normal production use. > > If one had infinite time, trying out all languages in the world would be > instructive (and, for some, fun). In practice, I would suggest to somebody > who wants to become a professional programmer to start with Python > (easiest to learn, yet powerful enough to be a constant companion > thereafter, whatever kind of programming one does); then add a lower-level > language, and I would suggest C because of its huge importance in both > practical open-source tools and existing literature about programming; then > add a mind-expanding one of the functional variety (I would suggest Haskell, > but some ML variant, or Clean, or Erlang, and others yet, might be favoured > by others); then some Scheme or other Lisp again mostly for instructional > purposes (chiefly to be able to study the great book, now freely available > online, known as SICP -- "Structure and Interpretation of Computer > Programs", by Abelson and Sussman). By the time this course of study was > finished, new languages might well have emerged, of course;-). And, also > of course, non-programming languages and non-languages issue should > also be studied -- relational databases and SQL, XML and related > technologies, networking and protocols, GUIs, algorithms and data > structures... (Python helps a lot in playing around with each of these > other important technologies and concepts, btw). > > Somebody who wants to program but doesn't see producing programs as > an end in itself, but just as a means to whatever other ends, might be happy > just with Python (and a little pyrex on the side, perhaps -- but right know > I do not think there are texts to learn pyrex that don't assume you already > know some C) and whatever smattering of other computing technologies > they may happen to need in their application area. > > > Alex >
- Previous message (by thread): Language selection for new projects
- Next message (by thread): Language selection for new projects
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list