其实你不一定需要学会编程来实现自己的想法
创业≠产品≠做App
类别:产品向 vs. 工程师向
1.《Ruby on Rails Tutorial》全书+视频教程,网上有下的
注意事项:跳过测试;可以用Win开发;开始不懂没太大关系,快速跟着视频过一遍,大量复制代码没问题
时间:大概1-2周。
2. 复习《Ruby on Rails Tutorial》
刚开始看教程,主要是建立一个大致的感觉。现在,则要回过头来思考和复习
具体来说,也就是回答这个问题:“这一章,到底讲了什么?这个功能是怎么做的?”
比如,怎么做出用户注册功能的?(其实核心也就是怎么用attribute来modelling)
然后带着这种问题,去重新读一读书,会有很大收获。
很多人只是草草过了一遍书、复制代码,却忘记了本质的思考,这个就是学习方法的问题。实际上一点就明。不过这样读书,自然更费脑子
3. 《Agile Web Development with Rails》+ Rails Guide(Get Started部分)
①Agile Web: 这本书也常被推荐用来入门,区别在于,没有视频。因此,适合其他有开发经验的人来入门,而不适合完全0基础的人。
但现在,因为已经有了《Rails Tutorial》的基础,所以可以看了。重点,和上面也要,也是放在“这个功能应该怎么实现?”,比如说要做购物车,那么就应该自己想想,是不是要建立一个Cart的Model,和Product之间怎么建立联系?先自己想一想,然后再和书中的做法比较。
因此,读书中的第2部分就行,第3部分深入的不需要看。
②Rails Guide:Get Started部分,则是一个做博客的实例,用于重温之前学过的概念挺好
其实,也可以横向展开其他的入门教程了(比如One Month Rails、CodeSchool的视频)。只是,始终注意学习的方法,是不断在问自己“这个东西是怎么做的?”“这一章到底讲了什么?”
带着问题去学习比较累,但是这样才有收获
4. RailsApp Tutorial (可省略,因为收费了)
主要是Gem的使用,比如Devise、Bootstrap
因为之前的教程,都是自己从0实践,所以需要这个教程过度一下。不过似乎现在没有免费的教学了,可以跳过,关系也不大。看之后的RailsCasts也是一样的
5. 自己的idea的实现, Putting it all together
这个略复杂,分为两大块
5.1.界面设计(前端)
页面本身的设计(美观)+ 代码实现(HTML+CSS+JS)
5.1.1 美观设计 《Non Designer's Design Book》+ 《Before &After Magazine》
理工科的男生比如我,设计感实在不足,这两个帮助很大大
5.1.2 前端代码
前端,其实要问自己一个问题,HTML、CSS、JS各是干什么的?看看W3Cschool,然后把这个问题回答上来就行,不需要一股脑看完。具体的代码,可以直接抄别的网站的,比如登陆界面等[1]
5.2.功能设计(后端)
Gem + RailsCasts + Google + StackOverflow
通过Rails Tutorial学会的功能,也就是注册、登陆、发帖、关注这几个。
那么,要新的功能,怎么办?就是google去搜,
比如”喜欢‘功能, 就搜“Rails how to make a vote system”. 这样就会常常查到Railscasts和StackOverflow的东西。而对于查不到的,就自己到StackOverflow上去问。
很多时候想要实现的基本功能,StackOverflow上已经有了做法,或者有了相关的gem,看railscasts的教程就行了。但是很多人不明白,这也是一点就透。包括自己上stackoverflow提问,也是一样。[2]
把东西做出来,就算入门了。想学得更快的话,可以在看完《Rails Tutorial》直接开始做自己的网站,省略中间的步骤,因为中间的步骤其实都是在做过渡和铺垫,减小学习难度。
6.进阶
Ruby: 《Practical Object Oriented Programming》
Rails: 《Crafting Rails Application》,thoughtbot, CodeSchool等等...这个时候其实凭自己的水平,再做些网站,就可以去找实习了。
而且各方面的书、源码都可以自己开始看了,也已经没必要再限定在哪个方面了
补充:怎么使用CodeSchool的教程?
CodeSchool的教程,尽管号称learn by doing来帮助入门。但实际上,还是在讲特性、讲功能。对于初学者入门帮助很有限,绝对不如《Rails Tutorial》这种可以完全跟着做的教程。
那么怎么用?
用来复习、思考。比如开始用前端了,就可以看下CSS的基础入门课程和Chrome 的Dev Tools教程。学的时候,还是要去思考,这次的视频讲了些什么?怎么做的?或者觉得自己Ruby不是很够用了,就看看Ruby的基础视频。最重要的并不是跟着视频去动手的过程,而是每看完一集视频,马上自己总结这集讲了什么。这个学习方法,依然是一点就透……可是貌似很多人都不明白....
7.
这里的学习路线已经很复杂了,其实,可以简化成一点——学会提问
(1)对自己提问。也就是看完一章、一个视频,问自己这个到底讲了什么。通过主动思考来把东西学会
(2)对外界提问,也就是有了不懂的,用google去搜,也就能发现RailsCast, StackOverflow, 以及等等书、视频等学习资源
8.
如果对产品兴趣远大于技术的话
其实学完了,可以看看《Lean Startup》等等。