2018: Books of the Year

Happy New Year, friends! It’s time for my annual list of Books of the Year. I didn’t meet my book goal this year: I was on track for most of the year, but I got totally absorbed in the Hour of Code this year which took me a bit off track. On the upside, we shipped Dance Party, my favorite Hour of Code tutorial yet. My usual disclaimer applies: I’m not claiming they’re the best books I read this year (whatever that means), but they are the books that changed my thinking, stuck with me long after the final page, and that I would wholeheartedly recommend to others. As usual, they’re presented alphabetically by author.

Read the rest of this post

Political Ideology Scores: Comparing Models

Last summer, I wrote a piece on political ideology in the Washington State Senate, and another on my methodology for computing those ideology scores. In the year since, I’ve sunk deeper into political science twitter. A few days ago, I came across a tweet that said “New update to our state legislative ideology data,” and this piqued my interest. In my initial searches last year, I had trouble finding individual-level ideology data for the Washington State Legislature, but sure enough, Boris Shor and Nolan McCarty have taken on the huge task of pulling together an up-to-date data set of state legislators and ideology scores based on Vote Smart’s Political Courage Test.

I was really thrilled to find this data set, and I wondered: how well do the ideology scores in this data set support/refute my conclusions from analyzing roll call votes? I downloaded their data for Washington State Senators and did some analysis to compare the results to mine.
Read the rest of this post

2017: Books of the Year

What a year, eh? 2017 was a long, challenging year for many people –- myself included. That said, there were some great things that happened this year: Ray and I were able to buy our first home, I made new friends and grew closer to old ones, and I actually exceeded my book goal! Last year, I wrote a post about my top three books of 2016. This year, I’m continuing the tradition. All of these books get the Official Ryan Stamp of Approval. I’m not claiming they’re the best books I read this year, but they are the books that made an impact and stuck with me, and that I would wholeheartedly recommend to others. It’s a very politically-oriented list this year – a sign of the times, I suppose. Without further ado, here are the three books, alphabetically by author.

Read the rest of this post

Mathing My Way Through Football Season

I don’t know much about sports. I played tennis growing up, I used to “watch” football games in college, and I know that Ty Cobb has the highest career batting average in Major League Baseball (I read it somewhere), but that’s about where my knowledge of sports breaks down. I try not to have a snide attitude about it, I just didn’t really find it very accessible – it was hard for me to make it feel relevant to me.

A couple of years ago, my coworkers started a March Madness pool at the office and I was feeling a little left out. I realized after hearing people going on about free throw percentages and win/loss ratios that there is a lot of data out there about sports, and figured that might be my in – could I use data to win the office March Madness bracket contest? Could I put all those sports fanatics to shame using the powers of computer science and mathematics?!

Read the rest of this post

Partisanship in Pizzaville: Modeling Legislative Positions

After my last blog post, a few of my friends were curious about how I reduced all those votes down to two dimensions. I did kind of gloss over the details last time, so I figured I’d take a stab at explaining my methodology.

Last time around, I pulled all the roll call votes for the Washington State Senate in 2016, and I made a big matrix of senators and their votes. A matrix with over 25,000 cells is not exactly easy to process, so I reduced the dimensions to two, resulting in this scatterplot showing the partisan divide:

How can you take votes on 402 bills and turn it into a two-dimensional graph? Essentially, we’re converting each senator’s list of 402 votes into two new “features.” Those features are all their votes smushed together to give us new points that fall into a lower dimensional space.

How do we reduce dimensions and figure out which votes to use in our new features? Well the key thing to consider is this: all bills are not created equal.  Some bills (and the votes on those bills) tell us more about a person’s politics than others. Before you read on, consider this: if the senate votes unanimously for (or against) a bill, does that tell us much about the differences between the senators that voted on it?

Read the rest of this post

Political Birds of a Feather

I’ve been thinking a lot about political divisiveness lately. I suspect I’m not alone in this. Who can say why I might be feeling this way? On top of general brooding, I recently finished David Daley’s book on redistricting and gerrymandering, so I have congressional districts on the brain. I started wondering a bit about our state legislature here in Washington. I know a little about state politics – I like to think I’m a relatively informed voter –  but as I started doing some reading, I realized I didn’t know much about the people in our state legislature. I started to wonder, how different are they on the issues?

Read the rest of this post

Q&A: Prototyping and Design at Code.org

I got to talk with the folks at Justinmind about how we approach design, prototyping, and user testing at Code.org. You can check out the feature over on their blog.

Oh, and we’re hiring!

2016: Books of the Year

I didn’t do as much reading as I would have liked in 2015 – It was a roller coaster of a year for many reasons, and at the end of last year, I felt muddled and a little out of sorts. I don’t consider myself a big believer in New Year’s Resolutions, but at the start of 2016 I did make one pledge to myself. I decided to start taking reading seriously again, and to make time to read wholeheartedly every day. I also set a book count goal. We’re nearing the end of the year, and, while I didn’t meet my book count goal, I think I did an alright job.
The renewed focus was good for me: at the end of 2016 I feel more curious and more well-rounded. I’m thinking more clearly, and I’m feeling more reflective. In that spirit of reflectiveness, I present Ryan’s Super Official Top Three Books of 2016. These aren’t necessarily the best (what does that mean, anyway?) books I read this year, but they are the three books that had the most profound impact on me this year. I often find myself thinking about them or referencing their core ideas. They all get an official recommendation from me.

Read the rest of this post

A New Professional Endeavor: Coding with Kids

Back in October, I left Microsoft after 3 years as a PM in the Office organization. I learned a lot in my time at Microsoft, and they were very good to me. However, I spent a lot of time in 2014 taking stock of my life, career, and goals and had realized that it was time to look for something new. I had these vague notions that I wanted to work closer to the education field, and perhaps with a smaller team, but I wasn’t sure what that meant. I worked with my managers to arrange a (hopefully) smooth, orderly hand-off over the course of a month.

I left Microsoft without a job offer in hand, prepared to take a few months off to wander in the desert. I planned to recharge my batteries by cooking, reading, writing, teaching, and thinking a lot about who I wanted to be for the next two to five years. During this time, a friend of mine who knew I was interested in teaching introduced me to Marek Brejl, founder of Coding with Kids. As I got to know Marek and learned more about the business, we realized there was a good opportunity for me on the team. I’m excited to say I am joining the team at Coding with Kids as a Program Manager. Read the rest of this post

Predicting the Future: Schedules, Simulations, and Software

During my last couple of years at Microsoft, the Office organization was making a broad transition to a new, more agile engineering process. It wasn’t exactly textbook agile, but it was a lot more flexible when it came to changing requirements and iteration. It was an admirable change, and I’m not sure an organization the size of Office could make a wholesale change to a “truly agile” culture in a short time like that. However, a result of these changes was that we all had to rethink how we approached things like scheduling and ship-readiness. Under the new process, we were operating on a schedule of regular, more frequent “releases” (in the early days, this just meant “semi-stable builds”), each consisting of a fixed number of sprints.  There were a ton of tools in place from previous releases to manage the schedule, but since our team (and the organization as a whole) was new to this, we knew it would take some tweaking to get it right.

We tried many different methods (and I won’t go through them all here), but in the feature areas I was PMing, I found some success using randomized historical models to predict delivery dates. I didn’t invent the techniques in this post (though I modified them a bit to suit our needs), but I hope it serves as a good explanation of how you can use Monte Carlo Methods (and simulation in general) to better predict the future. (Okay, that sounds ridiculous.)
Read the rest of this post