Python

  1. Home
  2. Computing & Technology
  3. Python

Beginning Python

Beginning Python is currently the best book for the beginning programmer. If you learn better from a book than a screen, this is the best place to start.

Learn Python Your Way

Al's Python Blog

EuroPython 2009: 28th June to 4th July 2009

Wednesday January 14, 2009
This year's EuroPython will be hosted by the PyCon UK Society and will take place in Birmingham City Centre from the 28th June to 3rd July 2009. It will thus replace PyCon UK. The Call for Papers has been released, and you can find out more about the conference on the official website. Confirmed keynote speakers include Professor Sir Tony Hoare, Cory Doctrow, and Jim Hugunin. Note, however, that the conference is run by volunteers and relies on the Python community for its presentations. You can get an idea of the kind of presentations to expect from last year's programme.

The 25 Most Dangerous Programming Errors

Tuesday January 13, 2009
The SANS Institute recently published its list of the 25 most dangerous errors in programming. The errors fall into three categories: Insecure Interaction Between Components, Risky Resource Management, and Porous Defenses. By and large, most of these are reflected or assumed in "Programming Secure Web Applications in Python". Some additions that are worth noting are:
  • Use of a Broken or Risky Cryptographic Algorithm: Just because someone else relies on twenty-year old cryptography does not mean that you should.
  • Client-Side Enforcement of Server-Side Security: Expect someone either to try to disassemble your application or to create their own version, minus your security checks.
  • Use of Insufficiently Random Values: Anything less than 256 bits for the seed of your pseudo-random number generator (PNRG) and you are treading on thin ice.
  • Hard-Coded Password: Leaving real passwords in place after proving the code is easy enough to do. Far better is to start off coding toward remote acquisition of the password, either from a separate file or another network location. This gives you control over the login information even if the program itself is cracked open.
The entire 25 are worth reading. They are, however, a challenge to keep in mind when coding. For this reason, I default to a shortlist of the most salient ones. From XSS to avoiding injections to bad authentication, you can find the core web security issues in the programming guide to web application security.

Increased Use of Iterators in 3.0

Friday January 9, 2009
In addition to changes in print syntax and increased use of views, Python 3.0 also sees an increased underlying use of iterators. Many built-in functions that previously returned lists now return iterators.

An iterator is a simple generator that returns the next in a series of values. Where lists keep a static rota of values, iterators keep track of what the last value returned was and then return the next value in the series. This helps to keep resources used to a minimum, among other benefits.

For a list of the functions affected, see "From Lists and Tuples to Iterators", the latest in the series "Transitioning from 2.x to 3.0".

Python Desktop Projects

Wednesday January 7, 2009
Once you learn Python from one of the various tutorials on this site - step-by-step, "Hello, World!", or "Merry Christmas!" - you will doubtless want to learn more and apply Python to more productive tasks. To complement the recent list of web-oriented projects that you can do, you can also learn more desktop programming with the following guides:

Discuss

Community Forum

Explore Python

More from About.com

Python

  1. Home
  2. Computing & Technology
  3. Python

©2009 About.com, a part of The New York Times Company.

All rights reserved.