Showing posts with label book. Show all posts
Showing posts with label book. Show all posts

Sunday, January 01, 2017

Books of 2016

I have a substantial stack of unread books that I've accumulated over the year, because some time in the early part of '16, I got an "if you like Glen Cook, you'll like this" recommendation for Steven Erikson's Gardens of the Moon, and I got sucked into the whole ten volume saga of which that was just the first.

It's addictive, in the sense that there's never any good point to stop, because something is always about to go down in one or other of the many interwoven strands of the narrative, just in time for a "meanwhile, on another continent, half a world away" to put everything in one theatre on hold as we move between books. With book 5 that gets taken to extremes. A character gets introduced at the start of book 4, and their strand of the story has them saying from time to time about it being useful to explain the predicament they were found in, and ends that book getting to a significant place and about to tell their tale -- and book 5 turns out to be that story, starting "long ago, on a continent far, far away,...". And in the scope of it all, times when apparently abandoned plot threads suddenly burst upon the scene again thousands of pages later

Now, 10,000+ pages, hundreds of characters, dozens of battles, many real-time months (only finished in the last few days, with it being my sole fiction reading all year), and several continents later, each volume about 1000 pages of set-up and 100 where the dominoes start to fall, there was a reasonable end to the saga, which I hadn't been expecting when I started the final volume. It should not come as a surprise that few of the characters we meet at the start survive until the end, though for some of those who don't, death, it turns out, is just another career move.

Also, unsurprisingly, there is a degree of padding and waffling, with characters engaging in somewhat sophomoric philosophising, which had me thinking "Oh, come on!" and "Get on with it, for goodness' sake!"; and a fair amount of building up minor characters simply so they can be given a tragic death scene, or can accidentally stumble into the way of some other more powerful actor and screw things up for them.

Still, it was entertaining enough for me to read through for all these months, and I applaud it for its ability to give a feeling of deep mythological time, and in eschewing the all-too-common fantasy clichés -- there are dragons as an ancient threat, but the nearest thing it has to a standard non-human race are the sort-of Dark Elves, which are more like Melnibonéans (in one case) or Vikings (in another) than anything else; the various ogre-ish/demi-giant types don't slot into obvious Monster Manual niches, and the dino-birds with the mole-rat social structure that form a threat that bubbles under for several volumes are definitely their own thing. And you can assume that the main participant race is not-quite-human either, given that the unisex armies actually function.

There are occasional points where the "from notes I was making for a tabletop RPG" origin slightly leaks through, but never offensively so, and occasionally as self-aware humour (the shop in not-AnkhMorpork that sells short lengths of rope and 10 foot poles, for example).

Monday, August 26, 2013

Recent Reading -- back into space

Evening's Empires by Paul McAuley

Back in the solar system for the next book in the Quiet War sequence; a maguffin hunt around the decadent worlds of the Belt and outer planets.

Much better than the rather aimless In the Mouth of the Whale. But with sections named for well known old school SF stories, and a clade of tick-tock people, I was disappointed that none of them said "Repent, Harlequin!"

The Shoal Trilogy (Stealing Light et al) and others by Gary Gibson

The Shoal books are a decent set of interstellar adventure while he's setting more and more plates spinning as a couple of humans are caught in the machinations of the one species that possesses the secret of FTL travel, but like many of these things, taking them down again doesn't happen so neatly. The bad Heinlein pastiche bad guys in human space do get annoying.

That sequence manages to avoid something other of his books suffer from -- a big setup opening passage, then completely setting that aside for the rest of the book : Final Days sets up the concept of a wormhole network to the post-Stelliferous age, and then turns into near future action thriller; and Angel Stations starts with a probe reaching the galactic centre -- then drops us into some gang fighting in a future run-down London and scatters across half a dozen or more disconnected viewpoints that take most of the book to achieve a semblance of coherence.

But at least he makes the effort and does not go the safe route of just dressing an historical in spaceship clothing.

The Expanse (Leviathan Wakes et al) by James S. A. Corey

Grand scale maguffin hunting across the solar system -- plenty of page turning action as planets go to war over a find of alien biotechnology.

Commits the sin of not conserving angular momentum at a crucial point in the last volume. (One of the Gibson's did as well, but in a much less significant context.)

Friday, August 23, 2013

Recent Reading — a fantasy selection

Half sick of Shadows by David Logan

What seems by the blurb to be a whimsy of Tennyson time-travelling in a Morris Minor turns out to mostly be a surrealist black comedy of rural Irish life, with a thin veneer of justification for its inclusion as a candidate for the Terry Pratchett Prize. I hate to think what the rest of the field must have been like, but I was underwhelmed.

Railsea by China Miéville

Don't be fooled by the surface "Moby Dick on the railway" hunt for the Great White Mole that opens this one. That plot gets, ahem, derailed as strange salvage found out on the tangled tracks of the Railsea leads to a race to the ends of the world.

While it's clear that Miéville likes his trains (see e.g. Iron Council), this baroque, almost Gormenghastian, world where the classic motifs of the high seas have been transplanted to the rails never comes over as self-indulgent.

Titus Awakes by Maeve Gilmore

Building on a short fragment and a list of chapter headings left by Peake, this is a valiant attempt to complete the original intent. But it is clear from the first chapter break that this is a different voice, and by the time Titus has meandered his way to the world of cars and other mid-twentieth century appurtenances all the vices of Titus Alone were there without the virtues of Peake's prose. Maybe I'll finish it some day.

Boneland by Alan Garner

After all these years, a concluding volume for the sequence set on Alderley Edge that started with The Weirdstone of Brisingamen, told for grown-ups, just as Colin is now grown. Weaving a past while the ice was only starting to retreat from England with the present, it makes an almost entirely different reading of what would follow after The Moon of Gomrath than I had expected.

Don't look for adventures or explanations, but do expect a quiet end to the tale.




Tuesday, June 11, 2013

Recent reading

Time to do some catching up for the last few months...

Neal Asher's Polity (Agent Cormac, Spatterjay, and others)

As one of the few SF writers whose blog I can stand to follow, I thought last summer that it was about time that I went and read some more of his books -- having read The Engineer and Gridlinked back when they were new, well before I even started this blog. So since then I've been slowly pacing myself through everything that the local Waterstone's had on its shelves, trying not to mine out this rich seam too fast. But now, alas, that particular well has run dry for the moment.

Now, why had I left this much to accumulate? After I'd read Gridlinked, I'd felt that the book had gotten close to my squick level; and the description of his next oeuvre, The Skinner made it sound like it would be way over. But another decade on the internet seems to have desensitized me enough to handle the rest, though there have still been a few places where I've thought "I get the point" and skipped to the end of the scene -- you know you're getting off lightly, for example, when someone undergoing radical surgery for an invasive alien parasite is merely described as "looking like an explosion in an abattoir".

So, provided you are OK with the level of mud, blood, body horror and psychotic villainy, and are looking for good solid action adventure SF this is a setting of a messily human, yet generally optimistic far future, without the antiseptic niceness that too often seems a genre staple, where action spans from massive interstellar war-fleets to the poor bastards who have to get up close and personal with whichever menace out of time or space is behind the machinations of the current plot.

I still have no idea how my memories of Gridlinked (before rereading it recently) managed to get confused with what I think must have been Banks' Consider Phlebas which I must have read a decade earlier.

Next up, The Owner...


The Serene Invasion by Eric Brown

And now for something completely different...

Another "golden spaceship" novel in which the human race is enslaved by alien puppet-masters who stay offstage, much like his earlier Kethani. The difference in this one is that, rather than patching up and rewriting broken humans, the aliens rewrite reality directly to prevent the expression of actions that would injure self or others -- including animals (the matter of what happened to surgeons was quietly ignored, when even boxing was rendered impossible).

Consequently there are no riots over the last remaining stocks of bacon as the human race are socially engineered back to locavore subsistence farming under a network of alien-symp soviets. Resistance, such as it is, comes in the form of Morwell, a caricature Murdoch/Maxwell (the name might have given that one away) style media baron and ex-arms manufacturer, and a cartoon alien enemy who, while being able to rewrite reality nearly as well as the S'rene, apparently still find economic use in sending lower races down mines for materials (probably because they're right wingers and do that sort of thing, along with eating babies for breakfast, as naturally as breathing).

Normally I don't hold a writer's repugnant political views against them (I actually enjoy China Miéville's F/SF writing, ffs), but this sanctimonious piece of work comes straight out of -- or, rather, dives straight into and never again emerges from -- the low information leftist/watermelon reality tunnel.

It's the third strike, and you're out, I'm afraid, Mr. Brown.

Later: And the attention to detail is so great -- while humanity is being guided to hand-knit its own lentils, nothing is said about what you do with the billions of farm animals that you can no longer eat or even castrate. Or what you do when your horse breaks a leg, or your cat has a stroke and goes mad with terror.

None of that matters when you're getting off on fantasizing that your hate figures are sexual inadequates -- that's much more important to consider after the new Year Zero.


Milkweed (Bitter Seeds et seq.) by Ian Tregillis

Mad English warlocks vs twisted Nazi psychics? Yes please!

So runs Cory Doctorow's blurb on the back cover of the first volume of this Weird War II trilogy, summing it up most concisely.

This one caught my eye from the striking cover design of the series, the blurb piqued my interest, and the teaser synopsis did the rest.

Although there are a few lapses of nuance that betray the writer as American in this trilogy set in an alternate world where the Commonwealth -- and in particular, the most secret part of British Intelligence -- stands alone against the Nazis and then, later, the Soviets and their superhumans, the whole was a gripping read.

Sunday, February 24, 2013

Recent Reading

Exaltations by Richard Garfinkle

A strange, almost indescribable, and most inventive meta-fiction, as a narrator of lives gets tangled, along with some of his subjects, into the machinations of the archetypal Quest. And as a tale about telling (or Telling), it scatters the seeds for a small library's worth of tales in passing. As airy ephemera, just to decorate one short scene, we are shown the three different-yet-similar versions of the Trojan War and the founding of Rome that spin from Paris' choice of which goddess to give the apple of Eris; and none of that is really important.

This time, the ending is satisfying if understated, rather than just fading out.

Star Carrier by Ian Douglas

Somewhat a change of pace, a good solid hard mil-SF trilogy that shows that the John Campbell school of SF still lives, as the US Space Force squares off against an ancient Galactic Empire, intent on subjugating the human race.

A solid page-turner of space battles and some seriously alien races in a purely relativistic setting with Alcubierre warps (handwaving away the engineering details involved).


Friday, January 18, 2013

Recent Reading

In the Mouth of the Whale, by Paul McAuley

Set in the future of The Quiet War/Gardens of the Sun (either ~1500 years or 3.5 teraseconds, depending on who's telling it; but as there's a factor of 100 difference between those, who can tell?). And, yeah. Three interleaved tours of the balloon factory and a literal dea ex machina ending.


Blue Remembered Earth by Alastair Reynolds

This one justifies its tour of the balloon factory as a scavenger hunt around the Solar System, intermixed with elephants. And the following volumes in the sequence seem likely to be taking the scavenger hunt further afield yet, though I shan't be in any hurry to follow.


EmbassyTown by China Miéville

This one actually has an interesting idea about language and communication, though it takes its sweet time getting there, with a lot of scene setting that skirts around the really significant features of the eponymous enclave before actually setting up the salient parts of the status quo and its disruption. Easily, however, the best of the bunch.

Tuesday, November 27, 2012

Recent Reading

I've actually gotten around to reading something that isn't on-line chat or technical over the last few months, so time for a round-up


The Clockwork Rocket by Greg Egan

Having skipped his intervening fantasy Iran novel, the return to physics driven story, albeit with a gimmick given away by a glance at the blurb, seemed worth a go.

Now, half the plot of his earlier Incandescence was how a woman in a pre-industrial society managed to avert an existential threat to her world by being Newton and Einstein rolled into one. Now, stop me if you've heard this one before, but the whole plot of this latest book is how a woman in a pre-industrial society manages to begin to mitigate an existential threat to her world by being Newton and Einstein rolled into one.

When, some chapters in, it became clear that this was indeed what was going on, I just went to the online auctorial physics infodump, because it had failed the "Who are these people, and why should I care?" test. One canon Sue was OK, but this got a bit too much.

Rivers of London by Ben Aaronovitch

By contrast, this book is covered with all the warning signs that normally turn me off -- fantasy, urban fantasy, secret wizards...

But there was something that seemed intriguing about it anyway, so I gave it a try. And such a contrast -- or to coin a phrase "That's the way to do it!"

And there are sequels. The second, Moon over Soho benefits from having set the scene already, and gives a chance to thicken the plot. The third, Whispers Underground then veers away from the line set by the first two into a more "secret London" sort of story, with a central mystery that wasn't really the same sort of police procedural sort of mystery that had driven the others.

Still, two out of three ain't bad. I just hope he doesn't just flog this setting to death.


Monday, September 03, 2012

Recent Reading

Humanity's Fire Trilogy by Michael Cobley

This starts off with a bait-and-switch, the solar system under attack by a swarm of machine intelligences as last-ditch starship launches try to escape the plague. Then fast-forward to a time when, after the temporary inconvenience, Earth is a minor power in a well populated part of the galaxy, and has rediscovered one of the colonies of that desperate exodus. Which just happens to be where a previous cycle of spacefaring civilisation fought the last major battle.

In all, it's harmless spaceship fiction, with a moderately novel cosmology of sedimenting layers of hyperspace, and a heavy seasoning of tropes from cyberpunk onwards; though the ending suddenly arrives in a cloud of anti-climax.

Despite the title, there's no Campbell style "humans are the best" -- the human colonies are more the people who are in the wrong place at the wrong time, with the major blows against the various antagonist factions coming from other sources.

Verdict: entertaining enough for me to have picked up a volume per year as it came out in paperback, but not a classic.

Helix by Eric Brown

His Kethani was harmless enough, and I'm a sucker for Big Dumb Object SF, so I picked this up as part of my stash of holiday reading.

Oh dear. The first chapter sets up a greentarded future a century or so hence, which somehow manages to combine a disease and CAGW ravaged humanity down to the tens of millions with a viable long-shot starship program. The second chapter flips to humans in fursuits in some frozen environment, suffering under a stock model Church. In the third, the starship, 1000 years out, traveling at half the speed of light is a parsec from a gravity well -- then a few moments later it crash lands on an apparent planetary surface.

At this point I put this travesty down, having given it three strikes and it's out, with just one afterthought -- if you're running a 1000 year last-chance colony mission when the human race is dying out due to transient ecological issues, aim for somewhere that it likely to be habitable a millennium hence, by doing a simple cometary orbit to the Kuiper Belt, and expect homeostasis to have reasserted itself by then.

Thursday, September 22, 2011

Recent reading

Kethani by Eric Brown

Aliens send artefacts to Earth to enslave the human race, as told through the perspective of the inhabitants of a Yorkshire village with an unusually high rate of cancer and suicide. Nobody seems to notice what the aliens are doing, not even the author.

Cosy British SF as it is done at the start of the new century.

Yellow Blue Tibia by Adam Roberts

Cold War nostalgia in a tale of an SF writer given an unusual assignment by Stalin, and then being told to forget everything, which works for the next 30-some years. Spends a long time setting up the mood, then infodumps a not-quite-resolution.

Rocket Girls and Rocket Girls: The Last Planet by Housuke Norjiri

The two light novels (each slim enough to finish during one bathtime) that were the original source of 2007's delightful anime series, now available in English. The anime was a very faithful adaptation of the source material -- just omitting the by then very dated visit to Mir at the end of the first book, and segueing that mission into the one at the start of the second.

Ouroboros Wave by Jyouji Hayashi

A series of almost puzzle-driven hard-SF shorts scattered across several decades in a fairly standard Earth vs space colonists setting -- a very modern execution of something that was at one time almost the backbone of the genre.

Wednesday, April 06, 2011

Q1 in books

More fiction reading than I usually do these days, mainly from the grotty weather and having spotted a bunch of titles of interest to add to the Christmas list:

The Quantum Thief by Hannu Rajaniemi

Somewhat reminiscent of early Roger Zelazny -- definitely not the Egan-esque fare suggested by other reviews -- as if Zelazny had been handed Schroeder's Lady of Mazes and a genre trope update for the next 40-odd years when he was starting to write Today We Choose Faces.

Good, not great.

Kraken by China Miéville

After The City and the City, doing yet another magical London seems rather a return to the formulaic. At least he resisted -- given the title and the main character's name -- doing any "Billy the Squid" jokes.

Only pedestrian by comparison with his other works.

The Quiet War/Gardens of the Sun by Paul McAuley

You just have to take the next couple of hundred years future history in this set-up as a given, to provide the backdrop for a high-tech, solar-system spanning tale of Byzantine politics, interspersed with travelogue, the latter possibly becoming a bit repetitive each time we are shown a new piece of airless real-estate.

The ending is fortunately not telegraphed -- whether the not-so-bad guys or the greasy-pole climbers will win out is finely balanced almost all the way.

Wayland's Principia by Richard Garfinkle

This time, he takes on the old staple of First Contact, weaving the alien into territory more usually seen in myth -- it's all about its construction of aliens and where the not-human becomes a monster, and how the gulf might be bridged.

As such it's not set up as something that can have a tidy end, but rather fades out into the future, the narrative sort of pulling back and speeding up in the last few pages, until it rather petered out in the end. A good and interesting book, but not, I feel, his best work.

Sunday, February 27, 2011

Book — Summer of the Ubume by Natsuhiko Kyogoku

The first novel by Natsuhiko Kyogoku, and the one to which Mouryou no Hako is a sequel.

The prose is rendered nicely into English, while retaining some of the stylistics tics of the original (no sentence broken between pages, at least for the first 200-odd pages); there are a few translators notes where allusions are made to various folk-tales. The most obtrusive translation quirks are where dates are concerned

The book he was reading was something from the Edo Period [1603-1868]...

but those are quickly past after the opening chapter.

Many of the cast of Mouryou no Hako appear in this first novel -- many more than I had expected. And Kyogoku seems to have a thing about bizarre hospitals.

By the end, this is clearly a strong first novel -- and it's also clear why the next book he wrote about the same cast was the one that got the adaptations : this one relied just a bit too much on the power of coincidence (three different characters suffering the same hysterical blindness, for one), and on having some of the main cast involved at some point in the past with one or other of the major players in the mystery.

Still, if you enjoyed the Mouryou no Hako anime, this is the nearest thing you'll get to having another fix of the same in English language.

Wednesday, December 29, 2010

2010 in media

Film

A very disappointing year, with a totally dismal Film Festival, and otherwise only the Chaumet/Tati L'Illusioniste really standing out enough to tempt me to the cinema. I would have gone to see The Story of Kells as part of the festival had it not been in a no-unaccompanied-adult showing; but wasn't motivated to see it when it came around later. And similarly, previous commitments and bad weather relieved me of having to decide whether to make the effort to fit in Rare Exports.

Books

I actually read a few this year that weren't software related. Excluding the holiday reading potboilers (Lindsey Davis' latest Falco, some by the numbers sci-fi,...)

  • Miéville's Un Lun Dun was a young people's Neverwhere -- some nice ideas, but it didn't quite cohere in the end. And I'm sufficiently bourgeois that the mundane London in the book was a more alien world than Un Lun Dun itself.
  • Also by Miéville, The City and the City is the first Hugo winner I've read before the award since A Fire Upon The Deep. An interesting conceit of cities wrapped around a police procedural.
  • Reynold's Terminal World was a vast improvement over his previous House of Suns, being a fairly straightforward adventure yarn in a setting where Vingean Zones of Thought happen on a scale of miles rather than kiloparsecs.
  • I also finally got around to Nahoko Uehashi's Moribito: Guardian of the Spirit -- and was surprised quite how much the anime had expanded upon the rather short and sparse narrative.

And while I'm here, probably worth warning people about the two weakest of the computing texts I picked up this year, both in the Wrox Professional series:

  • Professional Iron Python was a very strange book, and it did cover some obscure points of .net/Windows programming; but for IronPython, not good. It read like a draft that had been put together while the language was still in its pre-beta stages and then hurriedly given a Visual Studio 2010/.net 4 gloss. In particular the author repeatedly makes the incorrect assertion that IronPython statements cannot span multiple lines -- which leaves me dubious as to the rest of the content I've not independently verified. Get IronPython in Action instead.
  • Professional F#2.0 just approaches being content free. It covers very little of the language (no computation expressions, let alone anything like quotations), giving more emphasis to the imperative rather than functional aspects where it does. Get the O'Reilly Programming F# instead.

Anime

2010 was the year where Crunchyroll reached a sufficient point that -- whatever the sordid history of the operation might be -- it was possible to watch a fair selection of series without resorting to fansubs. A few series that I might have watched, or at least sampled (House of Five Leaves, Tatami Galaxy) were streamed by Funimation -- but they don't seem to have cottoned on that the world is more than just Japan and the US.

Going by the metric that "/a/ doesn't talk about good anime" -- where it is obvious whether a title that is not talked about is good or bad -- House of Five Leaves, from a manga by the same author as Ristorante Paradiso is the only one that I feel any regrets about missing.

Apart from titles already blogged, I still have the last episode of Virgin Pomegranate Monster to watch, as well as the concluding cours for Letter Bee REVERSE and Super Robot Wars OG : The Inspector.

And of course no discussion of 2010 in anime would be complete without a mention of the new GAINAX series, Panty & Stocking with Garterbelt, a title that I watched just enough of to feel I could add it to my MAL dropped list (i.e. more than one episode).

A combination of all that is wrong with American cartoons multiplied by "LOL, Japan!", this was the disappointing result of giving a studio of talented animators full freedom to have fun and do what they wanted. Alas, what they wanted to do was act like retarded 12-year-olds -- so if you've grown out of finding messy bodily functions funny, or haven't seen any of the stuff that they're lampooning, and don't get your jollies from hearing cute Japanese girls swearing a blue streak, it ends up by being the saddest waste of talent I've seen in many a year. And another case where I ignored the implication "it's being talked about, ergo it isn't very good", because I couldn't believe it was really that bad.

Alas, it was. In fact, watching the audience reactions as they were trolled mightily at every turn with misleading hints about forthcoming episodes, and desperately tried to make it all make sense, all the way up to the sudden ending with "To be continued in next season" (when Gainax have never done a second season of any of their original anime) was far, far more entertaining than the series itself.

Sunday, September 20, 2009

Book — Lady of Mazes by Karl Schroeder

Set only a few millennia hence, and confined to the re-engineered solar system, under the adventure yarn surface this is far more angsty take on being human after some sort of a Singularity than the low-end posthumans of House of Suns. What he seems to posit as the central dilemma, well, I'm sorry, I'm not seeing the problem here -- and it's not as if being unoriginal and there being many other people doing exactly the same as you are doing now has bothered many people. Towards the end, I found myself more in tune with some of the supposed antagonist factions than the nominal lead character's agenda.

Book — House of Suns by Alastair Reynolds

Pretty, but ultimately hollow Big Dumb Object/Sense of Wonder stuff, set in the (post)human-filled galaxy of 6 Myr hence. Suffers from chunks of idiot plotting (when you're fleeing from a massacre, and suspect a traitor in your midst -- identity easily spotted by someone who never manages to get ahead of the detective in a whodunnit -- you don't leave the person working on reverse engineering the answer to why this is all going on to work in solitude, you get them broadcasting every step of the work), and from needlessly firing off all the Chekov guns at the end for a totally flat finale.

Really, in a big-scope SF story, it's better if some of the wallpaper just stays that way, as odd local colour to make the setting distinct from any other, rather than having to become a plot point.

Sunday, August 16, 2009

Book — Hello World - Computer programming for kids and other beginners by Warren and Carter Sande

There are a lot of books out there about learning new languages or software related technologies. The problem is that almost all of them assume that you know something about the field already; or are at least hard-core enough that you can survive being thrown in at the deep end -- the equivalent of the kids of 20-odd years ago who started out by self-teaching assembler on a BBC micro or Z80 -- and can take being started out on ODBC related code (I'm looking at you, Dive into Python.)

Hello World! is one of the rare exceptions, a gentle, and humorous introduction to the idea of programming, using Python, a language well suited to filling the niche that BASIC dialects did a generation ago. Even to a crusty and cynical old-timer, like myself, it makes entertaining reading -- not only is the writing style light and engaging, but you can nod sagely and think "Been there, done that" at all the "In the good old days" asides.

That said, it's not a book aimed at teaching people in my position, so I showed it to some members of the target demographic.

My wife, who has programmed a mean Excel spreadsheet in her time, but never anything in the way of more procedural languages, has enjoyed reading it and trying the examples (even if composing Python code using dictation software is a truly painful exercise); which is tribute to its style. While the examples may be rather trivial, in the wider sense, the immediate sense of achievement they bring help motivate and reinforce the reader.

I also showed the book to a teenager who had wanted to learn programming over the school holidays, and to whom I'd earlier loaned a copy of the O'Reilly Learning Python. She liked Hello World! very much for its very approachable style, and tells me that (to me, unsurprisingly) it gave her a better understanding of the real basics than the more advanced text has done.

However, as she also perceptively pointed out to me, "while it is very good at giving a budding programmer the groundings you'd definitely have to move on to a different book to get the more complicated bits."

It is strictly an introduction or 'taster' sort of book, a teaching aid rather than a reference. If the coding bug bites, then you will want to move onto something else to get a broader and deeper understanding, beyond the introductory simplifications (such as Hello World!'s simplifying use of old-style objects)

Looking at it as an old-timer, it is clear that the book is intended to be a whistle-stop tour of the idea of coding, and getting the computer to respond to what you have done. There isn't a sense of structured incremental development in the way material is presented, more one of getting the user to the "Ooh! Shiny!" quickly. That makes sense in terms of seeing if the coding bug bites before possibly dampening enthusiasm with comparatively boring, if worthy, things like operations on strings (split, join, search), which are left until late on. Unfortunately, one of the topics deemed too boring to mention was testing -- even though Python comes with a unit test library in the "batteries included", the idea of "how do you know if what you've written works?" wasn't raised.

The book comes with the expected accompanying download bundle : Python 2.5, and all the source and tools mentioned in the book. My wife had a little trouble with getting some of the tools to work -- the Stani's Python Editor program as supplied didn't appear when invoked from the start menu, and, when started from a command line, complained at not being able to find wxPython; although when I installed the latest wxPython for Python 2.5, the install process detected a prior version being present -- so it would help to have someone around who is confident with managing the computer being used.

Overall: definitely a good book for the absolute beginner, and I'd rate it a very solid four stars out of five. The reason I mark it down is that while it's great for teaching as it's laid out, it's less good as a reference afterwards.

Sunday, May 03, 2009

Book — IronPython in Action by Foord & Muirhead

IronPython is an important language.

Back in 2000 at the Microsoft PDC, where the .net platform was unveiled after much hype, we were given a vision of the Common Language Runtime as a truly polyglot platform, with 15-20 languages having been fed into the design, tantalizing code snippets shown -- and even previews of ActiveState's real-soon-now Python.NET and Perl.NET implementations.

And then for five years, .net programming meant no more nor less than C# (or VB.Net if you swung that way), with the two languages adopted for the platform from the wider world being at best niche -- J# a known dead end, and C++ for .net never really recovering from the horrible extensions used in the first attempt at the job.

And then, in 2005, it was steam-engine time : the first inklings of an ML dialect, labelled F#, for .net from Microsoft Research, and IronPython, a project initially undertaken to show why Python on .net couldn't be done -- a meme whose genesis I strongly suspect lies in the failure of that early ActiveState effort. While, however, F# still remains a CTP release (even at a 1.9.x release number) to this day, the IronPython 1.0 production release (Python 2.4 compatibility) was the best birthday present I never realised I'd received in 2006. Yet, until very recently, whereas F# was supported by several books, all published even before the CTP announcement, even as a production release, IronPython languished in the English language press.

IronPython in Action now fills that surprising gap.

The task the authors set themselves is an heroic one -- to teach Python to .net programmers, and .net to Python programmers, and, just in case that was not enough, several of the more outré parts of .net, and good programming practices, for just about everybody as well. What makes this a great book is that, in the course of about 450 pages, with copious external citations, they actually succeed.

Part of the secret of the success is that this (like Programming in Scala) is not a beginner's book and assumes the reader has a degree of familiarity with basic programming concepts -- for example, the Python if, for and while statements are covered together in just over a page, with the link collection in Appendix C there in case a more at length treatment is required -- so freeing space for more advanced material to be covered.

The scope of the material covered came as a most pleasant surprise -- when I pre-ordered the book, it was as a gesture of support, because the language deserved a presence in print (after all, I'd been programming since whenever, using .net since it hit 1.0, and IronPython for a couple of years, so not much of it should be exactly new...); when it finally arrived and I could read it, I found there were significant things I could learn from it, new insights and just better ways to achieve some things already did.

In particular, the chapter on testing is pretty much worth the admission price all by itself, simply for the worked example of how to solve that perennial problem -- performing automated testing of a .net GUI application (as opposed to just testing the backing libraries).

You don't even need to use IronPython as your .net language of choice to benefit from much of the third section of the book, Advanced .NET. This not only covers parts of the framework too often neglected in C# texts (like the extremely useful, if unsexy, System.Management namespace), but also provides a more measured introduction to the sexier new technologies (WPF and Silverlight) than the books dedicated to those technologies that I have read. Where it is specific to IronPython, this section also serves to emphasise the importance of the language within the larger world of .net, with the ASP.Net extensions for dynamic languages, and the inclusion of the dynamic language extensions (the DLR) within Silverlight.

And if you don't yet use IronPython (or the less mature IronRuby), there's really only one thing that this book neglects to point out about the language -- but it's one that might finally change your mind. Although it's now distributed as an .msi installer, once unpacked, the required assemblies can still be simply XCOPY installed to run on any machine with the .net 2.0 or later framework already in place, giving you a .net-aware scripting language anywhere you have .net already.


Disclaimers: Yes, I do get a shout-out in the book for one of my earlier postings in this blog. And while I would have written a review anyway, for the same reason I bought the book sight unseen, I have since been suggested to the guys at Manning Publications as a potential reviewer by the authors. So, here is the review you were looking for.

This review is released under the WTFPL.

Saturday, May 02, 2009

Book — Clean Code by Robert C. Martin.

The review, after following the advice contained in the book: Read this book!


Ok, let's back off one step...

If you write code at all, then this book will be of use to you. If you write code as part of your day job, then it is essential reading.


Ok, let's back off a long way...

Every so often, a book comes along that codifies best practice in a way that manages to illuminate the path from where things are right now, to a better place that we'd rather be -- things like Fowler et al's Refactoring or the Gang of Four Design Patterns. This is one of those books. And if much of the material is the sort that seems obvious in hindsight -- well, that is the mark of a well written book, to make the concepts that clear.

Taking a series of real world examples -- open source projects with significant user bases, including FitNesse and JUnit -- a series of worked examples take us from good, or at least adequate, code, to a form which is better factored, and easier to read, with the steps along the way clearly marked. Yes, even some of Kent Beck's code is put under the microscope, and carefully polished that extra stage or two more.

The reader is cautioned that, without working long hours to follow these examples, this will be just another of those feel-good books. I don't quite agree -- spending just a little time to follow the transformations, and then reflecting on one's own outpourings should be enough to make this a feel-bad book. All the sins from obscurely named variables to sprawling functions that gaily mix abstraction levels, we've all done them (especially programming in FORTRAN on minicomputers with slow stacks and a rule of thumb that 1 call ~ 40 loc in terms of performance).

The maxim to take from the book is based on Baden-Powell's "Try and leave this world a little better than you found it", and owes to the same school of thought as "whenever you are in the garden, pull at least one weed". The meat of the book is in distinguishing what are the weeds from the intended crop.

So read it, understand the examples, and then refer to it often -- like the other titles mentioned, it is a reference work, and should become one of the most thumbed on your bookshelf.

Friday, February 06, 2009

Book — The Tyranny of the Night & Lord of the Silent Kingdom by Glen Cook

Normally, I don't get on with fantasy as a genre; but Glen Cook is an exception. His Black Company series was so good that when I picked up the first volume, and started reading it one lunchtime, I quickly stopped and went to pick up the next two (and went on to pick the rest of that sequence up as they came out).

Towards the end of last year, after a nigh-complete drought of fiction, and too many programming books, I happened to spot the second of the above titles on the shelf at Borders, bought it like a shot, and was annoyed to find it was the second in the sequence. So, the first went on the wish-list, and when it didn't arrive in my Yuletide presents, I just had to order it myself.

So, the story. It's clear from early on that this is a rebadged version of Europe in the high Middle Ages, with Cathars, Albigensians, a rather more enduring Avignon Papacy, Constantinople, and all the turmoils of Outremer, plus a layer of generally malign magic and magical entities on top. In the hands of almost any other author in the field, this would be a sign that I'd throw the damn thing across the room before page 76; but Cook's style and delivery delivered an absorbing read.

And now I'm waiting impatiently for the next volume, and rejoicing that his Dread Empire series is coming back into print...

Book — Programming in Scala by Odersky et al.

The Scala language first crossed my consciousness over a year ago, at a stage where I was just starting to get into functional languages. But even with the various quick tour documents on the language web site, it was clear there were a lot more subtleties to this one that were not being explained.

With the stairway book, that gap has been bridged.

The book is aimed at the experienced programmer in 'C' derived imperative languages, with at least some familiarity with the Java™ language, and ideally some notion about functional programming techniques -- it is not by any stretch of the imagination a "my first programming book". For the intended audience, it is an extremely effective step-by-step guide to the features, and the syntax, of the language (this is a great contrast with e.g. Foundations of F#, which expends very little effort towards separating the accidents of the particular example from the generic syntax). While I am by no means yet fluent in the language, I feel that when I'm using it for hobby coding that I'm not just groping in the dark, but instead have a solid guide and reference to lead me.

Thursday, January 01, 2009

2008 in media -- retrospect

Film : apart from the handful at the Film Festival, cinema seemed to be either the standard extruded product from the bowels of Hollywood, or English-miserablist. The only one I saw was when taking Karen to see Georgiana, and that I didn't rate.

Books : almost everything I read was software related -- for SF, see above about extruded product. My recommendation on the software front would be F# for Scientists, which did the basic teaching necessary to make the other books (Foundations of..., Expert...) somewhat more comprehensible. Foundations in particular is a poor introductory text as it hides the descriptions of syntax (as opposed to accidents of the examples) in solid paragraphs of text -- you need to have grasped the language before you can really get to grips with the book.

Anime : the year when Aniplex hired an outfit to send out DMCA notifications, where fansubs were slow, but some titles were for the first time officially simulsubbed or nearly so (of which only Strike Witches took my fancy). A fair number of OK-to-good series from the middle of the year, but nothing as outstanding as '07.

No real highlight, unless Mouryou no Hako delivers as it has begun, and only one that was so bad that I regretted having watched the one episode (Mnemosyne); though quite a lot that failed out of boredom (Spice & Wolf, Shigofumi Telepathy Girl Ran).

Other titles get separate mentions earlier, or get covered in spring and summer round-ups.