Python Programming, news on the Voidspace Python Projects and all things techie.

London Geek Knight on IronPython

emoticon:python The London Geek Knights hold regular geek meetings on a range of subjects in the London Thoughtworks offices. They're open to all, and on 24th July I'll be presenting on IronPython and Silverlight.

According to the upcoming page, I will be will be giving a talk about how to bring IronPython and Silverlight together in a marriage of awesomeness.

See you there at 6pm on the 24th. Smile

Like this post? Digg it or it.

Posted by Fuzzyman on 2008-05-29 21:31:03 | |

Categories: , Tags: ,

Python Magazine: Reading Configuration Files with ConfigObj

emoticon:waffle The May edition of the Python Magazine is out; and technically it's still May so that counts I guess. The major articles are:

  • Handling Configuration Files with ConfigObj
  • LDAP backed initScripts in Python
  • Learning Python with PyGame: The Simplest Thing that Can Possibly Work
  • Writing a Simple Interpreter/Compiler with Pyparsing
May issue of the extraordinarily singular Python magazine

Both the PyGame and and Pyparsing articles look interesting (I'd love to write a compiler sometime - it's on my list but I might settle for working on PyPy once my book is finished), but of course the most interesting one is the article on ConfigObj - mainly because I wrote it.

As the article explains, ConfigObj is a wonderful module. It makes easy things simple but has some very advanced features. One of its more advanced features is the validation system that allows you to provide default values for your config files and convert all the members into the type you expect them to be.

Whilst the documentation for this feature is complete (unlike many programmers I quite like writing documentation), it is split across two modules: ConfigObj and validate. The Python Magazine article is probably now the most comprehensive introduction to this ConfigObj feature!

Like this post? Digg it or it.

Posted by Fuzzyman on 2008-05-29 21:25:22 | |

Categories: , Tags: ,

PyCon UK: The Preparations Advance

emoticon:mobile PyCon UK is on 12th-14th September in Birmingham. This year I'm part of the planning committee, and the preparations are making good progress.

This will be the second PyCon UK conference. The first was a great success, with around 250 people attending (about 100 more than expected). This year we're expecting even more!

This year we will be doing several new things. The conference will start with a day of tutorials. We have several good tutorial proposals submitted already:

Each tutorial is a half day session, except for 'Beginning Python' which will be a whole day (although possibly packaged in two sessions).

There are possibly more I don't know about, and we're still looking for more proposals. Smile

We will also have sprints after the conference. We're trying to arrange the sprints now, and they'll be a great opportunity to learn about and contribute to some popular Python frameworks and applications (and possibly to Python itself). We also hope to have at least one sprinting tutorial on the tutorial day to provide a gentle introduction.

The call for talks has already gone out, and it's a nice friendly audience so submit your talk proposals soon!

Unfortunately I won't be at EuroPython this year. I was really hoping to go (I've never been yet), but I'm not committing to anything else until the book is finished! Next year I won't have any conflict as PyCon UK will be hosting EuroPython (which is kind of a shame as I'd love to go to Vilnius).

Like this post? Digg it or it.

Posted by Fuzzyman on 2008-05-25 14:58:44 | |

Categories: , Tags: , ,

IronPython in Action: Silverlight Chapter Finished

emoticon:bluetooth I've finally finished the Silverlight chapter of IronPython in Action. When I started writing this chapter I thought it would be done quickly as I new the material I wanted to cover. Rather than just go over material that I have already written though, I decided to write a small application to illustrate Silverlight. I ended up writing a Silverlight Twitter client, and writing it up took a bit longer than I anticipated!

The (unedited) table of contents for the chapter is:

  1. Silverlight: IronPython in the Browser

13.1. Introduction to Silverlight

13.1.1. Silverlight the Browser Plugin
13.1.2. Dynamic Silverlight
13.1.3. Your Python Application
13.1.4. Silverlight Controls
13.1.5. Packaging a Silverlight Application

13.2. A Silverlight Twitter Client

13.2.1. Cross Domain Policies
13.2.2. Debugging Silverlight Applications
13.2.3. The User Interface and a Password TextBox
13.2.4. Accessing Network Resources
13.2.5. Threading and Dispatching onto the UI Thread
13.2.6. IsolatedStorage in the Browser

13.3. The Silverlight APIs

13.3.1. The MediaElement Video Player
13.3.2. Interacting with the Browser DOM

13.4. Summary

I really enjoyed writing this chapter, and played with some new things including the VideoBrush. Although it is only thirty pages I think this chapter achieves its goal of being a good introduction to programming with Silverlight.

Silverlight is still in beta, and still has a few quirks to be ironed out. The latest one I've found is that the MediaElement doesn't raise the MediaEnded event (on Safari on the Mac anyway) when it reaches the end of a video. As the MediaElement doesn't have a 'loop' setting, you need this in order to make videos auto-repeat. You can work around this by monitoring the CurrentStateChanged event instead. Overall though programming Silverlight is a great experience, being able to script the browser with Python is really fun.

The next chapter is on extending IronPython with C# and VB.NET. This is basically writing class libraries of objects in C# that behave dynamically (like true Python objects) when used from IronPython. After that it is on to embedding the IronPython engine (and other DLR languages like IronRuby) in .NET applications. I'm particularly looking forward to writing these chapters, all the more so because these are the final two chapters. Smile

Like this post? Digg it or it.

Posted by Fuzzyman on 2008-05-25 14:24:25 | |

Categories: , , Tags: ,

Hosted by Webfaction