欢迎使用CSDN-markdown编辑器
2016-03-04 21:19
1006 查看
Developer Getting Started Guide
This is a guide to getting started for aspiring developers. This guide assumes you have little to no existing programming experience. Where to start depends on your goals and interests. In general your best bet for learning to be a developer involves the following steps:Find mentors to learn from by joining a community
Befriend peers to learn with and keep each other accountable
Pick a specific project (website, mobile app) to work on with your peers
Learn as much as you can using the resources below and trying to apply your learning to the project.
Get your project functioning and get your friends (or strangers) to use it.
Repeat steps 3-5 until you can reliably build different projects on your chosen platform.
In addition, here are a few tips to keep in mind while you learn:
Create a learning plan outline that can be reviewed by mentors or peers to help keep you on track.
Identify concrete learning goals and milestones that keep you focused and moving forward.
Be sure to keep yourself healthy and active as you learn. Get plenty of sleep, eat healthy and exercise.
Check the sections below to construct your customized learning plan.
Join a Community
One of the most important things you can do when learning to code is use what we understand about the social foundation of learning to “hack” your own motivation. You should get involved at events in your city where you can meet peers to learn with and mentors to learn from.Bootcamps
Becoming a professional developer without any prior experience can be a surprisingly challenging endeavor. If you are serious about changing careers and want to do so in a structured environment filled with peers, you should consider taking part in a full-time multi-week professional bootcamp. The following bootcamps will prepare you with practical software development skills and are designed to be affordable for anyone:Viking Code School - Remote high-touch online course with lots of peer collaboration teaching web development and free of tuition until you find a software developer role.
Telegraph Academy - 12-week Software Engineering accelerator for underrepresented minorities. Focused on being affordable to anyone regardless of their financial situation.
App Academy - 12-week Software Engineering bootcamp that does not charge any tuition or fees until after you are placed as a software developer.
There are many other bootcamps that often charge tuition costs ranging from $8-20k. If cost isn’t a major factor for you, here are a few more of the best bootcamps targeted at beginners:
HackReactor - Remote and in-person courses to teach web development with a layer of computer science fundamentals.
Galvanize - In-person classes at several campuses focused on comprehensive classes on web development or data science.
Hackbright - Engineering fellowship for women interested in learning how to become a professional software developer.
If the tuition costs are too high or you just aren’t prepared to make a full-time commitment, be sure to check out community events listed below.
Events
When first getting started with software development, having a community to learn with, people to learn from is indispensible. In order to find a position in the industry, building your professional network is paramount. Check out these resources as a great way to get started going to events:Meetup - Find local events which help you meet others interested learning to code.
Railsbridge - Free events in many different cities which teach you the basics of web development. This organization was created with a focus on traditionally underrepresented groups in technology.
RailsGirls - Free events in many cities which teach you the basics of programming and web. This organization was created with a focus on traditionally underrepresented groups in technology.
MobileBridge - Sister organization to RailsBridge under BridgeFoundry. Free weekend events in many different cities to teach iOS and Android development. This organization was created with a focus on traditionally underrepresented groups in technology.
Finding events and a community to be a part of can be a surprisingly important part of maintaining the motivation to become a professional developer.
Learn to Code
If your goal is simply to “learn to code”, then you should start with a simple language to get going like Python or Ruby. These are languages you can use to build web applications, write scripts for your computer or even build basic mobile applications. For starters, check out this best way to learn python and this Coursera Python class.Here’s a bunch of great resources including:
Codecadamy Python
Codecadamy Ruby
Interactive intro to Ruby
Awesome free book filled with python exercises
Learn how to build websites with Python
Another free python course
RubyMonk Tutorial
Here are a few more generally on the basics of computer science:
Udacity Intro to CS
Coursera Computer Science 101
Other programming resources:
Free way to learn programming online by working with others and building real apps for non-profits
Learn Rails (super popular web development framework) for $99 in a month
Learn about Websites
If you want to learn about how to build web pages, often you want to start with learning HTML and CSS to develop the look and feel of your website with these resources:Dash - Interactive tutorials on web design
Codecademy HTML
Codecademy Web
KhanAcademy HTML+CSS
Learn from ShayHowe - Great reference for learning HTML / CSS
After learning HTML and CSS, we can add more powerful features to our site by learning Javascript:
Learn JS in 14 Days
CodeSchool Javascript
Codecademy Javascript
Khan Academy JS
Eloquent Javascript
Codecademy jQuery
Javascript Garden
Learn Android
If your goal is to learn how to do Android app development, you may still want to start by learning how to code above. If you’d prefer to skip that and jump straight into mobile development, then you can give that a try without learning another language first.To get started, please check our Android getting started guides and/or our SF / Bay Area Android meetup for events and learning resources. If you have never programmed, you probably want to start with learning how to code with Java which Android is built on.
Learn Data Structures and Algorithms
Learn about fundamental data types (stack, queues, and bags), sorting algorithms (quicksort, mergesort, heapsort), data structures (binary search trees, red-black trees, hash tables), and Big O. These are very common interview questions and make up the core of computer science fundamentals.MIT Introduction to Algorithms
Coursera Introduction to Algorithms
Algorithms Design Manual
Coderbyte
Coderwars
RosettaCode
InterviewCake
LeetCode
Reading Code
Searching or exploring GitHub and reading other developers code can be extremely helpful. A great way to find good code to read is by exploring Github:Explore Github
Project Showcases
Often reading code can be a great way to mentally “put together the pieces” especially when you then borrow the code applying the concepts to your own project.
Additional Resources
Google’s Guide to Technical Development - Links to various recommended resources.So You Want to Learn How to Code
Note: Above Info from: CodePath
相关文章推荐
- Struts2基础(struts.xml文件)
- CentOS 的使用(三)
- 微信开发笔记——微信网页登录授权,获取用户信息
- DS1302时钟芯片使用心得
- hdu2795 线段树 贴广告
- HDU Tian Ji -- The Horse Racing
- hdu2795 线段树 贴广告
- 解决Themida加壳程序在VMware虚拟机无法运行问题TheMida Soory, this application cannt run under a Virtual Machine---
- 知乎-怎样算是精通c++
- 快速入门:十分钟学会PythonTutorial - Learn Python in 10 minutes
- iOS之加载等待指示器(工具类)
- JSON
- CE下可用的3G
- Linux scp 命令
- 经典汉诺塔问题分析
- Requests库的几种请求 - 通过API操作Github
- 游戏软件的发展和特点
- 不能将多个项传入“Microsoft.Build.Framework.ITaskItem”类型的参数
- 网络-HTTPS科普扫盲贴(转)
- 在对结构体分配的内存进行free时出现,关于 Windows 已在 **.exe 中触发一个断点。其原因可能是堆被损坏.