Saturday, March 23, 2013

Review: Wool

I picked up Wool because I'd read about the success of the author, Hugh Howey, in going completely independent, first selling the book as a serial on the Kindle store, culminating in selling the paperback rights to a traditional publisher while keeping the electronic rights to himself. The omnibus is frequently on sale at a good price, indicating that Howey understands how to market and price fiction in the digital/electronic era, unlike any of the dead-tree publishers he's competing against.

The book is an addictive read. The traditions of serial writing are clear, and Howey is a master of them: keep the cliffhangers coming quickly and in rapid succession, and never leave the reader in a state where he can get a breath in to get distracted by other pressing matters. The characters are wooden and there's next to no character development, but the world of an underground Silo following some sort of catastrophe (what exactly happened is never revealed, but we do learn that it's man-made) is the main focus, and the reveal happens at a pace that's compelling and fun to read.


What the book isn't, however, is great science fiction. There are too many plot-holes and things that don't make sense. For instance, the great villain is the head of IT, and we read about the mysterious PACT and that power for servers make up for the biggest power draw on the generators. This makes no sense, since as far as I can tell, there's nothing for those servers to actually do. If all you need is for the servers to store data, they can do their job just as easily powered down as up, and there's no reason for them to draw power. Furthermore, Howey clearly has no idea of the kind of machinery and equipment needed to run modern equipment. Even the manufacture of a single hard drive or flash chip requires factories and a sequence of production steps far larger than the Silos described. Most science fiction novels have characters as wooden as what you'll find in Wool, but most science fiction novels have much better science.

If you can ignore these huge gaping plot-holes (big enough to drive a Google data-center through), however, the book is a fun read. It's the perfect airplane novel, and I can therefore recommend it as such. I expect to buy Howey's other books before my next long flight.

Thursday, March 21, 2013

PSA: Do take the undergraduate compilers class

We just closed our hiring cycle for summer interns at Quark. During this period, we vetted tons of transcripts and resumes from top tier universities including CMU, Berkeley, and Stanford. Our hiring standards are demanding, and I personally did a lot of interviewing. Congratulations to Kevin and Kevin.

If you're a Cal student, I have very specific knowledge of the classes offered. Once upon a time, CS 162 (Operating Systems) and CS 164 (Compilers) were considered core classes in the CS curriculum. They were required of all CS graduates. In this day of "applications first" approach to CS, CS 162 is still required but CS 164 is now optional.

From the perspective of a hiring manager, however, taking CS164 early in your undergraduate career signals several very positive things:

  1. You're not intimidated by challenging classes that require lots of coding. The ability to do well in CS 164 depends very much on your ability to utilize tools, write a lot of code, and test and debug at a meta-level that none of the other classes require.
  2. You're not satisfied with understanding computers at the topmost abstraction layers. You want to dig beneath the abstraction layer of a programming language and understand how they work, down to the point of producing assembly for the machine to execute. The reason CS162 and CS164 were required in the past was that digging beneath those abstraction layers was highly prized for anyone doing any kind of work. (CS152 is very nice as well, since you now get down to the logic layer --- knowing how to do anything at the transistor level isn't necessary, but it's also useful)
  3. CS164 requires full use of almost all data structures you were taught in your data structures class. You'll build parse trees. You'll use symbol tables. You'll need to walk trees and do type-checking. CS164 integrates all the knowledge you got from data structures. Getting this in early in your career will only benefit you.
  4. People who take CS164 will not balk at writing a parser, or even designing a whole new programming language or DSL in order to better solve a problem. This approach of meta-programming (or Meta-Object Protocols) is very useful and the skills necessary to implement it in a non-LISP environment are only available for people who know how to write compilers and other language translators.
I know it's fashionable now to deride the traditional computer science education with its emphasis on hardcore topics. But when I interview students with the traditional computer science education versus students without, the difference is clear: the former are much better problem solvers, and write better code. Ultimately, they'll make better hires and will get more and better job offers.

So for those at Cal: take CS162 and 164 as early as you can. For those elsewhere, please don't neglect your systems classes. They'll make you stronger engineers.

Wednesday, March 20, 2013

Review: The Signal and The Noise

I've been a big fan of 538 and Nate Silver since the 2008 elections. The Signal and the Noise is his book about predictions, the state of the art, how they work, how they don't work, and the intersection of those concepts along with his interests. Nate Silver's a very smart guy, which means that his interests are broad and fascinating.

What comes through the book is Silver's humility --- he claims that he was extremely successful because political predictions as set by TV pundits and Fox News sets a particularly low bar that's easy to beat if you just do a pretty good job. Note that Silver's models, however, beat the so-called prediction markets like InTrade, for instance, which means that not only did Silver beat the TV pundits, but he also beat fairly size-able markets with real money sitting on the line.

What's fascinating about the book is we see how Silver sees the world through the prediction lens. He even treats Chess as a prediction problem, and his write-up of the Kasparov vs. Deep Blue matches gave me insight into the matches that I didn't know prior to reading his book.

Silver also covers epidemic modeling, weather forecasting (including hurricane forecasts), earthquakes, stock markets, economic bubbles, sports, poker, and global climate change. His explanation of Bayesian reasoning, its' history, and application in the modern world is as clear and enlightening as any I've seen, and his considered understanding of our prediction failures is profound and insightful. Fundamentally, weather forecasting has been the most successful of the disciplines examined in the book, and Silver explains why.

The biggest weakness of the book is one that a perceptive reader will see as a theme over and over again. Fundamentally market incentives skew predictions. For instance, the political pundits have incentives to make big predictions and tell stories that are wrong, because they're more entertaining to the masses than Silver's nuanced analysis. Economists, mutual fund managers, and all have incentives to be wrong conventionally than to be right unconventionally. It is because of these distortionary effects that many of our predictions fail, rather than because we do not have the tools to do the job correctly, or because Bayesian reasoning isn't widely utilized.

Having said that, the book is fascinating, interesting, and enlightening. It's the best book I've read all year, and hence comes highly recommended.

Sunday, March 17, 2013

Review: Teach Your Children Well

After reviewing a book about the under-privileged kids amongst us, I had to go read a book about the very other end of the spectrum --- the over-privileged, over-scheduled, ultra-achieving kids in the San Francisco area. Teach Your Children Well covers mostly the ails of the upper-middle class and their children.

These include overly packed schedules, worrying about bullying and cyber-bullying, whether they're the best piano player and able to get into Carnegie Hall, etc., etc.

Madeline Levine advocates taking a holistic approach to the child, noting that it's far better for children to grow up to be good people rather than necessarily great mathematicians, engineers, doctors, or artists. She clearly lives in San Francisco, where most parents worry much more about their children's math classes than their ability to draw or play sports.

While Levine clearly has a good heart, I'm not sure her book can be very effective. It's one thing for her and her patients to abandon the rat race or paper chase, but unless/until society values ethics more than a big paycheck, the bankers on wall street will still command more respect than the people who did not cheat. That's what's driving society, and it has nothing to do with parents being pushy.

What's more, as I've noted over and over again on this blog, the world just simply does not need more English major journalists. Such journalists and writers actually do more harm to the topics they cover than if they did not exist, and I'm not sure a society should value such work. So to that extent I agree far more with the parents who think that their daughters should actually work hard at Math rather than say, "But I'm so much better at fashion."

I wanted to recommend this book. I certainly have no intention of pushing my son into things he doesn't like for the sake of being able to brag about piano recitals or other some such nonsense. But the entire book reeks of privilege and Levine lives in a society full of trust fund babies and people who not only have therapists but also have multiple therapists for their children. Such children will live in privilege regardless of how little Math they do and how little Science they know. But children of immigrants will have no such luxuries, and if you come from such a background you might find Levine's stories and anecdotes more than a little detached from reality. Hence: not recommended.

Saturday, March 16, 2013

Wharton Business School Presentation

I was the lunch speaker today at the Wharton Business School in San Francisco. The school runs an executive MBA program, with about 100 students a year. It's a 2 year program running mostly on Fridays and Saturdays. I gave a 40 minute talk at high intensity because I prepped for an hour with questions.

One question that came up was where can you learn to code? While I'm not a big fan of the various programming boot camps for professional programmers, for MBAs, it could very well be just the thing. The school itself had fantastic facilities, and the lecture hall was the best room I'd ever given a presentation in, with stadium-style seating and the lecturer standing in the pit subject to questions all around. Definitely an experience to be had.

As usual, the above slides are sanitized for public consumption. The presentation given to the business school students is a lot more peppered with interesting case studies from industry. Having said that, with my new full time job, my time for speaking engagements is a lot more limited and I will curtail them going forward.

Friday, March 08, 2013

Review: How Children Succeed

In this age of hyper-parenting, queuing up and applying to pre-schools, one would expect How Children Succeed to be a book full of stories about tiger-moms and their high achieving scions. Refreshingly, this is a book about the students and families struggling to get out of poverty.

We get a smattering of mention of various studies, culminating in an introduction to the Tools of the Mind program. Strangely enough, my affluent neighborhood is full of Kumion cram schools as well as Montessori specialty kindergartens, but nobody brags about their Tools of the Mind curriculum. It's very likely that the tools of self-discipline, planning, and taking action is cultivated by upper middle class households as a matter of course, though one would think that something like Tools of the Mind would be useful no matter which strata of society you come from.

We don't get any expositions of music prodigies (thank goodness!), but instead get a long chapter about one teacher's attempt to successfully teach her disadvantaged kids to play chess and beat the upper class private schools in competition. It's a mesmerizing read, and worth your time. The punchline is that she coaches one of her star chess players on academics and absolutely fails to make a dent, showing you that success in one aspect of life doesn't get you far anywhere else.

Does this book teach you something you don't already know? Not really. It's a typical English major book, lacking pointers to studies as well as deep interviews with people who explore the development of executive function in children. But it's worth reading anyway. Recommended.