Monday, January 25, 2010

Dragon Age: Origins - good, but not great

Dragon Age: Origins is a single player computer role playing game (CRPG) created by Bioware and released in 2009 for PC, PS3 and Xbox 360, with an original fantasy-based setting. Dragon Age: Origins (DA:O) is very true to the Bioware house style established in Neverwinter Nights (2002), Star Wars: Knights of the Old Republic (2003), Jade Empire (2005) and Mass Effect (2008).

If you follow the computer RPG genre you already know this. You will also know that it received glowing reviews from mainstream game review sites such as Gamespot (9.5/10), Gamespy (4.5/5), X-play (5/5) and even generally very favorable mentions from Tycho of Penny Arcade. I was a big fan of NWN, SW: KOTOR, Jade Empire and Mass Effect, so I regret to say that I am somewhat disappointed in DA:O and think that it certainly didn't deserve the ratings it received. It is decent, good even, but not 9/10 great.

The remainder of this review is written under the assumption that the reader has played DA:O, or at least another Bioware game, and is familiar with the tropes of modern CRPGs.

Let me begin by itemizing DA:O strengths.
  • Characterization: The computer-controlled NPC companions that accompany the player's character are typically a strong feature of Bioware CRPGs, and DA:O is no exception. In addition to improved gameplay means of customising their actions (the so-called "tactics slots"), a few of the companions are simply great characters. Morrigan, Shale (from the free "Stone Prisoner" DLC), and Alastair are very well written and voice-acted. They're fun and interesting. Bioware has produced some great characters in the past (HK-54 from SW: KOTOR in particular), and I'd rank Shale and Morrigan at least as highly as HK-54. They're really one of the bright spots of this game. Contrast Bioware's advanced companion NPC AI (I emphasize the companion part of this, as other NPCs can occasionally be pretty brain-dead at the normal difficultly levels I've played so far), and the relative depth of their characterization, with that of NPC companions in Bethesda's games (Morrowind, Oblivion and Fallout 3), where companions can be more trouble than they're worth. Of course, Bioware's games are written explicitly so that you require the constant use of companion NPCs in order to have a party that includes all the standard skills, whereas Bethesda's philosophy appears to be that you should be able to complete a game solo using any play style in almost in manner you choose.
  • A non-D&D statistics/skill/magic system. The added power provided by spell combinations (e.g. oil + flame, or freeze/petrify + stonefist) are a nice touch, and fun too.
  • Distinctly different initial game play depending on chosen race and class (e.g. Dalish Elf, City Elf, Human Noble, Dwarf Commoner, Dwarf Noble, Mage) for the first hours of the game (this is the "Origins" in DA:O), with each origin story integrated into the main story. Great as far as it goes, but it probably doesn't inspire me to replay the game completely because the origins stories only account for a small fraction of total game play.
What is not so good? I'll run through them in order of increasing severity.
  • The inventory system is absurd. You begin with 60 inventory slots for you entire party, but note that you cannot put anything down you have picked up - you can only sell items (at a vendor) or destroy items (at any time). There is no weight or encumberance system, some items stack and some don't. Realism I think not. One often runs into situations where your inventory is full or nearly full, yet you cannot leave the area to find a vendor, and hence end up not collecting a lot of the loot available on the quest. You can buy backpacks at moderately high cost at vendors that increase you inventory size by 10. Purchasing the DLC pack "Wardens Keep" for $7 does give you a storage chest you can use to put spare items you don't want to sell/destroy in. (Some have speculated that the inventory system was deliberately hobbled in order to encourage people to purchase the DLC.) What adds salt to this wound is that Bioware's preview game, Mass Effect, was criticized in many reviews for similar reasons, namely an unwieldy inventory system with a seemingly arbitrary limits on the number of items.
  • Enemies suddenly spawning behind you when there is no way they physically could have done so. Time and time again you will have cleared out all enemies from some dungeon, set of rooms, or wide open field, only to have a new set of enemies suddenly appear (often from nowhere) in front and behind you. When there is no physically plausible way they could have got behind you, or sneaked up on you this is both annoying and immersion destroying, DA:O's incorporation of MMO concepts makes enemy crowd control an important part of combat, so this unrealistic and unfair envelopment in enemies is particularly galling.
  • Both DLC packs I've explored ("The Stone Prisoner", free with game purchase, $15 otherwise, and "Wardens Keep", $7 purchase) offer very little added story content, maybe one hour of game play each. Instead they really provide items, either a new companion character (The Stone Prisoner), or new vendors, items, skills/spells and a functioning item storage chest (Warden's Keep). The integration of the Warden's Keep into the game is particularly grating, and was rightly pilloried at Penny Arcade. Admittedly expansion packs have never been Bioware's strong point, but this focus on virtual consumerism rather than content is both disappointing and disturbing. In comparison the five Fallout 3 DLCs ($10 each, with between 3-10 hours of story content in addition to new items) produced by Bethesda now appear in contrast to be excellent value, when initially they'd seemed rather thin on content.
  • The side quests offered within the game are particularly weak. Many are MMO-like mindless grinding (get ten mushrooms, make ten healing potions, make ten lyrium potions, recruit three mercenaries, inform three wives of their husbands deaths, get ten corpse galls). Very few quests further develop the world DA:O supposedly takes place in, very few lead to other quests, and most take negligible time to complete (ignoring travel time). Compare this with Bethesda's approach to CRPGs, where side quests are the majority of the game play, and can form well written and developed stories of depth comparable to the main quest (in particular the guild quests in the Elder Schrolls games). In DA:O the companion characters only have minimalistic side quests associated with them, essentially throwing away character development that could have capitalized on Bioware's strength with companion characters. Alastair mentions he has a sister and would like to visit her next time we got to Denerim. Enter Denerim and have a 2 minute conversation with sister. Quest completed. Wynne mentions she feels bad about how she treated a elf apprentice who them ran off to the Dalish. Go to the Dalish. One quick conversion points you to the woods where you meet said elf, with whom you have a one minute conversation. Quest complete. Sten admits his greatest shame is that he lost his sword when his band were ambushed by Darkspawn. Go to place this happened. Get directed to another place. Get directed to another place. Enter building and retrieve sword. Quest complete. Total time, excluding the fast travel screen, maybe five minutes.
  • Linearity. Bioware's games are structured around small levels with set entry and exit points, separated by loading screens (which can be slowwwww... particularly in DA:O). Individual levels are often rather linear, there being only one or two possible paths from entry to exit, and DA:O is no exception to this. Small puddles of water are impassible obstacles. Woods are turned into a set of of narrow gullies, the rest being impassible terrain. Challenges within levels, in particular with "bosses", seem like they can only be solved in one way: combat employing a balanced group of companions. For example: there is little freedom in design for a rogue to act in character by sneaking about to avoid combat (e.g. unlike Oblivion or Fallout 3). Following the main story line many of the quests involve linear sets of levels: enter and clear out area A, reach exit leading to level B, clear out level B and move onto level C, rinse and repeat. With only one possible path to follow the game feels constrained, and if you have the stomach to replay the game it will replay in exactly the same way once you've got past the first few hours of the Origin story. This linearity is partially a consequence of the technical limitations of Bioware's software, but what was acceptable or understandable in 2003 seems absurdly primitive in 2009. Note that Bethesda had an fully functional 3-D open world sandbox, go anywhere, no loading screen, CRPG game in 2002 (Morrowind), and since then there have been many sandbox games from different publishers. Some technical development by Bioware in the mean time might have been nice (larger levels? less linear level design?). Not all of the blame can be laid on technical limitations, as there are a few places within DA:O that manage to provide entertaining non-linear game play. In particular the nightmare sequence in the Mage's Tower demonstrated how clever writing could provide non-linear game play within the confines of the isolated Bioware small levels system.
  • Lack of Engagement. DA:O fails to establish a believable world in which the main story quest inspires the player, or has any sense of urgency. It is, to be frank, a little boring. Adding more levels of tunnels full of Darkspawn to be killed, or yet another floor of a tower full of abominations, may make the game take longer to complete than previous Bioware games, but it doesn't make it more exciting. The linear level and quest design fails to make you believe that Ferelden is a real world full of real people and places that require saving: you can't explore Ferelden the way you could explore in Oblivion or Fallout 3. The limitations of Bioware's game engine make Ferelden not a world, but simply a small number of smallish areas accessible via a (not-so) fast travel map. NPCs who are not quest related have little or nothing to say - they don't even move around! More problematic is that the game's story, Ferelden being overrun by an apocalyptic Darkspawn horde coming up from the south, is critically undercut by the actual gameplay. The fast travel map attempts to show this with a dark stain covering the map that grows upward from the south as the game progresses. Great idea, but totally undercut by gameplay, as one can encounter Darkspawn in the north of Ferelden almost at the start of the game when following some of the side quests. Yet quite late in the game one can fast travel through the south of Ferelden, even past towns supposedly overrun by the Darkspawn, with only the chance of a random encounter (not necessarily with Darkspawn either). Once you've criss-crossed this area of the map ten or more times on minor side quests without consequence it becomes hard to believe in the urgency of reality of a Darkspawn invasion. People criticized Bethesda's Oblivion because one could effectively play almost the entire game while ignoring the supposed ongoing demonic invasion via Oblivion gates: the believability of main quest was essentially undercut. DA:O forces you to spend most time on the main quest (as the side quests are MMO-like junk), but with even less sense of urgency or realism than Oblivion's main story quest. But Oblivion felt like a real world: places, people and creatures outside the main quest that could be found and interacted with, and yet that seemed to have a life of their own. In Bioware's Star Wars: Knights of the Old Republic the linear game play was supplemented by the players knowledge that the Star Wars universe was in some sense bigger than just this game, and by a good story that gelled with the game so as to make the Sith threat seem real and immediate. DA:O, in contrast, sabotages the engagement and immersion necessary for a great game.
In combination these problems make Dragon Age: Origins Bioware's weakest game for many years. That is is still better than many other games out there is cold comfort. Maybe Bioware was more invested in developing Mass Effect 2 and their upcoming Star Wars MMO, but that is pure speculation on my part. DA:O's shortcomings (particularly in terms of the weaknesses of the MMO elements they incorporated into the game) certainly make me concerned about the role playing and story quality of the upcoming Star Wars MMO.

Thursday, January 21, 2010

(Definitely not) the 100 greatest science fiction or fantasy novels of all time


Top 10 or top 100 hundred lists are always interesting, and via io9 I came across a new list claiming to be the 100 greatest science fiction or fantasy novels of all time.
Former io9 boffin Alex Carnevale posts his selections for the top 100 science fiction and fantasy books, and it's a pretty compelling list. What do you think? Does he capture the canon? [This Recording]
As Carnevale's list features the cover art for all 100 (a nice touch) it is difficult to reproduce the list, so follow the link above to have a look at it.

How do we assess greatness? Critical response, influence on future writers, commercial success, skill as a writer, or general popularity within the reading community. Top X lists are always good fodder for argument, as subjective choices often replace the harder work of collating and assessing the quantitative criteria I have just mentioned.

Carnevale's list, in my opinion, is a classic example of an utterly subjective and badly flawed list. It might accurately represent his favorite 100 books, or 100 of the books he owns, but its idiosyncrasies, omissions and biases render it useless as an attempt to compile the best 100 speculative fiction books of all time.

What is so wrong with it?

Lets start with the omissions of historical greats. It is supposedly a list of the best science fiction of all time, remember?

There is no Jules Verne (a major influence on the field, and who wrote many great book: Journey to the Center of the Earth; From the Earth to the Moon; 20000 Leagues Under the Sea, etc etc).

How about Arthur Conan Doyle (The Lost World)? Not in the list. Yet Carnevale includes Crighton's "Jurassic Park" in his top 100, which was hardly original and only famous thanks to the special effects of the movie version.

Robert Howard not on the list. You know, the guy who created that obscure and unpopular character Conan the Barbarian.

H.G. Wells at least gets a single mention, for the "War of the Worlds". Certainly a great book, and very influential, but one might also mention "The Invisible Man"; "The Island of Dr Moreau"; "The Shape of Things to Come"; and "The Time Machine".

I might not mind a single mention per author if Carnevale stuck to single mentions per author, but he doesn't. His list is full of multiple Jack Vance, Gene Wolfe, George R.R. Martin and Heinlein mentions, quite a few Haldeman, Stephenson and Crighton books at separate rankings. Yet other good or influential authors, such as Niven or A.C. Clarke get only a single mention. (OK, Clarke was not a good writer in general, but Childhood's End was decent and if we're putting Crighton in because his stuff got turned into movies then 2001: A Space Odyssey counts too).

Speaking of the exercrable Michael Crighton, he gets mentioned for Jurassic Park and Sphere, but not The Andromeda Strain. WTF? Crighton was a terrible writer, despite his commercial success, and his characterizations (especially of scientists) were the crummy 1-dimensional cardboard cut-outs that are typical of bad SciFi (and form a valid if stereotypical criticism of the genre by outsiders). Here is Carnevale's description of Sphere (at position 85):
The slightly better book, Sphere had a really strange Barry Levinson movie. It's basically a sub movie recast as a alien movie recast as a psychological fantasy. I have always found its claustrophobic environment enhancing. Crichton's remaking of adventure novels with science fiction was prescient.
OK, I see he liked it. I think it was one of the worst pieces of dross I've had the misfortune to read: terrible characters with typical Crighton anti-scientist bigotry at full display, terrible plot, total trash.

And don't get me started on discussing why Carnevale thought to include Ayn Rand's "The Fountainhead" at number 49.

Guy Gavriel Kay makes the list twice: once for the Fionavar Tapestry (17th best in Carnevale's list!) and once for Tigana (5th!). I must admit I haven't read Tigana, but that was because I heroically read the entire Fionavar Tapestry trilogy, and it was the worst piece of stale, turgid, boring, badly-written Tolkien emulation I've had the misfortune to suffer through.

Another major problem with Carnevale's list, and strong evidence of its flawed subjectivism is the obscurity of many of the books. I don't claim to have everything ever written in the genre, but it is my favorite book genre, and I've read a lot of it over the last 25+ years. Yet I've never heard of half of the book on this list. In other top 100 or top 50 lists (e.g. this one) I've at least heard of the vast majority of the books, even when I may not have read them all.

Top 100 lists tend to be weighted toward the last few decades, and yet there are glaring omissions from this list of recent authors that are famous, popular and have positive critical reception. There is not a single Iain M. Banks book in the list (seriously, WTF!), not a single William Gibson (Neuromancer is without doubt one of the top 100 speculative fiction books of all time), not a single Greg Bear (Eon, Anvil of Stars, Queen of Angels, Infinity Concerto). Carnevale seems unaware of great or influential fantasy authors such as Keith Roberts (Pavane, admittedly semi-obscure) or David Gemmel (George R.R. Martin's recent fantasy work is refreshing gritty, but Gemmel did inspiring and gritty fantasy decades ago and certainly deserves credit for helping reinvent the field from the cheap Tolkien imitation that plagued it, ala Guy Gavriel Kay and Terry Brooks).

Commenters on Carnevale's highlight other authors worthy of mention: Terry Pratchett, Phillip Jose Farmer among them.

This is not meant as a comprehensive analysis and critique of Carnevale's list - I don't believe it worthy of more effort - but it should give you an idea of the major shortcomings of this list.

Thursday, January 7, 2010

Getting to the beach early... 397 million years early.

[Update 01/07/10: OK, this result is more exciting than I first appreciated. Matthew Cobb at Why Evolution is True discusses this finding in a much better way than the BBC article did]

The BBC has a nice (accessible) story about a fossil trackway from was a muddy beach dated at 397 million years ago. What is interesting it is that it appears to record the tracks of a four legged creature about 2 metres long, which is slightly older than the famous Tiktaalik fossil (from ~375 million years ago, which is not a direct ancestor of tetrapods) and quite a bit older than the classic early tetrapod Ichthyostega (from ~360 Myr before present).

Some slight re-arrangement of the timeline of when tetrapods arose is not earth-shattering, but it pushes things back a bit, and incremental improvements in knowledge are still nice (to be fair the Nature News & Views article mentioned below thinks this a big deal).

For the genuinely interested:

The age of the previously identified Devonian tetrapod trackways (short green bars) contrasts with the 397-Myr-old Zachel strokemie tracks identified by Niedźwiedzki and colleagues1. These newly discovered tracks generate a mismatch between the currently accepted tree of tetrapodomorph fishes (lobe-finned fishes with internal nostrils) and its timing based on the body-fossil record (shown by solid red lines). The temporal mismatch implies the existence of long 'ghost ranges' (dashed red lines) among Devonian tetrapodomorphs. The divergence between elpistostegalian fishes and tetrapods with limbs and digits must have occurred much earlier than previously thought, perhaps during the 10-Myr-long Emsian stage, from which only few tetrapodomorph fishes are recorded. 1, Earliest articulated tetrapod skeletons with limbs and digits (Ichthyostega, Acanthostega)2; 2, earliest isolated tetrapod bones; 3, earliest tetrapodomorph fish (Kenichthys)5; 4, possible earlier tetrapodomorph fish6.

[Figure and caption from Palaeontology: Muddy tetrapod origins, Philippe Janvier & Gaël Clément, Nature 463, 40-41(7 January 2010), doi:10.1038/463040a]

Saturday, November 28, 2009

Newegg versus Tigerdirect

Is it just me, or do Newegg and Tigerdirect deliberately not stock the same products at the same time?

Wednesday, October 7, 2009

OpenCL

Ryan Smith discusses the state of OpenCL support at Anandtech. Surprisingly some of the comments to his post are actually useful too.

Thursday, October 1, 2009

Ardipithecus ramidus: 15 or 4,400,000 years late.


Carl Zimmer (at The Loom) and Matthew Cobb (at Why Evolution is True) have nice short write-ups (with links) on Ardipithecus ramidus, our 4.4 million year old cousin.

Update: John Hawks' weblog has the most detailed runthrough and independent analysis of the Ardipithecus papers I've seen (starting here). If your interested in Ardi, this is the place to go.

Wednesday, September 16, 2009

Ayn Rand didn't like physics?

I've been very busy with work and other functional duties, but this is worth a link.

Jonathan Chait has an excellent essay on Ayn Rand and the irrational beliefs of her followers on the political right. There is much worthy of discussion, from her bizarre upbringing and even more outlandish cult-like cliques through to her and modern conservatism's absurdly anti-factual beliefs regarding worth, work and taxation, but I'd love to follow up on this snippet of information:
(she considered the entire field of physics "corrupt")
Maybe the library will get the biographies referred to in the essay, but I doubt I'll have the time to follow up on Rand's physics hatred. After all, some of us have real work to do.

Thursday, August 20, 2009

"Unix is the best screwdriver ever built"

Unix is now 40 years old, if measured from August 1969 when Ken Thompson decided to spend a month while his wife was away by writing the core of what became Unix.

The BBC has a nice article by Mark Ward on Unix's history, ending with a quote
"Unix is the best screwdriver ever built," said Dr Salus.
that echoes the theme of Neal Stephenson's "In the Beginning was the Command Line" that compared Unix to a Hole Hawg drill.

Tuesday, August 11, 2009

Amazon MP3 downloads from Linux: clamz

Amazon.com offers quite competitively priced full album DRM-free mp3 downloads. You can purchase and download individual mp3 songs without requiring additional software. But they do require you to install and use their Amazon MP3 Downloader software in order to purchase and download the albums, which are of course better value for money as long as you want most or all of the album.

To their credit they provide their software not only for MS Windows (XP and Vista) and Mac OSX (10.4 and higher), but also for Linux (Debian 4, Ubuntu 8.10, Fedora 9, OpenSUSE 11.0).

Sadly if you're using a version of Linux other than those supported you may have trouble: the Fedora 9 amazonmp3.rpm will not install under Fedora 11 (although vwbusguy provides a work-around for Fedora 10).

Luckily there is another option: a command line tool called clamz (vwbusguy has produced Fedora 11 RPMs of clamz). Attempt to purchase the mp3 album from amazon as normal and once it offers you the chance to open or save the .amz file choose "save to disk" instead. Then run clamz on the .amz file, e.g.
clamz -d ./ AmazonMP3-*.amz
If you don't use the official amazon downloader you do have to jump through some hoops to get the *.amz file that clamz uses:
  • Select the album you wish to purchase and click the "Buy MP3 album with 1-Click" button.
  • A page appears asking you to install the Amazon MP3 Downloader application, presenting links to Windows, OSX and Linux versions. At the bottom of this page is a small link saying that if you've already installed the application you need to enable it in your browser and offering a link to do so. Click that link.
  • You are redirected back to the web page for the album.
  • Click the "Buy MP3 album with 1-Click"button again.
  • A new window appears asking if you really want to purchase this album. Click OK.
  • A dialog window will appear offering options to "Open with" and "Save as". Save the *.amz file its offering you.
  • Go to the command line and run clamz on the amz file.
  • Note that you can only run clamz ONCE on any *.amz file.
One thing that is slightly worrying about this is what happens if the download fails? If Amazon thinks you've downloaded the album they wont let you download the files again.

[Updated 10/20/09.]

Tuesday, July 28, 2009

Coyne reviews Robert Wright's "The Evolution of God"

Jerry Coyne (author of "Why Evolution is True") has a lengthy review of Robert Wright's latest book "The Evolution of God" (Amazon link).

In short: Wright cherry picks examples in an attempt to demonstrate "moral" progress mediated by historical (supposedly evolutionary) changes in (monotheistic) religions, as his previous books attempted to show progress in biological evolution towards greater complexity (and hence mankind). In short this is a classic religious attempt to ascribe purpose and direction to the Universe.

Nevertheless Coyne's review itself is worth reading.

Sunday, July 26, 2009

Gemmel, Quist and Polar Shifts

Fans of British fantasy novels will no doubt remember David Gemmell as being one of the biggest names in fantasy writing between the mid-1980's and his untimely death from heart disease in 2006.

Gemmell's books were a breath of fresh air in the late 80's, washing away the stale Tolkien-imitation that seemed to dominate the field and replacing it with gritty tales of flawed heros, often hopeless odds, and major characters often dying. Sadly, the more books Gemmel wrote the more formulaic this style became.

One re-occurring theme Gemmell used to tie together the different series of his earlier books was of periodic catastrophes that shifted the Earth's rotation, drowning continents and emptying seas. At the time I read his books I assumed these ideas (absurd, but good fodder for fantasy) were Gemmell's own adaptation of Velikovsky's catastrophism, but most of the Polar Shift concepts used in Gemmell's work appear directly taken from Charles Hapgood's "Maps of the Ancient Sea Kings: Evidence of Advanced Civilization in the Ice Age."

The reason I now know this is John McKay's excellent post on Allan Quist's hilarious attempt to disprove global climate change by claiming that ancient maps show an ice-free Antarctica based on Hapgood's work.

Monday, July 6, 2009

numpy/scipy

The more I use numpy and scipy the more I like them. Matplotlib has some quirks, but all in all its easy to quickly write something powerful that just works.

Update (09 July 2009): That said, I am surprised at how simplistic the fitting routines (aka optimization, minimization, etc) are in scipy, and the lack of good generalized fitting packages in python. Its all very well if you want to use the routines provided in scipy.optimize and uncertainties in your data aren't a big issue but that's not at all the realm of data I experience daily.

It may be that scipy.optimize's routines can handle data uncertainties properly through some more complicated interface, but all the examples I've seen don't seem to suggest that as they all totally ignore data errors. Nor do they mention even simple fitting concepts like chi squared (I'd survive with chi squared, I don't need log likelihood all the time).

Update (10 July 2009): OK, you can handle data uncertainties using the scipy.optimize routines, you just make sure the function you want to minimize calculates chi squared or log likelihood, and you effectively have chi^2 fitting or Cash statistic fitting. I haven't yet worked out how to calculate the uncertainties on the fit parameters using scipy.optimize -- the most naive way is to use the covariance matrix (not robust, I know).

Space Telescope's stsci_python provides pytools.nmpfit (a numpy version of python mpfit, itself a version of IDL mpfit). This does Levenberg-Marquardt fitting and does provide estimates of the best-fit parameter uncertainties (using the covariance matrix). After giving it a spin I find it works just as well as scipy.optimize, although at the cost of having to install the entire stsci_python package. More interestingly (n)mpfit has a well developed interface for fixing (and unfixing) fit parameters as well as handling limits on the fit parameters. I ended up using this for the HST ACS data analysis routines I'm writing. Still, none of these approach the sophistication of xspec or sherpa. If it weren't for the huge size of these packages I'd try to link to these behemoths (well, sherpa anyway, as it has a python interface), but I'm trying to (a) use more generalized packages, (b) wean myself away from relying on the same software I've used for years and learn something new...

Sunday, July 5, 2009

This Cat is Awesome!

Pet Jungle Cat (NSFW).

[Original "Cat... is Awesome" from Zooillogix]

Monday, June 29, 2009

Fedora 11: Why force beta versions of Firefox and Thunderbird on users?

Another thing I really dislike about Fedora 11 is the decision to replace the stable versions of Firefox 3 and Thunderbird 2 present in Fedora 10 with beta versions of Firefox 3.5 and Thunderbird 3 in Fedora 11. I'm certainly not the only one who doesn't like it.

This statement (in bold) features prominently in the Thunderbird 3 Beta 2 release notes:
Please do not use Thunderbird 3 Beta 2 in a production environment.
Yet the FESCo went ahead and approved putting the beta in the full release (this is not Rawhide we're talking about).

I haven't had any trouble (yet) with Thunderbird 3b2, but I'm already frustrated after only two days experience with Firefox 3.5 beta 4: page loading will occasionally randomly hang for no obvious reason, in a few cases so badly that I've even been forced to kill -9 the browser. And its only been two days!

Of course, criticism of the decision to put betas in the official distribution generates snarky comments from some people (the full thread is worth reading):
2009/5/11 Stephen Gallagher :
> OK, first off, why in $DEITY's name are we including Firefox 3.5b4 and
> Thunderbird 3.0b2 in Fedora 11?

These were planned features waaaaay back.

http://fedoraproject.org/wiki/Features/Thunderbird_3
http://fedoraproject.org/wiki/Features/Firefox_3.1

I don't recall you raising your objection at the time. Both have had
considerable review by FESCO and others so please don't complain about
this so late in the day.

--
Christopher Brown
There are some people think that being cutting edge is synonymous with including beta beta versions of software in official OS releases (e.g. see the /bin/bash blog's overly glowing preview of Fedora 11 written before its official release), but I am not one of them.

Betas are fine in rawhide versions, but only if there is a real possibility of the full non-beta version being available in time for the full Fedora release, and the ability to revert to a older stable version if the beta is still beta - yet these are the contingency plans presented to and accepted by the Fedora FESCo:

Thunderbird 3:
Contingency Plan
There is no turning back.

Firefox 3.5:
Contingency Plan
There is no turning back.

Ah well, I'm sure its just as bad over in Ubuntu or Gentoo land...

Friday, June 26, 2009

Fedora 10 -> Fedora 11 upgrade problems

After the last debacle [1, 2] associated with trying a yum upgrade from Fedora 9 to Fedora 10 on my x86_64 Opteron workstation I was sure that this time would be different. I dutifully downloaded and burned a x86_64 installation disk for my Opteron and a i686 for my old home PC.

Neither upgrade worked properly.

I had not run yum update on my home Fedora 10 machine since Fedora 11 was released on June 9 2009. I attempted the DVD upgrade on June 19, left it happily (if slowly) updating the ~1200 packages it wanted to update, only the return to a fatal error message regarding an unhandled exception. On reboot a single Fedora 11 kernel was available which started booting but failed when trying to go to runlevel 5. Reading the Common F11 bugs page indicated that my nvidia AGP card might be the problem, so modifying the kernel boot options as suggested allowed me to boot successfully. A large "yum update" (1.2 GB) was then necessary, but I finally had a working system.

For the Opteron I made sure my Fedora 10 installation was fully updated on the morning of 23rd June, and just before leaving working in the evening I stuck the DVD in the drive, hit the upgrade option when it appeared and left it running overnight. When I returned the upgrade claimed to have completed itself successfully and told me to reboot.

On rebooting grub went straight to a empty command line, without the usual boot menu. Clearly the grub-install that is run every time you update the kernel had not run successfully. As I know /boot is the first partition on my first hard drive I can still find the kernel and boot by doing the following on the grub command line:

root (hd0,0)
kernel /vmlin[hit tab] [select appropriate file] [return]
initrd /initrd[hit tab] [select appropriate file] [return]
boot

I did not use the standard Fedora kernel options "rhgb quiet" as I wanted to watch the services start up to see if there were any problems. Indeed, once the kernel started booting I saw that a variety of services where failing to start, complaining of shared library problems. A classic sign of a incomplete upgrade. Great!

In fact the boot process stalled completely, so I resorted to using the Fedora 11 disk in rescue mode. chrooting into the system once it had booted.

I checked that /boot/grub/grub.conf looked sensible, ran "grub-install /dev/sda" fix the grub problem, and then attempted "yum list updates", only to find that yum wouldn't run as python complained that it could not find the yum module.

"rpm -qa | grep yum" revealed that yum was still a Fedora 10 version, version 3.23. Mounting the Fedora 11 disk (mount -t iso9660 /dev/scd0 /media) revealed that the yum version on the Fedora 11 install disk is 3.22, so clearly the upgrade had failed to update yum because the recently updated Fedora 10 version had a higher version number than the Fedora 11 disk created only a few weeks before! In fact a large number of packages had not been updated to Fedora 11. Luckily rpm had been updated (if rpm was not working I'd have been forced to do a full system restore). Running

rpm -Uvh /media/Packages/yum* --oldpackage

successfully updated yum to the Fedora 11 version, at which point I could run "yum update" and start the process of getting a truly upgrading system underway.

With hindsight my mistake was updating my Fedora 10 system after Fedora 11 had been released. When doing yum upgrades it is a good idea to have your system as closely matching the new version of Fedora as possible, but this appears not to be the case for a DVD-based upgrade.

I'm still surprised that the DVD-based Fedora upgrade doesn't think to correct for version mismatches - you'd think it'd be logical for any f11 package to automatically obsolete a f10 package, even if the version numbers of the f10 package are higher. Or the upgrade could simple run rpm with the "--oldpackage" command line option.

Overall I have little satisfaction with the upgrading process under recent versions of Fedora. Web-based yum upgrades used to work very well, at least between versions ~6 and 8, but with Fedora 9 -> 10 and now with Fedora 10 -> 11 neither web-based or disk based upgrades has worked without significant problems.

Admittedly I've also experienced occasional severe problems with upgrades between different versions of Ubuntu when I was experimenting with it, so this is not a problem unique to Fedora.

The alternative - moving to a long-lifespan distribution such as RHEL or a free clone of it like Scientific Linux - simply replaces upgrade problems with equally severe out-of-date software problems (a friend who relies of the department's sysadmins to maintain his Scientific Linux distribution has had terrible problems with being stuck with old buggy versions of important software that require major version changes to fix, which the standard updates in RHEL/SL don't often do).

The only pro-active solution I can see is to become more involved with testing process on Fedora, and to have a dedicated test machine that I can easily revert to its original state when upgrade tests fail badly.

Missing printers with Firefox 3 and linux.

The Problem: All printing options except "Print to File" have disappeared from the print dialog box in Firefox 3 under Linux. Yet inspection of the print configuration options in about:config reveals no obvious changes and furthermore values related to the expected printers are present.

Crude Fix: Add the following line in /etc/gtk-2.0/gtkrc

gtk-print-backends = "lpr,file"

This will give access to very minimals command line interface to lpr, which means you must know the printer names and options you wish to invoke. Another fine example of of newer Linux software sacrificing core functionality for superficial improvements in other areas.

[From my "Random Unix and Linux tips and tricks" page]

Friday, June 19, 2009

Friday, June 12, 2009

Who knew that echidnas were so interesting?


The NYT has a nice article by Natalie Angier on the long-beaked echidna, Zaglossus bartoni.

You may be forgiven for considering one of the three remaining groups of egg-laying mammals as "primitive", yet they're anything but.
  • They lay eggs but feed the babies ("puggles") with an iron-enriched pinkish milk that emerges from chest glands rather than teats.
  • They have multiple sex chromosomes, not just the X and Y chromosomes found in placental mammals.
  • They have a bird/reptile-like cloaca through which excretion, sex and egg-laying is performed...
  • ...and male echidnas extrude their four-headed penis through this cloacal opening.
  • They have long lifespans of up to 45 years in the wild.



Sadly these fascinating and poorly-understood animals are endangered.

More long-beaked echidna information can be found at animalinfo.org. (I'm note sure why the Latin name of the species seems to be different on the Animal Info website.)

Thursday, June 4, 2009

Leon Kass

If the name Leon Kass means anything to you, and you can master your repugnance, then read these articles:

Tough Love for the Humanities, by Serena Golden, 2009, Inside Higher Ed (News).

Kass Backwards, by Scott McLemee, 2009, Inside Higher Ed (Views).

Which amusing prompts various right-leaning crotchety academics to come out complaining how nasty, left-wing, and authoritarian academia is, and also to demonstrate how little they understand when they claim people have not understood Kass's "Wisdom Of Repugnance".

Reason as Our Guide, Elizabeth Blackburn & Janet Rowley, 2004, PLoS Biology 2(4): e116. doi:10.1371/journal.pbio.0020116.

Clarifying The President's Council's Clarification of the Obama Stem Cell Policy, Insoo Hyun, Bioethics Forum (thehastingscenter.org), 2009.

Wednesday, June 3, 2009

Calling C++ from Fortran 90

Calling Fortran 90 from C++: not too terribly difficult although character strings are a pain.

Calling C++ from Fortran 90: Rather more complicated if you're not going to use pre-written interface-generating software. Best summary of the information you'll need I've found so far is this conference proceeding by Wang et al (2005), see also their ppt presentation.

Yang Wang, Raghurama Reddy, Roberto Gomez, Junwoo Lim, Sergiu Sanielevici, Jaideep Ray, James Sutherland5and Jackie Chen, 2005, "A General Approach to Creating Fortran Interface for C++ Application Libraries", in Current Trends in High Performance Computing and Its Applications, (Springer Berlin Heidelberg), 145-154, DOI 10.1007/3-540-27912-1_14