分享 如何写含金量高的原创文章?

ouyang · 2012年03月08日 · 最后由 whitecrow 回复于 2013年01月24日 · 6804 次阅读

无关Ruby,更多站在一位心理学研究者角度,给大家一些建议。xdite、ihower的文章多数时候,含量量很高。大家可以学习。

一手很重要

原始出处、最初的作者、最初的代码与api很重要。高质量的文章,往往在于信息来源与众不同。从哪获取与众不同的信息?对于中文社区,Hacker News的信息以及部分英文博客质量已经够高了。但是,有时候,还可以往前推进一步。

比如,我在心理学领域,订阅了三本权威期刊,以及购买了一个全文期刊数据库,这样,每年都非常容易获取到学术界的最新研究成果。这样的信息,往往是别人较少去使用的。在计算机领域,是不是也可以这么做?

同样,Ruby领域的rest已经被谈烂了。但是,那篇最初的学术论文,是不是可以翻出一些新东西?近些年,学术界关于rest,有没有新的进展?

倾听很重要

不同的语言代表不同的世界观。很多时候,与其争论Python好还是Ruby好,还不如去相互学习。

近期在做社会网络分析的事情,然后查阅到Python社区有个很好的库,叫做Networkx,接下去,又通过这条线索,找到Ruby社区,一位来自辉瑞的科学家,还是他们的一位小牛。恰巧做的事情与我非常类似。如果我只停留在Ruby社区,可能找到这条线索吗?虽然最后又回到Ruby社区了。程序语言发展到今天,其实,相互学习的成本低于大家想象。

在接触到一手信息之后,多问几个为什么,多比较一下,然后就会发现大量的好东西。

能够复用很重要

xdite、ihower的文章多数时候质量很高,因为很容易复用。类似于,如何安装、如何配置、Ruby新手应知道的十个开发工具,这种文章,高手瞧不上,但是,恰恰是这些文章更容易复用。

传统意义上的复用是指代码的复用,在Ruby社区,因为gem机制与bundle,以及配套的github,实际上非常容易了。而那些文章,更是一种隐性知识、价值观与学习方法论的分享。我从中受益很多,所以xdite推出Rails101的时候,我应该是毫不犹豫购买来表示支持的读者之一。

奥卡姆剃刀原理

这是高创造力的人的必杀技。抄送一段话:

我非常尊重罗布法尔的历史学工作。但是,扩大差异不再有人们认为它应该具有的那种创造性。在我的工作中,我始终信奉威廉的奥卡姆剃刀原理。... 不应无端增加概念的复杂性,因而能简单处理的事不要复杂化。(p284)

很多人写文章很快,但是精简文章却往往不花时间。如何精简?删掉很多与主题无关的内在价值观描述或者废话。比如,一篇写GitHub的文章,不要刻意地去点出,GitHub是基于Ruby与Rails开发的,那会损害到另一些人的价值观。

不较劲,记录当下很重要

不要想那么多,比如被人骂浅薄。很多文章其实是写给自己看的,经济条件、历史背景、发展取向以及所在公司各有不同,写给自己看,想明白了,记录当下的一些收获,就足矣。写作是最好的记忆,也是时间给大家很好的恩赐。

最后,列出几篇我想看到的Ruby中文社区的文章:

  • Ruby36种典型魔法与开源库示范
  • 从Ruby新手到中级开发者,容易误解的十个概念
  • 让Ruby灵活性更可控的九个技巧
  • 让Ruby代码更易被人阅读的七大武器
  • 如何开发自己的DSL及开源库示范
共收到 14 条回复

写文章就如写测试,不狠下心来去练可不行。

太需要这样的文章了,非常感谢!

收藏之,一个好程序员,不光写好代码,还要写好文章,和分享精神。

写文章是很费神的,尤其是在这个浮躁又打酱油的社会里,静下心有点难。看了你的文章我决定找个专题沉下心写点文章。 如果要我加一条就是:提高英文水平。绝大部分新的高价值的文章都是英文的。

收藏!

拜读之,收藏之,谢谢 @ouyang 原来教人如何写给力的文章本身也这么给力!

现在 我只follow 最后一个point

@ouyang 提到了。所以也來提一下我是如何寫出這些篇原創文章...

1. 融會貫通

也曾經有台灣朋友問過我是如何可以保持這樣的高產能的一手文章?他們也不是不想寫 blog,而是往往每次剛動筆不久,就又擱下了。拖拖拉拉開了幾個網站到處參考,寫了幾個鐘頭才擠出了一兩千字。但文章起得了頭收不了尾,所以最後也不敢刊登,後台滿滿都是寫一半的草稿。

我寫文章的寫法其實不是這樣的:我在開發時累積了很多經驗,而我平日學習複習的方式是讓經驗累積成一連串融貫的想法,而不是片段的記憶。這造就了我為什麼寫文章總是長長一篇,全面性的講述。因為每篇文章後面都有一個總想法在。

2. 熟練技術

我在寫任何文章時,幾乎不開任何網站,所以寫文自然不慢(Github hack 事件,5000 字的文章只花了我 1hr 寫作完成)。文章裡面的大多數想法都是我原生的融貫想法,在練習和實作技術時,我會先有一個猜想,然後去實踐,接著得利了就重復利用。累積成一整套的東西。于是在寫引述的這些技術時,我幾乎是熟到不能再熟。在行文時就十分利落。至於文章內提到的參考文獻,我多半是先用 Markdown 的 [] 先丟印象中的關鍵字括起來,最後文章完成時再上 google 找連結和正確標題補進去。

3. 大量閱讀、思考、實踐,並整理

我在小時候就練就了中文速讀能力,而且平日我的興趣就是閱讀,不僅是程式方面的書籍,各樣領域的書我都看,大學時代看最兇的是歷史軍事小說,就業後讀很兇的換成營銷、管理、創業、敏捷;程式語言、架構實踐、Design Pattern ...etc.

當然讀過不是就算了,每當讀完一本書,我就會嘗試整合到我現在大腦的資訊架構之中,或者是暫時當做零碎的記憶片段儲存起來。有的時候東西讀多感觸多了,就會自動融合起來。

職業生涯中,我有兩年的時間是在 build 一個 startup,這裡面的每樣工作都是我親自先做過再聘人撐起來,不管是 develop, operation, marketing, content optimization, hiring, management ...樣樣都是我在管。這麼廣的工作面向強迫了我實踐了我讀進的每段知識。而且整合成一段無縫的經驗...

工作上只遇到問題,我就去買書回家讀,找出可能解法,然後僅可能實驗解決。為了讓組織可以自己運轉,不讓事情都堆在我身上,從而節省我的力氣,我甚至為了每個面向的工作都打造了 SOP。在寫 SOP 的同時也連帶讓我順便總思考整理我在這些工作上所學到的經驗...

而寫 SOP 的好處除了總整理可以 delegate 出去之外。我知道我自己的記憶沒那麼牢靠,於是之後遇到類似的事情,找當年留下來的筆記,可以大量節省我的時間,不需再重造輪子。

4. 把書當作是別人寫好的 gem,我自己維護一個 generator 和寫一套 best practices gem

summary

我想這是為什麼別人看我文章原創性且含金量高的原因。

因為這些東西的確都是我想過練過才寫下來的...

拜读。

#9楼 @xdite 赞。

最后那个书与gem的比喻很Ruby:D

@ouyang "奥卡姆剃刀原理"。。 "奥斯卡剃刀"已经颁完奖了……

@xdite 大赞“4. 把書當作是別人寫好的 gem,我自己維護一個 generator 和寫一套 best practices gem”这一句。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册