好友大蓝孩是某互联网公司码农,在阿尔山国家森林公园,当大家拿着长枪短炮在拍银河时,他独树一帜地用安卓手机就拍出了泛着蓝紫色光的璀璨银河,瞬间吸粉无数。那时我拿着苹果手机,因为不能手动调整快门时间而被鄙视了一番。

时隔一年,我们再次相约号称北京周边最美银河观景地的冰山梁,这次我已换了国产最新款的拍照手机,想着终于能一展身手了。
结果,我才发现,我和他差的是一个手机吗?不,还有十行代码!
那天,他打开按键精灵app,自己写了一段不到十行的脚本,这时,手机就可以自动运行,按照事先设定好的时间间隔全自动按键拍照了,就像手机装了一根“隐形”快门线,高级感十足!

如果你懂点摄影,你应该听说过很多人为了拍银河,要在冷风中瑟瑟发抖冻半宿吧。而大蓝孩那晚就躺在山顶温暖的帐篷里,听着帐外的手机快门声就拍好了银河延时摄影,向我实力证明了什么叫“编程解放生产力”。

更夸张的是,大蓝孩那波充满技术风的狗粮。他的女朋友迎春在广告行业,每天需要处理大量的数据,经常加班加点,极耗精力还易出错,女朋友每向他抱怨工作累,大蓝孩心疼妹子的方式是,用编程语言写了几个小时的代码,从此,此类数据就可以自动分析处理了,迎春妹子1天的工作量从此几分钟就可以搞定了。这大概就是“人狠话不多”的程序员独有的实力宠女友吧!
是谁告诉我码农都是直男的?这样的实用撩、这样浪漫且务实的男友,哪里有卖?
也是那时,我第一次有了要好好学一下编程的想法。虽然编程学习已经越来越普及和低龄化,但大学转文科的我,一直怀疑自己到底能不能学得会?直到朋友向我推荐了《学习编程》一书。书的扉页上写着适合9岁以上儿童,仿佛给我一下子注入了信心,9岁孩子都能看得懂,我肯定没问题,针对儿童的书籍,往往语言更加通俗易懂,且图文丰富,易于理解,这对于初次接触编程的我来说在合适不过了。

《开始编程》的作者是邓肯比迪,整本书由故事驱动,故事从芒克砖石丢失开始讲起,扣人心弦,贝尔斯通博士、戴博士等人物既风趣又礼貌。
整本书有6章,也就是有6个有趣的任务,复杂的编程问题分解成了很多小步骤,通过完成这些小任务,不管你是小朋友,还是初次接触变成的大朋友,你都可以在故事中、游戏中学会运用新的HTML、CSS和JavaScript编码技能。

如何使用这本书?
《开始编程》每一章节分为任务简介、探险家百科、编码技能、DIY作业四部分。每项任务开始前,你会收到故事人物发来的任务简介,有点像《奔跑吧兄弟》中的任务环节。探险家百科是补充信息,帮助完成任务的,编码技巧部分主要是不同编程语言的编码技能的练习,通过实践帮助你更好地理解。任务最后的DIY作业,是需要运用新学到的编码技能来完成的。


也许你已经发现了,与阅读其他书籍不同的是,阅读此书时,你最好需要有一台连上互联网的电脑,通过不断用电脑完成任务,你才能在理论和实践中真正把书中所讲知识点理解透彻。对读者来说,这种方式很特别,可以激励读者保持兴趣完成整个项目,并获得反馈和鼓励。
对于我这个编程小白来说,《开始编程》这本书让我受益匪浅。
一、编程不仅是谋生手段,更是生活工具。
很多人拒绝学习编程的原因,大概是我又不是专业程序员,学这个没用!但其实,当你掌握程序语言时,它不仅仅可以提高你的生活效率,甚至可以大大提高你的恋爱效率。
你是否想在互联网中给自己留一块隐私地呢?《开始编程》书中任务2即为创建密码,教你使用JavaScript实现创建密码保护网页安全的愿望;你是否想要自己规划一条定制版的莫斯科旅游线路呢?任务4即为规划路线,教你使用Web API和百度地图实现这个愿望;你是否想要自己开发一款心仪的小游戏呢?任务5即为制作游戏,教你使用CSS、JavaScript等实现制作游戏的愿望。

编程的用途,已不仅仅停留在解决工作难题、增加生活趣味性上,现如今,它已经衍生成很多程序员的撩妹神技能,助攻爱情战役。
社会对程序员的最大误解,大概就是觉得他们不解风情、平淡无趣。然而,你以为他们被996已经榨干了,可他们认真起来,真得浪漫得可怕!
最近网络中流行一则京东开发工程师的朋友圈,晒了一段程序以及和老婆的聊天记录。没空陪老婆?直接写个程序代替自己和老婆一起聊,全天候24小时推送问候+图灵机器人自动回复微信消息。利用代码表白的桥段更是数不胜数,“我最擅长的事就是将不可能变为可能,比如我一分钟就可以跟你说99句‘我喜欢你,做我女朋友好不好’,你信不信?”,然后男主就用txt文本写了一段代码,改为vbs后聊天框中按序号自动发送了99句“我喜欢你,做好女朋友好不好”。当这波操作结束后,女孩回复他,“程序员就是流比,明天一起看电影吧。”

二、永远不要用“我以为”拒绝新事物。
15岁时,觉得学游泳很难,放弃游泳,到18岁的时候遇到一个你喜欢的人约你去游泳,你只好说:“我不会耶。”
18岁的时候觉得学英语难,放弃学英语。28岁的时候出现一个很棒但要英语很好的工作,你只好说“我不会耶。”
这是蔡康永的一段忠告。

其实,学习编程也一样,现如今,全球进入互联网时代,编程是独属于互联网的语言,HTM、JavaAcriptu、Python、C++等,如果你还因为觉得难,而故步自封拒绝学习,尤其是对于还年轻的你来说,也许未来,你也只能说“我不会耶”。
学习编程,也并不一定要学习的技术多专业多厉害,《开始编程》一书告诉你,这不仅仅是一项专业的技能、实用的技术,更重要的是帮你从小培养一种编程思维,促进智力发展水平和逻辑思维能力,通过这项奇妙的技能搞定很多互联网时代的困扰。
学习计算机编程需要经过两个重要的步骤。
第一步是形式化定义,就是对真实世界或者真实问题进行分析,将其中关键部分进行抽象,最后表达为数学问题,这个步骤能锻炼读者的抽象能力,这是中国孩子目前较为缺乏的一种能力。
第二步是逐步分析,将形式化定义的问题通过算法逐步分解为计算机可以执行的步骤。由于计算机算法必须具备严格的逻辑关系,因此这一步能够锻炼孩子的逻辑思维能力,促使孩子对事物因果关系进行更深层次的思考,而这种思维方式正是现代科学中最基本的思维方式。
不难发现,编程对理解能力和思维能力有一定的要求,对不同年龄段的孩子就应该采用不同的学习方式。7-9岁以下的孩子可以从图形化认知方式开始,逐步建立对编程的兴趣,所以更适宜学Scratch这类简单的图形化编程工具。7-9岁以上的孩子可以直接开始学真正的编程,如Javascript等,尝试用灵活多样的方法来解决一些复杂问题,逐渐在编程过程中融入自己的思想,在训练编程思维的同时也可以享受到编程的乐趣。
《开始编程》正是适合7-9岁以上的孩子以及对编程感兴趣的成年人,从零开始,靠故事驱动,一步一步设计出网页和游戏,带领孩子和感兴趣的成年人迈入编程大门,从此进入一个充满创意的新世界。
三、编程一定要规矩,遵循语言规则。
写代码的过程,总是离不开各式各样的英文单词和符号,例如分区标签<div>,例如css属性的文本对齐方式text-align。也许刚开始入门的你并不认识,但你大可不必痛苦,这些都大有规律可循。

每种编程语言都有特殊的编写格式,并且有他的语法,而且对大小写敏感。《开始编程》一书中反复强调,编程过程中,一定要仔细输入代码,代码一旦出现了一丝差错,网页浏览器就不能读懂你的代码了!例如,在书中讲述JavaScript语言时提到,变量名字中不能有空格,文字值必须放在半角双引号中;编写CSS类名时,必须以一个点号开头。
“写代码就是补窟窿,花80%的时间改bug,再花20%的时间写新的bug。”其实,很多bug都是由于编写习惯不规矩造成的。这就提醒我们编程小白,在刚入门学习编程时就要规矩,千万不要养成乱敲空格等坏习惯,一个好的编程习惯会让你事半功倍。
如果你恰好也对编程感兴趣,恰好也是从零开始,恰好担心自己学不会,不妨从这本9岁孩子都能看的懂的编程书《开始编程》开始吧,用编程做一个浪漫的人!
“书卷多情似故人,愿与君享书评事。”我是书评萝卜君,如果你也热爱读书,欢迎关注,一起读书破万卷,交流读书事。