Reflections on PyCon UK 2007

Now the dust has settled I thought I would just say a few words about my experience of PyCon UK, my first conference where I have been involved in helping out with the organisation and running on the day(out of only 4 conferences I have ever gone to) .

Firstly, overall I think this was an excellent conference, the number and range of talks was amazing and it all ran pretty smoothly. With the exception of the comedy take away dinner at the pub on the Friday night (Zeth still hasn’t recovered from the stress of that I think) I was only aware of one other problem: No one was available to chair the last session in the room I was just vacating. (I did the intro and left them to it as I had to do some other stuff but it seemed to go ok and it was lunch after that. )

I looked through the feedback forms as we were sorting them out at the end of the conference and I did not see any major criticisms of the conference as a whole.

This is a remarkable achievement due in no small part of the work of the committee (of which I was not a part in case you think I am being immodest). The drive and commitment over several months paid dividends and though all the committee played their parts special thanks must go to Zeth and John for being the drivers and enablers for the conference.

I had a great time and enjoyed all the set up and chairing sessions (well I like the sound of my own voice). However it was really tiring and on Monday at work I was fit for nothing. Next time I will definitely book the Monday off to recover.

It does make a difference to how you perceive a conference if you are involved in the running of it. Seeing 200 people milling about and knowing you’re are helping them have a good conference is a great feeling. One thing I found was that when I wasn’t session chairing I didn’t actually want to go to any other talks I would rather chill out a bit and take stock. ( Well that and do some live blogging.) However cunningly I had chosen to chair sessions where at least one of the topics was something of interest to me. I wonder if I can get away with that next time.

This was also the first conference where I had been able to attend the social events and that was great fun and definitely something I will try and do at future conferences.

I would recommend anyone thinking of helping out at a community driven conference to give it a go. It’s hard but very rewarding work.

PyCon UK 2007 Day 2 Part 2

[References added 18th September]

OK a little behind with the updates but as I am now officially on holiday from work I should get this all ship shape in the next couple of days. On with the rest of day 2.

A Pythonista’s Year at Kew

Julius Welby gave us an hour long talk on his experiences of using python at Kew Gardens to clean up the 1.7 Million data entries in the International Plant Name Index (IPNI). Why did the data need cleaning? Well a lot of the entries in the database go back to hand written lines in a ledger 100 years ago which have then been typed, ocr scanned and then copied to other formats like CD Rom. So there is a lot of scope for error. Especially when a lot of the references to other works are in roman numerals. How well will OCR cope with a smudged “iv” or that a clear “lv”?

Now the topic of data cleaning is on the face of it an important but rather dull task, however Julius imbued the whole undertaking with great enthusiasm and had everyone in the audience intrigued as to the approach he took. As he said at the end of about 55 minutes “I’ll inhale now and you can ask some questions”. He was a really dynamic speaker and clearly there was much more to learn about what he had done. He did not have time to show some of the specific techniques in python he used as he was talking about the general issues of data cleaning so it was of less importance. Even so I’m sure there would be interest in seeing some of the specifics. (Next time maybe).

Jackfield, the Web and Python

Stuart Langridge of LUG Radio fame gave a half hour talk about the Jackfield project he has been working on. In essence this a method of having widgets such as those for Apple Macs or Opera run “natively” on a Linux desktop.

In his entertaining and insightful way Stuart showed how he felt there was a perception that web stuff was really cool and desktop stuff a bit dull. Jackfield was in a sense the way to bring thousands of web applications to the Linux desktop so as to keep it “in the game”.

Interestingly Stuart explained how there was 642 lines of python in Jackfield that “just work” and 357 lines of javascript that are the bit that need work and revolve mostly around making firefox (gecko) rendering behave like the khtml based safari. This showed again the power and simplicity of python.

This was a talk I was very much looking forward to and it did not disappoint. Stuart is a very entertaining speaker who gets across some interesting points.

Python in Higher Education

This was a talk by Nick Efford and Tony Jenkins about their experiences of using python as a first language for undergraduates at the University of Leeds. It started with an interesting picture showing two mountains and asking which was harder to climb. One was the Matterhorn the other was Everest. The point was that to someone unskilled in climbing they both look daunting but to an expert the Matterhorn is probably the slightly easier. This analogy was then extended to programming languages. C and C++ had been the mainstay at Leeds but then Java came along and seemingly offered a much easier option. Sadly though for the beginner this was still the difference between the Matterhorn and Everest.

Python however because of its interpreter, clean syntax and great libraries was actually much more of a foot hill to begin with. Nick and Tony explained how they could now use a single language for areas such as natural language processing or distributed computing by the use of popular and well supported libraries for python. So when students moved to new topics the underlying concepts and structures of the language they were to use were already under their belt.

They also showed some examples of the short term projects that the undergrads did in their first semester and the results were excellent ranging from crazy golf with semi-real physics engines to applications involving networking, http and SQL.

It was great to see that python is becoming a language of choice for computer science students and Nick and Tony have been looking at its use in local secondary schools as well.

Keynote – Laura Creighton

I had seen Laura around the conference and heard her contributions to a few talks and discussions from the floor without realising she was to give this key note.

Laura was heavily involved in campaigning at the European Union Parliament to ensure software patents were not made enforcible in the EU. Her talk was about the approach she needed to take to make this happen. In related topics she covered the problems caused by engineering becoming more about maths than actually doing things and trying things and also how the population as a whole was becoming less and less “creative” in the sense of actually making things. (She excluded writers in this so my blog doesn’t count as creative).

A key point was that the decision makers i.e. European politicians were unskilled at creating software and unaware that they were unskilled in it. (Something found as a general psychological principle by Kruger and Dunning ). To this end they thought that writing software was not a creative task and so would not be stifled by patents on just software ideas that did not actually give away any secrets ( the usual “price” or quid pro quo of a patent ) in return for the monopoly the patent gave.

The masterstroke of her campaign seems to have been showing the aides to the politicians how software is actually written by allowing them to sit in on the process as she and her campaigners developed things to help overcome the problems the EU politicians were having with their various proprietary IT systems. ( Especially those from Microsoft).

Laura is clearly one of those people who has both left and right brains heavily in use and you could almost see the ideas fighting to get out as she gave her talk and recognised more connections to other themes she wanted to address us on.

I was almost out of breath at the end of the 90 minutes or so that she spoke. I hope there is a good audio recording of this as it is definitely something you need to listen to more than once to get full value from it.

Bits and Pieces

I didn’t catch many of the lightning talks but the few I did were entertaining and wide ranging including the use of python to help surgeons examine CT and MRI scans to allow better placement of radioactive seeds in the prostate of men with prostate cancer. Not something I expected to hear at a python conference I must admit.

There was a quick 20 minute AGM where the main committee were re-elected unopposed and the partial accounts were shown. Critically the decision was taken to have Pycon UK 2008 at the same venue and over 3 days on the 12th to 14th September 2008. (The Friday 12th will be for all day tutorials ).

There was a raffle with some cool prizes and a prize for the best lightning talk (which I had missed). In general there was much thanking and clapping as an excellent conference drew to a close.

PyConUK 2007 Day 2 Part 1

[References added 18th September]

No longer live from the conference here is the first part of day 2. Again it needs referencing up and I will try and get this done by the end of the week. (Honest. I will. No really.)

Introduction to Functional Programming in Python

After a hearty and lively conference dinner on the Saturday night it was gratifying to see a good turn out at 09:00 on the Sunday for this talk by David Jones of Ravenbrook (One of the sponsors of the conference).

In a half-hour slot David gave a good comparison of the functional and the imperative (object orientated) approach and looked at the built in support that python has for the functional approach. He had a lucid and expressive style and obviously had a good command of the subject.

What was interesting was the way that caching can be used for pre-calculated results. The example he used was the classic Fibonacci series calculator using recursion. Without caching, fib(30) took a second of compute time, with caching this was down to a few ten thousands of a second which was comparable to the imperative for loop equivalent.

Unfortunately half an hour was only enough time to whet the appetite and you could sense the audience was itching to see more and ask more questions. I would have loved to have seen the sorts of real world problems for which the functional approach can be most effective.

Live from PyCon UK 2007 – Part 2

Another quick post from PyCon UK 2007 which I’ll fully reference up later.

[References added 18th September]

Day 1 Part 2

Dealing with Tabular Data

Alex Wilmer gave this half hour beginners’ talk on using python to deal with data in tabular formats, by which he meant everything from CSV text files through HTML to SQL RDBMs. This is a subject close to my heart as I often find myself using ksh, awk and maybe a bit of perl to convert various systems logs to other formats.

In a simple and clear way Alex showed the key tools in python that can be used to work with different types of data. In the half an hour he had he covered a lot of ground really well but as this is something I’m particularly interested in I wish he’d had an hour slot.

Intro to PyQT GUI Programming

This was a two hour tutorial slot given by Marc Summerfield that showed the use of the Python bindings for the QT GUI programming libraries. Most of the people in there had started with the Python for Beginners tutorial from beforehand and carried on into this tutorial. There was a range of programming abilities and familiarity with event driven GUI concepts so Marc had a lot of concepts to explain.

He was able to demonstrate how PyQT enables great GUI development and even how you can extend it to completely new widgets written from scratch but unfortunately in the two hour slot there wasn’t much time to let people actually try the examples on their laptops.

Keynote Speech on OpenID

Simon Willison gave the keynote speech at the closing plenary session of the 1st day. Simon is best known for being the co-creator of the Django web framework but his topic for the keynote was to proselytize the use of OpenID.

OpenID can perhaps best simply be described as single sign-on for the Web. Given the plethora of sites that people have accounts on the task of managing them has started to become a barrier to people using some services. This is because they feel it is just not worth the effort of filling out all the details to sign up and having to either remember a new username and password or compromise their security by using the same username and password on multiple sites. ( Well we all do it don’t we?).

OpenID is a way for a web site to use a url as a username and for that to provide a link to an ID server that can allow you to verify that it is indeed you signing on. This could be as “simple” as you using an OpenID from say live journal so that once you sign in once to live journal other sites can check that to see you are logged in and therefore you allow them to log you on to the other site. Or it could involve an SMS message being sent or the use of a secure ID key fob.

I haven’t explained the foregoing very well at all and Simon Willison was much more articulate at expressing it and much more entertaining. This is one of those areas where the “open” movement are providing a solution to a problme that I’d never even thought there could be a solution to without recourse to some single overarching (and evil) corporation.

As a keynote it really did hit the right note. (Weak pun intended)

……..and so to Dinner.

The conference dinner was hosted at the Novotel and was extremely good. The food was delicious and the service to nigh on 200 of us was excellent. We were entertained by an after dinner speech from Jono Bacon about his experiences of Python for the the Jokosher audio editing project. He claimed it was his first ever after dinner speech and that included being as a member of an audience never mind as the speaker.

It was an excellent speech and had all the key ingredients for after dinner, it was witty, lively, the right length, rooted in the subject at hand and pitched just right for the audience.

Well it is nearly lunch time on day two now so I’m off to the refectory………

Live from PyCon UK 2007 – Part 1

It’s half-way through day one of the UK’s first national python conference PyCon UK. I’ve taken a few minutes out between talks to review things so far. As this is a live post I’ll reference it up later with links to people and products I mention. [ References added 18th September]

I declare an interest as I am part of the crew for the conference helping set things up and chair some sessions.

I should also declare I’m a bit of a fraud in as much as I have only ever written three python programmes. It’s something I want to do more of so this conference will be my catalyst hopefully.

Before the main conference started today we had a pub meet in the evening on Friday. This was held at Bennett’s pub in the centre of Birmingham. There were about 70 people there at its peak.

As organisers we faced our first crisis because the chef at Benetts had “disappeared” just before we arrived so no food was available and we had 20 hungry pythonista’s hoping for food. Zeth and John struck on the idea of buying take out food from the Thai restaurant across the road and ferrying it. Chaos abounded with dishing out the various portions but everyone got fed, crisis averted. As a vegetarian I didn’t expect to spend so much time dishing up food to corpse crunchers half the evening but it’s all hands to the pump.

Day One

The main conference is being held at the Birmingham Conservatoire and we have 200 delegates using 4 rooms for talks and tutorials. Here’s a brief outline of the ones I have heard so far.

Database Magic with SQLAlchemy

This talk was given by Paul Johnston and as the first talk up in one of the rooms he was setting the standard for the day. The talk was quite a technical overview of the use of SQLAlchemy an Object Relationship Mapper that allows python objects to be stored in standard SQL RDBMS . What was particularly interesting was the way relationships between objects could be mapped and then the SQL generated for queries could be done in an “eager” mode that uses outer joins etc. to reduce the number of sub-queries and calls to the database to get a set of data.

Introduction to Django

This was an eagerly anticipated talk from Jason Davies and was well attended. Jason ran through a broad over view of the Model View Template approach of Django and the background to Django. With just slides to view, it lacked a bit of the interactive element to show the speed with which sites can be developed but Jason handled a good 20 minutes of questions at the end and was able to address them all in a reasonable level of detail without overwhelming the mostly beginner audience with technical detail.

He also showed a slide showing the relative performance of Django, Turbo Gears, Symfony and Ruby on Rails. Django comes out really quite well on this.

Ok off to more talks, not sure if I’ll get time to do another live post but we’ll see.

Lug Radio Live 2007 Part 3

Day Two………

Michael Sparks

Michael is a research engineer at the BBC and he gave a talk about the Kamaelia component framework. This a framework and a set of tools for making programming for concurrency for things like content handling and scalable network services easy.

The talk was pretty hardcore and covered a lot of technical detail though as with many great ideas the core principle is simple: you build systems using components that have an inbox and an outbox, so you don’t have to worry about whether the generator or sink is ready, you just work on the components you need in essence in isolation.

The presentation itself was given on an interactive whiteboard application that was built using Kamaelia. It’s a fascinating technology that would well end up being the glue that sticks together a whole swathe of distributed, media based content systems.

Nat Friedman

Nat Friedman‘s talk was very wide ranging and as he himself said it was just a real grab bag of slides.

He started with the story of how the Oxford English Dictionary got started and how it was in essence an open source project: community based with citations solicited from anyone. There was a strong leader and then a team of lieutenants ( 26 editors one for each letter ). The work was divided in such a way as to allow people to work on small units (i.e. a single word) and contribute when they had a little time to spare.

The parallel with FLOSS was really striking.

Then Nat put up some stats to show the millions of lines of code that Novell has contributed back to the Flosscomm. (Lest we forget)

Nat also discussed the patent situation as some length and I think he was surprised he was not given a hard time about it in the debate the day before. I guess he wasn’t aware how “nice” and polite a British audience will be. He discussed different aspects of Intellectual Property namely, copyright, trade mark, trade secret and patent.

The whole software patent situation in the US is pretty scary but also rather boring. Maybe I’ve been over exposed to it in the last few months on the various blogs and feeds I read.

Nat however certainly wasn’t boring and did give some interesting views on how in the end Microsoft will end up being on the same side as us for patents because they are more and more the target of claims against them.

The Hour of Power

One hour of cool visual demos. There were a few technical hitches with getting laptops to talk to the AV kit but we got to see some cool stuff. There’s not much point in going into too much detail in this area as you had to see them to appreciate them so here are the runners and riders:-

Zahir from Fluendo : Istanbul screencast software and Elisa media centre

Neuro from Linden Labs : Second Life

Juski : MythTV

Alan Pope from Ubuntu : Ubuntu screen casts

Joe Shaw from Novell : Banshee Web UI (christened Webshee by an audience member). Written as part of Novell Hack Week.

The final hour of the day I saw two of the lightning talks upstairs ( prior to that I had been a total Main Stage whore).

Michael Barker

Michael spoke about the groupware application Meldware Buni that is written in Java aims to be cross-platform and ultimately rival Microsoft Exchange.

The cool thing about the Buni Meldware software is that it treats email and calendar information as just any other sort of data and stores it in a relational database.

The talk covered the ideas behind the project and in particular its use ofJava. The old days of Java being slow, it seems, are over.

Peter Stean

Peter gave an interesting talk about the UK government’s digital challenge competition that encouraged local authorities to find ways of bringing the benefits of the information age to those people who are already socially excluded and just ending up being left further and further behind.

Unfortunately he wasn’t able to provide details of how much open source software was involved in this though he knew some was.

He spoke about some interesting projects to make digital set top boxes much more interactive so they could be used as a medium for providing services to local authority service users electronically without the need for a full blown PC and Internet connection. Not only would this be cheaper but would also mean the user interface and learning curve would be less than that of a traditional PC.

So that was Lug Radio Live 2007. I had a great time and great big thank you to all the people involved in making it happen.

Lug Radio Live 2007 Part 2

The Mass Debate

This was an open Q&A session chaired by Jono and with 4 open source luminaries, actually 3 open source luminaries and one guy from Microsoft. The panel members were Chris DiBona ofGoogle, Nat Friedman of Novell, Becky Hogge from the Open Rights Group and Mr X from Microsoft. Unfortunately I did not catch the guy from Microsoft’s name but he described himself as an evangelist, which was kind of ironic given that Alan Cox’s talk earlier was saying how Open Source people used to shun the word marketing and talk about being an evangelist but now big corporations were catching on so it was becoming a dirty word.

As you might expect the guy from Microsoft got quite a “shoeing” particularly in relation to the Open XML standard and he played it quite well. When the question or sometimes the speech masquerading as a question was on the whole pretty rhetorical he would just smile and not comment.

Other topics included the panel’s views on the the BBC’s decision not to provide the iPlayer for any other platform than windows initially. On the whole they saw it as a poor decision but all said the way to get something done was to engage in dialog with the organisation rather than trying to do some sort of boycott. An interesting comment from Nat Friedman was that these large corporations are not monoliths and there may well be people in the organisation that have closer sympathies to your position. You should find these people out and enter a dialog with them.

Nat Friedman also made an interesting comment about the future of the Linux desktop and how as more applications go to the web the underlying platform in a sense becomes less important and this could be the point where Linux starts to gain real ground in the market, which has a certain irony about it. However he also suggested that this could mean the Linux desktop will go in some new direction providing a user experience that the web can’t provide.

On the whole it was a reasoned and fun debate.

Chris DiBona

The final session of the day was from Chris who is Google’s code manager, responsible for licence compliance, releasing google code and the Summer of Code.

After some entertaining slides about the hardware Google used over the years he went on to explain that the main reason Google use FLOSS is because they want always to be master of their own destiny and not beholden to any other software provider.

He finished by explaining how the Summer of Code works from both the students’ side and the projects’ side.

Chris is a really entertaining speaker and clearly very knowledgeable across a range of FLOSS issues.