在地鐵11號線上寫書

 

我是抱着玩的心態開始用電腦的。自從家裏有了電腦以後,我就千方百計抓起鼠標和鍵盤打一下子游戲。《金庸羣俠傳》《仙劍》《星際》《盟軍敢死隊》,這些老遊戲都玩了個遍。父母擔憂我沉迷遊戲,一度沒收了個人鼠標和鍵盤。總之,當時的電腦只是個娛樂平臺。程序員

那個時候已經在提「20世紀是計算機的世紀」。好萊塢電影開始把黑客塑形成孤膽俠客。我常常抱着《電腦報》或《大衆軟件》,幻想着本身成爲一名俠客通常的計算機高手。但對於一個內地小城的孩子來講,深刻接觸計算機技術的機會頗有限。我曾經很認真地找了一套計算機等級考試的書看。把二進制運算、SQL命令、QBasic語法都記得倒背如流,卻由於裝很差編譯環境,最終沒能寫出一個可使用的軟件。後來讀那些頂級黑客的傳記,講他們從小如何如何編程,一直很好奇他們是如何度過環境搭建這個難關的。後來發現,這些人都有機會接觸一些編程高手,因此在他們的眼裏,根本不認爲這是太大的問題。編程

上大學時,我選擇了物理專業。物理專業作數值模擬和數據處理,C語言和Fortran語言編程也是必修課。有了大學裏的資源,編程環境的搭建變成了小菜一碟。只是本身的電腦太過老邁,動不動就要死機。朋友們呼嘯着打Dota時,我卻在爲Word觸發的藍屏頭痛。相熟的朋友看不下去,扔給我一張光盤,要我重裝Ubuntu系統。Ubuntu是當時最流行的一個Linux版本。死馬當活馬醫,我安裝了光盤上的Ubuntu。系統裝好了,電腦死機的次數大爲減小。不過Linux下的圖像化界面確實和Windows有差距,辦公軟件也比不上Office。我慼慼然地把Linux看成低成本的二等方案。但不管如何,當時正值我作「大學生研究計劃」,運行穩定的Linux仍是救我於水火。過後請朋友吃飯,問朋友哪裏來的光盤,才曉得Ubuntu的安裝光盤能夠免費領取。vim

更讓我另眼相看的是Linux下的軟件分發。那個時代尚未蘋果App Store這樣的東西。所謂的在線軟件分發,就是上網下載exe安裝包。用了Ubuntu以後,我須要的軟件基本均可以在軟件源中找到。在終端輸入一行命令,編譯環境就搭建好了。我不用擔憂病毒,並且大部分狀況下也不須要付費。再加上學校裏有Ubuntu鏡像,下載一個軟件每每只須要幾秒鐘。因而,探索Linux下的軟件成了個人一大業餘愛好,我漸漸習慣了用ImageMagick來作圖片處理,用FFmpeg來轉換視頻,用Wget來作網絡下載。這些基於命令行的應用軟件,再搭配bash的批處理功能,每每能實現強大的複合功能。bash

我也愈來愈享受Linux系統提供的編程環境。在寫C語言和Fortran語言做業時,我就開始用vim編寫本身的做業,用GCC和GFortran來編譯,再用GDB來調試。這個過程要比Windows下的IDE麻煩。但當接觸其餘語言時,相同的工具能夠複用,不用每一次都花費大量時間來熟悉全新的IDE。後來在Linux下學習Python語言時,很容易就能夠上手。若是說編程是去遊樂園,那麼Linux爲入園玩耍提供了直通車。想起小時候爲編譯環境苦惱的本身,真想穿越時光送去一張Ubuntu的安裝盤。網絡

我以爲對於一個電腦愛好者來講,Linux最美的地方就是開放。Linux的開放能夠分爲多個層面。軟件層面是開放的,用戶能夠無償使用。文檔也是開放的,你能夠在終端下用man命令方便地查詢。操做系統是開放的,你能夠自由地調整系統,也能夠深刻了解其原理。代碼上亦是開放的,你隨時能夠看到世界上頂級程序員寫下的源代碼。在Linux系統下,「實現」和「如何實現」是合二爲一的。吃魚的同時,釣魚的本事也能夠學到。所以,Linux提供了一個絕佳的學習平臺。工具

後來,太太送給我一部樹莓派作生日禮物。我驚喜地發現,樹莓派使用的操做系統正是Linux。更棒的是,樹莓派的底層硬件也很開放。它能夠方便地經過有線或無線的方式和硬件外設進行鏈接。它對使用方式沒有太多限制。因而,在後來的智能硬件創業項目,我老是在研發版本中使用樹莓派。不管是做爲硬件的樹莓派,仍是做爲軟件的Linux,都遵循了相同的規律:開放打敗了封閉。知識的共享帶來更加活躍的創造力,也給社會帶來協同合做的機會。學習

幾年前,我讀到印度的一個公益項目。這個項目募集舊電腦,在電腦上安裝Linux系統,再發放給貧困地區的兒童使用。這個項目給孩子們帶來的不止是歡樂,還改變了他們的命運。當樹莓派發布的新聞出來時,我想到的就是這款微型電腦的社會意義。後來讀到樹莓派之父厄普頓發明這臺小電腦的初衷,果真也是教育。我由此確信,有不少人和我抱着相同的看法。spa

現在,「科技取代人類」的言論甚囂塵上,不少人對技術霸權頂禮膜拜,對人類的將來充滿絕望。其實,科技自己是中性的。科技能夠取代人們的工做,也能夠幫助人們更好地就業。像樹莓派和Linux這樣的技術,尊重了用戶自己的創造力。它們用一種開放協做的態度,提升了社會的溫度。我也一直抱着這樣的理念,堅持在博客上分享本身的所知。我還記得本身在探索計算機時無路可循的尷尬。即便是出於簡單的同理心,我也但願本身的分享能幫助任何一個在門檻上抓耳撓腮的學習者。操作系統

藉着這股心勁,我克服了寫做的羞澀,投入到這本書的寫做中。我但願這本書能以樹莓派硬件爲平臺,全面講解Linux原理。全靠昕梓的通力合做,我才能順利完成這個野心勃勃的目標。杜鵑、陳思爲幫我審讀了全書,提出大量的修改意見,讓書稿變得真正可讀。安娜會在關鍵的時候給咱們提供任何所需的幫助,全程引導了寫做過程。最後,這本書還要感謝上海的地鐵11號線。全靠這班地鐵上的空座位,我才能坐着寫出大部分文字。命令行

在設計本書內容時,昕梓和我決定尊重讀者,不避諱艱深的內容。畢竟,樹莓派自己只是一個入口。這個入口的背後有着豐富的操做系統知識。不管是編程,仍是深刻理解計算機,必定深度的操做系統知識都不可或缺。咱們會從樹莓派的基本使用講起,一直深刻到操做系統原理自己。在後面一部分,我還加入了基於樹莓派的實踐項目,但願能拋磚引玉,激發用戶的創造力。固然,篇幅所限,我也不得不捨棄一些細節。但我相信,只要體驗到邊玩邊學電腦的樂趣,那麼其餘技術的掌握也均可以沿着相同的軌跡重複進行。

那樣的話,這本書就沒有遺憾了。

 

本文爲《樹莓派開始,玩轉Linux》一書前言

相關文章
相關標籤/搜索