excess.org

Ian Ward

Consulting
Boxkite Inc.
Software
CKAN contributor/tech lead
PyRF primary contributor
Urwid author
Speedometer author

Presentations
Contributing to Open Source
IASA E-Summit, 2014-05-16
Urwid Applications
2012-11-14
Urwid Intro
2012-01-22
Unfortunate Python
2011-12-19
Django 1.1
2009-05-16

Writing
Moving to Python 3
2011-02-17
Article Tags

Home

Ian Ward's email:
first name at this domain

wardi on OFTC, freenode and github

Locations of visitors to this page

News rss icon

Ottawa IPv6 Summit Early Registration link
Posted on 2011-04-14.

Just a reminder that tomorrow is the last day for the early registration discount.

The preliminary schedule has been posted. Register now!

Tags: Ottawa OCLUG Hardware Software IPv6


Python logo
Python Talk at OCLUG on Tuesday link
Posted on 2011-04-03.

I will be giving a talk on Python 2 and Python 3 at the Ottawa Canada Linux Users Group meeting on Tuesday. Hope to see you there.

Tags: Ottawa OCLUG Software Linux Python


IPv6 Summit Speakers Posted link
Posted on 2011-03-26.

The nearly-complete list of speakers for the Ottawa IPv6 Summit is now available. Register by April 15 for the best prices.

Tags: Ottawa OCLUG Hardware Software IPv6


PyCon masthead
Posted on 2011-03-23.

Here are some of my favourite videos from this PyCon this year:

Read More …

Tags: Software Video Python


Python Data Structures at the Pub Wednesday link
Posted on 2011-03-21.

The Ottawa Python Authors Group is gathering at the Georgetown pub on Wednesday March 23. The theme of this meeting is Python Data Structures and String Processing. It's a great topic for beginners and experienced python users alike. Hope to see you there.

Tags: Ottawa Software Python OPAG


IPv6Summit.ca
Ottawa IPv6 Summit link
Posted on 2011-03-11.

Registration for the Ottawa IPv6 Summit has just opened. Also if you want to present a talk (in particular something suitable for the business/management stream) there is still some time to submit a proposal.

The summit will be held Friday April 29 in downtown Ottawa at the new Desmarais building in the University of Ottawa campus. There will be some great talks, a good lunch, fast wireless, power at every seat and plenty of interesting people. I'll post again when the schedule is available.

The conference is being organized by a small group of volunteers, including myself. If your company is willing to sponsor the event please contact the Ottawa IPv6 Summit. The money will go directly into making the conference better for everyone attending.


Tags: Ottawa OCLUG Hardware Software IPv6


Moving to Python 3 link
Posted on 2011-02-17.

My article on supporting Python 2 and Python 3 from the same code base is now freely available on LWN.net. The article is based on my recent work on Urwid's Python 3 support. I owe thanks to the people that started and contributed the compatibility work on github and bitbucket. I'm looking forward to a release with Python 3 support very soon.

I also gave a talk at last night's OPAG about these changes. Thank you to all those that came out, we should have these meetings more regularly. Maybe back at the pub next time?

Tags: Urwid Ottawa Software Python LWN.net OPAG


OPAG Pub Meeting Tuesday link
Posted on 2011-01-10.

The Ottawa Python Authors Group is gathering at the Georgetown pub tomorrow. The meeting is open and unstructured this time. I'll be there presenting a bit of my recent work with Python 3 and hg-git.

Tags: Ottawa Python OPAG


Django Hides (some) Widget Exceptions link
Posted on 2010-12-13.

If you write any custom Django widgets or admin list_display callable functions you have probably run into this: Everything looks ok, except the place where your widget should be is just blank. Nothing. No traceback or any clue as to what went wrong.

It seems that Django suppresses all the exceptions sent by widgets rendering except for AssertionError and TypeError. Debugging under those conditions is tricky, so I wrote a function decorator to help. Just import this and put @assert_on_exception before your render method or admin list_display callable function:

def assert_on_exception(fn):
    import sys
    def wrap(*args, **kwargs):
        try:
            return fn(*args, **kwargs)
        except (AssertionError, TypeError):
            raise
        except:
            raise AssertionError(sys.exc_info()[0].__name__ + ": " + str(sys.exc_info()[1]))
    wrap.__name__ = fn.__name__
    wrap.__dict__.update(fn.__dict__)
    wrap.__doc__ = fn.__doc__
    wrap.__module__ = fn.__module__
    return wrap

Tags: Django Software Python


Manufactoria:Reverse the input
Manufactoria Distils the Awesome of Programming link
Posted on 2010-12-12.

Just adding my voice to the chorus of people praising Manufactoria.

I played through a earlier version months ago, but had to come back and try it again. The latest versions let you flip parts and easily move and rotate sections of your machines. And the new "Malevolance engine" jumps straight to your flaws or validates your designs almost instantly. If you like writing software, you must try this little game.


Tags: Software Games


« page 1 2 3 4 5 6 7 810 11 12 page »