Saturday, July 7, 2012

Startup Weekend Amsterdam

So I'm at Startup Weekend in Amsterdam, learning about customer validation and lean startups. It's a pretty crazy environment, lots of energy and even a famous speaker to get us started:

Steve Blank makes a surprise appearance at #swams
After the pitches I joined a startup that helps researchers find foreign correspondents in hard to research countries.  The're doing some interesting things around quickly geolocating potential corespondents.

Right now my team are looking to talk to anyone who does foreign research e.g financial analysts, journalists, academics or perhaps an internationally expanding business.  If you or anyone you know does this kind of thing drop me a line via email (ben at or twitter @agileben.

Wish us luck, I'll let you know how it goes in this or future posts.

Thursday, June 28, 2012

Your first day in Appsterdam

So you've been inspired to visit Appsterdam, perhaps like me you heard Mike give a talk at a conference and have found yourself planning a trip to Appsterdam.  What's next?  How do I get around? Where is everything? What do I need to do to survive my first few days in Amsterdam?

Here are some tips for those arriving in Appsterdam.

Before you arrive

Get involved in the meetup group

First things first, join the Appsterdam Meetup group and introduce yourself. Check the dates for the regular sessions (weekly lunchtime lectures and weekly evening drinks every Wednesday) and look for upcoming guru sessions and speakers club meetings. RSVP well in advance for these as they fill up fast.

Consider timing your arrival so you can get yourself sorted (see below) and then meet everyone on the Wed lunchtime lectures and/or Wed evening social meet up.

Follow some Appsterdamers on Twitter

Add some of the @appsterdamrs (Official Twitter Account) to you twitter such as @bmf (Mike Lee) Mayor of Appsterdam, @pauldarcey (Paul Darcey) CEO of Appsterdam, @judykitteh (Judy Chen) Chief Community Officer, @spllr (Klaas Speller) COO of Appsterdam and the many others using the #Appsterdam hashtag.

Learn at least a few words of Dutch  

Knowing the local language is not 100% necessary because the Dutch speak excellent english but any effort you put in will help you feel more comfortable here.  I've had some luck with the Pimsleur digital dutch lessons. I downloaded them to my iPhone and listened to them for 30 mins each day for the month before I visited. I wished I had started earlier as I only made it to lesson 8 of the 30 in that time.

Book some Accommodation

Accommodation in Amsterdam is expensive and generally a little difficult to arrange.  I had a lot of success with the AirBNB service.  You should get someone in your social network to provide a reference on airbnb if you can.  A similar but sometimes less expensive accommodation booking service is run locally by Frederic Rent a Bike.

For short term stays try Eden Rembrandt Hotel.  For longer term accommodation you'll need to brave the fragmented and chaotic real estate market. Try the following agents as a first point of call: Barney at Housing Rentals and  Martijn Schneider at Housing Agent.    

Download the essential apps

You’ll probably not have a data plan on your phone when you arrive, so until you obtain a sim card (see the section later on how to get one) you’ll probably find an offline map useful for getting around. I use the CityMaps2Go app for my iPhone in Amsterdam, as the open source map data for Amsterdam is excellent, has offline search, shows your compass heading, and has bookmarks.

For public transport info (trams, trains, busses, ferrys) you can’t go past the 9292ov Pro app.  It works in english, has search, planning and maps.  As an online alternative, Google Transit is excellent in the Netherlands.

For finding places to eat or drink Foursquare has been pretty useful. You can use the lists of favorite places from other users to discover Amsterdam.

Getting yourself sorted on your first day here

Navigating the Airport

The airport is huge. Be prepared for a long walk from your arrival gate and pass through immigration.  Once you have your luggage don't forget to use your credit card to get some local currency (euros) from the ATM machines.  You'll use this currency in the next step.

You'll want to catch the train to get from the airport to the city, Central Amsterdam, it's cheap, fast and frequent.

Get a chipcaart for use on public transport

Find the train station and line up at the big ticket counter so you can acquire your amazing OV-chipkaart.  This is a touch-on / touch-off card similar to London's oyster card or a working version of Melbourne's myki card with the bonus of working everywhere in the Netherlands and on all form of transport including busses, ferries, metro, tram and train. The card itself costs € 7.50 and you will need to put at least  € 20 on the card to be allowed to use it on trains.

Platform 1 has the trains to the city.  On the platform walk along until you find the chipcaart reader and check in (touch the card to the reader).  Board any train going to Amsterdam CS (central station) other than the "freya" as this train requires a special ticket.

At central station you will need to check out (touch the card to the reader again) at the exit of the station rather than on the platform.  Try not to forget to check out otherwise you will be charged additional fees on your card.

Find a tram to your accommodation

The trams are fast and frequent and only surpassed by using a bike to get around (see later for how to acquire a bike).  Your accommodation host will typically tell you what trams you can catch to your place.  Have a look at the official simplified tram map to see how the trams work.

Get a sim card with data

Being offline is a real problem. After a little research I settled on T-Mobile’s pre-paid sim card with a 1GB data bundle. It’s a small fee for the sim card and you add € 14.95 for the internet. Ask the friendly staff at the store to activate your internet for you in the store, and to change the telephone system default language to english.

Use your offline map to find a T-Mobile store, here is an online map of the T-Mobile stores.  I went to the small city store at Nieuwendijk 200 near the corner of Gravenstraat. You can save this address as a pin / bookmark so you can find it offline.

Visit Appsterdam Centraal

Now you are online and can find your way about, get yourself to the Appsterdam Centraal HQ located in the co-working space called BounceSpace.  The address is Weteringschans 28.  Here you can hang out, use the wifi and meet some appsterdamers.

Getting a Bike

And finally, to become a true appsterdamer you need a bike.  Grab an appsterdamer from the HQ and head out to a market. I went to the second hand bike place at Waterlooplein Flea Market.  Take a bike for a test drive, make sure they adjust the height of the seat to suit you. Make sure they add on the front and back lights, at least one ‘better quality’ lock (locals use two locks) and a bell. Negotiate a price for the whole lot (not each individual part).  Expect to pay between €80 and €100.

Update 11th July: Accommodation and bike rental tips thanks to Judy.

Tuesday, June 5, 2012

Agile Australia 2012

I had a surprisingly good time at Agile Australia last Thursday, well done to the programme committee.  I was only there for part of the day on the second day, but the quality of the talks I attended were much higher than previous years.

The standout talk was of course James Ross with his interesting, educational and laugh-out-loud funny talk "Why nothing you ever do might make the slightest difference: A crash course in the Theory of Constraints"

Also fantastic to see was Nicholas Thorpe and Fiona Siseman's "Agile Board Hacks" a tour de force of real word agile boards based on their excellent blog here:

Another talk I really enjoyed was Design Eye for the Dev Guy by Julian Boot with a bunch of tips around basic design principles such as proximity, enclosure, continuity and connection.   

Finally I'm hanging out to see a health dashboard tool based on James Brett and Marina Chiovetti's wonderful talk "Continuous Risk Management".

I hope the slides for the above talks will be available, I'll link to them here when I find them.

Monday, June 4, 2012

My thoughts after 18 months using AWS EC2

Over the last 18 months I've had the opportunity to get intimate with Amazon's cloud service: AWS EC2. It's been a great experience and I wanted to share some highlights.

For the first time in my career I've been embedded in a operations team, and have experienced first-hand the difficulties involved in provisioning, monitoring and configuring infrastructure.  To say that AWS EC2 is easier than physical infrastructure is a whopper of an understatement.  As a developer I had no idea how hard it is to get a production scale server provisioned.

It's been an eye opener to realise that when I say "just setup a test server for me" I really mean purchase the equipment including blade, chassis, memory, cables, disks then deal with external ISPs, Data Centre staff, assign rack space, power, cooling, network interfaces, IP addresses, DNS entries, configure the storage hardware, load balancers, backups, alerting, performance monitoring, users, permissions and logging.  All this takes months.

Thanks to EC2, today I think nothing of having hundreds of servers created for our developers and testers every day, at a whim and entirely self-service.  It takes us minutes to provision complete test environments in EC2 containing dozens of servers.

Ok, so having a cloud is obviously handy, and not that exciting once you get used to this capability.  What makes AWS particularly impressive to me is two things: customer service and innovation.

I've found working with Amazon a pleasure.  I have access to online support ticketing, immediate phone contact and personal service from a local sales manager and a technical architect.

As one of the biggest users of EC2 in Australia we probably get pretty special attention. We even had the CTO Werner Vogels visit our office and talk to us (more on this in a later post).  Having said this, I like to think I could access this level of service as an independent business if needed.

When we've had issues with AWS I've had all but one issue resolved quickly.  The one issue that has taken a while to resolve happens to less than 1% our instances, and may turn out to be related to the way we use the API.  I'm a very happy vendor manager.

Beyond fantastic customer service, I've been really impressed with the speed of innovation as evidenced by the number of new or improved services released just over the time period of our project. Since we started AWS have almost halved our costs by introducing small and medium 64bit instances.  In the same time period we've gained multiple VPN links to our VPC allowing our China team to connect to our test environments in the same way as our Melbourne team. We've also been able to adopt the new IAM user management tools and start using the new official Ruby SDK in our automation tools.

Attending the AWS Summit last week in Melbourne opened my eyes to the sheer number if services that are now available.  I'm looking forward to trying out Spot Instances, Cloud Front, Dynamo DB and more.    

If you liked this post please subscribe to the blog and get in touch on twitter.

Friday, June 1, 2012

Leaving on a jet plane.. here I come Appsterdam

In about one week I'm finishing up my current gig and heading out in to the wide world.  First stop.. Appsterdam!

Inspired by Mike Lee's talk at YOW, driven away by the awful Melbourne winter and encouraged by friends and family visiting Europe at the same time, it was an easy decision to go check it out.

I'm hoping to spend time reading, learning, catching up with interesting people and generally looking for the next opportunity.

In particular I'm interested in trying the lean startup approach.  I'm hoping my experience with agile, lean, kanban and cloud will mix together with mobile and ux into something great.  Stay tuned to this blog (subscribe to the rss) and get in touch on twitter.

Thursday, May 24, 2012

Looking back on 18 months at REA

I've just finished an 18 month stint at in Melbourne a couple of weeks ago.  It's been a fantastic gig and a remarkable place to work.  I wanted to share some of the things I've found particularly interesting in a series of blog posts.

REA is an amazing place to work, if I step back I can see I take for granted a level of sophistication in technology, process and staff that most companies in the world will never attain.    

For example, one of the biggest problems I had managing teams here is that there are too many highly experienced and talented staff! Yep, that's been a real problem for me. It's not a problem I mind having, but it does make design decisions a lot harder to make.   

On a process front, Agile and Scrum are yesterday's news, instead most teams here are moving beyond these ideas to newer and broader sources of inspiration such as Lean, Kanban, Lean Startup and Agile UX. It's exciting to be part of a team that is constantly adapting and improving. 

It's also been one of the only places I've seen distributed agile applied successfully. The investment in communications technology (e.g always on Skype) and frequent travel between sites have been impressive and very forward thinking. 

All this is the backdrop to the project I've been working on: code named 'Gandalf' we've been making huge inroads into adopting continuous delivery practices. Using a combination of existing and home grown tools we have moved beyond simple continuous integration to fully automated building, testing, packaging and deployment in multiple environments including Amazon EC2 and VM Ware.  

A dog dressed as two pirates carrying a chest

When I look back I am really proud of what the team has achieved:
  • Providing on-demand end-to-end testing environments for developers and testers in multiple teams
  • Learning, adopting and adapting Amazon's EC2 cloud
  • Working through challenging DevOps issues such as security, monitoring & availability
  • Creating our own tools to automate our integration with EC2, VM Ware, NetScaler and Nagios. 
  • Building a fully automated end-to-end testing pipeline and solving artefact version management in the process  
  • Using metrics to drive improvements to our environments
  • Creating a consistent operating system platform in all environments (EC2 and VM Ware) built using an "infrastructure as code" approach
  • Creating services that let us eliminate environment specific configuration inside our application packages
Each of these successes was won through plenty of mistakes and challenges.  I hope to share some of the lessons I've learned in future posts.

Stay tuned and don't forget to add my new blog to your reading list.