I’ve said this to my non-techie friends countless times. It’s no secret that being able to code makes you a better job applicant, and a better entrepreneur. Hell, one techie taught a homeless man to code and now that man is making his first mobile application.
(note: yes I realize that 3/5 of those links were Google projects)
But most folks are intimidated by coding. And it does seem intimidating at first. But peel away the obscurity and the difficulty, and you start to learn that coding, at least at its basic level, is a very manageable, learnable skill.
There are a lot of resources out there to teach you. I’ve found a couple to be particularly successful. Here’s my list of resources for learning to code, sorted by difficulty:
Novice
Never written a line of code before? No worries. Just visit one of these fine resources and follow their high-level tutorials. You won’t get into the nitty-gritty, but don’t worry about it for now:
w3 Tutorials (start at HTML on the left sidebar and work your way down)
Intermediate
Now that you’ve gone through a handful of basic tutorials, it’s time to learn the fundamentals of actual, real-life coding problems. I’ve found these resources to be solid:
If you’re here, you’re capable of building things. You know the primitives. You know the logic control statements. You’re ready to start making real stuff take shape. Here are some different types of resources to turn you from someone who knows how to code, into a full-fledged programmer.
Programming problems
Sometimes, the challenges in programming aren’t how to make a language do a task, but just how to do the task in general. Like how to find an item in a very large, sorted list, without checking each element. Here are some resources for those types of problems
If you learned Python, Django is an amazing platform for creating quick-and-easy web applications. I’d highly suggest the tutorial - it’s one of the best I’ve ever used, and you have a web app up and running in less than an hour.
I’ve never used Rails, but it’s a very popular and powerful framework for creating web applications using Ruby. I’d suggest going through their guide to start getting down-and-dirty with Rails development.
If you know PHP, there’s an ocean of good stuff out there for you to learn how to make a full-fledged web application. Frameworks do a lot of work for you, and provide quick and easy guides to get up and running. I’d suggest the following:
If there’s one point I wanted to get across, it’s that it is easier than ever to learn to code. There are resources on every corner of the internet for potential programmers, and the benefits of learning even just the basics are monumental.
If you know of any additional, great resources that aren’t listed here, please feel free to tweet them to me @boomeyer.
Best of luck!
I’d also like to add some more specialized resources!
SpriteKit (2D) and SceneKit (3D) which are built into the official compiler to create iOS apps (see iOS apps for more resources)
also all of the above game engines (cross-platform)
Game console development:
Game Maker Studio (with a paid subscription)
Unity
Unreal
CryEngine
Note that games can also be created on more general platforms like iOS and Android apps, but the resources listed above are specialized for game development.
iOS apps:
In order to develop iOS apps, you’ll need to purchase an iOS developer program membership for $99 a year, which requires an Apple account. Here are some general resources:
Xcode (the official IDE for iOS apps; can be installed on OS X)
Xcode also has SpriteKit, SceneKit, and Metal built in, all of which are incredibly useful for creating apps that require elaborate graphics, particularly games.
Also, in order to publish iOS apps, you’ll have to juggle certificates, app ids, and provisioning profiles. This process can be convoluted at times so here are some resources:
Blender (can also be used to create games; Python script; free and open-source; can be installed on Windows, OS X, and Linux)
Maya (specialized script; free trial, free 3-year student subscription, and paid subscription versions; can be installed on Windows, OS X, and Linux to an extent)
3ds Max (Python script; free trial, free 3-year student subscription, and paid subscription versions; can be installed on Windows and OS X)
RenderMan (specialized script; free for non-commercial/educational use and pay-per-license for commercial use; can be installed on Windows, OS X, and Linux)
Misc. resources:
Stack Overflow is an ask-and-answer community for programmers. It’s amazing and will save your life. Sign up and don’t be afraid to ask for help.
Github offers a student pack (here) if you create an account and prove you’re a student. This gives you free access to a bunch of great programming resources for free for a certain period of time, such as Unreal Engine. Also, Github in general is a site that you can host your code on. Other users can see it, and “fork” it to make a copy of your code and modify it.
Parse is a backend service that allows you to store data in databases it hosts on its own servers. It lets you use push notifications, create users, store and retrieve data, etc. It’s compatible with iOS apps, Android apps, Windows apps, Xamarin, React, Unity, OS X, Windows, JavaScript, PHP, .net, Arduino, and Embedded C. It’s free up to a certain limit that depends on the services you use.
Cloud9, Codebox, and Squad are online IDEs that allow for real-time collaboration and support a variety of languages, so they’re useful for team projects.
And some general advice:
Your program will not work right away, 99% of the time. That’s okay. Do your best to figure out where the error is. Here is some advice on debugging (written for PHP but the methods can be generalized).
If you’re stuck, Google. Google like there’s no tomorrow.
Ask questions on a community like Stack Overflow.
For that matter, browse relevant Stack Overflow questions. You can probably find some solutions there.
Don’t be afraid to copy and paste.
Take breaks sometimes if you’re getting burned out. But don’t stay away from your projects for too long or you’ll lose track of its status.
Backup your code. On the cloud, on a USB drive, wherever. If your IDE has a backing up feature like snapshots, use it whenever you hit a milestone.
If your project is big, split it up into milestones and set goals. Don’t tackle everything at once.
Like the OP said, coding isn’t just for professionals and “geeks” anymore. Anyone can learn it if you really try, and with the rapidly expanding tech industry, learning coding can really broaden your opportunities.
If any of the links are broken, or you have a question or some information/resources to add, you can contact me through the askbox or the OP through his Twitter (as mentioned in his post).
If you’re interested, try some of these out and best of luck!
Great work expanding on my humble list to include a much fuller collection of resources for learning how to code! Cheers!
ALICE ROOSEVELT WAS HARDCORE. “She was known as a rule-breaker in an era when women were under great pressure to conform. The American public noticed many of her exploits. She smoked cigarettes in public, swore at officials, rode in cars with men, stayed out late partying, kept a pet snake named Emily Spinach (Emily as in her spinster aunt and Spinach for its green color) in the White House, and was seen placing bets with a bookie.
So what I’m reading here is, she was a Roosevelt?
Well I have a new hero.
Her whole wikipedia article is gold
“When her father was governor of New York, he and his wife proposed that Alice attend a conservative school for girls in New York City. Pulling out all the stops, Alice wrote, ‘If you send me I will humiliate you. I will do something that will shame you. I tell you I will.’”
“Her father took office in 1901 following the assassination of President William McKinley, Jr. in Buffalo (an event that she greeted with “sheer rapture.”)“
“During the cruise to Japan, Alice jumped into the ship’s pool fully clothed, and coaxed a congressman to join her in the water. (Years later Bobby Kennedy would chide her about the incident, saying it was outrageous for the time, to which the by-then-octogenarian Alice replied that it would only have been outrageous had she removed her clothes.”
“She was dressed in a blue wedding dress and dramatically cut the wedding cake with a sword (borrowed from a military aide attending the reception)”
“When it came time for the Roosevelt family to move out of the White House, Alice buried a Voodoo doll of the new First Lady, Nellie Taft, in the front yard.”
“Later, the Taft White House banned her from her former residence—the first but not the last administration to do so. During Woodrow Wilson’s administration (from which she was banned in 1916 for a bawdy joke at Wilson’s expense)…”
“As an example of her attitudes on race, in 1965 her African-American chauffeur and one of her best friends, Turner, was driving Alice to an appointment. During the trip, he pulled out in front of a taxi, and the driver got out and demanded to know of him, “What do you think you’re doing, you black bastard?” Turner took the insult calmly, but Alice did not and told the taxi driver, “He’s taking me to my destination, you white son of a bitch!”
“To Senator Joseph McCarthy, who had jokingly remarked at a party “Here’s my blind date. I am going to call you Alice”, she sarcastically said “Senator McCarthy, you are not going to call me Alice. The trashman and the policeman on my block call me Alice, but you may not.”
I love this woman.
WOMEN WHO NEED FUCKEN MOVIES.
This is Alice as an older lady. The pillow says “If you can’t say something good about someone, sit right here by me.”
Do Jews feel things? Do we have horns? Are we really in control of the media? Nazis would like to know.
Y'all, we need to stop calling the alt-right anything but neo-Nazis.