A note on COVID-19
We are currently in the midst of a global pandemic, and it feels disingenuous for me not to acknowledge the context in which this learning series is being created. When faced with overwhelming circumstances, one of my go-to coping mechanisms is to spend as much time as possible learning. Burying oneself in learning doesn’t have to be your coping mechanism, and for many people I suspect that it is not. Please take what you need from these posts, and know that I am wishing you all the love and kindness that I possibly can.
Finding your “just right” learning resources
Know what you know
In an ever-expanding landscape of learning resources, it’s important to know what you know so that you can best match your knowledge and skills to the learning resources you choose. You can do this by taking an inventory of what you know and what you already know how to do.
For example, if you’re looking to learn R and have used SAS for the last 12 years, you’re coming into R with a wealth of transferable skills and knowledge! Looking for courses, books, and blogs that help SAS users navigate getting started with R are going to be more helpful than a boilerplate “Intro to R” course.
Or perhaps you’re looking to learn Python, but you’ve never programmed before. This leaves the field fairly wide open for you, and a quick Google search of “Python for Beginners” provides an overhwhelming amount of choice. So how do you know what to choose?
Know what you’re trying to learn
What are you trying to accomplish with your learning? Are you trying to make a graph, build a webpage, change your career? The opportunities are limitless, so start with something that’s not too far out of reach.
For example, if you’ve never programmed before, choosing a skill that’s not too far out of reach (coding a game in Python) will help you find more immediately applicable learning resources. Whereas if you’re an R programmer looking to learn Python, you might take your favorite (or most common) R task and learn how to do it in Python.
Let’s say you’ve figured out what you know and what you’re trying to learn, but there are still quite a few resources to choose from. How can you narrow down your options?
Know how you prefer to learn
While learning styles are still a topic of contention in education circles, I think it’s fair to say that we all have ways that we prefer to learn. Some of us prefer sitting through hours of lecture and taking notes, while others want to jump in and try things to see what works. Still others prefer videos, or books, or blogs, or… the list goes on. What’s important is that when you’re learning something new, try choosing a format that you enjoy learning in, so that you can focus on acquiring new skills and knowledge.
How I’ve found my “just right” learning resources
The bulk of my work in R was focused on cleaning and wrangling incredibly messy education data from multiple sources, and then creating data visualizations and reports to give stakeholders insights into how and why our professional development programs were working.
I was pretty comfortable in the
tidyverse as well as using R for all the things (this blog! writing a book! making slides!), which led me to getting comfortable with things like GitHub and the command line.
Overall I felt like I’d developed a good deal of computer resilience and playfulness, which are good skills to have when embarking on new technological endeavors.
So when it was time to start learning Python and Deep Learning, I wanted resources that didn’t start at square one, but assumed that I had some kind of programming knowledge and was comfortable tinkering with my computer to get things to work. I also knew where I wanted to go - I wanted to learn how to build cool GANs and explore reinforcement learning while also learning how to build neural nets.
With all of that decided, I wanted books to learn from. I have (very mild) auditory processing problems, and find lectures and videos to be difficult learning experiences for me. And while I know that I can learn using any medium, I tend to learn more from a single pass through a book than any other method.
So what did I learn last week?
Last week’s learning recap
This week has been some rough sledding, as I’m really feeling the growing pains not only of going from R to Python, but going from a generalist to a specialist! I feel like I’m losing a lot of the skills that I used to be really good at, and haven’t (yet) gotten good at a new set of skills. It’s a disorienting place to be, but I know that as long as I keep dedicating time to learning that this is a temporary stop in a much longer journey.
fast.ai Practical Deep Learning For Coders course (large online group)
When this course moved from in-person to online I knew it was time to sign-up. But oh man am I in over my head on this one, and really struggling with the coding. I can read the book and follow the lectures, and I understand what we’re trying to accomplish, but when it comes time to sit down and type out code in order to accomplish a task I find myself utterly and completely lost.
On the bright side, the community seems lovely, and I imagine that I feel the way folks new to the
tidyverse feel - everyone is super excited about something - I’m not quite sure what, but I’m excited to find out!
Whirlwind Tour of Python (solo)
I love love love this book. I’ve given up on every Python tutorial out there because they either felt too simple (I can only learn variable assignment so many times) or they didn’t seem to be dealing with Python for data science//machine learning//deep learning. I’m at a point where I don’t need to know all there is to know about Python, but rather pick up a base set of skills so that I can start doing specific things with Python. What I appreciate most about this book is that it’s written for people who know how to code in another language.
Blog posts I’ve loved
This week’s learning agenda
- Week 3 of fast.ai Practical Deep Learning For Coders course (large online group)
- Finish Whirlwind Tour of Python (solo)
- Start Python Data Science Handbook (solo)
- Start Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow (small study group)