Posts

  1. Interrupted Time

    “Software engineers need long stretches of uninterrupted time to get anymeaningful work done.”I see tweets like thi...

  2. Distributed Systems Notes

    I came across some unfamiliar terms and ideas when I read and wroteabout a paper called Efficient LeaderElection in C...

  3. Efficient Leader Election in Complete Networks

    The paper Efficient Leader Election in CompleteNetworks describesan algorithm with a time and message complexity line...

  4. Software Designs and Essay Outlines

    The other day I noticed how software designs and essay outlines are similar.You get to notice these similarities if y...

  5. Avoid Negative Variable Names

    Avoid negative variable names. They make code harder to read.(Related: –noooooooooooooooooo)A negative variable name ...

  6. The Elements of Computing Systems: Drawing Pixels on the Screen

    Like I said in my post about memory management on the Jackplatform, I love this book.The Elements of Computing Syst...

  7. The Elements of Computing Systems: Memory Management in Jack

    I love this book.The Elements of Computing Systems has you build a computer from scratch. By theend you build a pla...

  8. --noooooooooooooooooo

    Ruby’s OptionParser surprised me the other day.Say you want to make a CLI in Ruby. Ruby comes with an OptionParser an...

  9. How to Conference

    I often struggle to choose which talks to go to when I go to multi-tracksoftware conferences. My old method was to pi...

  10. A Tip for Testing the Speed of User Interactions in Your Javascript App

    At least one layout(reflow)should occur for every user interaction. Ensure this by triggering userevents in your test...

  11. A Lispy Calculator with Bison

    Bison is a parser generator that’s backwards compatable withyacc. You give it a lexer anda grammar in a .y file, and ...

  12. A Functional Implementation of an Abstract Development Server

    Let's implement an abstract development server in Haskell.

  13. Designing an Abstract Development Server

    Let's design an abstract development server that works for any compiled language.

  14. An Abstraction For Currying In Ruby

    This post works towards an abstraction for currying in Ruby. It begins with an illustration of currying with pseudoco...