www.devco.net by r.i.pienaar

30Dec/070

New Blood Python

I recently mentioned that one of our Corn snakes passed away due to an infection in her body so we had a bit of a hole to fill.

I am getting a new cat in a weeks time as my Pixel is a bit lonely I think and she can certainly do with being chased around the house a bit.  We went to the pet shop to buy some disinfectant and to show my mother the Albino Burmese pythons the shop has and saw that they had baby Blood Pythons (Wikipedia).

Both Emma and I have been oogling Bloods for a while, they look a bit like normal Pythons but are swamp dwellers and so need more heat and higher humidity - usually they have a moss bed in the vivarium.  They also get really fat which gives them a very distinct look.


This is our little one (more shots here), he's very young still and had his first trip outside the vivarium yesterday, in the shop he was very feisty - hissing and striking at everything that moves - probably due to the guys there being pretty rough with them.  Emma didn't feel happy wearing the leather gloves they suggested we got so she was brave and picked it up and its a very happy and friendly snake.

He'll grow to between 57" and 78" (144cm to 198cm) and will weigh between 40 and 45lbs (18 to 20kg).  He might be too heavy for her to comfortably carry around but we'll have to see how it goes I guess. Blood Pythons are endangered animals in the wild due to hunting for their skin,

Tagged as: , No Comments
19Dec/070

Processing Medical X-Ray Data

Recently one of our snakes died due to an abscess in her body, we tried everything to safe the poor snake but in the end - and almost £1200 later - it passed away one night.

While undergoing treatment we were given copies of the X-Ray data, at the time I tried to read the RAW data files but failed, finally writing it off as some proprietary format specific to the X-Ray machine vendor.

Today I came across an item on MacNN mentioning OsiriX which is basically an Open Source suite to drive all things medical.  Turns out the data is encoded in a standard format known as DICOM which defines the data type and also a network protocol for these machines to communicate with each other and their image storage over a network.

The data I got was in RAW format so none of the DICOM headers were present, this led me to some other software and a FAQ for importing unsupported/unknown DICOM data.  Using the information there I was able to work out based on file size that my data was 512 x 512 big with an Header offset of 6480.

Armed with this information I was able to do a pretty decent import into OsiriX, the output of the one X-Ray can be seen below (click for full size).

The infection is clearly visible on the left of the image, this was removed but a second formed.  Anyway, so the point of this post isn't to go on about the poor departed snake but to mention the fantastic medical imaging tool OsiriX which is a pure Mac application and while I doubt many of my Blog audience will care for it it might still be of some use to some Googlers.

16Dec/070

New Google Calendar Feature

I've previously mentioned a major problem I had with Google Apps for Domains Calendar function:

GCal also has a feature that mails you a short daily agenda, much like
what you see if you hit the Agenda button. Problem is the agenda mail
function ONLY reads from your primary calendar, it does not include
events from any subscribed calendars etc. This means that one of the
biggest selling points of Google for Domains is crippled, if you share
calendars you can't use them even in the rudimentary tools provided.

I am glad to report that this is now fixed, my Daily Agenda mails started arriving 2 or 3 days ago and they include entries from all my Calendars,

Brilliant.

14Dec/071

QNAP TS-209 pro NAS

I have been looking for a good solid SOHO Network Attached Storage device for a while.  I was all set on the Lacie 2big 1.5TB Network device, it is attractive does what I needed - not much more than share files - and supports multiple drives.

Problem is I have since discovered that Lacie UK are the most incompetent people on the planet.  I placed the order with them after their site showed they had the unit in-stock on a 3 days delivery time, after placing my order site said the same so I was confident it was all in order.  Needless to say the device never came.  I emailed their sales lines, no response, I emailed their supports lines, no response.  I called them (after spending about a hour tracking down phone numbers) they didn't reply to voice mails.

After about 10 calls I eventually spoke to someone who was unhelpful to say the least, I was told next-week, next-week etc a few times, next week came and went and no drive unit so I eventually just canceled my order.  No more Lacie devices in my future ever that is a certainty.

Some searching later I found a few excellent reviews over at SmallNetBuilder for this and other devices, they even have a very awesome tool for comparing different NAS devices for speed etc, I decided based on their review to get the QNAP TS-209 pro.

The TS-209 pro is an attractive yet very well built little system, all the screws and connectors are proper solid bits of kit like you'd expect on real hardware.  It is a Linux box and you can ssh to it:

# uname -a
Linux vault 2.6.12.6-arm1 #2 Thu Nov 1 03:31:14 CST 2007 armv5tejl unknown
# cat /proc/cpuinfo
Processor       : ARM926EJ-Sid(wb) rev 0 (v5l)
BogoMIPS        : 332.59
Features        : swp half thumb fastmult
# cat /proc/mdstat
<snip>md0 : active raid1 sdb3[2] sda3[0]
731423296 blocks [2/1] [U_]
[==>..................]  recovery = 10.6% (78181504/731423296) finish=144.0min speed=75574K/sec

So a proper little box then, I put 2 x Seagate 750GB drives into it for the same amount of storage as I would have had in the Lacie, the total price ended being about GBP50 more or so.

That GBP50 is money really well spent in this case.  The device has hot swap drives - I tested it by yanking one out live without any problems, a few beeps, a few emailed alerts and log entries:


The device has a ton of features, the usual SMB shares are there but also NFS, Appletalk, FTP, Web access.  It has a MySQL server built in, a webserver with php so you can deploy whatever you want on it.  An iTunes server for your MP3s and a typical UPNP media server that will work with your PS3 etc. 

This is a really capable device built on solid technology, so far I am very happy with it and will recommend to anyone.  If anything significant change on my experiences I'll post more later but I suggest you read the review linked above and seriously consider this for your SOHO NAS needs.

Tagged as: , 1 Comment
13Dec/070

Google Calendar Sync for Blackberry

Google released a neat new Blackberry app recently, it lets you sync your Google Calendars with your Blackberry native calendar.

I tried it and it's awesome, previously I synced my Mac to Google one way using ical feeds and then used the Blackberry sync tools to push to my phone, again one way.  It sucked a lot.  Now, the BB goes direct to source, syncs up all my calendars even ones I subscribed to and it just works.

I have one tiny gripe, I'd like to be able to pick which of my calendars new entries go into, even if they all go into the same one as long as I can choose which one, other than that it's great.

12Dec/070

Open Source Movable Type

Back in May 2004 Sixapart announced they were closing up Movable Type with a set of draconian licenses that essentially set out to punish the countless people who contributed to the project.

This move was met with much hatred throughout the blogging world and large amounts of people responded by simply moving on, making Wordpress todays leading Open Source blogging platform.

Today it was announced that they are heading back to their roots and giving Open Source another try.

Ever since the changes with our version 3.0 launch three years ago, there have been those who are quick to judge or quick to question whether the intention of openness was ever there. And of course, we've since learned a lot about how to communicate better with our community, and how to build a sustainable business that we're proud of, so that we can ensure even greater investments in Movable Type.  We hope that it's not just the
launch of MTOS that demonstrates our commitment to openness -- from our
community feedback process (which has already yielded a completely new MT wiki) to our creation and promotion of open
standards for the web to our genuine interest in dialogue with the
communities we serve, we truly believe Movable Type is the most open
platform around.

I think Movable Type is a great application and I use it for my own blog, I am certainly very glad it is now Open Source and I have no real reason to move off it.  But I think the damage the last few years has done to the community is immense. 

When I started out with Movable Type and my blog in 2003 there were a ton of MT resources out there, when new versions came out the community literally jumped and ported extensions to it, made new themes and plugins for it and as a whole rallied behind the company.  Today the situation is very different, just try and find a single good resource for MT4 themes and skins that support all the various new technologies built into it with widget sets, the new templating system etc, there are a few but nothing as amazing as there used to be.  Have a look at the lack of ported plugins etc, the uptake and enthusiasm for the product is gone, Wordpress is where its at today.

This could be in part due to the constant breaking of backward compatibility and reworking of template systems, changing APIs and such though I am not convinced.  This situation is pretty much par for the course in the Open Source world and anyone willing to commit to contributing does so and are prepared to port at the drop of a hat. 

It just isn't happening with MT, not because Sixapart made it too difficult, not because people aren't prepared to support a changing product but simply because Sixapart alienated its contributors.

Todays announcement lists a number of cool things the community contributed over time, it was delivered in spin that would make most political parties look like amateurs, fact is the list that they showed as community contributions, not many of those are recent, not many of those are breakthroughs that happened since 2004, why? Because everyone fell out of love with MT.

I think the move is one of desperation, I wish them all the luck in the world as I do not want to move to a new blogging platform so it is in my interest to see this work for a long time, but I am afraid that ship has sailed.  I hope I live to eat my words though.

I think the overall technology - namely Perl - just doesn't belong on the web anymore,  this will no doubt be met with a lot of scorn by certain types, but the general idiocy around Perl 6 etc will sink anything that is based on it, Wordpress ultimately is in a much better camp being PHP based.

But lets not sling opinion around too much - nevermind that I am still mentally recovering from the displeasure of trying to maintain a MT Enterprise installation on a really big site.  To gauge the community involvement is simple, both companies publish a plugin directory on their website.

Movable type: Total Plugins: 578, ones tagged as working with MT4 68
Wordpress: Total Plugins: 1277, it is not indicated if these work with some versions of WP and not with others.

So 11% of MT plugins got ported from 3 to 4, some were just not needed because the functionality were added directly to MT4 for sure - like Captcha's - others, I guess the authors packed up and left to another platform or simply stopped blogging.  Either way, it is a pretty sorry state of affairs for MT to be in.

If I had to choose a blogging platform today, and had to weigh up MT against WP, my money would be on WP without needing to spend too much time thinking about it. I recently created a new blog - now defunct - it was based on WP and my next one will also be.

7Dec/071

Zoho Creator

I've heard a lot about Zoho before, essentially they provide Web 2.0 style office applications - many of them completely free of charge.

I didn't pay them too much attention really, being a mostly happy Google hostage.  Today I read again about their CRM which led me to look at their other offerings.  Boy was I impressed.

Initially I am just trying out Zoho Creator, it is your basic RAD database application development system, fully hosted, fully free and fully on the web and mobile.

I ofcourse had an itch to scratch, the itch being that I keep a list of my billable hours, sales, recurring bills etc all in a big old nasty VI file using  VIM Outliner.  This approach works but its hardly high tech or cross platform.

So I created a small Creator app that lists my clients, hours billed, sales items, recurring invoice items and some reports for listing invoiced and un-invoiced of each.  Some screenshots of my app:


Adding a client


Adding an invoice line


Report of unbilled time


Bulk mark items as invoiced

You can click on the images for larger versions.
This is pretty impressive, you can really imagine coding a standalone version of this for some would be fun, for me it wouldn't be a challenge and so it would be dead boring and probably take many hours that is better spent on billable work. I'd also be stuck with something else to maintain in code rather than a snazy point-and-click UI.
So how long did this app take me? Not more than 2 hours end to end, free hosting, and it's available online via my blackberry for adding items etc while on the road.
Creator also has an API like all good Web 2.0 stuff and so it is really easy for you to integrate something into this, but you could also just embed a specific report or specific input field into any page of your choice via a simple iframe.
This is a great solution for small little web apps like this, soon in Q1 2008 they will also integrate the database from Creator into the Reports app then you can do some really nice multi dimensional reports, graphs and such.
I'd recommend checking out Zoho apps. As always be sure to read the T's and C's though before handing over too much overly sensitive data.

Tagged as: , 1 Comment
6Dec/070

Movable Type 4

If you are seeing this then you're arriving at my blogs new home.  It is now hosting using Movable Type 4 as apposed to 3. 

I have to say I am very impressed with MT4, the user interface and additions like widgets and widget sets has a big impact in the general ability to customize things, previously I had to rely on a whole lot of PHP snippets to do what I wanted, I'm glad to say there is no actual PHP code in here except for my few photo galleries etc.  URL's though have to include the .php bit to keep my links valid.

The migration as a whole took maybe 3 or 4 hours, but this included moving my wiki, galleries and maps to a new server as well.

A few things have fallen away now, I have only one RSS feed for everything where previously I had one for photography related stuff, one for non photography and one for everything.  I had very few subscribers to the specific ones so I figured there is little point in keeping them around.

MT4 finally has proper tags support and a tag cloud, I'll start using it but will need to go through my almost 400 old entries to add tags if I really want it to be useful, so still not sure if I'll make the effort.

It's probably only for my own sake, but I've made a screenshot showing a full copy of my old blog here.

5Dec/073

XEN ‘No space left on device’ sillyness.

Yesterday while trying to get a i386 DomU going on my x86_64 Xen server I ran into some hassles with 'No space left on device' errors.
Anyone who sees that would immediately go for the df command, but it would be futile in this instance.
What happens is that the xenstore - where it stores meta files state of the running VMs - gets corrupt,
You can try and run 'xenstore-control check' it will also give some b/s answer kind of suggesting all is well, it's not, check /var/log/messages and you'll see stuff like:

xenstored: corruption detected by connection 0: \
err No such file or directory: Write  failed
xenstored: clean_store: '/local/domain/0/backend/vbd/16/51712/sectors' is orphaned!

At this point you're pretty much screwed, try and reboot and xend won't even run, no VM's will start.
Fixing it is pretty easy in the end once you've done tons of Googling and found the 2 year old bug in the Xen bugtracker about this exact problem - complete with the xen guys trying to close it in a routine 'cleanup of tickets' rather than actually fixing the bug.
First, shut down all things Xen, if you can even boot from a non Xen kernel. Once you're sure its all down just delete /var/lib/xenstored/tdb* and reboot, it should all be fine after that.
You must be sure you don't have xenstored running while doing this, else it will write its in-memory corrupted state back to disk when you reboot and it will look like your fix didn't work.

2Dec/070

CentOS 5.1 Released

The CentOS team today released CentOS 5.1. This is good news there has been a ton of bug fixes upstream.
It is still trickling out to a few mirrors so should be available everywhere soon, I updated my 2 development servers using:

yum --disablerepo=\* --enablerepo=base --enablerepo=updates update

And so far it is all good, be aware that there seems to be a small issue with /etc/redhat-release still showing things as it was with 5.0, but this will probably be fixed soon as there has already been mentions of this on the forums.
As always, read the release notes before you upgrade as there are some outstanding issues you should know about.
Well done, the Wiki has also recently had a layout upgrade and it is all starting to look much more professional than before.

Tagged as: , No Comments