我為什麼不想把自己的Emacs外掛放到MELPA上?
玩了Emacs十幾年, 寫了很多 Emacs外掛 , 有很多人都建議把我的Emacs外掛放到 MELPA 上.
我一直以來的回答都是: NO
今天把原因寫出來, 以後如果再有人問到我, 我就可以直接把這篇回答直接發過去, 不用反覆的回答:
- 我十年前答應朋友 rgr 把 org-w3m.el 貢獻到 Emacs 主分支的時候就耗費了我很多時間, 幾乎是編碼一晚上, 合併程式碼2個月的趕腳
- 後來聽了 rgr 的建議, 把所有外掛都放到 EmacsWiki 以後, 剩餘的十多年時間, 我的郵箱都被各種 emacser 轟炸, 開源軟體就是這樣, 創造的時間很短, 但是維護的時間卻遠遠大於創作的時間, 包括大家經常用的 multi-term.el、sdcv.el、auto-install.el、anything.el、auto-complete.el 等外掛, 我都維護超過十年以上的時間, 雖然能夠幫助全世界的 emacser 我真的超級開心, 但是維護外掛真的需要耗費我個人非常多的時間
- 誠然 MELPA/Package.el 對於使用者來說很方便, 也會讓更多人知道我寫的外掛, 但是同時也意味著會有成百倍的使用者給我提 issue 和 建議, 我是一個不喜歡拒絕別人的人, 如果成百倍的使用者傳送 issue 和 建議, 我一定會睡不著覺去完善我的外掛, 那樣勢必會佔用我陪家人的時間, 綜合考慮, 我更希望更多的時間讓家人開心, 而不是讓全世界的 emacser 更開心, 雖然他們都很友善和可愛
- 寫Emacs外掛和弄懂各種外掛的細節, 我花費了無數個日日夜夜, 雖然 MELPA 讓 90% 的Emacs使用者可以一鍵自動下載安裝(包括依賴), 但是同時也成就了太多不動腦筋的使用者, 遇到問題不會搜尋和研究, 只會抱怨, 最終放棄 Emacs. Emacs從基因上畢竟不是開箱即用的IDE, 你開始可能不會Elisp程式設計, 但是到最後你一定要學會 Elisp 程式設計才會把Emacs這把屠龍刀打造的儘可能順手. 所以, 我不希望大家都變成傻瓜化的 MELPA 使用者, 那樣只會讓自己喪失解決Emacs問題的能力, 最後把更多使用者推離Emacs, 而不是擁抱Emacs的哲學理念
- 我現在已經過了向世人證明我個人能力的那段日子, 接下來的幾十年, 我希望花更多的時間去學習新的技術和陪伴家人, 而不是無窮無盡的折騰 Emacs, 折騰Emacs而不學習高深的技術, 就像一個永遠只會淬鍊刀劍的卻沒有時間練習劍法的工匠一樣, Emacs這個工具始終是為了探索好奇心服務, Emacs本身不應該成為學習的目標
- 除了技術以外, 我對產品的細節有很多我自己的見解, 我更喜歡製作一些開箱即用和細節優雅的外掛, 就是那種 剛剛夠用, 不多也不少 的感覺. 不太喜歡像傳統開源軟體開發者一樣, 做功能非常豐富的瑞士軍刀, 即使很多功能作者都不用. 使用的人太多, 就會眾口難調, 最後自己寫的外掛連我自己都不喜歡, 那樣就太無趣了, 而且拒絕那些提出建設性意見的人, 我自己也有點於心不忍, 所以我的外掛就留給那些和我有同樣品味的 emacser 發掘吧, 物以類聚, 不互相勉強的狀態最舒服
過去十幾年活的很累, 總是給自己太多負擔.
以後的日子, 我希望為自己的好奇心和個人習慣而活, 簡單點, 喜歡我的作品我很高興, 不喜歡我的作品歡迎你繼續探索, 這樣的日子最簡單, 也最快樂.
相關文章
- 為什麼我要寫自己的框架?框架
- 為什麼在容器中 1 號程式掛不上 arthas?
- 為什麼我要編寫自己的UIKitUI
- 我想把jive4.2.1的論壇放到網站的下邊,怎麼搞? 希望banq幫忙!網站
- 我為什麼不喜歡框架框架
- 我做的網頁為什麼不漂亮?網頁
- 為什麼我的mysql配不起來MySql
- [外掛擴充套件]自己寫的外掛。怎麼後臺?套件
- 我的遊戲這麼好玩,為什麼賣不動?遊戲
- 為什麼我從 Google 辭職而為自己工作Go
- 當我們說外掛系統的時候,我們在說什麼
- SQL語句為什麼不會共享(上)SQL
- 我的Chrome外掛Chrome
- 面試官:Java 反射是什麼?我回答不上來!面試Java反射
- emacs設定代理訪問外掛倉庫Mac
- Emacs使用projectile-rails 外掛注意事項MacProjectAI
- 什麼是小程式外掛?
- 這是怎麼了啊,我怎麼就是掛載不上啊(轉)
- 為什麼 Emacs 和 Vi 的學習曲線非常陡峭Mac
- 我為什麼要設計自己的流量排程演算法?演算法
- 幫幫忙Veritas為什麼連不上oracleOracle
- [譯] 細數那些我離不開的 Sketch 外掛
- 為什麼要把 JavaScript 放到伺服器端上執行?JavaScript伺服器
- 我為什麼不從NodeJS切換到GoNodeJSGo
- 為什麼我們不喜歡IT行業的7個原因行業
- 評: 為什麼我不喜歡Go語言式的介面Go
- 漫話:如何給女朋友解釋為什麼Windows上面的軟體都想把自己安裝在C盤Windows
- 我的 .emacs(轉)Mac
- 我自己的程式碼編輯器-sublime text 3 及常用外掛
- 暴增 Emacs 生產力的十大最佳外掛Mac
- 我使用的brackets外掛Racket
- 面試官:為什麼 Java 不把基本型別放在堆中?我竟然答不上來。。面試Java型別
- python vim外掛是什麼Python
- 外掛代練是什麼罪?
- 編寫自己的Babel外掛(一)Babel
- 我為什麼要做IT
- 為什麼我不推薦 JavsScript 為首選程式語言
- 為什麼我不推薦JavsScript為首選程式語言