Archive for July, 2007

More than a Passing comment about Licensing Programmers to do work

Thursday, July 26th, 2007

This is a response to a very frustrated and thoughtful post by Scott H.

Scott talks about Licensing Programmers to do work and how recruiters are gun-decking resumes. (And they do) Sure a license is great but I think in this industry we have a very unique opportunity to see if someone can program. It might be difficult to get a civil engineer to build a bridge in an interview on the other hand.

At the place I work we have candidates write code.  Wow mind blowing. You can either do it or not. Now here is how I set it up.

Resume of gets handed to me from our recruiting staff. I read it. Wow five years of experience and  400 technologies later. Call the candidate.  Give him a brief about us and ask why you want to work here yada yada. Now I send him some code to implement, if the call went well. We are about 74% a java shop. So I send a jUnit xyzTest out zipped up in an eclipse project ask that they implement the code to make the test pass. They send it back. I look at the code check the pass fail. You can tell a lot about a person about the code they write. Long variable names, understandable method name, uses encapsulation, and  the list goes on. Personally I think code is very personal since this is your creation, if not I don’t want to work with you.

If all went well, I call him/her in. We set up a team interview. Then we do a code review in the interview. This is where we check the communication skills and how well they take constructive criticism. Next we ask them to code a similar problem. This is where we get to see if they can really code and understand the problem. Yes, we let candidate use industry tools for the exerciser. If eclipse, net beans, or vi is on your resume then we will set that up. We hired a guy who asked if he could use the internet to look something up!

If you know hibernate then we have a test for you. If it’s on your resume we test for it. Most not all of our stuff is very straight forward, no tricks, no corner cases. You either know it or you don’t.

Example: You worked for xyz bank we have a problem that by using BigDecimal you would be done in under 2 minuets. If you worked with money then there is a high likely hood you have used this class. Yes, you can still solve the problem with out BigDecimal but it will take longer. Then we will know where you stand.

Some people refuse to write code in the interview. We don’t hire them. Some people can’t finish the problem but they write the code anyway. We help them out as they need it. We have hired most of our junior programmers this way. You know quality, creativity and passion when you see it.

Once that gets around the recruiters stop sending you crap.

If you think this is mean then re-read the blog article listed at the top of the page.

Europa on old hardware

Thursday, July 19th, 2007

Eclipse Europa is out. I have it on my work laptop, the home dev box, the work computer, and now on the Missus roving celebrity web checking machine that is the laptop around the house.

This is a IBM T23 ThinkPad that I picked up on ebay for 200 bucks. P3 256MB with a 30 Gig HD. With a new refurbished battery from the good folks at Battery-Refill and an older battery in the superbay slot I got on ebay yet again for about 15 bucks. So we can get about 6 hours on the thing at full charge.

Tuesday night I’m lounging on the couch thinking I could fire up my hp nx9660 and try to manage the 10lb beast and try not to catch my pants on fire OR see if the very small install 75mb install of Europa would work. Sure enough I ssh’ed the home dev box, downloaded the install, unzipped/untarred it and fired it up. My machine slooooowed to a crawl.

Then I had an idea. Throw BlackBox on and see if that works. Suddoed APT-Getted the appropriate stuff logged out. Gently asked the GDM to log me in as a BlackBox seesion fired up the terminal and launched Europa.

DANG! It was fast. A handful of processes and I was in Europa Heaven. The neat little effects when you do the CTRL-M to maximize you editor worked great in the GTK environment. I was now sitting on the couch without a fire extinguisher next to me while coding some katas and watching Eureka.

Overall Europa performed quite well for what I was doing. It just shows the impressive progress that the eclipse community has put into this release. I don’t think I could use that hardware with a JEE server on it … well maybe Jetty.

Feisty Fawn and the extrernal USB Drive

Thursday, July 19th, 2007

Yesterday, I received my new shiny external hard drive so I can run some VM Ware appliances. (Lucky me). I happen to be the developer who runs “that linux” at work. So I plugged in the drive to fire up the images and BAM no love. Ubuntu auto-mounted the drive no-problem so why could I not fire up the image? Ahh no permissions no problem a quick chmod on the drive, wait nope. Checked the auto-mout parameters DOH! it’s an NTFS drive. Changed the mount point and the umask so I could do all this. Did this using the GUI right-click properties on the mounted drive. I thought this would work since the ntfs3-g package was installed. This package lets you read and write NTFS file systems (as long as it’s not in a suspended state!).

Unplugged the drive, plugged it back in. No go the auto-mount could not mount. I had placed a trailing “/” on the mount point. Now here is where everything went nuts. Where does that meta data about the drive get stored? After much searching and much frustration I narrowed down the search results to: “mount_point cannot contain the following characters: newline, G_DIR_SEPERATOR (usually /)” found the bug over on the Bug .

You have to change the keys. Here is the relevant key location : “/system/storage/volumes/_org_freedesktop_Hal_devices_voume_uuid_*/mount_point” I launched the gconf-editor as the user I originally mounted the drive with. Do not launch with root or you will never find it. I deleted the key and remounted no problem!

The good folks over at Ubuntu have a patch in the works but until then I hope this helps the search results for others.