Being Slow to Criticise

栏目: IT技术 · 发布时间: 4年前

内容简介:that deliberately killed the servers was an interesting idea. The programmer/engineer involved wasn't able to fix the underlying problem, so an overlay solution was devised that (a) worked, and (b) was feasible. The story I read had the details, and it was

This page has been

Tagged As Software and

Tagged As Story.
Monitoring software

that deliberately killed the servers was an interesting idea. The programmer/engineer involved wasn't able to fix the underlying problem, so an overlay solution was devised that (a) worked, and (b) was feasible. The story I read had the details, and it was an intriguing read.

But this post is not about that story. This post is about the comment made by one of the readers in the forum where I saw it. The comment was:

"You should just fix the real problem:
thesoftware is garbage."

I've met this before, both the situation of havingsoftware we can see is not up to current standards, and the attitude of those who look at it with the benefit not only of hindsight, but of 20 years of advances insoftware, toolkits, libraries, and hardware.

Related:

Although it's also seen and quoted in other contexts, there's a saying insoftware circles. People often come across code that looks overly complicated for the task it's doing, or the effect it's trying to achieve. But sometimes there's a reason for it to be that complex. Sometimes there are unexpected edge-cases and the code needs to be able to deal with it.

So the saying is:

"Don't ever take a fence down until you know the reason why it was put up," -- John F Kennedy, paraphrasing G.K.Chesterton.

This isn't a reason to leave things alone, and it should never be a thought-terminating cliché. It's a call to put in the time to understand something properly.

Sometimes there genuinely is no longer a reason for something, and sometimes there never was. What's important is understanding.

But I try to be slow to jump to that conclusion, that thesoftware is garbage. So often there are reasons for things to be the way they are. Thesoftware tools and the hardware capabilities were very, very different in the aughties, and many people currently writing software

don't really seem to appreciate by just how much. Additionally, there might be time pressures, political pressures, engineering constraints, access problems, and more.

It may be the case that things could have been done differently, perhaps better, but then again, once you know the full story and the full context, maybe not.

Some time ago I wrote up a war story from the mid-nineties and had some currentsoftware people crap all over it. When I started to explain about the machine limitations of the time, the bluster increased, and among the replies I got was "Thesoftware was crap".

Ever since then I've been interested in the contexts for these stories. So often I hear "Well you shouldn't have done it like that!" rather than an enquiring:

"OK, let's assume some clever people wrote
this. I wonder what the pressures were that
made them come out with that solution."

I've learned a lot by approaching things that way, instead of assuming the people involved were ignorant, unskilled, idiots, or otherwise incompetent, and simply declaring:

Thesoftware was garbage.

You might be right, but equally, it may be that you haven't put in enough time to understand the realities.


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Head First JavaScript程序设计

Head First JavaScript程序设计

[美]Eric T. Freeman、[美] Elisabeth Robson / 袁国忠 / 人民邮电出版社 / 2017-9 / 129.00 元

本书语言和版式活泼,内容讲解深入浅出,是难得的JavaScript入门书。本书内容涵盖JavaScript的基本知识以及对象、函数和浏览器文档对象模型等高阶主题。书中配备了大量有趣的实例、图示和练习,让读者轻轻松松掌握JavaScript。一起来看看 《Head First JavaScript程序设计》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试