Newsletter sign-up
View all newsletters

Enterprise Java Newsletter
Stay up to date on the latest tutorials and Java community news posted on JavaWorld

Sponsored Links

Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs

The dark side of the beloved Python

The schism between Python 2.x and 3.x troubles developers

  • Print
  • Feedback

Python, the popular dynamic language, offers conciseness and a strong community. But it is dogged by the transition from the 2.x family to the 3.x line.

The language shows up as one of the most popular languages on the GitHub code-sharing site, accounting for 8 percent of code on the site and trailing only JavaScript, Ruby, and Java. But not all is rosy in the Python realm. After four years, programmers still are navigating a difficult transition from the 2.x to the 3.x version of the language because the 2.x version has been maintained in parallel, giving developers a reason to put off a migration to 3.x.

Developers using the language cite benefits in ramp-up time and library support. "Python's just a clear, concise, and productive language. That's it, really," says Jeff Zellner, a developer at Olark, which offers a chat service that uses Python. The language, he says, "just rocks" at simplicity. Python also offers a lot of open source libraries, notes Noah Seger, a developer at the Texas Tribune news organization.

Mobile applications also present a new opportunity for Python developers, who are increasingly turning to Web development -- Python's forte -- for mobile apps. "More and more, people are starting to realize there's not as much sense in building native apps as we once thought," because devices are getting faster, says Allan Hart, an application developer at commercial real estate firm Bently Holdings who comes from an Apple iOS and Objective-C background. "Using Python to write the back end for our client apps has been a pleasure."

More about Python

Learn more about what's driving developers to adopt Python: Start with an overview of dynamic versus statically typed languages, find out how Python compares to Java on scalability, performance, and productivity, and read all about why Netflix switched to Python for specific enterprise tasks. Get the JavaWorld Enterprise Java newsletter delivered to your inbox.

Everyone agrees: Python is easy to use
"Python's a lot easier to use and you can focus more on actually writing programs" than on worrying about syntax, says Rachel Hathaway, a developer at the Barkley advertising firm. She writes mostly in PHP these days but nonetheless remains a Python fan. Bently Holdings' Hart is new to Python but loves its simplicity: "I've been picking it up quickly, and that's what I like a lot about Python."

"I like interpreted languages better than compiled languages because I can mess with it in the console," Hathaway adds. "I don't have to run the program every time and watch for errors in that way. It's a lot easier to debug." Another programmer, who lists Python as probably the eighth or ninth language he has used, also cites ease-of-use. "Syntactically, I like it. It's much easier to work with," said Jeff Triplett, a developer at software development and IT services firm Revolution Systems.

"Python has an ethos, starting with the Zen of Python [which features guidelines for Python's design] that is all focused on code [being] read more than it is written," said Erik LaBianca, CTO at health care decision support company Wiser Together and a self-described "Perl refugee."


  • Print
  • Feedback