July 2007

Some worth-while links for your reading pleasure:

  • Time for a new t-shirt? Here. Go(o)d stuff 🙂
  • Auto-zip you attachments. What? No thunderbird? Bah…
  • Some real Potter magic.

Blogging will probably be a bit slower this week again. I’m gearing up to move into my new apartment come next weekend. Thus I need to pack. Badly.

But before that, some awesome links:

See you later.

Warning: Here be spoilers.









I thought I’d offer some thought after having finished the last Harry Potter installation, The Deathly Hallows. Let me start off by taking my hat off to Ms. Rowling. Se has managed something remarkable, and in my book, having this kind of hysteria ’round a book in an age of TV and computers is certainly a good thing.

Let me also make it straight: I have really enjoyed the series. But it is easier to criticize, so if you think I’m being loop-handed in the rest of this post, please keep this paragraph in mind.

And while I’m at it: I know this is a children’s book. It is far too easy to judge it by grownup standards. I’ll try to limit my moaning about plot-devices accordingly, shall I?

The prediction game
So how did my predictions go? Fairly well I think, I nailed many general plot facts but missed their connections and or their setting. But, as I didn’t bother to write them down, you’ll just have to take my word for it (or ask Red-Eyed Jenna, I believe I discussed it with her at some point).

The Snape Question: Nailed it. Snape was good and killed the big D on order. I guessed one of the reasons would be to act as an insider for Harry, but that never happended. He also loved Lily Potter.

Snape’s death: Got it. However, I thought he deserved a big bang instead of a whimper, so I though he would play a crucial part in the last battle. I was, unfortunately, wrong there. I did predict a death-bed confession, which I’ll claim a Nostradamus-point for.

Dumbledore: Dead, yes.

Harry’s (non-) death: Nailed. I think there was three alternatives: (1) he dies; (2) he lives by some semi-cooked plot device; or (3) he looses his magical powers and becomes a muggle. But being a children’s boook I assume #2 would be the actual solution.

Horcruxes: I predicted Harry would be a Horcrux. Hm… Semi-right I guess.

Dating: Harry+Ginny and Ron+Hermione. Yes.

The redemption of Malfoy: Half-miss. I predicted his redemption, but though he would actively choose to “come over” to the right side. I still think that would have been better.

The characters
Here’s some notes on what I thought about the characters and their treatment through the book.

Harry: No big surprise. A little bit more mature, and it felt natural. Good.

Hermione: Surprisingly quiet. Unfortunately so. More of a side-kick this book. I had really thought her superior knowledge would be a major part in the last battle.

Ron: A terribly quick maturation, eh? And seriously, the chapter where he leaves H&H was completely out of place. -1 for plotting that one.

Snape: Ouch. Next to Harry and Dumbledore the most instrumental man in Voldermorts defeat. And one of the best characters. And the saddest. And bravest. And what do he get in the last book? Nothing. Damn shame if you ask me.

Luna: No surprises there.

Neville: Yet another quick maturation? However, Neville-the-freedom-fighter is a brilliant concept, so I’m buying it happily.

Ginny: Gone. Reduced to sidekick. Bleeding shame. The coolest girl in school, and the deadliest hexer on the block, dispatched to the shadows mooping over Harry? Sorry, I don’t believe it.

Bits ‘n pieces
Tying it all together is a massive job, and all in all I fairly happy with the end result. Harry did reach some sort of conclusion even though he should have paid a grater price (according to classical heroism).

The epilogue is terrible. What a waste of space. I’m actually sad I read it at all. There’s nothing to prepare the reader for a Harry, Ron, Hermione at age 37, with kids. No character development, no background. I understand the sentiment, but it could have been done other ways, leaving more place to tie up things we really want to know in immediate connection to the story.

Snape… I missed him. When he entered, it was too little too late. And having him go out in a whimper was… Sad. Which perhaps was the point, in which case: fair enough.

I realize there must be a new puzzle (ie. the Hallows), but really: We could have used the time it took to tell about those plot devices to fix up loose ends and deepen some of the characters.

The deaths. Did anyone die? I didn’t notice. Really. See the paragraph above, since none of the characters had been developed fully in the book, their demise went by unnoticed. Save perhaps Hedwig. Instead of snuffing one of the big names she kills a lot of middle-men. Well… *shrug*

Damn good stuff all in all. I’m happy I decided to read the series in the first place, it has been a pleasant journey. Can’t compare with Pullman or Stroud, but it is certainly money and time well spent.

Perhaps I’m being a bit grumpy today, but this article rubs me the wrong way. It describes the Singleton pattern in Java but contains some problems. And one of the is a pet peeve of mine. The article claims:

  • There can only be one singleton instance per JVM == Plain wrong in every respect.
  • Singletons are good for object pooling (such as connection pooling) == Dangerous.
  • You can get away with synchronization problems with a nested inner class == Naive.

The singleton pattern does not guarantee anything regards to the number of instances of an object, and certainly not per JVM. You see, even if we disregard cloning, serialization, reflection or thread safety the following is still true: A class instance of an object is guaranteed to be unique per class loader, not JVM. In other words, if you have multiple class loaders (as do almost all application servers) you can have multiple instances of a singleton per JVM; one for each class loader.

Singletons can help guard limited resources such as object pooling. That is correct, but the implication that it is good design to use it to do so is wrong. Statically held object pools in larger and long running applications and servers are not a good idea as their lifetime cannot be directly controlled by the code. Also, if there are multiple class loaders… See the paragraph above.

And the synchronization discussion is naive as one of the comments suggests. See this, this, this or google it yourself.

So, yes, the Singleton pattern is useful, but not as massively so as many articles and tutorials suggests. In a world of serialization and class loader hierarchies it can be a real pain in the ass as well. Use with care.

The Codist asks what open source frameworks we use. Now, he says frameworks, but it looks more like libraries and utilities. Which is fine by me as I generally tend to avoid the larger frameworks, and just as The Codist himself wrote my own web framework for my regular site.

So, without further ado, here’s some regulars:

  • Jetty – good stuff
  • c3p0 – JDBC pooling
  • log4j – logging, I don’t really like it, but…
  • jgroups – data distribution/messaging
  • JBoss Serialization – for high throughput servers
  • JBoss Cache – data replication
  • Mina – network IO framework
  • XFire – for all your SOAP needs
  • HSQLDB – just works, but I’ll probably check out H2 soon
  • Jaxen – very good xpath engine
  • Hibernate – ORM, because it is more or less standard
  • GNU Trove – primitive fast collections
  • Wicket – if I really must code an web UI

But I must admit, for my home coding I use a lot of my private libraires, I’ve got my own XML API and XPath engine. My own commons collection, UUID API, simple object -> XML lib, logging, email API, etc.

Again off to Grövelsjön. This year R+V and I had really expected to go somewhere a bit north but time constraints (largely mine, due to a new company) made us return to Grövelsjön, this time to go into the Norwegian mountains.

Here’s some of the equipment I used for this trip:

  • Haglöfs “Solid” boots.
  • Hilleberg “Akto” 1 pers. tent.
  • Fjällräven “Råstu” 75L back pack.
  • Fjällräven “Siluette M5” sleeping bag.
  • Fjällräven “Vidda” trousers. New!
  • Icebreaker “Skin200” leggings/crewe. New!

I really needed new trousers and Fjällräven makes excellent stuff. I’m really satisfied with them. The Icebreaker layer one was bought on a whim, but damn! Good stuff. Hot or cold, they were just there: Day two I went to bed and got really surprised when I realized I still had them on. Excellent!

Oh, and yes: R+V had a new Hilleberg tent, a “Nammatj Nallo GT”. And… I think we’re all actually slightly in love with Hilleberg. Personality and details and low weight and… Here’s a fan photo.

Update 20070727: V herself pops by in the comments and corrects me, it was of course a “Nallo” and not a “Nammatj”. My Bad 🙂

The Failed Plan
This was the original plan:

  • Stay at STF Grövelsjön.
  • Day 1: Boat to Ryvang, walk north and follow the east/north east edge of Grøthögna. Sleep north of Sylfjellet.
  • Day 2: Cross over towards Svukuriset, strike tents, and take a trip to the top of Stor-Svuku.
  • Day 3: Go east past Rønsjøen to Sylen. Strike tents.
  • Day 4: Back to Grövelsjön on foot.

Now, grövelsjön (the lake) can be a bit rough in strong northerly winds. And of course: Day one there was indeed a strong northerly wind and the boat was canceled. Thus we had a quick change of plans.

STF Grövelsjön

Since we drove from Stockholm it was convenient to stay the night befor egoing out. Really nice place! Excellent breakfast! Nice staff! A good whisky shelf! Recommended!

Day one; Wind in our faces
The boat was cancelled, so instead we started off taking the track to Ryvang/Sylen and then continued onwards north west over Sylvola to strike the tens at Rønsjøen. Sounds easy, right? Well, there was just one problem here: we had the wind in our faces the entire day. Just ascending the side of Sjöhöjden with full packs was a real pain and when we arrived at Rønsjøen… Let’s just say we were pretty damn tired.

If not for the wind, it’d been a very good day. Just some small showers, and we proceeded to find a very nice camping spot south of the lake: flat, close to the lake, lush green grass and away from the wind. You can spot where I slept, right?

Day two; Stones, mosquitoes, pain and desserts
The wind was not as strong this day. And again just some very small showers. We followed the track west towards Svukuriset, but turned east again on the Linné path, and stopped just past Revlingsjøarne. The path past Revlingkletten was slightly stony. The birch forest around Revlingsjøarne was lovely and the sun shone down on us in the evening.

Any problems? Well, two major ones: (1) Mosquitoes; and (2) A bad knee. Normally mosquitoes are a part of the deal when in north Sweden. However, this time… It was a bit silly really. But one shouldn’t complain, we had plenty of Djungelolja (anti-mosquito oil), thank goodness. R’s bad knee was a bit more serious though. Apparently he had managed to hurt it in some unspecified way the day before, and at the end of the days walk he was in serious pain. What to do? I had some heavy duty bandage (to use for stabilizing knees, shoulders etc), but if that wouldn’t be enough? So we formulated an emergency plan: If R would feel better the next morning he and V would backtrack the few kilometers to Svukurisets Fjellstation (manned mountain “lodge”), I’d press on to Grövelsjön to pick up the car and then take it back into Norway to pick them up.

The evening was brilliant! Sunset over Revlingsjøarne. Very nice indeed. We also had a small cake (sockerkaka) for the evening coffee. That’s the sort of moments I live for.

Day three; Red noses and deserts
But thankfully we never had to try our emergency bad-knee plan. R decided to press on and at the end of the day his pain had disappeared almost entirely. We continued on the Linné track over Forborgen and struck an early camp on the plateau between Forborgen and Salsfjellet. As we’d drive back to Stockholm day four we decided we could make an early camp to safe the short distance back to the car for the next day. Also, the sky was entirely clear and having a few hours with our feet out of the boots felt like a really neat idea.

However, we had made the absolute noob mistake of forgetting the sunscreen. R and V made it through alright, but I had problems rather early in the day as my nose turned redder, and redder and… Hence:

  • Sunscreen attempt no. one
  • And attempt no. two (the winner)

A glorious day. Almost two much so, no wind and the air was standing still. It was very, very hot. And on a place like that, where there is no cover what so ever, the mountains started to feel like a desert with no shade to be found. But we’re not complaining, it was very nice.

Day four; An easy stroll

The pass over Salsfjellet and back to Grövelsjön was an easy stroll indeed. We started early as we had a 6-7 hour drive ahead as well. All in all, the Linné track between Grövelsjön and Svukurisets Fjellstation is extremely easy to walk, it felt like a highway compared to some of the rougher paths we’ve encountered (the pass over Sølenskardet at Rendalssølen comes to mind).

As we came over the pass the touri… erm… the day trippers appeared again. Otherwise we encountered people only occasionally once or twice a day.

At the End
A very nice trip. The best weather we’ve ever had. No real hickups except the missing sunscreen. A nice total distance walked. No mountain top this time, but the weather more than made up for it. Sitting down in the car at the end was a bit sad, you felt like you could have continued for a while longer. And next year we’ll probably do just that and spend an entire week trekking. 7 > 4, right?

Marc wasn’t with us this trip. That counts as a big minus, but perhaps that’s why the weather was so nice, eh? 😉

The whisky for the trip was Bowmore Darkest.

Yes, we have pretty pictures!

I’m already looking forward to the next trip…

And here comes a small break in posting. Again. Or perhaps it already has started. Oh… I’m confused.

In any case, since last I have worked and slept. And also made my first ever performance as a rock/pop singer… Eeeek! You see, Viktor had the good taste of marrying. The band for the night was Indigo, with Henrik-The-Former-Boss on bass. And thus: yours truly made a guest appearance in the band, belting my way through Proud Mary, Unchain My Heart, I Feel Good and others. In fact, I stayed on the entire set doing backing vocals and looking slightly silly. And great fun it was!

(I won’t comment on how it sounded as I’m hardly qualified to judge that. Viktor seemed very happy though which was the important bit anyway).

And now? We’ll the mysterious R+V and I are off to the mountains tomorrow. I’ll bring my camera for silly pictures.

Which reminds me: This is how a chamber choir might look on tour in Normandy.

Oh, and as a parting note: This might be the coolest club I’ve heard of for a while, Stockholm Malt & Metal Society. I’m hoping to know someone there, I want to join!

I’m off, see you next week.

Next Page »