Blog

  • Book Review Revue Pt. 5

    I’m taking way too long to write these blurbs — way over a year this time! — I don’t completely remember what I thought of these books, so this collection of blurbs will be somewhat more, ah.. abstract. Also, since I’ve spent a lot of time in this forum complaining about various eReader apps, I can report that all eReaders are great now, no complaints.

    Chol-hwan Kang, The Aquariums of Pyongyang: Ten Years in the North Korean Gulag (2001)
    At times this book takes on the feeling of propaganda, or if that’s not the right word, then a purposeful attempt to convince policymakers in the West that North Korea is a terrible place and something should be done to free its people. I don’t doubt it however, and since the events described (which occurred mainly in the 80s) I’m sure things have gotten worse.

    Dan Simmons, Hyperion (1989), The Fall of Hyperion (1990), Endymion (1996), The Rise of Endymion (1997)
    As was the Ilium series, the Hyperion series is richly imagined, highly entertaining, and extremely well done. My one complaint would be that, again as with the Ilium series, it seems Dan Simmons starts writing something and publishes the first volumes before he knows how the whole thing is going to end (or perhaps before he knows how many volumes the story will take). This is evident in the degree to which tricks are used in the latter novels to rewrite events presented in the first novels — questioning the reliability of the earlier narrator (or inventing a narrator for the earlier books that hadn’t been defined as such in those books), ignoring certain events or suggesting that the original perception of events was false or incomplete — in order to place the entire series within a story arc that wasn’t invented until later.

    No doubt reading a series like this in a few months that was originally written and published across 8 or more years makes it easier to see the brush strokes, and it’s unfair to point them out. It’s pretty great anyway.

    Steven D. Levitt, Stephen J. Dubner, Superfreakonomics (2009)
    Here’s one of those books where fancypants economists find stories to make the NPR set go, “hmm.” It’s entertaining enough, but I’m starting to think books like this are symptomatic of the way economics and “the economy” have been elevated to godhead status at the expense of all other human endeavor. Also, at this point (even in 2009) “questioning” climate science in order to be “edgy” is irresponsible.

    Laurence Rees, Auschwitz: A New History (2005)
    In addition to Auschwitz specifically, Rees covers the history of all the Nazi death camps, how they were conceived, set up and run. It’s depressing and also completely fascinating, which is a weird combination/feeling.

    Amy Stewart, Wicked Bugs (2011)
    I don’t think I actually finished this one. But I read enough to know: bugs are weird, they’re nasty little terrestrial aliens who would eat your face as soon as look at it.

    Ken Caillat, Making Rumours (2012)
    This was just great fun to read. As an audio engineer myself I would have appreciated more tech detail, but I suppose most people who are fans of Fleetwood Mac will be more entertained by this approach. Highly recommended.

    Alan Alda, Never Have Your Dog Stuffed (2005)
    Alan Alda is a national treasure.

    Tom Vanderbilt, Traffic (2008)
    Traffic, it’s bad. I know this firsthand now since I spent some time last year not busing but rather driving to work, which I didn’t like (I live in Seattle). Thank goodness that’s over. I don’t recall many of the facts detailed about how traffic is governed by various surprising and unintuitive rules, but I recall that there are some. There was a lot of talk about traffic circles, I remember that.

    Margaret Atwood, The Handmaid’s Tale (1986)
    Rick Santorum’s wet dream.

    Michael Chabon, The Amazing Adventures of Kavalier and Clay (2000)
    A fictional period piece from the early days of comic books. I liked it.

    Michael Chabon, Telegraph Avenue (2012)
    I liked this one too.

    Markus Zusak, The Book Thief (2006)
    Now a major motion picture!

    Jean Echenoz – Ravel: A Novel (2007)
    If you only read one fictional account of Ravel’s last years, including the period during which he composed “Bolero,” it should be this one.

    Nick Bolton – Hatching Twitter (2013)
    I read this either right before or right after visiting San Francisco a couple of Januaries ago. Part of what I liked about it is it gives you a sense of the city and its people before the current glut of smug star-eyed millennials looking to get rich. I actually don’t remember a time when SF was kind of depressed economically, post-dot-com-crash. I think it was still ultra-expensive.

    Another part I liked was the sense that the people running some of these companies are a bunch of kids playing tycoon, full of petty office politics and dramatic power grabs. I wonder how much of that is still tolerated.

    John Green – The Fault in Our Stars (2012)
    Now I know what all the fuss was about.

    Neil Gaiman – The Ocean at the End of the Lane (2013)
    I read this one on the recommendation of my pal Greg and it was great. Gaiman is good at combining elements of the mundane and the supernatural in surprising ways. Thinking back on this one it seemed kind of hazy, gauzy, like memory itself, which is what it dealt in. Parts of it at least.

    Neil Gaiman – American Gods (2009)
    Premise: all of humanity’s gods from all religions/cultures are real because belief begets corporeality. High jinks ensue. I didn’t like this one as much as the previous, but it was still good. Also longer.

    Asa Akira – Insatiable: Porn — a Love Story (2014)
    Kind of depressing. But you learn a lot about porn.

    Iain M. Banks – Matter (2009)
    This was pretty awesome, richly imagined sci-fi.

    Margot Livesey – The Flight of Gemma Hardy (2012)
    Bildungsroman featuring a girl in Scotland in the Sixties. Makes a good birthday present for your mom.

    Mark Miodownik – Stuff Matters (2014)
    Each chapter features a brief history about a particular material and how it has influenced and/or enabled civilization. Think concrete, plastic, things like that. Quick and entertaining. Informative, even.

    Shannon Curtis – No Booker, No Bouncer, No Bartender: How I made $25K on a 2-Month House Concert Tour (and How You Can Too)
    Reeks of effort. Just kidding, this would be a cool thing to try but I probably never will.

    Ted Rall – After We Kill You, We Will Welcome You Back as Honored Guests (2014)
    Combination comic book and collection of essays describing the author’s visits to Afghanistan in 2001 and again ten or so years later. Spoiler alert: it didn’t get better.

    B. J. Novak – One More Thing: Stories and Other Stories (2014)
    B. J. Novak has a real affinity for the language and a uniquely funny voice. I really liked how this was written.

    Cal Newport – So Good They Can’t Ignore You (2012)
    This is one of those books where a privileged successful person breathlessly describes the qualities and actions and attitudes of other privileged successful people, so that the reader (presumably someone privileged enough to have the option) can apply those same qualities and actions and attitudes to themselves, thereby increasing their likelihood of achieving success.

    Having said that, I found it pretty illuminating. The basic premise suggests that one can really only build a career upon foundations directly related to that career — you can’t just go and start something completely new , “following your passion” and expect that you can make a living at it.

    Mike Thomas – You Might Remember Me: the Life and Times of Phil Hartman (2014)
    Not quite unlike my parents’ memories of Kennedy, I remember where I was when I heard that Phil Hartman had died. I was in my crappy first car, which had an AM radio, that was always tuned to some news station. It was a sunny day in May and the announcer announced it, while I was just about to head out, but still parked on Brooklyn Ave NE in Seattle.

    Iain M. Banks – Surface Detail (2010)
    Another in the “Culture Series” of which Matter (described above) was also an episode. I recall being entertained and not much else.

     

  • Blast from the 1995

    IMG_0985.JPG
    All the way up to 4.1! Now it’s trash.

  • Internet show tonight

    Good news everyone! I’m playing a solo concert on the Internet this evening. You are invited to aim a web browser at a URL and watch video of myself playing a few songs old and new, as part of a concert series called Plastic Jet Airline.

    The show starts at 7pm Pacific Standard Time.

    Here are some links:

    • UStream (where the show will happen live)
    • YouTube (where the video will appear later, and where you can watch older episodes)
    • Vimeo (where the video will also appear later but in higher quality)
    • Facebook (where you can like it)

    ok rainbow

  • Arduino Morse – pt. 2 – only Morseo

    In my last post I wrote about a Morse code project I wrote for Arduino. I have a few additions to make on that subject..

    Firstly, I rewrote the main bits of this code as a library, and renamed it Morseo (pronounced “more so.” It’s like a pun). It’s on GitHub now as well.. I’ll probably delete the old project.

    In the course of turning it into a library I learned a few things.. primarily, how to turn it into a library. Arduino’s guide to making a library uses as an example a program that flashes, wait for it, Morse code. That was a fun coincidence, though I would note their example only flashes “SOS,” and mine does more than that. Still, kind of annoying. I’m under no impression that this project is unique, but I’d prefer it not to resemble the boilerplate.

    Secondly, Arduino is coded in C++, not so much C, as I asserted in my last post. Duly noted.

    Finally, Arduino includes a serial library for writing messages back to the PC host you’ve plugged it into via USB. Somehow I neglected to know this when I developed Morseo, which meant I had exactly one LED to debug with. This made debugging a lot of fun — seriously, it was a fun challenge — but more tedious than necessary. Next time, I’ll use the serial library to send myself messages, and I would hope anyone approaching Arduino programming for the first time knows this at the beginning.

    Up next: I have a wifi adapter now, I think a good next step would be to flash statements from a Twitter account or something.

  • Arduino Morse

    For my first Arduino project (and my first project of any sort on Github) I chose something that could manipulate Arduino’s on-board LED — as per the “Blink” sample project, since it would require no additional hardware — but what can you do with a single light? Morse code, naturally.

    Arduinos are generally programmed in C, and I’m a C# developer mainly, so this would be a fun evenings and weekends project. I wanted to define a string of text and have the LED blink that message out in Morse. The message would be hard-coded in the program itself, though if the input part of it were to ever become more dynamic (like from reading a Tweet, or something) then the rest should be mostly reusable.

    The first version of the program didn’t take very long to write, but it wasn’t very elegant. I wanted to separate some of its various concerns into separate functions, so I tried again. Here I ran into some peculiarities with how C handles strings that was taking a lot of time to figure out. Other things came up and I put the project aside for a while.

    I picked it up again finally a couple of weeks ago and finished it off. The string issues I had that weren’t immediately obvious included:

    • You can use char* to declare a string variable and initialize it later, but once initialized it’s read-only. You can’t treat it like a regular array and alter individual chars.
    • If you declare a char* with the intent to initialize it in another function, you need to pass it as a char**.
    • The aforementioned char pointer issues became moot when I found what I really wanted was to declare a string variable in one function, initialize it in another, and also manipulate its char elements. In C# you don’t have to think very hard to do this, you can do most anything you want to a string and it “just works.” In my case I found I had to use char arrays, and to treat these variables as buffers.

    I’d seen this pattern often enough before, of declaring a buffer of some length and passing it into a function by reference, usually when doing some sort of I/O to/from a socket or file. I don’t know if that was the only option I had to work with, but in the end it did what I wanted.

    arduino morse blink
    It’s the orange light

    For what it does, which is next to nothing, the program might be a bit overengineered. The main point of the project though was to learn something new and have fun with it. A next step along those lines might be to make it into a Morse library with some abstractions around possible input and output options, just to learn how C libraries work. I don’t know. I know other Morse programs for Arduino exist and I’ve purposefully ignored them so I can play this out for what its worth as a learning exercise. If anyone wants to work with this code and send me suggestions/corrections, definitely please do that.