我发现需要参与的项目太多,可以使用多种语言(以及这些语言中有太多很酷的功能),以及需要阅读的书籍太多......
你们如何保持专注并实际完成任何事情,而不是留下部分完成的“实验”?
我发现需要参与的项目太多,可以使用多种语言(以及这些语言中有太多很酷的功能),以及需要阅读的书籍太多......
你们如何保持专注并实际完成任何事情,而不是留下部分完成的“实验”?
似乎有两种类型的开发人员:修补匠和企业家。
修补匠想知道每一件小事是如何运作的。一旦他们掌握了某事的窍门,他们就会被他们不知道的一切分心。对于修补匠来说,科技世界是残酷的,因为要学习的东西太多了,而且每个新的一年都会创造更多。修补匠为他们的知识感到自豪。
企业家想知道足够多的知识来建立真正伟大的东西。他们从功能和最终用户体验的角度进行思考。你永远不会听到他们争论 Python 胜过 .NET 胜过 Java 胜过 C,因为他们根本不在乎。他们对语言的结果比语言本身更感兴趣。企业家为他们的用户群感到自豪。
听起来你正在为你的修补匠倾向而苦苦挣扎。我遇到了同样的问题,并且发现只有一件事有帮助 - 找到您完全尊重的 Entrepreneur 开发人员。当你把两者放在一起时,它是无与伦比的。Tinkerer 探究每一个技术细微差别的深度。他们让企业家在技术上保持诚实。反过来,企业家为修补匠创造焦点和机会。当他们发现您浏览 Scala 站点时(假设您不是 Scala 开发人员),他们揭示了您现有项目中的新挑战。不仅如此,他们更善于理解非修补匠想要什么。
金钱,以及实际完成某事所带来的成就感。当我第一次考虑为自己工作时,我开始想出我将开发然后销售的软件的想法。当然,我真的不知道我正在做的东西是否真的会卖掉,所以很容易分心并跳出新的想法。
所以我决定成为一名承包商/顾问。当你知道你正在做的东西有买家,并且有人在等待它时,它会给你动力。如果这是一个有趣或具有挑战性的项目,那么完成它就会很匆忙。所以这增加了额外的动力,因为你越来越想要那种匆忙。
一旦我获得了相当稳定的雇佣项目流,我发现我可以更好地专注于我的副项目,因为我有动力练习良好的时间管理。我每天或每周给自己一定的时间来处理我的业余项目,这有助于我在花时间时保持专注。
当然,我仍然偶尔会去切线并开始新的副项目,但我最感兴趣的那些我一直能够坚持下去。
此外,在完成一些项目后,您会更好地了解从构思到完成实际需要什么,并且一次又一次地做这件事变得容易得多。
我认为一个好的程序员可能会有很多未完成的“实验”,这是一件好事。
通常有一个好的经理,如果你的工作根本没有完成,你将被追究责任。不过,如果你是学生,那就更难了。我意识到要学习所有你想学习的东西是不可能的。
我限制自己每年只学习 1 或 2 种新语言,每月只学习 1 本书。这似乎是编程混乱和做好工作之间的一个很好的平衡。
感谢拥有良好的学习态度:)
可能最好的激励因素(对于团队或个人)是尽早并经常设定目标。
我在项目管理中观察到的最佳方法之一是引入“功能主题周”——团队(或个人)设定目标或可交付成果,这些目标或可交付成果在一般风格下保持一致,例如“客户功能”、“报告”和指标”等。这使团队/个人专注于交付/工作的一个领域。它还使与正在取得进展的客户沟通变得容易。
另外.. 尝试让您(或您的团队)的进步可见。如果您可以建立自动化构建过程(或其他一些机制)并在短时间内“发布”工作的增量实施,您通常可以获得牵引力和早期参与,这可以更快地推动结果(并有助于早期课程更正)。
1)我留下了一大堆未完成的东西,当然是所有的副业。
2)当我需要工作的动力时,我会打开我的钱包……这通常对我有用。
我发现参与等式的“业务”方面有很大帮助。当您看到您的程序的实际用户可以从您对他们的问题的创造性解决方案中获得多少好处时 - 为他们提供这些解决方案是一种极端的动力。:-)
我正在构建一个我计划出售的应用程序,并将其视为一种赚取额外收入或减少我为他人工作的时间的方式。
我妻子喜欢这个主意,她的鼓励使我比平时更专注,因为现在是“工作”而不是“玩耍”