On being successful with Udacity
Last December, I started Udacity’s Virtual Reality Developer Nanodegree. In March, I started as a mentor for the program. I’ve talked with lots of students about the course and helped debug problems they were having. One of the things that surprises me is the number of students who struggle with the content and the teaching style of the course.
The field of VR is growing at a crazy pace. There is new content and strategies, and the tools are being updated on what seems like a monthly basis. It’s hard to keep up for anyone. Here are a couple of thoughts I had about why I have been so successful in the course and ways to approach the degree so anyone can be successful.
Udacity’s teaching style is not for everyone.
As someone with a background in education, I find that I’m very critical of other teachers’ teaching styles. I’ve tried taking courses on Udemy, but it doesn’t take long before I get bored of repeating exactly what’s in the videos. Udacity’s teaching approach is to teach the concepts you need to be successful. Their video lessons won’t show you exactly how to complete the projects. Instead, their approach is much better. You’ll learn the concepts and ideas behind why they are doing what they’re doing. Then, once you understand why you’re doing what you’re doing, you’ll have to apply that knowledge to your own projects. This is what creates lasting learning.
Overall Udacity does a great job with their video content. However, one of the biggest complaints I hear from students is that “what’s happening in the videos isn’t what I’m seeing when I try it.” I then have to explain to students that they are watching videos that were created months ago with tooling that has been updated several times since then. When I explain how things won’t look exactly the same, I get mixed responses. Some are frustrated and say that Udacity should update it. To which I say, okay so you want a new video every time one of the tools gets updated? Who’s going to pay for that? Others are more understanding.
For people who want to be told exactly what to do, this learning approach won’t work. If you’re expecting videos that were produced last year to show you exactly where to look to find something or exactly what code to write, you’ll be pretty disappointed. You won’t be successful.
I’m not an employer, but honestly, I wouldn’t want to have to tell my developers EXACTLY what to do or what code to write. What’s the point of hiring someone that I have to tell them how to do everything? I’d want someone who can think for themselves and figure out what they don’t know. Or at least be able to ask questions that will help them figure out their missing knowledge.
In a web development boot camp, a teacher I had once told the class that we want development to be hard. That’s why we get paid as well as we do. That’s why we’re in demand. Most people can’t do it.
If you’re looking for someone to tell you exactly what to do, you’re better off going somewhere else to learn.
Getting started is the hardest part.
Personally, getting any development environment setup correctly is a long and difficult process. It’s the part I hate the most! There’s always things that get left out of instructions. Once the environment is setup everything gets so much easier. For some people this can be a huge barrier to getting started. Some think that if they can’t even get the setup working, they won’t succeed at any of it.
The key here? Solve one error at a time. If you’re getting different errors, you’re making progress — even if it doesn’t feel like it.
It’s okay not to know everything.
I don’t really think I should have to say this, but I will. No one knows everything. Especially in the field of VR. Everyone is still learning. We’re still figuring out what works and what doesn’t. Over the course of the program, I’ve had to come to terms with the fact that there will be times where I will get stuck. I’ll need to ask for help.
One of the best things you can do to ensure you’re successful is to ask for help. Use all of the channels you have at your disposal if needed. Udacity has a lot of course mentors. There are forum mentors who help students with issues on the forums. Classroom mentors who can help via an instant chat. One on one mentors can also help via video chat and screen sharing. Udacity even has a very active Slack for students. Of course, all of those platforms are useless if you’re one of those people who’s afraid to ask for help.
Google is your friend.
I’ve run into some people that seem unwilling to even do a Google search to try to fix issues they’re having. Whenever I run into an error that’s one of the first things I do. Copy the error and paste it into Google. Usually that’s all that I need to do to find a solution to the problem.
Sometimes when you’re first starting out it’s hard to know what to search for. That’s when I start thinking generically about the problem. “[what software I’m using] [what I want to do or a description of the problem]“ For example, I might search for something like “Unity SteamVR controllers not showing up”. If I’m using Unity and the SteamVR plugin, that goes first. Followed by the problem. Usually that will pull up some relevant listings that will help me narrow down my search.
One of the things that still amazes me are the people who are terrified of breaking things. If you’re learning something new, you’re going to mess up. You’re going to break something at some point. “From failure to learn. From success, not so much.” (Meet the Robinsons)
Let’s think worse case scenario for a minute. You’re working on something and you manage to break it. You’ve broken it pretty good and now you can’t figure out how to fix it. What’s the worst thing that could happen? You’ll have to start over again. Oh well. Since you’ve done it once, you’ll be faster the second time around.
You’ll know that you should be saving your work and hopefully using some sort of version control system to save your work and revert to a previous version. (Though maybe that’s a different topic altogether.)
I’ve restarted projects several times simply because I didn’t like the way I did something or because I learned a new and easier way of doing something. Our culture focuses a bit too much on doing things “right” when we need to be more focused on what we’ve learned in the process and what we’ve learned from our failures.
It does get easier.
In the beginning of learning anything new, I always feel like I don’t know anything. After while, I start to see errors and solve them without doing any googling. There’s no reliable timeline for when that starts to happen. It happens so gradually, that I almost never notice it.
Learning anything is hard, but it is possible — and a lot more enjoyable — as long as you maintain the right mindset.