Showing posts from 2011

Christmas IT fun!

This year I've had plenty of IT 'fun' in the run up to Christmas! My daughters both love drawing, and both are always asking if they can print documents they've created on their computers; drawings, writing, photos. So this year Father Christmas bought us a Bamboo Pen and Tablet by Wacom, and an HP photosmart 5510. Huzzah! Thank you Father Christmas! Thing is my kids computers are both fairly old relics kept alive by wonderful OpenSource software. Ubuntu is our OS of choice, and Father Christmas seems to have done his homework and brought us toys that will work well with our linux based systems. Almost. It turns out that the Bamboo tablet is one of their very latest offerings, a 'third generation' tablet, with support for multi-touch or something. It turns out it needs some fiddling to get it working in Ubuntu. First up, it needs a really up to date version of the linux core, which has support for multi-touch. This for me meant an upgrade to Oneiric Ocelot

Eclipse and m2eclipse maven integration plugin.

I've been doing a maven course recently, and have been having heck of a job getting the m2eclipse plugin to work in eclipse (indigo java Enterprise Edition package) on Ubuntu (10.04). Every time I started the eclipse IDE I got complaints about the javahl library not being on the class path. I spent an age trying to fix this. It seems that with the install I have eclipse is not picking up the -vmargs settings from the eclipse.ini config file. I have the java ee package of eclipse installed, and I installed it by using the package manager, and then copying the new version over the old eclipse install. I'm fairly sure this is where some of my problems are arising, because I have already found a few places in the eclipse start up scripts that reference a package directory. My Enterprise Edition (EE) package has a different path to the standard java eclipse package. At some point I will go back and clear this mess up, and fix my paths so that everything works as it should, but this

Using multiple processors in VirtualBox VMs

I noticed recently that my Ubuntu Narwhal OS running on Virtual Box was running Eclipse far slower than it should be. Ubuntu's System Monitor showed only one CPU, and it was pretty busy. My machine is an i3 processor laptop, with 4 cores. Why was Ubuntu only using one processor? It turns out that you need to change the settings in the VM VirtualBox manager to make it use more. Right click on your VM, and choose settings. Click on system in the left hand column, and click the processor tab. Here you can choose the number of processors that the VM will use. I set mine to 4. I also chose to enable PAE/NX which allows your VM to access more than 4GB of RAM. You also need to enable the IO APIC option back on the Motherboard tab. Without this you can not use more than one processor. After making these changes your VM may now support multiple processors, or, as in my case it may refuse to boot. If your VM fails to boot as mine did, try enabling VT-x/AMD_V in your bios settings. After en

Trouble with MongoDB on Ubuntu!

Tonight I've been setting up an Ubuntu server to run a MongoDB. MongoDB is a noSQL document database, that promises scalability. I'm new to noSQL databases, but already I'm finding them liberating compared to the rigid schema based traditional DBs. I'm also fairly new to Ubuntu. I used to develop on Sun linux and silicon graphics but that was a long time ago, and Ubuntu is very different from the xterm vi based system I was used to. So, I installed MongoDB using the Ubunto software repository. Which worked well, and was simple to do.... and then I started playing with MongoDB. To aid testing, playing etc MongoDB provides a javascript shell that can be used as a stand alone client of the database. Which I played with and became familiar with how to put a document into a DB, which is incidentally, really simple. The trouble started when I tried to put a document into the database using a simple Java client, using the mongo java driver ( here ). I could not get this to

Software Architecture dictates business models.

I have spent the last few years trying to understand what cloud trends mean for enterprise software architectures and enterprise software companies. I have come to realize that software architecture is of paramount importance to a company's revenues. Software architecture fundamentally dictates your business models. How you can sell, how you can integrate and how you can partner; all this is dictated by your software architecture. Unfortunately the architecture of products are often decided by people with no inherent sense of this. Software architecture is treated primarily a technical function, and often architectural decisions are made on the back of technological evaluations; this library is faster than that library etc. However when we make an architectural decision we often fail to take the far reaching decisions into account. The new web, (web 2.0, async, web technologies, SaaS etc) demands many changes of enterprise software. 

Google Android - App Engine connected projects.

At Google IO this year Xavier Ducrohet & Brad Abrams showed the new Eclipse Google Plug in's App Engine connected android project. I've been trying it out, and have managed to get C2DM (cloud to device messaging) working after a few trials and tribulations. A few tips on getting the 'default' project running.  Tip 1. Make sure you're signed up for C2DM here . Tip 2. You need to use the android app's menu to select an account before the app will work. If you don't do this you get exceptions when posting a message from the GWT website (poor error handling). More tips as I find them.....

Welcome to the Boho Software blog.

This is a blog about software technologies, thoughts about the industry, cloud and stuff like that. I've been a C++ windows app programmer for the last 10 years, using COM. The advent of managed languages and the vast array of open source libraries available for them had kind of passed me by. All this changed a couple of years ago, when the start up that I worked for was bought up, and we moved into a phase of integration with other products. I led an integration that involved writing a Java module that use a library provided by a different product group. I learned Java and flung myself headlong at the project. The library I was using used the spring framework, and I had no idea what was going on. I resolved to update my skills, and widen my knowledge as much as possible. During the last two years I have done courses on and learnt a staggering amount of stuff, including but not limited to; Languages; Java, C# .net, Java Libraries; log4j (logging framwork) Junit (unit test