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.

We're sponsoring a conference!

We're sponsoring a conference!
Perl Training Australia is now the first Gold Sponsor of the Open Source Developers Conference, to be held in Melbourne, Australia this year. We'll be plastering big news items up on our site shortly.

Not all books are equal
Perl Training Australia has a fantastic deal whereby if you register for a course early, and pay on time, you get free Perl books of your choice. We also offer Perl books at a 20% discount off recommended retail price for anyone booking a course.

This is proving to be very popular, and some people are getting quite a few books through this scheme. Send three people on our Introduction to Perl and Intermediate Perl courses the special can provide you with six free books, plus any you may wish to purchase. We're moving big boxes of dead trees around now.

However, when it comes to the distributor of these books, who imports them into Australia, not all books are created equal. Let's take some of the writings of popular author Dave Cross, who wrote both Data Munging with Perl and the Perl Template Toolkit. They're both good books, and they both have the same price. But one's much more difficult to obtain than the other.

Data Munging is a popular book, it's got a trendy name, and so it's usually in stock. Template Toolkit on the other hand, is never in stock. The distributors have a policy that they never keep any copies in their inventory. So if you want to purchase the book, that's a 6-8 week wait for the order to go out, and the book to be shipped and processed. If you want to purchase a second book at a later date, it's another 6-8 weeks.

Normally, if you're a book-store (and we're not, we're a training organisation), you'd just buy up extra copies of the book, and return them back to the distributor for a credit if some don't sell. However if the book is on the "don't hold in stock" list, then the bookstores can't return it for credit, either. It's only sold as a firm sale. This means that as a bookstore, you don't want to be buying these books unless you already have a customer lined up.

The end result is that there are certain books that you'll never find in the stores, and which will take 6-8 weeks to reach you should you want one, and you'll have to pay in advance. Changing your bookstore won't help, since these are due to changes are the distributor level.

This is a real chicken-and-egg problem. High-turnover books (like the camel and cookbook) are easy to obtain, but low-turnover books are much harder to obtain. By being hard to obtain, they don't get exposure in stores, and hence are unlikely to reach high-turnover levels, and remain hard to obtain.

We're currently in the process of quizzing the distributors as to which Perl books are on this list, so we can warn our students in advance that these will take some time to reach them. I'd rather not have to do this, but I really don't like telling our customers that some of their books will take two months after they've placed and paid for their order.

(read more...)

Homebrew

Homebrew
In an effort to put my vanity-domain to good use, I've created brew.pjf.id.au to track my homebrewing efforts.

Nothing too exciting, but a lot more useful than a logbook I keep losing, and I can get HTML::Mason to do all the difficult calculations for me.

The navigation on the site needs to be improved.

(read more...)

Treeplanting

Treeplanting
Went treeplanting this weekend at Jacinta's parents' farm. Helped plant around 250 trees, which isn't all that very many. Had a few beers, kicked back, and generally had a most enjoyable time.

Chickens
What wasn't as enjoyable was coming home, and finding two dead chickens. Being away for a day or two we left the coop open, which allows the chickens to put themselves to bed, and release themselves in the morning. This is something we've been doing for years without loss, but recently which we've been avoiding since we woke one morning to find one less chicken.

This was the first time the coop door was left open since the last attack, and clearly whatever it is that has a taste for chicken is still visiting. We know it's an animal, and we know that it's good at jumping at 7ft fence. We believe that the way in which it actually nabs the chickens is that it scares them out of the coop first, and chickens are stupid enough to leave the safety of an elevated enclosure to run around on the ground. Chickens aren't very good runners.

What was dissapointing is that while last time the chicken was completely eaten (except for wings and head), this time we simply found two chickens without heads. Losing a chicken to become a meal for a hungry animal is one thing, but losing two chooks and finding them essential whole in our yard is another.

One chook was old and noisy, but beautifully decorated. The second a lovely natured thing, which was very friendly and affectionate, and I'm rather sad they're both gone.

Given this appears to be a continued problem, and it's unreasonable for us to be around every night and morning lock-up and release the chickens, we'll probably look at investing in some sort of trap to capture our noctural visitor.

(read more...)

New Office

New Office
With spring I've moved into my new office, which is pretty comfortable. I've posted an image of what it's like.

Banks
The bank called me today to apologise and inform me that I'll be getting all funds owing, including the disputed ones, ASAP. Good bank.

(read more...)

untitled

It's been some time since I've written an entry of any reasonable size in my journal. There have been a few reasons for this, and work has been one of them. After the business experienced a one-week quiet patch we spent some time on advertising and networking, and as a result our work bucket is once again brimming.

Two weeks ago I spent my time in Perth, the world's most remote city, teaching this quaint little language called Perl. One of the attendees was from New Zealand, which has a four-hour timezone difference to Perth. It's not uncommon for us to have attendees from out-of-town, but usually their original city is no longer than an hour's flight away.

Perth was very green, and the people there friendly. I caught up with some old friends from University who had moved there, and attempted (with little success) to kick-start an informal get-together of the Perth Perl Mongers.

After Perth came the inevitable catch-up on work from having been away for a week. I'm still catching up on YAPC::AU/OSDC matters.

Our newest client is out near Clayton, which seems like the world's second-remotest city when traveling there from the northern suburbs. While we were originally contacted regarding software development, my time so-far has been predominantly systems focused.

As my journal entry yesterday suggests, I'm still having trouble with my old bank. I never thought that closing an account would take longer than a month, but in my case that appears to be the situation. The bank is trying to re-charge the fees they've agreed to refund, and the matter is made worse by a classic "left-hand, right-hand" situation where the relevant internal departments in the bank seem unable to talk to each other.

I've invoked the disputes resolution process, and will be letting the bank know of my intention to raise the matter to the banking ombudsman should a satisfactory outcome not be rapidly forthcoming. There's practically no downside to me doing this. The proceedures and investigations from having the ombudsman involved are likely to cost the bank much more than the disputed sum, and I have sufficent documentation that I'm confident of a favourable recommendation.

One of the most pleasing aspects of the ombudsman process is that the disputant is free to decline the recommendations of the ombudsman should they wish. The bank, on the other hand, must either accept the recommendations, or risk being subject to a unconditionally binding ruling from the ombudsman, so they have very little choice at all. As a bank manager friend of mine once said, "the banks hate the ombudsman getting involved, because regardless of the outcome, the bank will always lose."

(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).