搜索
您的当前位置:首页正文

记 Rails Girls Beijing 第一次线下聚会

来源:二三娱乐
时间:2015年9月24日 7PM - 9PM
地点:中关村36kr 办公司

薛定谔的猫?切,还看咱Rails Girls 的猫「七七」Review Code

七七的照片.jpg

北京的雾霾,让人懒惰,不愿意出门,更愿意死宅。一是健康考虑,感觉在室内能少吸点雾霾;二是天气对人的情绪影响,灰蒙的天有能抑制人类「社交交感神经」的作用。

不过,线下聚会两天前发布,虽时间紧迫,虽是在工作日的晚上7点开始,亦是有12位学员报名,确切地说应该是有15名人员想参加。有与会人员说「这些来参加聚会的人,是真的想学习编程的」

我更是在5:30便驱车来到中关村,怕由于堵车的缘故,作为主要组织者迟到耽误了大家的时间。已然有大半年没有来过中关村创业街,这里新多了几家咖啡厅、也有其他没见过的企业入驻,样貌改变不少,或许这现实物理世界的改变或多或少反应了互联网对世界的改变。以前的步行街没有几家义务小店不叫步行街,以后的步行街没有几家创业咖啡厅不叫步行街吧。

聚会之前,顺道去创投圈看了看教练若愚,就是活动中被最多学员围观的那位 CTO。

one-to-many.jpg

再是和36kr 的老朋友先见面,一起吃了晚饭。新认识了36kr 的员工文民和华宣

新智还是那么爱笑,腼腆的笑容让人初见就知道他是 nice 的哪一类人;

田老师,在发布新版本。闲聊中说到群里的学员在谈「如何科学上网」,让教练推荐 VPN,就问他自己的私有 VPN 是否还可以购买。他说可以,120一年。我说 RG 。「嗯,没问题」。

看到江华穿的还是那天的Rails Girls黑款衣服,想来江华是极其热爱 RG 的,这么多天了衣服一直没有脱下来。


7点10分,活动正式开始,5个学员,其中3个参加过北京上周的 RG workshop,其中一位带来的朋友,另外一位是深圳 RG 的学员Nerdy,来北京玩,也来我们的线下聚会玩。5个教练,加我一共11个人。

自我介绍 + 参与聚会目的

先是大家简单自我介绍,并且说说今天来主要想听什么分享、其次说说在学习过程中得心得。

大家反馈了一些问题:

  • 如何安装环境/1人
  • 0 基础学习编程的学习路径/6人 (报名统计数据)
  • 编程入门该如何选择教程
  • 市面上、或者说教练推荐的新手入门 Ruby、Rails教程都不是面对完全0基础的学生的,而是有一定其他编程基础的学生。因此看起来很吃力,效果不好

观看安装环境的视频

  • 分享了 的环境配置教程
  • 分享了他「Intro to Rails」的 slides

各位教练推荐学习路径以及书籍

各位教练各显神通,热情向学员介绍学习经验和推荐书籍,但是学员脸上好似仍然充满了很多问号。

Rails 有三大原则:MVC 结构、Convention over configuration、DRY (Don’t Repeat Yourself)

而初学者入门的标准就是:你是否掌握了书写 MVC 的能力。能靠自己完整地写出 MVC,才可以算入门了。

新智提议,我们现场演示了如何从网站输入一个网址到写出一个完整 MVC 的过程,简略描述如下(下面都是我个人的讲述,请大家批判式看待):

  • rails new 网站名字 创建项目
  • 修改 gem source 地址
  • bundle install 安装 gem 包
  • rails generate controller User index 创建 MVC 中的 controller,但这个命令会同时建立 MVC 中的 V # 如果只做静态网站,那只需要 MVC 中的 CV就行了
  • rails generate model user name:string password:string introduction:text 创建 MVC 中的 Model # 这是动态网站的关键部分,业务逻辑部分体现在这里
  • rake db:migrate
  • 修改 controller 和 view

上面这些步骤不是关键,关键是理解 词汇、MVC 的逻辑、背景知识

  1. 陌生词汇。例如,rake db:migraterake 是什么意思?
  2. 一个句子、段落的抽象程度。抽象程度越高越难理解,但是阅读能力强的人能在极短的时间内看到二级、三级程度的抽象段落
  3. 背景知识越丰富,理解越容易。人的大脑天生有联想类比的认知能力,所有背景知识越丰富学起来越轻松,这也是为什么有编程经验的人教没有编程经验的人为什么能快速学习 Rails 的缘故了。例如rake db:migrate 中的 migrate迁移的意思,那这条命令的背景知识是什么呢?从语言的角度来说,主语和宾语是什么呢?是把什么内容从什么地方迁移到什么地方去呢?

反过来看(逆向思维是反省心智中较为重要的思维方式之一):如果能快速的了解一门语言的词汇、背景知识、个组件逻辑关系,学习起来事半功倍。

因此,大家在学习的过程中

  1. 遇到不懂得词汇要弄懂。最好的老师是 Google,不要用 Baidu。善用 Google,要学会科学上网,即翻墙,买个 VPN 一年百来块钱绝对物有所值。实在 Google 不出来,才去问程序员。不能什么问题都去问,人家也是要工作和生活的,除非人家收你钱有义务提供服务。
  2. 碰到看不懂的代码,要多去思考他们的关系,从语义上面、业务逻辑上面,弄懂代码的抽象意思,以后再读到这样的代码,即可一眼扫过毫无障碍。
  3. 背景知识靠积累,要多花时间。罗马不是一天建成的,coding 也不是一天就能学会的。保持初心、不急不躁。

慢慢来,最快速!

最后,谢谢深圳的 @Nerdy 送我两本书

2 books.jpg
Top