For a while now I have been contemplating starting a series of monthly challenges – to try something new or practise a habit consistently over a month, for its own benefit, and to blog about it (to get back into the blogging habit). Today I saw an ad for Open Family Australia's 21 Challenge, where individuals or groups can undertake a 21-day challenge to raise money to support homeless youth. I don't normally participate in big fundraising events like this (though I support my friends who do), but as I'd already been thinking about doing a monthly challenge, why not sign on to a cause that I support? In addition, doing a 21-day challenge in June will help me ease into a series of whole-month challenges, if I do follow up on that idea.
Here are some of the challenges I had been considering; if you think any of these are particularly great or terrible, please say so in the comments. I will decide on the challenge and set up a fundraising page on 21 May. The final decision is up to me but I am interested in what others think.
- Talk to a stranger every day
- Draw something every day
- Adopt a vegan diet
- Do not travel on public transport or in cars [which means walking or cycling in cold, wet, and windy June – not something I would like, but it would make me appreciate some of the conditions homeless people face]
If you want to suggest a different challenge, note that I already live without a car or a television, I don't eat meat, and I hardly ever wear makeup, so some of the ideas at http://21challenge.com.au/inspiration are pointless for me. Note also that I make my living from the internet, so I can't realistically give that up.Topics:
One of my current web development clients is my mother, Ida Chionh, and I think it's been quite an educational process for both of us as we find ourselves in a client-freelancer relationship instead of (well, in addition to) a mother-daughter one.
Today Mum is launching her new website, A Wok on the Wild Side, an exploration of her passion for food, travel, and the arts. Both my parents have been dedicated home cooks for as long as I can remember, and Mum started reviewing restaurants in Melbourne in the early 1980s, when sweet and sour pork and butter chicken were still strange and exotic dishes. Mum has a lot of stories and knowledge to share about food and cooking, and I'm pleased to provide her with another platform for her to share her experiences.
A Wok on the Wild Side
A couple of weeks ago I was reading an article about Israeli politics and found myself turning to Wikipedia to fill in some of the gaps in my knowledge. Approximately 200 Firefox tabs later I found myself watching orthodox Jewish women’s headscarf howtos on Youtube, learning about Third Order Franciscan monks and nuns, and — eventually — watching documentaries about Anabaptist sects in North America.
This is one of the most interesting I found:
It’s a 1-hour documentary about Amish family life. A single Amish family went against their church’s teachings and allowed a British documentary crew to come and film them over the course of a year. However, things get really interesting about halfway in, when we find out that they’re part of an underground movement within the Amish community. I wonder what happened afterwards, and whether their church found out?
This month: Brainstorming events and activities for this group in the second half of 2013. What do you want to get out of Drupalchix?
Site builders, themers, content editors, project managers, community builders, plain old interested parties, whatever your role may be you are all welcome. We have an ambitious goal to find all the hidden women of Drupal to help build and strengthen the wider Melbourne Drupal community, as well as provide a forum for women to network and learn about Drupal.
Thanks to the Electron Workshop for hosting us again - 31 Arden St, North Melbourne.
Please RSVP on Meetup to assist with planning and catering. Drinks and nibbles provided.Topics:
I’ve just got off a call to the UK Digital TV Group, for which I gave a talk on HTML5 video accessibility (slides best viewed in Google Chrome).
The slide provide a high-level summary of the accessibility features that we’ve developed in the W3C for HTML5, including:
- Subtitles & Captions with WebVTT and the track element
- Video Descriptions with WebVTT, the track element and speech synthesis
- Chapters with WebVTT for semantic navigation
- Audio Descriptions through synchronising an audio track with a video
- Sign Language video synchronized with a main video
I received some excellent questions.
The obvious one was about why WebVTT and not TTML. While for anyone who has tried to implement TTML support, the advantages of WebVTT should be clear, for some the decision of the browsers to go with WebVTT still seems to be bothersome. The advantages of CSS over XSL-FO in a browser-context are obvious, but not as much outside browsers. So, the simplicity of WebVTT and the clear integration with HTML have to speak for themselves. Conversion between TTML and WebVTT was a feature that was being asked for.
Another question was about the possibilities to extend the list of @kind attribute values. I explained that right now we have a proposal for a new text track kind=”forced” so as to provide forced subtitles for sections of video with foreign language. These would be on when no other subtitle or caption tracks are activated. I also explained that if there is a need for application-specific text tracks, the kind=”metadata” would be the correct choice.
I received some further questions, in particular about how to apply styling to captions (e.g. color changes to text) and about how closely the browser are able to keep synchronization across multiple media elements. The earlier was easily answered with the ::cue pseudo-element, but the latter is a quality of implementation feature, so I had to defer to individual browsers.
Overall it was a good exercise to summarize the current state of HTML5 video accessibility and I was excited to show off support in Chrome for all the features that we designed into the standard.
I don’t own a car, so while I’m a bit late in life for this tradition, I’ve nevertheless been driving my father’s car while my parents are overseas. They’re back today, so last night I decided to fill the tank for them before they got back.
I wasn’t coming into this in the best of states. I had a three year old child in the car. It was evening peak hour in Sydney, and although I was yet to realise that events in Moore Park were slowing traffic even more than usual back as far as the Lane Cove tunnel (for reference, Moore Park and the Lane Cove tunnel are 15km apart on entirely different sides of Sydney Harbour), I had already had to turn from Lane Cove Road onto Epping Road, which has to be one of the worst designed intersections of all time, except for all other intersections of major arterial roads in Sydney, which are also awful in peak hour. (For example, it was often considerably faster to get off my bus on the Pacific Highway, walk 1km around onto Epping Road, and catch an entirely new bus further ahead in the queue than it used to be to wait for the bus to turn that same corner.) But Lane Cove and Epping is my especial enemy after most of a decade at Macquarie University, I can’t even go into it now. And finally, I was late to meet my sister, who was sitting on the front step of my house in the dark.
Then I pull up to a pump, which is also (I knew) on the wrong side of the vehicle, run back and forth between the drivers seat and the fuel hatch (on opposite sides of the vehicle) until I find the latch for it, unhook the hose from the bowser, drape it over the top of the car, and get a good look at the fuel cap for the first time. “DIESEL”.
Before everyone reaches for smelling salts, all that happened here is I said “oh for real?”, put the ULP hose away, got back in the car, moved it, hunted around on foot for the diesel pump, found it, moved the car there, filled the car, spilled big splotches of diesel all over my dress (that made for a fun drive home, ugh, sorry your car interior smells of diesel Dad, but I also note it smelled strongly of cattle before that), paid for the fuel, got back in the car, apologised profusely to my 3 year old — who is very well behaved in cars, those of you who’ve heard my story about him in planes will be surprised to hear, and who hadn’t peeped the whole time other than to say “oh no Mama diesel” sympathetically — and drove home in infuriating traffic, about 45 minutes late to hand over the car to my sister.
So far so good right? But my point is this. That label “DIESEL” was in a nice elegant thin font in white letters on the fuel cap. It was big but it didn’t look so terribly important, I can imagine “TOYOTA”, say, being lettered much the same (or “NO SMOKING” which is important in general, but less so to me in particular). I probably only would have needed to have been in about a 10% worse mood to have just missed it entirely and filled the tank with ULP, which I just now confirmed is as expensive a mistake as I thought it was, and this morning my parents would be flying into the country in order to find that I’d wrecked the engine. Good grief.
My point is this: it would be nice if that cap was, say, all in red, and burned to the touch in the close proximity of ULP or something (yeah yeah, not really). In order to avoid a mistake that would cost weeks and ten thousand dollars to rectify, and moreover would be at the expense of my father’s very car reliant job too, there’s elegant white lettering on black? There aren’t even differently sized or shaped interfaces? At least I can take a UI design lesson from it: I will always in future imagine evening peak hour, a toddler, running late, and how to help that person not spend ten thousand dollars on a momentary oversight.
And if you have a diesel vehicle and want to loan it to your frazzled adult daughter (or frazzled adults of your acquaintance in general) I see that there are after market mis-fuelling prevention devices. Good to know someone stepped in. Although at this particular service station, I would have had to pull it off again because it was a high flow bowser. So, you know, not exactly ideal still.
The last few Melbourne Drupalchix meetups have been cancelled due to lack of RSVPs. If you are interested in Drupalchix meetups, please comment:
- How would you like to be involved?
- What discussion topics or types of activity do you want to see?
- What days of the week work for you?
Trumpets and drums. Hear the call!
[TL:DR - read this instead: Twig Status Update and Call for Contributors and start here: Convert core theme functions and templates to Twig]
The Drupal7 Theme system is impenetrable. Drupal8 will very hopefully change all that, but we really need to rally the troops now and get it done.
We need an example TWIG theme so we can start seeing how it works, pull it apart, put it back together. We need to pour over the template and CSS files. We need to try to understand how they're calling functions, variables, thingies, widgets and whatsits! Then we can start to build the mental model in our minds, so we can fill it with new creative solutions.
But this is a chicken and egg problem...
I've spent much of the morning trying to learn some PHP at codecademy.com. Why? Because I felt that my lack of understanding of PHP was holding back my ambition to be a Drupal themer when I grow up.
(Aside: I hit a bug I had to work around. Until such time as I realised it was a bug in the system - and not a bug in my thinking, I was feeling very stupid and incompetent. This is a surprisingly salient point. For people who are learning something new and unfamiliar, bugs, hacks and workarounds are unhelpful. Needing to know arcane or inscrutable incantations before starting to learn is not helpful. In fact, it is downright destructive when trying to create new neural pathways.)
I then went looking for something to explain why we have print render thingie instead of just print thingie... how is that helpful? I wondered. Who came up with that idea? I pondered. And, did they happen to explain themselves somewhere and will that help me see the light?
So, I turned to my trusty search engine and found these illuminating scrolls! [sorry, I mean blog posts]
Around this time last year, the shift began. Most of the twists and turns are listed in this meta issue: New theme system It attracted 274 comments, and 37 mentions on IRC.
More recently, Jen Lampton has been doing lots of presentations on Twig Check out the slides and video from DrupalCon Sydney. And chx put out a public service announcement stating his support for Twig has less to do with Symfony, and more to do with Security.
Morten chipped in some thoughts on the whole thing too http://morten.dk/blog/frontend-united-we-came-rock
It was around this time last year that the shift began. And in November 2012, Twig was committed to Drupal8.
So, now we have Twig. But what is Twig? It's a modern PHP template engine. Here's node.tpl.php converted into a Twig template.
Please - please - if you care at all about the future of Drupal dive in now. This is important. Really.
Week 5 of the Alphabet Sufficiency: F.
A few years ago, a friend’s children were in the target age range for the Toy Story franchise, and he told me with some shock that his eldest had “missed the entire point” of Toy Story in being Team Buzz Lightyear rather than Team Woody. And I nodded sagely, having only ever seen Toy Story 2 and that on its cinematic release. I knew only that Woody is the old faithful toy and Buzz Lightyear the new advertising pushed successor toy.
Well, now I’ve seen Toy Story, and frankly, I’m not Team Woody, and that’s putting it mildly. In fact, Woody horrifies me so much it’s part of the reason I’m Team Sid.
A brief recap of Toy Story for those of you who don’t have children or aren’t playing along with Pixar at home. First, concept: toys are alive and sentient, but only when no one is looking. Andy, child, loves cowboy toy Woody the best of all, but for his birthday he receives space ranger Buzz Lightyear who becomes at least co-equal in his affections. Meanwhile, when Andy is absent Buzz also usurps Woody in the affection of the actual toys. His main weakness is that he is utterly unaware he is a toy, giving Woody an opening to trick him into travelling to a “space port” (a space-themed pizza place). Both toys become separated from Andy’s family and end up in one of those arcade claw machines, and are acquired by Sid, an older boy who is Andy’s next-door neighbour and who mistreats toys. After various mishaps, Sid is about to launch a small rocket with Buzz attached into the sky, when Woody raises all Sid’s other toys in rebellion. Woody and Buzz then pursue the moving van containing Andy’s family’s possessions and eventually rocket into Andy’s car where he finds them as if they’d been left there all along. Aww.
And what I’ve tried and failed to hide in that summary is that Woody is an utter jerk for most of the movie. Before Buzz’s arrival he’s portrayed as the patronising father-figure of the toy room, running it like a corporate office, surrounded by bemused toys and a small number of uncertain sycophants. Really appealing. He displays some real fear and loneliness after Buzz arrives and he’s swept from his prime position on Andy’s bed, but only in complete privacy. Once he discovers Buzz’s weakness he is triumphant and merciless, mocking him to his face. “You think you’re a real spaceman? Oh all along I thought it was an act.” He then proceeds to manipulate every one of Buzz’s resulting traits — singlemindedness, a belief that his mission requires him to return to space — at first trying and failing to get other toys to join the mockery and then realising that he can get Buzz to act based on his beliefs. Sure there’s a sort of redemption arc in which Woody saves Buzz from Sid and turns down a few opportunities to leave him, but by then his fate was sealed. Even Mr Potato Head isn’t as anti-Woody as me.
Meanwhile, Buzz is pretty appealing, as long as all-American (all-Galatican?) hero works for you. He manages the other toys in a loose military model rather than a corporate model, where at least there’s room for improvement rather than the system being set up to manage their (presumed) static inadequacies. He treats Woody as more-or-less an equal (admittedly based on rank; he believes Woody to be the local sheriff) and trusts without question that Woody is transparent and honest; at least it doesn’t make me want to spit in his face. He’s easily manipulated, but his view of the world is very far from consensus reality: if I am actually a sentient child’s toy, I’ve probably been easily manipulated too in my time.
I am not unsympathetic to my friend’s child here. Given a choice between a Woody doll and a Buzz doll, I know which I’d choose. But the narrative point of view, which positions Woody’s behaviour as understandable and forgivable, bugs me so much that I ended up naturally sympathetic to the antagonist.
Let’s re-evaluate Sid. First, to be fair, even from my point of view, he has some serious failings. The most serious is that he’s not at all kind to his younger sister. Which is grave indeed, but I do notice that his sister doesn’t seem to be frightened of him, and when Sid displays weakness (extreme fear of toys, not unreasonable given he’s just discovered they’re sentient and dislike him) she immediately and thoroughly takes advantage. He doesn’t seem to have decisively established dominance in the family and it’s implied that his mother has the final say outside of his bedroom. His other failing (to me) is the scene where he’s shown being pretty brutal with the arcade equipment. He does also do a couple of villain-marked things, like cackling while thunder rolls, but that’s not actually an immoral act. The Doylist explanation for this is pretty obvious — he’s being positioned as the villain — but my Watsonian explanation is that he is playing at being the villain, the bad-boy toy torturer. A lot of his other “failings” from the narrative point-of-view are the atmospherics surrounding him, which look like Pixar straight-out buying into dubious cultural tropes about people who listen to metal. Skull on your t-shirt, evil, not the same thing.
And see the thing is, except when they’re his sister’s toys, what Sid does to toys isn’t actually wrong. He has no reason to begin to suspect they’re sentient. (And the movie does something really annoying here: it’s OK to reveal this to Sid to save Buzz in particular… why? It wasn’t OK to reveal it to save Hannah’s doll, for example.) And what he does with them is frankly rather cool and inventive. A baby doll’s head with mechanical spider-legs? If my kid does that I’ll take photos and puff about it in my parenting blog. He’s also a pretty good actor, what with the thunderclap cackle, and the different voices he used to enact his surgical scenes, in which he appears to be a mash-up of Dr Frankenstein and standard medical dramas.
Consider it this way: Andy’s play is pretty conventional. There’s a stick-up. The woman gasps in fear. The brave sheriff saves the day. Hooray! Sid’s play is more transformative, both physically transforming the toys and mashing together whatever tropes suit him: medical drama, medical horror, ground control, meteorological reports, generic Evil Overlord cackling. Sid is the fan and the hacker. Really Sid’s main mistake in my book was not sending Woody on a one-way rocket ship. It’s OK Sid, you weren’t to know. I’m still Team Sid.
3) I’ve been sitting on this for a little while, but it’s been announced now, so: I’ll be keynoting Open Source Bridge in Portland, Oregon (USA) in June. I know a bunch of my people will be there and I can’t wait to see you all. If you have never been to Open Source Bridge before, it’s one my my favourite conferences, bridging (get it!) software and social responsibility in a way that you don’t see many other places. I’m pretty sure I’ll be talking about Growstuff and how growing food is like writing software. It is, really!
1) Growstuff is live. Go check it out. It’s what we’re calling a “soft launch” and we’re still building features at a cracking rate, but it’s there and it works and we want people to try it out. (What’s Growstuff? Haven’t you been paying attention? It’s a social website for vegie gardeners. It’s an open source project. It’s an app platform AND a dessert topping.)
2) The Disreputable Order of Hopperites, a Melbourne gathering of geeky/technical women, is having its second meeting next Monday. It’s a really chill, fun group, with interesting talks. If you are in Melbourne, identify as a woman/girl/female, and are into technical things, you should come! Register at the link above. We still need another speaker, too, if you have a tech topic you’d like to talk about for ~15 mins.
Week 4 of the Alphabet Sufficiency: V.
I’ve circled on ‘value’ for a long time; this is the prompt of this essay series for which I’ve started writing four times. My relationship with value is ongoing, and I’ve got hidden writings now on how I try and tell if other people value me, on my relationship with the sunk cost fallacy, on the epistemological problems with measurement (that is, a measurement and reality are not the same thing), and even on irritating probability mind tricks that depend on weird phrasings.
But the sunk cost fallacy suggests I should pick something bite-sized and be done with it, so here it is: I am coming to value my PhD work. (Status of that: I’ve finished writing and been examined and done my required corrections. I’m waiting for university sign-off and eventual graduation. So, I’m not a PhD holder, but I will be. I’m a PhD finisher already.)
This has been a while coming. There are lots of things wrong with the PhD process, maybe less so in Australia than in some other countries and maybe less so in computer science than in some other disciplines, if only because for some computing employers outside the academy it’s seen as a positive signal rather than a negative one, as is the stereotype of how a PhD is seen in some other fields. (Note, stereotype; I know nothing of the reality.)
And it’s much easier to feel warm and fuzzy about something when the hard bit is nearly a year in the past, too. Somewhere in my photo collection there’s a self-portrait of me late last May, at 11pm, eating the spag bol my sister dropped off in a care package, alone in darkness. You know you’re at a peak life-stress when Steph drops off food: the other time last year was when I was unexpectedly hospitalised for a week last year. It was a cold evening, I remember taking the photo to email my family and I don’t know that I felt that was I was doing was valuable at the time so much as simply wanting it to be in the past. And also wanting to warm up. I did two things last May: write stuff, and learned a whole lot about climbing Everest (mostly from Alan Arnette’s blog). Not metaphorically, literally, because May is the end of the Everest climbing season. The Everest climbers and I were both cold, and both working hard. I felt we had a lot in common. Even if they got better photos than I did.
So, we need to allow for rose-coloured glasses, very much so. And I’ll also note that I don’t think a PhD is the only, or the best, or a better, way to obtain a lot of what I value from it. But it comes down to this: I wrote about 100 pages in 2 months. In that time, I did a small amount of experimental work (obviously most of it was done by then), I evaluated a lot of sources, and I did a lot of work in explaining things. I can tell you (but won’t, here) how I could re-do the whole thing, much better. And I did so much work independently — not always well in hindsight, but work — that every other project in my life pales in terms of sheer clinging onto the side of the mountain trying not to fall down it.
It will be a long time before I can decide if I did any of this well even in the (frankly unlikely) event that I read it end-to-end ever again. But the value I’m deriving from simply having done it is not negligible. It takes a lot of written material to intimidate me now, for one thing. I can read scientific literature outside my field and have some idea of how to scale the mountain. I feel much happier about having done it than I did at any time in 2012, including the day after handing it in. Its value probably still doesn’t come to seven years of opportunity cost, but it has some.
Bonus value: this blog entry has caused me to go back over my journals of last May, which include a few hilarious (entirely to me) moments:
[The thesis] also probably going to be longer than I expected: probably 150 pages or so in terms of sheets of paper, around 100 to 110 pages of non-appendix content.
Amusing or horrifying, your call: I sent it to the printers ten days after writing that, with 140 pages of non-appendix content and 201 total, so I blew my own projected page estimate by over 30 pages of prose in a week and a half. (I added a lot this year in response to my examiners too: the final version hasn’t been printed but is around 155 pages of non-appendix content and 230 total.)
Full disclosure: like many theses, it is double-spaced. It’s difficult to word-count accurately when you write in LaTeX, but it’s about 65000–70000 words, give or take, including appendices, which is a bit long for a science thesis, but that’s not unusual in computational linguistics.
May 29th (the day I ordered the printing of my examination copies):
I said to [my supervisor] that some people do all the training for a black belt and then don’t take the test (actually I don’t even know if this is true, but I said it) because they know within themselves that they are worthy and so…
He said “No. No no no no no. No way.”
The ‘f’ word for next week is ‘favourite’.
I flew home from the US yesterday and when I arrived in Sydney I got a message from my husband saying that Malcolm Tredinnick had died. According to this piece by Simon Dulhunty, he was found on Monday to died at home in Sydney, possibly after a seizure, while I was at PyCon 2013.
I’ve known Malcolm slightly since my first linux.conf.au in Sydney 2001. In late 2004 I interviewed for a job at CommSecure (since closed) where he was then working, having been a lead developer of and continuing to maintain and develop a real-time data delivery system for the Hong Kong stock exchange. (The eventual end of that contract was the reason CommSecure later closed.) He was also my boss for about half of 2005 until I left to begin my PhD in early 2006.
I still caught up with him at technical events, the last long conversation I remember with him was at PyCon AU 2011 where my husband Andrew and I had a very Malcolm conversation with Malcolm, which roved over the paperwork hassles of having no fixed address (Malcolm travelled a lot and went through periods where he housesat or lived in serviced apartments for a while), the Australasian chess community, and some gentle mutual trolling between him and Andrew over narrative testing.
What I will remember most about Malcolm is that he was a teacher at heart. I never personally had this relationship with him, but I knew several people at CommSecure and elsewhere who Malcolm had tutored or mentored in programming, often over a very long period of time. Elsewhere I know he had taught mathematics (long before I knew him, he very nearly completed a PhD in mathematics when his area suddenly became fashionable and about 50 years of work was done in 6 months by incoming mathematicians) and chess. I will also remember his dry and sadonic approach to nearly everything (for a very recent example, Malcolm gives useful parenting advice), combined with “really, how hard could it be?” used both straightforwardly and distinctly otherwise. Goodbye Malcolm.
Update, funeral plans: Ray Loyzaga who was Malcolm’s close friend, and long-time founder-CEO of CommSecure, has announced that Malcolm’s funeral will be at 2:30pm Thursday April 4, at Camellia Chapel, Macquarie Park Cemetary, North Ryde, Sydney.
- Goodbye Malcolm by Jacob Kaplan-Moss on the Django blog
- Goodbye Malcolm (Tredinnick) on LWN, with comments
- Malcolm Tredinnick memorial on Storify
- Twitter, Google+, Flickr
- video and audio of him speaking are everywhere, see for example:
- linux.conf.au 2003: Using autoconf, automake and friends (audio only)
- linux.conf.au 2004: The GNOME Platform Libraries (audio only)
- PyCon AU 2011: Behaviour Driven Development
- linux.conf.au 2012: What is in a tiny Linux installation?
- PyCon Asia/Pacific 2012: Fun with Iterators and Generators, Maps of Imaginary Lands
- PyCon Philippines 2012: Maps of Imaginary Lands, Functional Programming in Python
- DjangoCon 2012: The Dungeon Master’s guide to Django’s ORM (“I’m Malcolm, you may have heard of me from projects such as… Django!”)
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Australia.