全民編程:每個人都應(yīng)知道編程知識
我很吃驚在Hacker News的頭版頭條上竟然出現(xiàn)了一篇叫做《別學(xué)編程》的文章,而更讓我吃驚的是文章的作者竟然是CodingHorror的創(chuàng)辦人、StackOverflow上大名鼎鼎的Jeff Atwood。
Jeff認(rèn)為,并不是每個人都需要知道編程知識,事實上,這世界上不需要更多的水平一般的程序員。所以,他對最近興起的像CodeYear這樣的旨在全民編程知識普及的運動并不熱心。
因為Jeff 使用了我設(shè)計的CodeYear網(wǎng)站來說明他的觀點,我想有必要對此做些反駁。
我認(rèn)為每個人都應(yīng)該學(xué)習(xí)編程,有一個簡單的理由;知道如何編程是一種強大的能力。
我并不認(rèn)為這世界上還存在有很多的其它的知識技能可以像知道如何搭建一個網(wǎng)站那樣讓你從無到有創(chuàng)建出一個東西并以此接觸到如此多的人。
就像上周,我冒出來一個想法,然后用2天時間建起了一個網(wǎng)站。僅在幾個小時內(nèi)就有1萬多人訪問它。
想想吧:我做的東西觸及到了1萬多個活生生的人,而且對他們的生活產(chǎn)生了影響(或多或少)。如果不知道編程,一個人可能永遠做不到這樣。
什么是編程?
也許你會爭辯:我并非一定要知道如何去開發(fā)一個網(wǎng)站。你也許還會認(rèn)為用WordPress搭建一個網(wǎng)站不能算是“編程”。
但是,從一個不懂技術(shù)的人的角度上看,用Wordpress搭建一個網(wǎng)站和用Ruby on Rails創(chuàng)建一個網(wǎng)站具有相同的復(fù)雜度。
“學(xué)習(xí)編程”并不是說要你成為下一個托馬斯.李納斯(Linus Torvalds)那樣的人,就像是“學(xué)會做飯”并不是意味著你要開一個3星級的餐館。
它只是簡單的表示你對計算機的工作原理有一些基本的掌握,而不是讓一個會說話的回形針告訴你怎么做(也許你最終能學(xué)會如何編程開發(fā)自己會說話的回形針)。
我們首先要做的是告訴人們學(xué)會編程不是那么難,在他們的腦子里輸入這樣一種觀點能讓他們更容易學(xué)成。我相信這才是像CodeYear這樣的網(wǎng)站想要做的事,我認(rèn)為這是一個非常有意義而且能實現(xiàn)目標(biāo)。
英文原文:Please Learn to Code