Angela is a UX researcher at Electronic Ink in Philadelphia where she facilitates good user experiences for enterprise applications and systems. Occasionally she speaks on topics of usability, accessibility and designing for low literacy. She has written for A List Apart, Contents Magazine and is co-author of the chapter on low literacy in Eye Tracking in User Experience Design.
You can find her on Twitter at @angelacolter.
I’ve spent about 100 hours of my free time trying to solve this problem. I am no closer to a solution than when I started. And I am ready to give up.
Instead of making my annual vow to "eat better" or "exercise more" my New Year’s resolution this year was to learn a new skill. I’m a user experience researcher who focuses on qualitative data and I was feeling the need to strengthen my understanding of quantitative stuff. For my new skill I picked data science.
I took a massive open online course (MOOC) introducing me to the programming language used by data scientists: R. My first assignment was to take three hundred text files containing pollution monitoring data and write a function that calculated the mean of a particular pollutant in that data set across specified monitors. I had no idea how to even begin.
MOOCs are an appealing way to learn. You watch instructional videos, complete weekly quizzes and assignments by the deadline, and turn to the course’s online forums for help from fellow students and teaching assistants. But there was a huge gulf between the content covered in the videos and the knowledge required to do the assignments. It was like watching a video about addition and subtraction then being asked to solve a word problem using calculus.
I devoted every spare moment not spent on my job or with my family working on the assignment. Sometimes I would think I had spent only 10 minutes on writing the function, only to look at the clock and find that two hours had passed. But no matter how much time I invested I didn't feel like I was getting anywhere. I loved being able to lose myself while writing code, but was frustrated that this wasn't getting me closer to done. During a particularly unproductive late-night session when it became clear I wasn’t going to finish by the due date, I rage-quit the course.
Doing what you're good at feels comfortable and satisfying. When you’ve been doing it a long time, you get used to the idea that all work is supposed to feel this way. In trying to learn this new skill I spent many hours doing something that I was, frankly, terrible at. Being a novice felt the opposite of what I was used to; it was uncomfortable and frustrating. Self-doubt started to creep in. Maybe I'm not cut out for this. Maybe I'm too old to pick up a new skill. Maybe I'm just not that smart.
Two days after I withdrew from the course, I found my mind wandering back to the assignment and thinking up ways I might try to solve it again. Programming was a foreign language in which I was not fluent, but as frustrating as that was, it also felt kind of fun on those rare times when I was at least a little bit successful. So I gave it another shot.
This time I divided the assignment into tiny steps. Can I figure out how to write the function so that it reads a single file? Done. Can I get it to read two files from that directory? Okay. Now how about all 300?
These small victories provided a sense of slow, incremental progress. I still felt lost, but the longer I worked at it, the less lost I felt. At times I felt like I actually knew what I was doing. So I rejoined the class. It took two full attempts, but eventually I completed the assignments and went on to take several more courses in the series.
Picking up a new skill is a laudable goal, but it means being okay with being bad at it. At least initially. The trick, I think, is undermining the self-doubt by noticing the incremental improvements you make. That sense of progress is critical: proof you are getting better even if it feels painfully slow. A louder voice insisting this is for you. You aren't too old. You are that smart.