Archive for April, 2006

Stress testing a PC

Monday, April 10th, 2006 | hardware, linux | 1 Comment

We’ve been working with one of our customers to roll out a small compute cluster for oceanographic modelling. The cluster consists of a series of dual processor, dual core systems. The cluster is up and running and has been generating useful data for our customer, but they have been experiencing occasional problems on one member of the cluster.

In order to investigate this problem further and isolate the cause of the problem I’ve been looking at ways to stress test the system. I’ve found memtest86+ to be pretty good at identifying problems with memory so I’ve gone and run that for a few hours and noticed no significant memory problems. After that, I’ve been looking at ways of stress testing the processors. StressCPU is one example of a program which runs some code in a loop which should show up problems when run for a period of time.

Prime95 is another interesting piece of software for stress-testing processors. The software is written for the purpose of finding Mersenne Prime numbers but turns out to be a good exerciser for the processor by virtue of the calculations it performs. It is widely used by overclockers and others intested in testing the stability of their systems and includes a mode specifically for stress testing systems which runs the program and compares the results with known good answers. The software is available for Linux and Windows and can also be found on the Ultimate Boot CD allowing it to be run on a system at boot-up.

I’ll be trying this on the system in the next few weeks and will report back on the results.

Oracle Database 10g Express Edition on Debian testing

Tuesday, April 4th, 2006 | databases, linux | 4 Comments

So Oracle released a trimmed down version of their database engine back in March. It’s called Oracle Database 10g Express Edition and is available from Oracle. The interesting thing about Express Edition (XE) is that it is free to develop, deploy, and distribute. It does come with some limitations – the maximum amount of data you can store with it is 4GB, it will only use 1GB of system RAM and won’t use more than one processor, but it is perfect for development and testing. It also features a very nice web-based administration and user interface.

I’ve been using Oracle as a developer and DBA since version 7.3.4 and while the standard Oracle tools (a command-line tool called sqlplus) are powerful – they are far from friendly (I wait with baited breath for a version with command-line history). XE’s web-based interface allows basic administration and user tasks to be carried out without having an Oracle reference to hand, which is nice.

Where possible, we tend to use Debian GNU/Linux for our testing and development. It’s free, reliable, portable and comes with excellent package management software. Furthermore, it is available in a a number of different flavours – stable, testing and unstable which allow you to choose a version of the operating system with the latest and greatest software, or a version with more stable but slightly older packages.

For development, we tend to use the testing distribution which keeps us close to the bleeding edge without exposing us to too many serious bugs and problems. When Oracle announced XE for both Windows and Linux – I was delighted to hear that not only were they releasing packages for RedHat and SuSe – the 2 commercial distributions, but they were also going to release packages for Debian.

I decided to reinstall our Debian testing system and try installing XE. I was pleasantly surprised at how straightforward the install went (I’ve previously installed versions of Oracle software on Debian systems, albeit with some hacking and gnashing of teeth – since they were intended to be installed primarily on RedHat or SuSE). To get XE up and running on Debian testing was as straightforward as follows,

  1. Install Debian testing using the latest netinst image.
  2. Edit the /etc/apt/sources.list on the installed system and add the following lines to the file:
  3. deb unstable main non-free
    deb-src unstable main
  4. apt-get update
  5. apt-get install oracle-xe-universal
  6. /etc/init.d/oracle-xe configure

… and your XE system is up and running and ready to be used. You can either use the traditional sqlplus or connect to the web interface at The package installs itself under /usr/lib/oracle/xe which isn’t FHS-compliant but apart from that, the Oracle debian packages seem to be pretty well-behaved.

If you have a Debian system lying around and are curious about Oracle, this is a great opportunity to take a look at the system at no cost.

How to write a CV

Monday, April 3rd, 2006 | business, jobs | 6 Comments

I found myself reviewing CVs again this morning for some of our open positions (a C# developer position and a student job opening for the summer). Everytime I review CVs (or resumes as they are called across the Atlantic) I am amazed at the variety in content. I presume there are hundreds of sites out there which give tips on writing CVs. Colleges might want to consider giving a short course in how to write a CV (maybe they do already, do Irish colleges do this?) – I mean maybe an hour or 2 on what people should put in.

So what do employers look for in CVs? I’m afraid there is no magic formula for ensuring you get a job with your CV. You’re only going to get called for an interview if the content of your CV seems to meet the requirements for the job. Some employers may use some sort of scoring mechanism to determine this, while others may use some sort of fuzzy Do they fit the job? type criteria. Either way, here’s tip no 1.

Give the reviewer enough information to determine if you meet the requirements.

Seriously. If you’re applying for a programming job, tell me about your programming skills. If you’re a student, I know you don’ have 10 years of industry experience – but hopefully you’ve spent some productive time sitting in front of computers, doing assignments and thinking a little about software development. Make this clear on your CV – from giving me some details about what projects you’ve written to including some information about what operating systems you’ve used. If you tell me you use Linux and leave it at that, I’m going to decide you didn’t know what distribution you were using.

Ok, so you’ve got 5 pages of a CV detailing your experience with programming languages. If you find yourself in this situation, well done! You’ve overcome the first hurdle and you’ve told us about yourself. Now the bad news, you’ve got to have some consideration for the reviewer. He or she probably doesn’t have the time to read 10 to 20 submissions each running to 5 pages. So here’s tip no. 2.

Your CV should be no more than 3 pages, and ideally 2.

It’s hard to delete stuff from a CV. You spent a lot of time pulling all this information together, and you’re really proud of that summer job you had 6 years ago, but trust me, it won’t lose you the programming job. Hopefully you’ve had enough relevant experiences in the meantime to let that go. This brings us to tip no. 3.

Customise your CV to the position you’re applying for.

This is a side-effect of tip no. 2. If you had 10 pages, you could clearly list all of your experiences and skills in a myriad of areas. But you don’t. So when you’re applying for a programming job, I want to mostly hear about your past experiences as a programmer. If you’re applying for a system administration job, tell me about your experiences as a system administrator. By all means, mention you that spent your time 50/50 as a programmer/administrator – but then give me the details of whichever experience matters most.

Our final tip for today,

Don’t say anything on your CV that you can’t back up in an interview.

The worst thing you can do is give the interviewer the impression that you have skills that you don’t have. The guy or girl, in an interview, that can expand Java to 3 or 4 interesting projects including some interesting technologies and a discussion of things that went well and badly creates a much better impression than the person that says Enterprise Java Development on their CV, and subsequently has problems discussing basic Java topics.

There’s no magic formula – just some common-sense guidelines. So get your CV in to us – and we can discuss the content at your interview 🙂