Welcome to the IdeaMatt blog!

My rebooted blog on ... who knows. Feel free to get in touch with me if you have thoughts, questions, or want to get involved. Cheers! -- matt


Using Grails to Make a Simple RC Weather App

I've been flying remote control helicopters (the acrobatic collective pitch ones, not 'drones') for over three years now, and I still get a lot out of the hobby. Recently I had an idea for a simple site/app that lets outdoor hobbiest get an at-a-glance view of how good the hourly weather looks for the extended forecast in their neck of the woods, and I've decided to implement this using Grails (with its somewhat steep learning curve). Another group at UMass uses it, and this app idea seems like a good candidate for learning Grails. I hope to blog a bit about the process, so here goes.

Goal: Show a summary of weather conditions for particular US zip code that quickly indicates the desirability of outdoor flying conditions in the next ~seven days. Along with the zip code, input would include (or default to) minimum temperature (optionally factoring in wind chill - say 40 °F), maximum wind speed (say 8 MPH), maximum precipitation potential (say 10%), and darkness.

User Interface: I haven't given much though to the UI, but maybe I'll start with a simple table of days on the x-axis, hours on the y, and cells that contain a visual encoding of the hour. This might be a simple "stoplight" red, yellow, and green, or something more exciting like Chernoff faces (via Edward Tufte). Hovering or clicking might show details.

Similar apps/sites: I was surprised that I didn't find many similar apps after a moderately-serious search. Weather Wardrobe demonstrates the basic idea for the current forecast (enter zip code, get an purpose-specific summary, how to dress appropriately in their case (e.g., "If you are in 01002, you should wear a heavy jacket over long sleeves and pants. Put on a hat and gloves.") I like it. The other is an iOS app called Windsock that's sophisticated but that is unavailable. It looks like they've nailed the concept, though.

This app may not be broadly exciting, but it'll be a fun excuse to learn Grails and maybe provide something of value to the hobby.

(Image credit: Discussing the Weather by Hartwig HKD)


Returning to my IdeaMatt Roots

With this post I'm back to blogging, at least a little. :-) My nascent plan is to go back to my "IdeaMatt" roots and widen the topics to include technical posts (I've been working in a UMass research lab for the last three+ years), atheist/skeptic/rational thinking, and maybe some Experiment-Drive Life/Think, Try, Learn ideas. Generally I'm still enthusiastic about ways to use our brains to be happier, better people and Earthlings.


Hey - I'm published! Check out "Mindhacker: 60 Tips, Tricks, and Games to Take Your Mind to the Next Level"

A gigantic congratulations to Ron and Marty Hale-Evans on their great new book, Mindhacker: 60 Tips, Tricks, and Games to Take Your Mind to the Next Level. From the Wiley press release:

Ever wish you could tinker with your brain the way you can with your computer, to make it run faster, stay better organized, and get more done? Upgrading your brain's "software" can dramatically escalate your personal productivity, improving such skills as efficient learning, personal organization, time management, mental control, creativity, and decision-making.

For those looking to improve their mental skills, authors Ron and Marty Hale-Evans deliver a witty, compelling, and action-oriented cache of personal productivity tips and techniques in Mindhacker: 60 Tips, Tricks, and Games to Take Your Mind to the Next Level (Wiley; 978-1-1180-0752-5; September 2011). Readers can tune their brains to peak performance by using this array of clever, practical techniques founded in current research.

I'm fond of this book for three reasons. First, I loved Ron's book Mind Performance Hacks: Tips & Tools for Overclocking Your Brain, which, if I adopted a tenth of the techniques would make me a genius. Second, I had the pleasure of interviewing Ron in my post A conversation with Ron Hale Evans, author of "Mind Performance Hacks", which I enjoyed very much. But most exciting is that Ron asked me to contribute not one but two (!) hacks to this new book:

  • Hack 21: Get Control of Yourself. Lost control of your life? Get back in the driver’s seat with Jetpack, the pocket-sized system for managing your work and freeing up your brain for better things.
  • Hack 54: Think, Try, Learn. Live life as a series of scientific experiments.

Working with Ron and Marty was a pleasure, and it was quite an experience having professionals help me create writing that was tight and industrial strength. I'm tickled pink to be included.

Their product page is here, and the Amazon link is here if you want to buy a copy. And as a special treat to you, dear reader, you can download the PDF of Hack 54.

Happy experimenting!




Keeping motivated in your self-tracking

Measuring West I recently received an email from someone having trouble keeping up with her experiment. While there is lots of general advice about discipline and motivation, this got me thinking about how doing personal experiments might differ. Following are a few brief thoughts, but I'd love to hear ways that you keep motivated in your quantified self work.

The desire to get an answer. The main point of an experiment is to get an answer to the initial question. "Will a Paleo diet help me manage my weight?" "Does talking less bring me closer to my kids?" Maybe the principle at play is that experiments which motivate start with great questions.

Built-in progress indicators. If you've set up your experiment well, you should have measures that come in regularly enough to keep you interested. This is assuming, of course, that you care about the results, i.e., that you've linked data and personal meaning (see below). But unlike other types of projects, maybe we can use the periodic arrival of measurements to stimulate our motivation, such as celebrating when new results appear.

The joy of satisfying a mental itch. Curiosity is a deep human motivation, and experiments have the potential of giving your brain a tasty shift - such as when you are surprised by a result. I especially like when a mental model of mine is challenged by a result. Well, sometimes I like it.

Sharing with like-minded collaborators. At a higher level of motivation, experimenting on yourself is an ideal framework for collaboration with folks who are either 1) interested in your particular topic (e.g., sleeping better or improving your marriage), or 2) are living an experiment-driven life. It is encouraging to get together with people to share your work, and to receive support, feedback, and ideas. Of course it feels good to so the same for them.

Desire to make a change. Finally, if we come back to why we experiment, there should be a strong self-improvement component to what we are tracking. My argument is that, ultimately, it's not about the data, but about making improvements in ourselves for the purpose of being happier. If the change you are trying is not clearly leading that direction, then it might make sense to drop it and try something more direct. Fortunately, with self-experimentation there is usually something new you can try.

Underlying all of these, however, is the fact that the work of experimentation takes energy. Every step of an experiment's life-cycle involves effort, from thinking up what you'll do (creating a useful design), through running the experiment (capturing and tracking data), to making sense of the results (e.g., the "brain sweat" of analysis). Given our crazy-busy lives, there are times when we simply can't take on another responsibility. So if you find yourself flagging and losing interest in one of your self-experiments, then maybe that is itself some data. Thoughts?

[Cross-posted from Quantified Self]


What makes a successful personal experiment?


As I continue trying to stretch the concept of experiment so that a wide audience understands applying a scientific method to life, I struggle with defining success. While the trite "You can always learn something" is true, I think we need more detail. At heart is the tension between the nature of experimentation's trial-and-error process (I prefer the term Edisonian approach) - which means outcomes are unpredictable - and our need to feel satisfaction with our work. Here are a few thoughts.

Skillful discovery. Rather than being attached to a particular outcome, which we have limited control over, I've found it's better to focus on becoming an expert discoverer and mastering the process of experimentation. Because you have complete control over what you observe and what you make of it, you are guaranteed success. Fortunately, there's always room to develop your investigatory skills.

Fixing the game. At first it might seem contrived, but carefully choosing what you measure can help implement a scientific perspective on success. For example, instead of framing a diet experiment as "Did I lose weight?," it is more productive to ask "How did my weight change?" The former is a binary measure (losing weight = success, not losing = failure) and one that you don't necessarily have control over. After all, you are trying an experiment for the very reason that you don't know how it will work out. The latter phrasing is better because it activates your curiosity and gives you some objectivity, what I call a "healthy sense of detachment."

Improving models. As essentially irrational creatures, we run the risk of not questioning what we know. Updating our mental models of people, situations, and the world helps us to be more open to improvements. And the leading edge of that is the conflict between expectation (predicted outcome) and reality (actual results, AKA data). The quantified way to work that is by explicitly capturing our assumptions, testing them, taking in the results, and adjusting our thinking as necessary. This also leads to better predictions; from The Differences Between Innovation and Cooking Chili:

Of course, all of the experimental rigor imaginable cannot guarantee success. But it does guarantee that innovators learn as quickly as possible. Here, "learn" means something specific. It means making better predictions. As predictions get better, decisions get better, and you either fail early and cheap (a good outcome!) or you zero in quickly on something that works.

Getting answers. Another way to guarantee success is by going into an experiment with clearly formulated questions that your results will answer. Structured correctly, you know you will get answers to them. I think of it as regardless of what happens, you have found something out. (Hmm - maybe thinking of the process as active discovery is a richer concept than the generic "you learned something.")

Designing for surprise. If the product of your experiment was not very surprising, then maybe you should question your choice of what you tried. Exciting experiments probe the unknown, which ideally means novelty is in store. Fill in the blank: "If you're not surprised at the end of your experiment, then __."

Zeroing in. Because we usually dream up experiments with a goal in mind, chances are we come out the other end having moved some amount in the direction of attaining that goal. Progress is a success, so give yourself a pat on the back.

Taking action. Finally, each experiment is a manifestation of personal empowerment, which is a major success factor in life. While health comes to mind (do difficult patients have better results?), I think generally the more we take charge of our lives, the closer we get to happiness.

What do you think?


[Cross-posted to The Quantified Self]