其实注册 Ruby China 很长时间了,但我工作中其实是做产品的,平时自己以为对 Rails 感兴趣,所以跟着 Michael Hartl 的Ruby on Rails Tutorial: Learn Web Development with Rails学习了很长时间。当然,也感谢@andor_chen的Ruby on Rails 教程中文翻译。
基本通过对于以上开源项目的学习,对于 Rails 里面数据库操作、用户注册等方面有了了解,从而促成了UCDNews的实现。其实,我们做产品的之前都比较喜欢看UCDChina,基本里面都会更新一些最新的产品、设计、用户体验等相关的文章。而现在他已经停止更新了。
于是,我萌生了做 UCDChina 的想法——汇集有价值的信息,避免一些冗余无用的口水文章,像虎嗅网这种公关文云集的网站,有用的太少了。而能够用自己欣赏的 Rails 来实现自己的想法,确实让我体会到了其中编程的乐趣。
UCDNews 其实后台就是包含了文章类别管理、文章期数以及文章的管理(增、删、改),由于不对外进行用户注册,所以技术逻辑还是比较简单清晰的,认真学习了 Ruby on Rails Tutorial 基本就能够掌握了。所以没什么技术难点。另外,由于功能简单,所以基本对 RSpec 测试这部分没有进行编写,大多手动 Debug 找问题。
而前端这部分,大学时候对 HTML 和 CSS 都学过,虽然没有 Javascript 相关的学习,但是对付这类小产品也是绰绰有余了。(额,有点不谦虚了-·-)
网站去年年底就做出来了,后来一直卡在了部署这块儿,就搁置了。知道清明假期这段儿,就下决心把它搞上线。开始买了Rails 程序部署之道准备来学习一下,结果里面的 Chef 这个东西把我搞的一头雾水,而且下面的 Capistrano 也与 Chef 有点结合,所以先放弃了这本书里面的方法策略。
部署这一块儿,Nginx、Unicorn、Posgresql 安装都没有问题,纠结的是 Capistrano。本来准备学习campo里的部署方法,用 v3 版本进行配置。后来遇到了些问题,一股脑儿,就照着Deploying Rails app using Nginx, Unicorn, Postgres and Capistrano to Digital Ocean模板案例进行 projectname 以及服务器项目路径等变量的修改,另外 Capistrano 的 gem 版本学习了 ruby_china 里的。Deploy 的过程中,遇到了好多问题,最后都在 Stackoverflow 里找到了答案。感谢~
非常享受,自己构思产品并自己实现的过程。希望喜欢的人能够常来UCDNews.com。
夜深了,祝大家晚安!