Friday, September 21, 2007

September Cambridge Python Podcasts and Slides, Wing IDE 3.0 and Development

(Cambridge Python Interest Group, September Meetup)

Stephan Deibel and John Ehresman, the owners Wingware and developers of Wing IDE, gave a talk on the latest version of Wing and it's Development. Wing IDE is arguably the most advanced python development IDE in existence. The talk consisted of two parts, a detailed demo of the new Wing 3.0, and a very open discussion about running a business and the development of Wing.

The Demo
We were not able to get video of the demo, but if you would like to see the previous version of the software there is a screencast instructional video which I highly recommend. Stephan and John use Wing to develop Wing, and as such are just as hungry for any features which will streamline and take the pain out of development. There were many key features covered in detail during the demo two of which deserve special mention.

1. The Probe Debugger
Wing comes with a debugger which at first looks like every other introspective debugger on the market. What you might overlook is the python shell prompt which has the local context of what ever breakpoint, or stack level you currently have selected. You can inspect, evaluate, and change the values of the selected scope in this shell! clicking up or down the stack will immediately switch the context of the shell. So will moving to the next breakpoint. There was no lag or waiting. Oh, and the shell has auto completion local to it's context.

2. Unit Test Integration
New in 3.0, WingIDE is python unit test aware. you can run tests from the ide with the press of a button. Individual tests failures and output are all integrated. Expanding the test tree, you can see which tests failed and where. You can select a failure, have the code come up, set a breakpoint, and then re-run only that single test failure, and have it come up in the debugger. This combined with the probe debugger will change the way you think about your projects.

Developing Wing
Stephan and John were very open and frank about their experiences starting a company, and developing a product which some people view more as a religion than a tool. In the second half of the talk they discuss the development process, open source, multi-threading verses asynchronous, developing for multiple platforms, and listening to the users.

Podcasts and Slides
I arrived late to the talk, and rushed to get the sound equipment set up. As a result I forgot to turn on the amplifier. I have attempted to boost the gain on the files, but they are still very soft. There is a fair amount of line noise due to this, and many of the audience questions are lost, but Stephan (who was wearing the microphone) can be heard clearly.

(Sorry we do not yet have ogg versions)
  • Cambridge Python Meetup, Sept 19th - Wing IDE 3.0 (mp3, ogg)
  • Cambridge Python Meetup, Sept 19th - Wingware Development (mp3, ogg)
  • Cambridge Python Meetup, Sept 19th - Wingware- Slides (tar, online)

Wednesday, September 19, 2007

Texas Unconference Over, Next DFW Pythoneers Meeting This Saturday

=== Texas Python Unconference ===

For those who didn't make it to Houston last weekend, the first Texas Python Unconference went very well. On Saturday we had at peak 44 attendees and on Sunday 12 attendees. You can see a group photo at:

It was a single track of presentations with roughly 16 talks, a few of which made their slides available at:

There was lots of interesting conversation over lunches and dinners as well as in the breaks. My thanks to the University of Houston for hosting us with a great presentation facility (and generously providing snacks/drinks), Robin Friedrich for event coordination/MC, Josten Ma for getting us into the University and coordinating and the good folks at Enthought for springing for pizza during lunch (if I've overlooked a contribution, my sincere apologies).

I would encourage other regions of Python users to hold their own unconferences, which require much less work that a formal conference. You are welcome to make use of the wiki above - just create a folder off of the root for your region.

=== 4th Saturday Meeting of the DFW Pythoneers ===

This Saturday in Dallas we have our 4th Saturday meeting at, at the usual 2 PM until 5 PM. If there is interest, I can repeat two of my Houston talks; a demonstration of how to program the TuxDroid to talk, wave and dance about, and a code walkthru of a simple program that uses the VPython (visual python) framework to animate simple geometric shapes (a pyramid slowly colliding with a checkerboard while a ball spaceship launches to get away) using OpenGL. Martin Thomas is going to bring his TuxDroid as well so we'll see how to coordinate them over their wireless network using Python.

If you want an early peek or cannot make it this Saturday, you can find the source to the two demos in our club version control system, at:

We'll leave the OpenMoko cellphone GUI and pyMIDI piano trainer for our next meeting. ;-)

I'd also like to suggest folks install the Gobby application on their laptops. Gobby is a peer-to-peer networked, shared text editor and chat program. It is written completely in Python and may be good for collaborative notetaking at future events. A number of us would like to check it out for usability among a group.

It does run under Windows as well as Linux and Mac, although you must install some dependencies outlined in the install notes. It has also been packaged for various operating systems, so for some it will be a simple click install. Be sure to get the latest version as you cannot mix the old and new versions on the network.

Hope to see you this Saturday!


Thursday, September 13, 2007

Announcing Python North-West

On the wave of the great time we had at PyCon UK, it was decided we should have a proper mailing list dedicated to English North-West-based Python users, so here it is!

The list is open to everyone in the North-West of England who loves coding/playing/enjoying Python. Members are not expected to know their django from their pylons or their pyqt from their wxwindows... and certainly they don't need to pronounce WSGI.

See the Python North-West homepage on GoogleGroups for info on subscribing. There is also a "dummy" Facebook group pointing to the list (it would be great to have some sort of gateway between FB and generic mailing lists, I can't believe FB developers didn't think about it). I'd personally be interested in hearing about other groups' experiences with social software of any kind...

Our first meeting is scheduled to happen in the first week of october, with topics still TBD (submissions more than welcome!). We are looking for a suitable venue, which should have decent Wi-Fi (free if possible), refreshments not too far off, and possibly a projector or big screen. Since it's a fairly scattered group, I'd like to look into some sort of "backup" plan for people who cannot be there in person (it's 2007, how hard can it be, right...?)

That's it for now, I'll report more info as soon as we finalize our plans.

Thursday, September 6, 2007

Omaha Python Users Group, Sept 5, Notes

Well we've managed to maintain a new meeting attendance level. There were 6 of us again tonight at the meeting, 5 alumni and 1 new attendee. The meeting started out with some introductions and talk about Py3K alpha. We then turned to talk about the various python implementations C, Iron, Jython and ActiveState's.

Talk then turned to available windowing options and what exactly was built-in for python as opposed to 3rd party libraries. PythonCard is the project I was trying to recall. While not a windowing kit -- it is based on wxPython, it offers a nice entry point in to building a client GUI for a python project for those new to python and GUI kits.

There were some random topics brought up and answered as we munched on some quite good pizza.

We then broke out some code for the pyorhythms group project. We talked about how the imports had been laid out, the over all structure of the program and a number of questions from those new to python were asked. What are those triple commented things (docstrings) how are they used, etc.

We then talked about the use of map statements and what was going to happen to them in Py3K. Someone asked what does reduce do, and I didn't have an answer then as I hadn't used it before, but have one now

"reduce(function, sequence)" returns a single value constructed by calling the binary function function on the first two items of the sequence, then on the result and the next item, and so on. For example, to compute the sum of the numbers 1 through 10:

>>> def add(x,y): return x+y
>>> reduce(add, range(1, 11))

I did a live demonstration of pyorhythms and there was some pleasant smiles and nods at seeing how well pylab graphed everything.

At the end of the meeting we handed out the door prize, "Beautiful Code."

After the meeting some of stuck around and pondered the architecture of the google file system why doesn't google offer a google apps appliance? and the possible ramifications of Grand Central and the rumored google phone.

For those of you who couldn't attend we hope to see you next month (Brad et al)