Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Programming IT Technology

Computer Programming for Everybody Using Python 20

Ursus Maximus writes "Python City, formerly known as the Python Liberation Front, is an attempt to further Guido van Rossum's dream of making computer programming accessible to any intelligent person. Featuring more than 20 detailed reviews of programming books,presented from a newbie's point of view, as well as links to 14 tutorials for learning Python, the site is a good starting point for folks interested in scripting. In addition, you will find an online interactive script for Choosing Your Own Programming Language, based on one's own preferences, expectations, and priorities, While the script is written in JavaScript, there are no apologies for any perceived bias towards Python ;-)))). You will also find several interesting and fun GPL'ed scripts such as askMerlin, an online, artificially intellgent Oracle; DecisionAnalysis, to help you make up your mind; and myGale, a webcrawler to routinely collect all online articles about Python. Add in a dash of Monty Python humor and newbies will find learning Python to be not only painless but indeed, fun!"
This discussion has been archived. No new comments can be posted.

Computer Programming for Everybody Using Python

Comments Filter:
  • by Anonymous Coward
    Cool site, but be sure to skip the rant under the first link titled "Farnham's Freehold". I sure wish I had. The sci-fi novel was too good to be trivalized in this manner.

    The choose your language script is fun, but hopelessly biased towards Python. For anyone interested in learning Python, though, the links to so many tutorials and book reviews could be priceless.

    I gotta admit, Python is a retty good language; as easy to learn as any I've ever found, yet powerful.
  • Where is Perl?!? (Score:2, Interesting)

    by Jehlon ( 467577 )
    ==> http://www.awaretek.com/atesterea.html

    Alright, so Perl is a language there, and gets a score, but for all my trying, I can't get it to be the number one language for me, what gives?

    Other than that, this is useful information, a good site.
    • If you put 1's in just one section and put 0's in all the rest you can see how man points each language has per percent you give it. Anyways, the reason you can't get perl to be top is because according to his figures. Python beats perl is everything except speed and popularity (may be true, may not) and c/c++ stomps both in those sections and you can get perl to have a higher score than python or c++ but not both at the same time. He needs other indicators obviously, ability to run non compiled code with speed might be a good one :) Anyways its actually heavily biased towards C/C++ with C/C++ getting top scores for everything excaept ease of lerning (gettering vy low score, which I don't agree with) and each of use (getting moderate score).
  • by freebsd guy ( 543937 ) on Saturday December 29, 2001 @02:12AM (#2761578)
    About a year ago, I was sentenced to do community service to get a nasty DUI conviction expunged, so (as a computer geek) I chose to help educate youngsters at the local middle school's computer lab. Although their existing course taught them Qbasic, I convinced the instructor (really, just the librarian) to pursue open source alternatives to the proprietary Microsoft-controlled language. I had recommended Perl but we agreed that Python was easier to learn and would be of greater use to the young'uns.

    The results were quite simply amazing: some of the more precocious students were writing GTK applications by the end of the semester. The slower students stuck to the prescribed assignments (the usual checkbook balancing software and such) - yet nobody had any serious problems learning the language because it was very intuitive. At the end of the course, we had the students design and implement a piece of software on a written exam, and I am pleased to say that nobody produced less than C-grade work.

    freebsd guy

  • selecting the maximum for all the questions, yields
    python as the language for you. selecting the *minumum* also return python.

    How can python be on both extremes of language criteria?
    something is flawed here.
    • Considering that it is a Python site, they obviously consider Python to be the best language, therefor, all things being equal, Python is the language for you.
    • And if you put in all 0's, Lisp is the best. Apparently it's good for those who don't want anything to do with programming.

      Also, there is a combination of settings that will mean Visual Basic wins, although Python and C are the only ones that are "best in their category".
  • by Anonymous Coward
    After using Python for a while, it became eminently clear to me that it's essentially a write-only language. It's very easy to write programs in it because of its highly unsafe type system, etc. It's like human speech--highly ambiguous, which makes it very useful. The problem is, reading or analyzing programs in it for later maintenance is practically impossible. What type does this function return again? Oh, it depends? On what? Oh, the code? Grmph.
  • Many times, my friends in college will ask me for help on their programming projects, which are all done in C++ or Java. They miss the concept behind many structures and techniques, because they spend much of their time on syntax problems. I think Python would be a great language to teach college freshman as an introductory course to programming. Python is lighter on the syntax, which gives students a greater focus on the concepts behind programming. Then later in their college career, they could move into C++ having already learned the concepts of programming.

    Not only would it be much easier for students to move into C++ after having learned Python, but students would also be able to easily move into any language such as Java, etc. And just for the record, I find it much easier, funner, and faster to program using Jython than Java itself ;)
    • I agree. One of the beauties of the Pythhon language is that it allows students to see the core principles behind so many key programming concepts, which are sometiems obscure in their minds by worryiing about more difficult syntax. In fact, when asked in an interview recently, what was the single achievement of the Python langauge he was most proud about, Guido van Rossum, the originator of Python, said that it was Python's success as an educational tool for teaching computer science, that he was most proud of. Add to that Python's power and elegance for real world programming and it is quite a tool. After all, whoeever said that the syntax of programming languages *must* be hard? Why not program in Python?
  • The article, erm .. the FAQ, or better the interview, claimed that there is only one VM using stack oriented code, the JVM.

    Unfortunatly nearly all VMs used stack oriented code, e.g. SmallTalk, UCSD Pascal, LISP.

    So the Parrot VM and the new Internet C++ (discussed on /. forgot the exact name) are the only VMs using register based code.

    He he, the article referes to the 68k emulator in PPC.
    And it claimes that register based VMs can interprete bytecode faster than stack based VMs.

    In principle thats true. Over ten years ago I wrote two interpreters. Both basicly only could evaluate expresions like a + b * c, and so on.
    I invented a stack based assembler and a register based assembler. Then I wrote an interpreter for each. The register language was interpreted about 30% to 50% faster than the stack based language.

    BTW: I used UCSD Pascal, a stack based VM, on an Apple ][.

    However meanwhile I discovered some tricks how stack based operations are equaly fast, or if you take into account the opcode size of register based code versus stack based code (the name byte code comes from the fact that stack based code often only needs one byte per operation) and the memory accesses for that I think both concepts are equaly fast.

    The real problem comes when the code is compiled to native code. Then the mapping between virtual registers and hardware register is often more intuitive than the mapping of stack positions to hardware registers.

    However, for both the community of compiler crafters has well understood approaches.

    Unfotunatly the language designers, cough cough, tend to ignore academic knowledge ... wasn't that pointed out in that meeting about "lightweight languages" at MIT, reffered under Developers at /. ?

    angel'o'sphere

I have hardly ever known a mathematician who was capable of reasoning. -- Plato

Working...