《黑客与画家》

读书笔记

娄雨禛 PB16060356

  对于刚接触了一点点编程语言的我们而言,方向的选择是至关重要的。如果我们以后打算从事计算机软件专业,就有必要以一些计算机先驱的视角审视我们对计算机编程语言的学习过程。我们是不是真的在以一种正确的方式学习计算机语言?我们是不是真的适合计算机编程的学习?

  Paul Graham在《黑客与画家》一书中,提出了一个值得我们深思的话题:几乎所有的大学,都以一种不正确的方式教导学生编程。这种教导方式的后果,是培育出一大批机械的程序员,而扼杀了那些极有可能成为“黑客”的程序员的好点子。

  我们一直被教导,先想清楚了程序怎么运行,然后再开始写程序,这样程序就会写得越快越好。这句话对于初学者入门编程语言是很不错的,但如果一个程序员想要晋升为“黑客”,这就是一个完全错误的途径。“黑客”需要的远非是程序本身的编写,而更是一种绝佳的创意。这种创意就像是画家脑子中一闪而过的电子,必须在绘画的过程中才能出现。也就是说,在我们苦苦思索程序架构如何实现的过程中,我们会下意识地先忽略那些绝妙的点子,因为它们无助于程序框架的构建。而当我们构建完程序框架之后,这些点子要么已经过时,要么已经完全被我们忘记。

  那么,作为一门培养新“黑客”的引导性课程,《现代软件工程》应该从哪些方面去改进呢?

  一、激发起学生对编程发自内心的热爱

  都说“兴趣是最好的老师”,只要有兴趣,什么困难都回去克服。然而,培养兴趣本身也是因人而异的。有的人本来就特别喜欢编程,而有的人天生厌恶代码。老师们所要做的,就是发现那些具有编程天赋的学生,进行有效的引导。而对于其他的学生,老师们可以布置一些难度不大,却相当有趣的小题目,循序渐进地引导。

  二、鼓励“编程中学习”,而不是“学完后编程”

  这是很关键的的一点,老师们一定要反复强调,深化到学生心底里去。也就是说,学习编程和学习数学、物理的思路是完全不同的,它没有很完善的理论体系,很大程度上就是万千零碎知识点的拼凑,需要一点一点地积累。

  三、将维护代码变成一种习惯

  每一位优秀的程序员对自己写的程序都有一种强迫症。他们看不惯杂乱的缩进,也无法忍受乱七八糟的变量名。而反观我们初学者,只是把程序看成草稿,随意涂改,随时丢弃,这样的态度怎么能够真正掌握编程呢?因此,老师们要强调代码风格对于编程的重要性,甚至强制地去规范、执行。

转载于:https://www.cnblogs.com/RainLou/p/8884883.html

《黑客与画家》 读书笔记相关推荐

  1. 读书笔记 | 墨菲定律

    1. 有些事,你现在不做,永远也不会去做. 2. 能轻易实现的梦想都不叫梦想. 3.所有的事都会比你预计的时间长.(做事要有耐心,要经得起前期的枯燥.) 4. 当我们的才华还撑不起梦想时,更要耐下心来 ...

  2. 读书笔记 | 墨菲定律(一)

    1. 有些事,你现在不做,永远也不会去做. 2. 能轻易实现的梦想都不叫梦想. 3.所有的事都会比你预计的时间长.(做事要有耐心,要经得起前期的枯燥.) 4. 当我们的才华还撑不起梦想时,更要耐下心来 ...

  3. 洛克菲勒的38封信pdf下载_《洛克菲勒写给孩子的38封信》读书笔记

    <洛克菲勒写给孩子的38封信>读书笔记 洛克菲勒写给孩子的38封信 第1封信:起点不决定终点 人人生而平等,但这种平等是权利与法律意义上的平等,与经济和文化优势无关 第2封信:运气靠策划 ...

  4. 股神大家了解多少?深度剖析股神巴菲特

    股神巴菲特是金融界里的传奇,大家是否都对股神巴菲特感兴趣呢?大家对股神了解多少?小编最近在QR社区发现了<阿尔法狗与巴菲特>,里面记载了许多股神巴菲特的人生经历,今天小编简单说一说关于股神 ...

  5. 2014巴菲特股东大会及巴菲特创业分享

     沃伦·巴菲特,这位传奇人物.在美国,巴菲特被称为"先知".在中国,他更多的被喻为"股神",巴菲特在11岁时第一次购买股票以来,白手起家缔造了一个千亿规模的 ...

  6. 《成为沃伦·巴菲特》笔记与感想

    本文首发于微信公众帐号: 一界码农(The_hard_the_luckier) 无需授权即可转载: 甚至无需保留以上版权声明-- 沃伦·巴菲特传记的纪录片 http://www.bilibili.co ...

  7. 读书笔记002:托尼.巴赞之快速阅读

    读书笔记002:托尼.巴赞之快速阅读 托尼.巴赞是放射性思维与思维导图的提倡者.读完他的<快速阅读>之后,我们就可以可以快速提高阅读速度,保持并改善理解嗯嗯管理,通过增进了解眼睛和大脑功能 ...

  8. 读书笔记001:托尼.巴赞之开动大脑

    读书笔记001:托尼.巴赞之开动大脑 托尼.巴赞是放射性思维与思维导图的提倡者.读完他的<开动大脑>之后,我们就可以对我们的大脑有更多的了解:大脑可以进行比我们预期多得多的工作:我们可以最 ...

  9. 读书笔记003:托尼.巴赞之思维导图

    读书笔记003:托尼.巴赞之思维导图 托尼.巴赞的<思维导图>一书,详细的介绍了思维发展的新概念--放射性思维:如何利用思维导图实施你的放射性思维,实现你的创造性思维,从而给出一种深刻的智 ...

  10. 产品读书《滚雪球:巴菲特和他的财富人生》

    作者简介 艾丽斯.施罗德,曾经担任世界知名投行摩根士丹利的董事总经理,因为撰写研究报告与巴菲特相识.业务上的往来使得施罗德有更多的机会与巴菲特亲密接触,她不仅是巴菲特别的忘年交,她也是第一个向巴菲特建 ...

最新文章

  1. 如何到top5%?NLP-情感分析实战训练来教你!
  2. MHA故障切换和在线手工切换原理
  3. 2018 年你需要知道的 11 个 JavaScript 库
  4. MySQL笔记(十)MySQL事务 transaction
  5. 亲历!给大龄IT人的几点求职建议
  6. 学了Java就有用,是本世纪最大的谎言
  7. python基础字典(七)
  8. PTA4-11 先序输出叶结点
  9. matlab2c使用c++实现matlab函数系列教程-binostat函数
  10. Windows 10 键盘快捷方式速查表
  11. 基于java企业固定资产管理系统的设计实现计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署
  12. ‘vue‘ 不是内部或外部命令,也不是可运行的程序或批处理文件
  13. [FPGA 日常记录] #4 32个 FPGA 开源网站
  14. osm数据下载 python_osm数据下载 python_批量下载osm的分区域的osm文件
  15. C++中的FILL和MEMSET(zzl) 的区分
  16. 组件分享之后端组件——阿里妈妈前端团队出品的开源接口管理工具RAP第二代rap2-delos...
  17. 超详细版本vue+capacitor(自定义capacitor插件)编写移动端应用
  18. java gis 最短路径_用Postgis算最短路径(在任意位置选择起点终点)(下)
  19. 【JavaScript】事件相关知识详解
  20. 初探Turtlebot2

热门文章

  1. java redis 队列 抢购_redis使用watch秒杀抢购实现思路
  2. 接口接收数据_基于原语的千兆以太网RGMII接口设计
  3. asp.net怎么生成json数据_[随笔]利用 VS2019 + NET5.0 生成镜像部署
  4. 【codeVS 1082】树状数组(区间修改,区间查询)模版题
  5. set_union()和set_intersection()用法:原来并集和交集这样求!
  6. html里面布局的优劣,HTML与CSS布局技巧总结
  7. linux服务器打印400错误,Nginx过一段时间出现400 Bad Request 错误解决方法
  8. c++ map的存储结构_深度解密Go语言之sync.map
  9. 深度学习基础之线性回归
  10. CART分类树算法的最优特征选择