情懷初體驗-二周寫書記
從下定決心要開始寫書到今天,已經二周有餘。在這段時間裡,除了工作,剩下的時間基本上全部都是和這本書有關:寫書、看書、查資料、思考……,幾乎每天都是挑燈夜戰到半夜1點。誰讓我這麼矯情,非要為了那份情懷和感情呢?
擬定目錄和大綱的時候一共擬定了4個部分,大概有9-10章。開始我著手的並不是前言、也不是第一章、更不是最後一章或者後記,而是中間的章節:C語言特殊性與解決方案。這一章主要講解C語言中比較特殊的、具有和別的語言不一樣的特性語法、使用注意事項和解決方案,更有很多從坑中爬出來的經驗分享。之所以要首先寫這一章,主要還是因為以下幾點:
我對C語言比較熟悉,其中幾個經常用的特性都比較的清楚,經常會掉進坑裡的陷阱也比較熟悉,我想用最快的速度看看在最短的時間內能寫多少;
計算機語言寫成的程序之所以能運行,和操作系統、編譯器、連接器等基礎設施密切相關,我也想粗略的估計一下經常使用的特性中,需要注意的特性有多少是和基礎設施相關的,以好用最短的篇幅來寫第一章關於基礎知識的內容;
這一章在整本書的位置上比較重要,也是基礎的章節,後面所有的內容都建立在這一章的基礎上。雖然不是C語言的基礎知識介紹,但這一章不過關,後面的章節也很難過關;
從申請內存開始,到釋放內存,然後寫stack溢出,再到c語言中的字元串。目前已經花了2周有餘,但這一章還沒寫完。時間已經大大的超出了我的預估。按照我的預計,速度應該在一天寫一節。這樣,整章基本上也只需要一個星期,最多10天就能搞定。這完全是一種非常樂觀的,沒有寫技術書經驗的預估方法導致的(PS:以前寫過口水書,類小說。)。和實際差的太遠了。雖然一章還沒寫完,但是寫到現在,總結如下:
難。雖然我對寫技術書的難度在思想上有所準備,但真的開始寫了,還是覺得有很多的準備不足。寫技術書最大的難點在於:你怎麼把你所知道的知識和信息有條理的、清清楚楚的、由易到難的晨晨展現給大家,並且可以讓大家相對簡單和容易的在短時間接受並且消化,如果知識點有相關的重點,如何向讀者表述你所要表述的重點也是一個很重要的技巧,也是相當有難度;
多。技術書的工作量明顯多於非技術書。IT技術書的工作量多就主要多在了有很多的示例上。示例的工作量簡直就是要了人命了。特別是當示例有好幾種可能性結果時,需要把這些可能性通過代碼和環境的聯合作用運行出不同的結果,n份代碼和n個環境設置,想想這個工作量……,簡直就是讓人抓狂;
煩。一圖勝千言,這句話在代碼界中絕對是一頂一的真理。但是因為載體的限制,靜態的載體並不能很好的表達出程序運行的整個過程,特別是一些細微的變化,比如指針的指向改變等等。只能把整個過程通過步驟化的方式,將步驟一步一步的靜態化處理成圖,然後儘可能完整的畫出來變化額蛛絲馬跡。整個靜態化的過程和畫圖的過程相當的繁瑣不說,靜態化後很容易丟失一些關鍵信息。很多時候畫了擦,擦了畫,畫了再擦……周而復始;
累。寫書真的很累。沒有自己的業餘時間、沒有休息時間、沒有雙休日,甚至連自己洗澡的時候都會去想下面的知識點要怎麼寫?這本書是不是還缺些什麼特性或者功能沒有?我這樣寫是不是能表達我的意思?是不是有更好的表達方式?然而當你的實際工作量大大超過你的預估的時候,你又想精益求精而準備返工的時候,你就會覺得更累了;
情懷和感情,人生中最大的樂趣。所以堅持,堅持下去……
公眾號已經開啟留言功能,歡迎大家在技術上和我交流!
如果大家喜歡我的文章,請關注我的微信公眾號!
※清鑒書院 品鑒/朱榮賢繪畫
※伊書堂│埃及的遊戲人生,不服不行
※益生菌咋免疫?
※還有一枚可愛的標籤/日常記錄
※那些堅持不結婚的人現在過得怎麼樣?
TAG:公眾號 |