Monthly Archives: January 2013

Why my phone is silent during LCA talks

I don’t especially like Tasker’s interface, but setitng one’s phone to silent is nice enough to bust it out, so I thought I’d explain how I do this during linux.conf.au.

A bit of background: Tasker is an Android application (not free in either sense of the word) that does things to your phone when certain conditions (called contexts) are true. For example it could change the wallpaper (task) when you have unread text messages (context). I have, for example, Tasker tasks that turn my phone to silent between 10:30pm and 7:30am local time; and to run rsync backup (which copies the contents of my phone to my home server, ie backs it up) every time it is both on power and connected to my home wireless network.

Tasker somewhat trades between UI simplicity and power in favour of power (although even then I think there are better possible UIs for it). You can generally find specific apps that do individual Tasker-like things (for example, I would not be surprised if there was a ‘Silent at Night’ app), but Tasker lets you specify a wide variety of contexts and tasks.

First: the LCA calendar iCal is in my Google calendar, so it’s available to Tasker through its Calendar contexts. So that’s prior to setting this up.

The basic setup would be this:

  1. Go into Tasker.
  2. Add a Context (called eg ‘LCA activities’), select ‘State’, ‘App’, ‘Calendar Entry’.
  3. In Calendar Entry, go down to Calendar, press the search icon, select your LCA calendar.
  4. Press the tick.
  5. Now it will prompt you for the task, which is silencing your phone. Select ‘New Task’. Name the task (‘Silence’): it might be useful for other contexts!
  6. Press + to add an action. Select ‘Audio Settings’ and then ‘Silent Mode’. Turn ‘Mode’ to ‘On’. Leave ‘If’ alone. Press tick to approve the action and then tick to approve the task.

After this teeny (ahem) amount of work you now have a Tasker task that silences your phone during any event on the LCA calendar.

Fine print

My setup is a bit more complicated than this because I thought ‘wait, I want my phone to ring during meals’. This is a pain in the neck to do.

I added a second Context (long hold on the existing context), another Calendar Entry, also on the LCA calendar, but I also searched for location, selected ‘MCC Foyer’ (which is where the morning and afternoon teas are) and selected the Not tickbox, to make it a negative context. The total effect is that when there’s an event in the LCA calendar AND when there’s not an event in the LCA calendar that is in MCC Foyer, the task triggers. But that’s quite a bit nastier.

It can end up being easier to have a calendar that amounts to a ‘Do Not Disturb’ calendar, which isn’t ideal. Some people do something like “silence during anything in my work[/personal] calendar that’s marked busy”, etc etc, which would be longer lived than my LCA recipe. BUT at least my LCA recipe buys us silence for this conference!

Teach me py.test (Haecksen miniconf, Tuesday)

I didn’t manage to go speaking-free for LCA2013 after all, because I have volunteered to help out my roommate Brianna Laugher with the py.test presentation in the Haecksen miniconf.

The plan is that we will do “Teach me py.test” along the lines of Steve Holden’s “Teach Me Twisted” session at PyCon 2008 (see Catherine Devlin’s report). The idea of the session is that I (genuinely new to py.test, although not to either Python or to unit testing in general) will hook my laptop up to a projector and learn how to write tests in py.test, with Brianna teaching me.

We have pulled some of the business logic out of Zookeepr into this git repository in preparation for the talk at 16:05 in MCC6. I am not sure how much we will cover in 25 minutes, presumably not a lot, but it should be an interesting experiment in presentation style.

Cooking notes: mud cake

I made a birthday cake for my son yesterday.

Turntable!

The basic recipe was this mud cake recipe from Taste. Modifications:

  • we’re a three person household, so I cut the recipe in half, give or take (about 2/5ths, mostly, because I used 100g of Lindt 70% Dark chocolate)
  • I used cream, not sour cream. I am intrigued by sour cream in a chocolate cake I have to say, but Andrew doesn’t like sour cream and generally I didn’t want to mess with the sweet flavour of a kid’s birthday cake more than I was already doing by using this recipe

Since we have an espresso machine in the house I also pulled my second or third ever espresso (actually, a very long black at that volume!) which undoubtedly was terrible. I drink coffee very rarely; but of course I didn’t have to taste it directly, I just had to not get coffee grounds in the cake. The coffee taste went well in the cake and means not having to use a liqueur for a bit of zing.

The we established an ancient ritual of our culture:

Cake tasting

I cooked it in a $3 train mould from Kmart. All my love to you silicone cake trays: you’re a pain to get into the oven but a cinch to extract cooked cakes from. The “icing” is molten milk chocolate and the “decorations”, such as they are, are of a train turntable. I’m hoping to decorate cakes with a little more forethought as he gets older.

I cooked it for 20 minutes in a hot oven and another 5 minutes as the oven cooled and that was about right. If you like mudcakes slightly wet as I do 15 would probably work (for pieces of cake this size). The train pieces are a bit short: I wasn’t sure how full to fill the molds when it had self-raising flour in it and tried about 2/3, when I really should have gone nearly to the top.

While he got very excited about the sprinkles, my son actually ate half the undecorated engine with far more enthusiasm. It’s not really a cake for a toddler’s palate (and he totally has one, if everything in the world was made of butter icing he couldn’t be happier) but he didn’t seem put off.

Fun at LCA 2013: my picks for Thursday and Friday

Thursday

I rarely go to LCA’s tutorials, but really, after years of not having to worry too much about distributed version control systems due to having in-house technical support from my husband, a (now former) Bazaar developer, it’s probably time that I came to grips with git. Hence Git For Ages 4 And Up (Michael Schwern) is tempting, hopefully it’s OK for those of us who do use terms like “directed acyclic graph”. This does mean missing Wiggle while you work (Neil Brown) though: apparently you can’t be a git beginner whilst being interested in newfangled patching algorithms.

After lunch The IPocalypse – 20 months later (Geoff Huston) calls to me: it’s the sequel to his LCA 2011 keynote, which is the one that stood out to me. (Well, and Mark Pesce’s, yes, but funnily enough his actual content largely passed me by.) All that doom and gloom, and now what? Has IPv6 cost us our Internet?

A Tridge talk (Building a free software telemetry radio system) is an even more obvious pick than a Matthew Wilcox talk. (Although why did we put that particular talk up against Buffer Bloat? Tridge is going to talk about TCP performance issues.)

In the afternoon Keith Packard has a new passion (Teaching Robotics and Embedded Computing with Legos and Arduino) and then Ristretto: run-time types for JavaScript (Shane Stephens) sounds alarming. In a good way.

Friday

It might also be a two-tute LCA, with Beyond Alt Text: What Every Project Should Know About Accessibility (Denise Paolucci) up first. BUT NovaProva, or How I Did Six Impossible Things Before LCA (Gregory Banks) is the good crack (“NovaProva implements true reflection in C/C++”???), so… difficult!

After lunch, Asheesh Laroia’s Quantitative community management is closer to what I do but I am also curious about The real story behind Wayland and X (Daniel Stone). In the final session, probably Building Persona: federated and privacy-sensitive identity for the Web depending on how my conference energy is going.

And then where?

I’m headed back to the USA in March for PyCon, and I’m looking forward to having way (waaaaaay) less commitments than I did at Wikimania 2012, and therefore being able to catch more of the talks. And not dragging myself to my hotel room at 4pm to order crème brûlée room service because I am too tired to figure out how to work the lifts. (It was good crème brûlée though!) The Ada Initiative will probably be running some non-talk activities though, so it won’t be wall-to-wall talks. And then a second return to the USA for AdaCamp SF. And that really might be enough for one year, but if not, there’s always Kiwicon.

Fun at LCA 2013: my picks for Tuesday and Wednesday

I’m currently regarding LCA 2013 as my last LCA for a while. Never say never: LCA 2014 bids came in from Sydney (so, local to me) and Perth (where I’ve never been and would like to go). But I first went to LCA in 2001 and then later went to 2004 and since 2007 I’ve been to LCA every year, except for 2010 and that only because I had a baby in the middle of the conference.

LCA used to be my main way of reconnecting with open source while I was working on my PhD. But now I work for the Ada Initiative and open source (and open stuff) events are a big part of my job. While I have more time and energy for conferences I am attending them for very different reasons now and the lure of the new is getting strong.

Because my volunteer time is diminishing, LCA 2013 is definitely the last LCA in which I will have had significant input into the program (Michael Davies and I are co-chairs of the conference program this year, as we were for 2010). So, it’s something of a farewell tour for me and I’m looking forward to the program we worked so hard putting together.

Monday

… actually my non-LCA-ing family is still in town Monday, so I’ll probably go to Bdale Garbee’s keynote and then hang out with them. Off to a great start here, I know.

Tuesday

Radia Perlman’s keynote is the keynote I am most looking forward to this year. Following that several of my peeps are giving Haecksen talks before lunch:

  • Feminism, anarchism and FOSS – Skye Croeser
  • Overcoming imposter syndrome – Denise Paolucci
  • Security – Joh Pirie-Clarke

People may be especially interested in the Imposter Syndrome talk, Imposter Syndrome being the feeling that you’ve achieved your current position or status totally fraudulently and are going to be discovered any second and publicly humiliated. It’s very common among people who are in quite critical fields (like academia). Denise was among our Imposter Syndrome facilitators for AdaCamp DC.

I am not sure after lunch, but Web Animations: unifying CSS Transitions, CSS Animations, and SVG (Shane Stephens) is a definite contender. In the afternoon The Horrible History of Web Development (Daniel Nadasi) sounds interesting (although it’s the kind of talk where an abstract would be really useful in determining whether I want to go) but so do What we can learn from Erlang (Tim McNamara) and Concurrent Programming is not so difficult (Daniel Bryan)

Wednesday

Trinity: A Linux kernel fuzz tester (and then some) (Dave Jones) is very tempting in the first slot, but I think I will go to Think, Create & Critique Design (Andy Fitzsimon) because I want to “speak” design semiotics a little bit better and have for a long time. Talking to graphic designers is actually part of my job.

In the second slot I am not entirely sure, but probably Open Source and Open Data for Humanitarian Response with OpenStreetMap (Kate Chapman) since I periodically dabble in OpenStreetMap.

After lunch my pick is definitely Free and open source software and activism (Sky Croeser). I’ve been following Sky’s activism and research since the EFA lamb roast fun and met her at AdaCamp Melbourne. I want to hear what she has to say about (h)ac(k)tavism.

Not as sure about the following slot (in a moment of mischief, we put the DSD’s talk right after Sky’s, but I’m not especially interested) but the biggest contender is The future of non-volatile memory (Matthew Wilcox) because he usually is one of the highlights of the LCA lower-level technical talks.

The first slot after afternoon tea I am not committing, but it does contain Pia’s grand scheme Geeks rule over kings – the Distributed Democracy. After that I think Copyright’s Dark Clouds: Optus v NRL (Ben Powell) is required: it isn’t LCA without emerging feeling distinctly gloomy about the current state of the intellectual property framework.

Proving Australian citizenship when parents are born after 1986

I know people who’ve had trouble with this, and won’t tell their specific stories, but a note now that I am applying for a passport for my son.

Australian citizenship is no longer by right of birth: if you were born on or after 20 August 1986, there are various more complicated ways it is acquired. One is being born in Australia and having at least one parent who is an Australian citizen or permanent resident at the time of your birth. Therefore, my son’s passport application has this section:

Please mark which of these documents you will provide at interview (you must present the original):
to prove that the child is an Australian citizen or to prove that one of the child’s parents was either an Australian citizen or a permanent resident of Australia at the time of the child’s birth.

  • The child’s Australian passport issued on/after 01/01/2000 and valid at least two years
  • One parent’s full Australian birth certificate (parent born prior to 20/08/86)
  • One parent’s Australian passport (issued on/after 20/08/86, valid two years)
  • One parent’s Australian citizenship certificate
  • One parent’s Australian permanent resident status

Both my husband and I were born in Australia before 1986, and in addition we happened to hold Australian passports before our son was born in any case, so we have a surfeit of evidence that will satisfy them that he’s a citizen.

But people born in, say, September 1986 are turning 27 this year, and therefore there’s lots of parents and soon-to-be parents whose Australian birth certificates are not sufficient proof of their own Australian citizenship, let alone their child’s status. So it’s very easy to imagine a situation existing right now where someone will need to show up with a grandparent’s birth certificate in addition to a parent’s and their own, and so on. By 2040 or earlier a great-grandparent may be required if no one in the family has held passports in intervening generations (great-grandparent born before August 1986, has a child at age 18+ in 2004, a grandchild in 2022 and a great-grandchild in 2040).

The easiest way around this for citizen-parents seems to be making sure one holds an Australian passport — because it stands on its own, unlike post-1986 birth certificates — before a child’s birth, which is not really foremost in one’s mind at the time. Oh, and be sure to keep it in a safe place until you or any of your children need evidence of their citizenship (usually but not always when they first need a passport themselves), because without it they’ll be back in the same documentation pickle. An increasing number of Australian-born people are going to have to go through the prior process of assembling potentially burdensome proof of citizenship involving either a string of ancestral birth certificates*, or a bunch of evidence of Australian residence on their 10th birthday (see Table B in documenting citizenship). I’d have trouble now proving my own Australian residence at age 10, frankly.

Australia is far from alone in not awarding citizenship by right of birth alone, so I assume there’s either a lot of people around the world who struggle to get passports, or other countries have processes that are more mature and less reliant on finding an ancestor who was unconditionally a citizen.

* Or worse, trying to get hold of 40 year old evidence of someone’s permanent residency, which I suspect is not as available for purchase later on as birth certificates are.

Product review updates: Shoeboxed & GoGet

I had some success in 2012 at subscribing to things that made my life a bit easier to organise, so, a couple of updated reviews.

Shoeboxed (original review)

What: a service where you package up a bundle of papers to be scanned, and they scan them, do some basic data entry (vendor, date, total amount, total GST) and store them on their website for you.

Current impressions: it’s still a pretty good fit for our needs: whenever a piece of paper enters our house that we have any belief we may need to access for paperwork purposes, we ship it off to them for scanning, data entry and shredding. The big test was doing our 2011/2012 taxes, and it was great to just enter a search term and have the document we needed show up among the top hits. We’ll keep using it for the foreseeable future. We don’t even really need the numerical amounts entered, since we don’t do personal bookkeeping at anything like that level.

I’ve also started forwarding them PDF receipts I get in the mail, and those work well: the PDF is pulled out and added to the data entry queue the vast bulk of the time. They’re much less good with HTML/text email receipts; it’s a harder problem though.

The major downside that has emerged is the length of time the processing takes, at least on the entry-level plan that we are on. It takes about two weeks from popping the envelope into the mail to the scans being available, and the delay is the scanning itself, not the data entry, so we can’t even access the raw images during this period. (There’s two ways to tell: one is that data entry for documents we upload in electronic form is usually complete within hours, the other is that the scans eventually show up in our “uploaded documents” queue waiting for their own data entry, and that happens about 24 hours before we get the “envelope processing now complete!” email.)

This is slower than the pricing plan states. It is mostly annoying for my business receipts: I do do double-entry bookkeeping for those, and in order to stay on top of things I like to do bank reconciliations sooner than 2 to 3 weeks after spending the money. I expect though that most businesses would subscribe to one of the higher volume plans (ours is 50 scans a month) which also have faster turnaround times.

GoGet car sharing (original review)

This has been a great replacement for car ownership, for us. Neither of us commutes by car (it would be a thoroughly silly way to pay for a regular commute), and we don’t even use cars every single weekend. But we do travel a lot to places where it is either essential or nice to have a car for the weekend, and make shorter trips to places that are a pain to wrangle a young child, associated supplies, and ourselves to on public transport (eg, Sydney’s beaches).

It’s also nice to have access to the vans. I’ve only done amateur furniture removal once this way, but they’re nice and roomy (we got two couches and a double mattress into one trip) without being as difficult to drive as the trucks one gets from rental companies. Also potentially much cheaper for small things, to be hiring by the hour!

For whatever reason, the contention for them has not been as bad since around about April. We can almost always get our first or second choice of car with as little as an hours’ notice. This is excepting the local iMax (8-seater) which you have to book up to 6 weeks in advance, but we very rarely need an 8-seater, luckily. We also regularly are later than we planned to be, and only once have I had to hurry back because someone else had booked the car for the next hour: every single other time we’ve been able to extend the booking into the free next hour. Several more cars have been added to the neighbourhood since around then.

We’re getting used to the child car-seat issue. It helps a lot that one of the nearby cars now has a car seat in it. We still often have to fit or re-fit the seat; I now believe the commonly cited statistic that around about 70% of self-fittings are incorrect. Ours definitely aren’t as tight as a professional fit sadly, but at least unlike everyone else we don’t have the back of the child’s belts wrapped around the adult belt that holds the seat itself. However, fitting a seat is a lot less onerous than carrying a seat to the car (while persuading a toddler to walk with us) and then fitting it! It will be good to have him in a booster though.

It’s not especially cheap: our monthly spend is somewhere between $200 and $500 (the high end in months like December and January, with multiple visits to different family in different cities). And we’re definitely using cars more often than we would if we had to sort out an entire car hire from scratch from a daily company every single time.

If there was one feature I really wish they’d add, it would be the ability to conditionally cancel a booking. The present situation is this: if you cancel with 48 hours before the start of the booking, it’s cancelled and you do not pay anything and the car is available for someone else to re-book. After that, you simply cannot cancel (not even any portion of your booking that is more than 48 hours in the future). What I’d like is the ability to do something like cancel at any time, thereby having the car available for booking by someone else, and, if there was less than 48 hours’ notice, incur the difference between my original hourly fee and any hourly fees they were able to get from any new bookings for that car. Then they have the same situation as now with regard to not losing my booking fee, but the neighbourhood is not locked out of the unused car for the duration of my abandoned booking. We felt this keenly when we had to walk away from our entire Easter weekend trip at the last minute due to acute illness.

We don’t intend to purchase a car again any time soon.

How to do more writing, by someone who has never made any such resolution

Jonathan Lange asked on Google+ for ideas about keeping a “write more” resolution. I took over his comment section, and in the spirit of taking some of my own advice, here’s a synthesis of what I said there. Since not writing as much as I feel I ought is never a problem I’ve had, this advice is in the delightful genre of someone who has never needed the advice simply making some up and giving it to you anyway! Enjoy my half-baked ideas.

Re-use your writing. A lot of people I know spend an enormous amount of time on crafting lengthy, tightly argued emails. These count, and you can make them feel like they count by editing them for a sufficiently general audience and publishing them on your blog. This is one I actually do do: several of my Geek Feminism pieces originated in annoyed private emails I sent to close friends, or in IRC rants.

Accountability and incentives. This is like all of the “how to exercise more” advice: make it public, make it social. Make a public commitment, make a shared commitment with a fellow writer. Have a competition, one-sided or not (“I will write more blog entries than N will this year”?). Deadlines and someone who will be personally disappointed in you can be an excellent motivator (as long as it doesn’t tip you over into an avoidance cycle), and for writing there’s a whole profession which involves, in part, holding people to deadlines and being disappointed if they fail to meet them: so, find an editor.

Unfortunately, in order to get an editor one generally needs to pitch (leaving aside the whole question of finding an agent, especially when it comes to fiction), which means writing, so you will have to be motivated to do some writing before you can partially outsource your motivation to editors and deadlines.

Becoming a freelancer seems like a big effort in order to fulfil a personal goal to “write more”, but part of the attraction is that you can pitch to places that have a ready-made audience, which means that you have outsourced any implicit “write more in places people will read it and find it useful” goal; you don’t need to put an equal or greater amount of work into building an audience for your writing.

Specific goals. This assists with accountability. What does writing more mean? A certain wordcount? A certain number of blog entries? A certain number of pitches sent out? A certain number of pitches converted to published articles? All of these are more artificial but easier to keep accounts of than “write more”.

Spend money. Enrol in a course or similar. This adds deadlines too, typically.

2012: resume fodder

Because I had quite a difficult year in several respects, especially health-wise, some short notes on my 2012 accomplishments.

Total eclipse, partially obscured by cloud

Total eclipse in Port Douglas, by Flickr user 130GT

Ran AdaCamp. AdaCamp is really originally my baby and AdaCamp Melbourne was significantly my work (with Val, and Skud as local organiser). AdaCamp DC was significantly less so (because I was on study leave between March and May), but still, even on the day they’re a lot of work.

Delivered three talks at linux.conf.au. We gave an Ada Initiative update and an allies workshop at the Haecksen miniconf and our Women in open technology and culture worldwide talk at the conference proper.

Submitted PhD thesis. This was, of course, the end of a huge project. I enrolled in March 2006 and was full-time until December 2009. I was then enrolled part-time from July 2010 (after maternity leave) until May 2012 when I submitted the thesis. The submitted version is 201 pages long, word count is difficult with LaTeX.

Delivered the keynote address at Wikimania. This is to date my largest ever audience, I think.

Saw a total solar eclipse. Less of the work, just as much reward. The photograph of the eclipse shown here isn’t mine, and isn’t exactly like our view (we saw the top rather than the bottom through our bank of cloud) but it’s also from Port Douglas, and is very similar.

The Year of Octavia Butler and James Tiptree Jr.

Last year, Skud wrote about attitude adjustment resolutions:

I’ve had good luck in recent years with vague resolutions that attempt to adjust my attitude. I think it was 2007 or 2008 when I said “never turn down an adventure”, and 2011′s was “be an artist”… in that vein, this year’s resolution… is GO TO THE SHOW.”

That’s not what I’m aiming for this year — not a lot that was wrong with my 2012 would have been solved by attitude adjustment even of the most fun and aspirational kind — but I like the idea of a resolution that isn’t a chore. I’m also short an obvious, and perennial, resolution because I actually did submit my PhD thesis in 2012.

So at today’s New Years Day party I came up with a resolution, which is to read works by Octavia Butler and James Tiptree Jr. at long last. I’ve decided on one a month. Obviously I will be reading other stuff while I am at it.

Here’s my schedule through to end of April:

  • By January 31: Butler, Bloodchild and Other Stories
  • By February 28: Tiptree, Up the walls of the world
  • By March 31: Butler, Parable of the Sower
  • By April 30: Butler, Parable of the Talents

Just creating this list has shown that it’s going to be harder than I expected: the university library I live near, the largest in the country, will be close to exhausted by the end of April, except for rare books not available for loan.