编程和否定

我的叔叔是一名教师。在我小的时候,他经常不自觉进入“教师模式”,甚至没有学校的设施。他不仅仅给我们训话(我很高兴他能训话),而且他试着用纪律约束我们,就好像我们是在教室里。假期里还得写日记,这不好玩。

换句话说,我们经常忘掉我们无意之间从工作中收获的太多东西。

做为程序员,我们大部分工作时间花在了电脑前面,尽量搞清楚某样东西的意思,为什么这个糟糕的API出现异常以及恶心的IE等。我们习惯了总是担心潜在的瑕疵。当你设计一个系统时,这是好事,但是一段时间以后,它变成了你用在各个地方的习惯。我知道我就是这样的。

因此我想提醒每个人(实际上主要是我,既然我的blog好像有一个半读者了),我们很容易陷入一天天的工作当中,而忘记了从一开始电脑上什么东西在吸引着我们。魔法。让机器按照你的想法、比你要快地工作的能力。解决难题的乐趣。

这些人试图提高我们机器的极限,因此不要恨他们。

这段Alan Perlis引言公开在SICP上【注1】:

我认为在计算机科学领域我们保持对计算机运行的乐趣是相当重要的。
起初它充满了乐趣。当然,付费客户时不时地被骗,不久我们开始认真对待他们的抱怨。我们开始觉得对于成功的、零错误地使用这些机器真的是我们的责任。
我认为不是这样的。我认为我们应负责让他们利用机器,朝着新的方向起步,并在屋里保持乐趣。我希望计算机科学领域从来都不要失去乐趣的感觉。

最重要的是,我希望我们不要变成传教士。不要觉得好像你是圣经推销员。世界上已经有很多了。

注1:SICP:http://zh.wikipedia.org/wiki/计算机程序的构造和解释

来自:http://segmentfault.com/a/1190000000605814

编程和否定

时间: 2024-10-06 17:39:14

编程和否定的相关文章

《Python核心编程》 第3版 中文版pdf

下载地址:网盘下载 内容简介 编辑 Python是一种功能十分强大的面向对象编程语言,可以用于编写独立程序.快速脚本和复杂应用的原型.作为一种开源软件,Python可以自由获取,而且非常易学易用.本书是Python语言的经典入门读本,由两名顶尖的Python技术专家兼培训专家联手撰写,涵盖了该语言的所有核心内容.所有练习的解答都可在书后找到. 本书描述了Python程序的基本构件:类型.操作符.语句.函数.模块.类以及异常和介绍了更多高级主题,包括复杂的实例.无论是用于编写简单的脚本,还是复杂的

shell脚本编程笔记

1.第一行需指定所用的shell :    #!/bin/bash/ 2.打印命令:echo -n:抑制换行 3.使用命令行参数: $# : 传入脚本的命令行参数个数 $* : 所有命令行参数值,在各个参数值之间留有空格(作为一个单词处理) [email protected]: 所有命令行参数值(作为多个单词处理) $0 : 命令本省(shell文件名) $1 : 第一个命令行参数 $2 : 第二个命令行参数 获取用户输入的最后一个参数 ${!#} 不能用${$#} 4.数学计算: expr做数

C#编程总结(十一)数字证书

C#编程总结(十一)数字证书 之前已经通过文章介绍了数字证书的基础知识,包括加密和数字签名. 具体可见: 1.C#编程总结(七)数据加密——附源码 2.C#编程总结(八)数字签名 这里来讲述数字证书的概念.作用.工作原理以及具体应用.希望能够给大家一个清晰的认识. 一.概念 数字证书就是互联网通讯中标志通讯各方身份信息的一串数字,提供了一种在Internet上验证通信实体身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证.它是由一个由权威机构-----CA机构,又称为证书授权(Certi

谈谈Javascript异步编程以及新的实现方法--Promise

最近看到好多文章都在讲promise,为什么现在异步编程会受到如此重视?又为什么异步编程要选择Promise呢? 先来说说第一个问题,异步编程能受到如此重视很大原因是因为javascript正在逐渐走向标准化.规范化(MVC,模块,OOP),所以一些传统编程领域的一些规范化约束发挥的作用也越来越大了,而且javascript本身就是围绕"异步"来进行的,无论是浏览器端还是node服务器端,大多数的API都是通过"事件"来将请求和返回值分离的.简单来说:javascr

计算机可以这样玩—自我学习,自我思维,自我工作(编程)

如果让计算机产生自我意识,那一定件很好玩的事情. 我在想,怎么让计算机产生自我意识和自我学习的思维能力呢,特别是在工业集群中的应用. 由这个问题,我们先问问人类是怎么自我产生意识的. 人类的自我意识主要是客观或主观环境刺激或引导而产生了自我神经思维能力的,对吧. 那么这样就很好理解了,机器同样可以产生自我意识和自我学习的过程. 现在我们来造这个机器,   首先是cpu的问题,如果以目前的二进制cpu来做,肯定是做不做的:因此我们首先否定现有的cpu所有的工艺方式.               那

《Python核心编程(第二版)》pdf

下载地址:网盘下载 内容简介  · · · · · · 本书是Python开发者的完全指南--针对 python 2.5全面升级 ·学习专业的Python风格.最佳实践和好的编程习惯: ·加强对Python对象.内存模型和Python面向对象特性的深入理解: ·构建更有效的Web.CGI.互联网.网络和其他客户端/服务器架构应用程序及软件: ·学习如何使用Python中的Tkinter和其他工具来开发自己的GUI应用程序及软件: ·通过用C等语言编写扩展来提升Python应用程序的性能,或者通过

.NET 中的 async/await 异步编程

前言 最近在学习Web Api框架的时候接触到了async/await,这个特性是.NET 4.5引入的,由于之前对于异步编程不是很了解,所以花费了一些时间学习一下相关的知识,并整理成这篇博客,如果在阅读的过程中发现不对的地方,欢迎大家指正. 同步编程与异步编程 通常情况下,我们写的C#代码就是同步的,运行在同一个线程中,从程序的第一行代码到最后一句代码顺序执行.而异步编程的核心是使用多线程,通过让不同的线程执行不同的任务,实现不同代码的并行运行. 前台线程与后台线程 关于多线程,早在.NET2

关于结对编程的一些问题

前言 最近由于公司项目,有机会尝试结对编程(pair programming),实践了3个月,也有了自己的一些心得体会,本文以Martin.Fowler的<结对编程模糊概念>来展开叙述. 1. 实践敏捷过程一定要“结对”吗? This is utterly false. 'Agile' is a very broad term defined only in terms of values and principles, most notably in the Manifesto for Ag

泛函编程(20)-泛函库设计-Further Into Parallelism

上两节我们建了一个并行运算组件库,实现了一些基本的并行运算功能.到现在这个阶段,编写并行运算函数已经可以和数学代数解题相近了:我们了解了问题需求,然后从类型匹配入手逐步产生题解.下面我们再多做几个练习吧. 在上节我们介绍了asyncF,它的类型款式是这样的:asyncF(f: A => B): A => Par[B],从类型款式(type signature)分析,asyncF函数的功能是把一个普通的函数 A => B转成A => Par[B],Par[B]是一个并行运算.也就是说