Monthly Archives: August 2008

Lego NXT and Java

I bought a Lego NXT kit a couple of years ago, but beyond getting it to run around vaguely bumping into things and getting stuck, I’ve never really done much with it.photo

The main problem was the software. The NXT comes with a graphical programming environment called NXT-G. It’s a lovely idea and works really well for simple things. But if you want to do anything at all beyond that it starts to become a serious headache. You end up with wires and blocks and all sorts of things all over the place, mostly not actually viewable without doing some serious scrolling around.

Call me old-skool, but I like to code with words in a text editor. I can see that the NXT is aimed mainly at kids (including big kids), so the thinking seems to have been that kids can’t read or something. I’m not sure. When I was a kid I coped very happily with BASIC.

So my search led me to the leJOS website. leJOS is basically a cut-down version of java with some NXT classes thrown in. Finally I could code in words, in a way that I’m used to. Finally I could write more sophisticated programs than ‘move forwardu till you hit something, then stop’. Hoorah!

But that’s when the apathy hit me, as it probably has done with many a self-taught student before me. It’s all very well having the resources, but do I have the time to work out what it’s all about? Where do I start? Without any course, books, ideas, or structure it can be hard to do anything much.

Brian Bagnall’s excellent (if occasionally buggy) Maximum LEGO NXT: Building Robots with Java Brains came in.

photo

It tells you about the NXT brick and bluetooth, how to write code for the NXT, and even some ideas for building robots that do interesting things. The first one you get to build (see my photo above) moves around until something blocks its path. It then scans around for an open path, and heads off in that direction. A nice example, and only a few lines of code. How you’d code that graphically I daren’t even begin to think. A tangled mass of data wires and blocks, probably.

Time to build my first Turtle!



CushyCMS

CushyCMS is a very nice little ‘CMS’ tool/service that lets you edit content on your pages easily and simply. It’s by a small Australian startup (another Australian web company?!) called Stateless Systems.

To call it a CMS is perhaps a bit much. It’s basically a clever and lovely way for you to edit content on a static webpage via FTP, along the same lines as Contribute. Oh, so you think Contribute is a CMS, and therefore so must CushyCMS be? Well then I suggest you take a cold shower and come back after the next full moon. For the rest of us, this type of paradigm is nice for editing content, but it certainly does nothing for truly managing it.

Of course Cushy’s nothing like as complex a beast as Contribute, which is in fact a big selling point. With CushyCMS I had a basic page up and edited on my website in just a couple of minutes of logging in. Nice clean user interface, filled with healthy web2.0ness. Nothing scary for a webophobe.

You also don’t have the disadvantage of having to get a copy of all that expensive Adobe stuff, because CushyCMS is not only a web application, but it’s a free one too. There is an option to pay for a ‘pro’ version, which lets you change the design of the editing interface, and thereby fool your hapless web editor into thinking they’re really logged into your/their site when they edit content, and not the CushyCMS site. Is that worth $28 a month?

Before we get too filled with shock and awe, this system isn’t going to be the ultimate answer to CMS woes for everyone just yet. To set it up, you have to have a static page already on your site. This isn’t so much about content generation as it is about content editing.

And you have to manually edit those existing pages to contain bits of html that tell Cushy ‘this is an editable section’. Again, all very similar to Dreamweaver and Contribute. So you need a slightly web-savvy person to set up a site in the first place, and then a webophobe can edit the stuff that they need to.

Another drawback is that you’re very much reliant on their (not open source) software because all content editing is done through the web application. OK, no worse than being reliant on a desktop application that costs bundles of cash, but still… what if the site goes down, or they go out of business. You won’t lose your site, but you will lose your nice little system.

In conclusion, this is actually a very simple system which lets a web developer set up a simple static site and pass over editorial control to a non web-savvy editor. It is not a CMS in any meaningful sense of the word. But it is great at what it does.

acquia

Acquia is a company set up by Dries Buytaert, the guy who developed drupal, in an apparent attempt to get drupal taken more seriously by companies and institutions. The idea seems to be that Acquia (carrying on the water theme: druppel means ‘drop’ in Flemish) will provide commercial level support for drupal.

When a company or institution is considering an piece of open source software, having good support is always going to be a Big Thing. You don’t want to base your entire system support on the temperamental lone python hacker in your institution who knows how your open source code really works.

Without this level of support, drupal has until now tended to be taken seriously only by smaller companies and groups/departments within bigger institutions, who can generally manage their own installation.

There are of course tons of companies out there who already support drupal installations, but you have to take Acquia a little more seriously if only because the company is headed by the creator of drupal. There are also other supported open source CMS: Squiz’s impressive Mysource Matrix, and companies such as Netsight who support the normally very intimidating Plone.

It’s hard to tell whether Acquia will lead to a big shift in the way drupal is used, as Acquia seems to be a relatively new venture. Interesting nonetheless, and something worth keeping an eye on at least.