X-Plane 9 review

Last weekend I ordered X-plane version 9. I bought version 8 early 2006 and since then I haven’t looked back. Sure, MS Flight Simulator looks great but the flying sucks. Laminar consistently delivers with new features and bug fixes. Version 8 got its last major update (8.64) about half a year ago and since then they have been beta testing version 9. While I could have bought it earlier, I waited until they released it.

A few days ago the package with 6 double layer DVDs was delivered. Installation was not so smooth as I complained about here. But I managed to sort it out and have a working X-plane 9 now. I installed the European and US scenery. The 6 DVDs of world wide scenery is really nice and detailed but consists only of automatically computed landscapes from various databases. Europe now also includes the part I live in (Finland) which was too far north for version 8. However, I prefer to fly southern Europe, where the landscape is a bit more varied.

There are cities, forests, roads, airports, coastlines, etc. where they should be (and in surprising amount of detail) but the simulator lacks custom content like the massive amount of content that comes with Microsoft Flight simulator. To fix that, I installed the excellent Corsica scenery, which is one of the many third party scenery packages available and one of the first ones to be upgraded for version 9. This adds a nice level of realism. Flying in from Nice (another scenery package, warning horrible HTML layout) with the new Cirrus jet was pretty cool and surprisingly easy given that the Cirrus was new to me. According to the product announcement, this plane was actually created by Cirrus themselves and presumably tuned to their specifications and needs. Also, the 3D cockpit is pretty cool and much more user friendly on a PC than the average very complicated panel coming with a X-plane jet.

Technically, version 9 includes lots of improvements to the scenery rendering and simulation. The changes are outlined in great detail in the product announcement page by Laminar owner and founder, Austin Meyer. I have little to add here except to say that it mostly works and delivers as advertised. Don’t expect to max out any of the rendering settings, they have been designed such that this is not possible with any hardware available now. In fact they just raised the bar for future hardware. If you can get your hands on a NVIdia with a few GB of video ram, X-plane will probably find a use for every byte of it. The good news is that it still looks pretty good with object detail not set to “TOTALLY INSANE” (Austin Meyer loves his capitals). In case you are wondering, I have a three year old AMD 4400+ with 2GB and a NVidia 7800 GT. Anything similar or better will run X-plane just fine.

Part of the attraction of X-plane is that it is a niche product build by some dedicated people who know what they are doing and are totally focused on doing it. Considering that they have a very small programmer team and not much other people working for them, it is pretty amazing what they manage to deliver. They have to be smart and efficient about a lot of things. So their UI is totally custom and a bit wacky. But it works. The included planes are so so but there are plenty of free ones available to fix that (and some better ones for a small fee). With all these nice freeware planes out there (e.g. on x-plane.org), you have to wonder why the selection bundled with X-plane is so weak. Most of the planes don’t have 3D cockpits and quite a few even lack textures.

However, at the core of X-plane is an excellent and extremely detailed simulation of just about anything that flies and everything that makes it fly. I mean, they are worrying about the accuracy of the voltage in electrical systems here and how that behaves under different failure scenarios. The attention to detail is just amazing. This is a simulator made by absolute flight sim geeks for flight sim geeks. It has lots of rough edges but it does its core job extremely well and is arguably the best all round flight simulator available today.

Java & Toys

After a few months of doing python development, which to me still feels like a straight jacket. I had some Java coding to do last week and promptly wasted a few hours checking out the latest toys, being:

  • Eclipse 3.4 M7
  • Hudson
  • Findbugs for Hudson

Eclipse 3.4 M7 is the first milestone I’ve tried for the upcoming Eclipse release. This is due to me not coding Java much lately; nothing wrong with it otherwise. Normally, I’d probably have switched around M4 already (at least did so for 3.2 and 3.3 cycles). In fact it is a great improvement and several nice productivity enhancements are included. My favorite one is the problem hover that now includes links to quick fixes. So instead of point, click, typing ctrl+0, arrow down (1..*), enter, you can now lean back and point & hover + click. Brilliant. I promptly used it to convert some 1.4 non generics based code into nice generics based code simply by tackling all the generics related warnings one by one essentially only touching the keyboard to suggest a few type parameters Eclipse couldn’t figure out. Introduce generic type parameter + infer generics refactorings are very helpful here. The code of course compiled and executed as expected. No bugs introduced and the test suite still runs fine. Around 5000 lines of code refactored in under 20 minutes. I still have some work to do to remove some redundant casts and to replace some while/for loops with foreach.

Other nice features are the new breadcrumps bar (brilliant!) and a new refactoring to create parameter classes for overly long lists of parameters on methods. Also nice is a refactoring to concatenate String concatenation into StringBuffer.append calls. Although StringBuilder is slightly faster for cases where you don’t need thread safe code (i.e most of the time). The rest is the usual amount of major and minor refinements that I care less about but are nice to have around anyway. One I imagine I might end up using a lot is quickfixes to sort out osgi bundle dependencies. You might recall me complaining about this some time ago. Also be sure to read Peter Kriens reply to this btw. Bnd is indeed nice but tools don’t solve what is in my view a kludge. Both the new eclipse feature and BND are workarounds for the problem that what OSGI is trying to do does not exist at  (and is somewhat at odd with) the Java type level.

Anyway, the second thing I looked into was Hudson, a nice server for continuous integration. It can checkout anything from a wide range of version control systems (subversion supported out of the box, several others through plugins) and run any script you like. It also understands maven and how to launch ant. With the right plugins you can then let it do quite useful things like compiling, running static code analyzers, deploying to a staging server, running test suites, etc. Unlike some stuff I evaluated a few years this actually worked right out of the box and was so easy to set up that I promptly did so for the project I’m working on. Together with loads of plugins that add all sorts of cool functionality, you have just ran out of excuses to not do continuous integration.

One of the plugins I’ve installed so far is an old favorite Findbugs which promptly drew my attention to two potentially dangerous bugs and a minor performance bug in my code reminding me that running this and making sure it doesn’t complain is actually quite important. Of all code checkers, findbugs provides the best mix between finding loads of stuff while not being obnoxious about it without a lot of configuration (like e.g. checkstyle and pmd require to shut the fuck up about stupid stuff I don’t care about) and while actually finding stuff that needs fixing.

While of course Java centric, you can teach Hudson other tricks as well.  So, next on my agenda is creating a job for our python code and hooking that up to pylint and possibly our django unit tests. There’s plugins around for both tasks.

OoO 3.0 Beta & cross references

It still looks butt ugly but at least this bug was partially addressed in the latest beta release of Open Office. The opening date for this one, “Dec 19 19:13:00 +0000 2001”. That’s more than seven years ago! This show stopper has prevented me from writing my thesis, any scientific articles, or in fact anything serious in open office since writing such things requires proper cross reference functionality. But finally, they implemented the simple feature of actually being able to refer to paragraph numbers of something elsewhere in the document using an actual cross reference. This is useful to be able to refer to numbered references, figures, tables, formulas, theorems, sections, etc.

The process for this bug went something like this “you don’t need cross references” (imagine star wars type gesture here). Really for a bunch of people implementing a word processor the mere length of the period they maintained this point of view was shocking and to me has always been a strong indication that they might not be that well suited for the job of creating an actual word processor. Then they went on to a infinite loop of “hmm maybe we can hack something for open office 1.1 2.0 2.1 2.2 2.3 2.4 3.0″ and “we need to fix this because imported word documents are breaking over this” (never mind that real authors might need this for perfectly valid reasons). This went on for a very very long time, and frankly I have long since stopped considering open office as a serious alternative for doing my word processing.

I just tried it in 3.0 beta and it actually works now, sort of. Testing new OoO releases for this has become somewhat of a ritual for me. For years, the first thing I did after downloading OoO was try to insert a few cross references before shaking my head and closing the window. The UI is still horribly unusable but at least the feature is there now if you know where to look for it.

Six years ago Framemaker was the only alternative that met my technical requirements of being an actual word processor with a UI and features that support the authoring process (unlike latex, which is a compiler),  the ability to use cross references, and flexible but very strictly applied formatting. Theoretically word can do all of this as well but I don’t recommend it for reasons of buggyness and the surprising ease with which you can lose hours of work due to word automatically rearranging & moving things for you when you e.g. insert a picture, pasting a table, etc (and yes I’ve seen documents corrupt themselves just by doing these things).

The last few years, I’ve used open office only to be able to open the odd word/powerpoint file dropping in my inbox at home. I basically have close to no office application needs here at home. For my writing at work needs, I usually adapt to what my coauthors use (i.e. word and sometimes latex).  Framemaker has basically been dying since Adobe bought it. The last version I used was 6.0 and the last occasion I used it was when writing my phd thesis.

Wubi + ubuntu 8.04

You might have read my previous reviews of Ubuntu which were not very flattering. Basically they apply nearly in full to the latest edition. At least the “scanning the mirrors” issue was fixed. It times out and the installer continues, unlike with previous editions. However, the network driver for my SIS chipset is still broken. It sets the mtu to 1500, setting it to 1492 fixes it. This is explained in this thread by this comment.

Shit happens I guess. At least the right soundcard was used for the sound this time. I’m not sure if that is because they fixed it or because the drivers happened to initialize in the right order by chance (last time the problem was they were not).

The situation on the graphics side is unchanged. Ubuntu still misdetects my monitor and I will have to go to the commandline to fix it.

New uglyness.

  • The clock happily informs me hat it is 4:44 pm. Except it is 23:44. Slight timezone issue I guess. Why not ask me during installation or on first boot?
  • On first boot I was treated to some obscure Gnome error saying that something had failed. Nasty. Probably the graphics driver.
  • The driver icon informed me that something related to graphics was installed (driver presumably). I clicked it and the dialog seems even more confusing now than the previous version. A “new_nvidia” thingy was checked with a red dot next to it indicating that it the driver is unused. Unchecking it, a dialog popped up informing me that the disabling the unused driver would render the hardware unusable. Ehh?? I am looking at a screen, apparently something must be working. It appears that this means that the proprietary nvidia driver is now the only option and apparently it is not working entirely as planned. I guess that means no eyecandy for me (was looking forward to that).

That’s it for now. I don’t know yet if I am going to get my hands dirty on the commandline to fix this mess again or whether I will just use the wubi uninstall.

Update. Not only did Ubuntu guess the time wrong, it mistakenly ‘corrected’ the system clock. I just noticed that my clock was off by 7 hours back in good old windows XP. WTF!

Update. The above was tried with the amd64 bit version. I suspected my problems might be related to nvidia 64 bit support so I retried with the 32 bit version, only to run into this critical issue where the installer freezes while “formatting swap space in partition #1”. This effectively prevents me from completing the 32 bit installation altogether and with the 64 bit version I have as usual a ton of issues to fix to get a reasonably functional desktop.

Nice article by Neal Stephenson

I stumbled on this nice ‘article’ by Neal Stephenson that was published in in Wired 1996. He opens the article by announcing it is going to be a lengthy article in the end of his introduction, i.e. already well past the average length of a Wired article. The article length is a whopping 56 web pages. Printed to pdf it actually is 85 A4 pages. I wonder if Wired actually ever ran the full printed version in their paper edition. Anyway, it’s a long article but short compared to Stephenson’s Novels of which I am a big fan.

The article discusses a massive project that involves laying around 25000km of fiber optic cable in the mid nineties. In true Stephenson style, there are many interesting sidetracks involving such things as discussions of the history of cable laying technology, various sites visited by Stephenson along the cable’s route (e.g. former site of the library in Alexandia), etc. In other words, well worth a read if you have a few hours to spare. It doesn’t really matter that the article is twelve years old since the technology hasn’t changed much since then. Or as Stephenson argues, since Kelvin invented most of it 150 years ago.

Browsers

Normally when I play with a new browser (like a few weeks ago when I tried out Flock 1.0) I usually post at least something. In the past week I played with no less than three new browsers.

I started out by installing opera mini 4.0 on my N95. Earlier versions of this program were already quite nice and I used it a lot on my E70 before I switched to the N95. This new version adds some impressive features again. Overall quite nice but I’ll probably use the S60 browser on my N95 most of the time regardless.

The second browser I played with was Apple’s Safari 3.0.4 beta. Unlike earlier betas, this one is actually quite usable and stable. I think the UI stinks and feels really awkward on windows but aside from that it is a fine browser. My main issue with it after a few hours of browsing was that I started missing my firefox extensions and some of its behavior. Additionally the fonts it uses are different from what I’m used to and I’m not sure I like the way it renders them. It uses its own antialiasing which gives a weird smudgy look to the fonts. But to be honest, I think I could get used to using Safari full time. A nice bonus feature is that it integrates Bonjour support. This is really useful because as you may have deduced from some recent publications on my publications site, I’m working with mdns based service discovery mechanisms at work. So I installed this at work and my aptly named foobar.local N800 portal website showed up in the windows Safari browser. Cool!

Speaking of Firefox, I just switched over to 3.0 Beta1 released last night. I’ve been using it all evening and it seems a quite nice upgrade. Most of the feature work is not that important to me but the performance work is really noticeable. I’ve caught myself several times already thinking “hey this used to be slow/laggy”. It’s mostly subtle differences of course and not having most of my extensions (due to lack of 3.0 port) is great for performance probably. But still, works great and seems really stable so far.

To compensate for the loss of extensions I was able to enable the most essential ones using the nightly tester tools. This allows you to override the version check. Since in many cases, a version bumb was all that was needed, many extensions work fine. So far I have just enabled del.icio.us support. What would be really nice is a new version of that that integrates with the new places system in Firefox. Until that happens, I’m posting to del.icio.us using the old extension.

A bit of a disappointment is that none of the exciting stuff regarding ms cardspace, openid and microformats that was more or less promised a few months ago, has made it into this release. There’s no openid support, microformat features are not integrated and I have not found any UI for MS Cardspace either. It could be that this is due in later betas. There is probably still a few months until the final release.

Feature wise, most of the changes are minor tweaks and most of those were not in Alpa 7 that I tried when it was released in October?. The biggest change is the new places functionality which is nice except (as mentioned) that I use del.icio.us instead of bookmarks so this not something I will use a lot. The rest of the changes are quite nice but not that essential changes to stuff like the downloads windows, various settings screens and the url bar. For the rest it is good old Firefox, and what’s wrong with that? Next betas will introduce an updated theme. I was less than enthusiastic last time they changed it and still am rather indifferent to the 2.0 theme, so lets see what comes out.

Anyhow, unless something major crops up, I’m keeping this as my main browser.

Bought my first online album

Convenience finally won me over. I made my first online music purchase with iTunes plus, the DRM free music shop of Apple. Initially, when they launched this shop, they chose to offer music at a higher price than the DRM music. A few weeks ago, they reduced prices to what they were charging for their other music. Additionally, they made deals with several more music companies so the DRM free selection is now getting quite interesting.

The album I just purchased is Blue Finger, by Black Francis, aka. Frank Black. The price is somewhat high but I wanted to have this album nevertheless and it is only available online so far. People who know my music taste probably know this guy is well represented in my collection with just about any album he ever produced under any alias. Most of these albums I actually have on good old CD. However, in recent years his music has gotten less interesting. What I heard so far from Blue Finger he seems to have changed style again. The sound is more raw and much more pleasing to my untrained ear.

“Tight black rubber” is track 5 on this album and one of the better songs on it with a catchy but simplistic bass line.

Anyway, about the experience of using iTunes. It was quite confusing I’m afraid.

First of all, I had to accept terms of usage. OK no problem except that they were in Finnish. I am actually in Finland but like most people on the planet don’t actually speak Finnish. Beautiful language but my knowledge of it is limited to moi (hello, how are you today, fine weather isn’t it) and Kiiiiiiitos (thank you very much, I’m much obliged) and moi moi (goodbye, cu later). Finns are people of little words but they generally mean well. So I just agreed to a document that I cannot possibly have read or understood. But it is not like I would have payed much attention to it had it been written in English or Dutch. Thankfully the ok button was in English.

Secondly, it asked me several times whether I wanted to buy the album before and after agreeing to the terms. Lets see how often they bill me :-).

Finally, the whole iTunes plus thing, which means no DRM, was the bit that won me over. Unfortunately iTunes was a little vague on what I was actually purchasing. It initially listed itunes plus next to the album, which appeared to be the only option (good), so I clicked buy and iTunes informed me that this album was also available in iTunes plus. WTF do you mean ‘also’ anyway I assumed (again) everything was probably ok and once more confirmed that I actually wanted to buy the freaking album.

Seems to have worked since it is downloading now. The first track is actually 256 kbit AAC format and plays fine outside of iTunes so I assume I got the right album without the DRM crap and at the €9.99 price all albums cost instead of the much higher fee they charged until recently for DRM free music. All in all this is worth repeating. I have several more obscure albums on my wishlist that I would be willing to purchase under these terms.

Kdiff3 to the rescue

I was struggling this evening with the default merge tool that ships with tortoise svn. It’s not bad and quite user friendly. However, I ran into trouble with it when trying to review changes in a latex file (don’t ask, I still hate the concept of debugging and compiling stuff I would normally type in word). The problem was that it doesn’t support word wrapping and that the latex file in question used one line per paragraph (works great in combination with an editor that does soft word wrapping like e.g. Jedit).

A little googling revealed that the problem had been discussed on the tortoise svn mailing list and dismissed by one of the developers (for reasons of complexity). Figuring that surely somebody must have scratched this itch I looked on and struck gold in the form of this blogpost:KDiff3 – a new favorite about KDiff3.

The name suggests that this is a linux tool. Luckily it seems there is a windows port as well so no problem here. I installed it and noticed that by default it replaces the diff editor in tortoisesvn (good in this case but I would have liked the opportunity to say no here). Anyway, problem solved :-). A new favorite indeed.

Update:

Nice little kdiff3 moment. I did an update from svn and it reported a python file was in conflicted state. So I dutifully right clicked and selected edit conflicts. This launched kdiff which reported: 4 conflicts found; 4 conflicts automatically resolved. It than opens into a four pane view (mine, base, theirs and merged) allowing you to easily see what the merged result looks like and what the conflicts were. OMFG! where were you all this time kdiff3!! Damn that is useful. The resolutions look good too. I remember using tortoise svn doing merges on very large source base in my previous job and this is exactly what made them suck so much.

Miro

Miro, formerly known as the democracy player, is an attempt to liberate internet TV from its verticals (e.g. Joost). Essentially it is a video feed browser built on Mozilla technology; an open source media player (VLC) and bittorrent. What that means is that when you subscribe to feeds, Miro tries to download new items for you. The idea is to keep it open in the background and Miro will take care of making sure there is something to watch when you feel like it.

From the Miro website:

And finally, I have a favor to ask — if you think Miro is great, share it with someone.

No problem.

I installed Miro two weeks ago (to compensate for the loss of analogue channels on my TV, which I now fixed with a DVB-C set top box) and despite some rough edges with playing back content, the overall user experience is very compelling. Also the fact that there are now 2000+ video streams to choose from makes the experience quite nice. I found some interesting feeds with copyright free material from before WW II which despite the age is quite fun to watch. It won’t replace my TV but it is a nice addition.

About the rough edges (in order of priority):

  • Sometimes the video won’t show up and all I see is a black screen in the background. Solution: open the file in media player classic.
  • Sound quality: VLC by default does not dither sound to 24 bit, which causes all sorts of nasty sound artefacts for some files. Playing the same files in media player classic, which I have configured to dither to 24 bit, the problem goes away.
  • There are some stability issues.
  • Miro can hog bandwidth and ends up crippling my broadband connection because there is not enough bandwidth left for other applications. A throttle setting will be needed to fix that.

Despite these issues, playing with Miro is quite fun and technically it is just an alpha product at this stage so it is still quite excusable. One thing I’d like to see fixed is better integration with existing media players. Not being able to configure the media playing properly means that there is severe quality issues that would be easy to fix if I had access to the underlying media player configuration. Also, I have media player classic around for a good reason: it works very well and I really like it. VLC is not so good in my experience and I prefer not to have to use it.

Digiboksi

Digiboksi is Finglish for DVB-C set top box. I bought one on saturday and had it replaced today by a different one.

Basically the story is that Finland is replacing good old analogue TV with digital tv. Terrestial analogue signal went dark a few months ago. A few weeks ago the ‘interesting’ channels (i.e. the ones in english) disappeared from the cable and the rest will follow in February.

So, I went to the shop for a digiboksi. Since I barely watch TV, I just wanted something that was cheap & something that worked. So I pretty much randomly selected the Samsung DCB-B263Z in the shop (hey it was black, matches my other equipment). Normally I’d do some research on the internet for such a purchase. Unfortunately this product seems to be specialized for the Finnish market so most info available seems in Finnish. Hence the randomness.

So I bought it, plugged it in and about ten minutes later was watching TV. I was quite pleased with the picture quality. The UI seemed nice too. Then it crashed. WTF! Anyway, to keep this short: it is a known issue, basically the shops are selling products with broken software. Sigh. So, after about 4 crashes in less than 24 hours, I went back to the shop today and mentioned the word crash. No need for further explanation. Apparently, lots of people are bringing these things back (I know at least one other guy). Five minutes later I walked out with a Handan 3400.

So far it seems reasonably well behaved though the picture quality is slightly less nice than the samsung (was a bit smoother and crispier). I managed to improve it slightly by disabling the built in contrast. If this one crashes as well, I’ll try another brand.