Jonathan Oxer
[Blog]
>> MySQL training
Mon, May 12th 12:03pm 2008 >> Linux
I've done talks about MySQL all over the world and thought I knew it reasonably well, but now I'm sitting in a MySQL training day run by Arjen from Open Query and I learned 4 significant new things in the first 40 minutes.
Happy :-)
I've done talks about MySQL all over the world and thought I knew it reasonably well, but now I'm sitting in a MySQL training day run by Arjen from Open Query and I learned 4 significant new things in the first 40 minutes.
Happy :-)
>> Removing PHP4 from Dapper boxes
Wed, Apr 9th 10:35am 2008 >> Linux
This is the second time I've run into this problem this week, and being rather thick in the head I couldn't remember how I fixed it the first time a whole, oh, 48 hours ago. Hence this data insertion into my externalised long-term memory to bypass my buggy wetware.
An Ubuntu Dapper server had originally been running Apache/PHP4 (libapache-mod-php4) and at some point was switched to Apache2/PHP5 (libapache2-mod-php5). Doing some cleaning up I tried to remove ye olde PHP4 and got this:
Boom. The fix? Simple once you know. Just do:
Then try again. Bye bye PHP4!
This is the second time I've run into this problem this week, and being rather thick in the head I couldn't remember how I fixed it the first time a whole, oh, 48 hours ago. Hence this data insertion into my externalised long-term memory to bypass my buggy wetware.
An Ubuntu Dapper server had originally been running Apache/PHP4 (libapache-mod-php4) and at some point was switched to Apache2/PHP5 (libapache2-mod-php5). Doing some cleaning up I tried to remove ye olde PHP4 and got this:
root@web160:~# aptitude remove libapache-mod-php4
Reading package lists... Done
Building dependency tree... Done
Reading extended state information
Initializing package states... Done
Building tag database... Done
The following packages will be REMOVED:
libapache-mod-php4
0 packages upgraded, 0 newly installed, 1 to remove and 45 not upgraded.
Need to get 0B of archives. After unpacking 3187kB will be freed.
Writing extended state information... Done
(Reading database ... 28126 files and directories currently installed.)
Removing libapache-mod-php4 ...
Error: mod_php.so does not have a corresponding .info file.
The above errors might cause apache to not work properly or start
Please refer to the documentation on how to fix it or report it to
Debian Apache Mailing List <debian-apache@lists.debian.org> if in doubt
on how to proceed
dpkg: error processing libapache-mod-php4 (--remove):
subprocess pre-removal script returned error exit status 20
Errors were encountered while processing:
libapache-mod-php4
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install. Trying to recover:
root@web160:~#Boom. The fix? Simple once you know. Just do:
echo "LoadModule: php_module /usr/lib/apache/1.3/mod_php.so"
> /usr/lib/apache/1.3/501mod_php.infoThen try again. Bye bye PHP4!
>> Real World / Second Life talk at Hitwise
Thu, Mar 20th 1:07am 2008 >> Linux
I was just putting together another bunch of Arduino hardware hacking kits tonight for a tutorial I'm running tomorrow at Hitwise, and remembered that I'd taken a photo of the first batch of kits being put together for LCA2008. It's kinda cool seeing so many Arduinos together in one place:

I've been getting even more requests for private tutorials and consulting gigs than usual recently, so now that Quickstart Guide to Google AdWords is out I'm thinking for maybe offering a 1/2 day or 1 day course on AdWords. Could be run either in-house or by bringing together people from different companies at a training facility with a bunch of computers, and it could be a lot of fun. If you're interested in that idea please drop me a line.
I was just putting together another bunch of Arduino hardware hacking kits tonight for a tutorial I'm running tomorrow at Hitwise, and remembered that I'd taken a photo of the first batch of kits being put together for LCA2008. It's kinda cool seeing so many Arduinos together in one place:

I've been getting even more requests for private tutorials and consulting gigs than usual recently, so now that Quickstart Guide to Google AdWords is out I'm thinking for maybe offering a 1/2 day or 1 day course on AdWords. Could be run either in-house or by bringing together people from different companies at a training facility with a bunch of computers, and it could be a lot of fun. If you're interested in that idea please drop me a line.
>> Rackspace redeemed?
Mon, Mar 3rd 9:42am 2008 >> Linux
Last week I was pretty harsh in a post about some issues I've had with Rackspace technical support. Maybe I should become a restaurant critic or something so my mean streak can be somewhat justified.
Anyway, there were three possible outcomes that I expected as a result of that post. In increasing order of goodness and decreasing order of likelihood:
1. I receive a "cease and desist" from Rackspace's legal department requiring the blog post be removed; our dedicated server disconnected on the spot; and a bill sent out for the remaining contract period.
2. They cancel the account and wash their hands of the whole issue.
3. They contact me and try to figure out what went wrong with the arrangement, what they could do to improve their service in future, and what I as a customer specifically need in this instance so they can fulfil that need.
I gave #1 about a 40% probability, #2 about a 60% probability, and didn't think #3 had a snowball's chance in hell.
To their enormous credit, Rackspace proved me totally wrong.
In what must have been one of the most aggravating phone calls he has ever had to make, my Rackspace account manager called me personally on the weekend, apologised for the various miscommunications that had led to the situation, and tried to clarify what it was that I needed so they could do a better job of providing me the specific service that would suit my requirements.
And the kicker is that not once did he even mention removing my original blog post, amending it, or posting a positive follow-up. The overall impression I got was that the call *wasn't* just a PR damage control exercise: it was a genuine attempt to figure out what had gone wrong with me as a customer, and fix it if they could.
Colour me impressed. Hopefully there'll be a good ending to the story after all.
UPDATE: In this post I said that my Rackspace account manager made an aggravating phone call to me. What I was trying (badly) to say was that making that call must have been aggravating to him, not to me. I was very happy that he made the call, but he must have had to bite down on the urge to tell me to go play in traffic.
Last week I was pretty harsh in a post about some issues I've had with Rackspace technical support. Maybe I should become a restaurant critic or something so my mean streak can be somewhat justified.
Anyway, there were three possible outcomes that I expected as a result of that post. In increasing order of goodness and decreasing order of likelihood:
1. I receive a "cease and desist" from Rackspace's legal department requiring the blog post be removed; our dedicated server disconnected on the spot; and a bill sent out for the remaining contract period.
2. They cancel the account and wash their hands of the whole issue.
3. They contact me and try to figure out what went wrong with the arrangement, what they could do to improve their service in future, and what I as a customer specifically need in this instance so they can fulfil that need.
I gave #1 about a 40% probability, #2 about a 60% probability, and didn't think #3 had a snowball's chance in hell.
To their enormous credit, Rackspace proved me totally wrong.
In what must have been one of the most aggravating phone calls he has ever had to make, my Rackspace account manager called me personally on the weekend, apologised for the various miscommunications that had led to the situation, and tried to clarify what it was that I needed so they could do a better job of providing me the specific service that would suit my requirements.
And the kicker is that not once did he even mention removing my original blog post, amending it, or posting a positive follow-up. The overall impression I got was that the call *wasn't* just a PR damage control exercise: it was a genuine attempt to figure out what had gone wrong with me as a customer, and fix it if they could.
Colour me impressed. Hopefully there'll be a good ending to the story after all.
UPDATE: In this post I said that my Rackspace account manager made an aggravating phone call to me. What I was trying (badly) to say was that making that call must have been aggravating to him, not to me. I was very happy that he made the call, but he must have had to bite down on the urge to tell me to go play in traffic.
>> Who ate my disk?
Thu, Feb 7th 9:08am 2008 >> Linux
I'm confuzzled. Something is eating up disk on one of my VMs, and I can't figure out what. On a machine that isn't even in active use because it's only accessed every week or so for demos, and which should have way less than 50% disk utilisation:
Getting tight. So let's see where all that disk is being used:
Umm, what the hell? 5.6G != 18G.
At linux.conf.au I had a quick chat to Tony Breeds and Steve Hanley about it, who both speculated that the problem could be sparse file preallocation being reported by du. So let's have a look:
The odd thing is that rebooting this VM drops the reported disk usage in df back down under 6G, then it starts creeping back up again at about a gig per day.
Any ideas?
I'm confuzzled. Something is eating up disk on one of my VMs, and I can't figure out what. On a machine that isn't even in active use because it's only accessed every week or so for demos, and which should have way less than 50% disk utilisation:
root@intra-174:/# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda2 20G 18G 1.6G 92% /
varrun 193M 176K 192M 1% /var/run
varlock 193M 4.0K 193M 1% /var/lock
udev 193M 24K 193M 1% /dev
devshm 193M 0 193M 0% /dev/shmGetting tight. So let's see where all that disk is being used:
root@intra-174:/# du -h --max-depth=1
16K ./lost+found
3.4M ./bin
33M ./boot
4.0K ./cdrom
3.0M ./dev
36M ./etc
4.0K ./floppy
260K ./home
4.0K ./initrd
168M ./jade
262M ./lib
4.0K ./media
4.0K ./mnt
4.0K ./opt
395M ./proc
226M ./root
9.8M ./sbin
483M ./sitebuilder
481M ./srv
0 ./sys
202M ./tmp
1.9G ./usr
1.5G ./var
5.6G .Umm, what the hell? 5.6G != 18G.
At linux.conf.au I had a quick chat to Tony Breeds and Steve Hanley about it, who both speculated that the problem could be sparse file preallocation being reported by du. So let's have a look:
root@intra-174:/# du -h --apparent-size --max-depth=1
16K ./lost+found
3.2M ./bin
32M ./boot
4.0K ./cdrom
244K ./dev
29M ./etc
4.0K ./floppy
144K ./home
4.0K ./initrd
168M ./jade
241M ./lib
4.0K ./media
4.0K ./mnt
4.0K ./opt
393M ./proc
226M ./root
9.4M ./sbin
482M ./sitebuilder
273M ./srv
13M ./sys
199M ./tmp
1.7G ./usr
1.5G ./var
5.1G .The odd thing is that rebooting this VM drops the reported disk usage in df back down under 6G, then it starts creeping back up again at about a gig per day.
Any ideas?
>> My Linux Australia plans for 2008
Mon, Jan 14th 5:09pm 2008 >> Linux
Hi Linux Australia,
A huge, heart-felt thankyou to everyone who has worked with me during the 3 years I've been President of LA: to those who have served on the LA Committee; to the organisation / mailing list members who have made it such an interesting and rewarding job; to the LCA organising teams; to all the volunteers including the LA admin team and everyone who has represented the organisation at an event; and to all the sub-Committee members.
Although I appreciate the nominations, I will not be accepting any positions on the LA Committee for 2008.
However, I *will* continue to be involved in the organisation. In fact I'll probably end up doing more in 2008 than I have in 2007. Part of the reason for stepping down from the Committee is that one of my stated intentions for 2007 was to make changes to the structure of the organisation necessary to shift the focus from Committee-as-executive to Committee-as-oversight, and make it easier for regular LA members to perform organisation activities in an official capacity. You may have noticed there are 4 motions on the 2008 AGM agenda (http://wiki.linux.org.au/Ctte/AGM2008) specifically related to amending the constitution to facilitate this, with the wording of the motions online at:
http://wiki.linux.org.au/Ctte/Constitutional_Amendments
My intention had been to have these changes occur sometime during the year, but for various reasons they were delayed until the AGM. The objective of these changes is to:
1. Clarify that the role of the Committee is to provide oversight, and that execution of specific tasks does not require Committee membership.
2. Clarify the concept of "membership" of LA, with the potential for a multi-tiered membership structure with additional benefits to members.
3. To apply some minor bugfixes to the constitution in terms of legacy wording.
I believe that ultimately the Committee should not be required to actually execute any projects directly: there is still too much internalised by the Committee that could just as well be managed by a non-Committee member, with the Committee merely providing oversight. A perfect example is the Grant Scheme: it has been managed directly by the Committee since its inception, but there is absolutely no reason the Committee should need to be directly involved other than in an oversight role.
This doesn't mean I think the Committee members are incapable of doing these things. On the contrary, they are among the most capable and motivated members of the FOSS community and I fully expect that Committee members will always be heavily involved in specific projects and LA initiatives. They're just the kind of people to get in and do things, otherwise they wouldn't have ended up on the Committee.
My point is that we need to break the assumption that you *need* to be on the Committee to do these sorts of things, and if Committee members are involved in specific projects it's because they have a passion for that particular project, not because they're on the Committee and the task just happened to be allocated to them. And we need to provide a clear path for non-Committee members to get in and help. After all, the phrase we've bandied about for a long time is "facilitate the enthusiasms of the Linux community", so we need to smooth out the bumps and make straight the paths for members who have ideas and inspiration and enthusiasm.
Assuming the membership approves these constitutional changes, my plan for 2008 is to step down from the Committee and to use myself as a guinea-pig to test the process of conducting official LA business without being a Committee member. I'll also probably volunteer to help out a bit with LUV, maybe standing for the LUV Committee if the opportunity arises - which would have the added benefit that I can gain the perspective of dealing with LA from an outsider's point of view.
The area I specifically want to work on during 2008 as a non-Committee member is membership benefits. I've spoken about this in the past so I won't go into it in detail right now, but I believe there are quite a number of things that LA could be doing to provide additional benefits to members including making better use of the "opensource.org.au" domain. I've already done some of the technical groundwork to allow LA to offer "blah@opensource.org.au" mail accounts and "blah.opensource.org.au" subdomains to members, and I intend to resume that in early 2008.
So, looking back over the last 3 years it's been a great time for me personally and I've learned many things. During that time we've seen huge changes in the IT industry that have seen Linux go from curiosity to powerhouse, and LA has ridden that surge in popularity to grow from 800-ish members to the current tally of 1385 with more joining almost every day.
I took up the role with very little idea what was actually involved and although there have been a few extremely stressful situations that members may not even be aware of (James Purser said to me recently that the LA President needs to have "a flameproof skin and the patience of Buddha"!) it's been overall a fantastic experience that I'm very grateful for.
The #1 lesson that I'd like to pass on to the next President is that regular communication is absolutely vital - I'd say more important than any other thing you do. At Pia's suggestion I was fairly good about this during my first 2 terms with reasonably regular reports sent to the linux-aus list. In 2007 it totally fell over and members could be forgiven for thinking we'd fallen asleep at the wheel. In reality a huge amount happened in 2007 but I simply did not communicate it regularly enough to allow people to get a sense of where things were going and what was happening elsewhere in the organisation. That was totally my fault and I accept responsibility for it.
So, in summary: I won't be joining the Committee again in 2008, but I won't be going far. In fact you'll probably see more of me in 2008 than you did in 2007 - whether that's a good thing though I can't say!
Finally I'd like to specifically thank those who have served on the Committee with me over the last three years:
Pia Waugh
Anthony Towns
Mark Tearle
Stewart Smith
Andrew Cowie
Geoffrey Bennett
Terry Dawson
James Purser
Janet Hawtin
Leon Brooks
Steve Walsh
You guys n gals are champions.
Hi Linux Australia,
A huge, heart-felt thankyou to everyone who has worked with me during the 3 years I've been President of LA: to those who have served on the LA Committee; to the organisation / mailing list members who have made it such an interesting and rewarding job; to the LCA organising teams; to all the volunteers including the LA admin team and everyone who has represented the organisation at an event; and to all the sub-Committee members.
Although I appreciate the nominations, I will not be accepting any positions on the LA Committee for 2008.
However, I *will* continue to be involved in the organisation. In fact I'll probably end up doing more in 2008 than I have in 2007. Part of the reason for stepping down from the Committee is that one of my stated intentions for 2007 was to make changes to the structure of the organisation necessary to shift the focus from Committee-as-executive to Committee-as-oversight, and make it easier for regular LA members to perform organisation activities in an official capacity. You may have noticed there are 4 motions on the 2008 AGM agenda (http://wiki.linux.org.au/Ctte/AGM2008) specifically related to amending the constitution to facilitate this, with the wording of the motions online at:
http://wiki.linux.org.au/Ctte/Constitutional_Amendments
My intention had been to have these changes occur sometime during the year, but for various reasons they were delayed until the AGM. The objective of these changes is to:
1. Clarify that the role of the Committee is to provide oversight, and that execution of specific tasks does not require Committee membership.
2. Clarify the concept of "membership" of LA, with the potential for a multi-tiered membership structure with additional benefits to members.
3. To apply some minor bugfixes to the constitution in terms of legacy wording.
I believe that ultimately the Committee should not be required to actually execute any projects directly: there is still too much internalised by the Committee that could just as well be managed by a non-Committee member, with the Committee merely providing oversight. A perfect example is the Grant Scheme: it has been managed directly by the Committee since its inception, but there is absolutely no reason the Committee should need to be directly involved other than in an oversight role.
This doesn't mean I think the Committee members are incapable of doing these things. On the contrary, they are among the most capable and motivated members of the FOSS community and I fully expect that Committee members will always be heavily involved in specific projects and LA initiatives. They're just the kind of people to get in and do things, otherwise they wouldn't have ended up on the Committee.
My point is that we need to break the assumption that you *need* to be on the Committee to do these sorts of things, and if Committee members are involved in specific projects it's because they have a passion for that particular project, not because they're on the Committee and the task just happened to be allocated to them. And we need to provide a clear path for non-Committee members to get in and help. After all, the phrase we've bandied about for a long time is "facilitate the enthusiasms of the Linux community", so we need to smooth out the bumps and make straight the paths for members who have ideas and inspiration and enthusiasm.
Assuming the membership approves these constitutional changes, my plan for 2008 is to step down from the Committee and to use myself as a guinea-pig to test the process of conducting official LA business without being a Committee member. I'll also probably volunteer to help out a bit with LUV, maybe standing for the LUV Committee if the opportunity arises - which would have the added benefit that I can gain the perspective of dealing with LA from an outsider's point of view.
The area I specifically want to work on during 2008 as a non-Committee member is membership benefits. I've spoken about this in the past so I won't go into it in detail right now, but I believe there are quite a number of things that LA could be doing to provide additional benefits to members including making better use of the "opensource.org.au" domain. I've already done some of the technical groundwork to allow LA to offer "blah@opensource.org.au" mail accounts and "blah.opensource.org.au" subdomains to members, and I intend to resume that in early 2008.
So, looking back over the last 3 years it's been a great time for me personally and I've learned many things. During that time we've seen huge changes in the IT industry that have seen Linux go from curiosity to powerhouse, and LA has ridden that surge in popularity to grow from 800-ish members to the current tally of 1385 with more joining almost every day.
I took up the role with very little idea what was actually involved and although there have been a few extremely stressful situations that members may not even be aware of (James Purser said to me recently that the LA President needs to have "a flameproof skin and the patience of Buddha"!) it's been overall a fantastic experience that I'm very grateful for.
The #1 lesson that I'd like to pass on to the next President is that regular communication is absolutely vital - I'd say more important than any other thing you do. At Pia's suggestion I was fairly good about this during my first 2 terms with reasonably regular reports sent to the linux-aus list. In 2007 it totally fell over and members could be forgiven for thinking we'd fallen asleep at the wheel. In reality a huge amount happened in 2007 but I simply did not communicate it regularly enough to allow people to get a sense of where things were going and what was happening elsewhere in the organisation. That was totally my fault and I accept responsibility for it.
So, in summary: I won't be joining the Committee again in 2008, but I won't be going far. In fact you'll probably see more of me in 2008 than you did in 2007 - whether that's a good thing though I can't say!
Finally I'd like to specifically thank those who have served on the Committee with me over the last three years:
Pia Waugh
Anthony Towns
Mark Tearle
Stewart Smith
Andrew Cowie
Geoffrey Bennett
Terry Dawson
James Purser
Janet Hawtin
Leon Brooks
Steve Walsh
You guys n gals are champions.
>> Understanding Linux load figures
Fri, Nov 2nd 10:41am 2007 >> Linux
For a little while now Russell Coker has been very deliberately using his blog to publish information-dense "mini-articles" rather than just the usual brief stream-of-consciousness stuff you see in the blogosphere.
I really like his approach. It gives his blog a lot more value (and timelessness) and means he's contributing significantly to the global pool of knowledge instead of just adding to the noise.
His latest post ("Load Average") is a perfect example - it's a distillation of the information he's gleaned from various sources on how to interpret the load average figures produced by the Linux kernel.
Very cool stuff, Russell.
For a little while now Russell Coker has been very deliberately using his blog to publish information-dense "mini-articles" rather than just the usual brief stream-of-consciousness stuff you see in the blogosphere.
I really like his approach. It gives his blog a lot more value (and timelessness) and means he's contributing significantly to the global pool of knowledge instead of just adding to the noise.
His latest post ("Load Average") is a perfect example - it's a distillation of the information he's gleaned from various sources on how to interpret the load average figures produced by the Linux kernel.
Very cool stuff, Russell.
1 of 6 >
[ Back to top ]