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

Posted on 2011-09-23.

This is a major feature release for Urwid.

Happy 1.0 Urwid! It's been a great nearly-seven years since our first release. Huge thanks to everyone that's contributed code, docs, bug reports and help on the mailing list and IRC.

Read More …

Tags: Urwid Software Python


Django Widget data flow
Posted on 2011-09-19.

In any web application user data must be translated from HTML form data to native types and database types, and back again. Django web applcations are no different.

The "right way" to handle custom types is to extend Django's widgets, form fields and model fields. However, understanding exactly how these types perform each step of the conversion can be confusing. This post will attempt to explain how the data is converted at each stage and offer some advice about creating custom widgets, form fields and model fields.

This article is based on Django 1.3 and assumes the reader has experience creating and using Django forms, models and validation.

Read More …

Tags: Django Software Python


Arevco Lighting 2011
New Arevco Site Launched link
Posted on 2011-09-06.

The third iteration the Arevco Lighting web site is now up.

The old site was simple HTML and images generated from a script, which I quite liked but wasn't the easiest thing for other people to update. The new site has been professionally skinned and is now running a Django CMS with some custom index code for product pages. I used the following:

I've used Gerbi now for a few public web sites. It's a well designed and usable CMS that is quite easy to extend. It also has good multilingual support that will make translating content as easy as editing the pages.

Tags: Django Ottawa Python


Posted on 2011-07-13.

This is a maintenance release that fixes a number of bugs that have been found in 0.9.9.1.

Read More …

Tags: Urwid Software Python


Recording Both Sides of a Call link
Posted on 2011-06-23.

I set up a VM to present software to a client remotely, but I needed a way to record both the audio in and out so that I could capture both my presentation and the client's questions. In the past I've used some ALSA configuration magic for audio things advanced enough that they don't have a friendly GUI, but since Pulse Audio is the shiny new thing I decided to go that route.

It turns out to be fairly simple. I create a new null sink (think: fake sound card for output) and attach a loopback from the audio out monitor of the "real" sound card and another from the the audio in of the "real" sound card:

pactl load-module module-null-sink sink_name=bothsides
pactl load-module module-loopback latency_msec=5 sink=bothsides \
      source=alsa_output.pci-0000_00_04.0.analog-stereo.monitor
pactl load-module module-loopback latency_msec=5 sink=bothsides

The alsa_output... source comes from running pactl list and copying the device name. The second loopback automatically uses the only alsa_input... source device. Then I can record from the monitor of this null sink with a command like:

pacat --record -d 2 | sox -t raw -r 44100 -s -L -b 16 -c2 - "recording.wav"

The -d 2 option selects the new null sink monitor device I created (the index may be different in your case). Last, you may want to use the pavucontrol program to adjust the levels for the input and output so you don't end up with one sounding much louder than the other in the combined recording.

Tags: Software Linux


Python 3 Argument Sketch Slide
Python 3 Argument Sketch Slides link
Posted on 2011-06-14.

Here are the slides from my Python talk at OLS this afternoon.

Tags: Ottawa OLS Software Linux Python


Python on Android, Django Unit Testing at OPAG link
Posted on 2011-05-25.

Ottawa Python Authors Group meeting tomorrow Thursday May 26 at 8p.m. Best of all it's not me talking this time!

Hope you can make it out.

Tags: Django Ottawa Software Python OPAG


Python 2 and 3 Slides link
Posted on 2011-05-19, last modified 2011-05-23.

Catching up on some more old business: here are the slides from the Python 2 and Python 3 talk I gave at last month's OCLUG meeting.

I am also preparing some Python tutorials for the upcoming 2011 Linux Symposium in Ottawa June 13-15. Hope you can make it.

Tags: Ottawa OCLUG OLS Software Linux Python


IPv6Summit Organizers
IPv6 Summit Summary link
Posted on 2011-05-14.

I'm late with this update (busy catching up on other work that I neglected last month) but I must report that the Ottawa IPv6 Summit went far better than I had hoped: Great turn-out, great venue, great talks and great food.

Pictures are now available from Richard Guy Briggs and we're working on putting the talk videos online with the help of ISI Global Webcasting.

The space at Telfer School of Management was ideal, and the Telfer volunteers got everyone registered helped everything run really smoothly all day.

It was tons of work, but I look forward to doing it again. Maybe I'll even catch more than a couple talks in person next time.

Tags: Ottawa OCLUG Hardware Software IPv6


IPv6Summit.ca
Ottawa IPv6 Summit Overflow link
Posted on 2011-04-27.

Response to the Ottawa IPv6 Summit has been amazing. Yesterday we completely sold out our venue and had to shut down registrations. We just can't fit any more people in the room with the keynote talk first thing in the morning.

We do still have some room after the keynote though, and if you don't mind skipping the first talk you can now register for one of the overflow spots we have just made available.

Hope to see you on Friday.

Tags: Ottawa OCLUG Hardware Software IPv6


« page 1 2 3 4 5 6 710 11 12 page »