软工读书笔记 week 6 ——《疯狂的程序员》Part 1
这本小说以主人公绝影上大学后初次接触编程开始讲起,这周主要看的就是绝影还在大学的那段经历,虽然故事背景很多年前,但很多地方仍然会引发我的共鸣。
第一个梦想
在“第一个梦想”一节讲了作业布置做一个通讯录。书中所描绘的绝影做出来一个自认为很好的exe文件后那种希望别人看到的心理,其实我也能体会。有时你通过自己所学,能做出一个像点样的东西来时,真的很希望得到别人的认可,甚至会脑补别人看到时的惊讶,当然现实常常并不是如此。
“要么做第一个,要么做最好的一个,当你已经做不成第一个时,就努力里去做最好,要是感觉做不到最好,那就不要做了。”
书中的这一观点,其实我还真不是很认同,第一个只有一个,最好的那个也就只有一个,难道我们这么多人,除了这两个人,再加上那些有可能成为最好的那个的少数人,别人都不需要努力了?我觉得是否在一件事上努力,还是看它对自身有没有价值,对自己有价值的事,即使做不到最好,努力了也有收获。
好的教材
绝影在学习寻址时,他不明白什么是寻址,然后他又觉得书里不告诉你为什么这样,只是让你不断地往下学。其实一本教材编写得好不好从使用者的学习体验就能看出,好的教材能够通过更合理的编排顺序、更合理的讲述方式让阅读者更容易接受。
“程序员是值得尊敬的,程序员的双手是魔术师的双手。”
确实,我们日常生活中的各种智能产品,都离不开程序员魔术般的双手。其实编程还是一件挺有趣的事情,但是这就又关乎一个爱好与工作的问题,对编程有爱好,你就会有兴趣、有热情,但如果当爱好变成工作、变成每周的作业,被繁重的工作量压得喘不过气来时,最初的那些爱好也许会被消磨,但在繁重的工作,如果你在规定时间内做完了,再回过头来看时,又会因为成就感燃起心中的那份温存的兴趣。
动手才是硬道理
后来,绝影学c语言,这一部分就是告诉我们,动手才是硬道理,相信这个也无需多言,大家都明白这个道理。
钻研
到了大三大四,经历了几个学期的游戏生活,绝影决定重操黑客技术,比如提到的研究单向散列算法等,这也是他大学生活的一个转折点。我觉得绝影非常重要的一个品质就是肯钻研,而不是只求上课听听课,考试考高分,他前面的这些经历也对他后面找工作有非常大的帮助。
计划
不过,对于书中时不时提到的“妹妹”、“泡妞”,总觉得有些出戏,它甚至拿“泡妞”和编程类比,虽然我觉得并不是很合适,但其中的道理还是对的,那就是做事要有计划、有设计,甚至有文档、流程图等,别让你的事情“ Out of control”。对于代码来说,程序一定要是可控的,这也是鲁棒性的体现之一。
项目经历
后来,绝影去兼职面试,他的那些实际项目经验给他加了很多分,确实很多项目经历需要不断地去积累,当它们派上用场的时候,才不会后悔当初。
“有时候人的技术、知识,不是学出来的,是逼出来的。”
这一点是体现在绝影学C++ Builder以及兼职时的工作上,对于C++ Builder从不懂到“没有问题”,在一个月内完成一个编译器等等,很多我们看起来要花很多时间学习的东西,当你的需求逼迫着你不得不学时,其实掌握起来也没那么困难。
软工读书笔记 week 6 ——《疯狂的程序员》Part 1的更多相关文章
- 软工读书笔记 week 9 ——《构建之法》
软工读书笔记 week 9 ——<构建之法> 最近的三周我们正式开始我们的项目.然后我也把<构建之法>中的相关章节再拿出来读了一番.以下是一些 ...
- 软工读书笔记 week 1
这次读书笔记主要是就<程序员修炼之道>这本书的前半部分做一些总结以及发表一些自己的看法. 本书前面的一部分主要是一些程序员应该在工作中时刻注意的事情,一些关键的信息如下: 1.处理问题的态 ...
- 软工读书笔记 week 8 —— 《疯狂的程序员》
这次接着上一次的进度继续阅读,并将其中感悟较深的几点记录如下. 程序员是一个幕后工作者 书中绝影给医院写软件,而医生(用户)只是评价这个软件好不好用,而不会去评价写这个软件的程序员优不优秀. ...
- 软工读书笔记 week 5 ——《构建之法》
本周主要对<构建之法>中的一部分进行阅读. 一.软件与软件工程究竟是什么? 本书的概论部分就指出“软件 = 程序 + 软件工程”.而我们这门课的名字就叫“现代软件工程”.其实在上课之前,我 ...
- 软工读书笔记 week4 ——《黑客与画家》下
因为时间有限,只对书中后半部分几个篇章进行了阅读. 一.另一条路 作者以他自己为例,在那个没人知道什么叫“软件运行在服务器时”的时代,他和朋友选择创业时,没有选择写传统的桌面 ...
- 软工读书笔记 week 7 ——《构建之法》
总时长近两周的结对项目终于算是结束了,马上要重新开启团队项目.于是这几天决定对<构建之法>一书中与团队项目及需求分析有关的章节进行重点阅读,希望能够从中得到启发,并运用到接下来的团队项目中 ...
- 软工读书笔记 week3 (《黑客与画家》上)
一.何谓黑客? 黑客,在我们大多数普通人眼里,就是入侵计算机的人,通常还与干坏事挂钩.而书中告诉我们,这 并不是它的真正含义.而要想理解这本书,就要首先理解什么是黑客. 黑客这个词最初起源时,完全是一 ...
- 软工读书笔记 week2
<程序员修炼之道>这本书后面一部分则是更深入.更具体.更细致地就程序员应该注意的事项做一些讨论,书中说的很多在过去的经历中都有较深的体会,同时也给了我很多启发.以下是一些我感悟较深的点: ...
- 软工+C(2017第7期) 野生程序员
// 上一篇:最近发展区/脚手架 // 下一篇:提问和回复 怎样做足够好的软件?我们就差一个程序员! 没有什么软件工程的理论的时候,程序员们凭借自己对编程的热爱,凭借着:"这是一个可以自动化 ...
随机推荐
- Java模拟双色球彩票
package practice1; import java.util.Random; import java.util.Scanner; public class Test3 { /** * * 模 ...
- iphoneX 适配
1.iphoneX的尺寸 375*812 上边有44px的危险区,下边有34px的危险区,剩下的是安全区. 2.viewport设值cover <meta name="viewp ...
- 《css3揭秘》的效果code
1.在阅读css3揭秘的基础上,跟着书中的效果组合起来的这组代码. 2.代码中有四张图片分别是 1.jpg 2.jpg 3.jpg 4.jpg; 作为demo,图片名称没有语义. 3.兼容性: I ...
- 探秘varian:优雅的发布部署程序
上一篇文章<记一次诡异的故障排查经历>中有介绍到我们的部署程序varian,文章发布后有小伙伴对varian很感兴趣,今天就简单的介绍一下我们的varian,揭开她神秘的面纱~ 什么是va ...
- 正确的C++/C堆栈
在理解C/C++内存分区时,常会碰到如下术语:数据区,堆,栈,静态存储区,静态区,常量区,常变量区,全局区,字符串常量区,静态常量区,静态变量区,文字常量区,代码区等等,初学者被搞得云里雾里.在这里, ...
- dockerfile基础命令
一直想写一个, 但发现网上有很多了, 直接copy把 如何使用 Dockerfile用来创建一个自定义的image,包含了用户指定的软件依赖等.当前目录下包含Dockerfile,使用命令build来 ...
- docker 微镜像-alpine
刚想找maven自动发布项目到tomcat, 突然看到个好玩的, docker微镜像 -- alpine 直接粘一段: Alpine Linux Docker镜像基于Alpine Linux操作系统, ...
- C++中内联函数
目录 什么是内联函数 如何使函数内联 为什么要使用内联函数 inline函数的优缺点分析 什么时候该使用内联函数 正文 在C语言中,我们使用宏定义函数这种借助编译器的优化技术来减少程序的执行时间,那么 ...
- NAS DAS SAN 磁带机 tco
部分摘录自: 百科:http://baike.baidu.com/link?url=7HOH3pJHfaxT-a01T0EhTZBnvvfMoyOZTthUbjMQM85LVxwfFP47YInuo1 ...
- CUBA 7 新特性(上篇)
三年前,我们宣布了 CUBA 框架的第二个公开的主版本.CUBA 6 是改变游戏规则的版本 - 框架的许可从私有化变成了公开的 Apache2.0.那些日子里,我们甚至猜不到这个变化会最终将框架带向何 ...