Skip to content


Rails Conference Debacle

I've only just heard of this silly mess that occurred at the Golden Gate Ruby Conf and many people have already posted on this so I won't bother wading in. But I thought I'd quickly say: Not impressed with Matt DHH or anyone else who considers it okay to display slides like that in a public presentation.

I wonder how all those defending the action would feel if the images were of naked males?

For those who haven't seen it - here it is: http://www.slideshare.net/mattetti/couchdb-perform-like-a-pr0n-star

Its not the use of the slides though that's ultimately an issue.Its the steadfast determination of those defending it that's not good. The fact is it caused offense and was out of order and yet those at the top continue to defend it. This is nothing more than a grand display of adolescent arrogance and damages the credibility of the Rails community.

One of the reasons I left Rails for Django some time ago.

Reference:
Dyepot
Ruby Railways
Sarah Mei
Ultrasaurus
Zed Shaw

Posted in Uncategorized.

Mac Blogging Software …is rubbish?

You'd automatically think that an application you need to pay for would be better than a Firefox plugin. Unfortunately that's not the case but it baffles me how no one else seems to realise this.

For example take the array of Mac blogging apps out there: Ecto, MarsEdit, Blogo, MacJournal, etc, etc...

Paid for applications and yet they all have a woeful array of features when compared to the free Scribefire Firefox addon.

Scribefire includes Youtube  and Flickr integration, article searching, WYSIWYG/HTML/Preview panes, integrated promotion tools, ad serving tools and much much more besides. And did I mention this is all FREE?!

While the Mac community are crying out for substandard apps they paid for to release feature X for their fave blogging app. Why? Why not just switch to Scribefire and save yourself the heart ache?

Or am I missing something?

Posted in Uncategorized.

Project Locker Project Hosting

It looks like a new service has entered the project hosting market - Project Locker. Its already crowded with 10 major SVN hosts but this one looks promising. It provides Git, SVN version control and Trac hosting too. The level of integration with other services seems quite impressive too.
Their pricing model seems quite reasonable and as is customary they offer free accounts of 2 users and 300Mb storage. This gives you the option to produce as many repos as you want! How many repos this will give you I'm not sure but its a good start.

Posted in project management, subversion. Tagged with , , .

CodeSpaces Project Hosting

Looks like CodeSpaces, the project hosting company, I listed a while back (Free SVN Hosting Providers) is preparing for a beta launch of some funky new features.

I wish I knew more but alas I don't (MASSIVE HINT ;) ). They're a strong contender in my previous review but I reckon they'd do better with a nicer free package. Hopefully some of these new features will find their way to the free users. Sweeten the deal a bit. :)

Posted in Uncategorized.

Linode and Slicehost

Just as I'm in the process of moving my sites off Slicehost onto Linode completely I spotted a tweet of someone asking about the advantages of of the big green "L" over SliceHost.

Well although I did a post reviewing the top developer webhosts a while back I thought I'd jump into answering this very question as I'm slap bang in the middle of both.

I've been using Slicehost now for a little over a year and Linode I first signed upto about 6 months ago. When I first started using Slicehost it was a great breath of fresh air. VERY developer friendly with a great community and nice features.

However, I'd begun to get a bit itchy since the connection between me and my Slice has often been a bit slow. Whether this was down to the Atlantic gap or something on my end I wanted to test a few other hosts out. So on I hunted and eventually found Linode. They seemed to have a lot of the same philosophy to Slicehost with a strong developer focus and some nifty features. One of which was the web console access to your node (a feature of Slicehost that's been indispensible).

I signed up for a low-end account to try it out and was immediately hit by the choices on offer. Not only do you get a huge range of kernel options (64 and 32 bit) but you can also set up multiple disk images on the storage you get.

Distro Choice at Linode

Then after sign up and image creation I was into the dashboard. WOAH - is pretty much all I said at that point. You're suddenly hit by a selection of stats and gtraphs that tell you everything you could want to know about your nodes. Bandwidth usage over time, CPU, memory, etc. Not only that you can setup custom alerts for when you're node is using too many resources.

CPU Graph on Linode Network Graph for Linode Disk IO Graph for Linode

So have I completed my move yet? Not quite but I will do soon. I have 1 or 2 sites left on Slicehost and I downgraded my plan to the lowest I can. Once I've finished my move over I'll be shutting down my Slice and upgrading my Node.

Slicehost are a great host - I really have no problems with their hosting, the people or the service. Its all been 100% but Linode offer more for the money and so its time to move away fully. If Slicehost happen to up the anté with new features to match I may considr moving back but for now Linode are mikles ahead. I've done a summary of their strengths below.

Why Linode Is Better

  • Fine grained control over node - just about everything can be configured to your hearts content.
  • Huge choice of kernels AND the choice to use custom kernels too!!
  • Swap IPs between nodes.
  • IP failover.
  • Private IPs between nodes for local communications.
  • Usage and stats galore in numbers and pictures.
  • Custom alerts for resource usage.
  • Really friendly team of people who listen to their customers. For example shortly after my previous review one of the guys at Linode commented on it!! :)
  • Easy and fine grained upgrades of nodes. Add extra RAM, disk, IPs, bandwidth, etc.
  • Faster network access. This is very subjective but my SSH connection has been noticeably faster and more responsive on Linode. The same can be said for a friend who made the shift to Linode too.

Why Slicehost Is Better

  • Bigger and stronger community with forums, Facebook profiles, comprehensive wiki, etc.
  • More comprehensive API.
  • Great technical documentation in the form of articles and wiki.
  • Company colour is blue - my favourite. ;)
  • Very simple (i.e. user-friendly) backup system - though it does cost.

Posted in Uncategorized.

Freebase - Structured Data

freebase-logo.pngCan't believe I've not spotted this before. Freebase is a freely editable store of structured data. If you want a table of programming languages or Greek poets then Freebase can provide. This has endless possibilities for tinkering and scripting with.

If you've not seen before then I strongly recommend a visit.

Posted in general, web technologies.

New Mac, Wii and DS

gallery-big-01.jpgI've not been posting in a while as I received a new Wii, DS and Mac over the Christmas period which has kept me very busy - thats on top of working all the hours god sends!

I'm not rich - nor is my family. There was a windfall that enabled presents to be bought and so here I am. Very grateful and happy.

The Mac is bedding in nicely - although I've spent more time blogging with it than coding so far. That maybe a sign of things to come as I am considering moving this blog to a new home and changing name. I don't see myself posting as much dev related stuff in the future. Watch this space.

The Mac is SO quiet and refined - its damn refreshing to use. Aluminium unibody case and the little mag power cable is wicked. :)

Posted in Uncategorized. Tagged with , .

Wow - Mysql Site

When did this happen?

Posted in mysql.

AbeBooks UK: Another Netvibes Plugin

Abebooks LogoI'm loving the Netvibes plugins at the moment and I produced a second one today.  This time I've decided to have the body of it as static HTML rather than generating it using the included widget API.  It seems to start faster as a result.

The widget is simply a search box for finding cheap books at the Advanced Book Exchange.  If you're a book worm you'll love the site.  Its had millions (seriously) of rare, used and new books from across the world.

Wicked stuff.

You can view the widget in all its splendour here.

Posted in Uncategorized.

First Netvibes Plugin

Just finished my first Netvibes plugin.  Hopefully it'll be the first of many to come as I've now got the hang of the Universal Widget API (UWA) now.

My first widget is mainly for UK users who take a lot of flights.  Its a Lastminute.com flight checker widget so you can find the latest pricing info for a given date.

You can view it and install it here.

lastminute_logo_368x701

How the UWA Widgets Work

They're dead simple in principle.  So simple a widget is nothing more than a specifically formatted HTML document.  You have to make sure you've got a few things in there like a UTF-8 encoding attribute at the top and a few other bits but the skeleton document helps a lot.  Other than that you can use Javascript and style it with CSS all like a regular HTML document.  More about UWA.

Forms

This was a serious pain in the arse.  The form documentation for Netvibes is rubbish and the forum had little of use - although I was helped by Xavier and managed to get round my problem.
Basically in Netvibes - don't use a form.  Or at least don't submit a form in the traditional sense.  It won't work, and even if you manage to get it working it'll die on Mac.  You need to emulate the behviour of the form by packaging the variables up and executing the widget.openURL() function.  Thats for GET forms.  POST forms will need to use the Ajax API Netvibes includes.

Packaging Up Your Form to Get

Someone else may find this useful...

var formElements = document.lmfForm.elements;
var qString = '?';
for (el in formElements) {
  if(formElements[el].name != undefined && formElements[el].value != undefined){
    qString += formElements[el].name + '=' + formElements[el].value + '&';
  }
}
widget.openURL('http://www.example.com/script.php' + qString);

Posted in javascript. Tagged with , , , , , .