Nick Carroll

Metabolising caffeine into code

Archive for the ‘Random’ Category

Putting spammers to work

without comments

I am just getting way too many spam comments on my blog lately. Akismet isn’t doing a good job of identifying these comments as spam as they generally appear to be genuine comments. Except that the author and website are for a specific product or company looking to increase their Google Page Rank. I don’t really want to disable the link to a legitimate author’s website or blog, so I have decided to make the spammers do some work. I have installed the reCAPTCHA plugin which will make all comment authors type in a couple of words located on a reCAPTCHA image. This not only limits spam, but Google uses reCAPTCHA to help in their effort to digitise books.

Written by Nick

March 18th, 2010 at 2:29 pm

Posted in Random

Last month at ThoughtWorks

with 5 comments

I was sifting through my blog entries during the holidays and came across my post three years ago about my first month at ThoughtWorks. After reading it I felt it needed an update, otherwise I probably wouldn’t have left the company if the list was still accurate. My last day at ThoughtWorks was 24th December 2009.

1. Other ThoughtWorkers: I have had the chance to work with some of the most incredible software developers that I have ever met. These guys and gals really know how to thrash a keyboard around when pumping out quality code. It has to be said that working with really talented individuals makes work very enjoyable. Which goes to show that Roy’s social experiment is still going strong after all these years.

The people at ThoughtWorks are certainly a great bunch of people. I would still rank working with many of the fine folks at ThoughtWorks as one of my best experiences. However, many of them have since moved on to greener pastures.

2. Ruby is such a cool programming language and I am so glad that I am working at a company that has completely embraced it. Ruby has been around in the US and Europe for a while, but it is still relatively new in Australia. I am waiting impatiently for the Aussie tech industry to catch up so that I can finally work on a Ruby project.

Meanwhile I have been ramping up on my Ruby skills, and there is no better place in Australia for learning Ruby. We have some of the best Ruby developers working in Sydney at the new ThoughtWorks Studios, and they open their doors after work each week for us to work on a Ruby project with them.

Sadly, I never got to write a line of Ruby code that made it into production. It was only ever Java code. Also, ThoughtWorks Studios is no longer based in Sydney.

3. Agile is certainly an interesting approach to developing software. I have already been thrown head first into a large agile software development project, and I am already hooked on the agile koolaid. Over the weekend our client deployed the first release in time for a public launch of their system. It is the first large scale project that I have worked on, and it was a success right off the bat. The release was completed on-time, on-budget, and with 5 times less defects than any of their previous projects. Being part of a team that produced a result like this certainly made my first month a memorable one.

I am still a strong advocate for Agile software development. I was never part of a project that failed to deliver, and I am extremely proud of this success.

4. Open Communication: I have been amazed with how open the lines of communication are within the company. In the first two weeks I had met Martin Fowler our lead scientist, coffee with Bruce the Australian MD, and beers with Roy Singham the founder of the company. They all made themselves available to talk about agile, corporate strategy, and whatever the next big thing might be. I thought it was cool to be able to hang out with these guys. There aren’t many companies out there that have corporate leaders that like to hang out with their employees and have a general interest in them.

Communication is not as open as it used to be.

5. Geek Night is just one of many ThoughtWorks events that helps to facilitate knowledge sharing within the company. It is an after work event where developers head back to the ThoughtWorks office for a night of geeking out in front of a computer. We learn a new programming language whilst downing copious amounts of Coke Zero and rice cracker snacks.

Geek Night rarely happens. I tried my best to inject some life into it with the Functional Programming and Groovy user groups, but the interest just wasn’t there.

6. Free food: I have put on a couple of kilos since I started work. It has to do with all the lunches and dinners that the company has put on. They keep a fridge stocked with beers, wine, soft drinks and fruit juice. As well as bowls of fruit and cupboards filled with biscuits, chips, and chocolates. Best of all they have a tab going for free coffee at a local cafe!

There is still free food on Fridays. The coffee tab at the local cafe got replaced with an in-house coffee machine.

7. Consulting Dojo: There is one catch to the free food, on Fridays lunch is provided to attract all the ThoughtWorkers to the office to listen to one of our colleagues present on a consulting related topic. The presentations have been very interesting, and there is always a good turn out. The dojo is another example of knowledge sharing within the company.

The dojos are still around, but in a lighter form. A couple of presenters are given 5 minutes to present on a topic that ranges from cool stuff that happened on a project to how to use a Mac.

8. Training and book budgets: Each ThoughtWorker is provided with their own personal budget for training and purchasing books. Essentially we are responsible for our own learning and personal development. So we can choose whatever course or conference we want to attend. There is just so much support for our career development.

The training and book budgets are still around. There was a period when the training budget was reduced, but it is back to where it was. I only ever got to use my training budget in my first year, after that I found it hard to find time for training as I was always on a project and focused on delivery. However I made good use of the book budget. It is something that I will certainly miss.

9. Brand new Dell Latitude D620: It isn’t a Mac, but I have been very impressed with this piece of hardware. I really like the widescreen display, Intel Core Duo processor, and the feel of the keyboard. It also doesn’t get that hot from extended usage. It is the first Dell I’ve used, and I’m very happy with it.

Would you believe that the Macbook Pro is now the default laptop? It was a sad day when I had to return my new 15 inch Macbook.

10. Mobile phone and home broadband: This is a nice perk, having your company pay for your mobile phone and home broadband bills. I can finally afford ADSL2!

You still get a mobile phone and broadband budget. So you can sign up for an iPhone when you join.

This will be my last post on ThoughtWorks as I close this chapter of my life.

Written by Nick

January 5th, 2010 at 9:09 am

Posted in Random

Tagged with

New Macbook

with one comment

Hoorah! Just got my new work laptop. It is a brand spanking new 15 inch Macbook pro! Apparently it is the new default laptop for developers at ThoughtWorks Australia.

Written by Nick

September 22nd, 2009 at 11:28 am

Posted in Random

Tagged with

IR pen goes commercial

with one comment

It had to happen, someone has finally mass produced the IR pen so that you can use your Wiimote as an interactive whiteboard. You can buy an IR pen from http://penteractive.us/ for about $8. I sure hope Johnny Chung Lee is getting a cut of this action. Of course if you want to make your own then read my blog posting about making your own IR pen.

Penteractive also sell stands, which makes setting up the Wiimote whiteboard so much easier! Speaking of which, check out IDEO’s multitouch system (at code.google.com) which also supports the Wiimote and IR pen interaction.

I am excited about all this because it makes a Mingle projected story wall so much easier to setup and interact with.

Written by Nick

May 23rd, 2009 at 1:58 pm

Posted in Random

Tagged with

What credit crunch?

without comments

Finally got around to my first post for the new year. I gave the credit card a good workout during the holidays, which has left me wondering “what credit crunch?”. There were thousands of people out and about buying stuff and “stimulating the economy”. You even have the sales assistants at big department stores saying that they have had the busiest Boxing Day sales ever. I guess the biggest losers out of last year were the bankers, and rightly so. They have been bad boys and girls, and ought to have received sacks of coal from Santa for Christmas.

I also gave my financial planner the flick. The downturn in the economy was a blessing in disguise. Basically it showed me that financial planners are nothing more than glorified sales people. They know very little more about financial markets than you, except for the financial products that they get big kick backs for from funds managers. Investing is not complicated nor time consuming if you take the effort to do your own independent learning on financial markets. I thought I would be too busy to look after my personal finances, so I outsourced it to a financial planner. That turned out to be the worst mistake I’ve made, but I’ve learned from it and moved on. The first rule of investing should be never relinquish control of your finances. Now I am free to invest in what I like without the millionaire’s factory taxing me for doing sweet FA.

Written by Nick

January 4th, 2009 at 10:53 am

Posted in Random

IR Pen version 2

with 2 comments

My previous attempt at building a simple IR pen did not work as expected. The power source was too weak for the IR LED, and consequently the Wiimote had difficulty detecting the IR light.

For my second attempt I purchased an IR LED, some wire, a momentary switch, a 10 Ohm resistor, and a battery holder for two AA batteries. I also had a whiteboard marker lying around, which I used to create the casing for the IR pen.

IR Pen

I wired up the circuit so that the IR LED was in serial with the switch, resistor and battery holder. I then cut off the nozzle from the whiteboard marker casing. I needed space to fit the switch, so I cut the cylinder shaped casing in half, and drilled a hole to push the switch through. I then popped the LED through the nozzle, and wrapped the casing around the circuit. Everything was then held in place using electrical tape. It was a prototype, so I didn’t bother with aesthetics, which the rubber band holding the pen and battery holder together clearly shows.

I am glad to report that this particular IR pen works perfectly with my laptop screen and the Wiimote. However, I will need to test it out on a projected image from a data projector before officially giving the thumbs up.

Written by Nick

May 29th, 2008 at 10:13 pm

Posted in Random

Tagged with

Simple IR Pen for Wiimote Whiteboard

with 8 comments

My previous foray into using a Wiimote with my laptop led me down the path of building a USB sensor bar so that I can use the Wiimote to control the pointer movements. This approach worked better than expected, but it doesn’t work so well if you want finer control of your mouse pointer. For example, when I was demonstrating the Wiimote integration with my laptop I was quite nervous about the demo not working, and this was made apparent by the shaky lines that I was drawing with the Mouse Gestures. As a result some of the Mouse Gestures did not register.

A better approach would be to do what Johnny Lee did with the Wiimote to create the Wiimote Whiteboard. Johnny Lee used the Wiimote as an IR camera pointed at a projector screen, and created a pen with an LED which the Wiimote can track. This approach provides for more accuracy and smoother movements of the pointer.

The barrier of entry to the Wiimote Whiteboard is creating the IR pen. Johnny Lee suggests wiring up a circuit containing an IR LED, momentary switch, resistor, and power supply, then shoving it into a pen. If you google “IR pen” you will also come up with some complicated solutions. One guy even tried to cram the circuit into a highlighter casing.

Simple IR Penlight for Wiimote Whiteboard

My solution is really quite straightforward. In fact you only need to go to your local electronics store and pick up two items: an LED keyring torch; and an IR LED. When purchasing an LED keyring torch, make sure that you can easily replace the LED. I used this LED keyring torch from Jaycar Electronics. I then pulled the torch apart, pulled out the LED, and replaced it with an IR LED. This solution meant I didn’t have to do any soldering or fiddling around. It all fit together into a nice compact form factor that cost me less than $10, and took no longer than 10 minutes to switch the LED.

Written by Nick

May 26th, 2008 at 11:54 pm

Posted in Random

Tagged with

Top 3 predictions for Macworld Expo

without comments

This year I figured I will join the masses of crazed Apple fans and add my two cents worth of predictions ahead of next week’s Macworld Expo. Here are my top 3 predictions for Macworld Expo.

  • One more thing… This is a no brainer. Steve Jobs will no doubt say these three words followed by announcing some new product line. I reckon this new product will be a touchscreen tablet. Essentially a bigger version of the iPod touch, but with a focus on productivity.
  • 3G iPhone: With Australia expecting to see an iPhone introduced this year then Apple really needs to release a 3G version of its iPhone so that it can compete in Australia. I am fairly confident that this will be announced at Macworld.
  • Macbooks with Solid State Disks: The crowd would go nuts if Steve Jobs announces solid state disks across Apple’s Macbook range. Given that Sony was first to market with SSD laptops, then it is not unlikely that Apple will follow with their own range of SSD laptops.

Update
Looks like only one of the three predictions came true. The new Macbook Air comes with an optional solid state disk.

Written by Nick

January 13th, 2008 at 3:59 pm

Posted in Random

Tagged with

All studied out

without comments

Today I sat an exam for a course on Financial Markets and Economics. I had spent my ThoughtWorks training budget on a finance course to increase my domain knowledge. My last three projects have all had something to do with the finance industry, so I thought it would be about time I freshened up on my understanding of securities, derivatives, debt financing, and monetary and fiscal policies. The course was quite demanding, especially since I underestimated how much spare time I actually have outside of office hours. I have therefore decided to ease back on my studies and focus on some chill-out time. I have accomplished a lot this year and I want to recharge the batteries for what will be a big year next year.

Written by Nick

November 26th, 2007 at 11:05 pm

Posted in Random

Tagged with

Almost Famous

without comments

One of my photos that I took during a trip to Moreton Bay in Queensland was recently selected for a Schmap dynamic travel guide.

I was working in Brisbane earlier in the year and decided to spend one weekend sightseeing with Kimmy. Brett Dargan, a colleague at ThoughtWorks, recommended heading down to Moreton Bay as something to do. Kim and I caught the train down to Moreton Bay from Central station in Brisbane. We had coffee at one of the local cafes, then walked along the bay area taking photos. One of our photos (shown below) of the picturesque bay area was selected from our Flickr account by Schmaps for their Moreton Bay travel guide.

Moreton Bay

Written by Nick

November 24th, 2007 at 6:11 pm

Posted in Photos,Random

Tagged with