零基础向:为什么要学习编程&如何入门编程

这篇文章回答以下几个问题:

我们为什么要学习编程?

非计算机学生,如何对编程产生兴趣?

零基础,如何入门编程?

第一个问题:我们为什么要学习编程?

如果说和编程有关的最经常收到的提问,莫过于如何(零基础)入门编程/Python/爬虫。刚开始收到这种问题,还会认真地写点回答给些建议,后来见得多了,发现绝大多数都是只说不做的伸手党,渐渐地也就懒得回答了。

我们为什么会既热衷于“学习”,又热衷于放弃呢?

其实说起来,我是很热衷于号召乃至帮助大家学习编程的,虽然我正处于并且将长期处于编程的入门水平,但是我实在是有太丰富的入门经验了,以至于我已经很久没有在市面上买到、读到我理想中的入门文章了。了解我的朋友都知道,我经常会拉着他们忽悠他们学编程,其实最初是因为义务帮忙太多,想着教会徒弟闲了师傅。结果皇帝不急太监急,往往是虎头蛇尾。

在我自己的观察里,现在很多人患上了知识恐慌症(包括我自己),进而衍生出了“马克党”和“收藏夹党”,每每看到精品文章、入门教程,评论区“Mark”之,再往收藏夹一丢,从此相忘于江湖,知道某天翻起,已经忘记当时想看什么想学什么。如此循环往复,给自己一种每天都在接受新知识的错觉,殊不知轻飘飘的马克和再满的收藏夹,都不会把知识塞进你的脑子里。

说白了,在这个信息爆炸的社会,我们需要给自己一种时刻不停地学习的错觉。看到别人会这个懂那个,就往自己身上套,无怪乎如今智商税越收越多,割完一茬又一茬,不全是知识恐慌闹的吗。

但是,在许多无用的努力和浪费里,我却始终坚定:人人都应该懂点编程!

理由很简单,套用现在流行的时髦说法,现在是IT(信息技术)时代,以后是DT(数据处理技术)时代,而未来是AI(人工智能)时代。编程,则是迈入新时代必不可少的一块敲门砖。我们一直讲,编程语言编程语言,语言语言,你不学会和机器对话的语言,又如何使用乃至掌控机器呢?

编程是生产力,可以帮人节约非常多的重复劳动。举个栗子,上周末回家,接到我哥的电话,帮他在职介所的两张Excel表里根据身份证号的比对结果自动填表,学过Excel的同学都知道,一句VLOOKUP的事嘛。但是在没有学会这个公式之前,人工比对几百人的表格就要花去一下午的时间。节约下来的时间,不就是你的财富吗?再直白一点,学点编程,技能傍身,混不下去了也能养活自己,技术不断精进,收入也会随之增长,这或许也是最实在的收获。

有人又要说,我不跟数据打交道,也不靠编程养活自己,为什么要学编程?知乎大V ze ran在回答“你会为什么喜欢上编程?”时说:

编程是最容易习得的超能力。

何意?当你看到别人可以轻松搞定重复性工作,当你看到别人轻松抓取到导师布置的数据工作,当你看到人工智能切实改变自己的生活,你可能会高呼:Magic!殊不知,编程这种“雕虫小技”,实在是最容易习得的超能力了。这件事情,真的不难,但却可以改变很多很多。你可以不学习,但不可以不了解;你可以不认同,但未来可能不得不去……拥抱变化。

第二个问题:非计算机学生,如何对编程产生兴趣?

于是有人要问了,我不是学计算机的,甚至不是理科生,二指禅敲键盘,看见字母就眼花,看代码如天书,如何才能对编程产生兴趣?

兴趣是最重要的老师,没有兴趣,没有目的导向,是很难有效学习的。关于获得兴趣这件事,其实有些通法,然而矛盾之处在于:我们究竟是因为有兴趣而去做一件事,还是因为做一件事的成就感而对它感兴趣?

这也是我的一个主要观点,我在这里不再赘述如何把编程联系工作生活,也不再赘述如何坚持一份热爱,虽然这些都是有效的做法。但是如前文所述,学习编程,已经是这个时代你不得不去面对的一件事情,而培养兴趣,只是让你在这条不归路上走的更加心甘情愿而已。

兴趣和获得感,是相辅相成的一件事情。你很喜欢去做一件事,但是这件事却无法带给你丝毫的长进、收获或者新鲜感,那么你的兴趣会一点一点消失;某件事你虽然很陌生,但是你总能看到自己做出的成果,你每天活在进步中,也自然会对这件事越来越感兴趣。

学编程亦是如此。在我看来,很多人对编程畏难,很多人连入门都摸不着方向,实在是因为指导方针出了问题。编程难吗?难,学到精深处,需要大量的数学基础和推导,需要投入大量的精力,学好了能轻松月入X万;编程简单吗?简单,零基础成为一位“hello world”程序员也不过半天工夫。这并不矛盾,这就好像你是初入江湖的小虾米,偏偏要拿着木棍去挑战最终BOSS,BOSS打不过,小兔子小猴子小熊小野猪你还打不过吗……

所以,如何培养兴趣,这个问题的答案在我这里便是,选对正确的入门方向以后,不断依靠获得感、成就感和虚荣感(没错就是虚荣感,要敢于show off)提供给自己正反馈,进而巩固自己的兴趣。

第三个问题:零基础,如何入门编程?

那么,对于零基础的朋友,究竟如何入门编程才算做正确的方向?

首先要明确一点,编程之所以被成为超能力,在于其无所不能。学到深处,你自然可以跳脱限制,随心所欲;入门之时,你却处处碰壁,像蹒跚学步的孩童。其实如同学习外语一样,学的好了可以斗酒诗百篇,学的差者也能勉强日常读写。

单单讨论入门编程,我为大家指两个方向:一是写网页,二是写爬虫。

大家觉得编程很难,编程很神秘,却对Office不是那么畏惧,其实在于Office套件属于WYSIWYG(所见即所得)的软件。而大多数情况下的编程都是面对枯燥的代码,经历了艰深的入门,却很难看到代码的实际效果,更不要提理解其内部原理和运行过程了。

但是也有例外,网页和爬虫这对相爱相杀的孪生兄弟,就是学习编程中所见即所得的代表。

先说网页。我们日常浏览的网页是HTML格式,其本质是一个文本文档,和txt是没有差别的。我们之所以能看到页面中各式各样的图片、视频、动画效果,其实依赖于浏览器对HTML中标签的渲染。这就意味着,你只需要打开一个.txt的文档,写上几行简单的字母,拿到浏览器中打开,就能直接看到最终效果。进而你不停地学习更多标签、更多知识,不停地在浏览器中看到其效果,就能在这种反馈感中持续地学习下去。

学习网页,推荐给大家一个网站,时间关系,就不再写更详细了:

https://www.freecodecamp.org/

至于爬虫。什么是爬虫呢?爬虫可以说是写网页的逆向过程了,如同加与减乘与除一般。网络爬虫(Web Spider)源于搜索引擎,它像一只整天挂在“网”上的蜘蛛一样,把网络数据爬取下来,留作处理。而在现在的海量信息时代和未来的大数据时代,网络爬虫自然成为获取网络公开数据的一项必备基本技能(在此不讨论爬虫的道德困境)。

如同写网页文档的所见即所得,写爬虫程序时你也很容易能看到自己每一步程序的输出结果,当你有一个具体需求(一般是批量抓取一系列有规律网页的有规律数据)时,这样的输出结果带来的反馈可以激励你一点一点完成一个复杂的程序。

至于学习爬虫的建议嘛,本来想说跟我学习就够了,毕竟中文环境的几本书我看过以后觉得不甚满意(并非写的不好,只是章节体系和一些具体例子我不喜欢),而外文语境的书翻译过来已经略显过时,不翻译过来对一部分朋友又有语言障碍。但是我实在是一个怠惰的人,虽然最近勤奋笔耕,指不定何时就又咕咕咕地放大家鸽子。

好在以前有所积累,我以前写东西都在知乎,在知乎的三年里,风向变了很多。以前很多人热衷于写入门文章,后来大概是自己进步了,入门文章不写了,反过来抨击入门文章泛滥破坏社区生态;14年的时候知乎上鲜有人关注Python和爬虫(这真的是两个东西,虽然经常连在一起),我随便写上一些,也会被人惊呼大神,拥有一些粉丝,颇有种山中无老虎,猴子称大王的感觉。而如今爬虫文章都快人人喊打了。也就只有我这种三年了还没什么长进的人,依然停留在入门水平,乐得写些入门文章,乐得继续搞搞爬虫吧。

知乎、简书、博客等等平台,实在不缺入门爬虫的文章,虽然良莠不齐,至少学习资料充足。究其原因,无非是极其容易量产,相似的代码,换个网站就是新的数据,换个数据就是新的结论与文章,炮制热点文章简直不要太容易。

如果一定要推荐的话,《Python网络数据采集》是一本不错的入门书籍,只是书中示例都是国外网站,具体实战可以自己找其他例子。

零零散散写了许多,其实其中很多观点都可以拉出来单独成文。时间仓促,文展开不多,不够丰富,以后会多记多写。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,084评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,623评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,450评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,322评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,370评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,274评论 1 300
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,126评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,980评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,414评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,599评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,773评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,470评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,080评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,713评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,852评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,865评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,689评论 2 354

推荐阅读更多精彩内容

  • 为什么要学习Python编程语言?哪些人适合学习Python? 先回答第一个被初学编程的朋友问到最多的问题,为什么...
    软件测试学习提升阅读 4,207评论 2 11
  • 少年听雨卧榻,满腹文墨社稷心 赋词说愁,念诗道愁,未有愁绪强对愁怨 青年听雨旧时榻,满心功名利禄意 欲说还休,欲说...
    云景吟止阅读 272评论 2 4
  • 与朋友聊天聊起小时候,发现记忆相当模糊,细细想来,可能是那个时期的生活的确太灰白了。除了偶尔父母的吵架,以...
    无语对欢颜阅读 166评论 5 1
  • 有人说大脑就像一个容器,一些新的记忆放进大脑一些旧的记忆就会被遗忘,因为大脑的容量就在那里,固定不动!我却觉得大脑...
    一个俗人001阅读 516评论 0 0
  • 1.因为没有适配不同的CPU,但是有的so文件适配了,所以有的so加载的时候就会提示 UnsatisfiedLin...
    HEHE_fang阅读 440评论 0 0