我是一个初级程序员,在5-10年内我想成为一名专家。我喜欢编程,因为它是一个独特的技能集,您可以不断地改进。但后来我想,你怎么能不断改进呢?在某种程度上,你不只是“知道”如何编程吗?我想,就像在大多数事情上,一个人可以做得很好,在最上面,技能上的差异可能是最小的。那么是什么使一个更好的程序员呢?更清晰的代码?更快地理解概念?是否能够在没有关闭的情况下在上面写一篇文章?(我觉得这篇文章注定了,但这确实是我想知道的一个问题。)
发布于 2011-10-06 23:52:01
就像任何技巧一样,它有点像分形图片。从远处看,它看起来很简单。离你越近,你就越意识到它是多么的复杂。
你越好,你就越意识到你知道了多少,你知道的又有多少。随着你变得更好(只要你保持你对改进的渴望),你会找到新的方法来看待编程,你也会找到改进甚至旧技术的方法。
您将变得更快,更好地传达您的意图,通过布局的源代码,并更好地解决问题。
当然,收益递减的规律也适用。当你做了10年之后,你需要更长的时间去提高同样的数量,而不是当你做了1。
发布于 2011-10-06 23:50:27
how can you continually improve?你不断提高,通过努力工作和设置更高的标准,每一次。
At a certain point, don't you just "know" how to program?在某种程度上( 3-5岁左右),所有世界级的运动员都学会了他们职业生涯中最基本的技能,即跑步。但这并不意味着一个六岁的孩子就能打破任何田径世界纪录。同样,也需要不断的练习和纪律。
at the top, the difference in skill is probably minimal是的,毫无疑问。但是仔细看看,你会发现顶部并不是一个固定的东西。每隔几年,顶级领域就会发生变化,随之而来的是驾驭变化的技能。你可以吃午饭,也可以做别人的午餐。
So what makes a better programmer?三个字:
像编写更清晰的代码和更快地理解概念这样的事情,是在您编码了一段时间之后,并且在最初几次经历了理解和实现的循环之后很容易实现的。最后,你今天写的代码在几年后看起来会很糟糕。在programmers.stackexchange和堆栈溢出中逗留了一段时间,让我知道我还有很大的改进余地。有时候,只要阅读别人的答案,你就会发现你本来无法达到的洞察力。这些事情(至少)提醒我,你进步得越多,改进的余地就越大。
发布于 2011-10-06 23:19:15
想象一下,如果你在三四十年前提出这个问题,答案会是什么?
开发的世界永远不会停止(如果没有其他的话,微软想要销售新版本的C#)。
即使您设法学习了所有已知的开发技术(函数式编程、协同设计、连续传递风格、无锁数据结构,……),新的技术仍然会出现。
随着硬件的改进,新的发展领域也将出现。多触摸屏、3D显示、运动跟踪、生物识别传感器和其他IO技术都给用户界面和功能带来了新的挑战。
https://softwareengineering.stackexchange.com/questions/112865
复制相似问题