Like-to List: Everyday Optimization
- Joe
- Jan 20, 2019
- 6 min read
Everyday life is rife with decisions. Our daily routine involves so many actions that we can decide or relegate to routine. Every so often, I’ll find an article about how someone dresses the same way each day (Steve Jobs’ turtlenecks and jeans come to mind), have the same morning routine, and eat the same food. They work out at the same time, in the same place, doing the same exercises.
My first impression was to ask if this ever got boring. I mean, doing the same thing every day seems like it would just put you on autopilot. But I believed the stuff I was reading, so I started to implement it. I came to some conclusions quickly.
The main benefit was that my habits became a lot easier. Not having to make decisions made it easier for me to launch into things, especially when they were activities I was reluctant to participate in. The more I bought into the routine, the less I had to think about what action I was going to take. It took less energy to get started every time, and I was more able to focus on whatever task was at hand.
But this kind of buildup could very quickly become disorienting when I was thrown off my routine. It was like I was sacrificing my ability to dynamically shift my habits to adapt to small changes. If I had a late night one day, my routine didn’t have enough room for me to adjust. If my normal study schedule needed to be changed because an assignment took longer than usual, or if something came up in my personal life or extracurriculars, my habits weren’t equipped to handle it.
On top of that, I started to go through the motions. I found it difficult to stay present and mindful to what I was doing through my day, almost like I was on autopilot. The routine felt like time I sacrificed to mediocrity and disinterest, with the redeeming quality of also trying to minimize it.
The clearest way to see all of this was in my workout routine. Working out in the morning was easy to continue doing once I started. But if I had to stay up late to work on a group project, I had to choose between getting enough sleep and sticking to my schedule. Plus, doing the same exercises every morning was so incredibly boring.
Then, last summer, I started using the Nike Training Club app. I’m not going to tell you it changed my life, because it didn’t. But it made my workouts significantly more interesting. The workouts involved different kinds of exercises, different lengths and combinations of them, and for different amounts of time. The intensity varied along with the muscle groups that I was training. But every time, I felt like I’d gotten a good workout in.
And the best part is I didn’t have to decide what I wanted to do. The app made me a six week plan of workouts based on some inputs. Every day, I had a workout already selected, and the app would notify me to remind me to work out that day. The variety of each workout made them more engaging, and a lot more enjoyable. It struck a good balance: I didn’t burn energy making decisions but I also wasn’t going through the motions. It gave me a dynamic routine: the routine itself was constant, but the content of that routine had degrees of freedom to stay interesting.
This gave me an idea. Can I do this in other places? After a while, the workouts in the app got repetitive. I’m sure there’s a way to generate a quasi-infinite amount of workouts with different combinations of exercises in different orders and at different durations. Could I apply this same kind of dynamic routine to other parts of my life?
It didn’t take long to start identifying places where this kind of tool could be useful. Developing unexpected flavors in a recipe, or creating a diet with some basic ingredients (a simple version of the diet problem was actually one of my first exposures to optimization). I could use the same principles to optimize my outfits, removing the choice without eliminating the variety.
The most developed of these ideas has to do with time management. After seven semesters of college with some decent academic success, I’m confident in my ability to schedule my time. I know that I do my best, most difficult work sometime in the late morning and early afternoon, and that by 7 pm on most days I just can’t focus on difficult concepts. This is always complicated by my other obligations; meetings for organizations, going to office hours (with times I can’t control), and social “obligations” (in the loosest sense of “obligatory”). Every decision about when to do certain things comes down to a tradeoff, with the goal of gaining the most “utility” from my time. For example, a conflict between happy hour and doing homework on a Monday afternoon always results in me cracking open a textbook; I know that’s a productive time for me to be working, especially since my friends are often also busy at that time. Likewise, Friday night (especially after a difficult week) tends to be less productive, and more of my friends are free to spend time with. But this calculus gets tricker on Saturdays, Wednesdays, and Thursdays, when there tends to be more variation in my assignments, in my social circles, and in my extracurricular obligations.
Each of these is a choice; I can weigh the urgency of my assignments against whatever fun I’ll have doing something else. But doing this every time gets old. Given my belief in an “optimal” decision and the ability to apply principles quantitatively, there must be a way to organize my time effectively while spending less time doing it. At first glance, this is a simple program in python. A script could take calendar files, with a schedule of time commitments, and parse them (like many things in python, there is an open source library for this), along with a task list with a variety of data, and use an optimization algorithm to assign tasks to free time. This could take into consideration the amount of time necessary to finish a task, as well as how important it is to be uninterrupted.
This alone wouldn’t make a big difference in my daily life. Maybe it would save me ten minutes a day. But the benefit of this is scaling it both in time and in the amount of people using it.
By doing some careful data tracking, I could keep track of how the app is working. For example, I could look at the data and begin to figure out how accurate my analysis of productivity is; am I right when I say I have the best concentration around noon? Doing this myself would help me tweak the weights in the optimization algorithm to more closely match reality when it comes to optimal productivity. Alternatively, I could use these with some other analytics methods to have the computer tweak them for me. Over time, the model would get better and better at giving me my most productive schedule, one that maximizes the quality of my work while minimizing the time it takes.
So far I’ve just described a sort of digital assistant. For all I know, programs like this exist already. But the nice thing about programming is scalability. This is the eventual goal of the program I’m describing. The most common thing I hear in every field is a hatred of meetings. People view them as too long, often cutting into their most focused time. A program that optimizes one person’s schedule could minimize this problem by considering everybody’s tasks, projects, and personal preferences. Analyzing these things together, the model could optimize meetings times in a dynamic way that reflects the ebbs and flows of employee workload.
There’s already precedent for it. Airlines are a classical example of applying principles to large scale problems. They have to balance the timing of flights with the need of crew members, building in flexibility for small random changes in flight times (from minor factors like boarding delays) and large changes in flight times (from major factors like weather patterns). In the process, they seek to fill each flight without overflow, take care of the people on standby, manage support staff, optimize fuel economy with their flights, meet demand without supplying too much, and maintain a fleet of highly engineered and sensitive aircraft. Each of these issues demands a balance of many principles while allowing a small margin for error.
My project would be decidedly simpler but far more universal. Any company that (by choice or otherwise) operates on an inconsistent schedule could use this kind of tool to optimize their workflow, helping employees stay more productive. Given that most offices follow similar formats in how they work, there’s a lot of versatility from a simple idea.
Now, before I go full on infomercial on you, I should clarify something. This idea sounds good now, but will always be limited by the quality of the product. And as of now, I don’t have the time, experience, or skillset to build something like this. So for the time being, it’ll stay on the back-burner. Nonetheless, I think it’s an interesting idea that proves the wide applicability optimization and analytics tools can have for companies beyond their traditional applications.
Comentarios