《软件开发者成长完全攻略》开篇
本篇博客是《软件开发者成长完全攻略》系列翻译文章第 0 章。
原文地址:The Complete Software Developer’s Career Guide – Introduction
要宣布一件事件并不容易,所以我就直接说吧。。。
我决定写一本新书
是的,你没有听错。
我不仅要写一本新书,并且我还准备在我的博客实时更新这本书的内容。
在全书完成之前,我会将每一章的内容首发到 Simple Programmer 上,你可以在上面进行阅读。
目前这本书的名字暂定为《软件开发者成长完全攻略》。
你可能会好奇这是一本什么样的书,为什么我决定写这本书而非《软技能:代码之外的生存指南》的第二卷,或者类似斯多葛哲学和如何说服女生当程序员类似的内容——以及我为何选择以这种方式来写这本书。
为什么我选择在互联网上写这本书
好吧,那我们就先说说为什么我决定以这种在互联网公开、并首发到自己博客的方式来写作一本书。
最重要的一个原因是我想写博客,但就目前来说这并不是利用我时间的最好方式。同时,我也想写一本新书,但是从各种意义上来讲,写书也并不是一件有利可图的事情。
于是我想,我可以在为这个博客产出内容的同时写一本书,这样我便能从中获得双重的好处,这使两件无利可图的事情变得更加有吸引力。对我而言,这简直就是一石二鸟。
我很早之前就想重拾写作,因为我发现写作是一项很有价值的技能和练习,它给我带来的好处是其它媒介所不能提供的。
写作可以比其它我所知道的媒介更好地迫使你组织自己的想法。出于这个原因,我总是喜欢让自己处在写作的过程中——并且我想让它成为我的每日习惯。
如果目前你没有任何一种形式的写作习惯,我强烈建议你去培养这个习惯。从现在开始,我会每天投入两个番茄时间写个大概 1000 字左右。这个目标并没有那么难达到,并且以这种方法开始一天的生活也是极好的。
为什么以这种方式来发布自己的书?
以这种在博客公开写书的方式,我可以在写作过程中获得一些很好的反馈,而不需要等到读者读完整本书。
这种方式让我可以修改并定制这本书,写出更符合软件开发者需求的内容,以帮助大家更充分地进行职业规划。
我确信你们会提出一些我没有想到过的主题,有了你们的输入,这本书会变得更有价值。
另一个原因是问责。
我最近相当忙,我并不打算像写《软技能》的时候那样贡献出两到三个月的完整时间专门来写一本书,公开写作可以强迫我更加负责,按时按量地完成每一章的内容。
最后,我觉得这样做可以为某些一直想写书,但是不管出于什么原因一直没有开始的人提供一个鼓励以及示范作用。
每次一篇博客,你可以看到这本书一点一点成型的样子,并且我可能会提供一些额外的文章和视频来说明这整个写作的过程,希望这样可以为你写作自己的书提供一些洞悉和鼓励。
这样不是在将自己的书免费发出来吗?
如果你将书的内容都发布到博客上面,你就不怕没人去买你的书了吗?
并不会,我来告诉你原因。
首先,我知道人们会去买那些他们觉得有价值的东西,即使这些东西每一部分都是可以免费获得的。
现在,我们生活在一个几乎可以免费获取到任何信息的时代。然而,将这些散乱的信息精致地打包起来,让人们不再需要花精力去寻找它们也是相当有价值的。
并且,你看到的博客都只是完整手稿的早期版本。书籍成品包含的是经过修订后的博客内容,并且可能会包括某些额外或者扩展后的内容。
我也打算为这本书制作有声书版本,因为《软技能》这本书就是这样做的,并且取得了不错的效果——听有声书也是我更喜欢的读书形式。
免费并不代表没有价值
很多人似乎还在以匮乏的观念在思考问题,觉得把有价值的东西发出来会减少他们获得这些东西的价值。
而我根本不这样认为。我一直坚持我所说过的,把自己产品的 90% 免费提供出来,只对 10% 进行收费。
我也相信宇宙的法则。你付出得越多,你的收获就会越多。富贵不是建立在恐惧和后悔之上的。
从现实来讲,我确实想从我的事业和工作上面获得收入,但是我也坚信应该毫无保留,并尽可能多地贡献免费的价值。
这本书的目的
现在谈到了我为什么决定写这本特别的书。
我在博客和 YouTube 频道上面收到最多的读者问题都是关于如果成为一个软件开发者以及如何拥有一个成功的事业。
我找不到一份完整的手册来指导新手——或者有经验的——开发者如何在事业上获得突破以及如何解决那些在行业工作过程中必然会碰到的问题。
在《软技能》这本书里的事业章节中我简要地提到过这些主题,但是我觉得很有必要进行一下深入的探讨。
因此,《软技能》这本书关注的是开发者的完整生活——包括他们的事业部分——而这本新书只关注了事业的主题。
这本书的目标
首先,我想帮助新手开发者掌握那些进入这个复杂和棘手的领域中所需要的重要和必要的知识。
我想给他们关于该领域中所有重要部分的资源,教给他们进入这个领域所需要的知识,向他们演示获得第一份开发工作的最佳方法。
在我看来,这三件事是新手开发将会面对的最纠结的问题。
接下来,我想帮助现有的开发者填补他们可能存在的知识空缺——对他们职业而言有用的知识——同时向他们提供一些作为软件开发者的生存指南。
我将讨论如何平衡工作与生活,如何进行团队协作,如何销售自己的创意、获得加薪和晋升以及如何处理领导和偏见的问题。
最后,我想帮助在职业生涯中任何阶段的软件开发者进阶到下一个阶段。
我还计划讨论开发者如何在行业中建立声誉,可供他们选择的不同职业路径以及所有开发者都必读的书。我们会涉及到业余项目,开发者大会,以及其它可以帮助你成为一个杰出开发者的主题。
这本书中的所有内容依然可以归类为软技能,因为我更多地是探讨理论上你需要去了解和实践的知识,而不是如何去做。
我相信这一类的智慧在我们的社区和行业中仍然十分缺乏,而且我坚信在长期上来讲掌握这些知识比学习一门特定的编程语言或者框架更有价值。
我计划将本书分成五个部分,每一部分包含几个章节——就像我在《软技能》中所做的一样。
这五个部分如下:
- 软件开发者入门
- 获得一份工作
- 软件开发中你所需要知道的知识
- 像开发者一样工作
- 为你的事业加速
虽然写一本书是个相当大的负担,但我还是为开始这段旅程感到兴奋。
译者说
虽然已经在 SwiftGG 上翻译过不少技术文章了,但是要翻译这种技能类型的书还是相当吃力,翻译第 0 章就差不多把我吓到了。
不过引用作者的话来讲就是:虽然翻译是一个相当大的负担,但我还是为开始这段旅程感到兴奋。
如果你觉得这本书有对你提供了任何意义上的帮助,就请作者喝杯 koi 吧。