Nick Carroll Software Professional

Ruby on Rails Development with Gedit

Goodbye Windows, and welcome back Ubuntu my long lost friend. Finally after a year of working with Windows I managed to find some time to get rid of it and install Ubuntu on my work laptop instead. I can’t tell you how much I missed not having apt-get! I am absolutely thrilled to be using Ubuntu again, and with Compiz now a part of Gutsy Gibbon I no longer have OS X envy anymore. Really I don’t, I haven’t touched my eMac in days, mostly due to wasting so much time tweaking Gnome with eye candy that my eyes hurt.

Furthermore, I made the switch because developing Ruby on Rails applications on Windows is such a pain, and most developers know this, so they go out and buy Macs. Well my friends, you can save your dosh and turn your stock standard Dell into a kick arse development environment for Rails. Just check out the screenshot of my desktop below.

Image 1

I am using Ubuntu Gutsy Gibbon with Compiz and Emerald. I also have AWN installed for the dock functionality. For Ruby on Rails development I am using a tweaked version of Gedit with plugins that provide much of the functionality of Textmate and more. You can also get Gedit to recognise rhtml files, and provide a real terminal for handy access to command line functionality in the bottom pane.

Sadly I have to keep my Windows partition around for Lotus Notes, but for not much longer. The next release of Lotus Notes will provide support for Ubuntu, and is due out around the middle of this year. Only a few more months until I can completely blow away my Windows partition!

Singapore Java Meetup

I’m heading to Singapore next week for a holiday with my partner Kimmy. Unfortunately Kimmy is heading to Singapore for work, so I have had to find things to do to keep myself entertained during the day. I could have been content with heading to the Raffles hotel and knocking back a few Singapore Slings, but I did one better and organised to give a presentation at the Singapore Java Meetup at a microbrewery and restaurant called Brewerkz. I will be presenting on Agile, Mingle, and working through a Test Driven Development exercise with the group. The event will be sponsored by ThoughtWorks and it is already booked solid. Goes to show that you have to get in quick when free beer is on offer!

Update: My presentation is available online as a Google Doc.

Now, Discover your Strengths

Today I finally took the Strengths Finder test to identify where my strengths may lie. The questionnaire asks about 100 questions in which you identify statements in which you strongly agree with. It takes about 20 minutes to complete and at the end you are provided with a profile that describes your top 5 strengths out of a possible 34. All 34 strengths have been identified as core themes by the Gallup International Research & Education Centre from conducting 2 million interviews over a period of 30 years. These strengths are described in Now, Discover your Strengths by Marcus Buckingham and Donald O. Clifton.

After completing the Strengths Finder questionnaire my strengths were found to be the following.

  • Individualisation: People strong in the Individualization theme are intrigued with the unique qualities of each person. They have a gift for figuring out how people who are different can work together productively.
  • Arranger: People strong in the Arranger theme can organize, but they also have a flexibility that complements this ability. They like to figure out how all of the pieces and resources can be arranged for maximum productivity.
  • Maximiser: People strong in the Maximizer theme focus on strengths as a way to stimulate personal and group excellence. They seek to transform something strong into something superb.
  • Analytical: People strong in the Analytical theme search for reasons and causes. They have the ability to think about all the factors that might affect a situation.
  • Woo: People strong in the Woo theme love the challenge of meeting new people and winning them over. They derive satisfaction from breaking the ice and making a connection with another person.

The authors claim that most organisations are built on two flawed assumptions about people:

  • Each person can learn to be competent in almost anything.
  • Each person’s greatest room for growth is in his or her areas of greatest weakness.

Think back to your organisation’s last performance review and try to remember the types of questions you were asked. No doubt you would have been asked to identify areas in which you need improvement. Essentially you are being asked to find a weakness that will lead you to an opportunity for self-improvement so that you can become a more well-rounded employee. The book Now, Discover your Strengths conveys that people have weaknesses for a reason, and that is because they may be more passionate and driven in other areas. Focusing on improving your weaknesses means taking time away from the things that you truly excel in, and therefore makes your work less enjoyable, and you become less productive as a result.

By focusing on your strengths you are focusing on things that you are truly interested in, and if you are doing things that you enjoy then you will spend more time and effort exploring your interests. This leads to more opportunities for growth as an individual. Developing individuals that specialise in specific skills adds to the diversification within your organisation, and enables teams to be formed from individuals with strengths that complement each other. Therefore individual weaknesses become less important within a team of individuals with diverse strengths. It is like diversifying your stock portfolio to reduce risk and make your investments more resilient through varying market cycles.

Connecting Nintendo Wii wirelessly to Apple Airport Express

Connecting the Nintendo Wii to the Internet is quite easy, especially if you are connecting to an Apple Airport Express. However, if you don’t properly configure the Airport Express, then you will suffer slow downloads and constant timeout errors on your Wii. All you really need to do is configure the Airport Express so that the Channel option is set to 1 instead of Automatic in the AirPort tabbed page, then update the configuration of your Airport Express. Simple as that.

If you want to add security, then use WEP. Either 40 bit WEP or 128 bit WEP works with the Wii. Remember that 40 bit WEP requires a 5 character password key and the 128 bit WEP requires a 13 character password key. If you want to lock down your wireless network to a list of MAC addresses, then retrieve the MAC address of your Wii from the Internet settings, and add it to the Access Control of your Airport Express.

First Month At ThoughtWorks

UPDATE: I no longer work at ThoughtWorks.

I have just completed my first month at ThoughtWorks, a milestone for me that is worth blogging about. The month has gone by so quickly, mostly because I am thoroughly enjoying the work, the people I work with, and the culture that attracts so many people to ThoughtWorks like a moth to a flame. Since top ten lists are in vogue, I will give a list of reasons why I have enjoyed my first month.

  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.

  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.

  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.

  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.

  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.

  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!

  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.

  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.

  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.

  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!

If this list makes you want to quit your job and work for ThoughtWorks, then you should seriously consider it. ThoughtWorks is on a recruiting rampage as we are experiencing tremendous demand for our services. Although you might want to quit your job after you have received an offer of employment as the recruiting process is quite lengthy, and only the best candidates make it through.