为什么编程是独一无二的职业?

孔明
• 阅读 1360

导读:此文翻译自Nalaka Gamage的《为什么编程是独一无二的职业》的演讲稿。

1. 简介

  • 有些人说编程很难,有些人认为很容易。
  • 编程不仅依赖你的能力,而且还取决你工作的态度。
  • 编程的确很难,但比起那些需要伪装、欺骗和表演来生活的恶棍或者小丑来说,真的一点也不难。
  • 作为一个程序员,知道你在做什么,会让生活变得更加有趣和快乐。

2. 与不会说话的机器为伍

  • 计算机是不会说话的机器。
  • 除非你向它发送精确的指令,否则计算机是不会懂(你的意思)的。
  • 和哑巴一起工作,明显是困难的。
  • 因此,程序员必须很聪明。
  • 阿呆与阿瓜永远不会是一对好组合。

3. 计算机是专横的(一个不可避免的恶魔)

  • 不会说话的计算机明显也是专横的。
  • 计算机语言之所以如此的专横,其中的一个好的理由就是让程序变得更精确而且没有歧义。
  • 精确性是人们喜欢使用软件而不是由人来完成一件事情的最主要理由之一。

4. 人不能欺骗程序

  • 编写什么代码就得到什么运行结果。
  • 没有所谓的隐藏设计或者隐藏代码bug。
  • Bug总是会显现的。
  • 因为当软件运行的时候,它已经不再处于你的控制之下了。
  • 编写正确的代码是唯一的选择。

5. 没有地方可以祷告

  • 不可能通过祈祷让代码工作。
  • 如果你想要完成软件,只要设计一个方案然后编码实现。
  • 在代码面前你与天才程序员的机会是平等的,这是很酷的一件事情。

6. 没有地方调情

  • 一些人通过调戏其他人以完成工作。
  • 计算机不是一个可爱的人。
  • 在编程时仅仅调情是没有任何优势的。
  • 编程适合真正(实干)的人。

7. 程序员都是解决问题的人

  • 有很多看上去很像专业人士的人,他们其实是问题的制造者。
  • 大多的律师为了他们的生计给别人找不必要的问题。
  • 大多的销售为了他们的生计向别人推销不需要的东西。
  • 一些很懒的或者不胜任工作的人,努力地成为管理别人工作的管理者。
  • 但是,编程是在真正解决现实世界中的问题。
  • 只有真正有才能的人才能成为程序员。

8. 逻辑思考真的很重要

  • 八卦适合漂亮的女人。
  • 占星术/迷信适合哑巴。
  • 科学适合老古董。
  • 编程适合逻辑思考者。
  • 编程适合善于分析的人。
  • 逻辑思考和分析也会让你变得聪慧。—— 一个对你人生的奖励。

9. 聪明人,编程以及职业

  • 如果你是聪明人,并且很擅长你所作的工作 你不需要向别人乞讨才能生存。
  • 你不需要通过调情才能生存。
  • 你会获得均等的机会。
  • 你会获得自主。
  • 你会获得自由(除非你是计算机的奴隶) 你会变得聪慧。

10. 编程适合不做作的人

  • “世上有两类人:一类人完成工作,另一类接受荣誉。努力成为第一类,那里竞争会少一点。” 英吉拉·甘地
点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
PHP安全性防范方式
<h2SQL注入</h2<pSQL注入是一种恶意攻击,用户利用在表单字段输入SQL语句的方式来影响正常的SQL执行。</p<h4防范方式</h4<ul<li使用mysql\_real\_escape\_string(),或者addslashes()过滤数据</li<li手动检查每一数据是否为正确的数据类型</li<li使用
Wesley13 Wesley13
3年前
Activiti 工作流入门指南
<divclass"htmledit\_views"id"content\_views"<h1<aname"t0"</a概览</h1<p如我们的介绍部分所述,Activiti目前分为两大类:</p<ul<li<p<ahref"https://activiti.gitbook.io/activiti7deve
Stella981 Stella981
3年前
ASMSupport教程4.8 生成逻辑运算操作
<p在java中有以下逻辑运算符:</p<ul<li&amp;&amp;:条件与</li<li||:条件或</li<li&amp;:布尔型的逻辑与</li<li|:布尔型的逻辑或</li<li^:布尔型的逻辑异或</li<li!:非操作</li</ul<p那么接下来我们将些段例子
Stella981 Stella981
3年前
Python爬虫人工智能大数据全栈视频史上最全合辑教程分享!
Python爬虫人工智能大数据全栈视频史上最全合辑教程分享!毫无疑问Python是这两年最火的编程语言,不仅容易上手,且在多个行业都可应用。尤其今年人工智能及大数据的发展,Python将会展现更多的实用性!如果你是小白想改变自己的职业方向,抓紧时间上车…精心整理的资料和课程都在下面!P
Wesley13 Wesley13
3年前
mysql 5.7 windows zip安装
<ol<limysql官网下载windowszip安装包并解压(D:wampmysql56winx64)</li<li添加pathD:wampmysql5722winx64bin</li<li创建data目录D:\\wamp\\mysql56winx64\\data</li<li<p创建mysql配置文
Stella981 Stella981
3年前
ASMSupport教程4.11 生成数组操作
<p在任何语言里,数组都是基本的数据类型,我们这一节将讲述如何生成数组操作。</p<p数组操作包括以下几个:</p<ol<li创建数组</li<li获取数组长度</li<li获取数组每个元素的内容</li<li为数组元素赋值</li</ol<p我们接下来对每种操作进行详解。</p<h3<fonts
Stella981 Stella981
3年前
IdeaVim
<divid"cnblogs\_post\_body"class"blogpostbodycnblogsmarkdown"<h3id"ideavim简介"IdeaVim简介</h3<pIdeaVim是IntelliJIDEA的一款插件,他提高了我们写代码的速度,对代码的跳转,查找也很友好。</p<ul<li安装位置</
Wesley13 Wesley13
3年前
Java基础学习总结(18)——网络编程
一、网络基础概念    首先理清一个概念:网络编程 !\网站编程,网络编程现在一般称为TCP/IP编程。二、网络通信协议及接口三、通信协议分层思想四、参考模型五、IP协议  每个人的电脑都有一个独一无二的IP地址,这样互相通信时就不会传
Stella981 Stella981
3年前
ASMSupport教程4.12 生成方法调用操作
<p这一节我们讲如何用ASMSupport生成方法调用的操作,方法调用包括下面四种类型:</p<ol<li调用构造方法<li调用静态方法<li调用非静态方法<li调用当前类的方法<li调用父类方法</li</ol<p首先我们需要看我们想要生成的类:</p<p代码1:</p<h3<divid"scid:9D
Wesley13 Wesley13
3年前
HTML快捷写法大全
父子用\ \Ulli\3\<ul\    <li\</li\    <li\</li\    <li\</li\</ul\兄弟之间用,也可以省写\pspan\,\ul\<p\</p\<span
Wesley13 Wesley13
3年前
Java并发编程面试题(2020最新版)
基础知识并发编程的优缺点为什么要使用并发编程(并发编程的优点)充分利用多核CPU的计算能力:通过并发编程的形式可以将多核CPU的计算能力发挥到极致,性能得到提升方便进行业务拆分,提升系统并发能力和性能:在特殊的业务场景下,先天的就适合于并发编程。现在的系统动不动就要求百万