2013-11-08 更新:已找到满意的工作,感谢大家的鼓励。
网站:WaterFlowsEast.com,源代码:这里
接下来,我会 1) 介绍这个项目 2) 找一份工作
项目从 8 月 3 日开始,在 10 月 31 日告一段落。8 月 3 日~8 月 28 日,参考大量网站,用 Foundation 框架将主要的页面写出来,并用蹩脚的 PS 水平制作所需的图标。设计页面的流程、数据库的字段、各个页面的显示内容,以及斟酌用词。8 月 29 日,开始建立 Rails 项目,并进行了第一次提交。之后,一直到国庆放假前两天,写的都是后台代码。国庆回家,几乎没写什么代码。国庆回来,连续好几天没心思写代码,后来勉强在 10 月 18 日把所有的前端代码写完并提交。10 月 19 日~10 月 31 日,优化用户体验、写文档。
问:为什么每次提交都是一大片代码,而不是一个功能点的代码 答:为的是让初学者能够看出来我写这个项目的大概流程,提交次数太多的话,很难从整体上看出流程
问:为什么没有测试 答:没有精力。JS 的部分,我不会测。Tire、Sidekiq 的部分,要通过读它的文档,我才会测。暂时没有精力
问:以后还会补写测试吗 答:如果后续有比较大的开发或者是有空余时间的话,我会补写核心部分的测试
从 GitHub 上把源代码 clone 下来后,直接查看 README.md,里面分别说明了如何在本地与服务器上运行这个项目
你可以登录网站,在【本站相关】节点组下的【疑问】节点发帖(会扣除你 2 个积分),或是在站内发私信给我(如果我没有关注你,会扣除你 8 个积分),我会尽量解答你的疑问。
目前,网站运行在 512MB 内存的 Linode 上。如果用户增多,导致无法满足需求,我会考虑移到国内,并增加内存。
11 年 6 月本科毕业,7 月入上海一公司,维护一个 C 语言项目并偶尔写一些脚本。12 年 2 月第一次知道有 Ruby 这个语言,但只是随便看了下,没有放在心上。两三个月后,第一次知道有 Rails 这个框架,挺感兴趣。因为 Rails 是用 Ruby 写的,所以花了两个月时间把 Ruby 相关的入门书籍看了个遍。
之后,开始跟着 Michael Hartl 的 Ruby on Rails Tutorial 学习开发,但因为对 web 完全没有概念,也没有人进行指导,遇到了很多阻碍,最终没有坚持下来。后来,慢慢地觉得在公司继续待下去,维护一些不知道有谁真正在乎的项目,既不能给我带来成就感,也不能给我带来幸福感。那段时间非常失落,不知道自己该怎么办。
最后,决定转行做 Web 开发。一方面,我对 Rails 开发挺感兴趣;另一方面,我觉得开发出一个 Web App,如果有人使用它,能给我带来很大的成就感。作出决定后,打算一边工作,一边学习,等到学得差不多的时候,再去找工作。接着,便是学习各种 web 相关的知识:html、css、javascript ...
学了好几个月,但因为只在空余时间学习,工作上又时有烦心事影响学习,再加上本来底子就薄,学习效果不甚明显。这时候,本打算离职,进行全职学习。但琢磨着可能需要半年的时间,保险起见,可能需要一年的时间,手头的积蓄不足以让我支撑那么久,再加上农历新年将近,我还盼望着年终奖,所以就忍了下来。过完年,到了 13 年三月份,手头的积蓄能够支撑我进行全职学习了,就向公司提出了离职申请,四月初,项目交接完毕,便离开了公司。
之后的 4 月~7 月,是我进行全职学习的时间。先是学习前端技术,然后温习了一下 Ruby,等有信心了,便再一次学习 Ruby on Rails Tutorial。这一次学习,因为基础知识扎实了,明显比上一次轻松很多,我照着它的流程敲了三遍代码。之后,准备完全脱离书本实现一次,考虑到时间的关系,省略了所有的测试,也省略了所有的前端效果,还省略了一些非核心的代码。即使这样,还是花费了我整整两天半的时间才把它写出来。
不满足于这样的速度,之后又练习了好多次。每练习一次,理解便深刻一分,速度便快上一分。练习到后来,一次练习一般需要一小时 45 分钟。总共练习了大约 30 次,最快的一次用了一个半小时。我还特意上传到 GitHub,留作纪念。
等完全熟悉了 Ruby on Rails Tutorial 的代码后,便开始看介绍 Rails 开发的 PDF 和个人博客,对于精彩的代码,我也会自己实现一遍。看完之后,我又把 RailsCasts 上所有的免费视频看了一遍,对于自己感兴趣的又另外看了一遍。而那些我觉得特别有用的,也特意实现了一遍。之后,开始看各种 Gem 以及开源程序的源代码。转眼间,来到 8 月,我觉得自己已经有能力独立写出一个优秀的程序,便开始进行开发,一直到 10 月 31 日结束。
至于为什么开源,是因为我非常感激 Michael Hartl 能够将 Ruby on Rails Tutorial 免费地发布在网页上,也非常敬佩 Ryan Bates 能够不辞辛苦地发布视频,帮助人们学习 Rails 开发。如果我的程序能够帮助到别人,我会觉得自己做了一件有意义的事情,会感到很开心。
如果觉得我是你们公司所需要的人,请发送邮件到以上邮箱。 如果方便,请在邮件中说明你们团队做的是什么产品,为什么做这个产品,以及联系方式。 如果贵公司之前在 ruby-china 发帖招聘过,邮件中什么都不用写,直接贴地址即可。
对于所有的邮件,我都会进行回应。如果权衡之后,我觉得自己不适合贵公司,为了节省贵公司的时间,我会直接在回复的邮件中说明。如果我觉得自己适合贵公司,我会联系贵公司进行面谈。
一旦找到工作,我会在这里更新帖子。之后,若再有发送给我的邮件,我将不再进行回复,感谢理解。
最后,非常感谢你有耐心读到这里。