Skip to main content

Talks at PyCon that Teach How to Be Better Programmers

I've been looking over the mix of talk proposals we have so far for PyCon 2007. We're got 17 so far, with a good number of case histories. Now case histories are good, don't get me wrong, we want Python to be successful and it is interesting to hear how it is being used. But according to the feedback forms from last year, we need more talks that actually teach you how to be better programmers, especially if we want to bring new talent into the community.

Where are the talks about how to best use select features of the language, that demonstrate how to use some of the more powerful design patterns in Python? Python 2.4 and 2.5 have added significant new capabilities to the language and we need the advance scouts to help some of us just now discovering them. Many of us do not adopt new features as soon as they appear.

Often at PyCon we have looked to people like Alex Martelli to get down and dirty with aspects of the language, but unfortunately he is unable to make it in 2007. Who else is good at explaining how and when to apply language constructs?

Not sure where to start? For brainstorming here are four talks I've not seen at recent PyCons and that I think would be well received.

How to Optimize Your Python Programs?
  • optimization - speed or memory?
  • common mistakes
    • use of repeated append on strings
    • not using PyNum when doing array operations
      • such as graphics, sound
    • close your handles, release your objects where possible
    • what slows Python down?
      • looping?
      • function calls?
    • methods to speed things up
      • pre-binding
      • push looping into C extensions
      • code in C extensions releases global lock and speeds up execution on multicores
      • shrinking your memory footprint
Key Python Technologies You Should Know
The idea of this talk is to highlight some of the cross-domain technologies that a programmer would find useful in his toolbelt as he moves among problems or job positions.
  • criteria for inclusion in talk:
    • cross-platform
    • cross-domain
    • of general use, not obscure or a niche
  • docutils, reST docstrings, READMEs, page templates, wiki markup, doctests)
  • interfaces/adapters
  • eggs
  • unit test frameworks
  • DB-API?
Taking Your Programming Environment to a New Level
What do skilled Python programmers keep around them that makes them better programmers?
  • pymacs, pyvim
  • pylint
  • ipython and other command shells
  • brief walk-thru of GUI IDEs
  • keeping docs at your fingertips
  • books to keep at your side
(this talk could be run as a panel among experts)

What the Heck Does "Pythonic Programming Style" Mean Anyway?
The term is often tossed at someone on the list, but what the heck
are they talking about? How can a newbie learn the style?
  • common idioms you see in source code
  • attributes versus getters/setters
  • package dir layouts
    • import all in __init__?
    • fully name-qualify all imports?

I've included links to the wiki pages holding the outlines in hopes that people will suggest additional topics to cover.

To give a talk, visit the conference proposals page.

Jeff Rush
PyCon 2007 Co-Chair

Comments

Arthur said…
A how-to presentation on ctypes would be swell. Ctypes is new in the standard distor, seems powerful and important but is accessible only to the initiated. Assume a competent Python programmer with little C experience, and get them started.
Would be nice.

Popular posts from this blog

PyCon 2018 Call for Proposals is Open!

It’s here! PyCon 2018’s Call for Proposals has officially opened for talks, tutorials, posters, and education summit presentations. PyCon is made by you, so we need you to share what you’re working on, how you’re working on it, what you’ve learned, what you’re learning, and so much more.

Before we dive in, the deadlines:
Tutorial proposals are due November 24, 2017.Talk, Poster, and Education Summit proposals are due January 3, 2018.Who should write a proposal? Everyone!

If you’re reading this post, you should write a proposal. PyCon is about uniting and building the Python community, and we won’t advance as an open community if we’re not open with each other about what we’ve learned throughout our time in it. It isn’t about being the smartest one in the room, so we don’t just pick all of the expert talks. It’s about helping everyone move together. “A rising tide lifts all boats,” if you will.

We need beginner, intermediate, and advanced proposals on all sorts of topics. We also need b…

PyCon 2018 Launches New Site, Sponsorship Search

After two great years in Portland, PyCon is shipping off to Cleveland for the 2018 and 2019 renditions of the Python community's largest gathering. PyCon 2018 will take place May 9 through 17 with two days of tutorials, three days of talks, and four days of development sprints.

For more information, check out our newly refreshed website at https://us.pycon.org/2018/ and follow us here on the blog and at @pycon on Twitter.

New Website

The new site features a design centered on the historic landmark Terminal Tower, a 52 story skyscraper that overlooks downtown Cleveland. When it opened in 1930, the tower was the fourth tallest building in the world and the tallest building outside of New York City. Though its height no longer tops the charts, the tower and surrounding Tower City area remain highly important to the city. What once was a beacon to guide ship captains to Cleveland's port and airplane pilots to its airport, the tower now includes 508 LEDs that light up for the holida…

How to get ready for the PyCon development sprints

[A guest post by Kushal Das, one of the 2016 Sprint Coordinators]So — you have already decided to join in the PyCon development sprints! The sprints run for four days, from Thursday to Sunday after the conference. You do not have to be registered for the conference to attend the sprints! Some teams plan to write code over all four days, while some projects plan a shorter sprint if the organizers cannot stay for all four days.Can you start getting prepared for the sprint ahead of time? Yes!There are several things you can do ahead of time, that can save effort once you arrive at the sprints — and some preparations can even be made at home, before you arrive at PyCon:Have your operating system updated and patched — whether Mac, Windows, or Linux. This eliminates one possible source of problems with getting software up and running.Go ahead and install the version control system that will be used by the projects you are interested in. If you install both git and Mercurial on your computer…