我是Tim Bray,XML 标准的创始人。我是一名程序员。我喜欢写代码。在过去的几十年里,我的基本活动就是写大量的代码,写大量关于这些代码的文章。我的博客的读者之多,足以证 实这是一种相当有用而合理的组合活动。但是,我最近有些沮丧,有些受打击。我想我会克服,但我认为这里面的故事值得与大家分享。
Ed Finkler的文章The Developer’s Dystopian Future让我产生了很多的共鸣。我很不希望像Matt Gemmell那样离去;Matt最终决定去写小说。我尽量让我的段落篇幅很小,但我不得不说,他的话很有说服力。
是什么打击了我
我的浏览器的一个标签页里显示着Gradle文档的一个页面:Chapter 50. Dependency Management。这个页面上一个有63个小节,划分在10个二级标题下。这份文档一共65章(外加5个附录)。这是第50章。
长话短说:我在用Groovy做一个很简单的任务时遇到了一个不是很理解的错误,很自然的顺着提示文档来到了这里。
65章!
《Java in a Nutshell》,这本我一直认为很经典但又很笨重的技术参考书籍,也不过22章,而且其中的14章是API索引。
问题是这样的。你要去开发一个Android应用,你学习并掌握了Java语法/语义、Android应用框架、相关问题领域。于是你就去开发,比如我,要参与开发OpenKeychain,我的预估是,我还要学习大量关于PGP key和协议知识。
而事实上,我每分钟都在投入精力和Java代码做斗争,我还要投入精力的是跟git submodule里的子命令做斗争,而现在,看着Gradle文档,我感觉眼前出现了一座千米高的陡峭山峰。
我应该感到幸运,庆幸我不需要去开发一个基于浏览器的应用。否则,这周我必须抽出更多的时间来优先学习恐怖的新js类库,去学习如何使用水波效果来不让页面单调。
请原谅我的牢骚
我会想办法走出现在的低落;我现在已经不再是一个全职程序员,但相信我还是有一定的实力的。
但一个程序员想要一直保持对当前的编程知识有足够宽度的了解,真需要下很大的功夫。当今一个很热门的词语是“全能程序员(full-stack developer)”。听起来很好听,但我内心深处却有一种声音:你的意思是我需要去掌握 Gradle 内部原理和 ListView失败模式 和 NSManagedObject quirks 和 Ember容器 和Actor模型 和 interface{}在Go语言里的意思 和 在云服务里Docker的不同用法? 吓死我了。
本文链接:http://www.apkbus.com/android-11395-1.html