The Anti Screen Saver

Build information radiators are useful for improving the visibility of the state of the build – bright green if it’s good, or bright red if it’s broken. On our current project we’ve been trying to assemble all the hardware to get some lava lamps going, but in the meantime we’re using a very old PC and its tiny CRT monitor to glow bright green or red.

A problem we had was the Power Options settings turns off the monitor after 20 minutes of (in)activity and it’s been too difficult to get Administrator privileges for the machine. Although not necessarily the most ideal solution, the most amenable one for Friday was a small program that moves the mouse cursor every the minutes. Get the results here if you want.

Usage:

java -cp MouseMover.jar <number of minutes each time you want the mouse moved>

A Wet Weekend In Stockholm

Stockholm from a parkI wasn’t sure if I’d be up for travelling for this weekend, especially since starting a new project and not quite getting over the jetlag I had from Australia. Since I had tickets booked for Stockholm before I had left for my most recent trip, I thought I’d better not waste it, so Friday I headed to the airport to get onto a plane to visit Stockholm in Sweden. The forecast for this weekend was cold temperatures and generally very wet, and according to a Swedish workmate of mine, is very typical for Sweden. For a lot of the weekend it was pretty cold, and rained a fair amount but there were a few hours of warm sunshine and that certainly didn’t stop the locals from getting out and about.

Stockholm’s Arlanda airport is a great example of what the Swedes do so well – design. It is surprisingly modern, with polished wood floors and clean cut interiors and lots of frosted glass and bright metal trimmings making everything appear spacious. It seems that the airport caters for late flights, which I’m thankful for considering we arrived at the early hour of 2am thanks to delays at Heathrow, and there was a bus waiting to drop us off into the middle of the city centre.

The Rivers of StockholmStockholm is very walkable, and as long as it’s not pouring down, can be quite pleasant to walk around in. There are plenty of pedestrian and biking paths and lots of parks and open spaces worth checking out. There are also a ridiculous number of museums to keep you occupied though we didn’t bother checking them all out. One museum definitely worth visiting is the Vasa museum, containing one of the most famous vessels the Swedes have ever created. It is, in some ways, quite funny to find a country celebrating an endeavour to build a massive ship that, when it finally set out on its first voyage, capsized and sunk into the harbour before it had even completed! As entertaining as the story is, I highly recommend the visit to it.

The Vasa ShipIt is worth visiting the city hall as well, home of where the Nobel Laureates celebrate each year. Our guide spoke English extremely well and entertained us quite easily for the 45 minutes as he talked us through each of the rooms. The city hall also has a tower that is worth climbing before you get to the tour as it gives you a great view of Stockholm from above.

Food need not be expensive in Sweden, though a number of the restaurants cater for the higher end of the market. A number of pubs and cafes serve food at moderate prices, though be wary of the cost of a drink with a pint of Guiness, for example costing 60 Swedish Kroners or about £4.5! Overall I had a great weekend and I came away thinking how nice and modern the city was, and Swedish people being very friendly and approachable.

Jumping through too many hoops just to complete one loop?

Feedback Loop of Java ProgramsOne of the benefits you get with consulting is that you get to see a variety of applications, processes, and in agile projects, different build pipelines. I take the developer loop very seriously, because how quickly you can get feedback determines how quickly you get serious things done. Different testing strategies are an important way of improving the amounts of feedback (as long as you can still write meaningful tests). Another technique is the ease with which you can configure various libraries, integration points and environments. Even splitting the build into various stages where failing earlier is more appropriate can help you get better feedback.

Feedback Loop of Interpreted LanguagesThe ultimate feedback loop I’ve seen in Java is the “change-compile-run test” loop. Anything more and you will decrease your feedback cycle and adversely affect how fast you can develop. Anything less than this is unacceptable – skipping the “run test” stage doesn’t do anything to validate that what you wrote actually works. On a side note, in an interpreted language, the loop is even tighter, simply being “change-run test”.

J2EE’s “Enterprise” Feedback Loop
I’ve worked on numerous J2EE systems that were all business successes. As a developer though, it still makes me cringe thinking about the feedback loop, and how long it takes to make a change to a class, or one of many, many XML files, jar up something several times, and then actually test it.

Feedback Loop of J2EE Applications

Optimising Your Build Loop
Visualising your build process is an excellent way of seeing exactly how many hurdles you have to go through to get any decent feedback. Even better is trying to work out which things you *really* need in a build and removing anything that just doesn’t add any value. I try to aim for the simplest and fastest feedback that you can get using the above diagrams as the ultimate goal. Give it a go!

The Leadenhall Fishmonger

A few weeks ago, before embarking on my trip to the other side of the world and back again, I actually had a Friday off to do a few things around London and meant that I could finally get to the Leadenhall markets that are only open during the weekday. Located in the heart of the Bank area of London, most things are only really happening during the week because this is when all the bankers are actually at work and when most businesses can solicit business.

The Leadenhall markets are a fantastic collection of stores all covered by a glass roof walkway and paved with cobblestones. Modern stores and chains abound here such as Pizza Express and Starbucks but don’t let that discourage you from looking at the small boutique stores just around. Part of the entire He Who Knows challenge required a visit to the Leadenhall Fishmonger (HS Lindwood) who can be found in the main heart numbered 6 & 7.

LeadenHallFishmonger2.jpg

I think it was perhaps the time at which I visited (sometime around 2pm) but there wasn’t much going on at this Fishmonger. The staff members were starting to hose the place down though they still had some types of fish. It’s a large store and worth browsing though it seems quite familiar to several other fishmongers I’ve visited including the two major ones I know of in Notting Hill Gate Chalmers & Gray Fishmongers and The Fish Shop just around the corner. Though I can’t recommend trekking across London just to go to this particular fishmonger, I can recommend dropping into any good English one if you enjoy your fish as it is worth having a chat with the fishmonger and getting a fresher piece of fish.

It’s Never Been About The Hours

StopwatchI started at a new client yesterday, and we had a great conversation on my thoughts about working overtime. Anyone who has worked with me in the past knows that as a principle, I heavily dislike working overtime. I think I provided some pretty good reasons and thought I’d write about it.

I am a big believer in the “Sustainable Pace” concept because I think that quality software development is a limited resource. Even though I dislike working long hours, they’re inevitable because of various reasons, and when I’ve worked long hours, and witnessed other working long hours, I’ve observed developers get tired, and when they get tired, they get sloppy. For a project that will be running for a long time, you really don’t want that.

The reason I think of it as a limited resource is because if you have ever done solid software development, you will find it requires constant judgement, thinking and in general just solving problems and puzzles all day. It requires a large number of micro decisions and is a tiring exercise with a physical limit for how well you can sustain this before quality starts to suffer. Imagine playing sudoku all day long and see how long it is before your brain starts to tire (and I just did that with the amount of flying I recently went through!)

Of course some people handle this differently. Some developers I know, prefer to spread out this thinking with various breaks of checking email, surfing the web, etc. I’ve heard of stories where some developers will do these bursts in a series of several consecutive long days, but have lots of down time in between. These developers should never be confused with developers who are just lazy and continually check email, surf the web, or better yet “work from home”. I also think that the latter developers have no pride in their work and should not be in our industry.

I do agree that in some circumstances, it is important to be able to tap into “extra hours” and that it should be exceptional circumstances. The illusion that needs dispelling is that there are no “extra hours”, and that at some point, developers will need to rest and to be effective.

I suggest to business people who I’ve worked with that it is better to maximise the value you can get out of the limited resource, instead of trying to mine more of the resource. Oh, and did I mention that maximising business value is what agile is about?

Mum Chau’s Sichuan Kitchen

Mum Chau's Sichuan KitchenI found this particular restaurant via another blogger who referenced an article from the NY Times talking about the little speak easy restaurants that are cropping up all over Hong Kong. You can tell it’s a popular location with locals by the large numbers that stream in for lunch, and my guess is that is becoming more popular with visitors as word spreads of this hidden gem, nestled in the heart of the ex-pat heavy Lan Kwai Fong. I went for lunch and arriving there at noon when the place opens is a good idea as it fills up quickly, and dinner requiring prior reservation.

Yibin NoodlesThe concept of this restaurant is simple – freshly made, hand pulled noodles and dumplings combined with the fierce spicy sauces of home-style Sichuan cooking. You place your order by putting numbers against a small slip of yellow paper. Thankfully they are considerate enough to have an English menu, giving you a great game of matching Chinese characters and prices, but dish names like Yibin Noodles and Tan Tan Noodles still didn’t really help me work out what I was actually ordering. Nevertheless I thought it would be fun ordering something I had no clue about and so ordered the Yibin Noodles.

The Dining RoomThe owners decorated the restaurant appropriately with many traditional style art pieces and paintings decorating its walls. Plastic tablecloths drape the small number of tables scattered across the room, but don’t hold that against the wonderful food that arrives quickly. Each table is also equipped with various cups chopsticks, straws, napkins, and toothpicks as well as little jugs of soy sauce just in case.

Someone who I could assume as one of the owners (perhaps Mum Chau herself?) soon brought one of the largest servings of noodles to my table. It was accompanied by a plate of what later tasted like Sugarloaf Cabbage stir friend with chillis. I found the Yibin noodles, though difficult to describe in flavour had a great balance of flavours with enough kick to give it a bit of an edge and the noodles themselves tasting as if they had just been formed and cooked. The noodles definitely had peanuts and sesame oil, but there were several other layers there but I couldn’t quite identify them.

Details: Mum Chau’s Sichuan Kitchen
Found On: Floor 5 of the Winner Building, 37 D’Aguilar Street, Lan Kwai Fong, Central, Hong Kong
Contactable On: (852) 8108-8550
Highlights: Authentic fresh noodles and dumplings. Apparently a mean dinner set as well.
The Kua Rating:8 out of 10

Back in London

Firstly, that picture below has nothing to do with London – rather something that I took just before I left Australia to remind me all of the great things we have back home. To constrast this, here’s a picture that shows what it’s like just outside my window today. It will be good to get back to something a little bit more routine after travelling for the last three weeks, and especially after something like a 24 hour trip door to door. Thanks to all the people I managed to get to catch up with back in Brisvegas – I had a blast at all the places we met at, and sorry if it was only such a short trip but I suppose that’s what it’s going to be like at the moment.

Broadie

Damn Good Char Xiu at West Villa Restaurant

West Villa RestaurantGood cha xui (Chinese BBQ Pork) can be difficult to come by, with many being overly fatty, not flavourful enough or excessively dry and with almost every Chinese restaurant serving it in one form or another, chances are you will have a bad experience. Before arriving for my holiday, some of my reading had included some great food bloggers, and I discovered a few great recommendations from Hong Kong local blgger Cha Xiu Bao but unfortunately couldn’t get to every place that had been listed.

The West Villa Restaurant, located in the Cityplaza II mall slightly out on Hong Kong Island from Causeway Bay is pretty easy to get to with the ever efficient MTR. The restaurant is large by Hong Kong standards with my quick calculations estimating it capable of easily holding 200 people. The décor is bright and the tables spacious with a focus being the traditional fishtank holding large fish out back. For a late lunch it was still pretty heaving and filled with families, was a good sign it was a good local.

West Villa's Cha XiuAlthough the staff have difficulty speaking English, getting by with the English menu, a bit and a bit of pointing seemed to the do the job and my order for cha xiu in the three different styles including sliced, steamed and baked buns was on its way. As you can tell from the pictures, the sliced version is the best indicator for the quality of the cha xiu in its original form.

The chared edges are a good indicator that it had been cooked with care, the fat not out of proportion with the meat, and the red colouring at least indicating the presence of some marinating instead of simply being basted. Oddly enough, the succulent flesh was not overly sweet, and so they served it in an orange marmalade sauce to which you could overdose on the sugar if you wished.

Baked Cha Xiu BaoThe steamed and baked bun varieties of the cha xiu did not disappoint at all either. It was the first time in Hong Kong that the cha xiu bao filling had something other than the cha xiu (in this case onions), but they had been cooked well and so only added to the overall sweetness.

The steamed bun dough was superb, and was probably the lightest steamed bun dough that I’d had for quite some time, literally melting in your mouth. The dough was white, sweet and went well with the filling. The baked variety was slightly stranger, combining both the uncommon onion-cha xiu filling with a bun that was topped with the sweet crunchy crust of the “…” buns you commonly find in Chinese bakeries.

Steamed Cha Xiu BaoAfter almost overdosing on cha xiu in one sitting, I was still overly satisfied that I had made the extra effort to visit this restaurant. I will say though, that even not being especially close (i.e. walking distance) to any major tourist attractions, the MTR line leading directly into the heart of the mall still makes it especially accessible. The restaurant probably serves mean dim sum, and is a nice atmosphere to dine in, especially if you are after cha xiu.

Details: West Villa Restaurant
Found On: Shop 208, 2nd Floor, Cityplaza II, Taikoo Shing (easily accessible via the MTR)
Contactable On: (852) 2522 1624
Highlights: Fantastic char xiu of especially high quality
The Kua Rating:8 out of 10