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.

system() made simple

system() made simple
In preparation for an upcoming tutorial I'm presenting on using Perl for system administration, I'm looking at ways to make system() more simple to use. Presently most developers have to go to quite a bit of work to check any command ran with system was successful, or worse yet they don't check at all.

The discussions regarding this matter can be found on the modules list, and on PerlMonks. I'm presently seeking as much feedback as possible, on the API, on names, and on ideas.

My overall goal is to make the easiest choice also the most correct choice for the vast majority of cases. That means easy not only easy to write, but also easy for a developer to learn and comprehend.

brian d foy has already provided feedback on possible names via the modules list. As much as it made me laugh, IPC::JFDI is probably going to be non-obvious to much of my target audience. ;)

Feedback via the PerlMonks node is preferable.

Web Standards Group
Melbourne has a Web Standards Group, and they have cool people, and free food! Best of all, last night they even let me present to them, and laughed at my jokes. I'm really amazed that I've been ignorant of their existence for so long.

(read more...)

Spoken Wikipedia — Larry Wall

Spoken Wikipedia — Larry Wall
Last night I discovered an old microphone, and today during my lunchbreak I thought I'd try my hand at Spoken Wikipedia.

My ideal "first article" needed to be short, easy to read, and on a subject that I was interested in. I considered Perl, but it's rather long, and reading programming examples can be challenging. So I settled on Larry Wall instead (audio).

Apparently my Australian accent is rather pronounced, most notably the Australian tendency to drop vowels, syllables, and sometimes entire words when it suits them. Still, it was a fun thing to do over a lunchtime, and I've now got some experience in sound editing.

(read more...)

Fixed Laptop

Fixed Laptop
After a week of trying to find a replacement video card for my laptop, I decided that I'd have to bite the bullet and purchase a replacement card from Dell, even if that meant a 2-3 week waiting period. In the meantime I'd have to beg or borrow laptop resources.

Luckily for me, when I called Dell Spare Parts I was informed that they had a single card sitting in their distribution centre. I affirmed that I definitely wanted the card, and then went about ingratiating myself with the service representative and two levels of management.

The end result was quite impressive. The card reached me in less than 24 hours, which I didn't think was possible given that it had to travel from Singapore to Melbourne and get cleared by customs along the way. I now have a working laptop with better graphics performance. Huzzah!

The invoice, on the other hand, will take at least a week to arrive.

Despite the expense and inconvenience of repairing the laptop, it has given me a couple of good stories for my upcoming SAGE-AU presentation.

(read more...)

Sick Laptop

Sick Laptop
Today, with practically no warning, my Inspiron 8600 laptop started erratically blinking its display, then showed extensive video corruption (lines, bars, static), and then hung. Rebooting resulted in some very pretty but not very soothing "plasma patterns", although all other indicators (hard drive activity, keyboard lights) indicated that everything was working; for some definition of working.

I left the machine turned off for a bit, started it up (finally getting a real display), and started a memory testing appliaction (memtest86). Memory tested fine for one complete pass of all tests, but again video corruption was evident, with missing or misdisplayed characters.

Looks like a video card issue to me. I take apart the laptop, pop out the memory card, and reseat it. Fired up the machine again; no joy.

A bit of hunting around revealed that a replacement GeForce Fx5650 mobile card from Dell costs $457.50 AUD (incl GST), and comes with a 2-3 week delivery time. Ouch. An ATI Raedon 9600 replacement is only $309.10 AUD (incl GST), and also comes with a 2-3 week delivery time. Calls to other suppliers reveals that nobody keeps these things in stock, since they're so rarely needed.

I've managed to return some stability to the machine (disabling all hardware acceleration, etc), ad I'm conducting a full backup. All the important stuff should be in CVS and distributed across other machines anyway, but it's always better to be safe than sorry.

These sorts of problems are a pain at the best of times, but the timing now is particuarly bad since I have a course that I'm teaching next week, and this laptop is my main teaching machine. I've sorted a few contingency plans, but I hope that I won't have to use them.

I'm really hoping this problem is just a temporary glitch (solar flares), or failing that a broken fan on the graphics card.

I have learnt one thing from the whole experience. When you suspect a problem in your rare and expensive graphics card, having your screen unexpectedly blank can cause sheer terror until you remember the screen-saver is active.

(read more...)

Perl Security

Perl Security
I'm extremely pleased to say that our Perl Security course notes have been released in full for personal use, and can be downloaded from the link near the top of the course description page. As for all our course materials, feedback is appreciated, and can be sent to contact@perltraining.com.au.

Perl on z/OS
I've been asked to give a presentation on Perl for performance monitoring at an upcoming conference, with a focus on Unix, Windows, and z/OS (aka OS/390). It appears my main audience will consist of administrators and managers of large mainframe systems, and are interested in how they can use Perl and other open source tools to both improve their performance monitoring and pay less in proprietary software costs.

While I'm sure I can engage the audience on using Perl for performance monitoring under Unix and Windows, I'm a complete weenie when it comes to z/OS. So I hope to do what I normally do when I encounter difficulties — cheat.

If you happen to regularly do performance monitoring on z/OS using Perl, then I'd love to hear from you. I'd especially love to hear from you if you're using Perl on z/OS with open source or home-grown tools.

Children's Garden
Emily, the daughter of my very good friends Andrew and Kat, recently turned three. Her birthday was celebrated in the Ian Potter Fundation Children's Garden, which makes up part of the Royal Botanic Gardens in Melbourne. I can highly recommend visiting the Children's Garden, even if you don't have a child as an excuse. The layout of the gardens are excellent, especially if you are playing hide-and-seek, tag, or laser games. If you are bringing a child, then equipping them with gumboots is highly recommended.

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