The best things and stuff of 2013
Great things and people that I discovered, learned, read, met, etc. in 2013. No particular ordering is implied. Not everything is new.
also: see the lists from 2012, 2011 and 2010
Join in on the Hacker News discussion.
Great blog posts read
My favorite Erlang program — When Joe Armstrong blogs about his favorite Erlang program, you read it. There is no debate here.
Operating System Development Series — I am an absolute sucker when it comes to OSDev articles.
Internal Reprogrammability — Fowler does it again. And again. And again.
Exponential Decay of History, Improved — David Barbour improves on an idea that was already a very good idea to start. The original are solid reads. 1
Wodehouse Saved My Life — Hugh Laurie discusses Wodehouse.
On Software Architecture — Software architecture (and architects) are at times much maligned. The view of the architect is becoming less vitriolic as the Internet forces a focus on architecture, but many poseurs have worked to taint the view of, in my opinion, a crucial role in modern software shops. Roy Fielding posted a while back about architecture in a way that really crystalized my understanding of the value. 2
Carver Mead: The Spectator Interview — This is an article that takes a few re-reads to really hit home.
Dear Leader Dreams of Sushi — an astonishing article about Kim Jong-il’s obsessiong with sushi and the man who helped sate it
JavaScript Isn’t Scheme — I’d read Nystrom blog on just about any topic, but this one is his best of 2013 IMO
The Genre Artist — an article about Jack Vance, a great, but under-appreciated scifi writer.
Ruins of Forgotten Empires — an article about the APL family of programming languages
Simon Stalenhag’s art — beautiful retro-futuristic paintings
Design Challenges: Haggis — Game designer Sean Ross details his design thinking behind his wonderful card game Haggis.
Dig Deep: Beyond Lean-in — Bell Hooks on modern feminism and the Lean-in principle
Andrew Looney’s Eleven Principles of Game Design — Quite possibly the game designer that I admire the most, on game design
Rediscovering Checkers — a gentleman describes “scientific checkers”
Chuck Moore’s Creations — One of my favorite talks at Strange Loop 2013 conference was Moore’s talk entitled *Programming a 144-computer Chip to Minimize Power. In that talk he describes the gritty details of effectively bootstrapping a GreenArray parallel processing board using a version of colorForth. The language and the board shown by Moore were a revelation to me. I started my career working in the guts of machines using an oscilloscope as my debugging environment and Moore’s creations made me yearn for that experience once again.3
Most viewed blog posts by me (20K+ viewers)
10 Technical Papers Every Programmer Should Read (At Least Twice) — My most popular post of 2011 was also my most popular of 2012 and also of 2013 — go figure.
FP vs. OO, from the trenches — Really just an anecdote about where I’ve found functional programming useful over object-orientation and vice versa. For some reason it was popular for a few days — or at least controversial.
Fun.js — My announcement of my book “Functional JavaScript” made the Internet rounds. Plus the whole Fun.js series as a whole garnered a crap-ton of views and some discussion.
C.S. on the Cheap — My idea for a Dover-like publication run of computer science books.
Scala: Sharp and Gets Things Cut — Kind of a rant about the way that Scala is marketed that came off more critical than I wanted.
Enfield: a programming language designed for pedagogy — A description of a the perfect programming language for exploration.
Computerists — A bit of cynicism on my part about computer “science.”
Favorite technical books discovered (and read)
10 PRINT CHR$(205.5+RND(1)); : GOTO 10 by Nick Montfort and others — A critical, philosophical and artistic view of a simple line of Commodore 64 BASIC code.
Computer Lib; Dream Machines by Ted Nelson — It took me ~15 years to track down a reasonably priced copy of this book, but the wait was well worth it.
The Dream Machine: J.C.R. Licklider and the Revolution That Made Computing Personal by Waldrop — Licklider is little known amongst modern computerists, but much of what we know about computation owes much to his mind and guidance.
Favorite non-technical books read
Earth Abides by George Stewart — My favorite entry in the family of global-pandemic-centric science fiction novels.
The Invention of Morel — A beautifully written book about an island of … I can’t say without giving away too much.
The Autobiography of Malcolm X by Alex Haley — What can I add about this books that hasn’t been said 1000 times already. A fascinating life.
Grooks — Wonderful, poems… no… aphorisms… no… sketches… no… Grooks by Piet Hein
A Gamut of Games by Sid Sackson — The book that really kicked my recent obsession with games into high-gear.
Number of books read
Number of books published
1 (with another due early 2014), plus a newsletter about Lispiness.
Number of books written
2
Number of papers read
≈ 20 (a very slow year for me in the paper department, sadly)
Number of papers read deeply
3
Language zoo additions
Favorite musicians discovered
Om, Alien Sex Fiend, The Fiery Furnaces
Favorite games discovered
I’ve discovered gaming at a late age. That’s not to say that I never played games. In fact, I’ve played my share of Chess, Checkers, Go, Risk, Gin Rummy, Hearts and Uno, but for one reason or another I never expanded much further than those staple games. However, now that my kids are getting older their drive to experience games and gaming is growing… and so goes mine. Therefore, below I’ll list my favorite games found in this year of discovery.
Board games
Cannon (PDF) — A wonderful board game with simple rules and deep complexities. A 150-year game.4
Mate — 20 cards. Perfect information. Mind games. Fun. I’m looking for people to play with via email; interested?
Hive — A game of bug-tile placement. A 150-year game.
Volcano — Not only great fun, but a beautiful game to boot. My current favorite Looney Pyramids game.
Homeworlds — An abstract game a intergalactic conquest. A 150-year game. I’m looking for people to play with via email; interested?
Card games
Super Nova — An abandoned CCG that tried to gain players at the wrong time. Reading over the rules hints at a very fun game that might one day work as a LCG.
Magic: The Gathering — As a child of RPGs and LARPs, I’m ashamed to admit that I was a snob about Magic for many years, but I’ve come to discover a very deep and fun game 20-years later. I’m a very casual player without a drive to spend spend spend and thankfully there are movements in the MtG community to support such players.
Haggis — The best two-player card game since Gin Rummy.
Favorite TV series about zombies
The Walking Dead
Favorite programming languages (or related)
Clojure, ClojureScript, Haskell, Datalog, Frink, Pure, Racket, T
Programming languages used for projects both professional and not
Clojure, ClojureScript, Haskell, Java, JavaScript, SQL, Bash, make, Datalog, Zeder
Favorite papers discovered (and read)
Production Matching for Large Learning Systems (PDF) by Robert B. Doorenbos
Extending the RETE Algorithm for Event Management (PDF) by Bruno Berstel
Still haven’t read…
Snow Crash, Spook Country, A Fire upon the Deep, Programmer avec Scheme, Norwegian Wood, The Contortionists Handbook and a boat-load of scifi
Favorite conference attended
Favorite code read
ALTO Smalltalk-72 — WJW
Life changing technology discovered
State of plans from 2012
Pescetarianism (redux) — huge fail (again)
Ariadne (the super-secret project) — eventually became my production rules system Zeder. Huge personal success!
More concatenative — year number two of huge failure.
Participate in the PLT Games — I was only able to participate once before Zeder took over my life.
No talks unless I have code to show — I consider this a rousing success as the few talks that I gave were code-heavy and about real projects that I was working on. I will continue this principle moving forward.
Plans for 2014
- Publish The Joy of Clojure, 2E
- Create a card game
- Create a dice game
- Create a board game
- Create a Looney Pyramids game
- Blog about Zeder
- Patagonia
- No talks without code to show
Goodbye
To my friend and colleague, whom I worked with for many years and learned so much of what I know about the art of programming — you will be missed. Rest in peace.
:F
-
As someone with a background in simulation I’ve felt that David’s idea has a real place in sim. However, I’ve not been able to put them to the test yet. ↩
-
While Fielding’s post helped, working closely with unbelievable architects like Tim Ewald, Russ Olsen and Michael Nygard truly imprinted the desire to incorporate architectural thinking into my own software processes. ↩
-
As a kid I vaguely remember a movie about some kid who had a computer that ran on a 9-volt battery who could write code that generated these materialized force-bubbles. He used these force bubbles for all kinds of fun activities but mostly to fly to space and visit aliens. I believe that computer ran a GreenArray and was programmed via colorForth. Does anyone remember this film? My memory and Google-fu fails me. ↩
-
Games that people will be playing 150 years from now. ↩
Re: Footnote #3
The movie you’re thinking of is one of my old favorites, Explorers! Starring Ethan Hawke and River Phoenix no less.
http://m.imdb.com/title/tt0089114/
by Adam on Dec 27, 2013 at 12:25:52
Thanks for sharing all of these. MTG + Malcom X + Programming. Saved. Happy New Year!
by Josh on Dec 27, 2013 at 12:45:38
For footnote 3, Explorers (http://m.imdb.com/title/tt0089114/).
by David Edmondson on Dec 27, 2013 at 13:03:21
The film you’re thinking of may be ‘Explorers’:
http://m.imdb.com/title/tt0089114/
by Karl Ward on Dec 27, 2013 at 13:28:19
was this the movie? https://en.wikipedia.org/wiki/Explorers_%28film%29
by primodemus on Dec 27, 2013 at 13:42:46
http://en.wikipedia.org/wiki/Explorers_(film)
Was it Explorers?
by Andrew on Dec 27, 2013 at 13:43:46
You’re not talking about Explorers, are you? I don’t know about the 9-volt battery or Forth, but it did have computer-generated force bubbles and aliens. http://www.imdb.com/title/tt0089114
by MJ on Dec 27, 2013 at 14:03:21
I live in Pucon. Stop by and say hello on your way to Patagonia. -Tom
by tvaughan on Dec 27, 2013 at 17:09:46
Can you explain more about why Fitbit was so life changing. Is it the sleep monitoring? The activity tracking? Something else? I haven’t tried one yet. Thanks!
by Bradly Feeley on Dec 27, 2013 at 17:44:12
Wow! Thanks for a great list of interesting stuff to read and explore!
As for games, are you familiar with the card game Set? I became fascinated with it a few years ago after reading a blog post by Peter Norvig on it, and I can really recommend it. The rules are very simple, and it is a quick game that adults and kids can play together. I ended up writing my own program for simulating game play, and found some interesting stuff on the probabilities of not finding a set: http://henrikwarne.com/2011/09/30/set-probabilities-revisited/
by Henrik Warne on Dec 28, 2013 at 08:50:49
Fogus, your excellent blog post gives further reason to believe that I have internet addiction. Really looking forward to reading the new JoC.
by Eric Anderson on Dec 28, 2013 at 10:11:04
Patagonia Argentina? (this side of the world) winter or summer?
by raphar on Dec 31, 2013 at 12:22:42
Patagonia is/was a project that I worked on that I would like to release some code for.
by fogus on Dec 31, 2013 at 12:26:51
oh, my mistake :).
by raphar on Dec 31, 2013 at 14:05:02