Stato said:
out of interest and im NOT trying to spark a language war, out of Java and .Net which would be better to learn in terms of getting a job?
.NET has better employability at the moment.
To be honest in my experience, languages matter very little. Languages are essentially syntax differences for 90% of the tasks that a business will require. Employers are attracted to the people. Create some side projects, in whatever language you like. They will show willingness, teach you new skills and keep you polished. Side projects keep you alive in this game.
One day, every single week, I just pick a technology and spend 6-12 hours battling with it and seeing what I learn and what I can create. Most of the time, I stretch each piece of technology in sections of months. My most recent venture was with Node.js with MongoDB and building a little forum within it. In the past, I've played with numerous PHP frameworks, played with XNA, done a lot in C++, the WinAPI, Qt, on both Windows and Linux, etc. If you just dedicate one day a week to your own professional development then you'll build an impressive list of projects to show for it. You'll also show that you can pick up new technologies pretty easily. Make it hard on yourself. Program in Scheme. Use functional programming. Pick up COBOL or Fortran and build something for the hell of it.
The moment that programming changes from been a fun pursuit to "just a job", you lose your employability. Use your 20% time to thrash out some ideas you have. I'm currently building an F1 management simulator in VB.NET because, well, why not? I used VB6 a lot as a kid, I've used a little bit of .NET but I want to go the full hog and get into the bones of the framework and rummage around. VB.NET is an ultra high level language, and I want to learn it because it's new. I picked a management sim because I wanted to build storage algorithms and use SQL Server, including Stored Procedures which is something that I keep meaning to get around to but only have a small knowledge of.
You employability comes from your passion. You can apply for a .NET position as a Java guy and vice versa. If they won't consider you because of this, then it's a cattle market and you don't want to work there anyway. Great tech companies know that the most valuable asset that they have, are great engineers.