Top 10 reasons for Python
Quoting from a big PowerPoint presentation. Great read! I downloaded the PPT file 2 days ago, and can't remember where in Bruce's site it was originally located. Note the last part about Perl!
Top 10 reasons for programming in Python
10. Reduced Clutter
-
Programs are read more than they are written
-
XP: Consistent formatting really is important
-
Readability and compactness
-
Part of "conservation of complexity"
-
Consistent use of programming idioms improves understandability
-
Rapid understanding
-
The opposite of "more than one way to do it"
9. It's not backward-compatible in exchange for pain
- C++: Backward compatible with C - its strength and its bane
- Java: more or less with C++ syntax (not too bad,but a lot of typing)
- Perl: compatible with every hacky syntax of every Unix tool ever invented
- C# and .NET: backward compatible with previous Microsoft marketing campaigns
- Javascript: not even compatible with itself
8. It doesn't value performance over my productivity
- C++: can't let go of C performance
- Better than C, sure, but still takes forever to get something working; memory leaks are almost impossible to design out
- Java: Primitive types require awkward coding (primitives "necessary" for speed)
- As opposed to Python: everything is an object; escape mechanism (extension) for speed
7. It doesn't treat me like I'm stupid
- "Operator overloading is bad because you can make ugly code with it"
- "finalize( ) does something"
- "We reviewed Java designs before putting them into the language"
- "Java has an open development process"
6. I don't wait forever for a full implementation of the language
- Some features we invented in the C++ committee are still not implemented
- Unused features don't get tested; circular problem
- Many C++ vendors say "it's hard, andno one's asking for it."
5. It doesn't make assumptions about how we discover errors
- Is strong static type checking really the only way to be sure?
- Lack of good static typing in pre-ANSI C was certainly heaps of trouble
- Doesn't mean it's the best solution
- Errors discovered with real data seem to me to be the hardest to find
4. Marketing people are not involved
- "Java is flawless"
- Microsoft "Visual" "C++" - Microsoft happens
- Of course, Python isn't immune
3. I don't have to type so much
- … And I don't have to wade through so much code when I'm reading
- Conservation of complexity:simplicity really does make a difference
- But the right typing
- Not obscure like APL
- Not endlessly inventive like Perl or FORTH
2. My guesses are usually right
- I still have to look up how to open a file every time I do it in Java
- In fact, most things in Java require me to look something up
- I can remember many Python idioms because they're simpler
- One more reason I program faster
1. Python lets me focus on concepts
- No stumbling through Java designs, fighting with C++ compilations or run-time bugs.
About Perl
- Python is executable pseudocode. Perl is executable line noise.
- Perl is like vice grips. You can do anything with it, and it's the wrong tool for every job - Leaves teeth marks everywhere
- Perl is worse than Python because people wanted it worse. Larry Wall, 14 Oct 1998
- I would actively encourage my competition to use Perl. Sean True, 30 Mar 1999
Since you are seeing this, it means that your browser does not
support cascading style sheets. Please download and use one
of the many browsers that support web standards.