我找到太多涉及的项目,使用多种语言的方式(以及这些语言中的太多很酷的功能),以及太多的书籍阅读...
你们如何保持专注并实际完成任何事情,而不是留下一些部分完整的"实验"?
似乎有两种类型的开发者:Tinkerers和Entrepreneurs.
Tinkerers想知道每件小事的运作方式.一旦他们掌握了某些东西,他们就会被他们不知道的一切分心.技术世界对于一个Tinkerer来说是残酷的,因为有很多东西要学习,每个新的一年创造更多.Tinkerers为他们的知识感到自豪.
企业家想要足够的知识来建立真正伟大的东西.他们考虑功能和最终用户体验.你从来没有听说过他们争论过基于.NET的Python而不是Java,因为他们根本不关心.他们对语言与语言本身的结果更感兴趣.企业家为他们的用户群感到自豪.
听起来你正在努力解决你的Tinkerer倾向.我遇到了同样的问题,只找到了一件有用的东西 - 找到一位你完全尊重的企业家开发者.当你把两者放在一起时,这是无与伦比的.Tinkerer探讨了每个技术细微差别的深度.他们让企业家在技术上保持诚实.反过来,企业家为Tinkerer创造了关注点和机会.当他们抓住您浏览Scala网站时(假设您不是Scala开发人员),他们会在您现有的项目中揭示新的挑战.不仅如此,他们在了解非Tinkerers想要的东西方面要好得多.
金钱,以及与实际完成某些事情相伴的成就感.当我第一次想到为自己工作时,我开始提出我将开发的软件的想法,然后再出售.当然,我真的不知道我制作的东西是否会实际销售,所以很容易分心并跳出新想法.
所以我决定成为一名承包商/顾问.如果你知道有一个买家正在制作你正在制作的东西,并且有人正在等待它,它会给你动力.如果这是一个有趣或具有挑战性的项目,那么完成它就会有一股匆忙.所以这会增加额外的动力因为你想要越来越多的冲动.
一旦我获得了相当稳定的工作项目,我发现我可以更好地专注于我的项目,因为我有动力去实践良好的时间管理.我每天或每周给自己一定的时间来处理我的项目,这有助于我在花时间保持专注.
当然,我仍然偶尔会去切线,并开始新的项目,但我最感兴趣的是我能够坚持下去.
此外,在完成一些项目之后,您可以更好地了解从构思到完成所需的实际内容,并且它使得一次又一次地执行它变得容易得多.