python-guide.org and the mock library for Python

September 26th, 2012 No comments

At PyCon Australia 2012, Kenneth Reitz‘s keynote touched on python-guide.org. In the theme of “* for humans“, this python for humans documentation project is bringing together an opinionated handbook of practices, technologies and tools for regular use by beginners and experts alike.

There’s plenty to do, so if your python expertise can fill a gap, it’s really easy to fork the project on github, make changes, build it (there’s a Makefile) and submit pull requests back.

My recent contribution was to add a small snippet about the mock library to the testing page. If you haven’t used it and are writing unit tests, it’s well worth checking out…

http://docs.python-guide.org/en/latest/writing/tests/#mock

 

Share
Categories: python Tags:

PyCon Australia 2012 Debrief

September 5th, 2012 No comments

After 2 years in Sydney, the PyCon Australia conference shipped off to Hobart for 2012. TL;DR: It… was… awesome!

Many people know of my penchant for raving about how good Tasmania is. Although there’s an apparent tendency for geeks to prefer the great indoors, I didn’t hesitate to recommend getting out of the building for a look. Highlights from my previous 2 trips (both circa New Years Eve) include Hobart, Freycinet, Falls Festival (loose units FTW), Falls Festival again (media pass FTW), the Overland Track, the South Coast Track and lots in between.

For this trip, C and I took a little road trip after the conference to take in the sights of Robertson, Oatlands, St Helens, Bay of Fires, Bicheno, Coles Bay, Freycinet and MONA. It was a nice quick break and a worthy addition to a growing collection of happy Tassie travel memories, along with the conference itself…

Code Wars

The first item on the agenda was CodeWars. I coerced some smart looking people into having a crack at the first problem with me. Some sprightly laptop work with shell commands, arcane python libraries and prime number detection (mostly from my team-mates) saw us qualify 2nd for the semi-finals. In our semi-final we were met with a file containing a file-system containing a Visual Basic (6?) project. Both teams set about brute force porting to python. We got close, but were pipped by the other team, and it wasn’t until Sunday that I learned that we hadn’t converted twips (remember those?) to pixels.  To Josh Deprez, the puzzle master, well played Sir.

Talks

The main conference programme had a good combination of talks at various levels. As a first time presenter at a larger event like this, I appreciated the strategy of accepting a range of speakers. Whilst the talks were all generally of a very high level, I and others might have benefited from practising more on each other or a similar audience in advance. Getting the content right for the audience and presenting it in a meaningful and timely way is really hard.  My talk on continuous deployment (video) attempted to cover a huge topic in 30mins and the big picture was paramount (9Mb animated SVG, YMMV), so I had to be brutal in cutting out peripheral or detailed concepts whilst remaining relevant. I know I’ve got plenty to improve upon, but feedback is always welcome.

Some (hopefully obvious) suggestions to consider, ironically presented as an unordered list with lots of text:

  • Don’t present slides or terminals full of code in small type if that’s where your key points are hiding. Fortunately this was rare (usually short snippets, large fonts), but I noticed that most people tuned out when it happened and some never came back. By all means include it for people’s reference later, ideally highlighting or commenting on relevant points or structures.
  • Frame the topics. Some of the most brilliant content assumed knowledge significantly beyond that of most of the audience. Usually some “what” and “why” before the “how” is all that it takes. Talk abstracts can better cover this in advance too.
  • Practice, practice, practice. Know your talk inside out so that you aren’t using slides as a crutch and timing isn’t a problem. If 100 people see your talk, the return on time invested here is huge.

Sprints

This was the first time I’d attended a sprint, and wished I could have stayed for the whole thing. Before rushing off after half a day I was up to my elbows in the Django codebase (something I should have done more of sooner), getting heaps of help from people and submitting a patch.

Organisation

The venue, dinner, catering, logistics etc, all good. Great job, nuff said. A special mention for the coffee… the African Swallow was damn good and the beans I brought home are going down a treat. I plan to do it all again next year (but better, of course).

Thanks

I met and re-met a lot of people. Whether you’re an organiser, speaker, room-mate, early morning jogger, core developer/BDFL/advocate, drinking buddy, non-drinking buddy, fellow dinner guest, devil’s advocate, hacker and/or overall font of knowledge and support, I thank you all for adding to my experience and I hope I did and will continue to do the same.

 

Share

Back on the blogging bandwagon

September 5th, 2012 No comments

I’ve done rather a lot personally and professionally in the past year, and I’ve decided I should return to blogging (aka writing for the old-school) to document and share some of it. I swapped my comfortable job of 12 years for a brand new, massively uncertain venture (Arribaa), switching tech stacks completely and levelling up in the responsibility stakes.

There are many excuses for not doing this sooner; “but I’m busy building a company”, “I should upgrade my blog first”, “gotta sell the car”, “taxes are overdue”, but no more.

So, expect to see some more content here. I’ll be writing about technical issues, especially big picture system design and architectural concerns that tend to be considered too late, as well as python- and django-specific techniques. I will also attempt to distil some “startup scene” wisdom from the point of view of a generalist with a mostly technical background. There is a growing collection of general bullshit and advice lacking context that serves only to distract and mislead the well-meaning. Perhaps I’m just adding to the noise, but I regularly meet people far smarter than I who are drowning when it comes to execution, despite a supportive ecosystem around them.  If writing about this doesn’t help someone else, I hope at least to have my assertions tested. To that end, my comment policy is open, short of personal attacks.

Posts will be tagged (technology, photography, business, python, django) so potential subscribers can pick and choose. The volume is likely to be low anyway so maybe just skip over those “parallelisation of unit tests using libfoo in [really specific situation]” type posts if that doesn’t float your boat.

Onwards!

Share
Categories: meta Tags:

Guthega Back Country Snow Shoeing

November 14th, 2011 No comments

Guthega Back Country Snow Shoeing
Guthega Back Country Snow Shoeing

Looking toward Guthega Dam (just visible to the right) on the return trail

Share

Guthega Back Country Snow Shoeing

November 14th, 2011 No comments

Guthega Back Country Snow Shoeing
Guthega Back Country Snow Shoeing

A small tributary near Guthega Dam

Share

Guthega Back Country Snow Shoeing

November 13th, 2011 No comments

Guthega Back Country Snow Shoeing
Guthega Back Country Snow Shoeing

This tree is huge in it’s breadth, and stands proudly in the storm, garly branches everywhere

Share

View of Sydney City from Balmain East

November 11th, 2011 No comments
Categories: photography, potd Tags: , ,

Pacific Pearl on Sydney Harbour

November 11th, 2011 No comments
Categories: photography, potd Tags:

Sailing on Sydney Harbour

November 8th, 2011 No comments
Categories: photography, potd Tags:

White Bay Power Station

November 8th, 2011 No comments
Categories: photography, potd Tags:
Get Adobe Flash player