Photo of Paul Fenwick

paul.j.fenwick

Welcome to my home on the internet! Everything here is free under the Creative Commons Attribution 3.0 license unless marked otherwise.

This site contains various pieces of writing across my various interests, and spanning several years. You can fork this site on github if you wish.

Herbal Teas

Herbal Teas
Sofie thinks my newest herbal tea smells like bong-water. She still drank some of it, so it couldn't have been that bad.

Private health cover
Spent a good chunk of the day comparing various private health insurance packages. The Australian government is going to charge me a big slab of money for earning chunks of cash but not getting private insurance, so I'm hoping to rectify that shortly.

What worries me is how much the government is pushing private health insurance. All Australians are entitled to free public health insurance, called Medicare. Higher income earners pay a Medicare levy to help pay for this, the even higher income earners pay an extra levy if they don't have private insurance.

Recently the government has introduced a 30% government rebate on private health insurance. This, combined with the extra levy that was recently introduced, is a big incentive for the higher-earners to get private insurance. That's all fine with me, but I'm a little worried that it might be the start of a "ramping-down" of public health cover. I don't want to see Australia increase the rift between the medical services available to the rich and the poor.

(read more...)

Work (bug)

Work (bug)
Found the nasty bug that we were being caned about for the last few days. Many thanks goes to Humpy who helped track down the offending chunk of code. I think half the office must have heard my bug finding, and a couple of them got hugs because I was so happy.

If you're planning on writing software which I'm going to have to debug, and want to save me a large amount of mental grief, please try to adhere to the following rules:

  • Do it properly the first time, instead of marking the code as "broken" and then never coming back to it.
  • Follow the relevant written standard, be it a RFC or otherwise.
  • Think very hard about what happens in error cases. Even though you might not expect anything to go wrong, it will. Program very defensively.
  • Before using a program as part of a critical piece of software, at least take the time to read the man-page.

While not all of the above were a factor in this bug, I've had to fix more than my fair share of bugs caused by them.

Me? I've got to remember that when I do testing to try and use exactly the same environment as the "real thing". A couple of hours could have been saved bug-hunting if I had realised the software I was using for testing had been patched to ignore SIGPIPEs.

Fun
Had a great party last night, with many good friends over. DanielG brought over a beautiful bottle of port, which Jacinta and I now have all to ourselves because everyone else thought it was something other than port. :)

Work (Michelle)
Michelle, our office manager, left for greener pastures yesterday. We gave her our best wishes and farewells at a nearby pub. Michelle had been working at Schoolsnet for a very long time, and has been responsible for many essential processes and proceedures. Her smiles and good nature will be sorely missed. I wish Michelle all the very best in her new career.

Tea
After getting directions from Junwei, I now have a good supply of cyrsantheum (spel?) tea. Yum!

Work (Building Committee)
I've been elected on to the new building committee at work. There's a large amount of politics surrounding this, and I'm rather honoured that my team has decided that I should represent them.

Sofie
Sofie's started at Schoolsnet, and we're working on introducing her to the joys of hackey-sack. Sofie is also a trained masseuse, and I'm very thankful to her for helping me relax after a nasty day of bug-hunting.

Ian
Ian's a sweetie, and I'm glad that he cares about me so much. He's also picking up my (now fixed) television on Monday. What a guy!

(read more...)

Work

Work
Just call me bug-boy again. Caught a good specimen of a nasty bug I've trying to track for weeks, and if I can't fix the cause I think I can treat the symptoms.

Also have Support going after some nasty bugs that have become more public recently. Again these are hard ones -- the source is unknown, but the symptoms might be treatable as well.

I'm afraid that John (our CEO) is regressing back to his previous corporate lifestyle, and has lost some of the laid-backness we had instilled him with. We might have to try aversion therapy on him or something.

Diplomacy
Fun to play, fun to watch.

Hackey-sack
What a violent game. I sustained another hackey injury today. I don't like playing hackey in shoes, but it can hurt when you're trying to steal the hack off someone who is.

(read more...)

PowerTweak: Finance::Quote

PowerTweak: Finance::Quote
Managed to get the all-modular, all-pluggable Finance::Quote written over the weekend. It's fully backwards compatible with version 0.18, is a lot nicer to look at, provides failover support, and makes it much much easier for people to write pluggable modules that will work under the framework. I'm happy.
(read more...)

Time

Time
I love spending time doing all sorts of things, but I never seem to be able to get enough of it. Friends, food, coding, a life, family, geeky things, sleep -- I want time for them all.

Back when I was a student I used to run on a 25 hour day. This was very good, because I'd always have that extra hour to do things in. I can't do this anymore, because I need to come in at a semi-reasonable time for work.

Am going to try and crystalise a number of ideas in my head into code, despite it being past my bedtime of 10:30. I'm really going to have to find a way to do more open-sourcey things at work. I'm a sucker for people sending me patches.

Addendum
Stayed up until sometime in the morning hacking at Finance::Quote. I've got a working framework for proper failover, loadable module support, and more configurable objects. Plus I think I can keep everything compatible with the old calling syntax with just a little work. This makes me all very happy.

The changes aren't in the CVS tree yet, because they're not finished and break just about everything. I want to clean them up and gain comments from the other developers before I put them back in the main branch. In the meantime I might put them on an experimental branch.

If I were a few years younger I'd probably pull an all-nighter to convert everything over to the new harness, but at the ripe old age of 23 I'm finding I need my sleep. In any case I'm still a very happy coder.

(read more...)

Bitcoin QR code This site is ad-free, and all text, style, and code may be re-used under a Creative Commons Attribution 3.0 license. If like what I do, please consider supporting me on Patreon, or donating via Bitcoin (1P9iGHMiQwRrnZuA6USp5PNSuJrEcH411f).