Learning to use code and workflows to build awesome apps, websites, and other projects doesn't have to be scary.
Apple's Hour of Code program is back at Apple retail stores, taking place December 5 - 11! You can sign up for workshops at your store by visiting Apple.com/retail, but in the meantime, here are some great resources for learning how to code.
It would likely take you millions of years to consume all the content available on our computers, phones, and tablets — there's so much out there on the Internet and App Store, and more coming every day. But what if you want to make your own content? That world can be a lot darker and scarier if you're not sure where to start.
There's a ton of great content on website-building, ebook creation, writing automated workflows for productivity, and even putting together your own apps. But when you're starting from step zero, where do you go? Who do you talk to?
Why learn to code in the first place?
I got lost more times than I can count. I made many, many mistakes. But: I came out of nearly two decades of experimentation loving to code.
Coding gives you power to not only enjoy other people's projects, but say "I can do that!" and build your own passions. You form excellent problem-solving skills and troubleshooting steps — steps that I use almost every day in other areas. And if you enjoy logic puzzles, coding is a neat way to scratch that itch and make something special for yourself.
The language you learn can be helpful in the most unlikely of situations: Because I knew HTML and CSS, I ended up with lots of one-off web jobs from friends and acquaintances who didn't want to venture into those waters. In my early post-college years, those jobs paid my rent; and it was HTML and CSS that helped land me my first job at Apple, and my ebook-building job at Macworld.
And, like learning real-world languages, once you understand one coding language, it's a whole lot easier to get to know the others.
Great resources to start learning how to code
The good news is, you don't have to stumble through coding and self-teach yourself the way I had to. It's 2016, and you have your pick of great, interactive resources for learning to code. Whereas I had to rely on the kindness of random internet strangers and HTML Goodies, you can quickly pick up the basics of just about any coding skill with the right tutorials.
Here are some of my favorite starting points:
If you've never touched code before and the mere thought of writing things with brackets and chevrons scares you, give one of these programs a whirl. Apple has partnered with the company for the last two years to help teach its November "Hour of Code" workshops, and it's easy to see why: The lessons are fun, colorful, and present code as more of a Lego puzzle to be built than endless lines of text. And better yet: You can take the courses on your Mac, PC, or mobile devices.
Khan Academy offers a large assortment of online classes for you to enjoy ranging all manner of topics, but I put them on the list specifically for their Computer Science program. If you want a deeper dive into the theory and building blocks of coding, this course does an excellent job of it — and keeps you entertained, too!
Codecademy's tutorials are very easy to follow and all your progress is automatically saved, so you can come back to it at any time. Unfortunately, the website doesn't work well with iOS devices at this time, but they're excellent in a Mac or PC browser.
If it's iOS app development you want to explore, Apple's new Swift language is the perfect place to start — and the Learn Swift website has collected a ton of material for beginners and intermediates to peruse. While there are no sites offering free interactive tutorials for Swift (that I know of — readers, if you have a great site to recommend, post it in the comments!), that doesn't mean you solely have to rely on text documentation.
When in doubt, search!
- Stack Overflow is also a great resource. It's a huge programming community full of smart developers, and always worth a visit if you're having trouble with your projects.
- W3 Schools serves a vital role in the web coding space: showing how these things are supposed to work and breaking down the individual components so you can see exactly what does what.
Let's find out together!
This is the first post from a small column we're going to be running on iMore called Coding Corner. Along with some special guest columnists, we're going to tackle potentially scary code-based projects for your Mac or iOS device and make them accessible to beginners.
Whether you want to learn how to build a website, create an ebook for the iBookstore that doesn't suck, get an introduction to the great iOS automation app Workflow, or ease into app programming with Swift, we're hoping we can answer your questions and give you a good starting point.
Have a topic you'd like us to look into? Let us know in the comments.