CSS2008 - In Summary
My schedule for the week:
Links to blogs & presentations from CSS 2008 (these are the ones that I've found, there may be more out there....):
My schedule for the week:
Links to blogs & presentations from CSS 2008 (these are the ones that I've found, there may be more out there....):
After my gui packed day yesterday, I have moved onto the communication end of things today, starting with two presentations by Filip Hanik on Comet and Bayeux.
The Comet framework is a part of the Tomcat servlet engine. The aim of Comet is to provide the possibility of asynchronous communication between the client and server over an HTTP connection. The presentation began with a summary of HTTP fundamentals, and the standard short poll and long poll paradigms which are usually used to implement async client-server communications. Filip then described the streaming approach which Comet uses, taking advantage of the HTTP protocol to provide an event-driven mechanism by which the server can push data to the client.
It is worth noting, however, that this cannot be used by JavaScript clients, due to limitations in the connections from the browser. The example he gave used a Java applet, implemented using the Sockets API directly.
Whilst this all looks pretty funky (and, yes, I do want to try it out myself), there are some disadvantages. The programming model is not simple, and it is hard to avoid multi-threading issues. Comet does not use a standard API, and is limited to the Tomcat engine, although Jetty and GlassFish also have provide similar mechanism (GlassFish is apparently more advanced). Some of the functionality of Comet is intended to be included in the Servlet 3.0 specification, however, and although this will not be as complete as the Comet implementation, it will at least provide a standard API across different server platforms.
After lunch, I attended Filip's second presentation about Bayeux. Bayeux is a framework introduced by the Dojo foundation which provides a more advanced framework built on top of Comet. The advantage of using the Bayeux servlet is that it is far simpler than using Comet directly. Unlike Comet which does not specify a data protocol to be used by client and server, Bayeux is based on JSON, and therefore links very naturally to the Bayeux client developed by the Dojo foundation.
When discussing the future of the Bayeux framework, Filip's concern is that the Dojo foundation do not appear to have a large developer community involved. It appears that other groups are also looking at solutions and that more initiative needs to be taken if Bayeux is to survive.
Hans and I can be found behind our computers in the mornings and evenings, catching up with email, blogging, and planning our schedules for the next day.
Following on nicely from last night's BOF, my main focus today was frameworks for building RIAs .
I attended presentations on JavaScript ("Becoming a JavaScript wizard", by Bryan Basham), Flex & OpenLaszlo ("Applying Flash to Java", by Dustin Marx), and Appcelerator ("Building RIAs with Appcelerator", by Matt Raible).
Matt has already posted his presentation on the web, and I am impressed to see that some of the Appcelerator developers have already commented on his blog entry. I won't therefore spend any more time on it, as you can read his views direct from the source. If you're interested in what's been going on at CSS, it's well worth visiting his blog as he's also posted on other presentations he's attended. You can find his Spring 3.0 presentation there too.
Bryan Basham's presentation on JavaScript was very rich, so he had to take it at a very fast pace. He began with a language overview, pointing out some of the features and idiosyncrasies of JavaScript. An interesting point for me is that while you can mimic some object oriented behaviour with JavaScript, the language is not class-based, but prototype-based. This is a feature which brings in a number of complexities for design and memory management. JavaScript is a very flexible language, giving the opportunity for a number of different syntaxes for the same idioms (e.g. defining functions), and also providing some nice features like closures. It is also a dynamically typed language. While there are benefits to this flexibility, I do feel, however, that the price is reduced readability and maintainability, especially across a large group of developers.
After summarizing the language features, the presentation moved deeper into AJAX, DOM handling and the benefits of using JavaScript frameworks, focusing on Prototype and script.aculo.us. There are any number of frameworks out there, and another one which Bryan mentioned that seems to be gaining in popularity is ExtJS. This was also backed up by a comment of Matt Raible's at the end of his presentation "if you want to use REST, choose either Flex or ExtJS".
Matt Raible has saved me a great deal of work, and also posted a great summary of Dustin Marx's presentation on Flex and OpenLaszlo which goes into far more detail than I could go into here. Key points for me are that Flex is split into MXML, for building the presentation, and ActionScript for business logic. Additionally ActionScript is an object-oriented language with static typing. (By the way, both JavaScript and ActionScript are compatible with ECMAScript). His experience of starting programming with Flex was that it was remarkably easy to get started, and that the resulting code was very readable.
OpenLaszlo is a language which can be compiled to either Flash or DHTML. Unlike Flex is it available for Flash versions prior to v9, although this is not generally a blocking point as most people seem to have Flash 9 installed. As it less performant than Flex, it is probably not a preferred option, unless targeting multiple platforms, or sticking with 100% open source, is a particular concern.
One thing he mentioned, which i would like to play around with, is the use of swf objects to communicate between two different flash instances in the same webpage. This is partly related to another concern I have with developing an RIA in either Flex or JavaScript, namely how easy is it to modularize the system.
A very nice link is: http://www.jamesward.com/census/, which gives benchmarks for data loading & presentation for RIA using a number of frameworks. A point which Anton Bar had touched upon in his presentation on Open Web was that Flex is more performant than JavaScript.
Attending these presentations strengthened my gut feeling (and I should stress that I don't have real world experience with either language) that for RIA development, Flex is the way to go. One main consideration which I think is often overlooked are the issues of readability and maintainability. Whilst the use of JavaScript frameworks can ease this issue, I still have the feeling that Flex is better structured.
One thing that no-one was presenting on was JavaFX. Generally the feeling seems to be that no-one quite sees yet where JavaFX will fit it. I see that the JFall conference in November is featuring a number of presentations on JavaFX... it will be interesting to see if this provides a deeper view into JavaFX.
Although the main focus of my day was RIAs, I actually started out the day with an interesting presentation on Groovy by Eric Schreiner. One great advantage of having a wireless connection in the conference centre is that I was able to download and install the Groovy Eclipse plugin as the presentation started, and then follow along with the more basic examples on my own computer.
As well as explaining the most basic feature of Groovy, and how to integrate scripting within Java, Eric also described how to use the MetaData features of Groovy to alter the behaviour of existing code.
The last presentation I attended today was Dustin Marx's second presentation, "Java Management Extensions (JMX) Circa 2008". After a short history of the JMX spec, Dustin gave a demo showing the improvements made to the JConsole tool in Java 6 - the most interesting features being the automatic detection of JMX managed applications and custom plug-in support.
Moving on to the MBeans themselves, he explained the differences between the various types of MBeans, and the advantages of defining MBeans using Spring.
Something I forgot to mention from Jason van Zyl's presentation was Nexus, the Maven repository manager. For a quick summary, see Matt Raible's post, but in brief, Nexus provides:
One of the main themes for me today was Maven. I attended two presentations by Jason van Zyl, one of the founders of the Maven project. The presentations focused on the main reasons for choosing Maven and the m2Eclipse plugin. Having previously seen a much older version of the eclipse plugin, I was impressed by the functionality of the newest version, and how much more quickly you can get up and running. One aspect I was particularly interested in, but there wasn't enough time to cover, was the possibility for "project materialization", a mechanism for quickly getting new developers ready to work, with automated project check-out, customized Eclipse cheat sheets etc. Another point of attention, which deserves further thought is the handling of multi-module projects. Also of interest to me is that the CI server of choice on the Maven project is Hudson, which they are using both for CI and release builds. He did, however, point out some issues with the handling of dependencies in the multi-module builds, and recommended instead using the free style project type. I hope these issues will be fixed in the near future, as I see a multi-module project as a very useful concept.
Matthew Wakeling gave an interesting presentation on performance engineering. He billed his presentation as "everything you ought to have been taught in your computer science course, but may have forgotten". Since my own CS course was pretty lacking in this area, and I usually take advantage of what is provided out of the box in Java (for example, sorting algorithms), I found it a useful discussion.
Anton Bar's follow up presentation "Open Web File System" continued the discussion on the G.ho.st platform, focusing on OpenID (for authorization across multiple sites) and OAuth (for authorization). Both seem like promising APIs, though currently not widely adopted. The file system itself is based on WebDAV, and Anton gave a number of examples of working with WebDAV on different platforms.
My final presentation for today was given by Chris Richardson and was titled "Improving Tests with Object Mothers and Internal DSLs (EE)". The presentation gave some patterns for reducing redundancy in unit tests, including the use of "object mothers" - basically classes with static getXXX methods for generating re-usable test data. The second half of the presentation focused on the use of Selenium for testing web applications, and the use of Chris' project Umangite, designed to take away some of the effort in setting up Selenium tests.
Although the day at CSS is usually long enough (from 8.30 until 7), Hans and I stayed a little later this evening to attend a BOF (Birds of a Feather session) on the topic of web UI development.
The main focus of the discussion was Flex vs. Javascript, and the general feeling I had was that most people were leaning towards Flex.
The main reasons mentioned for choosing Flex were:
Looking down the speaker list for this year, there are a number of contributors from LinkedIn. The first presentation I attended, "Building LinkedIn's Next Generation Architecture with OSGI" given by Yan Pujante gave an overview of the reasons that the LinkedIn architects chose to use OSGi, and the hurdles they encountered along the way. I had hoped that OSGi would feature more heavily in the conference, but this was the only presentation on the topic.
The final presentation of the day, was given by another LinkedIn employee, Matt Raible on the topic of Spring 3.0. The presentation itself was interesting, though a little hampered by the lack of availability of a Spring 3.0 release (the first RC was expected in September but is not yet available). Matt gave an overview of the improvements that were already included in Spring 2.5, as well as what is expected in Spring 3.0, including support for Java 5+ and a new Spring Expression Language.
Development for the iPhone is a topic which is featuring quite heavily at this year's conference. Despite not owning an iPhone, I attended the introductory session today to see what it was all about. It turns out there are quite a few constraints - 1. you have to have a Mac (no problem there, at least), 2. programs have to be developed in Objective C (some learning curve then), and 3. Apple put a lot of restrictions on the delivery of the software you create, and require developers to be screened before their contributions can be considered (this can apparently be a lengthy process). On the plus side, for anyone used to developing Mac applications, the same development environment applies so you're already well on your way. Well, who knows, maybe some day I'll give it a go, but I don't think I will be rushing to try it.
The fourth presentation I attended was on the OpenWeb operating system, given by Anton Bar, the chief "Gheek" at G.ho.st. G.ho.st is a company based in Israel and Palestine, a fact which Anton gave a little time to at the beginning of the presentation. One particular issue they encounter is that Israeli citizens are not permitted to enter Palestine. Although the two offices are geographically close, organizing meetings between team members is a challenge.
The product G.ho.st is a web operating system, giving users access to their online data from various sources (e.g. GoogleDocuments, Flikr, Hotmail, etc). The G.ho.st user interface is built using OpenLaszlo compiled to Flash (I'm attending a presentation on OpenLaszlo later in the week, so more on that then). The reasons given for choosing OpenLaszlo was that the performance of Flash is better than Javascript, without the browser inconsistencies, but unlike Flex, is not proprietary. I haven't had to time to play wit G.ho.st itself, but I do plan to.
All in all, an interesting first day. After attending the first few presentations, I've changed my schedule a couple times, and looking forward to the rest of the week.
After a year's break, it's again my turn to visit the Colorado Software Summit in Keystone, Colorado.
I arrived on Saturday to fantastic weather and took the opportunity to do some hiking and geocaching (GC82F4, GCPPTV, GCWYDB) before the conference started.
When my colleague Hans arrived on Sunday (after a number of flight delays) we took a drive over to Aspen to sort out the car rental. It turned out to be a 6 hour round trip, but certainly worth the drive to see the scenery, and cross the Continental Divide at 12095 ft).
Back in the world of the mainstream airlines, I discovered one (and possibly only one) benefit of flying with United - "channel 9".
On my flight from Chicago to Vancouver I was able to plug my earphones into channel 9 and follow all the communications between the cockpit and air traffic control. Listening to the communications on the ground at Chicago was certainly an eye-opener - whilst the airport didn't look so busy, there was never a break in the communications are all the aircraft were shuffled from the terminals to the runways. Once we were cruising, the communications were of course rather thin, but on final approach things livened up again. Something I particularly noticed was that every turn or deceleration of the aircraft was in response to instructions from the tower - a fact that I had never really thought about before.
Labels: travel
For all my plans to publish a triumphant blog entry on September 1st, announcing possession of my very own house, it's taken over a month to find the time, and internet connection, necessary to do so.
There's a loaf of bread, fresh out of the bread machine. The dishwasher (how I love the dishwasher) is gurgling away in the corner. The room is bathed with low-level lighting (the only sort I have at the moment, not helped by the fact that every IKEA lamp purchase involves me buying the wrong sort of light bulb).
Whilst the house is still looking a little minimalist, I have now taken possession of a few key domestic items - washing machine, dryer and vacuum cleaner, all of which I have been testing out today. Some of the more basic items - sofa, bed, etc are still near the bottom of the shopping list :-)
Mum and Dad visited two weeks ago, and gave a hand with clearing the garden, some DIY and various painting jobs. In return, I cooked for them and served them food on paper plates. Possibly not a fair exchange.
Photos will follow eventually, but not until I manage to bring together the correct combination of computer, memory card and camera. A bit of challenge when most of your possessions are in boxes still.
Labels: house
Well, I've done it! Passed my first longer OU course "Introducing Health Sciences: a case study approach" with Distinction, and gained the Certificate in Health Sciences.
The next step will be my first level 2 course, "Human Biology", aiming for the Diploma in Health Sciences.
Labels: ou
Some weeks ago when I had some time to kill at Rotterdam Airport (flight delayed because of a WW2 bomb found near London City Airport), I headed off on my bike to a local geocache and dropped off my first ever travel bug - "Polar Traveller - Please help a Polar Bear", with the hope that fellow geocachers will help it on its goal to reach Svalbard, in the Arctic.
A week or so ago, I received e-mail notification that it has been picked up, and is on its way to Norway with a family who are vacationing there (come to think of it, I could of cheated and taken it to Norway myself, but that would be no fun!).
Today, Mum, Dad and I attended the UK's first geocaching mega event at Harrogate, in Yorkshire, and whilst we were there, dropped off my second travel bug "Polar Traveller - Pick up a Penguin", whose goal is to travel to the Falklands, South Georgia and Antartica. I wonder if it will reach there before I do?
The event itself was very well attended, and as well as plenty of geocaches in the area (we found three - each of which was marked by a ring of 10+ cachers... not too challenging), there were a number of stalls selling geocaching products. Having seen the new Garmin Oregon, I think I now know that I'll be upgrading my gps in the not too distant future.
Postscript - I received notification this morning that the penguins have been picked up, and will be dropped off in a new location soon.
Labels: travel
I'm not really up to date with recent events on my blog, but this deserved immediate attention.
Jen's book Nigh-No-Place has been shortlisted for this year's Forward Prize Best Collection:
Labels: family
The campground at Andenes looked like it had a lot of scenic potential - the spot was by a beach, with some impessive looking jaggedy hills. Unfortunately, the mist never really cleared during our stay, so we never got to see the hills in all their finery.
At 10.30am, we headed up to the Whale Safari office to see if we'd been moved off the wait list. After a rather agonizing half hour, watching the office fill with people, we discovered we were in luck!
The tour started with an introduction in the museum - before we went any further we were all (or nearly all) dosed with seasickness tablets. This proved to be a wise precaution.
The museum tour proved to be interesting, as the guide was very knowledgeable about whales, and sperm whales in particular. One room was dedicated to the skeleton of a beached sperm whale. This photograph shows the "hand" of the whale - an evolutionary reminder.
Out at sea, we were very quickly glad of all the layers we were wearing. The skies hadn't cleared and there was a lot of wind. Sperm whale watching quickly proved to be somewhat less spectacular than the whale watching trip that Fiona, Darby and I had been on last year - sperm whales spend up to half an hour underwater at a time, hunting squid, they come up for air for about 5 minutes, basically just treading water, and then, with a flick of the flukes, they go under again. Nonetheless, we were lucky enough to have 3 sightings of two different whales during the afternoon.
Back at the campsite, it took quite some time to warm up again, and after dinner we quickly rellocated to the common room to read. Our quiet evening came to a quick end as the room was overrun with a horde of Dutch people - 24 caravans from the Dutch caravanning club, and they were staying at our site! Fortunately their plan to prepare pancakes for 48 people in the kitchens was quickly shot down, and they left us to drink our hot chocolate in relative peace.
Labels: photography, travel
3 years ago, when I was returning from a photography trip in Svalbard, my plane stopped at Tromsø for a customs check. On the approach to Tromsø, I was struck by the beauty of the area - green hills and numerous islands, and promised myself that I would return someday.
Finally that time has come, and after a rather lengthy flight, which took me through Copenhagen and Stockholm, I met up with friends Fiona and Ivo for a week's camping trip starting in Tromsø, driving through Lofoten and ending up in Bodø.
In the event we didn't stay too long in Tromsø itself, just the one night. It did, however, give us time for a tour of the local brewery - Mack, which boasts of being the northernmost brewery in the world. (In fact, since 2000, this honour has been taken by another brewery, but this fact doesn't seem to be acknowledged by Mack). Perhaps the most surprising part of the tour (apart from the clothes we had to dress up in) was not the brewery itself, but the fact that the brewery is a producer of coca cola, amongst other soft drinks, and that this is their main source of revenue.
Before leaving Tromsø we had hoped to do a whale watching trip, however arriving at the jetty first thing on Tuesday morning, we were greeted with a sign announcing that the day's trip was cancelled. We decided instead to start our journey south and travel via the Vesterålen islands, taking a ferry from Gryllfjorden over to Andenes.
By the time we reached Gryllfjorden, the good weather had turned to rain, so we sat out the wait for the ferry in the car with our sandwiches. Two frenchmen in the car ahead were rather more adventurous - they took out their camping stove - a tin of carrots, and a tin of Bog stew and set to making their lunch, clad in raincoats. From where we were sitting, the result looked rather like cat vomit, but they seemed to enjoy it!
The ferry ride took a rather rough hour and a half, and everyone was pleased to reach the other side. On arrival, we drove straight up to the local whale watching company to try and book a tour for the following day. Again, it looked like we were to be disappointed - the trip was already fully booked. Slightly disheartened, we put our names on the waiting list and went to find a camp ground.
Labels: photography, travel
Have just spent a very relaxing 3 days in the south of France at Dave and Kit's. Although it was pouring with rain when I arrived on Thursday night, we've had nothing but sunshine for the last 3 days. Am now sporting a rather sore sunburn as a result of midday swimming and snoozing on sun loungers (typically English, I tend to forget what the effect of sun is, I see it so rarely). Dave and Kit hosted a great party last night, and we've all met up again at lunch today for a summer BBQ. Off to the airport now, and tomorrow morning, onto Norway, where the forecast is for rain for the next few days .... guess the good weather couldn't last.
After a couple years thinking about it, half a year actively (or semi-actively!) searching, I've finally done it. Yep, I'm buying a house in Delft.
The last week has been a crazy rush of appointments and mortgage calculations, all somehow squeezed in between work, Open University exams and travels to Scotland, France and Norway.
Labels: house
I've spent the last couple evenings trying to retrieve my gannet photos from the corrupted disk. The first piece of software I tried was a failure - ran for 12 hours, and didn't manage to find anything. Thankfully, the second, C-Data Recovery, did the trick, and I now have the complete set of photographs back from the dead - a great relief!
Now that I'm back in full possession of my photographs, I can happily say that the experience was well worth the stink of fish guts and bird poo that attached themselves to me for the rest of the weekend!
Off to France/Norway now, but more gannet photos to follow on my return.
Labels: photography
So, after years of dreaming, I've finally signed up for a photo safari to the Falklands, South Georgia and Antartica! Unfortunately, the trip isn't until November 2009, so I guess I have to do a little more dreaming between now and then.
Labels: photography, travel
So, I went to Bass Rock (near North Berwick, Scotland) this weekend to photograph gannets. Despite bad weather cancelling my original booking for Sunday, I managed to join the workshop being held on the Saturday, and we were blessed with a few hours of clear skies whilst we were on the rock.
The experience was fantastic. On route to the rock we had a "chumming" session, where the skipper of the boat threw pieces of fish in to the water to attract the gannets. Before we knew what was happening, the boat was surrounded by a maelstrom of gulls and gannets, the gannets diving into the water to grab the fish - really spectacular.
We then spent a few hours on the Rock photographing the gannets. They're beautiful birds, wonderful to photograph close up, especially when the pairs interact with each other. All in all, I was pretty pleased with the photos I came away with, especially as I had some reasonable flight shots.
But...... got home, tried to download them. The second card of the shoot (only 87 photos) downloaded fine, but the first card seems to be corrupted. 300+ gannet photos (including all my flight shots) vanished into dust.
Labels: photography
After an action packed week in Canada - catching up with family, vising the Aquarium, transcribing my grandmother's recipes, geocaching and admiring the river views up at the Vedder, I'm now sat in the aeroplane, "Ingrid Bergman", an MD11, tapping into the airport's wireless internet, as it fills up for the return flight to Amsterdam. Just to prove it, here's a very unattractive picture, taken with the webcam on my laptop.
Not a lot of photography this trip, but I did see some herons and eagles, which left me twitching for my "real" camera.
Labels: travel
So, after an overnight stop in Aberdeen, and a very early flight, I'm in Shetland again. The wind is howling, and there's a fair amount of rain - business as usual, thus.
We went straight from the airport to Sumburgh Head (about 10 minutes down the road), where as promised, we found some puffins (and a few cormorants, guillemots and gulls). Very pleased with the performance of my camera... hopefully the skies will clear enough over the next few days for some landscape photography too.
For the rest, a leisurely first day, meeting up with some of Jen's friends, and hatching plans for setting up a geocache (hopefully more on that later). Owl, Jen's gorgeous, rotund and rather shy cat, is getting used to having me around again, though he does have to hide under the bed every now and then when it all gets too much for him.
Labels: photography, travel
Labels: geocaching, travel
Labels: geocaching, travel
This evening, the church of St. Mary's Church, Rotterdam celebrated their 300th anniversary with a Jubilee Choral Evensong - an event which was the culmination of a weekend of celebrations, including a visit by the Queen. As the choir is low in numbers, I, and four other member of the choir in The Hague, joined forces with them for the service.
[I hadn't realised just what a long history English speaking churches had in The Netherlands... more information on the history of St. Mary's Church can be found here. The English church in The Hague, has an even longer history, stretching back to 1586...]
Labels: choir
Labels: geocaching, travel
Labels: geocaching, travel
As I've battled against the ever present winds on all my training runs alongside the canal, one thought has kept me going - the chance of fine, or at least, non-windy, weather for the race itself. Unfortunately, as the day approached, the weather forecasts were rather less optimistic, giving warnings of snow and blizzards.
On the day itself, therefore, I opted to wrap up warm with my running jacket, and the charity t-shirt (unisex, and therefore rather too large), over the top. It turned out to be a wise move, and I was still rather envious of those with the foresight to bring hats and gloves also!
The run up to the race was pretty nervewracking. My training the last couple weeks hasn't really gone according to plan, and neither had our trip down South, which we'd had to delay until Friday evening, only arriving in High Wycombe at 10pm. Still, finally the call came to assemble on the starting line, and I joined the group of similarly green t-shirt clad runners, ready (more or less) for the off.
The race was held at the Eton College's rowing lake, and from the starting line at the head of the lake, the route took us round the back of the boathouse, and then around the lake twice. Whilst I was very quickly overtaken by a large number of people who very quickly streamed out along the lakeside, I was relieved to see a reasonable number of people drop into a walk, shortly after starting... a sight which only heightened my determination to complete the course at a run, however slow.
The weather, which had started out cold and grey, very quickly turned into the full winter conditions promised - a biting wind, and alternate snow and rain, which quickly soaked through my clothes - no fear of overheating on this run! Still, we battled on, with the welcome encouragement of the wardens along the route and, after completing the first lap, I was greeted by Mum and Dad, waiting outside the boathouse to cheer me on. Halfway through, and my legs were tiring, but I'd managed to keep up a steady pace so far.
The return leg up the lake was miserable - the snow and wind hit in full force, and approaching the 7km mark I was reaching the furthest distance I'd covered in my training runs... now came the test, could I really keep going for another, as yet uncharted, 3km? As I neared the far end of the lake, I began to realise that I really could achieve this - a little further, and I'd be on the homeward stretch. Plodding onwards, still not slacking in pace, though lifting my sodden wet legs was beginning to feel like quite an effort, I continued.. pacing a girl in a purple top who was alternately walking and running. First I'd overtake her, then she'd overtake me again!
Finally, the 9km marker, and the boathouse was beginning to fill my sight. New strength in my legs as I could finally see the finishing line. Waving at Mum and Dad sapped nearly all my remaining strength. As I aproached the finish line, I heard the commentator call out "here comes number 192, Natasha Hadfield", spurring me on for the final stretch over the finishing mat, with the accompanying squeal of the timing machine as it registered the chip, fastened to my ankle.
My final time - 1:06:54 according to the chip, 1:07:17 from the starter's gun... not record-shattering by a long shot, but I was nonetheless pleased.
Labels: sport
Whilst I have to admit that this was not my most successful run ever, at least I have managed to stick to my training schedule by including a 5km run in Copenhagen, thanks to the useful tool Map My Run.
Whilst running in a strange city, clutching a map in your hand, is rather awkward, and does sometime necessitate map checking pauses, it does have the advantage that you cover different ground and see the city from a new angle.
Our second day in Denmark dawned rather cloudy after the beautiful blue skies of Friday. Our plan for today was to visit Roskilde, 30 minutes away by train, to see the Viking Ship museum.
The museum is based around 5 viking ships which were found in the Roskilde Fjord in the 1950s and were excavated and, as far as possible, reconstructed in the 1960s. In addition to these original ships, the museum also houses a number of replica ships which are built using traditional Viking methods, and used for historical research. Given the cold weather, we didn't hang around outside to explore the replica ships in great depth!
After visiting the museum, we had some lunch and then headed back up towards town, via the old part of town, which featured some attractive half-timbered houses). We were lead that way, in part, by the lure of a geocache, which we found, in a wooded area near an old church (see the log and a couple photos).
I had hoped to visit the cathedral, but by the time we got back up the hill, it had already closed for the day. A pity, as I also missed it on my last visit! In fact, at 5.00 on a Saturday afternoon, it was amazing how quiet the town centre was, with the main shopping street all but deserted.
We headed back to Copenhagen, and after a refreshing gin and tonic at the Hotel Angleterre, visited what claims to be the oldest restaurant in Copenhagen for dinner. Det Lille Apothek was originally a pharmacy, and has a very cosy atmosphere. We were lucky enough to have a triangular corner table, giving us rather more space than many others in the restaurant...
Labels: photography, travel
Labels: geocaching, travel
Since Dad had a business meeting in Copenhagen, it seemed a good excuse for Mum and I to join him for a weekend away.
Mum and I spent a relaxing Friday morning - getting up late, and then strolling down to the Nyhavn, a very picturesque street with colourful houses and a canal running down through the middle. As we happened to see a canal boat tour about to leave, we decided to jump on for the 1 hour ride around the canals and harbour. The trip itself was quite fun, taking us past the new theatre and opera house up the canal to the Little Mermaid (who is rather disappointing in the "flesh") and then back down through Christianshavn - an area which is known as Little Amsterdam, for its canals, and is also the setting for the book "Miss Smilla's Feeling for Snow".
At the end of the canal tour we headed up into the centre of Copenhagen to meet Dad and two of his business associates for lunch at the Schønnemann restaurant, which opens at lunchtime only, and serves traditional Danish smørrebrød (open-faced sandwiches). The food and atmosphere in the restaurant were both excellent, and we were all very taken with the convenient ordering system - simply tick the box on the menu next to your choice of sandwich. A very nice easy option when you don't speak the language!
After lunch we visited the Rundetårn, a 17th Century tower that was (and still is) used as an observatory. The tower has a wonderful circular passageway leading up it, which were used by a horse and carriage to bring books to & from the library which was accessed by the tower. The top of the tower gives a fantastic view over the city - something I didn't fully appreciate on my previous visit to Copenhagen, as the weather had been very cloudy.
After leaving the Rundetårn, we headed slowly back to the hotel through the shopping streets and back along the Nyhavn, trying some toasted almonds, which were available from numerous street stalls, along the way.
Labels: photography, travel
In a moment of insanity at the start of this year, I signed up to run a 10km race, in aid of, and organized by, Asthma UK. No, I'm not kidding... the girl who could barely run the 200m at school, is really planning on running 10km (if my P.E. teachers could see me now, they'd hardly believe it!)
After a cold thwarted my initial training attempts, I'm now back running in earnest with the help of a training plan that a friend has put together for me, and I hope that in the remaining 6 weeks before the event (on Easter Saturday) I can improve my level enough to finish respectably. Or come to think of it... just to finish! Between now and then, however, I have a few challenges to my schedule, including trips to Copenhagen and Munich.
Labels: sport
A shameless plug for something else very exciting that landed in my Inbox this week - an advance copy of Jen's new book Nigh-No-Place. It's due to be published on the 10th February, and, along with her first book Almanacs, is available from Amazon.
Labels: family
Despite the fact that my birthday is still a week or so away, I have already been receiving presents!
Imagine my surprise when I opened my Inbox a couple days ago to find an orphaned elephant. Shimba, a 18 month old Kenyan elephant, was orphaned when his mother died after an injury to her trunk. He is now being cared for by the David Sheldrake Wildlife Trust, and will hopefully be rehabilitated to the wild when he grows up.
Labels: family
... well the blog writing has got a little lost recently as I'm still trying to catch up from Namibia. Hopefully, some more to come about my Namibia trip when I get the time, but in the meantime, thought I should get a start on 2008!