Author: regehr

  • Book Review: Sustainable Energy — Without the Hot Air

    The premises are simple.  First, energy consumption must be met by energy production.  Second, use of fossil fuels is unsustainable.  Third, no magical technological fix to the energy problem is going to arrive.  Finally, to understand a sustainable future, we must think quantitatively.  That is, to proceed with a debate about, for example, wind or…

  • C Compilers Disprove Fermat’s Last Theorem

    [Update: I wrote another post on this topic that may explain the underlying issues more clearly.] Obviously I’m not serious: compilers are bad at solving high-level math problems and also there is good reason to believe this theorem cannot be disproved. But I’m getting ahead of myself. Recently — for reasons that do not matter…

  • Into the Brooks Range, Part 3

    [Continued from Part 1 and Part 2.] August 6 — We See Bears Finally we were back to walking a wide river valley not unlike our first day hiking. To stay in the river bed, we had to pass through some dense thickets of willow brush. Since it’s very bad to surprise a brown bear,…

  • Into the Brooks Range, Part 2

    [Continued from Part 1, also see Part 3.] August 3 — Over the Arctic Divide Our third hiking day took us over a 5700′ mountain pass where the Wind, Ivishak, and Ribdon river drainages converge. Since the creek-bed of our side drainage was totally impassable, we climbed steep talus slopes, leaving the last tundra behind.…

  • Into the Brooks Range, Part 1

    [Also see Part 2 and Part 3.] In Summer 2009 I went on a 1.5-week backpacking trip in the Alaskan arctic with my brother Eric, my colleague and hiking buddy Bill, and our guides Shannon and Ben from Arctic Treks. It was an amazing trip through a very rugged part of the world. Not only…

  • Straight Man

    Hank Devereaux, chair of the dysfunctional English department at a small university, is having a midlife crisis.  His wife, leaving town, fears he’ll be either in jail or the hospital before she returns — and she is not disappointed.  Straight Man is hilarious, I had to stop reading it in bed because it was too…

  • Margin in Software Systems

    Margin of safety is a fundamental engineering concept where a system is built to tolerate loads exceeding the maximum expected load by some factor.  For example, structural elements of buildings typically have a margin of safety of 100%: they can withstand twice the expected maximum load.  Pressure vessels have more margin, in the range 250%-300%,…

  • Picking a Research Topic in Computer Systems

    This post is a collection of observations and advice for people who want to choose a research topic in computer systems.  I’m not claiming to be some kind of genius in this area, but I have enough ideas that they seemed worth writing down. This advice is probably most useful for graduate students in CS,…

  • The Compiler Doesn’t Care About Your Intent

    A misunderstanding that I sometimes run into when teaching programming is that the compiler can and should guess what the programmer means.  This isn’t usually quite what people say, but it’s what they’re thinking.  A great example appeared in a message sent to the avr-gcc mailing list.  The poster had upgraded his version of GCC,…

  • C and C++ Make It Hard to Read a Register for Its Side Effects

    [ This post was co-written with Nigel Jones, who maintains an excellent embedded blog Stack Overflow.  Nigel and I share an interest in volatile pitfalls in embedded C/C++ and this post resulted from an email discussion we had.  Since we both have blogs, we decided to both post it.   However, since comments are not enabled…