程序员现在应该开始做的三件事

There is no need to discuss whether technology influences the world. It does. The question of how it affects the world, however, never loses its importance. Influential philosophers like Heidegger extensively studied technology because, to them, technology is the key to understanding the world. I believe there is a lot of truth to that.

无需讨论技术是否影响世界。 是的 然而,它如何影响世界的问题从未失去其重要性。 像海德格尔这样有影响力的哲学家广泛地研究了技术,因为对他们而言,技术是理解世界的关键。 我相信这有很多道理。

But how can one deal intensively and purposefully with advances in technology without having the highly technical specializations and qualifications required today? For me, the key must be a fruitful discourse between specialists and large parts of the world’s population. We should all have the opportunity to participate and make sense of new technology. This meaningful participation requires active questioning and answering. To facilitate this discourse, people without a technical background must overcome their inhibitions about highly complex technological issues.

但是,如何在不具备当今所需的高度技术专长和资格的情况下,集中精力,有目的地应对技术进步呢? 对我而言,关键必须是专家与世界上大部分人口之间富有成果的对话。 我们所有人都应有机会参与并了解新技术。 这种有意义的参与需要积极的提问和回答。 为了促进这种讨论,没有技术背景的人们必须克服对高度复杂的技术问题的束缚。

Maybe we can get some help from you?

也许我们可以从您那里得到一些帮助?

开始使用我们了解的语言 (Start Using Language We Understand)

It is much easier to explain what a program can do using terms from this specific programming language. Stepping out of this zone by using everyday language makes it harder to convey details within the program setup. Even worse, how can you break something down to someone who doesn’t have a clue what the framework is you have invested so much of your time and efforts. Why even bother, right?

用这种特定编程语言的术语来解释程序可以做什么变得容易得多。 使用日常语言走出该区域将使在程序设置中传达细节变得更加困难。 更糟糕的是,如何将某些东西分解给一个不知道该框架是什么的人,您花费了很多时间和精力。 为什么还要打扰,对吗?

Let me give you three reasons why you should take the time and bother:

让我给您三个原因,您应该花一些时间和精力:

First, I believe you’ll find the glitches in your setup much quicker. Why is that? Supposedly stupid questions make you rethink the design itself — every single time you have to adjust your language, you will have to figure out a new way of explaining, and in doing so, you’ll rethink the design.

首先,我相信您会更快地发现设置中的故障。 这是为什么? 愚蠢的问题使您不得不重新思考设计本身–每次必须调整语言时,您都必须找出一种新的解释方式,然后您将重新思考设计。

Image for post
Photo by Jon Tyson on Unsplash
乔恩·泰森 ( Jon Tyson)Unsplash

Second, you’ll know whether you have built something that makes sense. If it’s something people would use, or something the general public can see themselves incorporating into their everyday lives, or they see why engineering companies would have a use for it, you have built something robust. And this, my dear programmers, is maybe even a free market opportunity assessment given by someone who has no idea about coding. Free tip: If eyes widen and you get an “aha! — now I get it. This is ingenious! It’s just like (insert everyday application here)”. Well, it’s a winner!

其次,您将知道您是否构建了有意义的东西。 如果这是人们会使用的东西,或者是普通公众可以看到的融入日常生活的东西,或者他们知道为什么工程公司会使用它,那么您已经构建了强大的东西。 亲爱的程序员,这也许是一个不懂编码的人提供的免费市场机会评估。 免费提示:如果睁大眼睛,您会得到“啊哈! - 现在我懂了。 这很巧妙! 就像(在此处插入日常应用程序一样)” 。 好吧,它是赢家!

Third, you have sharpened your arguments and will defend your programs in discussions with other professionals more fiercely. Why? Well, you have thought about every aspect of your lines of code. They make sense, and you know, and you’ll have elicited the pros and cons way before anyone has praised or criticized your work.

第三,您已经加紧了论点,并且将在与其他专业人员的讨论中更加激烈地捍卫您的程序。 为什么? 好了,您已经考虑了代码行的各个方面。 它们是有道理的,而且您知道,在任何人赞美或批评您的作品之前,您都将了解其利弊。

告诉我们更多,详尽和详细的解释 (Tell Us More, Elaborate, and Explain in More Detail)

Yes, it is incredibly obnoxious to repeat the same things over and over again. But to us, it may not sound like the same principle at all. Trust me. It took me a while to understand the task of a proportional-integral-derivative (PID) controller. No, I don’t happen to know any of these mathematical terms. You could explain it saying something like PIDs compare the setpoint to the measured output to see how far off these to measurements are. But preferably, explain things like this.

是的,一遍又一遍地重复同样的事情是令人讨厌的。 但是对我们来说,这听起来可能根本不一样。 相信我。 我花了一段时间才了解比例积分微分(PID)控制器的任务。 不,我对这些数学术语都不了解。 您可能会解释说,诸如PID之类的东西会将设定值与测量的输出进行比较,以查看这些测量值与测量值之间的距离。 但最好是这样解释。

To you, it is evident how a particular mathematical principle works or how the programming language is structured. It is not for outsiders. I found it very important to have more background and elaborations with detail or a crazy fun fact (you bet, we’d definitively remember the crazy fun fact — the rest, probably not so much, sorry!). They might seem insignificant to you, but to outsiders, it gives them an idea, something they can relate to. To understand a PID, you’ll have to grasp the mechanisms of the feedback loop. I am very sorry, but nobody uses the term proportional-integral-derivative controller daily. And I can’t remember the last time I said derivative in a casual conversation. Honestly, can you? You might have said it at work. We haven’t used it at all. At all.

对您来说,显而易见的是特定的数学原理是如何工作的或编程语言的结构。 它不适合局外人。 我发现拥有更多的细节背景或细节或疯狂有趣的事实非常重要(您敢打赌,我们一定会记住疯狂有趣的事实-其余的可能不多,对不起!)。 它们对您来说似乎微不足道,但对局外人来说,这给了他们一个想法,可以与他们联系。 要了解PID,您必须掌握反馈回路的机制。 非常抱歉,但是没有人每天使用比例积分微分控制器。 而且我不记得我上次在不经意的谈话中说到衍生词了。 老实说,可以吗? 您可能在工作中曾说过。 我们根本没有使用过。 完全没有

There are many more examples that I could further elaborate on in this section because the world of technology is very complicated. However, I firmly believe that we must inform ourselves first and have an idea of what we need to know before asking a programmer something. Are we truly ready to fire away with questions? It is our task to try and understand the engineering way to go about a specific item or problem. They can show us the way, but we have to be willing to walk.

在本节中,由于技术领域非常复杂,因此我可以进一步阐述更多示例。 但是,我坚信,我们必须首先告知自己,并且在向程序员提出要求之前先了解一下需要了解的知识。 我们真的准备好提出疑问了吗? 我们的任务是尝试了解解决特定项目或问题的工程方法。 他们可以向我们展示道路,但我们必须愿意走路。

听我们的恐惧 (Listen to Our Fears)

While you know more about the possibilities of technology and have a much clearer concept of what the future might have in store for us, don’t forget to listen to our fears. What happens to a society that stops to call on the phone simply because we don’t know whether we are talking to a bot or a real person? Is it that great to have your bot call your favorite restaurant for reservations? Techies sell it as a time-saving invention, but is it? Yes, I might have to clear five minutes out of my schedule to make the call, but on the other hand, if I don’t, I might lose five minutes with my favorite waiter (and the reason our favorite restaurant is our favorite is not tied to food alone, right?). Now, I can see situations where this can come in handy. Can I outsource the calls to my insurance company to a bot?

尽管您对技术的可能性有了更多的了解,并且对未来可能对我们有更清晰的了解,但不要忘了听听我们的恐惧。 对于一个仅仅因为我们不知道我们是在与机器人还是真实的人说话而停止打电话的社会会发生什么? 让您的机器人致电您最喜欢的餐厅进行预订是否很棒? 技术人员将其作为节省时间的发明出售,是吗? 是的,我可能需要在日程表上拨出5分钟才能打出电话,但另一方面,如果我不这样做,我可能会失去与我最喜欢的服务员的5分钟(而我们最喜欢的餐厅是我们最喜欢的餐厅的原因是不仅仅局限于食物,对吗? 现在,我可以看到可以派上用场的情况。 我可以将打给保险公司的电话外包给机器人吗?

Since I have just undermined my point, let me give you another example: facial recognition. I was not asked when they pulled my picture from social media — and tell me, how could I have known that my photo on social media would end up in a database for facial recognition purposes? James Oliver has made a show about it recently. He explained the mechanisms behind these flawed systems to a broader audience. And he did it because it’s alarming.

由于我刚刚破坏了我的观点,让我再举一个例子:面部识别。 当他们从社交媒体上提取我的照片时,我没有被问到-告诉我,我怎么知道我在社交媒体上的照片最终会存储在数据库中以进行面部识别? 詹姆斯·奥利弗(James Oliver) 最近对此进行了表演 。 他向广大读者解释了这些有缺陷的系统背后的机制。 他这样做是因为这令人震惊。

It’s this that bothers me the most. Why does one believe this tech fix is necessary? Dr. Ruha Benjamin of Princeton University concludes that “tech fixes for social problems are not simply about technology’s impact on society but also about how norms and values shaped what tools are imagined necessary in the first place.”

这是最让我困扰的事情。 为什么有人认为此技术修复是必要的? 普林斯顿大学的Ruha Benjamin博士总结说:“针对社会问题的技术解决方案,不仅涉及技术对社会的影响,而且还涉及规范和价值观如何首先塑造了人们认为必要的工具。”

Meaning, we are in this together.

意思是,我们在一起。

我们需要两个世界 (We Need Both Worlds)

Perhaps my three wishes cover the core of what I mean by saying we’re in this together: speaking a common language, pointing out backgrounds, and taking warning signals and defensive attitudes seriously are not contradictory, but instead are in a context that forms, consolidates, or overthrows social norms.

也许我的三个愿望涵盖了我所说的在一起的意思的核心:说一种通用语言,指出背景,认真对待警告信号和防御态度并不矛盾,而是在形成的背景下,巩固或推翻社会规范。

Especially today, civil society can no longer afford to exclude sections of the population from these discussions. As with every upheaval, it requires the courage to ask questions, the ability to answer these questions in a goal-oriented manner, and the mutual willingness to reach a compromise that will serve the future.

尤其是在今天,民间社会再也无法承受将一部分人口排除在这些讨论之外。 与每次动荡一样,它要求勇于提出问题,以目标为导向的方式回答这些问题的能力,以及共同为将来服务的妥协的意愿。

Thanks for reading!

谢谢阅读!

翻译自: https://medium.com/better-programming/3-things-programmers-should-start-doing-right-now-2d6710dced93

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值