Tormods blog

Feed on Posts 06 February 2012

Category ArchiveEnglish posts



English posts Tormod Ravnanger Landet on 02 Dec 2009

Robert Jordan – The Gathering Storm

I have spent most of my reading time since summer rereading The Wheel of Time series by Robert Jordan in time for the release of the twelfth book of the series. In hindsight, that was not necessary for the enjoyment of the book as I remembered all the characters pretty well. I had forgotten most details of the plot, but since most of the plot is spent building and introducing characters, the details of what they do is not that important in the long run. That is not to say that it is not still exciting to read.

I would probably have had a just as good time reading this new book if I had only reread the previous, book eleven, but I felt when I started that I would like to finish this series in a proper way. They have been with me for more than ten years now and have brought many good reading moments.

Mostly I would still say that the books stand out high above the average Fantasy literature. The books are not great literary fiction all the way through, but the first book is one of the best Fantasy books I have read and Robert Jordan’s gift of story telling is on the whole quite unique. Through the series the characters are allowed to grow and become rich in numbers and complexity. It is the character moments I liked the best on the reread. This is not because I knew the story and was bored with the plot. I had forgotten large parts, but I knew the overall plot, as any who has read the first couple of books will know or at least suspect. This makes all the characters actions, reasoning and motivation with the main plot as the backdrop the way I prefer to read the books.

The series starts out as ordinary, but very well written, hero’s journey Fantasy and spreads out from there. The conflicts are many, there are viewpoint characters of many different world views and motivations. No one gets anything for free like in some novels where the main purpose seems to be to show of how great the main character is. Indeed the main character is more and more flawed as the series progresses and this is one of the reasons why I am eagerly awaiting book thirteen. There is most likely some resolution on that part in the beginning of the next book. There will be fourteen books in total with one year between the last tree, so there are only two to go!

So, did the book live up to expectations? Yes, in most parts it did. It has a different pacing than the previous books, except perhaps for parts of book eleven where the pace of events picked up a lot. There is plenty of story lines coming to their conclusions. Before the book I wondered if it was possible to tie it all up in just three books while still keeping the rich storytelling. After having read the book I worried about there not being any story lines left for the last two books except the main story. It did not feel very rushed, but it is definitely more packed that any of the previous books. Luckily, as the story arches are coming together and merging there is also some new story lines that appear as more and more characters are drawn together and meet up after months or years apart. These will also need to be concluded in time for the big ending, so there’s plenty to look forward to.

So, what’s not to like, a.k.a. did Brandon Sanderson pull off the feat of pulling together the story left sketched and half finished by the late Robert Jordan? For the most parts, yes he did. There was only one chapter where I felt pretty clearly that Sanderson was the main author. Unfortunately that chapter in many ways pulled me out of the story. Still, overall it was a good read. Heartily recommended for the three or four WoT fans that still have not bought the book. All others can consider picking up the first book, The Eye of the World, but be forewarned; it will take you the better parts of a year to go through the series if you get hooked.

RendalssølenRendalssølen

Tags: , , ,

English posts &Uncategorized Tormod Ravnanger Landet on 14 Sep 2009

Bokanmeldelser i motvind

Hei igjen, det er meg – han fyren som med ugjevne mellomrom skriver noen ord på denne bloggen. Også denne gang blir temaet bøker, men nå bare raskt oppsummert. Det må være gøy å skrive hvis man skal gjøre det i lange baner på fritiden, og i det siste har det vært alt for mye annet å gjøre. Mulig denne skrivingen er en sesongsport som ikke egner seg så bra når det er utevær.

Mitt navn er Karmosin av Orhan Pamuk. Jeg begynte på denne etter å ha blitt inspirert av Portrait of a Turkish Family, men selv om den har vunnet det meste av priser så var det ikke noe for meg. Ga opp etter ca en tredjedel. Det var en kjerne av en god historie, men for mye lignelser og annet sos innimellom. Jeg hadde hele tiden troen på at den snart skulle ta seg opp, men det gikk så smått med lesingen at jeg til slutt måtte returnere den til biblioteket.

Engelens spill av Carlos Ruiz Zafón. Denne var bra, for all del, men litt for lik forgjengeren Vindens skygge, kanskje? Jeg hadde i alle fall større forhåpninger. Oppfølgeren er ikke fullt så morsomt skrevet og har ikke fullt så bra slutt, eller er det bare jeg som hadde større forventninger? Pluss for gode stemningsbeskrivelser og atmosfære.

The Name of the Wind av Patrick Rothfuss. Dette skal vistnok være moderne fantasys redning og jeg hadde dermed igjen store forhåpninger. Det er en bra, men veldig tradisjonell, historie – noe som var litt uventet når alle har snakket så varmt om den. Helt grei underholdning, ingenting å irritere seg over, men heller ikke noe å skrike høyt om.

Denne posten er skrevet i små biter over lang tid, men nå fikk jeg en unnskyldning til å skrive den ferdig and also switch to English due to some friendly nagging by Lily.

How to be Good by Nick Hornby. Hmm, OK, I understand that the reader is supposed to be frustrated by the personalities and actions of the main characters, but when I am dragged through that I expect some kind of payback at the end. There isn’t really one here. Maybe I need to stop reading Hornby? But, his first books were so good!

Slumdog Millionaire by Vikas Swarup. This is perhaps not as feelgoody as the film, but neither is it as hard hitting as I think it should have been. The main story is the same, but most details are different. I have problems deciding if I like the book or the film better, but one thing I do know and that is that they would both have been much better if the main character was killed at the end. If I had directed the movie, the two lovers would have been shot at the end of the kissing scene before the credits instead of dancing around. That is the only thing I feel strongly about the story. Otherwise it was only just so-so.

A Farewell to Arms by Ernest Hemingway. I bought this book before going to military service, but never finished it as sleeping was always a better option at the end of the often long days. Any not-so-light form of entertainment was hard to appreciate in that setting for some reason. The book is autobiographical and gives a nice little peak through to the mountains of Italy during World War I. Hemingway doesn’t try to cover everything so you have to read a bit between the lines, especially concerning his relationship to Catherine. The quite sudden transformation of their relationship was my favourite part of the book along with the descriptions of the Italian landscape.

Warbreaker by Brandon Sanderson. This book is actually quite good! As a stand alone fantasy novel it does it’s thing nicely and has just the depth of characters and breadth of story to work as it should. Admittedly, it does have some bad points like the lack of emotions in the young girl protagonist who is suddenly sent off by her father to marry the evil neighbouring god king. This is somewhat balanced by the better than expected descriptions of her sisters feelings and motivations in the latter parts of the book. That was more than I expected from Sanderson. There’s even a good plot twist that is well foreshadowed so it feels unforced and still unexpected. All in all the highest recommended book among what I have read by him.

I am sorry that this ended up being a list of what I (didn’t) like about a series of books, and not they were about. I would have liked to write small teasers as I have before, at least for some of the books, but I felt that if I did not get these published I would never start another review. Right now I am trying to do a reread of The Wheel of Time before the next book comes out and also try to finally read Baudolino by Umberto Eco which I have been putting off for the last eight years or so. The begining is quite nice, but there is always something else to do…

Buldring på Hellerud Buldring på Hellerud.

Tags: , , , , , , ,

English posts &Not on frontpage &Technical stuff Tormod Ravnanger Landet on 19 Jun 2009

Streaming audio from Spotify on Linux to Squeezebox

I have tried the WaveInput route for SqueezeCenter, but due to a non-cooperative sound card and various problems with permissions related to SqueezeCenter running as a limited user I decided to go another route and stream sound from my Linux laptop via Icecast. If you want try using WaveInput and have the same problems with recording from the sound card as I have (it plain doesn’t work with arecord and friends) there is a recipe here that might work for you.

PulseAudio

I need to use PulseAudio to get recording of sound played through the sound card to work as my Intel sound card refuses to allow me to record the sound directly. Luckily PulseAudio finally works OK for me now. I configured Wine with padsp winecfg and chose the OSS output driver for sound (ALSA works poorly at the moment). Now, run Spotify as padsp wine spotify.exe. Spotify should pop up in your PulseAudio Volume Control (pavucontrol) in the Playback tab.

You need to define a PulseAudio sink that is different from the normal (output to PC speakers). I chose to call this sink spotify. Create the sink with the following command.

pactl load-module module-null-sink sink_name=spotify

The sink should pop up in the volume control under the Output Devices tab. Next, select this sink as the default for Spotify in the Playback tab (click the small down-arrow and choose Move Stream and then Null Output).

Icecast

You can run Icecast with a minimalistic configuration. I used the minimal example (/usr/share/doc/icecast2/icecast_minimal.xml.dist on Ubuntu) where I modified the passwords and the log directory (I set the log directory a directory where I have write permissions so that I can run Icecast as my own user). Start Icecast with

icecast2 -c icecast.xml

Gstreamer

Finally I take the spotify PulseAudio sink and channel it to Icecast by use of Gstreamer. The magic command is (in one line).

gst-launch-0.10 pulsesrc device=spotify.monitor ! audioconvert ! vorbisenc bitrate=300000 ! oggmux ! shout2send ip=localhost port=8000 password=PASSWORD mount=stream.ogg

The bit rate is set to the highest I could use without getting error messages (300kbps). I assume this is pretty transparent and does not degrade the 160kbps Spotify output much.

Now tune your Squeezebox to URL http://ip-address-of-linux-machine:8000/stream.ogg. Modify the file name and port according to your configuration.

Comments are disabled on this article due to problems with spam. Somehow spammers believe that link-spamming this page with praise for the article will send them lots of readers or google-points or something …



English posts &Not on frontpage &Technical stuff Tormod Ravnanger Landet on 24 Oct 2008

Full screen music info

I’ve written a short program to show the currently playing song in a full screen view to avoid having to walk over to the computer when I want to know what the current song is called. The Squeezebox has mostly made this obsolete as I now just look at the screen on the hand held Squeezebox Controller, but it’s still nice to have once in a while so I decided to put it up for you to play with if you find it useful. it looks like this in full screen mode:

Marit Larsen - This Is Me, This Is You - The Chase

Supported programs are Amarok (pre KDE4/QT4), Spotify and SqueezeCenter. You probably need to run some sort of Unix OS, at least for the Amarok support to work (it uses dcop from the command line).

The program with a short description can be found here: full screen music info.

Tags: , ,

English posts &Not on frontpage &Technical stuff Tormod Ravnanger Landet on 17 Oct 2008

Using jsMath in MoinMoin with ReStructuredText

This is not a typical post for this blog, but it was just convenient to put the following here. Feel free to skip this post if you are reading this blog for the normal content and haven’t gotten here by searching for just this.

I spent a few hours at work today researching how best to add math (displayed equations) support to the docutils ReStructuredText parser for use with the MoinMoin wiki engine. I put my findings up here for the search engines to pick up in case more people need this.

The best solution today seems to be jsMath. It is more versatile than the various LaTeX -> dvi -> png solutions (and easier to set up). It is also much better supported than MathML.

Docutils, which is the library used by MoinMoin to render ReStructuredText to html, does not yet support math natively (as of version 0.6). Fortunately it can easily be extended with new directives. The only thing you need to do is add the following code to a Python file that is executed while rendering your wiki pages. The theme module is a good place, just stick the following at the bottom of your theme’s .py file:

# LaTeX support
from docutils.parsers.rst import directives, roles
from docutils import nodes

def latex_directive(name, arguments, options, content, lineno, content_offset, block_text, state, state_machine):
    latex = '\n'.join(content)
    return [nodes.raw('', '\\['+latex+'\\]', format='html')]

latex_directive.content = 1
directives.register_directive('latex', latex_directive)

def latex_role(name, rawtext, text, lineno, inliner, options={}, content=[]):
    latex = rawtext.split('`')[1].replace('\\\\','\\')  # Restore escaped backslashes
    return [nodes.raw(rawtext, '\\('+latex+'\\)', format='html')], []

roles.register_canonical_role('latex', latex_role)

This is a bit of a hack as it uses the old style function-as-directive model, but hey, it works, and I did not even know of docutils directives until today, so working is most definitely a big plus :-) It is based on this, but simplified a whole lot due to using jsMath to render the LaTeX equations.

You also need to include

 <script type="text/javascript" src="/path/to/jsMath/easy/load.js"></script>

somewhere in your html code. I put it in the page header with an ugly hack by adding the script to the output around line 680 of MoinMoin/theme/__index__.py. It can (and should) probably go in your theme’s .py file somewhere so that it does not disappear when MoinMoin is upgraded. I did not bother to do this for testing purposes, though.

Now you can write :latex:`e^{i\pi} + 1 = 0` in your wiki pages and it should be rendered to \(e^{i\pi} + 1 = 0\) in the final output (which seems like a small change, but believe me, it is easier this way then double backslashing the LaTeX code in the wiki page. You can also have displaymath equations with the following syntax:

.. latex::
   e^{quation} g_{oes} = here

which is turned into

\[
  e^{quation} g_{oes} = here
\]

The \( ... \) and \[ ... \] is picked up by jsMath and turned into beautiful equations (depending on field of work and definition of beautiful ;-) ). For non-javascript enabled browsers the code is left as is, so the equation can still be deciphered by LaTeX savvy readers. See here for examples of what jsMath can do.

So, in the end it was fairly easy to get good looking math support in MoinMoin. Hopefully docutils will come with jsMath support in the future. The new upcoming 0.5 version of Sphinx seems to do, and it is based on docutils and ReST. Shinx is a new documentation power tool for Python developers. Highly recommended to make documenting code a bit more fun.

Comments are disabled on this article due to problems with spam. Somehow spammers believe that link-spamming this page with praise for the article will send them lots of readers or google-points or something …

Tags: , , ,