我正在对初级(也许是高级)软件工程师所犯的常见错误和错误假设进行一些研究。

你坚持时间最长、最终被纠正的假设是什么?

例如,我误解了整数的大小不是标准的,而是取决于语言和目标。说起来有点尴尬,但事实就是这样。

坦率地说;你有什么坚定的信念?你大概坚持了多长时间?它可以是关于一种算法、一种语言、一个编程概念、测试,或者任何关于编程、编程语言或计算机科学的东西。


当前回答

在80年代早期,当我开始玩电脑(ZX81, 1K内存)时,我花了几个小时为杂志上的游戏输入大量的机器代码(字节,而不是人类可读的汇编语言),基本上是使用BASIC Poke指令。

我相信,如果我输入了一条错误的指令,那么我就必须从头开始,从头开始输入机器代码。

其他回答

软件工程师总是诚实地告诉你他们现在在做什么,或者过去对你的软件做了什么。

字节码解释的语言(如c#或f#)比那些直接编译成机器代码的重置按钮慢。

好吧,当我开始有这样的信念时(在80年代),这是真的。然而,即使是在c#中,我有时也会想“把这个内循环放到一个。cpp -文件中是否会让我的应用程序运行得更快”)。

幸运的是,没有。

可悲的是,我几年前才意识到这一点。

我喜欢编程。通过研究SICP的书,我发现我一无所知。至少现在我更深入地研究编程了。

我写的所有东西在可预见的未来都会失败。

并不是说一切最终都不会崩溃,而是在我的编程教育早期,当我发现try. catch块…我把所有的东西都包在里面....有些事情,如果失败了,将代表比我的程序处理的更大的问题(例如,北极和南极互换了位置)。

我记得我10岁的时候,有人让我相信,将来会有一种计算机能够在3秒内运行一个无限循环。