1. 聚能聊>
  2. 话题详情

有哪些事情是编程20年后才会知道?

有哪些事情需要编程20年后才会知道呢?江湖传闻……:

不要相信编译器。不要相信工具。不要相信文档。不要相信自己。

我们不需要更多的计算机语言。然而,你还是会跑去再发明一种。让我想想看,你的超级炫酷无敌新语言使用了 IEEE-754 二进制浮点数算术标准以及指定精度的整数。你的超级炫酷无敌新语言是坏掉了的。

维护代码比写代码要难。写一大堆的新代码可以被认为是懒。

你已经被教导编程时不去考虑内存、处理器时间、网络带宽这些,好像它们都是可以随便用和往死里用的。不是这样,不是这样,不是这样。去读一下 Donald Knuth 关于过早优化相关的段落。

你将会在几个月内忘掉你现在是在写什么东西。把代码写的尽可能的通俗易读。

image

有时候,你所需要的仅仅是一行 sed 命令。

注意那些说话比较绝对的程序员,比如「我的方法一定比你的好」这种。编程是一种艺术,不是信仰。

如果你知道你将会把一套流程重复干十次以上,把它自动化了。

备份是一回事。恢复是另外一回事。

东西在你电脑上跑着没毛病不代表就没有 Bug —— Piers Sutton

等开发工具发了第一版之后再安装使用。不要急着去做小白鼠。

好程序员写好代码。伟大的程序员不写代码。神级程序员删代码。

image

不管有多少经理在后边催着你,第一步要做的是可靠地重现 Bug。

有一天,你会遇到一个年长的有经验的人。某个时候,这个人将会教导你编程之道。别理他。

那么问题来了:
1、你觉得这些事情需要编程20年才会知道吗?

2、你认为需要编程20年才会知道的,有哪些事情?

3、你编程多少年了?这么多年的编程经历有没有什么心得?

4、编程水平与年限的关系应该是呈指数增长还是同步增长,又或者抛物线型?为什么?

参与话题

奖品区域 活动规则 已 结束

  • 奖品一

    阿里云代金券 x 5

  • 奖品二

    云栖社区T恤 x 1

  • 奖品三

    云栖帽衫 x 1

12个回答

1

北方的郎 已获得阿里云代金券 复制链接去分享

1、你觉得这些事情需要编程20年才会知道吗?
这些事情应该不需要20年。

2、你认为需要编程20年才会知道的,有哪些事情?
开始编程到现在已经20来年了。
现在的感触就是,代码从来没有辜负过我,很多时候最后的依仗就是这手过硬的技术,只要代码够牛就不用害怕变化。

3、你编程多少年了?这么多年的编程经历有没有什么心得?
开始编程到现在已经20来年了,心得就是你不负代码,代码就不负你。没事就锤炼自己的技术,没毛病。

4、编程水平与年限的关系应该是呈指数增长还是同步增长,又或者抛物线型?为什么?
指数吧,到一定程度就差不多成形了。

1

海阔天空yy 已获得阿里云代金券 复制链接去分享

1、你觉得这些事情需要编程20年才会知道吗?
编程还不到20年,不好回答
2、你认为需要编程20年才会知道的,有哪些事情?
有些经验对你有帮助,有些经验没啥作用
如果抛开一些框架,按自己的习惯去做一套自己的开发框架,也许会比任何人的要好
有一套自己的开发工具集很重要
3、你编程多少年了?这么多年的编程经历有没有什么心得?
10年+,编程心得比较琐碎,这么一问也不知道怎么回答。
简单的就是是做一件事的时候,一定要了解好需求,了解清楚需求,否则改程序,或改逻辑是很痛苦的事情
4、编程水平与年限的关系应该是呈指数增长还是同步增长,又或者抛物线型?为什么?
我是这么理解编程水平的
编程水平=码代码速度+代码质量+算法掌握+高性能+开发语言的熟悉程度
随着年龄的增长,随着身体和精力的原因,可能码代码的速度会有所下将,但除了速度,其它方面肯定是增长的。

希望得个衣帽衫,哈哈

0

无访问权限 已获得阿里云代金券 复制链接去分享

1、你觉得这些事情需要编程20年才会知道吗?

不需要,一般编程3-8年就全都知道了。

2、你认为需要编程20年才会知道的,有哪些事情?

我认为没有,20年后才知道的已经不是编程的经验了,而是人生的经验。

3、你编程多少年了?这么多年的编程经历有没有什么心得?

如非必要,不要乱换编译器。

4、编程水平与年限的关系应该是呈指数增长还是同步增长,又或者抛物线型?为什么?

我感觉是分段的,前期是系统学习阶段,主要呈抛物线增长,中期是毕业后的工作阶段,主要是同步增长,这时编程水平的提高和自身的学习能力有关,而后期基本就是下降了,毕竟年龄大了,大脑活跃度也下降了。

0

aoteman675 已获得阿里云代金券 复制链接去分享

1、你觉得这些事情需要编程20年才会知道吗?
20年前是1998年,那时候的计算机能和现在比吗?过去的CPU、内存、存储、带宽可是稀有资源,写代码都用汇编和C语言,想办法优化减少内存开支和网络资源。现在很多写代码都没有优化了,内存尽量用。从汇编到python,又有谁知道Python的地位,高级语言越来越优秀,封装越来越完美,甚至出现了只管调用接口就能完成应用开发。过几年,人工智能都可以写代码了,还是不断能自我优化,未来编程无法想象。

2、你认为需要编程20年才会知道的,有哪些事情?
20年后应该想知道的是当初为什么学编程,编程是为了什么,写了几十年代码,又为了什么,编程剩下的余生,只有信仰。

3、你编程多少年了?这么多年的编程经历有没有什么心得?
7年了吧,编程经历告诉我们一定要写注释、注释、注释。开发完一定要写文档、文档、文档。不能随便答应产品经理实现某个功能。不能熬夜、多锻炼身体,写一小时代码走动一下。不然你就无法编程到20年了。

4、编程水平与年限的关系应该是呈指数增长还是同步增长,又或者抛物线型?为什么?
要看学习能力了,如果常年炒旧饭,水平那是指数型下降。不断学习心得技术,能对自身代码做优化升级,那是指数型增长的。
编程通常都是经验累积的,如果能保证一直在学习状态,那就是抛物线增长型了。

0

wangccsy 已获得云栖社区T恤 复制链接去分享

1、你觉得这些事情需要编程20年才会知道吗?
你是站在巨人的肩膀上,所以如果你需要20年才能知道这些东西,那基本证明你已经OUt了。现在的计算机发展技术,各种语言的各种框架层出不穷,很多东西都已经封装完毕,你只需要在它的肩膀上遥望世界就可以了。而且在中国的大环境下,人心太浮躁,又有几个人能静下心编程20年,或许3~5年干不上项目经理,干不上架构,就在盲目的要转行了。而且中国的企业也不可能招收这年龄大的程序员,基本上年龄限制在35岁以下,也就是说你快点的话21岁大学毕业,你能干到35岁也仅仅只有14年的时间,又怎么可能做到20年呢?所以不要妄想了。
2、你认为需要编程20年才会知道的,有哪些事情?
编程20年后的事情就是可能你已经没有编程了,或者没有地方需要你编程了,如果你仅仅是还在程序员层次,你也许就被“失业”了。
3、你编程多少年了?这么多年的编程经历有没有什么心得?
我已经干这个行业18年了,经历了心酸的历史。被人歧视,被人看不走。现在的IT行业是年轻人的行业,一般人干过3~5年就不太可能再亲自编写代码了。但我还在。所以我是被人认为“没有能力”的那类人,有能力的早就是“干部”了。编程的心得就是太想编程了,把编程当成了生活的手段,所以就成了现在的样子。当成一个爱好吧,趁早换个行业。
4、编程水平与年限的关系应该是呈指数增长还是同步增长,又或者抛物线型?为什么?
编程水平与年限没有绝对的关系,并不是随着年龄的增长你的水平就能同步增长,或许你在下降呢。技术层出不穷,你十年前掌握的技术早就过时了。

0

盖地虎王晓 已获得阿里云代金券 复制链接去分享

1、你觉得这些事情需要编程20年才会知道吗?
编程的时间不在乎多少,关键在乎你有没有一个好的规范。有些道理有人20岁就明白了,有些人可能40岁还不明白。

2、你认为需要编程20年才会知道的,有哪些事情?
我年龄还没那么大,还想不到咋整。我目前能想到的就是一句:大道至简。

3、你编程多少年了?这么多年的编程经历有没有什么心得?
我编程有6、7年了吧,我的编程经历就是有些问题当你想不通的时候你可以不要想,先做做其他的事情,放空一下脑子,然后再回头看时,一切豁然开朗。

4、编程水平与年限的关系应该是呈指数增长还是同步增长,又或者抛物线型?为什么?
编程水平我觉得和年限成同步的吧,为啥不是指数呢,主要是年龄大了以后,脑子没年轻人好使,但是也不会说成抛物线,毕竟经验和知识面增长摆在那。这就是做编程久的人都去做项目经理了,代码的事交给年轻人就行了。

0

dongdongfu 已获得云栖帽衫 复制链接去分享

1、你觉得这些事情需要编程20年才会知道吗?
CPU ,网络带宽 ,存储什么的这些,不用等到 20 年才知道,你想知道就去学习,多了解了解,对以后提高有帮助。

2、你认为需要编程20年才会知道的,有哪些事情?
我认为要编程 20 年才会知道的,只有一件事情:我为什么要编程?
很多人都觉得,为了工作,为了混口饭吃,可是,吃饭生活这些事情,不编程你可以选择其它的,为什么要编程呢?
这是一门玄学,emmmmmmmmmmmmmmmmmmm.............

3、你编程多少年了?这么多年的编程经历有没有什么心得?
不到两年,心得就是,多思考,多尝试,多总结,看懂代码还得能自己写出才算,吸取别人的思路方法,自己领悟领悟,变成自己脑子里的东西,最后有机会进行一波创新。

4、编程水平与年限的关系应该是呈指数增长还是同步增长,又或者抛物线型?为什么?
不要说应该不应该的问题,看个人,以时间作为 X 轴,能力水平作为 Y 轴。
工作十年,一套 CRUD 代码复制粘贴写了十年,那 Y 轴自然是常量,并且还是基础常量
如果工作两年,却把所有知识吃透,举一反三,理解原理,代码运行机制等等等等,那自然是指数的,别人一天工作8小时,你一天工作八小时,高效学习八小时,那最后进步的肯定是你
如果是前期作为开发,后期转管理,可能就是抛物线,因为前期需要开发,技术能力得到极大提升,最终到达峰值,转为管理,需要关注过程比较多,对于技术方面深究较少,于是有所下降,渐渐的遗忘掉
所以,水平和年限想要呈现什么样,看个人的努力。

PS:帽衫来一个,谢谢

0

wangccsy 复制链接去分享

终于又中了一次不是代金卷的礼品。

浮生递归 回复

回复质量决定礼品内容

wangccsy 回复

呵呵 ,这个有一定因素,也有个人因素。看话题主的心情。,

评论
1

黄二刀 复制链接去分享

这回再赏我代金劵和你急。
1、你觉得这些事情需要编程20年才会知道吗?
这个完全看个人,有的人一两年就能知道,有的人一辈子都不会知道。
2、你认为需要编程20年才会知道的,有哪些事情?
系统架构层面的东西。
3、你编程多少年了?这么多年的编程经历有没有什么心得?
5年。赚钱不易,且编且珍惜,还有要始终保持一颗好学的心,不断学习新知识,不然早早就被小年轻给淘汰了。
4、编程水平与年限的关系应该是呈指数增长还是同步增长,又或者抛物线型?为什么?
因人而异,不一定,但通常都是抛物线,毕竟年龄一直在增长,技术一直在更新。

1

雷侠 复制链接去分享

这图里面的代码好像有BUG,如果是Java语言的话使用Thread.sleep()要么捕获异常,要么就抛出异常否则将编译不通过。

0

微wx笑 复制链接去分享

1、你觉得这些事情需要编程20年才会知道吗?
到现在编程20年的人还没多少吧。至少我还差了好多年。
不过有些事情用不了那么久,当你被各种奇葩的问题持续的折腾之后,
就会渐渐的懂得,电脑也会不按常理出牌。

2、你认为需要编程20年才会知道的,有哪些事情?
20年,一代人的时间,什么都变了,知道了又有什么用呢。

3、你编程多少年了?这么多年的编程经历有没有什么心得?
正如上面说的,很多东西是不能信的,计算机也不是百分百可信的,即使它现在还没有智能,因为创造它的是人,一个极不确定的因子。大多数程序可能你写完就不会再看第二遍了,如果会,那么你最好把它写的让自己容易理解,不然过段时间回来看的时候,你可能会骂,这是哪个假X写的。
实现一个功能需求,在动手写代码之前,最好把整个流程逻辑整理出来,不然很容易出现写了改,改了写,甚至推倒重来的情况。

4、编程水平与年限的关系应该是呈指数增长还是同步增长,又或者抛物线型?为什么?
抛物线型吧。除非能永保年轻,否则很多东西无法持续保持在一个很高的水平。

0

silence108 复制链接去分享

好多话