2016-07-09 首发
上期链接
已经收到了几位新生大学同学的私信,交流学习编程,很开心。有同学还以为我有点基础,相约一起学Ruby on Rails。网页基础我才学了三四天,对其他技术连基本概念也没有,抓紧吧。本科读的市场营销,毕业后在文化机构做过一阵活动策划和布展,后来留学读酒店和展会,又从事一阵旅游和展会行业。回国后做了点外贸和相关运营工作,真没计算机基础。但想让自己在这年纪达到初级程序员的水平。
学习进度 (7/4开始,截止7/9)
1.完成Coursera港科大全栈网络开发第一周课程听讲
2.完成Coursera上Johns Hopkins的HTML课程第一周课程的免费旁听
3.完成FreeCodeCamp的注册和关于HTML的5学时练习题
4.完成李笑来《人人》推荐的stylish,sublime等安装
下一阶段学习任务(7/10和7/11)
1.完成港科大全栈第一周的周末课题(交友网站的信息输入页面设计)
2.完成W3schools的HTML练习题
3.继续寻找其他优质HTML学习资源进行练习(参考李笑来的推荐)
阶段小结
用了差不多三个清晨,把港科大全栈的week 1课程听完。因为晚上网络速度不太好,经常卡顿。(虽然coursera提供mp4课件,但清晰度很低,代码看起来有点吃力。在线才能看中等或高清版。)利用清早5点半到7点半的两个小时在线看并做些笔记。香港科技大学的这套课程从7月4日开始,大概10月下旬结束基础课,明年1月底完成实践项目。以下是课程时间表(有变动可能)
在course 1的week 1课程里,学习了很多HTML和CSS的基础概念。老师是港科大CS副教授David Rossiter,主教本科生和研究生课程,在学校官网里受学生好评很多。他在cousera的课程的讲解结构清楚,调理清晰。能把各种基本概念解释到位,偶尔穿插一下HTML技术的演变历史,并演示了几种初学者易犯的错误。
这里再特别推荐另一门coursera上相似的课程,可免费旁听的Johns Hopkins的HTML, CSS, and Javascript for Web Developers。开课的Yaakov Chaikin在第一段视频一上来就很霸气地介绍,“我可不只是做教学的,还直面客户们给他们做实际应用开发。我可是前端后段样样精通,实战经验不知高到那里去~~(大意翻译)。”感觉这门课可能更适合零基础初学者,因为他的讲解更生动,包括用很多幻灯片来解释基本概念。我把这门课作为对HTML的复习轮次听了一遍,又有不少新收获。另外,这门课第一周的第二课还有福利,手把手视频教你安装sublime编辑器,node.js,browser sync,github注册等等,要学《人人》的朋友们赶紧来注册这个课程啊。(这些软件大都也在李笑来《人人都是工程师》里要求安装,但安装介绍比较简单)。
刚学的HTML和CSS还是非常初步的知识,就算听了两个教程,还是需要大量的练习题来巩固。感觉练习时间怎么也应该是数倍听课时间,真正熟练掌握估计是数十倍甚至百倍的时间。开始做题时很容易记得这个忘了哪个,一个简单的需求要反复演练数次才能初步实现。学编程的确有点学习语言的意思,从填空到造句到结构布局。需要大量练习形成肌肉记忆(Xdite经常提到的方法)。下周还要开始JavaScript呢,想办法多找习题,多做整理吧。
近期惊喜
最大的惊喜,还是通过不同材料的听讲,查询,习题练习,从不同层面反复接触知识点的感觉,很爽。学习效率能提高很多。基础的HTML元素之类就不必说了,就连软件工具,比如李笑来推荐的atom编辑器和sublime编辑器,分别被港科大和约翰霍普金斯的课程所推荐,在course上还有《人人》没有的视频演示,对我这种白丁很有帮助。
刚刚听完了港科大课程,就到被其推荐(同时也是李笑来推荐)的w3schools上复习各种知识点。被W3Schools的友好界面和网页内置编辑器所折服。但接下来尝试去FreeCodeCamp注册后发现,FCC的练习题比W3S强大的多!FCC把计算机编程的各科知识点做成了类似游戏通关的各套“关卡”,每套“关卡”都有数十道练习题。每道练习题之前都有详细的知识点介绍,然后给出相应的代码格式,最后大都只要在这些格式的基础上完成几个参数的修改几可完成题目。而且题目大都是层层推进的,几十道题目下来就是一个微型项目被搭建出来!界面左侧就是知识点介绍和练习题,中间是编辑器,右侧是基于编辑器的实时页面。相比之下,W3S的练习题界面就弱了。但W3S胜在知识点介绍详尽,更像一本工具书或参考手册,便于快速查询。
FCC的5小时HTML练习,我今天上午一开始做就停不下来,大都快速完成,偶尔有两道题卡住,实在找不出解决办法,就去在线讨论区尝试提问,结果就有两个世界不同地方的兄弟帮我热心解答,哈哈,世界真小。后来,再google了一道题,结果发现github上有个兄弟已经在两个月前把包括HTML在内的很多“关卡”的所有题目和答案给公布出来了(⊙ˍ⊙) 。不过只是为求快粘贴答案也没意思,骗电脑的结果不是骗自己么,傻X事情还是不要做。当我不停做到第3小时,还差四五道题目就可以完成号称要5小时的挑战之时,发现大脑开始思考困难了,不是缺睡眠的犯困,是真心大脑转不过来了(>﹏<)。最终果断决定,戒糖减肥的方法调整下,三个多月来第一次抓了两颗巧克力塞进嘴里,幸福啊~~~~
胡思乱想
HTML和CSS里有大量的命令可以用来提高编程效率,比如对数据分类后的批量处理。那种用了更高效手法减轻工作量的感觉真是一个爽!看来编程的确能大大帮助我提高理性思考的能力,培养大脑对数据量化的能力,提高对时间的测量感觉。这才只是网页的及其初步的编写,今后的征程相信有更多精彩可看。
今日推荐
警告!以下推荐的节目,其内容是出了名的湿货多,不喜勿入╮(╯▽╰)╭
不鳥萬如一主持的《IT公论》和续篇《一天世界》是我在决定学编程前常听的仅有的IT相关播客了。6月底他做了一期讨论hardcore的节目,很有意思。以下节录最后几分钟的文字:
“我想起当年,像坂本龙一在当年对于第五代计算机的那种其实是非常uninformed的那种enthusiasm,那种热忱,那种兴趣,其实恰恰反映了他努力地在伸手去够刚刚处在地平线以外一点点的东西的那种姿态。必然包含了相当程度的不专业,就是包含了我刚才说的uninformed,包含一种不懂,和一种天真的想象……Hardcore象征着不知道自己能不能做好,在相当程度上不具备专业知识的前提下,去进行的那种奋力的努力的姿态……所以Hardcore包含了一种不专业,一种业余感,一种不管怎么样也要做到的感觉(27分03秒起)”
不鳥萬如一又引用Jerry Seinfeld在网络剧Comedians in Cars Getting Coffee的S7E1这集开头,谈论“史上最酷”1963款克尔维特跑车时引出了一段话(在他看来就是hardcore的本质意义所在):
The idea behind this car is just confidence. This came from an American culture that just say things and do them without having any idea how. We’re gonna put a man on the moon. How are we gonna do it? When we gonna do it? Why we are doing this?No idea. We just did stuff — crazy but great!
最后引用了《博物志》主播婉莹曾做过的一档节目《不会聊》的口号:
“不会聊,我们也要硬聊!”