Posts

Using an Ubuntu VM to connect to a VPN using juniper network connect.

Recently I've been using Ubuntu 12.04 running in a VirtualBox VM to connect securely to a VPN using Juniper Network connect. I've been doing this for years with a windows VM, but have recently worked out how to do it from Ubuntu. The benefits of using Ubuntu for this task are; No licensing requirements for OS. Smaller footprint for VM. - Windows 7 VM footprint was 120 MB Private Working Set. Ubuntu is as low as 70 MB Private Working Set. I haven't found any drawbacks yet. Step 1. Create an Ubuntu 12.04 LTS desktop 32bit virtualbox machine. It is important that you choose the 32 bit platform as the 64 bit version will install a 64 bit java, and juniper network connect won't work with this. If you have an existing 64 bit 12.04 install that you want to use see  here  for a work around. Step 2 Ensure openjdk-6-jdk and icedtea-6-plugin are installed by running this command from the Ubuntu VM's command line; sudo apt-get install openjdk-6-jdk ic...

Why you should learn Maven

It's hard to understand what Maven can do for you until you experience it, but bear with me and I'll try to explain what its done for me. A couple of years ago I was lucky enough to get on a Google Web Toolkit learning course. It was taught by great and inspiring young hacker. He seemed to know everything. We spend ages downloading library jar files for junit, easymock, hibernate, slf4j, and all the libraries that those libaries are dependent on. It took up a lot of time, and I wondered how I would ever find/navigate/manage all those jar files and their dependencies. I could see that it would be pretty easy to get into the java equivalent of .dll hell. However under our instructors expert advice we patched it all together and built our GWT project. I learn a heck of a lot. I learnt some Java, the MVP pattern, saw glimpses into Test Driven Development (TDD) using junit, and easymock, Object Relational Mapping with Hibernate and Dependency Injection. In truth the course b...

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.