完美主义对新手程序员的影响

2017 年 9 月 6 日 伯乐在线 伯乐在线

(点击上方公众号,可快速关注)


编译:伯乐在线/飞哥的咖啡  

如有好文章投稿,请点击 → 这里了解详情


我是一个完美主义者,或者,至少我喜欢这样自居。不管怎样,我绝对离完美主义者不远了。

这样本来挺好的。然而,我最近意识到,它实际上阻碍我成为一个更出色的开发者。至少,它阻碍了我的进步,并妨碍了我的学习。

像很多初级开发者和普通开发者,我有一个不完成副项目(side projects)的习惯。不是因为我懒或没时间,出于某种原因,我似乎从来不会把事情做完。

然后就是受打击的地方了。

在进行项目时,我一直努力追求完美,

这就是问题的所在。

怎么定义完美?完美是什么意思?完美真的是一个可以实现的目标吗?

对我来说,我想交出一些了不起的东西,尽自己所能做出一些东西。

想法是好的,但作为一个初级开发者,我面对的困境是,因为我每天都在学习,我的能力在不断增强。

这样的话,我如何才能尽自己最大(且不断提高的)能力,将一个项目做到最好?!

作为开发者,这是阻碍我进步的关键因素。我不知道要在哪里确定一条底线。我觉得很难对自己说“够了,可以继续前进了”。

而有时候,情况甚至会变得有些愚蠢…

6 个月前,我写了一个简单的 URL 缩短器,以熟悉 Symfony 框架。我花了几个晚上的时间,做出了一个基本的工作产品(Working Product),以及一个大的框架介绍。做得很开心?好吧,不尽然。

信不信由你,3 个月后,我仍在对这个小项目修修补补:修改样式,用 Ajax 改进表单提交,我甚至考虑过用 Vue 或 React 来实现。

随着我的能力和知识的不断增加,我完全无法继续前进。我不断看到能够改进的地方,并有了更好的改进方法。

这在商业环境中是好事。在产品或项目上不断进行改进和迭代非常赞。

但是,作为一个小小的学习项目,我明显用力过猛了,正在努力解决一个并不存在的问题。这不是尝试给 Bitly(知名短网址服务)造一个竞争对手,我只是利用这个小项目来加强自身的学习。事实上,根本没有人会看到这个项目!

我并不是唯一会这么做的人,即使最有经验的开发者,也会在某个时候遇到类似的情况。当他们回顾几年前写的代码,他们可能会羞愧难当,甚至可能会对自己几个月前写的代码感到震惊。

(伯乐在线补充配图,Via:程序员的那些事)

作为开发者,无论处于什么水平,你都在不断学习,这是野兽的天性。而经验告诉我们,你只有学会放手,才能继续前进。

但说起来容易做起来难。作为一个初级的,或有抱负的开发者,“单单”继续前进就显得难得多了。在现实中,除非你的代码接受他人的审查,否则你完全不知道好与坏的标准。

我的建议是,在你学习时,要创建一些东西,直到它看起来很得体,并能正常工作,此时你需要忘掉它继续前进。不要寻求完美,这是不存在的~ 你应该将时间花在学习并钻研更大、更好的事情上,而不是花在类似调整无关要紧的内边距这一类事情上。请务必相信我这个过来人的经验之谈!

我最终明白了“完成即完美”这句话,这也是二八定律告诉我们的道理。(原因与结果、投入与产出、努力与报酬之间的关系往往是不平衡的,结果、产出或报酬的 80% 取决于 20% 的原因、投入或努力。)

当你处于学习阶段时,所有的项目都不需要做到“完美”。它们本身就是用于学习的项目,做完尽管放手让它们去。

瞎搞瞎弄、缝缝补补、或者试图压缩最后 10% 的时间,这些都不是对有限时间的合理使用方式。

在 Web 开发中,完美是不存在的。

只有一种情况除外,那就是…完成,因为“完成即完美(done === perfect)”。

随着时间的推移,你能做出更大、更好的东西!


看完本文有收获?请分享给更多人

关注「伯乐在线」,看更多精选 IT 职场文章

登录查看更多
2

相关内容

程序员可以指在程序设计与互联网某个专业领域中的专业人士或是从事软件撰写,程序开发、维护的专业人员。
【实用书】Python数据科学从零开始,330页pdf
专知会员服务
141+阅读 · 2020年5月19日
算法与数据结构Python,369页pdf
专知会员服务
161+阅读 · 2020年3月4日
【2020新书】数据科学:十大Python项目,247页pdf
专知会员服务
212+阅读 · 2020年2月21日
【书籍推荐】简洁的Python编程(Clean Python),附274页pdf
专知会员服务
179+阅读 · 2020年1月1日
说说我的老同事,前端大神程劭非
余晟以为
17+阅读 · 2019年1月14日
年薪48万的程序员,他究竟做对了什么?
机器学习算法与Python学习
7+阅读 · 2018年12月28日
吃鸡手游竟然是Python写的?
机器学习算法与Python学习
7+阅读 · 2018年9月11日
Python为啥这么牛?
Python程序员
3+阅读 · 2018年3月30日
为什么 Python 更适合做 AI/机器学习?
计算机与网络安全
10+阅读 · 2018年3月18日
Python 如何快速入门?
全球人工智能
6+阅读 · 2018年3月15日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
Kaggle入门手册
Datartisan数据工匠
14+阅读 · 2017年11月9日
Arxiv
24+阅读 · 2020年3月11日
A Comprehensive Survey on Transfer Learning
Arxiv
121+阅读 · 2019年11月7日
Factor Graph Attention
Arxiv
6+阅读 · 2019年4月11日
Arxiv
4+阅读 · 2018年12月20日
Arxiv
5+阅读 · 2018年12月18日
Arxiv
6+阅读 · 2018年2月6日
Arxiv
7+阅读 · 2018年1月10日
VIP会员
相关VIP内容
【实用书】Python数据科学从零开始,330页pdf
专知会员服务
141+阅读 · 2020年5月19日
算法与数据结构Python,369页pdf
专知会员服务
161+阅读 · 2020年3月4日
【2020新书】数据科学:十大Python项目,247页pdf
专知会员服务
212+阅读 · 2020年2月21日
【书籍推荐】简洁的Python编程(Clean Python),附274页pdf
专知会员服务
179+阅读 · 2020年1月1日
相关资讯
说说我的老同事,前端大神程劭非
余晟以为
17+阅读 · 2019年1月14日
年薪48万的程序员,他究竟做对了什么?
机器学习算法与Python学习
7+阅读 · 2018年12月28日
吃鸡手游竟然是Python写的?
机器学习算法与Python学习
7+阅读 · 2018年9月11日
Python为啥这么牛?
Python程序员
3+阅读 · 2018年3月30日
为什么 Python 更适合做 AI/机器学习?
计算机与网络安全
10+阅读 · 2018年3月18日
Python 如何快速入门?
全球人工智能
6+阅读 · 2018年3月15日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
Kaggle入门手册
Datartisan数据工匠
14+阅读 · 2017年11月9日
相关论文
Arxiv
24+阅读 · 2020年3月11日
A Comprehensive Survey on Transfer Learning
Arxiv
121+阅读 · 2019年11月7日
Factor Graph Attention
Arxiv
6+阅读 · 2019年4月11日
Arxiv
4+阅读 · 2018年12月20日
Arxiv
5+阅读 · 2018年12月18日
Arxiv
6+阅读 · 2018年2月6日
Arxiv
7+阅读 · 2018年1月10日
Top
微信扫码咨询专知VIP会员