linux.conf.au 2009
Marching south together...

February 09, 2010

Joyce on debts

From the ABC today:

Opposition finance spokesman Barnaby Joyce is courting controversy again, warning that Australia is getting to the point where it will not be able to repay its overseas debt.

That’s a big call, which I don’t think is actually true. But how close are we? In the news at the moment is Greece, which is currently on the verge of bankruptcy with a 300 billion euro debt. (And if nations defaulting wasn’t hard enough, this is harder because it’s not just Greece’s problem to deal with, but the EU’s too)

But compare that to Queensland’s debt, which according to the last budget was $57.7 billion AUD and is expected to continue to rise each year until 2017. That’s about 36.6B euros at current rates, or about 12% of Greece’s debt. Though given Greece has a population of about 11M and Queensland only 4.4M, on a per-capita basis that brings it up to about 30% of Greece’s debt.

I can’t actually seem to find any simple summary of what NSW’s government debt is like to compare, but NSW Treasury seems to be claiming (pdf) “net financial liabilities” of about $50B at the moment (with a population of about 7M to service that debt), which would put it at about 16% of a Greece-esque basket case. Victoria’s apparently recently jumped from only a few billion in total public sector debt to an expected $23B, for its 5.4M people to pay back (just under 10% of Greece-esque craziness).

The Federal Government, meanwhile, has lost it’s brief run of being a net creditor (2005-2008, RIP), and according to the budget is currently around $53B in debt, and expected to hit $188B in 2013. Over 22M people, that’s currently 5.6% of Greece, or 20% of Greece by 2013. Given Queensland’s debt’s expected to be $85.5B by then, that puts us folks in the Smart State with 66.8% of Greece’s burden in the next couple of years.

That isn’t quite as bad as it seems — we’ve got a higher per-capita GDP than Greece, and plenty of resources to dig out of the ground and sell to China, and there might still be some room to have those debts conveniently vanish depending on how the Global Financial Crisis continues to play out, and Rudd apparently thinks it will all be paid off by 2022 anyway. So yeah… Barnaby aside, we haven’t hit the point of no return, but a little less of the “just think of it as an investment” excuse for borrowing more might still be a good idea…

Oh, and wow. Also via the ABC:

Brendan Flynn, who analyses sovereign risk for Standard and Poor’s, gives the Federal Government the highest triple-A credit rating.

“With the triple-A rating, that’s indicative of the extremely strong ability to meet financial obligations and therefore in our opinion, very little chance of defaulting on debt,” Mr Flynn said.

That’d be the same AAA rating from the same firms that those CDS and CDO things were getting just a few years ago, right?

if I had a tee saying "Tech Goddess" I would wear it today

Steph's MacBook is affectionately known as the FrankenMac. It was built from the parts of 3 other MacBooks. The other night it started going into what seemed like swap death. Turned out to be catastrophic hard disk failure. Also, in what can only be described as a massive oversight, her laptop was not being Time Machined (whoops).



Anyway, after trying and failing to read the disk back using targeted disk mode plus dd_rescue on another Mac, I ended up swapping the disk into my Thinkpad last night and booting an Ubuntu LiveCD, ran dd_rescue and copied the hard disk image to an external hard drive. The filesystem is a little corrupted, and OSX can't read it... but Linux can! [Gotta say, this surprised me.]



I probably could have just booted the Mac itself with a LiveCD, but after targeted disk mode didn't work, I was worried it might be a logic board failure (let's just say Apple and I have a jaded history regarding logic boards). Also, I forgot for a bit that Macs can run Linux.



Since it did just seem to be a bad disk, I went and bought a new hard disk today, and have just successfully gotten the machine reinstalled and running again. The FrankenMac lives again!



So in summary, I am secretly brilliant, and Steph now has a 500GB USB harddisk to use with Time Machine.



P.S. something I forgot. This is for people who write articles for online Apple magazines: just because something is an Apple filesystem, they are still inodes, not iNodes.



P.P.S. I had to laugh, but I also forgot to give kudos to gnome-disk-utility which popped up a dialog during my dd_rescue, something like "One of your hard disks may be failing". Let's just say OS X loses here, being an OS that can't tell the difference between disk failure and filesystem failure.

Sign me up to social networking!

I do not like it when people tell Web 2.0 sites to send me invitation e-mail. I won’t enumerate the reasons here. But there is one reason for why I don’t like you passing on my address to those sites, which is subject of this article:

Unlike popular belief, the Web 2.0 is not a money-printing machine. It’s a long road until you can actually generate real money with user content. Therefore, some shadey sites are probably selling contact details to advertisers to make ends meet while hoping for the big cashflow.

I don’t have any data to back this up, and I want to change that:

Please tell all your Web 2.0 sites to send me an invitation! Please use an address in the signmeup.madduck.net domain for that, and make sure to include the domain name of the service to which you sign me up before the @ symbol. Also append a hyphen/dash and a random, short string. More on that in just a sec.

For instance, if you are one of those people that believes that letting people know where you are (and have been) at any point in time, tell Foursquare to send an invitation to:

foursquare.com-ponies@signmeup.madduck.net

The reason for the random, short string (“ponies”) is simply so that I can later cross-check that a message receiving spam actually went through a social networking site — I intend to catalog the invitation messages.

Thank you for your time. Keep in mind: the more, the merrier. I’ll make sure to report back on the outcome of this little experiment right here, so watch this space.

NP: Billy Joel: Cold Spring Harbor

February 07, 2010

LCA2010 raises over $33,000 in support of Life Flight Trust!

WELLINGTON, New Zealand – Monday 8 February 2010 – linux.conf.au 2010 is over, but the generosity of its delegates will leave a lasting impression on the Life Flight Trust.

During the conference closing dinner at the Wellington Town Hall, attendees bid to win a unique opportunity to join an action-packed Westpac Rescue Helicopter winch training mission. All bids were donations to Life Flight.

Delegates could donate online with their laptops and results were displayed in real-time on an open source application created by Andrew Caudwell of Catalyst IT.

At the end of the evening a $12,750 donation from Linux Australia brought the total funds raised to more than $33,000.

Life Flight CEO David Irving said, “Free open source software is founded on generosity and these supporters have certainly taken that value to heart.

“The funds raised will enable 13 people to receive emergency flights, which is a great outcome for the community.”

linux.conf.au bring together the global community of Linux enthusiasts who contribute to the operating system and the vast array of free and open source software that is transforming information technology around the world.

Life Flight Trust provides a national air ambulance service and the Wellington Westpac Rescue Helicopter. Life Flight Trust is a registered charity that relies on community donations to keep flying. For further information or to help save lives visit http://www.lifeflight.org.nz.

To donate to Life Flight Trust, please visit: http://www.fundraiseonline.co.nz/LCA2010/.

About linux.conf.au

linux.conf.au is one of the world's best conferences for free and open source software! The coming linux.conf.au, LCA2010, will be held at the Wellington Convention Centre in Wellington, New Zealand from Monday 18 January to Saturday 23 January 2010. LCA2010 is fun, informal and seriously technical, bringing together Free and Open Source developers, users and community champions from around the world. LCA2010 is the second time linux.conf.au has been held in New Zealand, with the first being Dunedin in 2006.

For more information see: http://www.lca2010.org.nz/

About Linux Australia

Linux Australia is the peak body for Linux User Groups (LUGs) around Australia, and as such represents approximately 5000 Australian Linux users and developers. Linux Australia facilitates the organisation of this international Free Software conference in a different Australasian city each year.

For more information see: http://www.linux.org.au/

Emperor Penguin Sponsors

LCA2010 is proud to acknowledge the support of our Emperor Penguin Sponsors, InternetNZ, Google, HP and IBM.

For more information about InternetNZ, see: http://www.internetnz.org.nz/

For more information about Google, see: http://www.google.com/

For more information about HP, see: http://www.hp.com/

For more information about IBM, see: http://www.ibm.com/

Optimise Google

I had previously sought alternative, innovative search engines, but none of the proposed options made me particularly happy. About a year ago, I came across DuckDuckGo, and today, I’ve been using DDG as my primary search provider for exactly 10 months.

The reasons why I switched included

  • my dislike of the Google information monopoly and the potential that a single, corporate entity with financial interests, gets to censor the information I see. I am sceptical of their “Do-no-evil” promise because there’s nothing binding about it, and if it gets in the way of money-making, I am sure it’ll be discarded at a whim — if it even still exists.

  • the awareness that my usage augments their database (although I am probably too far away from mainstream to provide useful data), which translates into more funds available to them to further strengthen their market position.

  • my belief that the days of index-based searches are over, given how 95% (or more) of user-generated content is bogus. Google undoubtedly optimises the results with obscure, secret algorithms, but that’s just not enough for me.

  • Of course the name — DuckDuckGo — was perhaps the strongest reason to switch. :)

I am aware that DuckDuckGo is index-based itself, using the Yahoo API, which, in turns means that DuckDuckGo may already be using Bing data. Sounds a bit like out of the frying pan into the fire, unfortunately.

I am still investigating better search solutions, sticking with DuckDuckGo meanwhile.

Unfortunately, DuckDuckGo doesn’t quite cut the mustard at all times, forcing me to go to Google instead. For this reason I am glad to find that the CustomizeGoogle Firefox extension has not been discontinued, but simply renamed to OptimizeGoogle.

This extension allows me to anonymise my identity towards Google, remove click tracking (which Google doesn’t want you to know about and hence hide with JavaScript), hide ads, and customise a slew of other aspects of the giant’s search engine. It alleviates some of the aforementioned concerns, but not all.

Maybe it’s time to rethink the way I use the web and lower my search needs.

If you are using Firefox, try it out! If you’re still using Internet Exploder, you should not, and instead upgrade to Firefox. Users of other browsers might find similar functionality for their application, or might want to switch as well.

NP: Tunng: Comments from the Inner Chorus

Laptop/netbook for a university student and a HP Mini 311 quick review

I recently asked on Twitter:

For a college/university student, would you get ‘em a laptop or a netbook? Need opinions ASAP. Thanks!

HP MiniThe Twitterverse was quick to respond. Thank you all for responding! A little summary:

  1. @sniffit suggested that netbooks are underpowered, but might change with Linux being on them.
  2. @redsheep went for a laptop, unless I planned on being a mean uncle that didn’t want them to play games/do graphics/etc. Why, I can’t be a mean uncle ;-)
  3. @spinzer said go with a laptop because students have diverse working nature, and a netbook wouldn’t cut it.
  4. Both @alphaque and @brianritchie suggested to watch for the coursework: Computer Science, Graphics, Statistics deserve a laptop, otherwise, go for a netbook.
  5. @saimatkong suggested a 12″ notebook, but those tend to be quite expensive, to the best of my knowledge.
  6. @sureshdr, @tjunkie, @thechannelc, @liewcf, @bleongcw, @r0kawa all suggested a laptop would be better. In fact, @liewcf suggested a MacBook.
  7. @jerng brought up a good point: it should depend on the preferences of the user as speed tends to be a secondary issue.
  8. @biatch0r was the only one that outright said go for a netbook, lugging around a 10KG laptop is so 20th century :) I tend to agree.

So a bit from where I’m coming from, which I didn’t say in the original tweet. This laptop/netbook is for a complete stranger, whom I’ve never met. We do however, know her father. His daughter had just been accepted into a university somewhere up north in Malaysia, and she clearly needs a laptop/netbook for her coursework.

Anyway, all that aside, and with much thanks to the Twitterverse, I set out to pick up a machine quickly (think, 0.5hr). I had to be near MidValley for another reason, so hopped in. Checked out the Asus, and Acer stores, and found laptops and netbooks to exist, and you’d average around RM2,100 or so. Dell had a laptop for RM1,999, but it was a 14″ clunker, and it seemed really heavy. This seemed to be the large problem with a laptop: they came with everything (including a DVD-RW drive), but would come with a 13″ or 14″ screen – and they were all mighty heavy. Acer seemed to offer OS-less laptops, but I didn’t want to spend more time than need be, so wanted an operating system.

I went over to the HP store, my last stop, thinking in my head, I’d pick up the Dell. But I was taken aback when I saw the HP Mini 311. The specifications were amazing: 1.66GHz N280 Atom processor, 2GB RAM, 250GB hard disk, an external 8x DVD-RW drive (!), 11.6″ screen boasting a resolution of 1366×768, 10/100 Ethernet, 802.11b/g WLAN, 92% full-size keyboard (with great tactile feedback – I spent a lot of time in the store trying it). But that’s not all, it comes with 3 USB ports, HDMI output (why?), VGA output (and no need for any silly cable like their previous items), a multimedia card slot (for SD’s, etc.) and a built-in webcam.

The exact model is the HP Mini 311-1002TU. It seems like its an edition only available in Asia, and it comes with Windows 7 Starter Edition. Did I mention that it cost a mere RM1,799?

More goodness about it. It doesn’t come with an Intel graphics chipset, but an nVidia ION. Video performance is pretty darned good, in comparison to what Intel doles out, even on the netbook that I own (an Asus 1000HE). In my quick experiments, I was getting a good 5 hours of battery life running Windows 7.

First thing I did was install: Mozilla Firefox (and set it to be the default web browser), avast! anti-virus (to protect the PC), and OpenOffice.org with the JRE. It comes with a 60 day trial version of Microsoft Office, but who needs that when OpenOffice.org is free and should suffice. The system is quite snappy, and while the guy at the store told me that Windows 7 Starter Edition will not allow me to run more than 3 applications at a time, it works fine for me. In fact, the only thing that seems annoying is that you can’t change the desktop background – Microsoft is intentionally crippling their software for netbooks. From what I understand, a dual monitor setup will not work either (useful to have an external monitor on a netbook), but I did not try this.

I can confirm that Ubuntu works pretty well on this machine – I tested it when I got home, using the LiveCD and it seemed to “just work”. More information available at the laptop testing team HP Mini 311 on the Ubuntu wiki. A forum post to help with suspend/resume magic.

In conclusion, I didn’t get a laptop, but a netbook. But a netbook with an amazing screen size, a resolution that exceeds my expectations, a good graphics card, and an external DVD writer. Windows 7 Starter does not come with Aero, and I wrote a little README file informing the new owner that it might be better to just install Linux and she’ll be better for it at the end of her three year university course :-)

Related posts:

  1. Netbook Tweaks at BarCampKL
  2. Netbook shopping
  3. Parallels Workstation Quick Review



February 06, 2010

Warning: scenery above, next 4200km. Please to be looking only at the road

I sense this is going to be the year of the great long holiday. I doubt much more of it will be done under the pretense of going to a conference first. LCA2010 as usual was a great chance to catch up with all the cool people.



Last week, I was doing this kind of thing. There were more than one moment when I did what the rider was doing in this video, only to have an oh-shit moment as I came to the realisation that I was looking at the scenery and not at the rapidly approaching corner.



Ross Noble agrees with me in "Ross Noble's Australia Trip" that the best way to see a country is on a motorcycle, and it turns out that the best country to tour around is New Zealand, so seriously people, the best possible thing you can do at this point in time is to drop everything you are doing right now, get a motorcycle license and head right on over to the South Island.



I hired a small F650 single pot (ie, the real 650, not the 800 that has had its name downgraded; what marketing genius thought of that?) Beamer from Nelson for about $160NZ/day.



Marlborough Sounds Haast Highway



My very first day of riding was to set the scene. I rode up to the very end of the twisty passages of land in the Marlborough Sounds:



View Larger Map



Naturally, the roads are like this:

Marlborough Sounds Marlborough Sounds

and the clouds are like this:

Mountain in low cloud

In fact, I don't know how google maps does its thing in the Land of the Great White Cloud.



Save a mountain today! Stop local cooling!





Fox and Franz Josef glaciers are advancing rather than retreating, and they're busy tearing the mountains down. Except that plate techtonics are building the mountains up faster than they're being worn down.



The glaciers are incredibly fast moving because of the amount of rainfall (pretty much all of which missed me while I was riding around. How can it rain 17 metres a year, and miss me for 10 days?). So the crevasses and tunnels come and go every day. This is what three of them looked like when we walked/crawled through them:



Fox Glacier Fox Glacier



Fox Glacier



Some of the moulins were big enough to fall down:



Fox Glacier



The water flowing through these plumbing systems turned out to be absolutely delicious. There are no impurities at all. I've never had water that tastes so much of nothing.



At Milford Sound, I didn't bother with the cruise. The ride was (presumably) more thrilling, and besides, you can't get stuck in the tourist trap all day.

Milford Sound Milford Sound

(I like how I managed to frame both of those identically, making one look like the tide has come flooding in with giant waves)



It was easy to pull over when the sights got too much:

Miriad cascades

(Not all times I ended up in the gutter were because a bloody Australian tourist in a 4WD behemoth towing a boat came flying around a blind bend entirely on the wrong side of the road)



Mt Cook was highly pleasant.

Aoraki/Mount Cook national park

It's fairly unusual to have glaciers descend down into subtropical rainforest.



But I'm glad I had someone looking out for me (I got this feeling many times on the bike. Almost made me want to turn religious, and start worshiping the myriad of sheep around). I got back to the bike after many hours of walking, and discovered I didn't have my keys. My worst fear was that they had dropped out of my pocket when I was trying to retrieve my camera, while I was on a suspension bridge over a raging torrent. So I headed back to retrace all of my steps, fearing this would also take hours. But some kind person had left them at the registration book, which I found 2 minutes after I started walking.



Along the plateau heading back east from Mt Cook, I was almost blown off the bike several times. Turns out they measured 250km/h wind gusts near there once. After 100km of this, I have to admit I was getting rather tired of, and more than a little scared of being blown off the road/into oncoming campervans.



Anyway, as usual, the best photos are up here, and a lower cut are making their way towards my webserver at home.



Incidentally, when I was coming back, waiting for a replacement plane, I picked up Ian Plimer's book, "Heaven+Earth". I turned to a random page and read a random paragraph. He stated words to the effect that the temperature change has been 0.7+/-1.3 degC over a certain period, where the 1.3degC error is composed of several different errors of 0.5+/-0.4+/-0.3+/-0.1degC. As all of those with some basic statistics buried in their brains know, you don't add errors linearly like that. I get an error of +/-0.7 when I add the subcomponents in quadrature. I do hope the rest of the good Professor's science is less incompetant than that. I'd hate for his whole premise to be undermined.

Of waterfalls and communication culture

I got involved with open-source software before I learnt about software development in a university course. Naturally, when my profs tried to teach the waterfall model to me, I couldn’t take them too seriously back then. After all, requirements specification → design → implementation → verification → maintenance is not really in line with the principle to release early, release often. Furthermore, since water cannot flow uphill, the waterfall model fails to represent development cycles, as they naturally appear, even in behemoth, ancient software nightmares.

And yet, when embarking on a new project, I do tend to find myself first thinking about the big picture, instead of churning out the code. I am certainly not the best coder out there, and it might well be that I could benefit from learning to break down problems to get an earlier start on the implementation of components.

However, I maintain that avoiding the waterfalls and engaging directly in extreme programming, agile software development, or pair-based approaches right away is not the answer.

Rather, the best approach should probably involve a certain level of conceptualisation before code is produced. I am a big fan of test-driven development, and I like the scrum method for the very reason that it involves talking and challenging ideas (although I wouldn’t follow the method down to the book).

I like to think about trickles in the mountains where water droplets joyfully jump around.

* * *

When Glyn Moody spoke in his LCA2010 keynote about challenges we (as in society) face, and how open-source seems to have many answers, he dropped the following gem, which spoke right to my heart:

Twitter is the “release early, release often” principle applied to thinking.

By this simile, journal articles are produced according to the waterfall model. This may well be why they are usually outdated at the time of publication. Microblogging (like Twitter), on the other hand, is primarily used to publish stuff before it’s ready, and which would never be published otherwise.

With journals on one end, and microblogging on the other, I think the epiphany is found in between — as with software development: web logs — web applications that allow for easy publishing by anyone (which is a different problem not to be discussed here).

Since articles on those platforms usually have at least a title and a body, they require just a little bit more thought than 140 characters of contracted brain farts, spilled into the world faster than it takes one to stand up, stretch, and sit down again.

* * *

Microblogging seems to be in line with where we’re heading: more information, more self-promotion, more access to more people, and all that with lower barriers of entry. It’s hard to argue against a trend, but I think we’ve taken a wrong turn somewhere.

The one specific instance of content is no longer relevant, and there is no more time in the day to read elaborate treatments of subject matters. Instead, what seems to prevail is a constant flow. This flow threatens to replace actual thinking and discourse, both of which require reflection and time — a scarce resource used up by ever new, fast-flowing media.

It seems to me that those who immersed in this flow are unable to get out, as if sucked in by a maelstrom. I’ve seen people enter serious withdrawal within hours of not knowing what’s going on in the world. One could miss out on something.

If you’re “following” people on one of those microblogging platforms, I challenge you to spend the weekend offline and when the urge hits, ask yourself what you are actually missing. I mean what you are really missing, and by that I mean anything other than the cozy buzz and hum of entertainment washed upon you, preventing you from having to think about what you could be (actively) doing instead.

I hope it’s not a lot. For else, I fear that this means that future generations will be stuck with this communication culture, just like water droplets can’t ever play in the mountain trickle again.

NP: Sola Rosa: Get It Together

February 05, 2010

MariaDB 5.1.42 released!

Dear MariaDB users,

MariaDB 5.1.42, a new branch of the MySQL database which includes all major open source storage engines, myriad bug fixes, and many community patches, has been released. We are very proud to have made our first final release, and we encourage you to test it out and use it on your systems.

For an overview of what’s new in MariaDB 5.1.42, please check out the release notes.

For information on installing MariaDB 5.1.42 on new servers or upgrading to MariaDB 5.1.42 from previous releases, please check out the installation guide.

MariaDB is available in source and binary form for a variety of platforms and is available from the download pages.

It is also our pleasure to announce that we have a partnership with Webyog to offer their tools for trial and at a discounted rate if purchased within 30 days. Find out more at: Download – SQLyog MySQL Fronted, MONyog MySQL Monitoring Tool or via the software partner downloads.

We welcome and appreciate your feedback, bug reports, bug fixes, patches, and participation on our mailing list. Find out more about working with the community.

Enjoy!

Related posts:

  1. MySQL on Leopard OS X 10.5 PrefPane fixed!
  2. MySQL with yaSSL vulnerability
  3. MySQL Connector/PHP for MySQL 5.0.24 and PHP 5.1.5 released



February 02, 2010

Communication

[Chiz at the Kamakura Daibutsu]

Is it ok to use chat to communicate with my wife?

If she is sitting at the next desk?

If there is a sleeping baby in between?

Is any of this relevant if she laughs?

February 01, 2010

January 29, 2010

LCA2010 Photographic Competition Entries Available under CC Licence

The entries for the LCA2010 Photographic Competition are now available. 265 photographs licensed under a Creative Commons license give a personal view as conference delegates toured around 4 separate quadrants of Wellington, all unique to a different style of culture - Courtenay, Cuba, Waterfront and Lambton. We hope you enjoy this special view, and thanks are due to everyone who entered a photo in the competition!

{{slideshow:photo-entries}}

January 28, 2010

Monique Brumby and Rosie Burgess Trio

[info]socraticomatic was enthusing recently about Rosie Burgess Trio, so we went to see them for their single/video clip launch at the East Brunswick Club.



First up, they were supported by Monique Brumby, which is a gig I'd go and see by itself. Melbourne is so crazy, where you can have people who've won like awards and stuff as support acts.



Seriously though, Rosie Burgess Trio were fantastic. I had so much fun. I laughed so much from their banter, I wanted to cry. If I were a music magazine, I'd probably describe them as dynamic. They were lots of fun. Also, any band with songs about veganism is awesome. <3 <3 <3 (I think [info]socraticomatic's in love too).



Came away with 4 CDs (the new single was a freebie + one Monique Brumby + two Rosie Burgess). Both have new albums coming out too.



Finally, if you're in Sydney, the Rosie Burgess Trio is playing in Glebe next week. You should go.

Rekindling my love for the Sony Reader PRS-505

I wrote this before the Apple iPad announcement, so no thoughts on that yet, in this post. At the top of my head though, I’m still keeping my PRS-505, and not getting the iPad.

In May 2008, I picked up a Sony Reader PRS-505. Its an e-book reader, and in the day, was definitely the flagship device from Sony, for electronic books and PDF reading. Today, Sony still sells this, and they also have models with a touchscreen, as well as a mini-version of this (a pocket reader?). I used the device on-and-off, mostly to read PDFs, but of late, I decided to read full-length books on it, and the quick verdict is a simple win!

A bit about the device. It can be charged over USB (I did not opt to buy the AC charger), and uses a standard USB cable. It has a built-in rechargeable battery, and you’re meant to go for about 7,500 page turns. It does audio playback (which I never use), and it can read SD/MMC, as well as Memory Stick cards (again, I don’t use these options). It has over 128MB of storage available for you to store e-books, which seems plenty (failing which, the external storage options can be utilised). It looks like a book – comes encased in a soft leather cover. To turn pages, there are two sets of buttons, so I can read with one hand, or two.

It also is based on opensource software. It runs MontaVista Linux, and Sony distribute all the GNU based software on the web (mixes of GPL/LGPL software being used). More importantly, I can sync e-books via my Linux or Mac OS X boxes – I’ve never actually used Windows for this task. I can successfully import and export books to the Reader, using calibre.

So, why a Sony Reader rather than an Amazon Kindle? Simply, it boils down to availability. I don’t live in the United States, and Amazon tells me I can’t get myself a Kindle. I’d love one – the ability to buy a few books at 3am, to peruse on a topic I’m interested in? That sort of thing is priceless. I don’t even care about the DRM that they impose, the fact that they can come in and delete my purchases. Its the convenience that matters (beats going down to Borders the next day, finding I might have to wait for a title, etc.).

That aside, I also do not buy books that have been inflicted with DRM, from Sony. I’ve been burned once before – when the Palm Pilot’s were the craze around ~1998, I did buy a few titles. Last I checked, I can’t access them anymore, and for the life of me, I don’t own a Palm device capable of reading that stuff.

What do I read? PDF’s, mostly. Of books, of course. Today, O’Reilly’s Safari Bookshelf is really useful. For about 10 tokens, I usually can download a whole book. I’ve been doing this from time to time over the years, and now, instead of reading them on my workstation, I read them on the Sony Reader. Apress isn’t far behind, as most of their books have PDF versions to boot. So my technical reading material is covered.

calibre also allows me to read bundles of Newsweek, The Economist, and the like. I used to use this, but I tend to visit a library once a week once, at least, and end up reading the dead tree copies that are there. Reading fiction and non-fiction is admittedly harder – author/publisher buy-in is very sparse, and I’m sure I’ll have better luck with the Kindle here.

What don’t I like about the device? There’s no backlight. I’d like to read in the dark sometimes, and having lighting is inconvenient, so it would be great if it were backlit. While I can bookmark pages, I cannot highlight text, or even write notes about what I’m reading, inside the Sony Reader. In contrast, if I use the iPhone/iPod Touch to read a book, I get a nice backlight, and I can copy text out, as well as make notes in the notepad. Of course, I don’t get 7,500 page turns on such a device, but if I can squeeze about 20 hours of reading off any device, I’d be pretty happy (think: long flight).

Text from PDFs can be a bit too small. They don’t seem to use up all of the available space, which is truly annoying. Zoom options are available, but there are only two supported sizes: S or M. M makes for easier reading, but I wish it took up more of the device. I’d rather have more page turns, than bad eyes over the years!

Currently on the device (I purged everything from before, just becausedisclosure: most links below go to amazon.com and are part of their affiliate programme):

Two of the above are author released PDFs, while one is from O’Reilly’s Safari Bookshelf and the other an outright purchase from Apress.

Would I recommend one? Sure. If you like reading, have a tonne of PDF’s in ~/Downloads, its about time you got yourself a Sony Reader. Would I recommend one if you already have an iPhone/iPod Touch? Sure (I have an iPod Touch, too!). I think they’re two different devices, and its not time to converge them just yet (maybe, if the iPod Touch had a bigger screen).

Do you have an e-book reader? Where are you getting your fix of content?

Related posts:

  1. O’Reilly to offer DRM-free ebooks…
  2. Feed reading – Liferea, Google Reader
  3. Books: The Art of the Start, The Logic of Life, Blink



On breastfeeding

I don't intend to post a lot of parenting stuff here, but I wanted to make some notes about breastfeeding activism ('lactivism') for the geekosphere, as Brenda Wallace has done in talking about her decision to do mixed feeding.

A couple of preparatory notes:

  • The compulsory Mary notice: I am not looking for advice. I am not lacking personally for professional support for my breastfeeding difficulties. It is easier for me to rely on that support than it is to filter through the advice of millions of onlookers. Thank you for your concern!
  • I am a whole week into parenting and have exclusively breastfed to date. I feel quite committed to continuing such to the recommended six months of age and then continue partial breastfeeding for some time thereafter. But. One whole week. And it's been really hard, actually, even with a good supply from me and a good suck from him and fairly good institutional support from my hospital. I've had a middle-of-the-night visit from a locum already to treat mastitis. One whole week. I'm not here to tell you how easy it is.
  • I do not have personal experience of feeding-related persecution or even hassles. (I've hardly left the house, I could be not feeding him at all and no one would hassle me.)
  • I really do not mind about your feeding choices for your infant or child, in the sense of exclusive breastfeeding, mixed feeding or exclusive formula. The hassling in the street goes both ways, and in many areas (especially, I gather, the US) the hassling from medical staff sure runs both ways too. I am generally uninterested in person-to-person shame advocacy. More on this later. It's demeaning, insulting and counterproductive. Lose, lose, lose. Feed your baby, I'll feed mine, who am I to tell you how?
  • Purely as a terminology thing, formula feeding is not the same as bottle feeding: you can put human milk in bottles and many people do so. (It's not functionally equivalent to breastfeeding though, because it's harder to establish and maintain supply, and the correct handling of the bottles is a nuisance as Brenda notes.)

So, why lactivism, a kind of 101:

Consider areas without safe water supplies, that is, most of the world (and this includes major cities of Western nations in the immediate aftermath of a disaster, New Orleans was an example). Formula feeding, or anything other than extended exclusive breastfeeding, is really really dangerous without a safe water supply. Gastric illness kills babies. Lots and lots and lots of babies, many of whom would not have died if exclusively breastfed. Unless there's a safe water supply mothers with HIV are currently encouraged to exclusively breastfeed, as the risk of the baby contracting HIV is less than the risk of her or him dying of gastric illness related to substitution.

There are several problems with promotion of formula in such areas, or any economically disadvantaged area, a non-exhaustive list includes:

  1. correct preparation of infant formula, including sterilisation of bottles and correct dosages is not trivial and not always (I suspect, not even often) communicated in a manner appropriate to, for example, illiterate people or even people literate 'only' in their local language
  2. correct preparation of infant formula is expensive
  3. weaning to formula creates dependency on the product, or at least on milk substitutes: women can restore their own milk supplies (at least sometimes?) some time after weaning to formula, but it's not especially easy. Without support they're stuck with a major hole in the household budget, or with dangerous feeding, ie, watered down formula or homemade milk-ish substances.
  4. Per lauredhel here, for many women exclusive breastfeeding is the only reliable contraceptive they have access to (exclusive breastfeeding on demand is more reliable than you've been led to believe as a contraceptive) and the use of formula therefore imposes a potential burden of very closely spaced pregnancies.

Right upfront I'll note that I am far from the most ethical consumer in the world, I have not a shred of pedestal to proclaim from. But. Formula producers are involved in aggressive marketing in exactly these circumstances, in addition to marketing to new mothers in the Western context who are in the often difficult phase of establishing their desired breastfeeding relationship. I'll note again that in a Western context and in a proclaimed pro-breastfeeding medical environment, I have found aspects of establishing nursing hard. Really hard. If I'd had formula in the house last night it would have been very likely to have been used. (Again, not that there's anything wrong with that morally, but as a practical matter supplementing is not exactly helpful in further establishing nursing. Or for that matter in dealing with mastitis.)

So, I support very strong institutional focus on establishing breastfeeding in Western countries, and particularly strongly oppose marketing attempts to establish formula feeding as desirable in developing countries. That is my lactivism.

Now to the horrible shaming mothers thing. This sucks. My take on it is that it is two way, like a lot of Mummy Wars. Damned if you do, damned if you don't. Telling formula feeding mothers that every breastfeeder [is] a better mother than any formula-feeder? Spew. Using the power of the state against breastfeeding mothers? Unspeakable.

I only wish Chez Miscarriage had left her archives up about (some) reproductive choices: no kids? selfish non-Mummy. biological kids? selfish narcissistic eco-raider Mummy. ART biological kids? selfish rich narcissistic eco-raider Mummy. adopted kids? selfish, also rich, Mummy. etc. (Incidentally, re reproductive choice, go be challenged, you'll gain more there than here.) None of that is the argument I want to have or the people I want to have it with.

Interactive git add

I’ve been using git a lot more (its become my personal favourite; though on a daily basis I have to context switch between Bazaar and SVN as well – glad that I’ve stopped using CVS and BitKeeper) and am really liking it. Recently, I found out that git add has an interactive mode!

You can add a whole bunch of files real easily. Ditto with reverting changes. You can also add certain lines of a file (this is seriously useful).

Go give git add -i a twirl. Any other good git tips?

Related posts:

  1. Interactive Application Development for IPTV
  2. VoodooPad Lite
  3. Shared source?



Linux.Conf.Au - Day Four

City to Sea Bridge

Day four of the conference opened with a keynote entitiled “Hackers at the End of the World” by Glyn Moody. Glyn explored the history of sharing in science and art as inspired by the open source movement, and contrasted this with the anti-sharing ‘my gain is your loss’ culture of the global financial community. Glyn postulated that the sharing and indeed sharing of sharing that characterises the FOSS community held a tantalising glimpse of a solution to the global financial and environmental crisis.

Glyn Moody

Jeremy Allison brought forward an extremely provocative look at Microsoft’s overtures to the open source community with “The Elephant in the Room - Microsoft and Free Software”. Jeremy took the audience through Microsoft’s duality in recent times in attempting to reconsile with the open source community at the same time working against them in the political and regulartory arena.

Jonathan Oxer delighted attendees with a talk on “Tux on the Moon”, showcasing the Lunar Numbat project and it’s efforts to partner with the Google Lunar X-Prize team White Label Space to “… put a Linux powered robotic Australian marsupial on the moon”.

The day was concluded by a Professional Delegates Networking Session at the Wellington Opera House. The final day of the conference will open with a short keynote by Nat Torkington and a series of lightning talks, with the conference Penguin dinner closing the evening activities.

Linux.Conf.Au - Day Three

Waterfront

The glorious weather that had punctuated the first two days of the conference held, heralding in the third day in a blaze of sunshine. The conference proper was introduced by a keynote by Benjamin Mako Hill on Antifeatures: Why your software works against you and why software freedom offers hope of a better future. Mako explored the concept of anti-features as deliberately included functionality or a lack of functionality that users hate so much they will pay to have them removed. Some classic examples included the gator spyware that was included with free version of p2p software on the windows platform - with a spyware-free version available for a fee.

Mako took the audience through why anti-features exist to further profits, and showed how in an environment dominated by free and open software they would be unable to survive.

Keynote

Fowllowing the keynote session, Jonathan Corbet gave his traditional Kernel Report, covering major milestones in kernel development since last year’s conference, and addressing the challenges the kernel development team face in the year to time. Those of us with massively parallel-processing netbooks will be pleased to know the Linux kernel now scales to 4096 cpus.

Matthew Carretts talk on social Success in (and for) the Linux community covered many of the reasons that the Linux community can be a hostile and toxic place for new contributers to enter. He covered how aggressive and confrontational behaviour is rewarded and how as a community Linux will need to learn to welcome and retain new members.

As comic relief I caught Paul Fenwick’s engaging presentation on the World’s Worst Inventions. Covering such gems as cocaine cough-drop marketed to children and the recent children’s bead product that metabolised to GHB when ingested, Paul went through a few hundred years of misguided and downright dangerous inventions.

The fourth day of the conference will feature a keynote by Glyn Moody, provocatively titled ‘Hackers at the End of the World’, and also the Professional Delegates Networking session.

DistroSummit 2010

Linux.conf.au 2010 has come to an end and I am looking back at an intense week of conferencing. A big shout out to the organisers for their excellent work. I think LCA (as well as DebConf) just keeps getting better every year. This does not at all discredit previous organisers, because they were the best at their times and then passed on the wisdom and experience to help make it even better in the following year.

The week started off with the DistroSummit, which Fabio and I organised. Slides are forthcoming, as I failed to get them off the speakers right after their talks — it’s interesting how stress levels and adrenaline can cause one to forget the most obvious things. This is where experience comes in. I’ll be there again next year, I hope, to do things better.

The theme of the day was cross-distro collaboration, and we started the day a little bit on the Debian-side with Lucas Nussbaum telling us about quality assurance in Debian, alongside an overview of available resources. We hoped to give people from other distros pointers, and solicit feedback that would enable us to tie quality assurance closer together.

Next up was Bdale Garbee who talked about the status of the Linux Standard Base. While I am really interested in such standardisation efforts, I realised during his talks that I had considerable difficulties paying attention because as organiser of the conference, I had all sorts of other things occupying my thoughts.

I proceeded to tell the audience — the room was mostly filled throughout the day with an estimated 40–50 folks, and I’d say about half of them stayed throughout, while the other half came in and left the room between talks. I could not get the projector to work with my laptop after the upgrade to Kernel Mode Setting, and thus used the whiteboard to give a brief introduction to vcs-pkg.org, talk about the current state of affairs, summarise the trends in discussions around patch management and collaboration, give an outlook of what’s up next, and solicit some discussion.

Sadly, just like during Bdale’s talk, I found myself worrying over the organisation of the day, rather than actually taking in most of the discussion. Fortunately, others have written about the most important points, so I defer to them.

Michael Homer then told us about GoboLinux’s Aliens system, which is a way to integrate domain-specific packages with distro-specific package maintenance — e.g. how to get APT to handle CPAN directly, or how to let YUM manage Python packages. The ensuing discussion was interesting, and we carried it over to the next slot, because Scott, the next speaker, was stuck in traffic. To summarise briefly: scripting languages have a lot of NIH-style solutions because it works for them, but these are a nightmare to distro packagers. One symptom of the status quo is that complex software packages like Zimbra are forced to distribute all required components in their installation packages, which make distro packaging, quality assurance, and security support even harder. I don’t think we found a solution, other than the need for further standardisation (like the LSB), but the road seems to be a long and windy one.

Laszlo Peter introduced the audience to SourceJuicer, a new build system used by OpenSolaris. The idea is that contributors submit packages via a web interface, kicking off a workflow incorporating discussion and vetting, and only after changes have been signed-off are packages forwarded to auto-builders and eventually end up in the package repository. This is very similar to upload ideas I’ve had a while ago, which I’ve started to (finally) implement. Unfortunately, SourceJuicer seems very specific to OpenSolaris, as well as non-modular, so that I probably won’t be able to reuse e.g. the web interface on top of a Debian-specific package builder.

After the break, Dustin Kirkland stepped up to tell us about his user experience of Launchpad. Unfortunately, I found his talk a bit too enthusiastic. Launchpad undoubtedly has some very cool features and ideas, but it’s just one of the available solutions.

The dicussion of Launchpad also dominated the next talk, in which Lucas Nussbaum told us about the Debian-Ubuntu relationship. While his presentation showed that the relationship was improving (Matt Zimmerman made the point that there are rather many relationships, rather than one relationship), I was a bit disturbed by the comments of Launchpad developers in the room, ranging from “Debian is declining anyway” to “Just use Launchpad if you want to collaborate with others and not go down”. There was a slight aura of arrogance in their comments which tainted my experience of the otherwise constructive discussions of the day.

Overall I had a great time. Debian and Ubuntu made up the vast majority of attendants, with only a handful of representatives from other distros present. I wonder why that would be. One reason might be that around 70% of LCA attendants declared themselves Debian or Ubuntu users, and so there weren’t many other distros around. Another might be that I still haven’t spread the word enough. Let’s hope to do better next year!

Thanks to all the speakers. We may have organised the day, but you made it happen and interesting!

Slides and recordings of the talks will be linked from the archived website when they become available (yes, the archive page does not exist yet either).

Update: Jelmer informed me that the people who spoke up against Debian during and after the Launchpad talk were not officially affiliated with Launchpad. It’s a shame that this negatively reflected upon Launchpad for some of the attendees (not just myself).

January 26, 2010

Last chances to submit your MySQL Conference talk!

The O’Reilly MySQL Conference & Expo 2010 will be closing the Call for Participation at the end of the 27th January 2010. You have less than 48-hours – so get submitting already.

Take a gander at some of the shortlisted presentations, look at all the amazing tutorials, and what’s keeping you waiting from registering?

Related posts:

  1. o’reilly mysql conference & expo 2010
  2. A little MySQL Conference & Expo 2009 update
  3. Just registered for the MySQL Conference & Expo 2008



Australia Day Fireworks

[Fireworks] This evening Chiz, Hikari and I went down to Darling Harbour to watch the Australia Day Fireworks. Although there were rather a lot of people down there we managed to find a good vantage point. Close enough to be impressed by the show. Much to my surprise I managed to take some reasonable snaps of the show. Photos here.

Tutorial on HTML5 open video at LCA 2010

During last week’s LCA, Jan Gerber, Michael Dale and I gave a 3 hour tutorial on how to publish HTML5 video in an open format.

We basically taught people how to create and publish Ogg Theora video in HTML5 Web pages and how to make them work across browsers, including much of the available tools and libraries. We’re hoping that some people will have learnt enough to include modules in CMSes such as Drupal, Joomla and Wordpress, which will easily support the publishing of Ogg Theora.

I have been asked to share the material that we used. It consists of:

Note that if you would like to walk through the exercises, you should install the following software beforehand:

You might need to look for packages of your favourite OS (e.g. Windows or Mac, Ubuntu or Debian).

The exercises include:

  • creating a Ogg video from an editor
  • transcoding a video using http://firefogg.org/
  • creating a poster image using OggThumb
  • writing a first HTML5 video Web page with Ogg Theora
  • publishing it on a Web Server, with correct MIME type & Duration hint
  • writing a second HTML5 video Web page with Ogg Theora & MP4 to cover Safari/Webkit
  • transcoding using ffmpeg2theora in a script
  • writing a third HTML5 video Web page with Cortado fallback
  • writing a fourth Web page using “Video for Everybody”
  • writing a fifth Web page using “mwEmbed”
  • writing a sixth Web page using firefogg for transcoding before upload
  • and a seventh one with a progress bar
  • encoding srt subtitles into an Ogg Kate track
  • writing an eighth Web page using cortado to display the Ogg Kate track

For those that would like to see the slides here immediately, a special flash embed:

Enjoy!

January 25, 2010

Vodafone intransparency

Coming to New Zealand for an extended period of time, I figured it would make sense to purchase a prepay mobile plan to make it easier to mix with locals. Not knowing better, I went with Vodafone, which I whole-heartedly regret: their website is a massive pain in the ass, their price plans completely over the top, and their customer service representative incompetent and unfriendly.

My latest experience eclipsed all previous encounters, and makes me want to tell you about it:

Between all the obscure add-ons Vodafone threw at me when I bought this SIM card, two weeks ago I couldn’t figure out how my balance had decreased from $30 to $0 when I rarely ever made calls.

I wrote an e-mail to their customer service hotline, and it took them a week to get back to me, with the following text:

Due to being a Prepay Customer, unfortunately usage details are not available as per terms and conditions. I have although checked your usage and can confirm that all charges are correct.

Obviously, I wasn’t going to accept this claim of omniscience, so when last weekend, $20 disappeared over the course of a day, that was the catalyst for me to reopen the ticket and reply along the lines of:

Only I know when I used my phone and thus only I can determine whether the charges are correct. Please show the full records to me, or else …

This seemed to convince the representative, and 8 messages and 11 days after my initial request, I was told I could request the records at $5/30 records. Yes, you read that right: they wanted to charge me to view the records. I thus replied:

I am NOT willing to pay for that. If you are unable to comply with my desire for transparency, then I shall terminate the contract and make sure to inform the media as well as the consumer institute of this conduct. As stated previously, I shall also consult with a lawyer. Charging consumers to view data that is obviously available is a strong indication that you do not want me to see it. I can’t imaging why this would be the case other than the data being inconsistent with reality.

That worked, and I finally got an Excel sheet with my usage data, which allowed me to track down the depletion of my account: to lure customers in, they promise free calls to other Vodafone numbers for the first four weekends. There are three problems with that though:

  1. Having purchased my card on Saturday afternoon, I was annoyed to find out that the remaining 34 hours of that weekend would be counted as a whole weekend.

  2. They don’t provide a way by which to find out whether a given number actually belongs to Vodafone or not. The 021 prefix is not enough of an indication.

  3. They don’t actually tell you anywhere but the aforementioned horrific website that the addon has expired.

So thanks, Vodafone. You’ve lost a customer, who should have gone with 2degrees in the first place, who have much lower rates, even though their data coverage doesn’t seem as good. I don’t need data anyway.

I’ll still insist on Vodafone providing the data in a Free format.

You can find more information about NZ mobile phone providers on the LCA2010 wiki page.

NP: Age Pryor: Shank’s Pony

January 24, 2010

Plush Pizza: the most fabulous-est pizza in Melbourne?

Since going vegan, shop-bought pizza has been a bit of a hit-and-miss affair. There are lots of places that do vegetarian and vegan pizza, but none so far have been super great. Last night everything changed with a visit to Plush Pizza.



satay pizza and ben's special at plush pizza

why yes, that is a satay pizza


I wish we were going back there tonight. Trust me when I say I will be finding an excuse to return soon. The only downside is that it's a little tiny bit expensive, also that it's on the other side of town.



Saw this on the train to North Richmond today:



vegan




As always: recent food we've nommed.

January 22, 2010

Wenches for Winching and Rusty Russell in Bidding War

WELLINGTON, New Zealand – Friday 22 January 2010 – "Wenches for Winching" and Rusty Russell in a bidding war for top prize at the charity fundraiser for linux.conf.au.

During the charity fundraiser at the LCA2010 Penguin Dinner, two charity syndicates emerged in a battle for the top prize - four people will be flown from the Life Flight Trust base in Wellington airport to a coastal training site where they will be winched from the chopper to the ground and up again all on an 8mm steel cable.

To support your syndicate remotely, visit the donation page and help support a great cause.

Wellington Harbour

I sat by the water for half an hour just making sure my camera wasn't about to blow off its "tripod" (a boat anchor thingy).







(here for PLOA viewers; and the video has been updated to make it look like I can hold the camera level. I must have tilted eyes)



Linuxconf has been ace.



And New Zealand coffee punches you in the face in such a nice and friendly manner.

LCA2010 Announces Photographic Competition Finalists

LCA2010 are proud to announce the 20 finalists for the Photographic Competition. With the aim of getting out and about Wellington city, delegates took photos from 4 different quadrants, unique to a different style of culture - Courtenay, Cuba, Waterfront and Lambton. All photos are licensed under a Creative Commons license.

{{slideshow:photo-finalists}}

Courtenay

  • Dustin Kirkland (x2)
  • Jes Fraser
  • Tim Potter
  • William Gordon

Cuba

  • Jes Fraser
  • Chris Neugebauer
  • Evan Goldenberg
  • Nick Clifford
  • Tim Pokorny

Waterfront

  • Gopal Vijayaraghavan
  • Mike Beattie
  • Sara Falamaki
  • Evan Goldenberg
  • Tim Renouf

Lambton

  • Tim Potter
  • Evan Goldenberg (x2)
  • Gopal Vijayaraghavan
  • Sara Falamaki

January 21, 2010

Interview by Marcus Schappi of Little Bird

Right after the Arduino Miniconf ended Marcus Schappi of Little Bird Electronics trapped Hugh and I in a corner and asked us a few questions.



Arduino Miniconf at LCA2010

Wow, it's all over! The Arduino Miniconf at LCA2010 was a blur of craziness but I had an absolute blast. It was the most fun conference event I've been to in, well, ever.



It started with a hardware assembly session to give all the software geeks a chance to use a soldering iron (some for the very first time) and build their own Pebble shield.









By lunchtime about 30 people had finished assembling their boards, and there were a lot of happy hackers around when they powered up their Arduino and got messages up on the LCD.









Both Vik Olliver and Patrick Herd brought along RepRaps to entertain the crowd. The morning assembly session and the early-afternoon "Introduction to the Pebble" sessions were run by Andy Gelme (seen in the white T-shirt and blue cap with his back to the camera above) who did an awesome job, and he was followed by a great line-up of speakers. A big thankyou to those who spoke at the miniconf:

  • Andy Gelme

  • Justin Mclean

  • Philip Lindsay

  • Peter Chubb

  • Nathan Seidle

  • Vik Olliver

  • Marcus Schappi


Truly a 5-star line-up, and with a great range of interesting topics that sparked lively discussion.



Thanks also to all the helpers: the reason the hardware session worked out so well was that we had about 16 experienced people willing and able to give their own time to help out those with less experience. We ended up with a helper:participant ratio of about 1:2 and paired up participants, so every pair had at least one helper and nobody was left floundering around on their own.



Two participants got minor solder burns (not enough to need proper first aid, more of the "ow, that hurt!" variety) so to make it up to them they both received prizes. Speaking of which, we were lucky enough to have Apress provide a few copies of Practical Arduino and Nice Gear provide vouchers for two Duemilanoves and a pair of XBee modules, which we then distributed to participants.



There are a bunch of other people who contributed to the success of the Miniconf including many members of Connected Community Hackerspace in Melbourne who pre-assembled many of the hardware packs. Mitch Davis, in particular, chased down cheap deals on parts so we could make it as cheap as possible for everyone to take part.



Finally, but perhaps most importantly of all, a big thankyou to Luke Weston who put in so much work preparing the Pebble hardware and then didn't even get to attend the Miniconf. The Pebble PCB is his design, and while everyone at the Miniconf in Wellington was having fun assembling his creation he was sitting in Melbourne watching it on a live stream and wishing he was there.



Luke, your efforts are greatly appreciated by a lot of people.



I'll follow up later with links to slides and other resources for the various talks delivered during the Miniconf.

LCA2010 – Day 4

I ended up staying up quite late on Wednesday night so I was a little zonked out on thursday morning.

Keynote – Glyn Moody

  • Interviewed people for “rebel code” , found free software people “very nice” even compared to other people in computer industry
  • arXiv.org setup week before Linux kernel first released (Aug 1991)
  • Overview of public Library of science
  • Human Gnome project – DNA inherently digital
  • Bermuda Principles – finished annotated sequences submitted to public database
  • Jim Kent published and got full human gnome into public domain a short time before Celera finished their work and could have patented everything.
  • open data – data is not published just results – example of recent climate data being released, not a big problem if it had already been in public.
  • open notebook , reqular updates on progress
  • http://en.wikipedia.org/wiki/OpenNotebookScience
  • History of sharing art – Project Gutenbery 1971  .10 books 1991 , 1000 in 1997.
  • Various free licenses slightly incompatible , hard to convert between, took several goes to get licences correct
  • wikipedia – easy not programmer example of sharing tht people can understand – “open source is wikipedia for code”
  • Open government is more “Shared Source Government” rather than “Open Source Government”
  • Global economic crisis – tragedy of the commons
  • At least the Financial crisis has some winners
  • Very anti financial system, suggest more  “open source” options and commons
  • “if you share stuff you are destrying property, you are taking jobs away from the poor people” – How the debate is being framed
It was noted by one person that this year’s keynotes are more “Freedom” and “High tech”.

Lindsay Holmwood – Flapjack and Monitoring

  • Check – unit test – good bad ugly
  • Monitoring system – monitors for failing checks
  • 3 questions for monitoring systems – next check? , was check okay?, who do we notify? . Fetch , test , notify
  • fetch – lookup
  • test – execute , verify
  • notify – decide , callout
  • traditionally done in single process
  • but it’s an embarrassingly parallel problem
  • parts can be split. fetch+test fetch+notify – pass id/command between
  • precompile checks – so fetch is less expensive
  • transport between processes is the scheduler
  • no data collection when testing (graph seperately)
  • scheduler – workqueue – filled by populator, assigns stuff to notifier and workers
  • Lots of workers can be created (to do test)
  • flapjack – in ruby , talks to nagios plugin format
  • beanstalk – ansyncrnise workqueue service – ubuntu/debian packages
  • beanstalk – producer  puts jobs on beanstalk , consumer takes jobs off
  • uses named tubes (queues) , multiple tubes per instance
  • flapjack-worker – started up by flapjack-worker-manager starts multiple copies on machine. various control commands
  • worker is simple so linear scaling, spread across multiple machines required
  • flapjck-notifier – has manager to start it.
  • notifier has recipients.conf file with list of people to notify
  • notifier.conf – config for various notifiers (MAIL, SMS)
  • APIs – notifiers, filters, systems
  • notifier API – who , when and how sort of stuff.
  • “how many here use puppet – about a dozen – How many use Chef? – none “thanks a shame” “no it’s not”
  • persistence API – store stuff , mysql, couchdb whatever, standard way to store data.
  • filter API – parent checks hierarchy (so don’t check ports if host down)
  • flapjack-admin – pending – nodes , check templates , checks (check template + node ) , batches (group of checks)
  • 3 types of checks
  • Gaugaes – stuff within range – collectd ( point flapjack at collected output )
  • Behavoural tests – cucumber-nagios
  • Trending – reconoiter – growing area
  • collectd – gets stats from anything – nagios bridge – collectd-nagios queries collectd data
  • collectd client – gathers data from node and sends to collectd server
  • collectd forwarding server – agregates, filters and forwards
  • falapjack – crrently gems, soon to be real packages
  • http://flapjack-project.com
Bob Edward – Yubikey authentication in a mid-sized organisation
  • Reusable passwords are dead , hard to remeber, something you know which can be shared and discovered, captured, guessed
  • Alternative – One time Passwords – doesn’t matter if captured.
  • examples – RSA keys, SMS based systems, Yubikey, 2 factor authentication
  • Created by Yubico in sweden, open-source
  • Looks like a USB keyboard to a computer, generates a 44 character OTP each time button is pressed. No batteries, 2st 23 characters fixed for each key
  • $12 each in volumn – $40 as one-off
  • Based on secret AES 128-bit key
  • Yubicoships yubikeys with pre-generated IDs and AES keys. Offer publicauthentication, they know secret 128-bit key, need to trust them
  • secret-id+sess+timestamp+session+rand+CRC  string created by key , then encrypted and public ID prepended.
  • Server decrypts , checks checksums and looks to make sure secret-id matches and session and timestamps are incrimented from previous values.
  • Unless you trust and always want to use Yubicom’s servers you should reprogram you keys with your own keys and IDs. Can’t then be used against Yubicom’s server.
  • weaknesses – requires computer with usb port that accepts usb keyboard – some bugs with 1st generation keys – unused generated keys remian live until the next valid key is used
  • You can run your own server fairly easily – ykaserver – various interfaces, postgress database for storage – can also call out to PAM for two-factor authentication
  • softykey – software Yubikey – can use to generate 1-time pad for stuff without usb keyboard interfaces
  • Tested with ssh, VPNs , web logins – mostly use PAM or LDAP method
  • See Linux Journal and yubico.com
vimperator – automatic launch prog for netbooks

Jan Schmidt – Towards GStreamer 1.0

  • History of dev, faster bits during hackfests, when switched to git etc
  • Overview of last year, switched to git, slowdown when people busyswitched to binary registry
  • Support for various DVD playback  functions, special subtitles etc.
  • I’m not really in this area so I was just listening to get an idea where things are going. A bit too much detail for me at times.
Adam Jackson – The rebirth of Xinerama
  • Once again this was a bit over my head. It does look like the X guys spend a lot of time fighting assumptions built into the protocol and code 10 years ago however.
Stewart Smith et al – Building a Database kernel with Lego Like parts (Drizzle)
  • What would you change about Mysql – Modular architecture
  • Some crazy legacysuff in the Mysql code – good oppertunity to clean
  • move alot of code out of core, especially option parts – understandable and to reduce load – don’t load if you don’t need
  • more code coverage with tests
  • plugin interfaces – protocols, replication , logging, etc
  • modular replication system
  • general refactoring of storage engines
  • “If part of API sucks then fix API rather than work around it”
  • New this week – rot13() powerful encryption
  • Authentication plugins – authpam , authhttp
  • Various Logging plugins – loggingquery , loggingsyslog
  • Drizzle Community – All contributors equally – All project information public – No contributor license agreeements – Release early and often (~2 weeks ) – 100+ contributors , 500+ on mailing list
  • Milestone releases
  • When production release? – waiting to solidfy compatability – Sounds like a few months. – Reliable but still in flux
  • Pacakages to be pushed out to dists once things stable
Afterwards I had some dinner and went to the Professional Deligates networking session.

Linux.conf.au - Day Two

cuba!

First published on LinuxJournal.com

The second day of the conference dawned just as bright and sunny as the first. The opening keynote was delivered by Gabriella Coleman, Assistant Professor of Media, Culture, and Communication at New York University. She spoke on the history of the FOSS movement as birthed by Richard Stallman and it’s paradoxical growth during the same period that governments and corporate bodies were pushing their agenda for stronger IP and copyright control. Gabriella took the audience through the wrangling that forever forced the FOSS community into the political arena and created the biggest threat to the traditional concept of IP that exists today.

Gabriella Coleman

Tuesday is traditionally the second day of miniconfs at LCA, with the lineup including:

System Administration Miniconf

Bridging the gap

Open and the Public Sector

Education Miniconf

Data Storage and Retrieval Miniconf

Multicore and Parallel Computing Miniconf

Multimedia Miniconf

For me, the highlight of the day was the talk by Paul Gunn of Weta Digital, who explored the ‘Challenges in Data Centre Growth’ inherent in the demanding task of rendering movie frames. With some limited personal knowledge of the makeup of the infamous Weta render farm, it was fascinating to get a closer look.

This year, Linux.conf.au is hosting a photography competition for delegates and speakers, with four sections breaking the stunning Wellington city sights into quadrants. Entries are accepted for Lambton, Cuba, Courtenay and the Waterfront, roughly delimiting four areas of interest in Wellington’s compact CBD.

The first round of competition entries have been judged with the finalists announced - disclaimer, I was one of them - you’ll all just have to believe me that I intended to mention the competition before I knew!

The first round of finalists were:

Dustin Kirkland

Tim Potter

William Gordon

Jes Fraser

With Dustin Kirkland having entered two winning entries.

Day 3 will usher in the conference proper, starting with a keynote by Benjamin Mako Hill.

[lca] Midnight Espresso is awesome

Tony had been telling me for a while that he was really looking forward to returning to Wellington to go to Midnight Espresso, his favourite cafe in a town which is famous for a good cafe culture, he also hinted I may like it a lot. There does not appear to be a website, however details are on a few review sites.

I am impressed, though not vegetarian only they do have an extensive Vegetarian (and Vegan friendly) menu with some great food. All the cakes they have for sale are Vegan and their coffee is indeed excellent. This cafe is almost worth the trip to Wellington alone. If you are anywhere near Cuba street, or really I think if you are any where near New Zealand pop on over and visit this cafe. Maybe it is because I do not have the variety of Veggie friendly places to eat that is found in Melbourne, or maybe it is because this is a great place to hang out. Anyway with the fun mountain biking and linux.conf.au here this week it would be silly not to come and now I know of another good reason to visit Wellington. Thanks Tony.

January 20, 2010

[lca] My notes from the first day of lca (Miniconf day 1)

I have written 34 pages of notes (in the a5 conference notebook) in the three days (2 days miniconfs, 1 day main conference) so far, however as my hand writing closely resembles and encryption standard I had better get them transcribed into the computer reasonably soon (before I completely forget how to decipher what I scrawled on paper). So I have just typed up the notes I took (9 a5 pages worth of my hand writing) from the first day of lca (miniconf day 1) and put it here in plain text.

I probably should put them directly up here but am not in the mood to add html formatting to the notes at the moment. Great stuff so far, I will see if I can find time to transcribe another day or two tomorrow.

LCA2010 – Day 3

Wednesday is the first day of Linux.conf.au proper. I thought that today I’d just keep my notes in a blog post to prevent doubling up.

The keynote was Benjamin Mako Hill talked about various things the most interesting bit was “antifeatures”. Things like DRM, crippling of products etc. The one of these I most hate right now is they way that cheap netbooks have fairly low specs (small resolutions, low RAM, slow CPUs ) partially because they have to keep the spec below a certain value in order to qualify for the really cheap Windows license.

The dreamwidth talk was quiet interesting (although the speakers pre-rehearsed banter between the speakers didn’t really work). Lots of practical examples , war stories and good sound advice.

Selena Deckelmann talked about choosing which open source database your should choose. The quick answer is “what problem are your trying to solve?”. She did a survey of the 50-odd databases out there and got 25 replies. Also did her own research and comparisons. Classified DBs into several categories (which I won’t list) such as

  • General Model – Key-Value, OLTP.
  • Distribution model (replication, partitioning, sharing).
  • Memory vs disk (eg keegin g everything in memory only like memcached).
  • HA options, Node failover.
  • Code dev model – Core +modules , Monolithic , Infrastructure
  • Community dev model – Dictator, Feature driven, Small group, A mix
Results at http://ossdbsurvey.org
  • Databases implement each others protocols
  • Need verification that protocols correctly implimented
  • Need tools/test to check things like replication working
  • More connections between projects/people (eg java seperate)
Ted Ts’o – Production-Ready filesystems
  • Hard to make robust. Many different workloads, lots of state, very parallel
  • Hard to balance getting it out with getting it stable enough to be fairly safe to use
  • 75-100 persons-years for filesystem to be production ready.
  • eg zfs around a dozen people , start 2001, announced 2005, shipped 2006, people confident with it around 2008-2009
  • Ext4 renamed from ext4dev at end 2008
  • Ext4 Shipping is some community distributions, soon in some enterprise distributions, widespread adoption 12+ months later
  • Lots of bugfixes still in ext4, most not real-world and picked up by auto-tools or careful checks in weird conditions.
  • Ted: “my other prefered term for Dbench is ‘random number generator’ “
  • Paths like online resize, online defrag that are not regularly tested by users or testers so source of many bugs.
  • Many bugs were in the recently subsystems and features
  • Making General purpose file system takes longer and a lot more effort than you might expect. Labour of love, hard to justify from business perspective.
  • Solid state drives with “flash translation layer” in place are fairly much the same as spinning disks. Extra optimizations for disks don’t help but they don’t hurt
Matthew Garrett on the Linux community
  • Started by listing things he’s not talked about
  • The Linux community is “Like the Koreas”
  • To be a member of the Linux community “you just have to care, just have to turn”
  • As community we are very hostile, it’s seen okay to flame and it is being rewarded still
  • Should we stop just cause it’s a nice thing to do or because it’ll stop scaring people off?
  • Ubuntu code of conduct has mean’t that users are consider part of the community more than in other distributions
  • Code of Conduct must be enforced or it’s useless
  • “We value code above all else… not a good thing” . We need people to feel that by using software they are part of something
  • Communty entirely based on technical excellence or encompasing everybody who users, cares, contributes to projects
  • Idea for positive examples Wiki with pointers to COPs and best practice examples
  • Not gained behavior standards normally associated with grown communities
Sage Weil – ceph distributed file system
  • How different
  • scaleable to 1000s , grow from a few
  • reliable, HA, replicated data, fast recovery
  • snapshots, quota-like accounting
  • Motivation – avoid bottlenecks and symetrical shared disks
  • avoid manual workload partition, p3p-like protocols, intell storage agents
  • POSIX file system , scaleable metadata server
  • metadata (MDS) servers/clusters and object store boxes seperate
  • CRUSH hash function used to distrubtute objects across devices, works as devices are added. Spread them out explicitly across infrastructure if required
  • fast (no lookups), relieable, stable
  • celp object storage daemon on each node
  • talks to peers on other node: rep data, detect failures, migrate data
  • hashing fuction means nodes don’t have to negotiate with each other, CRUSH says where data is going.
  • monitor storage nodes, moves data around, make sure it’s in the right places, uptodate. fixes if required.
  • raw storage API if you don’t need full filesystem fun (dirs etc)
  • proxy that emulates s3 REST interface
  • metadata cluster , uses object store for all long term storage, needs memory and fast network for performance.
  • metadata streamed to journal. large journal (100s MB) flushed now and then
  • snapshotting on per-directory basisi via simple mkdir
  • snapshot leverages btrfs copy-on-write storage layer
  • file systems client near-posix
  • kernel client, FUSE, Hadoop clients
  • stable but not production ready
  • client should be in mainline kernel soon
  • aim to work in multiple datacentre, across unrelieble links
  • http://ceph.newdream.net/
Paul Fenwick – Worlds Worst Inventions

Not really a technical talk. More a few stories about funny inventions. Quiet amusing but I’m not sure it fits in with the rest of the conference.

January 19, 2010

LCA2010 Supports Life Flight Trust as Nominated Charity

WELLINGTON, New Zealand – Monday 18 December 2009 – linux.conf.au 2010 supports Life Flight Trust as Nominated Charity.

LCA2010 delegates are invited to make donations to the Life Flight Trust and be in to win an exclusive once-in-a-lifetime experience on Saturday 23rd January 2010. The highest donor/s will win the grand prize - a trip for four people as honorary crew-members on a helicopter winch training mission!

Delegates can donate as an individual and elect three friends of your choice to come along on this ride, OR enter as four people donating under one group name.

The Ultimate Prize:

Four people will be flown from the Life Flight Trust base in Wellington airport to a coastal training site where they will be winched from the chopper to the ground and up again all on an 8mm steel cable. A unique adrenaline-packed experience that money cannot *usually* buy.

The prize will also include

  • A cooked breakfast by the crew at Life Flight's Air Rescue Centre at Wellington International Airport at 8:00am
  • A safety briefing from the crew
  • Photo opportunity with crew and Westpac Rescue Helicopter
  • Return flights on the Westpac Rescue Helicopter from base to training ground
  • Participating on the winch training exercise

How do I make a donation and be in to win?

Donate with your credit card at http://www.fundraiseonline.co.nz/LCA2010/. All donations are made directly to The Life Flight Trust. Keep a look out around the venue screens for progress on donations. Remember you can donate individually or collaborate with others, and it will take place on Saturday 23 January (See Terms and Conditions for some exceptions).

The winner of this unique opportunity will be the highest donation received by an LCA2010 delegate on 5pm FRIDAY 22 JANUARY 2010, and the winner will be announced at the Penguin Dinner on Friday night, so make sure you include your contact details (including mobile phone number) when you bid so we can arrange your flight. Allow 2 hours for this experience.

LCA2010 team would like to thank those in advance for supporting Life Flight's critical emergency services, and encourage those who could not make LCA2010 this year to donate to them as the LCA2010 nominated charity.

Terms and conditions:

Life Flight is an emergency service. Emergency missions will take priority over the training mission. Due to safety requirements the training mission is also weather dependent, and may need to be postponed if the weather is not suitable or an emergency mission takes priority.

About linux.conf.au

linux.conf.au is one of the world's best conferences for free and open source software! The coming linux.conf.au, LCA2010, will be held at the Wellington Convention Centre in Wellington, New Zealand from Monday 18th January to Saturday 23rd January 2010. LCA2010 is fun, informal and seriously technical, bringing together Free and Open Source developers, users and community champions from around the world. LCA2010 is the second time linux.conf.au has been held in New Zealand, with the first being Dunedin in 2006.

For more information see: http://www.lca2010.org.nz/

About Linux Australia

Linux Australia is the peak body for Linux User Groups (LUGs) around Australia, and as such represents approximately 5000 Australian Linux users and developers. Linux Australia facilitates the organisation of this international Free Software conference in a different Australasian city each year.

For more information see: http://www.linux.org.au/

Emperor Penguin Sponsors

LCA2010 is proud to acknowledge the support of our Emperor Penguin Sponsors, InternetNZ, Google, HP and IBM.

For more information about InternetNZ, see: http://www.internetnz.org.nz/

For more information about Google, see: http://www.google.com/

For more information about HP, see: http://www.hp.com/

For more information about IBM, see: http://www.ibm.com/

[lca] Day two lca finishing off with a great ride



Skyline ride (fullsize)
I noticed yesterday at the finish of the miniconfs I already have 19 pages of notes written in the a5 conference notebook. I now need to find the time to put some of the notes into the computer I think.

Another great miniconf day, I really enjoyed the Weta digital high density computer room design talk. I have uploaded the photos from the ride I did around Skyline (awesome ride around the ridgelines and hills surrounding Wellington) on a Skyline MTB Ride photos page.

Oops, an update, I mentioned to a few people the gps map of the ride would be online, it is here if you wish to see it.

Memcached and tpserver-cpp

At LCA yesterday I sat in on a miniconf presentation on memcached. It has inspired me to rewrite part of tpserver-cpp, to gut the Manager objects and use memcached instead.

But first I needed a library to make using memcached easier. The normal approach for C is to use libmemcached, but using C++ there are a few other options. Consistent with the development direction of tpserver-cpp, I was looking for a C++ library that is using boost, and especially boost::asio. I found two libraries, a better maintained one that doesn't do asynchronous networking and calls (memcache++, and one that does do asynchronous but hasn't been updated in over a year(memcacheasio). So for now, I'm going to use memcache++ with a short timeout, which should give an option of going to async in future.

MySQL with yaSSL vulnerability

It’s worth noting that if you’re using MySQL 5.0/5.1, with SSL enabled, and you’re using yaSSL as opposed to OpenSSL, you’re vulnerable to CVE-2009-4484. Its a buffer overflow, that works over TCP, via the MySQL port, 3306. Lenz furnished us with some information, and the patch is available. You’ll see this rocking when MySQL 5.1.43 gets released.

It affects Debian (presumably, it will also affect Ubuntu). Red Hat/CentOS is spared, because instead of using yaSSL, OpenSSL is used.

MariaDB 5.1.41-rc (based on MySQL 5.1.41) which was just released a few days ago, naturally is also affected. The next release candidate might potentially be rebased against 5.1.42 (the builds are already ready, from what I understand), and will include this patch.

Some yaSSL trivia: did you know that one of the two co-founders of the project, is actually Larry Stefonic? Larry was an early MySQL Ab employee, holding quite a few positions at MySQL Ab; he was the President of MySQL KK (the Japanese branch), and was also SVP for worldwide OEM sales!

Related posts:

  1. MySQL 5.1.26-rc released, and developer resources thoughts
  2. MySQL Labs
  3. CentOS, CentOSPlus, and MySQL versions shipping there



LCA 2010 - Day 1

First posted on

LinuxJournal.com

January brings with it the southern-hemisphere’s summer and Linux.conf.au. This year, the conference is being held in Wellington, New Zealand thanks to the hard work and dedication of the Capital Cabal, a team of volunteer organisers lead by Susanne and Andrew Ruthven.

Civic Square

After a grey and wintery weekend, Wellington was all smiles for the first day of the conference. Situated at the Town Hall and Wellington Convention Centre close to the waterfront, sunshine, blue skies and balmy temperatures saw quite a few conference goers spending time outside exploring today.

This year’s volunteers are numerous and helpful, and have done an amazing job of making the first day of LCA smoother than any other in memory. For the first time, the conference is being streamed live and streams can be accessed from the schedule on http://lca2010.org.nz. For me, just having the wireless working on day one was impressive enough.

Welcome to LCA

The conference format is the same as previous years, with two days of mini-confs and then three days of conference proper. Monday’s line up included:

Business of Open Source Miniconf

Open Programming Languages Miniconf

Wave Developers Miniconf

Haecksen and Linuxchix Miniconf

Libre Graphics Day

Arduino Miniconf

Distro Summit

I have always enjoyed the first day at LCA, catching up with people I’ve met at previous years and making new connections. Registration is always exciting with the traditional goodie bag to rifle through. Tuesday is when the sessions that pique my interest most start, with talks on systems administration and high-performance computing. I’m really looking forward to it, and from looking at how it’s started, I really think this year’s conference is going to be one of the best.

Goodie Bag!

January 18, 2010

LCA2010 – Day 1

First real day of Linux.conf.au is always full on anticipation. I woke up a little early and nibbled a small breakfast as I walked from ustay to the venue. After the crap weather on the weekend things were stating to look a bit better.

The signup are at the venue was fairly quite with people being processed quickly and many having been signed up for the weekend.

First up was the Welcome talk which had a few hitches. Due to illness it was being given by and understudy who was a little unpracticed with the delivery and had a problem when the overhead screen went blank for 5 minutes due to technical problems (not sure if it was the screen or the laptop’s fault). Highlights were a 42-below ad for Wellington and everyby singing Happy Birthday to Rusty.

I spent the first couple of sessions at the Haechsen/LinuxChix Miniconf since most of the topics were interesting and for various reasons (mumble mumble) talk times between miniconfs were not sync’d so it was hard to move between them.

It looks like this year the video situation is fairly good. All Miniconfs and main sessions are both being streamed live (although in wma format which caused some comment ) and being record for later download. Hopefully It’ll all work out.

Talks I attended:

  • Version control for mere mortals by Emma Jane Hogbin was a good intro to VCS and practices including a bit aimed at sysadmins and content maintainers rather than just coders. She obviously likes Bazaar a lot more than git. Goods intro and once again I feel guilty about not using it more.
  • Happy Hackers == Happy Code by Sara Falamaki was an overview of what makes programmers happy. Mostly concentrating on tools but with some other bits and pieces mentioned. Great, especially the bit where Sara started throwing (often wildly) lollies to members of the audience who made good suggestions.
  • Through the Looking Glass by Elizabeth Garbee gave here perspective on using open source software and the high-school level. Interesting stuff on tools, and how other teens viewed open source and programming and the scary story about how her school had a rule that any student how bought a computer to school running Linux/Unix would be expelled!
  • Creating Beautiful Documentation from Lana Brindley covered some high level bits of the process redhat uses to create documentation as well as a bit of an overview of what technical writers do and why their jobs rock :)
  • Getting you feet wet for Angela Byron gave ways and advice for getting involved with Open source projects ( including the old “woman’s work” (my, not her term)) of documentation etc. Pretty good.
  • Code of our own from Liz Henry was about the first feminist orientation talk of the day. Lots of stories and advice for women in open source as well as a few bits where she gave your low opinion of how well some ideas have worked in practice.
Overall fairly interesting sessions. I noticed that for most of the 2 session the majority of people in the room were male and quite a few of the audience questions/comments were from them. This didn’t really cause a problem for most talks which were on general topics but I noticed the “male perspective” was less useful/welcome for Liz Henry’s talk.

For Lunch I wandered around a little bit an eventually found a place called “The coffee club” where I had a soy milkshake and a pesto bruschetta. Very nice.

For the last session I went to “The business of Open Source” Miniconf and then “Libra Graphics”

  • The 100 mile Client Roster from Emma Jane Hogbin was an interesting overview of the way her business and business model has evolved and where she thinks the next step is. Good talk and delivery although it’s a bit outside my area for me to give a good review of the content.
  • Building a service business using open source software by Cameron Beattie didn’t really appear to me. The talk was a bit flat and delivery lacked much spark.
  • Cheap Gimmicks to Make your designs ‘New’ by Andy Fitzsimon from suffered a bit from technical problems with delivery but looked like there was a good talk in there somewhere that just required a bit more prep.
  • Dynamic PDF reports via XSL and Inkscape by Peter Lieverdink was cool but a little over my head.
  • Inkscape: My Cheerleading Adventures by Donna Benjamin was a little sparse even for a 5 minutes talk
After the end of the day I went along to a Wikipedia Meetup at the Southern Cross Hotel. The Meetup was fairly small ( just 3 other people) but interesting people and several hours of discussion. Some talk about a NZ Wikimedia Chapter and also helping with the Wikimedia stand at the LCA open day.

Last up I grabbed a coffee and cake at Midnight Espresso.

Overall not a bad day, tomorrow will by Sysadmin Miniconf all day wih the Speakers Dinner in the evening.

Video Streaming from Linux.conf.au

You probably heard it already: Linux.conf.au is live streaming its video in a Microsoft proprietary format.

Fortunately, there is now a re-broadcast that you can get in an open format from http://stream.v2v.cc:8000/ . It comes from a server in Europe, but relies on transcoding here in New Zealand, so it may not be completely reliable.

UPDATE: A second server is now also available from the US at http://repeater.xiph.org:8000/.

Today, the down under open source / Linux conference linux.conf.au in Wellington started with the announcement that every talk and mini-conf will be live streamed to the Internet and later published online. That’s an awesome achievement!

However, minutes after the announcement, I was very disappointed to find out that the streams are actually provided in a proprietary format and through a proprietary streaming protocol: a Microsoft streaming service that provides Windows media streams.

Why stream an open source conference in a proprietary format with proprietary software? If we cannot use our own technologies for our own conferences, how will we get the rest of the world to use them?

I must say, I am personally embarrassed, because I was part of several audio/video teams of previous LCAs that have managed to record and stream content in open formats and with open media software. I would have helped get this going, but wasn’t aware of the situation.

I am also the main organiser of the FOMS Workshop (Foundations of Open Media Software) that ran the week before LCA and brought some of the core programmers in open media software into Wellington, most of which are also attending LCA. We have the brains here and should be able to get this going.

Fortunately, the published content will be made available in Ogg Theora/Vorbis. So, it’s only the publicly available stream that I am concerned about.

Speaking with the organisers, I can somewhat understand how this came to be. They took the “easy” way of delegating the video work to an external company. Even though this company is an expert in open source and networking, their media streaming customers are all using Flash or Windows media software, which are current de-facto standards and provide extra features such as DRM. It seems apart from linux.conf.au there were no requests on them for streaming Ogg Theora/Vorbis yet. Their existing infrastructure includes CDN distribution and CDN providers certainly typically don’t provide Ogg Theora/Vorbis support or Icecast streaming.

So, this is actually a problem founded in setting up streaming through a professional service rather than through the community. The way in which this was set up at other events was to get together a group of volunteers that provided streaming reflectors for free. In this way, a community-created CDN is built that can deal with the streams. That there are no professional CDN providers available yet that provide Icecast support is a sign that there is a gap in the market.

But phear not – a few of the FOMS folk got together to fix the situation.

It involved setting up Icecast streams for each room’s video stream. Since there is no access to the raw video stream, there is a need to transcode the video from proprietary codecs to the open Ogg Theora/Vorbis format.

To do this legally, a purchase of the codec libraries from Fluendo was necessary, which cost a whopping EURO 28 and covers all the necessary patent licenses. The glue to get the videos from mms to icecast streams is a GStreamer pipeline which I leave others to talk about.

Now, we have all the streams from the conference available as Ogg Theora/Video streams, we can also publish them in HTML5 video elements. Check out this Web page which has all the video streams together on a single page. Note that the connections may be a bit dodgy and some drop-outs may occur.

Further, let me recommend the Multimedia Miniconf at linux.conf.au, which will take place tomorrow, Tuesday 19th January. The Miniconf has decided to add a talk about “How to stream you conference with open codecs” to help educate any potential future conference organisers and point out the software that helps solve these issues.

UPDATE: I should have stated that I didn’t actually do any of the technical work: it was all done by Ralph Giles, Jan Gerber, and Jan Schmidt.

[lca] Awesome New Zealand Food



Penguino Ice Cream Cafe (fullsize)
The friend I did my Abel Tasman kayaking trip with has said a few times he could eat himself to death here in New Zealand. I tend to agree the food here is pretty good. Today I had lunch with Stewart, Bdale, Edale, TonyB and others at Midnight Espresso, a cafe recommended by Tony, who went to high school here, he said we would like it. I did it was excellent, lots of great Vegan options including all their cakes. I will be back tomorrow (possibly missing out on variety but OMG it was good.

The photo to the left is from a Penguin themed ice cream cafe in Nelson, they had some excellent Sorbet (an award winning boysenberry and a great apple and berry for example) that I was able to eat too. I thought I should put something penguin themed in a post to the lca tag here. (they have a Penguino Crossing sign too). I hope I can find a few more really good examples of local veggie friendly food before I have to head home on Saturday morning.

linux.conf.au 2010 opens with live streams!

WELLINGTON, New Zealand – Monday 18 December 2009 – linux.conf.au 2010 welcomes over 700 technologists streaming live sessions.

linux.conf.au continues to be one of the premier Free and Open Source Software (FOSS) conferences in the calendar year with strong community and corporate support in 2010. 700 delegates were welcomed during the opening session, with news that the conference sessions would be streamed live for the duration of the week.

Live streaming is a first for LCA2010, and linked through from the schedule page on http://lca2010.org.nz.

Delegates have arrived from New Zealand (40%), Australia (40%) and the rest of the world (20%). LCA2010 also has the highest percentage of women attending the conference this year at 15%, with a total of 26 women speakers over the course of the week. Also represented at the conference are people from pacific nations such as Tuvalu and the Philippines receiving financial assistance as part of the InternetNZ Oceania Programme. Life Flight Charity, http://www.lifeflight.org.nz/, was also announced as the official charity for the event, offering a prize of a helicopter trip over Wellington and a thrilling 8mm wire winch up to 4 people who donated the most to the charity during the week.

About linux.conf.au

linux.conf.au is one of the world's best conferences for free and open source software! The coming linux.conf.au, LCA2010, will be held at the Wellington Convention Centre in Wellington, New Zealand from Monday 18th January to Saturday 23rd January 2010. LCA2010 is fun, informal and seriously technical, bringing together Free and Open Source developers, users and community champions from around the world. LCA2010 is the second time linux.conf.au has been held in New Zealand, with the first being Dunedin in 2006.

For more information see: http://www.lca2010.org.nz/

About Linux Australia

Linux Australia is the peak body for Linux User Groups (LUGs) around Australia, and as such represents approximately 5000 Australian Linux users and developers. Linux Australia facilitates the organisation of this international Free Software conference in a different Australasian city each year.

For more information see: http://www.linux.org.au/

Emperor Penguin Sponsors

LCA2010 is proud to acknowledge the support of our Emperor Penguin Sponsors, InternetNZ, Google, HP and IBM.

For more information about InternetNZ, see: http://www.internetnz.org.nz/

For more information about Google, see: http://www.google.com/

For more information about HP, see: http://www.hp.com/

For more information about IBM, see: http://www.ibm.com/

January 17, 2010

trams (hello infrastructure porn)

I am currently obsessed with this map of the Melbourne tramways circa 1948.



I've been looking at what got built as planned (e.g. the 86 and 96), what has since been abandoned (like this tramway down Brunswick Rd) and what never got built but I really, really wish it had (like replacing the cable tramway down Johnston St to Abbotsford). Also, that there used to be tramways down Johnston St, Rathdown St and the lower end of Lygon St serves to explain why they're all so frickin wide.



Seriously though, they should build that tram down Johnston St. That would be awesomesauce.

[lca] In Wellington hanging out for lca.



Makara Summit Weather (fullsize)
I am in Wellington, lca is starting tomorrow, I arrived yesterday however the weather was horrible so a hung out with a friend, Bec, who is living here for a few years. We saw the Sherlock Holmes movie which was awesome. Today when I went looking for coffee I ran across Jon Oxer so we headed in for some conference supplies, breakfast, coffee etc (along with Thomas). Then I went to the rego area and found MRD, AJ and others. After registering for the conference we headed out for some lunch.

Then as the weather was better today than yesterday (no heavy horizontal rain) Bec and I went for a mountain bike ride (in the photo above I am somewhat muddy but enjoying the summit of Makara Peak mtb park). Now I am about to go find some lca ghosts, what fun.

January 16, 2010

LCA2010 Announces Photographic Competition

LCA2010 and Wellington Photographic are proud to bring you the linux.conf.au 2010 Photography Competition. Wellington central city can be broken down into 4 quadrants - Lambton, Cube, Courtenay and the Waterfront. We'd like you to visit one or all of the quadrants over the week, and take a photo(s) showing us your perspective on the different parts of Wellington.

To enter, simply send your photo(s) for each quadrant in an email to photography@lca2010.org.nz with your full name, and the quadrant the photos relate to in the subject line before the cut-off dates below. You can submit up to 5 high resolution phtoos for one or all of the quadrants (in jpeg format) either by sending us the URL(s) to their location online or attaching your digital images. If you are able to provide a link, where possible please upload photos to flickr, tagged with #lca2010, #photocomp and either #courtenay, #cube, #waterfront, or #lambton.

Cut-off dates for each quadrant are:

Courtenay9am, Tuesday 19th January
Cuba9am, Wesnesday 20th January
Waterfront9am, Thursday 21st January
Lambton9am, Friday 22nd January

A maximum of 5 photos will be selected daily by our judges from each quadrant as finalists in the competition, and these winning photos will be displayed in the Michael Fowler Centre Foyer each day. The overall winner and runner-up will be chosen from the quadrant finalists and will be announced on Friday afternoon with prizes awarded at the closing Ceremony.

Note: You can enter on one or all of the days if you wish, and must be an LCA delegate to participate. All entries must be submitted under a Creative Commons License.

Pompous Malaysian Minister discourages immersion in Western-created sites such as Facebook, Twitter

“The man who reads nothing at all is better educated than the man who reads nothing but newspapers.” – Thomas Jefferson

A lazy Saturday, I’m taking a break from most things, and I figured I’d fire up Twitter and see what’s on. Many people pointed me to: Malaysians advised against being immersed in Facebook, Twitter (a href=”http://malaysiakini.com/news/122094″>Malaysiakini picked this up too). It features Rais Yatim, being more pompous than he usually is (yes, please watch that video – its highly amusing).

He added that facilities like internet could not be accepted wholly because it was a form of business introduced by the West and “Malaysians were just users.”

Don't read newspapersMalaysians were just users. Why were they not the creators of sites like Facebook and Twitter? After all, with organisations throwing money away in the form of grants, so readily to companies, why haven’t we created the next Facebook or Twitter? Ping.fm had only two employees, picked up some angel funding, and have recently been acquired by Seesmic. RM150k for a year, is enough for two founders to hack on something, and make it worthwhile, yet, we see higher amounts of folk gaming the system. What about Twitpic? This list can go on, but that’s not going to be the focus of this post – Malaysian’s can create, if they put their mind to it. To boot, there are also funds that they can have access to.

He goes on to talk about how one must upkeep religious values and be mindful of them when using social networking services. Wow, whatever he’s smoking, I want some.

“We must be strong in our believes and culture because the identity and image of our country depends on us.

Yes. The image of the country today, largely depends on what the people say. Politicians can go overseas and lie to others, but what do people do before the want to visit a country? Invest in a country? Move to a country? They check up on the prospective new place on the Internet. They use Google search. They’ll read Google News. Heck, they might even go read Google’s Blog Search. Others will check out Flickr and Picasa to find good photos, some will check out YouTube. Others will look at TripAdvisor to find a good hotel. Others will check out the newspapers. The list goes on. However, what citizens do, is they speak their mind, when online – so the government clearly lacks control of their old one-way-mediums.

His next statement makes absolutely no sense at all. Maybe he should have spoken in his native Bahasa Malaysia?

“They are just selling Facebook, Twitter, L-Band and various other services, even through space, as a product but we do not do such business. We accept all this in a state of cultural shock,” he said.

Culture shock, eh? Seriously. He continues…

“We should not be quick to condemn or look down on those who do not use Facebook. Newspapers are still relevant, so is Facebook, but do not be carried away with everything and disregard the old system,” he said.

Of course. That would be plain wrong, and ageist. Not everyone needs to be on Facebook. Or Twitter. Or read online media. Its fine that people have a choice. Today, if one chooses to go “old school”, all one has to do is wake up in the morning, buy a dead tree edition of your favourite newspaper, read it, then go over to the boob tube, watch the myriad of programming available on free-to-air channels, and suck in all the propaganda. However, as a society matures, they do tend to disregard the old, and check out the new (for example, if I’d had followed the old system, I’d be seeing this silly media article in the dead tree edition of The Star – I saw it half an hour after it was published because I was on Twitter). Societies mature, and their needs mature, so they do outgrow the old (same applies to political regimes).

It continues, in where he says things about how one shouldn’t use Twitter, Facebook and SMS messaging for the wrong reasons. He tells us that we cannot escape from the law for our actions. And that most people understand the whole 1Malaysia concept. Drivel, in general.

Anyway, newspapers in their dead-tree form are losing relevance. We have two that are free now – The Sun and The Malay Mail. The Star has pretty much all its content online. And Malaysians can read The Malaysian Insider (Malaysian creation) for free, or subscribe to Malaysiakini (Malaysian creation). As the Internet penetration rate goes up, we’ll see more of this. The magazine industry in Malaysia has been suffering for a couple of years (no eyeballs, no advertising ringgit).

So, there are Malaysian creations, used by people, where Malaysians are not just users but creators. I’m sorry Rais, you’re so out of it.

Related posts:

  1. Malaysian politicans need to focus on the economy, not power plays
  2. Twitcash (earn money via your Twitter or Facebook account)
  3. Malaysian Prime Minister gets feedback via the Internet (and isn’t OSS friendly)



Linux.Conf.Au 2010 - Preparation





It’s Linux.conf time of year again, and I’m starting to get that night-before-christmas feeling. This year the conference is being held in my home city of Wellington, New Zealand. Thanks to the generosity of my employer, Modica, I will be spending the entire week at the conference.

I’m going to be blogging the conference here and on LinuxJournal.com which will be a nice motivation to start writing regularly again. I’m looking at the schedule with a particular eye toward kernel and systems administration talks, and anticipating catching up with people I’ve met in previous years.

More than that, every year I return from LCA fired up by feeling a real connection with the community and armed with new knowledge that gives me a direct benefit in my day-job as a Linux systems administrator. I’m looking forward to experiencing this for my third year in a row.

January 14, 2010

Fantasy linux.conf.au 2010

I won't be at LCA, but since I wish I was, here's what I wish I could see most. (Note that I haven't picked something in every timeslot and so this wouldn't be my complete talks list. This is just my personal highlights.)

I've never seen Mako Hill speak, but you can't be interested in free software and culture activism without stumbling across his name. Because he's involved in the FSF. And Debian. And Ubuntu. And Wiki[mp]edia. And OLPC. And autonomo.us. Among others. I actually don't know what his keynote is about, the webpage is just the speakers' biographies, but I'm just going to go ahead and assume that whatever it is, I'd enjoy. I'm also sure Gabriella Coleman's Tuesday keynote would be interesting.

Build Your Own Contributors, One Part At A Time. I don't know that the Dreamwidth project has good name recognition in the LCA community: consider this an attempt to rectify that. It's a blog hosting company on the Livejournal model with a fork of Livejournal's codebase. It's also very, almost uniquely, innovative and successful in mentoring new and non-traditional contributors. (Kirrily Robert has some information, mostly focusing on their very unusual developer gender ratio.)

Loyal fans of my writing will remember that I'm generally suspicious of how to run an Open Source project submissions to LCA, because so many members of the audience have either run one or seen one run at close range. But I really wanted to select this one because it's successful at something very unusual. There's a lot more talk than action on mentoring and diversity in Open Source development; here's your action.

Introduction to game programming. Yeah, this clashes with Build Your Own Contributors, but since I'm not going at all, it can still be a Fantasy LCA pick, can't it? Richard Jones is an import from the OSDC scene, he's a good speaker, he wrote a good chunk of the tools he's talking about and he regularly puts them to use and watches others put them to use in the PyWeek challenge.

I'm very curious about how Matthew Garrett's Making yourself popular: a guide to social success in (and for) the Linux community goes and I'd also like to see Claudine Chionh's Unlocking the ivory tower: Free and open source software in collaborative humanities research: luckily, again this is Fantasy LCA and I don't have to choose. I'd also get along to FOSS and Māori Language Computer Initiatives later in the afternoon: it's not exactly my field, but close enough that I'm interested in language and computer interfaces in general.

I don't know that I've ever actually made it to one of Matthew Wilcox's talks, but I heard great things last year, so I'd get along to Discarding data for fun and profit for sure.

Gearman: Map/Reduce and Queues for everyone! sounds like something I'd enjoy hearing about and might put to use. Can't lose.

I was accused of being a fangirl when reviewing Adam Jackson's The Rebirth of Xinerama, if I recall. I don't think I qualify without, say, asking for autographs, but I enjoyed his 2009 talk a lot. It was not at all aimed at the Mary demographic (short version: I know nothing about X, long version: I know nothing about X) but was still accessible even while totally ignoring my demographic. I love that kind of technical talk. And the more competent parts of the audience seemed fine with it too.

After seeing Andrew Tridgell's OSDC keynote in 2008 I am wretched about missing Patent defence for free software. Just as you can find Mako Hill everywhere when it comes to free culture activism, you can find Andrew Tridgell everywhere in building... anything. From chess playing server software to homemade coffee roasters. And on the side he's spent a long time with the Samba team testifying and advising on aspects of the EU's antitrust investigations into Microsoft. And because of that and because he's a great speaker and essentially is LCA, it would be a great talk to get to.

Finally, thank goodness this is Fantasy LCA, so I don't have to tell you which I'd choose of Rusty Russell's FOSS Fun With A Wiimote, involving Rusty, who is a marvellous speaker, and babies, who... are babies, and Wiimotes, which are white and blue, or Liz Henry's Hack Ability: Open Source Assistive Tech about the advantages of hacking up assistive tech and thus adapting it to individuals. What a cruel world that timeslot is.

January 13, 2010

Some MySQL-related links

Check out how Linden Labs, creators of the popular game Second Life, upgraded their MySQL database. The MySQL they use? Straight out of Debian! Of course, now, they’re running with the Percona patchset, against MySQL 5.0.84. Definitely a good read.

Its good to see Lars post about contributing to the MySQL replication & backup codebase. It sounds like the replication & backup team have decided that mentoring is the way to go – you get a “coach developer” if the idea is accepted. I like this very much, and sincerely hope it spreads to the rest of the server; it will help decentralise development of MySQL, and the endgame is a larger community.

While I know Christmas is over, The 12 Days of Christmas (MySQL Edition), is actually quite a fun watch :)

Happy New Year all!

Related posts:

  1. MySQL-related resources that you will enjoy reading
  2. Incremental backup that uses MySQL
  3. Its mid-week for the Google Summer of Code – we have some new goodies!



January 12, 2010

Sorry to post about this here

But this is semantic war!

It seems someone with my name, also packing an aussie accent, living close to where I grew up is preying on the gullible and the greedy masses via the usual lame online marketing scam frameworks.

So to react, I made www.AndrewFitzsimon.com in an attempt to claw back my integrity and also google-bash them into an honest, less pathetic living.

Anyone else ever have birth name brand-equity issues?

There’s not many Andrew (Andy) Fitzsimon’s out there so I have to draw the line when someone at an international conference confuses me with a con artist.

Remember everyone, I’m the REAL Andrew Fitzsimon.

January 11, 2010

StarOffice no longer on the SIA’s Airbus A380?

Going to and from London, I flew on Singapore Airlines’ Airbus A380 and loved every bit of it. The last time I got on one of these planes was when I flew to Sydney.

It used to be that the in-flight entertainment allowed for you to play with StarOffice 8, opening and saving documents via the (powered) USB port. That generally gives me a kick, since its nice to see your name 38,000ft in the air.

According to this, it’s also available on the Boeing 777-300ER. However, I noticed that you don’t have this option any longer – it has since been removed.

There’d a PDF viewer, a media player (connect your iPod, be impressed), but no StarOffice in sight. I wonder if a licensing deal with Sun Microsystems had something to do with it? After all, no need to license StarOffice, just go forth and use OpenOffice.org!

Yes, it took some 30 seconds to start up StarOffice the last time I played with it. Could it be due to that, customer complaints got rid of it? I sincerely hope not. Suddenly, the QWERTY keyboard on the gamepad seems a lot less useful…

Related posts:

  1. Lots of Linux things happening now
  2. fits of irony
  3. Open Source saves Malaysian Government RM40 million



Telemetrum v0.2

Introducing TeleMetrum v0.2

Bdale and I (mostly Bdale, of course) finished the TeleMetrum v0.2 design work in December, and this weekend we got boards made and parts ordered and Bdale sat down with his trusty electric skillet and built 3 new boards. The new design has an integrated GPS receiver and patch antenna, and is otherwise fairly similar in design to v0.1.

TeleMetrum v0.2 Hardware

Here’s the front side of the board:

From the left, you’ll see a connector for an external power switch and the two ejection charge circuits, a battery connector for a single 3.7V lipo cell, the GPS patch antenna, a 4-pin debug connector, the piezo buzzer and the new 8-pin companion board connector. We weren’t happy with the connectors used on the v0.1 board and finally found these Tyco Micro-MaTch parts which take up a modest amount of board space (more than pico-blade connectors, less than regular pin blocks), have a locking option and crimp on to standard ribbon cable. They’re also bright red and surprisingly low in profile.

And here’s the back side:

Elements on this side include the new 100μF cap in the upper left corner which sits on the 3.3V supply to try and keep the CPU alive through minor power glitches. Below that is a new package containing a pair of FETs for the ejection circuits. We used discrete FETs in v0.1, but this device has better specs for our needs (lower on resistance, etc). The USB connector was pulled in-board far enough to keep it from hanging over the edge. Right of that is the new data logging chip, and right of that is a U.FL connector in case you want to use an external GPS antenna. We supply power to that connector as most external GPS antennas include their own LNA. And, of course, to the right of that is the Skytraq Venus 634 GPS receiver.

Below and to the right of the GPS receiver is the cc1111, to the left lies the accelerometer and then the barometric pressure sensor above the 5V boost regulator which powers the accelerometer. We haven’t found any high-G accelerometers that run on 3.3V yet. Finally the two tiny 5-pin chips are the USB LiPo charger and the 3.3V regulator. What you can’t see easily are a pile of 0402 passive components scattered across the board. Even close up, they’re hard to pick out by eye.

The only hardware ‘bug’ was in the reset logic — the new board was designed with a much larger capacitor on the reset line than the old board. The debug code would only hold the reset line low for a brief instant, sufficient for the old capacitor value but not the new one. Instead of fixing the code, Bdale decided to try a smaller capacitor value and found that it worked just fine. After that, the board came up just fine and the updated firmware was flashed into the CPU.

TeleMetrum v0.2 Software

The only significant software change was that the data logging part changed from a 25LC1024 1Mbit eeprom to an AT45DB161D 16Mbit DataFlash. This required writing a new driver, but fortunately much of the code could be copied from the 25LC1024 driver. Because the AT45DB161D comes from a family of similar-but-different parts ranging from 1Mbit to 64Mbits, I decided to make the code automatically adapt to the installed part, detecting which one was attached and adjusting the driver.

The story here is that the configuration data didn’t appear to be getting preserved across reboots — we use the last block of the data logging part to hold configuration data, including call sign, sensor calibration values and flight parameters. A bit of testing and we found that the code to read/write the device worked perfectly. It turns out that a premature optimization in detecting which kind of flash part was installed had a race condition when multiple threads were trying to access storage at the same time, resulting in the configuration data being left uninitialized. Oops!

The TeleMetrum firmware has a clever hack for selecting between ground mode (for fetching data from the device or altering the configuration) and flight mode (prepared to fly the rocket). It switches between these by detecting whether the board is upright (flight mode) or not (idle mode). However, the accelerometer must be calibrated to tell the difference. What never occurred to us was that if the calibration data was broken enough, the device might always come up in flight mode. In that mode, it isn’t listing to either USB or the radio link, so it’s impossible to fix the accelerometer calibration data.

A bit of brainstorming led to a fairly simple hack — check to see if one of the pins on the companion connector was shorted to ground at power on time, if so, force the computer to enter idle mode. Pin 1 of the companion connector is ground, and fortunately, pin 2 was the SPI clock pin, normally output-only, so we could safely use that in this mode as any companion device shouldn’t ever pull that low.

Future Events

As of this evening, three boards are built and mostly tested; the radios appear to work, GPS tracks satellites and the beeper makes plenty of noise. Still to check is whether the deployment circuits will fire an ematch (we’ve tested the design before, just not this specific implementation).

Next weekend, we’re off to linux.conf.au in Wellington, New Zealand where we’re scheduled to give a presentation on the hardware and software in TeleMetrum. We’ll have v0.2 boards to show off, so come and see them in person.

With v0.1, we used the same board design for both flight computer and ground station, TeleDongle. For TeleDongle, we just left most of the components off of the board and loaded alternate firmware. For v0.2, we’re planning on building a separate TeleDongle board; that design is finished but no boards are made yet.

Once we’re happy with the design, we’ve got big plans to get more boards made so we can let a few friends buy them for use them in their own rocket projects. That should happen in the next month or so. Once we’ve gotten enough testing done, and made sure that other people can actually operate them without hand-holding from us, we’ll make them available for sale to the general rocket-flying public.

Beyond that, we’ve got plans to build more stuff:

  1. A stand-alone ground station, called TeleTerra, that would include an LCD readout and flight data recording so you wouldn’t need a laptop during the flight.

  2. A companion board, called TelePyro, to control 8 additional pyro channels. These could be used for almost anything from air starts to staging or any other whacky plans.

January 10, 2010

7 days to go to linux.conf.au 2010!

WELLINGTON, New Zealand – Monday 11 January 2010 – 7 days to go to linux.conf.au 2010!

We are anticipating great things to happen at linux.conf.au 2010! With four fantastic keynote presenters: Gabriella Coleman, Benjamin Mako Hill, Glyn Moody, Nathan Torkington, and a terrific line up of speakers:

  • Patent defence for free software: Andrew Tridgell
  • Flying Rockets with Free Hardware and Free Software: Bdale Garbee and Keith Packard
  • Making yourself popular: a guide to social success in (and for) the Linux community: Matthew Garrett
  • PostgreSQL Development Today: Josh Berkus
  • Discarding data for fun and profit: Matthew Wilcox
  • Making production-ready filesystems: A case study using ext4: Theodore Tso

The Miniconf Schedules have all been announced! There are miniconfs in Arduino to open Government, from Wave to Business, attracting some high profile speakers:

Monday
  • Carl Worth: Cairo Graphics: Intro and Future
  • Angela Byron: Getting Your Feet Wet
  • Scott James Remnant: Cutting down boot times
  • Rusty Russell: Talloc: Pick Up Your Own Garbage!
Tuesday
  • Laurence Millar, (former CIO for New Zealand) - How can Govt procurement better support Open?
  • Stephen Schmid of OCIO - Aus/ Open Source Sand Pit
  • Andrew Stott, Director of Digital Engagement, United Kingdom
  • Paul Gunn: Weta Digital - Challenges in Data Centre Growth

There's something for everyone: Dinner events, social networking, a partners' programme, keysigning, hackfests, and morning yoga.

The open source conference, being held for the first time in Wellington, only the second time in New Zealand, attracts delegates from all around the world: From Andrew Stott, Director of Digital Engagement, United Kingdom, to Opetaia Simati, Tuvalu to Labour MPs, Hon. Trevor Mallard and Clare Curran.

To promote awareness of Open Source, linux.conf.au 2010 is holding a technical expo, the linux.conf.au 2010 Open Day:

Time: 11:00 am - 2:00 pm
Date: Saturday 23 January 2010
Where: Wellington Town Hall
Admission: Free!

To register for linux.conf.au 2010, please see: http://www.lca2010.org.nz/register.

About linux.conf.au

linux.conf.au is one of the world's best conferences for free and open source software! The coming linux.conf.au, LCA2010, will be held at the Wellington Convention Centre in Wellington, New Zealand from Monday 18th January to Saturday 23rd January 2010. LCA2010 is fun, informal and seriously technical, bringing together Free and Open Source developers, users and community champions from around the world. LCA2010 is the second time linux.conf.au has been held in New Zealand, with the first being Dunedin in 2006.

For more information see: http://www.lca2010.org.nz/

About Linux Australia

Linux Australia is the peak body for Linux User Groups (LUGs) around Australia, and as such represents approximately 5000 Australian Linux users and developers. Linux Australia facilitates the organisation of this international Free Software conference in a different Australasian city each year.

For more information see: http://www.linux.org.au/

Emperor Penguin Sponsors

LCA2010 is proud to acknowledge the support of our Emperor Penguin Sponsors, InternetNZ, Google, HP and IBM.

For more information about InternetNZ, see: http://www.internetnz.org.nz/

For more information about Google, see: http://www.google.com/

For more information about HP, see: http://www.hp.com/

For more information about IBM, see: http://www.ibm.com/

Castlereagh flooding

Your humble photographer is mightily annoyed that he didn't quite get out in time to set up the camera for tonight's storm that passed through sunset, so he'll have to take solace in the fact that at least he got some OK pictures from when he noticed the Sun reflecting off the floodwaters the other night (quite some days after the initial flooding):



More storms towards Coonamble



More storms towards Coonamble



(and the rest of the collection)



(Oh, and solace also in the fact that being one of only 2 people in the world to see a scene sometimes makes it better in a "HAW HAW, you didn't get to see it" sense)



The water in town, 20km from the source of the river, is still flowing rapidly enough to make things interesting at river crossings, which is pretty good given that we were pretty close to water restrictions a few weeks ago, and a rapidly flowing river means the dam right at the source is overflowing. When I was coming home a different way to normal through Quirindi the other day, I had to pass over tens of kilometres of floodplain and over roads and floodways that had disintegrated and been ripped up in preparation for being relaid. On the bike, there was one crossing that almost was too much, which would have forced a 200km loop around the area when I was only 15km from home. My guess is, that these photos are looking towards a similar floodplain.



Those floodwaters will eventually flow into the Darling River. It's just a pity the floodwaters aren't going to make it further than the Menindee Lakes because of the state pissing contests.

January 08, 2010

Dancing in my helmet

AKA, "so much fun, it should be illegal".



I had the first real holiday in 8 years last week, and it was ace. I was originally going to go down to Tas on the bike, joining up with another astronomer on the way down, but that plan was scuttled when poor planning lead to me missing the boat, and the other fellow blew up his bike again after thinking that he had fixed it. So instead, I rode to Melbourne and just went down to the South island for the festival only without being able to make any sidetrips in Tasmania.



Sometimes things work out for the best. Not being able to ride in Tasmania gave me more time to ride around Victoria without succumbing too early to the sore-butt syndrome.



The festival was brilliant. I went mainly for Rodrigo y Gabriella, and they themselves were worth the $600 plane fair.

Falls Festival



Most of the crowd obviously didn't know who they were. The headline act was something like the Yeah Yeah Yeah's, so it's not like people there had any taste :) I was able to get up near the front of the moshpit (no moshpit, and no crowdsurfing, mmmkay!?), but when I looked back behind me, I realised 16000 people had all of a sudden discovered that the best musicians in the world were playing.

Falls Festival

After their set finished, I heard two comments - "Jimmy Hendrix was only half hearted compared to those guys", and "that should be impossible to do on a guitar". Anyway, having a large stack of Marshall amps up front solved my previous problem of listening to these guys when my own stereo only goes up to 11. Xavier Rudd was not too bad either, and Moby was surprising in that I didn't previously know there was a real band behind him (I thought he was just a guy with a synthesiser).



Now a simple trip down to Melbourne from here should only be a 1996km or so round trip. But riding a bike has a funny way of extending that out to 3500km with the only consequence of developing a sorer butt. I really have joined the dinosaur burning class with some gusto. I did entirely better at keeping rubber side down than a certain other person I know, and she had the benefit of having 2 extra stabilising wheels (sorry Mikhi :), and me being somewhat hoonish around the Oberon area (and almost paying for it -- the rest of the ride that day was done a little more sheepishly).



Trusty Steed



You'll note also that I had to ride through a cyclone to get down, and I'm pretty sure half of Cyclone Laurence's floodwaters ended up in my waterproof panniers.



Victoria is extremely sensible when it comes to road markings in the alpine country. In the NSW nanny state, Putty Road acts as an example: too many people kill themselves around corners well below the speedlimit, so lets reduce the speedlimit on the straight sections. Oh, and put double white lines everywhere so it's impossible to overtake at all. That'll lower the stress levels of all the drivers! In Hotham and Kosciuszko instead, lane markings indicate it's legal to overtake (as long as done safely) even when it's impossible to see around corners. Ie, it's up to your own responsibility to get around the slower vehicle. How'bout that, eh? And since limiting speeds to 80km/h isn't going to help you to not run off the edge of a cliff if you overcook a corner at 20km/h, and you can't limit the entire road to 15km/h, then they sensibly just stick to the default 100km/h limit, and again, let people sort it out for themselves. Such a novel idea. In practice, I got stuck behind slow 4 wheeled vehicles a few times, but never for more than a few corners.



Mt Hotham



I got lost many times while I was away. Just after Cabramurra, for instance, I turned off mistakenly onto Elliott Way (a line barely visible on the large scale map I was navigating off) instead of sticking to the Highway. This turned out to be a mistake that cost me about 60km towards my intended lunch stop of Tumut, but I think I just about had the time of my life. So much fun below the speedlimit, that it could not possibly have been legal - you come out from the reservoir, and head straight (or bendy) up a cliff. (Far less fun was getting lost in Sydney even with a map. What's wrong with laying cities out on a grid, dagnamit?)



Anyway, the rest of the photos are in the usual location, and I've got some pretty niftyrific videos from Mt Hotham on youtube:





(if you can deal with .avi, the original is much better than the youtube version).



Could be the year of the holiday. Already booked my bike to ride around the South East island of Australia (if parliament aren't going to annex New Zealand, I will) after LCA.



Then there's the Bluesfest in a couple of months time. Then I'll probably head back down to Melbourne for the MotoGP with a bunch of locals. Then I wonder whether I should ride to the Flinders Ranges. Ah, work schmork.

Netbank Slow

If your a commonwealth bank customer and you use ubuntu or other linux OS you may find that the Netbank website is extremely slow to login to.

Solution install nscd name server cache daemon

sudo apt-get install nscd

apt://ncsd

by the way this was found out by putting a complaint into the commonwealth bank which the complaint was swiftly replied to with generic flush your DNS for windows instructions and further instructions saying that AVG link scanner also is known to slow down Netbank. but once I dismissed these solutions as not solving the problem they then actually asked real questions got me to try and different dns server.  I also got plenty of phone calls check that my problem has been resolved or that at least someone is attempting to fix it so there ads must be right..

In the long run Commonwealth bank need to fix there DNS so that there sub-domain address is faster to look up.

In the short term my problem is fixed if it’s only a speed increase when I log into Netbank for the 2nd time, since the cache seems to clear on each restart.

tramtracker in maemo extras-devel [plus some crap about Optus]

Finally got a version of tramtracker (a client for tracking Melbourne trams) and python-suds uploaded to Maemo's extras-devel. There are a couple of issues, the known ones relate to this bug.



In my head I was having a race to see which would be done first: Optus sorting out my phone enough so that I could have data on it; or getting my app into the repository. Turns out, even though I didn't make a lot of effort, I still won.



In fairness, I probably could have gone today to get my phone recontracted (since I think it cut over last night), but the guy told me to come back on Saturday. I'm really hoping this is the end of about 4 hours of dealing with Optus over my phone. It started off by me looking at 3G data plans, and realising that if Stephanie and I both recontracted for 12 months, and put our numbers onto the same account, we could pay for both of our phones for the cost of her phone bill. Unfortunately my phone number was still in my Dad's name, and stuck in some antique account keeping system, so had to be migrated forwards (which took forever), then some nonsense about a credit check. [I'm sorry, but you gave the international student who's been here 4 months, and is not even a resident, a $60/month iPhone plan; why do I need to jump through so many hoops when I have a job and only want a $20/month plan where I bring my own damn phone?] Finally though both phones have been moved onto the same account, so I can go and recontract tomorrow (hopefully; I've been saying this for weeks).



That said, while Optus the company have basically been screwing me around. I do have to give kudos to the peoples at Optus Shop Brunswick, who have spent countless hours on the phone to Optus HQ trying to sort this out for me, even though they've so far earned absolutely no commission from me. I had thought about recontracting my phone at whatever store I happened to pass, but I think I should make sure these guys get the commission.

January 07, 2010

openQRM 4.6 - Love the new UI Design

Screenshots telling more than words ....This video provides some details about the new features in openQRM 4.6Please find screenshots and more details about the tons of new cool functionalities in the new release at :http://www.openqrm-enterprise.comEnjoy !

January 06, 2010

On free WiFi at hotels

I was reading Hotel WiFi Should Be a Right, Not a Luxury, by Sarah Lacy at TechCrunch, and I tend to agree with her – Internet connectivity should be provided as part of a hotel package. Its not a right, but its 2010, it should be common courtesy.

I write this, while I myself am staying at an Express by Holiday Inn, in London, where the charge for 512/128kbps wired Internet is GBP7.50 for 24 hours of usage. To me, that is daylight robbery – it is about 1/10th the cost of the room! It is bitterly cold here, but if I was willing to walk about three hundred metres, there’s a bar nearby, with free WiFi access. So, I’m paying a comfort fee.

From a hoteliers point of view, I’m not using their telephone, because I have a mobile phone. I’m probably not buying their pay TV movies, because I can watch stuff on my 15″ MacBook Pro, or since I’m in the UK, and am using their Internet, I could also go to youtube.com/shows and catch something (it buffers a bit at 512kbps down, but that’s another story). If I didn’t want to use my expensive mobile phone (that’s roaming), I could always fire up a VoIP service, or use Skype, and make cheap phone calls via my PC. So from a hoteliers perspective, even giving me a 512/128 link, basically means they can’t slap me with charges for the usage of the phone, and they probably can’t even sell me pay TV.

I’ve stayed at many hotels over the years, and there is one thing I notice: the cheaper the hotel, the chance of getting free Internet access (at least in the lobby) is definitely higher. The more expensive it goes (think InterContinental’s, Westin’s, and the like), there’s usually a charge of about USD$10/day for Internet usage. Usually, if you’ve stayed at a chain long enough, priority members end up getting Internet access for free. Also, if you book into an “Executive” room (i.e. you’re on an expense account and the travel agency books this for you), there tends to be free Internet (alongside, some free fruit).

Sarah is lucky, living in America, since if most of her travel is within the States, you tend to be able to have mobile phone access, so 3G Internet shouldn’t be too far away. Or the Sprint MiFi’s. In fact, that’s exactly what I did when I stayed in Penang recently – the hotel was going to slap me a RM58/day fee for Internet usage (that’s 1/4th the cost of the room by the way), but I carried my 3G dongle, and DiGi gave me 1500kbps transfers, for free :-) (OK, I pay a monthly fee for it, but I use it everywhere I please, in Malaysia, where they have 3G coverage – otherwise I drop down to EDGE).

The same applies in Singapore. Charging folk up to SGD$20 per day of Internet usage, when Wireless@SG is available at most cafes for free, seems ridiculous. This is again, a case of paying a comfort fee. In Thailand, Malaysia and Singapore, nowadays you can buy yourself 3G Internet prepaid SIM cards, that charge way less than what the hotel is going to slap you with, so if you have a dongle, go for it (they usually also sell SIM-unlocked dongles).

Why not do what the Royal Orchid in Bangalore does? They offer a basic connection for free, and offer a paid rate if you want a faster speed.

Spot on. Give me access for basic web surfing and email. If I really need to make VoIP calls (I’ve found 7kbps is more than enough for VoIP calls…) with better clarity, I can pony up and pay a fee. Ditto if I want to watch streaming video.

Let 2010 be the year where either data roaming can be capped (in Asia, I have data services capped at RM36/day while roaming), or there is widespread data usage from prepaid SIMs. The telcos can beat the hotels into submission! Or, let 2010 be the year, where we get free Internet piped in our rooms. Ubiquitous connectivity.

Related posts:

  1. Starbucks with two free wifi APs
  2. Hyatt Internet woes… and how to fix it
  3. VoIP WiFI via Google Talk, Gizmo Project, on the Nokia 770



Ethics of Free Software community research

Most of this entry is exactly a year old today and it's just sat around in draft form all that time. Since I posted something similar on Geek Feminism about research into women in tech and similar topics, I thought I'd get it out there.

In January 2009 a researcher named Anne Chin of Monash University Law emailed the chat list for the linux.conf.au 2009 conference asking for research subjects to be interviewed about licencing and Open Source software. There were several responses criticising her use of HTML email and Microsoft Word attachments. I'll leave the specifics of this alone except that people should be (and probably are) aware that this is almost always an unknowing violation of community norms.

I did, though, think about making some notes on research ethics and Free Software research. A bit about my background: I am not a specialist in ethics. I'm somewhat familiar with ethics applications to work with human subjects, but not from the perspective of evaluating them. I've made them, and I've been a subject in a study that had made them.

For people who haven't seen this process, the ethical questions arising from using human subjects in your research in general covers the question of whether the good likely to arise from the outcomes of the study outweighs the harm done to the subjects, together with issues of consent to that harm. (There are many philosophical assumptions underlying this ethical framework, I don't intend to treat them here.) Researchers in universities, hospitals, schools and research institutes usually have to present their experimental designs to an ethics committee who will determine this question for them and approve their experiment. Researchers who work across several of these (eg, a PhD student who wants to interview schoolchildren) will need to do several ethics applications, a notable chore when the forms and guidelines aren't standardised and occasionally directly conflict. Researchers working for private commercial entities may or may not have a similar requirement. Researchers who use animals also have to have ethical reviews, these are done by animal ethics committees, which are usually separate.

At my university, essentially any part of your research that involves measuring or recording another person's response to a research question and using it to help answer that question needs a human ethics application.

The good/harm balance may include very serious dilemmas: is there a health risk to subjects? how will the researcher manage the conflict between maintaining subject confidentiality and research integrity and the good of her subjects or the requirements of the law if she uncovers, say, episodes of abuse or violence? But it also involves less immediately obvious and serious ethical questions. Is this study a giant waste of subjects' time? is considered a question of ethics by ethics committees, and is in fact the most serious problem for linguistics research, since there's very seldom an outcome of particular interest to the subjects themselves.

The study in which I took part a few years back was towards the serious end actually: it was a study into the psychological profiles of people who have an immediate family member who had cancer as a child and involved both questionnaires and a phone interview with a psychologist. Both because the study explored memories of the illness and because the profiling included evaluating depressive episodes, suicidal ideation and so on, it came with a detailed consent form and with information about a counselling service that had been informed of the study and was prepared to work with its subjects.

In the case of the Free Software community the ethical questions are often more towards the waste of time? end of the spectrum than the more immediately serious end. It's important to understand that this isn't necessarily the case though. Here are some more cutting ethical problems:

  • getting findings that expose your subjects and/or their employers to intellectual property claims; or
  • revealing that your subjects are breaching employment contracts in some way (generally also related to IP) and thus exposing them to job loss and possible civil action.

Getting ethics approval to carry out workplace studies can be fairly hard precisely due to problems like these. But in the rest of this post I will treat the waste of time problem.

Firstly the basics: are your subjects going to be identifiable in your final reports or to the general public? If not, who will know who they are? Can a subject opt to have their responses removed from the study? When and how? All this should be explained at the start. (Usually if an ethics committee has been involved, there's a consent form.) If doing a survey look into survey design, in order to construct non-leading questions and such.

Now, for specifics. Most of them arise from this principle: there are a lot of researchers working, in various ways, on the Free Software community, possibly making it a slightly over-studied group if anything. This places the onus on the individual researcher to demonstrate to the community that their project is worthwhile and that they're going to do what they say. Thus:

  1. demonstrate some familiarity with the background. Depending on your research level this could mean anything from demonstrating a knowledge of existing anthropological work on Free Software (say, if the research project is for your anthropology PhD) down to at least understanding the essential concepts and core history (say, a project at high school level). This can be demonstrated by research design, eg asking sensible well-informed questions, but actually mostly requires a bigger time investment: making appearances in the community, either virtually or physically, ideally for a little time before asking the community to help you get your PhD/A-grade/pass.
  2. don't get the community to design your experiment for you. Have a specific goal, more specific than get people to write me lengthy essays about Free Software, and get ideas from that and write about them. In the general case, the ask people incredibly vague stuff and hope they say something interesting technique fails the waste-of-time test.
  3. give your results back to the community. The most common problem with the various surveys, interviews and questionnaires sent to the Free Software community is that responding to them is like shouting into a black hole. It is not unheard of, of course, to see the thesis or essay or roundup that comes out of these, but it is unusual, relative to the number of requests. Most of the time the researcher promptly disappears. Researchers should come to the Free Software community with an explanation of when and where they will make the results of the study available. They should explain the aims in advance unless this would compromise the results. (On that note: Anne Chin is giving a linux.conf.au talk this year.)

January 05, 2010

Donating our OLPC XO

Way back at linux.conf.au 2008 there was a large OLPC XO giveaway, but with the rider do something wonderful with this, or give it to someone who will. Neither Andrew nor I received one directly, but Matthew Garrett gave his to Andrew essentially on the grounds that he wasn't going to do anything wonderful with it. (If I have the chronology right, Matthew had a stack of laptops in his possession at the time and did things to them regularly, generally making them sleep on demand.)

In any event, neither Andrew nor I did anything wonderful with the XO: Andrew intended to look at some point at Python or Python application startup times (the Bazaar team have a bunch of tricks in that regard), but two years is a lot of intending.

Still, better late than never. In the spirit of the original giveaway, we've handed it over to be taken to New Zealand by someone going to linux.conf.au 2010. It will be donated to the Wellington OLPC testers group, who meet weekly to work on various projects and who are somewhat short on machines.

If you are similarly (morally) bound by the linux.conf.au 2008 giveaway conditions, aren't doing anything wonderful with your XO, and are going to linux.conf.au 2010 or can get your XO there, you could do likewise. You could drop off to Tabitha Roder at the education miniconf, the OLPC stand at Open Day or otherwise get in touch with her. (You probably want to let her know yours is coming anyway, so she has a sense of whether to expect one or two, or a truckload.)

Other possibilities include getting involved in the Sydney group or checking if they'd have a use for laptop donations. (They meet more regularly than that wiki page implies; they are now meeting at SLUG.) I don't know what the status of the OLPC library is. The webpage being down is probably not a great sign, but perhaps collaborators would help John out there. You'd at least be doing something meta-wonderful.

January 04, 2010

beep



Kim has been tinkering with analog electronic music. Over the Christmas break he has put together an 8 step rotary sequencer and atari punk console.

January 03, 2010

Can haz kernel patches?

As it’s only a couple of weeks till another Linux.conf.au is underway, I thought I better post this draft from the last one! This year LCA is in Wellington, New Zealand, sadly I didn’t get my act together enough to make a proper holiday of it. I’m definitely looking forward to catching up with all the cool hackers at the conference.

One of the best talks I went to Linux.conf.au last year was the Ksplice talk. This is a wonderful tool which allows people to develop “hot patches” so that you never need to reboot again. The developers have done some very cool work which means for 88% of patches a hot fix can be generated automatically. The presenter was a really great speaker too, during the talk he explains some advanced concepts (like hot to fix-up memory structures) I was able to easily understand it all. I can’t watch until I never have to reboot my Linux machines again!

I also attended Rusty’s tutorial on hacking lguest. Two years ago I submitted a very important patch to lguest which is now included in the kernel. This year I didn’t get as far as I had wanted mostly because I had not gotten enough sleep the night before. I did however submit one patch which was accepted. I guess that makes me a kernel hacker :) .

Sadly, Rusty won’t be running another lguest tutorial this year, so it’s unlikely I’ll submit a third patch.

January 02, 2010

chaos in the castle

Went with [info]socraticomatic to see Kaki King last night at the East Brunswick Club. It was pretty amazing (once the drummer calmed down a bit). She did a 90 minute set without a break, which was also pretty amazing. I'd seen videos of her playing, but it's pretty wild to watch her do it live (video of what I mean).



What I didn't realise is that she rarely seems to play her guitar with a canonical tuning, and she tells hilarious stories while she retunes her guitars. She also appears to be able to tune a guitar without any reference (as far as I could see). Also one of her band members was playing synthesiser trumpet, that's kinda cool.



~



The support act, Pikelet, was also really good. It was just one woman, a bunch of instruments, a loop machine and an effects rack; the sounds she was creating were brilliant though. She did a 45 minute set and it was really engaging. I ended up buying her album (though I'm yet to listen to it), I think a lot of other people did too.



Update: the album is good, but not as fun/awesome as watching her build the loops on stage.



~



I wish I'd taken a photo or two, but I didn't bring a camera. Let's just say that bit of the N900 promo video, where the dude takes a photo of a gig, does not result in an equally great photo; just a lot of hot carrier noise.

fixing button theming with GtkBuilder

This is a bit icky. It would be neater if the Python bindings exposed hildon_gtk_widget_set_theme_size(), but not much. So, to fix the button theming if you've created your interface with GtkBuilder, it looks something like this:

# these aren't exported anywhere, copied from Maemo GTK+
HILDON_HEIGHT_FINGER = 70
HILDON_HEIGHT_THUMB = 105

# fix theming
for widget in self.ui.get_objects():
    if not isinstance(widget, gtk.Button): continue
    # hildon_gtk_widget_set_theme_size is not bound into Python
    if widget.get_name().startswith('largebutton'):
        widget.set_size_request(-1, HILDON_HEIGHT_THUMB)
    elif widget.get_name().startswith('kpbutton'):
        widget.set_size_request(HILDON_HEIGHT_THUMB, HILDON_HEIGHT_THUMB)
    widget.set_name('HildonButton-thumb')

January 01, 2010

happy new year

Had a pleasant day off eating snacks, watching The Pretender with friends and hacking on my tram tracking app. I added geolocation, which meant needing to test on the device, so I had to package up python-suds for Maemo (git-buildpackage repo, Maemo package).



The app actually runs quite nicely on the device, although each SOAP query is a little slower than in Scratchbox. This makes the Update Database quite a bit slower (also possibly calling COMMIT after each INSERT is a little expensive, I'm not sure). Otherwise things are quite zippy, including searching by location.



I'm not entirely sure I'm using the location API correctly, I don't seem to receive any updates to the location. I think it does some caching to speed up lookups and cut down on signals, so I'll need to try it from another location, but I don't even seem to receive an initial signal when the GPS locks.



I started having a go at packaging the application itself, but ran into some error I don't understand (Debian always seems to throw obscure errors when I try to package things). Regardless, the branch is here. Would love some help here.



It seems like all the fundamentals are now in place; including favourites, status messages and geolocation. Still want to add support for tracking individual trams. Also need to tweak the interfaces, buttons don't look like they have the right texture. Was thinking of using my Google Maps/GtkWebKit experiments to add a "View On Map" option for location based searches.











December 31, 2009

Actual hard copies have arrived!

Originally posted on Practical Arduino



They're here!







Hopefully any day now they'll be arriving on the doorsteps of everyone who placed a pre-order. And if you haven't ordered it yet, here's a subtle hint.

December 30, 2009

This is not a New Year’s Resolution

It began as long as a year ago with a bit of anti-sugar advocacy from Denise, my mother-in-law… She suggested I read Sweet Poison, which is basically an Australian pop-science rediscovery of John Yudkin’s Pure, White and Deadly — published in 1972. 1972!

My curiosity was reignited when Garrett recently tweeted a link to this fantastic lecture:

Click here to view the embedded video.

So I have a new analogue hacking project: I’m going to see if I can massively reduce the amount of sugar in my diet. Obvious targets #1 and #2: soft drinks and sweets.

Although they probably represent the vast majority of my sugar consumption, the rest of it is the ugly, insidious, sand-in-your-budgies sugar you’ll find in the strangest of foods… especially if you’re in the USA, given the HFCS damage.

A Rant: Why Telepathy is not for Twitter

Telepathy is a pluggable framework for abstracting real-time communication protocols. Every now and again, someone pops up wanting to write a Telepathy Connection Manager for Twitter or Facebook's wall or some other service of this nature. This is normally because they want to see their current status in their chat roster, or update their wall via their presence or somesuch. I, however, believe this to be a very bad idea.



Twitter and Facebook's wall don't really expose any features of a chat protocol. The only thing they have in common is a message. Not even a presence (available, away, do-not-disturb, etc.), just a message. So you could expose a roster of these broken presences. They're not real time; you can't chat with these people. Unless you count submitting messages to Twitter with @danni on them as chatting; and that's not really private one-to-one chat.



In my personal opinion, Moblin's status panel, and Mojito, are a much better fit for these sort of services. A separate abstraction for these non-real time services. Of course, thanks to the power of Telepathy, it is very possible to listen to Mission Control for status message updates and then post these to Twitter if that's what you really, really want. Or you could make your status panel set your chat status. It's about 12 lines of code.



As for rosters, I wish people would stop suggesting the integration misc functionality into Empathy. [Separate rant: this includes mail notification. Stop asking for this. Just because a given chat protocol includes mail notification, Empathy is not the place for displaying it. Instead someone should write a plugin for the mail-notify applet that can subscribe to information coming from Telepathy's new mail notification spec.] Ignoring that Twitter really has to be read linearly to follow a conversation, I think Moblin (again) has the right idea with its People panel, and this is a concept I'd like to see appear in GNOME 3. Combine this with some semantic net metacontact magic and then you can see whether or not a person is online right now to chat, what their Facebook status is, recent photos they've uploaded, recent email threads and whatever, without trying to cram it all through one abstraction.

December 29, 2009

o’reilly mysql conference & expo 2010

It is my pleasure to be your Program Chair, for the O’Reilly MySQL Conference & Expo 2010, to be held April 12-15 2010, in Santa Clara, California.

It is of course, not something I embark on alone. I have a program committee, comprising of some amazing folk: Brian Aker, Kaj Arno, Roland Bouman, Sheeri K. Cabral, Robin Schumacher, Baron Schwartz, and Jeff Wiss.

I can highly encourage you to submit a proposal. You have till January 27, 2010, which basically means, less than a month, so get cracking! I also can highly recommend you to register as an attendee.

I’ll talk more about the processes, et al, in a later blog post, but I want to ensure that in 2010, we are going to be completely open and transparent in our decision making process. And I want you, the MySQL community, to participate. Watch this space for more details.

And again, its a great honour, being your Program Chair for the conference in 2010. I expect it to be a blast.

Related posts:

  1. A little MySQL Conference & Expo 2009 update
  2. Just registered for the MySQL Conference & Expo 2008
  3. Some random thoughts, notes, etc. from the MySQL Conference & Expo 2007



helping (save) mysql

The latest in the whole Save MySQL campaign: HelpMySQL.org. Monty has a really long blog post on how to help keep the Internet free. When you read that, scroll down towards “Q: How do the proposed remedies benefit your company, Monty Program Ab?” Understand that Monty is doing this for the love of the codebase and the project that is MySQL…

Totally love the copywriting here: Customers pay the bill: Oracle can have Sun but not MySQL. There’s been a lot of FUD in the last few months, but I suggest you read the issues (with an open mind), check out the FAQ, and if you’d like, sign the petition.

For me? Never again, will I recommend software for commercial use that doesn’t have a lively developer community. Sun reductions hitting open source efforts proves why – commercial (only/mostly) backed open source, just seems troublesome, when companies get merged/sold/et al.

OK, back to your regular scheduled programming. I shall enjoy my visit to a rather cold and wet London. Happy New Year!

Related posts:

  1. URGENT: Action Needed to help save MySQL
  2. Monty is the world’s first MySQL fellow
  3. What MySQL Can Learn from PostgreSQL



a hacky way of monitoring messages in Telepathy

Sometimes people come up with some creative solutions to solve their problems. The correct way to monitor data, such as messages, coming from Telepathy is to write an Observer, however sometimes you just want to get a feed of all of the text messages (e.g. so you can feed it to your keyboard's LCD or something).



The following is a pure D-Bus solution (although it includes telepathy.interfaces to cut down on typing). It listens to all Channel.Type.Text.Received signals, looks up the connection they came from and resolves the sender handle to a name. However note: it makes a lot more D-Bus calls than is required with Telepathy. Really you should cache the results for these handles and listen to the signals that tell you when that information has updated. If you were doing things properly, that's what you'd do.

import dbus, gobject
from dbus.mainloop.glib import DBusGMainLoop
from telepathy.interfaces import *
from datetime import datetime

dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
bus = dbus.SessionBus()

def message(id, timestamp, sender, type, flags, text, path=None):

    # path is the object path of the channel, from this we can derive the
    # object path of the connection, and acquire a proxy to it
    service = '.'.join(path.split('/')[1:8])
    conn_path = '/' + service.replace('.', '/')
    conn = bus.get_object(service, conn_path)

    # request the alias and id of the sender handle
    d = dbus.Interface(conn, CONNECTION_INTERFACE_CONTACTS).GetContactAttributes([sender],
        [CONNECTION, CONNECTION_INTERFACE_ALIASING], False)
    alias = d[sender].get(CONNECTION_INTERFACE_ALIASING + '/alias',
        d[sender].get(CONNECTION + '/contact-id', "Unknown"))

    dt = datetime.fromtimestamp(timestamp)

    print "%s <%s> %s" % (dt.strftime('%H:%M'), alias, text)

# listen to all Channel.Type.Text.Received signals
bus.add_signal_receiver(message,
    dbus_interface=CHANNEL_TYPE_TEXT,
    signal_name='Received',
    path_keyword='path')

loop = gobject.MainLoop()
loop.run()
Like I said, this is not efficient use of Telepathy. If it eats your D-Bus, don't blame me.



On the other hand, this has actually started a conversation about possible new convenience classes for telepathy-python.



bowl and chopsticks

December 28, 2009

Hermit's cave

For my loyal and devoted readers: I need to turn off the firehose so I'm taking something of a 'net vacation for a while, including but quite possibly not limited to Identica/Twitter/Facebook, mailing lists and blog comments. Phone and direct email will reach me (before I go into labour at least, which is likely not any day now).

December 27, 2009

pie tomorrow, pie yesterday, but never any pie today

Had a pleasant Christmas; spent with J, DB, Jo, K and T; spoke on the phone with family and overate vegan food (including the world's most delicious vegie sausage rolls... twice!). Received some very lovely and thoughtful gifts, also a number of penguins (which are also lovely).



the sausage rolls


Went shopping with K yesterday (found some new tops, wish I could have found a nice dress). Saw Sherlock Holmes with Steph and Melbourne Squids. I enjoyed it quite a lot (this is not to say it was perfect storytelling, but it massively exceeded expectations).



They've remade Clash of the Titans. Somehow though you'd think they could come up with a better tagline than Titans Will Clash. Just think of all the other movies this genius could have been applied to... Jedis Will Return!. Brilliant work.



dessert


Woke up this morning with a headache, so planned on a lazy day where I finished off some work from last week. Guests turned up while I was still in my PJs. Glad they did, regardless of my state of dress.



Tonight I am eating more veggie sausage rolls, and writing a little bit of software. Started on a Google Maps client for the N900 which uses GtkWebKit. It currently doesn't work that well, but seems to prove what's possible. GtkWebKit is relatively straightforward.



Working a half week next week, with Friday off again. Especially looking forward to the vegan picnic on Tuesday. Planning on making these.

December 26, 2009

Custom User-Agent with twisted.web.client.getPage

Since getPage just passes most of its’ args through to HTTPClientFactory, you can just make a simple wrapper to set the user-agent:

    from twisted.web.client import getPage
    ...
    def my_page_getter(*args, **kwargs):
        if 'agent' not in kwargs:
            kwargs['agent'] = 'your user agent/1.2'
        return getPage(*args, **kwargs)

Mud map

Well, according to my weather station, it's rained a welcome 55mm in the past 24 hours. Most of that has just been a slow drizzle. I don't actually remember the last time it did that - I don't think it rained continuously for a day to produce the February floods. And I certainly don't remember too many occasions it producing as much as that (apart from in ~April when that much came down in less than an hour[1], not very usefully I might add, when it washes away half of the country).



Amusing little map of the state. We're one of those dots. Heh.



I might take a ride down to see what the river's doing, but then again, it's raining.



A network of rivercams might be handy right about now.



Incidentally, rain now means an outbreak of St John's wort next week. I can already picture the happy cows as they feed on herbal remedies.



 _________________
< cowsay mooOOOO! >
 -----------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||




[1] While I was waiting under a shop awning waiting to go home, waiting for that big heavy stationary cloud above us to run out of water.

December 25, 2009

�Z����yhh �ް��^�����+l�6�jw

I got a nagios alert from the acquisition/guidance system at work (which won't be used for several days, but I don't plan to be back before the weather turns good again!) that it had gone down.



However, I can see outside that the beginnings of our predicted 200mm rain have started to fall, and sure as hell didn't want to get stranded on the mountain given that a couple of points along the road are where the Castlereagh chooses its first points to flood (there are currently flood watches, but certainly no need for warnings yet - about 70% of such flood watches turn into flooding events). And hey, I'm on holidays!



Only a couple of weeks ago had I learnt how to work the lights out management of most of our machines, although I've only configured the basic IPMI commands for environmental monitoring, and I had gotten as far as documenting how to log in and control the ipmi devices, but couldn't arrange a machine to test it on -- so perfect time to test it!



ipmitool -I lan -U root -H aatlxp_ipmi -f passwdfile chassis power cycle



Nope, didn't work. Nor did a chassis power reset. Or maybe it did, but fsck got stuck and I can see what's on the console.



But a chassis power off, followed by status, then on confirmed to me at least that such was working. Gave it a few more minutes, and it's all up and back working again.



In the new year, I shall configure serial-over-lan so I can fsck with fsck when it gets fscked.

December 23, 2009

LCA2010 Registrations Extended!

WELLINGTON, New Zealand – Thursday 24 December 2009 – Merry Christmas from linux.conf.au 2010!

Preparations have been going really well for what will be the best free and open source conference of the southern hemisphere! We were thrilled with the response to the conference schedule, and registrations for the conference have been coming in thick and fast. So much so that we even sold out of Early Bird Registrations almost a week early!

Registrations are due to close today. Although a number of people have been unable to register for LCA2010 because we have not been able to accept American Express payments. We're now making this possible. It will take a few more business days to get this working so we've decided to extend our registrations into January.

Only a limited number of tickets to linux.conf.au 2010 remain, so get in quick! Some of you were disappointed to miss out on Early Bird tickets. To avoid mass disappointment, please let your friends/colleagues know so that they don't miss out too.

To register for linux.conf.au 2010, please see: http://www.lca2010.org.nz/register.

Merry Christmas and see you in January!!

About linux.conf.au

linux.conf.au is one of the world's best conferences for free and open source software! The coming linux.conf.au, LCA2010, will be held at the Wellington Convention Centre in Wellington, New Zealand from Monday 18th January to Saturday 23rd January 2010. LCA2010 is fun, informal and seriously technical, bringing together Free and Open Source developers, users and community champions from around the world. LCA2010 is the second time linux.conf.au has been held in New Zealand, with the first being Dunedin in 2006.

For more information see: http://www.lca2010.org.nz/

About Linux Australia

Linux Australia is the peak body for Linux User Groups (LUGs) around Australia, and as such represents approximately 5000 Australian Linux users and developers. Linux Australia facilitates the organisation of this international Free Software conference in a different Australasian city each year.

For more information see: http://www.linux.org.au/

Emperor Penguin Sponsors

LCA2010 is proud to acknowledge the support of our Emperor Penguin Sponsors, InternetNZ, Google, HP and IBM.

For more information about InternetNZ, see: http://www.internetnz.org.nz/

For more information about Google, see: http://www.google.com/

For more information about HP, see: http://www.hp.com/

For more information about IBM, see: http://www.ibm.com/

December 22, 2009

Founded openQRM Enterprise

... and here what Google "says" about openQRM Enterprise.btw: the "here" link above points to the google-translate engine which then outputs in tss meaning "speak". By clicking on the link Google speaks the sentence given as the parameter.As reported this is not supported by all browser. ;) works fine here on Linux/Firefox.

Python on Nokia/S60

I finally got a smartphone a week or two ago. I ended up getting a Nokia N86, based on a combination of form factor (I would’ve preferred a flip phone, but apparently not enough people do for there to be lots of different models, and I’m still a bit reluctant to go for touch interfaces), camera spec (optical zoom would’ve been a killer feature, but if you’re not Korean, apparently not until next year), and hackability. There seem to be a variety of smartphone flavours at the moment: there’s Windows CE (which I had on an old phone, and which sucked worse than I expected), there’s Blackberry (which is kinda closed and corporate, and tends to come with relatively crappy cameras for the price), there’s the iPhone (which has a mediocre camera, and no Python support at least as far as the app store is concerned), there’s Symbian (Nokia and Sony-Ericsson and maybe Samsung smartphones), and then there’s the Linux variants: Maemo (Nokia N900), WebOS (Palm Pre), and Android. Android would probably have been my preference there, but any of the Linuxes would work too, and I found out Symbian had decent Python support so that works too. And as it turned out the older Linux phones didn’t really match my feature list, and the newer ones, while pretty, are either as yet unavailable or kinda expensive (or both). So an N86 it was. Which has turned out to do pretty much everything I wanted so far.

Nokia’s phone roadmap is pretty confusing (which seems to be par for the course for the telco industry admittedly) supporting both Maemo as well as different versions of Symbian everywhere (the most recent ones of which are apparently open sourced) as well as lower end “feature” phones. Apparently my Symbian version is “S60 3rd Edition”, and if you want to write apps the difference between that and “2nd edition” is a major one. S60 3rd ed is also, apparently, known as “Symbian OS 9.3″, the followup to which is “Symbian^1″ which is also known as “S60 5th Edition” (4th Edition got skipped because 4 is unlucky for some). It’s on the latest Nokia smart phones — N97, 5800 XPressMusic, etc. “Symbian^2″ and beyond will apparently be the open source versions, except that maybe it’ll be “Symbian^3″ before any phones ship with it. There was also S90 which was more advanced than S60 at the time, but then got merged back in, so now it’s obsolete and S60 is better. Apparently the way phone OSes work is that you only upgrade when you get new hardware, so all the different versions ever are still floating around on old phones.

Anyway, add ons for Symbian come packaged in “sis” files (”Symbian Installation Source” supposedly), which come signed in various different ways (some are signed for only a particular phone, in part to make it harder to write viruses, eg) and with different listed capabilities (so if your app doesn’t need to use gps or wifi, it will be blocked by the OS from doing so). When I first got the phone, the deal was you’d scour the web, and discover that you could download Python for S60 1.9.7 from garage.maemo.org — which is a SourceForge-clone that presumably was originally for Maemo stuff, but is now for anything Nokia-ish. Of course, there was no Python 1.9.7, and this is really Python 2.5.4 with miscellaneous Symbian extensions. In order to get a Python REPL prompt, you need to install both the Python_1.9.7.sis runtime and the PythonScriptShell sis, of which there are a few with different capabilities. Of course, you can only do this after unpacking the PythonForS60_1.9.7.tar.gz, which you can’t do on the phone.

Anyway, get that done and look at the docs and you can actually do something, which is kinda cool. I’ve been just plugging it into my laptop as USB mass storage and copying py scripts across, then running them from the ScriptShell menu so far, which is a bit kludgy but at least usable. So far it seems like lots of little bits of the API aren’t quite implemented for Python — I haven’t found a way to change the top right softkey hint from “Back” or “Exit” to “Save” or “Hide”; but that might just be unfamiliarity. More concerning was that when I tried to use time.mktime to get a Unix timestamp, the interpretor just crashed entirely, so it seems like there are some bugs around too. But the fact that you seem to be able to get at pretty much all the phone features (camera, gps, gsm location, sms, etc, etc) from pretty simple python still makes it a win in my book.

Shortly after I’d gotten that far, I did a random invocation of the “SW Update” app to see if there was any new stuff for me, and got informed “Python for S60 2.0″ was available for download. Neato, I thought, and went looking to see what the deal was — but there’s almost nothing out there discussing it. I tried installing it anyway, but apparently the download got cut off, and SW Update isn’t smart enough to continue or start again in that event. But deleting the partial download and trying again worked, and eventually I got me some Python for S60 2.0, which seems to be the same 2.5.4 version 1.9.7 was. The advantage, in theory, should be that programs written in python can just have a sis file that says “I need Python” and the official version will be automatically downloaded. But my first go at making that happen seems to indicate that the dependency used to be on “Python for S60″, but maybe now needs to be on “Python runtime”. Which, of course, is hardcoded into the app (ensymble), and although that’s an open source Python app (and packaged for Debian at that), it’s distributed as a base64 encoded blob so you have to go right back to the source to change the appropriate seven characters. Assuming, of course, that I’m on the right track in my guess as to what the problem is.

As far as I can tell, there’s still not much in the way of any sort of official announcement as to what’s going on with PyS60 2.0, but it seems that they’re rolling it out to some handsets, and the N86 is just lucky on that score. It’s bizarre to me that the Nokia devteam aren’t doing any bragging about getting Python for S60 up to 2.0 and into the official distribution, but I get the impression there isn’t much communication going on in general. I haven’t been able to spot the source for 2.0 either, though I haven’t exactly looked very hard.

Chrissie panic

"If you're like me, you usually post them late" - KRudd on the postal strike.



Dear public who care so deeply about not being able to get mail for a couple of days: Maybe you should all post your chrissie cards earlier. So much rampant consumerism and token gestures. Christmas cards only exist because you can't be bothered keeping contact the rest of the year. Bah humbug.



"you're lack of planning is not my emergency". Apparently the striking postal workers are selfish. Not the people who employ them in poor conditions, oh no.



I'm allowed to feel morally superior saying this, because I have already recognised how stupid I was in not being organised enough to book my Tasmania tickets on time.



In other morally superior news, I'm kinda laughing at the people on the news complaining that they can't make a last minute dash across the English Channel. Maybe they need to build a bicycle tunnel. It's only 34 kilometers, they'd be home by now! And it'd boost the flailing English economy.





In other weather related news, we've got a bit of a farcical situation at work regarding our site generator - we don't have control over it anymore, and the university want to replace our old generator with a scheme that involves unnecessary high voltage switchgear despite not having any staff competant and legally trained in operating it, and us having proposed a much more sane system to them which we would of course fund 2/3rds of because of the site agreement. We're hoping the 15 power outages over the past 24 hours may convince our building manager that we need to go independant of the university. Mmmm, yummy thunder.



I've got an electric feeling



Yes, that's 240volts nominal going up to 270volts, browning out many (25) times to sometimes 120volts, and going black something like about 15 times for a second or longer (many many more times for shorter periods that didnt register on the UPSen).



The lightning had a 40 second periodicity lastnight. I had my camera going on 20 second exposures, with 20 second dark frames. Every single time the camera was performing a readout, a bright lightning flash would happen. I took about 500 photos, and about 2 of them had a lightning flash in them. Overexposed of course. And then today, everytime I looked away, the back of my head would be illuminated by a big fat lightning flash. Oooh, blackness again. I've got analogue TV ABC1 going into my left speaker, and digital ABC1 into the right speaker. The digital version really doesn't like power fluctuations.



Note to self: Sting and Geoffrey Gurrumul Yunupingu. That's going to be *ace*.

December 21, 2009

this is what goes around; and this.. this is what comes around

It used to be that no applications would compile for 64-bit architectures, because everyone was trying to cram pointers into ints. Today I had the opposite. The head of some code I'm working on wouldn't compile in a 32-bit environment, because someone was trying to store 5 bytes in a long.



We have truly come full circle.

December 20, 2009

The Great Australian Internet Blackout

The Great Australian Internet Blackout is a combined online and offline demonstration against imposed online censorship. We’re collaborating with Electronic Frontiers Australia (and hoping to bring on similar organisations soon) to make sure every Australian knows why this draconian policy is unacceptable.

We’re gathering steam within the online community opposed to this policy, then broadening our audience with offline outreach efforts. Our first big demonstration will be during the week of Australia Day… websites across the country with go dark for the week, and we will celebrate the national holiday by joining the traditional Australia Day public parties across the nation, wearing black (hey, it’s a “blackout” after all!) and informing our fellow citizens about the threat of imposed online censorship.

Check out the website for more info, follow @OzNetBlackout on Twitter and get involved via Facebook group and events.

Click here to view the embedded video.

Excluding draft posts from your feeds

Since feeds in ikiwiki are just the result of the [[inline]] directive generation a list of pages, you can use the combination of a pagespec and the tag plugin to stop ikiwiki from syndicating draft pages. Just include “!tagged(draft)” in your page spec for the page that generates the feed (e.g. blog.mdwn):

[[!inline  pages="./blog/* and !*/Discussion and !tagged(draft)" show="100" ]]

then for each article you’d like to hide for now, simply add the ‘draft’ tag:

[[!tag  foo bar baz draft]]

We don't need no steenking competition

My stupidity astounds me. I suspect it might be a good time to cry, because it turns out the ferry is booked out until well into the new year and after the festival finishes. Didn't there used to be many ferries? To both Hobart and Devonport? Different companies? And not just the 1 ferry per day?



Anyone want some cheap tickets to the Marion Bay Falls Festival?



Bugger. That'll teach me. Who woulda thought this was a busy time of year?

I have the power

I just want you all to know that it was me that broke the drought. I was planning on riding the bike down to Tasmania to go to the Falls Festival on Wednesday. Now sure, it won't rain locally, but I don't see a way of avoiding the forecast 3 day downpours anywhere else on my route.



If you see a thouroughly soggy TimC around Batemans Bay on Wednesday/Thursday, buy me a warm drink in thanks, please?



In other news, I'm thouroughly disorganised for Hmas. I haven't even put my handwritten "Bah Humbug" sign (2 pieces of A4 paper) lit by a couple of flashing red LED lights, out front of my flat. And I am hesitating booking tickets on the broken Spirit of Tasmania website because I don't know how much the rain will delay me.

Melbourne Tram Tracker for the N900

So Collabora's robotic and non-robotic overlords very graciously bought everyone on staff an N900 for Christmas. In my opinion, it's actually a very nice phone (although possibly a little on the large side); but the let down is there just isn't the same host of applications for it. Still, possessing both the tools and the skills, I figured I should do something about this, rather than complain.



One of the most useful iPhone applications in Melbourne is the real-time tram tracker. For stops without a display board, you can type in the stop ID and get the upcoming arrivals at that stop. You can also find nearby stops via GPS and a bunch of other things. It turns out that Yarra Trams offer a SOAP WSDL web service that is reasonably well documented, so I've spent a few days putting together a basic tram tracker for Maemo 5 (even if only two people will ever use it).

















It currently can show upcoming trams for a stop by ID or by searching for stops by road names. Could possibly also do things like search for stop by route. There is a lot of information available. It doesn't yet do searching by location; the information is in the database, I've just not yet looked at how the location APIs work yet. Also need to add support for storing favourites.



I also want to add support for tracking a tram by tram ID. I'm wondering if it's possible to use the GPS to detect periods of immobility and check the upcoming tram stop after the tram starts moving again. I habitually miss stops; so what I think would be neat is to dial in a stop number or cross road you're looking for, and have your phone notify you when you're approaching it.



The web service uses python-suds, which is unfortunately not packaged for Debian, so I can't just rebuild it for Maemo (if anyone wants to package this up for me, that would be really awesome). Then I'll find out how well my app actually runs on the device.



In case anyone cares, the source code is here.

December 18, 2009

a threaded processing queue in PyGTK

I'm currently writing a PyGTK client that needs to make network requests using a library that doesn't integrate with the GLib mainloop (python-suds), so I found myself wanting to be able to make network requests without blocking the mainloop, and getting callbacks in my main thread when operations were done. The pattern to use is clearly having a dedicated network thread. In C I might have used GAsyncQueue, however I've found myself quite liking queue.Queue.



The following is a fairly generic class for queuing asynchronous requests. Calling the add_request() method from the main thread queues a function to be run in the worker thread. If the callback or error keywords are provided, these will then be called from the GLib mainloop in the main thread (queued via g_idle_add).

from threading import Thread
from Queue import Queue

import gobject

class ThreadQueue(object):
    def __init__(self):
        self.q = Queue()

        t = Thread(target=self._thread_worker)
        t.setDaemon(True)
        t.start()

    def add_request(self, func, *args, **kwargs):
        """Add a request to the queue. Pass callback= and/or error= as
           keyword arguments to receive return from functions or exceptions.
        """

        self.q.put((func, args, kwargs))

    def _thread_worker(self):
        while True:
            request = self.q.get()
            self.do_request(request)
            self.q.task_done()

    def do_request(self, (func, args, kwargs)):
        if 'callback' in kwargs:
            callback = kwargs['callback']
            del kwargs['callback']
        else:
            callback = None

        if 'error' in kwargs:
            error = kwargs['error']
            del kwargs['error']
        else:
            error = None

        try:
            r = func(*args, **kwargs)
            if not isinstance(r, tuple): r = (r,)
            if callback: self.do_callback(callback, *r)
        except Exception, e:
            if error: self.do_callback(error, e)
            else: print "Unhandled error:", e

    def do_callback(self, callback, *args):
        def _callback(callback, args):
            callback(*args)
            return False

        gobject.idle_add(_callback, callback, args)
We can then inherit this class to provide setup for our specific application:

class WebService(ThreadQueue):
    def __init__(self, guid=None, **kwargs):
        """Initialise the service. If guid is not provided, one will be
           requested (returned in the callback). Pass callback= or error=
           to receive notification of readiness."""
        ThreadQueue.__init__(self)

        self.guid = guid
        self.add_request(self._setup_client, **kwargs)

    def _setup_client(self):
        print "Setting up client"

        ...

        return self.guid
Which we call from our program like this:

class Client(object):
    def __init__(self):
        self.w = WebService(guid=guid, callback=self.client_ready)

    def client_ready(self, guid):
        print "client ready:", guid

gobject.threads_init()

Client()

gtk.main()
What's really cool though is adding methods to the API that are called asynchronously for you. Python makes this possible through the power of decorators. Add the following decorator to a method, and it instead of it being called directly, it will be added to the processing queue.

def async_method(func):
    """Makes the given method asynchronous, meaning when it is called it
       will be queued with add_request.
    """

    def bound_func(obj, *args, **kwargs):
        obj.add_request(func, obj, *args, **kwargs)

    return bound_func

class WebService(ThreadQueue):

    @async_method
    def GetStopInformation(self, stopNo):
        print "Requesting information for stop", stopNo

        ...
And that's it! If you can't follow it, don't worry too much. This is possibly the most Pythonesque bit of code I've ever written, but I've tried to make it generic enough that other people can use it for whatever they need. It's currently part of my app that's beginning to take shape, but the source is here.



Incidently, Maemo people: are there Glade definition files allowing me to use Hildon widgets, GtkBuild and Glade 3? That would be super awesome if there were.

The Nokia E72: Quick impressions

Last week I was invited by Nokia Malaysia to preview their latest flagship E-series device – the Nokia E72. A bit of background to this device and me: I was dearly using my Nokia E71, right up until it was replaced with a Nokia N97, and before that I was using the Nokia E61i. I’ve loved this particular series of devices, and the E72 is no different to me.

First impressions? Build quality is still excellent. Its got a better camera (5MP vs 3.2MP). They keyboard seemed a little odd in my hands, but maybe its because I’ve become used to what the N97 gives me (it took me a while to get used to that too). The charger is now micro-USB based, making it pretty standard. It supports SIP/VoIP out of the box (something the Nokia N97 still does not offer!).

I’ve seen many ads about how its a “Blackberry killer” of some sort. I know it does well with Exchange and Lotus Notes, but how does it deal with Google Apps? Probably just works over IMAP, and throw in Google Sync and all should be well (I didn’t test this out, its just an assumption). The mail application is free for the life of the phone, but I don’t know – I’ve grown accustomed to having email on a BlackBerry device. I tried the mail application on the N97 (during its beta phases), and it was too unreliable for me. One would assume the E72 has a more stable version.

Chat. They have some kind of OviChat, which reminds me of the BlackBerry Messenger. Its unclear to me how my Ovi account on my N97 can get on this chat, but it could be a useful feature. Have data, have OviChat, no need SMS messaging – I’m sure the telcos will love this. It also supports Google Talk out of the box, and MSN Messenger. It apparently signs you out to conserve battery life if you don’t use the chat app after a certain period of time… and that to me isn’t too useful. Give me good juice, and also keep me signed in… always.

From my limited experience with it, I didn’t see it supporting VoIP over data – its just VoIP over WiFi. The in-built browser could use some improvement – its still a little too last century for me. I don’t exactly like Opera on the Nokia devices either (though I use Opera Mini on the BlackBerry, again because its in-built browser sucks).

Camera. Before this, on the E71, you’d press T to autofocus. Now, you’d just use the optical Navi Key. It autofocuses, and like magic, it takes the snapshot. I never mentioned that yet, huh? The Navi Key. It rocks. Its what makes the latest BlackBerry Curve 8520 a good phone too… In fact, they’ve depressed it, and the feel/functionality is actually better.

Trend watch? All devices that don’t have touch screens and still have a navigation key, are giving up on those trackballs. I reckon they’ll all go the way of the Navi Key (or whatever they call it). It’ll be optical. It’ll be accurate. It’ll be less of a burden on your thumbs.

Disclosure: The meal at Italiannies was nice, and I got a bunch of door gifts – a cute guide to mobile etiquette and a (leather?) cards holder. Plus I got to have a chat with some friends whom I don’t see often, all on Nokia’s dime.

Related posts:

  1. Nokia N97 – Quick Impressions II
  2. Nokia N97 – Quick Impressions
  3. Nokia N73: impressions on the Optus network, and a Mac



December 17, 2009

December 16, 2009

Saving the paint pot

It's a good thing he was never deported. He's been a fantastic instrument scientist. And he made ace snow domes containing a tiny little version of the Sydney opera house with tiny little red "No War" lettering.



But I am glad he wasn't involved in the latest Opera House shenanigans. We still need him.