10 Free Resources for Coding and Coders
The technology world is constantly evolving. New technologies are invented, developers build new products using these technologies, and new markets emerge from people using these products. The following resources help you continue learning, answer questions, and stay abreast of these changes.
The resources listed below are all completely free. Many of these resources stay free by depending on community members like you to contribute, so don’t be shy about participating!
Learning to code is a constant journey that never ends for even the most experienced programmers. New languages and frameworks appear every day, and the only way to stay current is to keep learning. Although you may not be an experienced developer just yet, the following resources appeal to beginners with different learning styles. You can learn general introductory computer science topics or specific web development techniques by reading text or watching video lectures, and do it at your own pace or in a scheduled class.
Codecademy, created for people with no previous programming experience, is the easiest way to learn how to code online. You can use the site to
Try back-end languages like Ruby, Python, and PHP
Build real pages from websites like AirBnb, Flipboard, and Etsy
Front-end languages address website appearance, whereas back-end languages add website logic, such as what to show users and when.
You don’t need to download or install anything to start coding at Codecademy — just sign up or sign in and start learning.
If you get stuck, check for a hint at the bottom of the instructions, or click the Q&A Forum link to ask a question or to see if someone has already posted a solution to your problem.
Coursera and Udacity
MOOCs, or massive open online courses, are classes or courses that are taught via the Internet to a virtually unlimited number of students. These courses encourage the use of online forums and interactivity to create a sense of community. Coursera and Udacity, two of the biggest MOOCs, have a variety of coding-related courses. Each course is taught through a series of video lectures by a university faculty member or an industry expert.
The other half of coding is designing. Good visual design is often the difference between having hundreds of people use and share your website and having millions of people do so. Hack Design has 50 design lessons created by top designers from around the world, including designers from Facebook, Dropbox, and Google.
Each lesson is emailed to you weekly, and includes articles to read, and design tasks to complete based on what you have just learned. Topics covered include typography, product design, user interactions, and rapid prototyping tools.
In December 2013, Code.org made history when over 15 million U.S. school students participated in a learn-to-code event called Hour of Code. Throughout 2014, an additional 25 million students would practice their programming skills for one hour. Code.org hosts its own content for students from kindergarten to eighth grade. It also provides links to other learn-to-code resources, which are targeted for a range of ages.
Code.org also has offline learn-to-code materials, so you can keep learning even if you don’t have reliable access to an Internet connection.
As you learn to code, you will get stuck. Your code just won’t behave as you intended. This happens to every programmer — it’s an inevitable part of the process of turning human logic and fuzzy thoughts into rigid code a computer can understand. The important thing is to have a plan, and to have some resources to help debug your code and solve your problem.
The following resources include reference texts, which help you check your coding syntax, and community user groups, which help you check your program logic.
Mozilla Developer Network
Developers frequently use MDN to reference syntax, and also to see desktop and mobile browser compatibility for specific tags and commands. You can also check out tutorials on MDN hosted by the Mozilla Foundation, a non-profit organization that helps support and maintain the Firefox browser.
Before asking a question, search the website and see if an answer to your question has already been posted. One of the website rules of etiquette is showing you have done some research before posting a question.
Tech news and community websites
There are people coding all over the world, and someone in Shanghai can make an app you use every day just as easily as someone in San Francisco. A number of resources are available for developers to better understand what others are working on, both at big companies and at startups. In addition to what people are working on right now, if you have a website you want to build, it can be helpful to see what has been built in the past, so you can identify areas for improvement.
The following resources help you stay informed on what is happening in the tech community, and interact with other people interested in tech in your city.
TechCrunch is a popular blog that covers technology startups and major technology companies. In 2006, the website cemented its reputation when it broke the story of Google acquiring YouTube for $1.6 billion. Along with its online reporting, TechCrunch has conferences throughout the year, such as Disrupt, which hosts conversations with industry veterans and highlights new tech startups.
HackerNews (HN) is a discussion website hosted by YCombinator, a startup incubator in California. The website homepage is a collection of hyperlinks, often to startup websites and news articles, that individual users have submitted.
After a submission is made, the entire community can upvote the submission, and the top-ranked submissions are listed first on the homepage. Also, the community can comment on individual submissions, and each comment can also be upvoted, with the top-ranked comment appearing first on each submission page.
Submission titles that begin with “Show HN” are a request to the community to comment on a startup website that has just launched. Submission titles that begin with “Ask HN” are a request to the community to answer or comment on a question.
Meetup is a website that organizes face-to-face local meetings based on interests or activities. Meetup organizers, who are volunteer community members, host meetings by posting information on the website. Then, community members search, join, and RSVP for meetings through the website.
Although you can learn alone, finding other people learning to code is a great way to stay motivated and keep up your momentum. The people you meet may be learning to code for the same reasons you are, such as to build a website, improve skills for an existing job, or find a new tech-related job.