Monthly Archives: August 2014

Book Review- Engineering Happiness

Engineering Happiness: A New Approach for Building a Joyful Life
By Manel Baucells and Rakesh Sarin, 2012

engineering happiness

Maria and I were already pretty aware that happiness is what we should strive for in life, not money. This book confirmed a lot of my suspicions about what brings real happiness in life.

peanuts27330500070108

I was delighted to see, on page 6 of the introduction, the line “Our approach to studying happiness is rooted in the literature of decision analysis and management science.” That’s what I do!

The book talks about managing shifting expectations, understanding the different kinds of “goods” in life (basic, adaptive, cumulative, conspicuous, and reframing), and focusing on the positive. I thought it was well-written and a fast-read, but a lot of the concepts from psychology and behavioral science weren’t new to me. I’d recommend this book to people who feel like they want to be happier and are not well-versed in the current happiness research.

Fall 2014 Schedule

Update (8/26/14): Dropped Big Data Analytics for Web and Text because I knew too much of the material and because the teacher/class was un-inspiring.

My coursework for Fall 2014 at IU:

Full Semester Courses:
BUS-G651 Econometric Methods in Business, Wednesday 4-7

First Half of Semester Courses:
BUS-K603 Probability, Thursday 9-12
BUS-P604 Service Operations and Process Design, Thursday 2-5

Second Half of Semester Courses:
BUS-K604 Stochastic Models, Monday/Wednesday 9:30-11
BUS-K635 Special Topics in Decision Science (Service Operations), Thursday 2-5

Book Review- The Great Stagnation

The Great Stagnation: How America Ate All the Low-Hanging Fruit of Modern History, Got Sick, and Will (Eventually) Feel Better
Tyler Cowen, 2011

great stagnation

Quick read. Interesting comments on the idea that technological innovation has slowed, which has stagnated the U.S. economy since the 1970’s. Has the ring of truth to it. I would recommend it and I will read the follow-up, Average is Over: Powering America Beyond the Age of Stagnation, soon.

Project Updates- August 21, 2014

This is the way the summer ends. Not with a bang, but with a whimper?

end-summer-5681856-700x325

Anywho, I have made enough progress on two of my projects over the summer that I feel confident in presenting them this fall. I will present a presentation and a poster at the Fall meeting of the Cincinnati/Dayton chapter of INFORMS on August 29th. My presentation is titled “Incentive-Compatible Multi-level Triage in Emergency Medical Services” and my poster is titled “Using Past Scores and Regularization to Create a Winning NFL Betting Model“. Both are in the initial stages of being written into paper form. I was hoping to have the papers written before summer ended, but it didn’t happen.

Things that did happen over the summer: Maria and I got engaged in Colorado. We moved from our condo on the south side of Bloomington to a townhome on the northwest side (basically Ellettsville). We spent a lot of time packing at the old place and unpacking at the new place. We took a weeklong vacation with my mom and sister to the Outer Banks in North Carolina. I experimented with working at home, but found that I should probably go into the office almost every day in the future.

Two Links Tuesday- August 19, 2014

Humans Need Not Apply– Great discussion of automation and robots and how they may affect the future job market. Highly recommended.

Nobody Ever Gets Credit for Fixing Problems that Never Happened– Heroic efforts to solve a problem at a last second gets the hero rewarded with a promotion. Soon, managerial ranks are full of people that “are good in a crisis” and who value similar work. As a result, no one ends up doing the incremental improvement or maintenance that keeps crises from happening in the first place. It’s a vicious cycle.

Semi-Death of the “Travel” Post Category

I had in mind at the start of the summer that I would write Travel posts for this blog on Friday afternoons. That didn’t really happen. I can’t compete with my fiancee’s website. Maria’s travel/adventure website is much better and more thorough than anything I could write, so check that out to see her view of our travels. Most, but not all, of her writing is about experiences common to both of us.

If I have something that needs to be written from my perspective (like the engagement story), I will write a Travel post. But it will be infrequent.

Blog posting schedule will be updated accordingly.

Book Review- Mathletics

Mathletics: How Gamblers, Managers, and Sports Enthusiasts Use Mathematics in Baseball, Basketball, and Football
By Wayne Winston, 2012 edition

mathletics

I met Wayne in October 2013. I knew that I had one of his books about operations research, but didn’t know much about him. After meeting with him and doing a little research on my own, I’ve learned that he has written an infinite number of books and that he is very skilled at Excel and at sports analytics (among many other things). This book gives intuitive ways to model sports questions and perform analysis with Excel. Example questions include:
-Should we go for the one-point or two-point conversion?
-Should we foul at the end of a basketball game in which we are up 3 points?
-How do different baseball ballparks affect game outcomes?

I’m not a huge fan of analysis in Excel, but Wayne is a wizard at it. I prefer to do a lot of customized number crunching via a programming language (Python/R/Matlab), as opposed to massaging Excel to get what I want. However, this book gave me a lot of ideas for future analysis. It’s kind of a tough read, in that it has 51 chapters over 340 pages and starts/stops thoughts pretty quickly. There are also a lot of editing mistakes in my version, which can sometimes be confusing if you’re not paying attention. I read Mathletics over the span of about 8 months, starting and stopping frequently. I’m glad I finished it, though, because some of the best chapters are in the last part of the book.

Book Review- On the Market

On The Market: Strategies for a Successful Academic Job Search
By Sandra Barnes, 2007

onthemarket

Written for grad students, this book discusses the finer points of crafting a great job application and finding the best teaching/research fit at your first job as a professor. I found Chapter 3 (Maximizing the Grad School Experience), Chapter 4 (The Application Process, especially the section about the Application Packet), and Chapter 5 (The Teaching Portfolio) to be the most useful. I had never heard of a teaching portfolio before reading this book. When I get to year 3 or 4, I will probably re-reference this book to ensure I have all my material ready for a job hunt. Highly recommended for grad students looking for academic postings.

Remember, publish or perish.

Code Monkey Monday- Exec(uting) and Eval(uating) Strings in Python

You want to include a little bit of dark magic in your Python coding, right? Well, read on.

More times than I care to admit, I have situations in which I want my code to write more code for me. Because either I am lazy or I need to be tricky. A recent example: I needed to create and populate a list of lists for each week of the NFL season to contain some of my analysis results. With normal coding, I saw two options: copy paste my code 21 times (17 regular season weeks and 4 playoff weeks) or create a confusing list of list of lists of results. Because the analysis was consistent over the weeks, there was a third option that I preferred: using the exec() and eval() statements.

exec(string) takes a string and executes it like it was a full line of code. So exec(“list”+str(week)+”=[]”) would execute different things depending on the value of week:
If week==1, the line would be: list1=[]
If week==2, the line would be: list2=[]
etc. It basically substitutes the value of week into the string and then executes what the string says.

By cycling through the weeks of the season, I created an empty list for each week using exec:
for week in weeks:
exec(“list”+str(week)+”=[]”)

2 lines of code to create 21 lists instead of 21.

I later populated the list with something like: exec(“list”+str(week)+”.append(results)”)

The eval(string) turns the string into code and then allows it to be used in a larger code statement. For example: output+=eval(“list”+week+”[i]”)
This creates the code line
output+=list1[i]
if week==1. In this way, I can add the i’th component of each week’s list to some output string that I saved.

There are more exotic uses of exec() and eval() that I’ve used in the past. Someday I’ll write about how we created code to parse and evaluate any Google Protocol Buffer (kind of like xml) at Booz Allen.

Disclaimer: exec() and eval() may not be “good practice” for a professional coder, but I’m not a professional coder and just create code that works for me.