学习编程 60天能学到什么?
还记得去年年末,连续听了两期的元学习课,十分过瘾,并一股脑冲动地去买了台二手的ipad pro, 什么都没装,就下载了一个APP叫Swift Playground, 连续玩了两天,把Learn to code 1给通关了。
尝试过学习编程很多年,那是我第一次对编程开始有了发自心底的热爱,而这种热爱,居然是来自一款游戏。
一场元学习课,刷新了我对技能学习的看法,也让我重新对编程之意义有了重新的审视。
当时,为此还专门写过这么一篇读书笔记...
《你真的会学习吗?颠覆你的认知!——纯干货!元学习方法论总结》
http://www.jianshu.com/p/9d2841aba8b2
12月8日,元学习课的最后一节课,听到Xdite说她开办了线上的全栈营课程,并且要一万多块钱,听起来很贵的样子,当时,我没有一分钟的迟疑,就付了款。
曾经立志健身,也花过近万元请健身教练,听起来很贵,但的确,卓有成效,刷新了我对健身的认知,如果当初没请教练,估计自个再练几年也是白搭, 也许那次健身,是我长这么大以来最划算的一次投资了吧。
如果对自己真有用,学费还都是浮云。
健身之外,还需健脑,健脑比健身重要,也许英语对于很多人来说是一辈子无法言说的痛,编程之于我也是。
就拿编程,我经历过数次的从入门到放弃,学生年代,300多页的C++程序设计,看了三分之二, 却从没动手设计过任何程序,最终随着进入社会、彻底地放弃了学习。
或许是当初动力不够,耐心不足?
也许我再次入门,也还会再次放弃,但决定还是要给自己一次机会...
好在自己条件具备,已经有了一台mac, 学着安装开发环境,ruby on rails, 黑乎乎的窗口, 顿时,满满的新鲜感。
60天学习了什么?
关于教程
跟绝大多数同学一样,大家几乎都是白天需要工作,然后利用业余的时间学习。60天的时间,其实花在编程上的时间很短,但收获很大。
Xdite 有一套非常意思的教学手段,她精心地写了一套非常详尽,连傻瓜都能看懂的教程,然后我们这些“傻瓜”跟着她的教程照做...
可大家都是0基础的情况下,上手就让我们做项目,一口气先做几个完整的程序,管它什么叫”数组“、“字符串”呢...
这一套方法还确实有用,跟着做项目,开始至需要拼命地抄代码、代码看不懂?有什么关系呢,那就直接背下来!
对,最重要的代码(实现动作的CRUD部分)抄下来,默写5遍。
跟往常抱着编程书死啃的方法不一样,学习编程最有效的办法是,直接去接触、去熟悉代码,然后再后面的反复的练习过程中慢慢理解,慢慢顿悟。而不是从基础开始,从教你什么是数组,什么是字符串开始。
还真是有效,我当初超这段代码的时候,打死我我也不知道param[:id] 是什么意思,抄写多了,于是就慢慢领悟了。
有种可意会不可言传的赶脚。
冲进度是我们最经常的状态,遇到不理解的地方,就用笔把那几个陌生的名词记下来,然后再继续。很多当初觉得是问题的问题,在赶进度的过程中,发现原来这根本不是问题。
面对一个全新的领域,人是无法用未知去解释未知的,当你学习了足够多的概念,这些概念在你的脑子里产生了关联,它们的联系越多,领悟得也就越透彻。
前提是你得先学足够过的概念。
关于线上直播
在全栈营,学生除了有空就上网站跟着教程学习外,Xdite 每个星期一都会给我们直播,上一堂鸡血课,比鸡汤还牛逼,直接灌鸡血。
这是我们能够保持持续前进的最大的动力吧。
就好似当初健身,教练除了端正一些姿势,教一些科学的方法,教练最直接最重要的作用就是,在你坚持不住的时候,站在身旁一句吼,然后感觉自己又充满力量,爆发出身体潜藏的能量...
Xdite的鸡血课总是富含营养,我开公众号以来,写的文章几乎都跟Xdite老师有关,全是她教的内容,然后我就即学即卖。
出门左转,可能还能翻到我过去写的几篇关于学习编程的文章。
《一个时间管理的小套路》
《做一个全栈的人》
《编程,从入门到精通需要多久?》
《如何多活几辈子》
《Landing Page 之洗脑套路》
别以为是我对这些东西有多深的认知,其实不过都是刚刚从Xdite 这里学习过来的,为了领悟,不得不回去写篇读后感交个作业罢了。
哈哈,Xdite 是个神奇的姑娘,俗称“套路王”,总有分享不完的干货,就连获得Facebook的Hackthon比赛都是靠套路赢得的,不得不服...
关于编程比赛
全栈营里,最有意思的是编程比赛,我们特么刚学会让一个网站顺利运行,就被要求参加比赛了,比什么呢,比装修网站!0基础的小白可都是对HTML CSS JS 啥的屁毛不懂,怎摸办?立即学!
缺啥补啥,想要做什么功能,实现什么效果,就立即自己到w3school等各大网站自学。CSS的什么padding margin, 还真没人手把手地教过,全靠自己去主动学习...
一个月的时间,就逼着大伙去装修一个装模作样的招聘网站,两个月的时间,就逼着上线一个购物商城,让人震惊的是,前几名同学的作品不仅功能完整,而且版面样式简直就是好看到爆,真不敢相信这是小白做出来的...(虽然我的作品也不丑,但真不好意思拿出手。)
在正确的方法、好的教程指导下,其实拼的真是勤奋,谁用心,谁付出的精力更多,谁获得的回报就越大。真心佩服那些获得好几百票数的同学们~~
Xdite在教程的设置上,在让课程“游戏化”的设计上真是煞费苦心呀。一节一节的课后作业,跟着完成,让人有一种做游戏打怪升级的感觉,而到了后面的编程比赛,更是令人直呼过瘾,八仙过海,各显神通,一道没有标准答案的考试题,怎么好看怎么来。
关于Meetups
学习的路上,最害怕的就是孤独,一个人在家死命地学,恐怕也不一定能一直坚持下去。互联网解决了这个问题,哪怕学的是很冷门的东西,都能找到志同道合的人,深处大城市的伙伴们很幸运,每周都能参加线下的meetup 活动。
一来,许多自己在家苦思冥想的问题,问问别的同学,可能一句点醒梦中人... 三人行,必有我师...
二来,每当看到还有比自己更努力的人,自己怎么好意思不坚持下去呢。
前行的路上,能遇到同路人,便是庆幸。
越写越像是我给全栈营打广告了,还真不是,我只是为了完成学习作业,写个学习总结而已。(哦,话说回来,如果想加入,貌似找老学员推荐有什么好处?可以问我,但我可不会随便去忽悠人加入。)
作为深处学习全栈工程师的这个群体,太高调会被骂的,主动去宣传也是吃力不讨好的。去年李笑来随口一句说人人都可以在一年之内成为全栈工程师,在知乎上被骂的惨不忍睹,100个人中99个人骂,谁特么交钱去上课谁特么傻逼、脑子秀逗了。
我脑子确实秀逗了,不过我愿意。
你学你的,让别人叽叽歪歪去吧。
60天有哪些变化?
放下傲慢的姿态。
这是刚开学时学到的,但践行不容易,那谁说,弱小和无知不可怕,最可怕的是傲慢,学习前的最关键就是要放下傲慢的姿态,你以为你懂,所以不按照老师的去做,不做老师布置的作业,学不好就正常了。
教程布置了很多作业,但大部分都很简单,有些作业,容易到令人发指。
容易,并不是不做的理由。既然决定跟定了老师,那就必须跟着完成作业。
有些作业也真不容易,动不动要写5篇文章,我到现在也还没做...
容易或难,都只是傲慢的借口,带着傲慢的心态去学习,只是做做样子,安慰自己是在学习。
写ORID
最记得有一次周二,Xdite 的直播与李笑来的写作课时间重叠,有人略有不舍,Xdite 直接表示,听我的直播绝对比听李笑来的写作课更有用,你如果连写21天的ORID试试..
21天后你会发现你是一个写作高手...!
什么是ORID呢?就是每天反思,用几个问题自问自答:
- 关于今天的课程,你记得什么?完成了什么?(Obervative)
- 你要如何形容今天的情绪,今天的高峰是什么,低点是什么?(Refective)
- 你今天学到了什么?今天的一个重要领悟是什么?(Interpretive)
- 我们会如何用一句话形容今天的工作?有哪些工作需要明天继续努力?(Dicisional)
就这样一路问题回答下来,就是一篇文章。
我惭愧我没有每天都坚持写,但这两个多月,也写了40多篇博客了,也是挺欣慰的。
这是我的博客,只记录一些编程的东西,也只有自己会看看啦...
http://sujiang.logdown.com/archives
ORID写作法是我学到的最实用的记录方法,之前刚决定写作时总是愁写什么...其实,ORID就是一个自我反思的方法,写作只是把自己的反思内容写了下来。
而且每次当问自己,你今天学到了什么的时候,脑子里偶尔一篇空白,于是你就会往回翻教材,这是一个非常有效的提取记忆的过程... 勤于总结是学习进步的最有效做法。
时间过得很快,你很可能忘记一周前发生了什么,甚至昨天发生了什么... 而这些文章是让你回忆过去的最有用的东西。
我是来学编程的,可我顺带学会了写作!
淡定...睡觉
编程是出现各种红色警告,仿佛是一台机器的愤怒的样子...
红色让人感觉紧张,其实,机器只是在提醒你,你没有做正确而已。
编程经常踩坑,而且很深的那种,无法自拔...一开始遇到一个解决不了的bug 总是会极大地影响情绪,怎么都搞不定,不搞定然后就很不爽, 有时甚至放弃从头开始。
后来遇到很多bug, 经历类似的的问题,再回望,只不过是个小bug 而已。
Xdite 老师说,不要在自己精神状态不好的时候学习。当你越到bug 解不了的时候就去睡觉!
睡觉这招真是百试百灵,每次第二天清早再看问题,都仿佛变得容易了。
高度集中精力很难,编程是要经常性集中精力的。
做最重要,最复杂的事,在自己状态最佳的时间来做,事半功倍...
状态不佳,就睡觉吧。
正确的时间点做正确的事,这就是变幸运的方法论...
有问题找谷歌
刚使用互联网那会就听人家说,搜中文用百度,搜英文用谷歌...
10年后,谷歌还是那个谷歌,百度已经不是当年的...可能还是,我不知道。
哪怕是搜中文,用谷歌也是必要的,搜索内容结果更纯粹,更真实。
不要问我上不了谷歌怎么办,真想要解决问题的人是会想办法解决问题的。
对于学习编程的人来说,几乎大部分优质资源都是在国外...
编程的过程中,会遇到很多莫名其妙的坑,你也许觉得你很惨,悲催地碰到各种鬼事,其实只要一搜,你不孤独,谷歌上大把的人跟你有一样的可恼。
Google 上经常会有Stackoverflow的结果,而这个网站经常能有我想要的答案。
总结。
其实参加这么个线上的课程,学到的东西更多的是在编程之外, 编程只是实现自我需求的一种方式。
两个月的收获很多,学习方法论,写作,精力管理,项目管理,growth hack... 这都是编程之外的软件能...
这也许就是“全栈”的意义、想要成为超级个体的意义...
两个月的时间,只是一个里程碑,未来的路程还很远,我很庆幸我已经踏上了这条路...