The best programmer I know is my technical co-founder at Framebase.io (Tyler Menezes). I don’t know how he does it but he kicks my ass at Google.
You know the famous quote:
“Never commit to memory what can be easily looked up in books” - Albert Einstein.
So unless you’ve already memorized that sorting algorithm by heart, why in the world would you want to spend 2 hours trying to figure it out yourself? Worst, why would you want to re-implement something half-assed from scratch when you can just find someone who’s done it before?
Excluding for fun and educational purposes, I can understand some reasons wanting to build out something proprietary long term, but chances are, unless you’re an absolute genius, the collaborative efforts of an open source project will beat whatever you can do in 8 hrs.
If you need to implement something in code and it’s not cutting edge technology, Google it first. If someone else hasn’t already done it yet, you’re either Googling it wrong or way off in what you’re trying to accomplish. If you’ve given it your best effort, find someone to ask for help.
The best programmers I know understand how to architect and build large projects piece by piece. They can focus on the macro because don’t get hung up in the pieces. They know how to use Google to find solutions fast. DRY.
我知道的最优秀的程序员是我的Framebase.io 网络公司的技术合伙人Tyler Menezes。我不知道他是如何练就这一身技术本领的,但他让我在对如何使用谷歌的问题上产生了颠覆性的认识。
你应该听说过这句有名的话:
“能在书本上简单查到的东西永远不要放进你的记忆里。”
所以,除非已经在心里记住了某种排序算法,为什么你非要花2小时试图自己去实现它?更糟糕的是,为什么你想用自己笨拙的方法把它再重新实现一遍呢?为什么你不去找找看看有人是否已经实现了它?
除非是为了好玩,或是出于教育的目的,我想不出一个人有什么理由要长期的独自的开发一个东西,而更有可能的情况是,除非你是个顶级的天才,那么,一起协作来开发开源项目将会给你带来比你独自开发8小时更大的收获。
如果你想实现一个东西,而它并不是什么最新的技术,那先在谷歌上搜一下。如果没有人做出过它,要么是你查错了方式,要么是你需要付出努力去完成这项任务。如果你打算尽力完成它,你应该找一些人寻求帮助。
我知道的最优秀的程序员都明白,对于大型项目如何一块一块的搭建架构,如何一部分一部分的开发程序。他们会关注大局,不拘泥于细节。他们知道如何使用谷歌更快的找到解决方案。DRY。