如何构思出色的副业
本文最初发表于《Barbarian Meets Coding》时事通讯中。
祝您有个愉快的一天!本周的简报又回答了一位优秀读者提出的问题:如何找到一些好的副业项目,帮助您成为一名更优秀的工程师?
如何想出一个好的副业项目
我的想法是这样的:找到一个好的副业的最佳点是看所有这些元素的交集:
- 你真正感兴趣的话题
- 对你目前的工作有用的东西
- 目前热门/新兴且正在兴起的技术
为什么?
- 既然你要利用空闲时间做这件事,你就需要鼓起全部热情来坚持下去。这就是为什么你觉得有趣的事情胜过所有其他要求。
- 如果您的副业项目围绕着您日常工作中可以使用的东西,那么您将获得惊人的协同力量:您将拥有一个可以将所学知识付诸实践的地方,并且它将对您的短期和长期职业生涯产生积极的影响。
- 同样,如果你的副业项目围绕一项热门技术(比如 WebAssembly、Rust 等)展开,你就会走出舒适区,培养一项对你的长期职业生涯产生积极影响的技能,并能够将你的职业生涯重新定义为这项新技术的专家。
我认为这些项目应该按如下方式加权:
1 > 2 > 3
也就是说,个人兴趣高于一切。但这完全是个人兴趣。这可能意味着我觉得我目前的领域有很多东西值得探索和学习。
协同效应的惊人力量
协同作用描述的是各元素相互作用产生的总体效果大于各部分效果之和的情况。
当你在工作内外追求相似的目标时,你会发现这两种环境之间会产生协同效应。你在工作中取得的成就会对你的副业产生积极的影响,而你在副业中取得的成就也会对你的日常工作产生积极的影响。因此,你将在两种环境中都取得优异的成果。
因此,请留意何时可以在生活中利用这些协同效应,因为它们可以让您用更少的资源实现更多的目标。
以下是我多年来做过的一些业余项目的例子:
- 我编写了一个小型 CMS 来学习 ASP.NET MVC 2。我想这是我第一次尝试严肃的 Web 开发,并且我从中学到了很多东西:TDD、BDD、IoC、DI 和 ORM。
- 我刚开始使用GymBuddy,这是一款 Windows Phone 7 应用,可以作为健身伴侣。它让我踏上了移动开发之路,并学会了用 PhotoShop 制作漂亮的高保真模型。
- 另一个刚刚开始的游戏是Windows Phone 7 上的《The War of the Orbs》。它教会了我游戏开发的基础知识:游戏循环、精灵、精灵表、动画、用户交互、HUD 等。
- Quiz4Couples是一款 Windows Phone 应用,鼓励你与另一半共度美好时光。它教会了我很多关于移动开发、设计、用户体验以及产品从始至终的创作过程。这是我完成并发布到 Windows Phone 商店的第一个应用。我甚至为它创建了一个网站,并获得了好评。这款应用让爱在世界各地传播开来。
- 我尝试了一个伪智能个人任务管理系统,并构建了一个概念验证。我试图创建一个类似“贾维斯”(JARVIS)的东西。它让我学到了更多关于网络编程、自然语言和特定领域语言(DSL)的知识。
- 我开始开发另一款游戏iO,这次是在 iOS 上使用 SpriteKit 开发。这是学习 Objective-C 和 iPhone 开发的好方法。
- 之后,我一头扎进了 JavaScript,并完成了两个业余项目:ilPomodoro,一个用 Knockout.js 开发的番茄工作法应用;以及Serenity,一个基于 Firefly 宇宙的 HTML5/JS 太空射击游戏,我为其编写了一个小型游戏引擎。这两个项目都让我学到了很多 JavaScript 知识。
还有更多!比如那些书,《地球曾经是》和《小宝贝》,还有很多我忘了,或者没机会、没时间、没精力去写的东西。(顺便说一句,回顾这些项目真是太酷了。)
如果你回顾所有这些项目,你会发现几个共同点:
- 它们对我来说非常有趣
- 我大部分都没能完成。我说“完成”是指它们从未成为成品。有些功能极其有限,但还算实用,但大多数都只是玩具。它们的核心目标是在一个没有压力和紧张的环境中(低风险环境)教会我一些东西。
- 我从每件事中都学到了很多
- 其中大多数都提升了我的工作和职业生涯,我成功地将自己的兴趣与具体的工作需求联系起来。例如,我开发了一款游戏来学习 iOS 开发和 Objective-C,之后我用它为当时的雇主构建并领导了一款 iOS 应用的开发。我还开发了 ilPomodoro 和 Serenity,以提高 JavaScript 水平,并提升当时正在为公司构建 SPA 的前端开发技能。
总而言之,如何选择一个优秀的副业?选择一个你感兴趣并且能与你的工作和事业联系起来的项目。然后深入其中,不断学习,并将所学运用到工作中。在过程中写下你的点滴,激励他人。说不定,你的副业就成了你的新工作呢。
以下是一些关于开展业余项目的建议:
- 开始一个新的副业项目时,设定一个可实现的目标。你期望从这个项目中获得什么?
- 为你的计划设定一个特定的时间段(例如一个月)或固定的小时数(例如20小时)。当你知道某件事有结束的时候,你就能更好地专注于它。时间到了之后,你可以反思你学到的知识,并决定是继续下去还是继续寻找其他项目。
- 公开工作,分享你的进步、学习和发现。这能为他人提供宝贵的指导和灵感,开启意想不到的机会,也对未来的自己大有裨益。
- 养成完成任务的习惯。事情可能会变得艰难,但只要你坚持完成,就能获得最大的回报。而且,完成任务的感觉很棒。
- 如果你没读完也没关系。善待自己。最重要的是学到一些东西。也许你会发现自己同时尝试了太多东西,或者你对某个主题并不真正感兴趣,或者完全是其他原因。
出自《像艺术家一样偷窃》一书的《项目的生命》。再坚持一会儿!事情会好起来的!:D