You might be curious about Turing, or software development in general.
If that’s the case, this page is an easy jumping-off point into the many resources I’ve written and collected that could aid you in this process.
I’ve been helped by so many other people along the way. This page, and the general list of resources you’ll find around this website are my modest attempts to help others in the way I’ve been helped.
I’m always eager to hear about areas where these guides are unclear or cause confusion, and I’m quick to refine things. Please send me an email at
thompsonjoshd at Google’s popular email service or, if you’re in the Turing slack, send me a message. I’m
Finally, feel free to set up a session to chat about whatever’s on your mind over at josh.works/office-hours
1. Learning how to learn
If you’re making the jump into software development, you’ll be learning a lot. Non-stop, and for the rest of your career, learning will play a pivotal role in the execution of your job.
If you could either learn
slowly and with great difficulty, or you could learn
quickly and with less difficulty, which would you choose?
Presumably the former. To aid you in this path, consider reading:
- Learning how to learn
- Anki and Memorization with Spaced Repetition Software
- Asking experts, and gaining more than just answers
2. Ruby-specific exercises (through the lens of “learning how to learn”)
The primary audience of the following resources are Turing students who are getting ready to begin the program, but they’re equally appropriate for someone who’s considering the whole software development/Turing option anyway.
I’ve put together resources, embedded in the Turing curriculum, so you can work your way through from
I've never written a line of code or opened my terminal to
I've just built an object in Ruby that interacts with another object. When you can do the latter, you’ve accomplished quite a bit.
Here’s how to do all that. All of the instructions are specific to those using a Mac computer.
- Head over to the Turing Mod0 Environment setup page, follow those instructions.
- Head over to Turing’s backend prework repository, work through the Ruby-specific setup steps there.
- Complete the homework, days 1-7, and the capstone project. (This will take a few hours.)
- Once done with the pre-work, head to Turing’s ruby-exercises repository and start working through those exercises.
I’ve added video walk-throughs for every part of the above list to the appropriate places. I’ve tried very hard to make this whole process one that is not full of frustration and questions for you. There will be enough of that to come.
All of the above links are Turing-specific resources that I’ve contributed to. I’ve also written a bit of a “companion guide” or “shadow guide” that works through the backend ruby exercises (with, of course, more screencasts):
- Turing Prep Chapter 1: Make Mod 1 Easier Than It Otherwise Would Be
- Turing Prep Chapter 2: Your first passing tests!
- Turing Prep Chapter 3: Video walk-through of a few of the mythical creatures, like
- Turing Prep Chapter 4: Arrays, Hashes, and Nested Collections
- Turing Prep appendix: Troubleshooting Errors
If you work through even half of the videos contained above, you’ll be fantastically prepared to begin the Turing program and well positioned to not struggle too hard in the first module.
Miscellaneous resources that could aid you as you go through Turing
Mod 1: Ruby and other fundamentals
- Practice with Github (I gave a ‘github fundamentals’ talk)
- Playing with the HTTP send/response cycle in Ruby, without Faraday (the “HTTP Yeah You Know Me” project)
Mod 2: Sinatra, Active Record, and Rails
- More coming soon
Mod 3: Consuming and Building APIs, brown-field projects, AJAX, caching, background workers
Here’s what William and Rhonda did, and what I wish I’d done, before mod 3 started:
- Build a RESTful JSON API with Rails 5 (part one)
- API on Rails, chapter one
- CodeSchool, Surviving APIs with Rails
Job hunting and Remote Work
- All I’ve written on working remotely
- Everything I’ve written on the topic of programming
- Everything I’ve written on the topic of Turing
If you have questions on any of this, as you work through it, don’t hesitate to ask me questions! Shoot me an email or a DM in the Turing slack.