编程天赋是一种危险的神话

开源Web应用框架Django的 主要作者、资深Python开发者Jacob Kaplan-Moss在很多人眼里是一名有天赋的明星程序员。但他自谦的说他最多是一名普通程序员,他在一张幻灯片上写道:“Hi,我是Jacob,一 名平凡的程序员。”当Jacob说自己是一名普通程序员许多人都不会相信。人们相信编程能力是呈U型分布,即你要么是一名差劲的程序员,要么是一名出色的 程序员,没有中间地带。对此,LWN网站编辑Jake Edge认为编程天赋是一种危险的神话。编程不是热情也不是天赋,它是一种能够学习的技能,相信编程天赋的说法会将学习者赶出编程领域,阻止人们学习编程。

文章转载自 开源中国社区 [http://www.oschina.net]

时间: 2024-10-28 16:38:17

编程天赋是一种危险的神话的相关文章

浅析网站优化中几种危险的SEO方法

最近上论坛或者博客,老有人说自己的网站被k了或者网站被拔毛了.我想搜索引擎既然处罚你网站,肯定是有原因的,它不会无缘无故的去处罚一个网站.这时候我们就要对自己的网站进行很好的分析了,下面feihe66说下几种危险的seo方法. 1.标题关键词堆砌 有很多网站采取这种方式,这种方式可能短期能获取很好的排名,但是长远来说是非常危险的.搜索引擎当时候没发现这种情况,不代表以后不会发现.关键词堆砌被降权或者堆砌的例子不在少数,网上经常可以看到这样的情况,所以seoer不要采用这种方式. 2.内链优化不合

关于java问题-java编程思想的23种设计模式有哪些

问题描述 java编程思想的23种设计模式有哪些 例如,单例设计模式其它就不知道了?可以的话在给个例子描述一下 解决方案 根据caozhy的提示,再整理一下 1. Memento(备忘录) 2. Chain of Responsibility(责任链) 3. Observer(观察者 4. Command(命令模式) 5. State(状态模式) 6. Interpreter(解释器 7. Strategy(策略模式) 8. Iterator(迭代子 9. Template Method(模板方

ASP.net组件编程中的两种事件编写方法

asp.net|编程 以下是组件代码:using System;using System.Web.UI;using System.Web.UI.WebControls;using System.ComponentModel; namespace NSEventStudy{ public delegate void TwoEventHandle(int flag); public class EventStudy : System.Web.UI.WebControls.WebControl { /

白盒交换机:实现网络可编程性的三种方式

哪怕是最苛刻的IT专业人员,有一个词也会很吸引他注意:节约成本.当市场中出现白盒交换机时--即一种预安装第三方网络操作系统的消费类交换机硬件,网络工程师一般首先听到或了解到的是这种新方法有可能节约成本. 但是,随着网络可编程性的概念变得越来越受到关注,节约成本已经不是白盒交换机中最受关注的方面了.除了节约金钱,它们还可以增加网络自动化.可编程性和灵活性,这些改进也有其实际价值. 根据波士顿Doyle Research首席分析师Lee Doyle的观点,包含软件和硬件在内的白盒交换机市场预计将在2

Android编程中的5种数据存储方式_Android

本文介绍Android平台进行数据存储的五大方式,分别如下: 1 使用SharedPreferences存储数据 2 文件存储数据      3 SQLite数据库存储数据 4 使用ContentProvider存储数据 5 网络存储数据 下面详细讲解这五种方式的特点 第一种: 使用SharedPreferences存储数据 适用范围:保存少量的数据,且这些数据的格式非常简单:字符串型.基本类型的值.比如应用程序的各种配置信息(如是否打开音效.是否使用震动效果.小游戏的玩家积分等),解锁口 令密

JavaScript中实现异步编程模式的4种方法_javascript技巧

你可能知道,Javascript语言的执行环境是"单线程"(single thread). 所谓"单线程",就是指一次只能完成一件任务.如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推. 这种模式的好处是实现起来比较简单,执行环境相对单纯:坏处是只要有一个任务耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行.常见的浏览器无响应(假死),往往就是因为某一段Javascript代码长时间运行(比如死循环),导致整个页面卡在这个地方,其他

《JavaScript设计模式》——第2章 写的都是看到的——面向对象编程 2.1两种编程风格——面向过程与面向对象

第2章 写的都是看到的--面向对象编程 第一天的经历使小白深深认识到校园学到的知识与实际工作中的偏差,所以想见识见识公司团队里大家都是如何书写代码并完成需求的.早晨走进公司的时候恰巧遇见了项目经理. 2.1 两种编程风格--面向过程与面向对象 "早!小白,今天是你来的第二天,这一周你熟悉一下我们团队的项目吧."项目经理对小白说. "好呀,项目经理,我也正想跟大家学习学习呢."于是项目经理带着小白将项目中的代码下载下来.可小白打开一看傻眼了:"函数,昨天探讨

快速排序算法在Swift编程中的几种代码实现示例_Swift

总所周知 快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用. 基本原理是: 数组a = [1,3,5,7,6,4,2] 1 选定一个 基准 a[0] 2 把比 a[0]小的放左边,比a[0]大的放右边. 中断递归如果少于两个数字 则不执行. 3 然后再分别对两边 执行 1,2,3操作. 对快速排序 的 想法 1 在待排序元素 大部分是有序的情况下, 速度 非常很快. 2 在最差的情况下,速度就很慢了. 相当于冒泡了 3 所以 快排的 优化, 定基准 非常重要,

还在看视频读文档学编程?这有7种编程学习方式,哪种最适合你?

如果你也在学习编程,你可能也尝试了许多课程和资源.但是,学习编程有很多层次,从学习具体的编程语言,到学习如何像程序员一样思考.每个人的学习方式不同导致教学过程变得很复杂. 从视频.文档到听觉触觉,如何辨认最适合你的学习方式呢?又如何找到最好的编程学习资源来满足不同学习需求? 学习方式简单来说,就是你学习新知识的时候所喜欢用的方法,这个方法能让你理解并记住新的内容.学习方式不是固定不变的.也就是说,你可能会有运用好几种主要的学习方式,但这些方式会随着学习内容的改变而有所调整.了解最适合你的主要学习