软工读书笔记 week 8 —— 《疯狂的程序员》
这次接着上一次的进度继续阅读,并将其中感悟较深的几点记录如下。
程序员是一个幕后工作者
书中绝影给医院写软件,而医生(用户)只是评价这个软件好不好用,而不会去评价写这个软件的程序员优不优秀。这看起来对程序员不太公平,我辛辛苦苦写的代码,评价都没有我的份。但是这就是个事实,一个软件开放给用户的只是它的功能、它的界面,用户不会管某一个功能实现起来背后的代码有多复杂,他只是从他用这个软件的感受出发。所以,还是那句话,用户体验是第一位的。
高分和技术矛盾吗
在周总审阅简历的时候,有这么一份简历被直接拒绝,原因是上面写了几门课的分数都是90+,然后周总的逻辑是“他把所有时间拿去学习,没有时间去真正的动手实践”。我觉得,直接因为成绩太好去打掉一个人总不是很合情理的吧。不过这个告诉我们,简历应该有的放矢,对方不关心你能考多少分,只关心你有没有丰富的技术储备,有没有相应的项目经历之类的。换句话说,就是要展现出对方想了解的,其他方面比较优秀的,可以放上去,但是不能作为主体。
杂七杂八的感悟
有感触的一点就是,像绝影和BOSS Liu一样,明明花了五六个小时甚至通宵调好的bug,后来再提及时,总是不太想说自己实际花费的时间。一方面是“打肿脸充胖子”,另一方面就我自己而言,确实是在调bug或者说写代码上花费了很多无谓的时间,如果当时能够想清楚,真的只是二三十分钟或者一个多小时的事。我觉得还是经验问题吧,代码写多了,这些无谓的时间应该会越来越少。
还有就是提到的主任给绝影提这种要求,要求不少,还不一次性提完,这个现象在实际的软件项目中还是很常见的。但是没办法,用户第一位,虽然心里可能骂了无数句,该做的还是要做。但另一方面,写代码的时候,就要考虑到修改的方便性,这可以就是多个函数,或者说运用一些预处理语句之类的。除非是重构代码,否则尽量要做到减少修改的工作量。这也是优秀代码的一个体现吧。
还有一点边角一些的感悟就是话不要提前说太满,不要吹牛太多。这一点体现在BOSS刘向新公司推荐绝影这件事上。我们在做软工项目时,总是倾向于提前把要实现的功能构想的多么多么好,但实际上最后的结果总是和最初的构想有不少差别。我觉得还是最初就实际一些为好,当然这个对实际的预估也建立在有经验的基础上。
再就是一点软件这个行业,新人总是会层出不穷,旧人只有保持技术不落后,不断地去和新人竞争,不断地学习,才能不被淘汰。对于我们学生来说,未来我们首先还是新人,作为新人,也要不断地努力,工作之外的时间可以用于学习新的技能,而且新人没有那么多的后顾之忧,这也是我们的优势。
软工读书笔记 week 8 —— 《疯狂的程序员》的更多相关文章
- 软工读书笔记 week 9 ——《构建之法》
软工读书笔记 week 9 ——<构建之法> 最近的三周我们正式开始我们的项目.然后我也把<构建之法>中的相关章节再拿出来读了一番.以下是一些 ...
- 软工读书笔记 week 1
这次读书笔记主要是就<程序员修炼之道>这本书的前半部分做一些总结以及发表一些自己的看法. 本书前面的一部分主要是一些程序员应该在工作中时刻注意的事情,一些关键的信息如下: 1.处理问题的态 ...
- 软工读书笔记 week 5 ——《构建之法》
本周主要对<构建之法>中的一部分进行阅读. 一.软件与软件工程究竟是什么? 本书的概论部分就指出“软件 = 程序 + 软件工程”.而我们这门课的名字就叫“现代软件工程”.其实在上课之前,我 ...
- 软工读书笔记 week4 ——《黑客与画家》下
因为时间有限,只对书中后半部分几个篇章进行了阅读. 一.另一条路 作者以他自己为例,在那个没人知道什么叫“软件运行在服务器时”的时代,他和朋友选择创业时,没有选择写传统的桌面 ...
- 软工读书笔记 week 6 ——《疯狂的程序员》Part 1
这本小说以主人公绝影上大学后初次接触编程开始讲起,这周主要看的就是绝影还在大学的那段经历,虽然故事背景很多年前,但很多地方仍然会引发我的共鸣. 第一个梦想 在“第一个梦想”一节讲了作业布置做一个通讯录 ...
- 软工读书笔记 week 7 ——《构建之法》
总时长近两周的结对项目终于算是结束了,马上要重新开启团队项目.于是这几天决定对<构建之法>一书中与团队项目及需求分析有关的章节进行重点阅读,希望能够从中得到启发,并运用到接下来的团队项目中 ...
- 软工读书笔记 week3 (《黑客与画家》上)
一.何谓黑客? 黑客,在我们大多数普通人眼里,就是入侵计算机的人,通常还与干坏事挂钩.而书中告诉我们,这 并不是它的真正含义.而要想理解这本书,就要首先理解什么是黑客. 黑客这个词最初起源时,完全是一 ...
- 软工读书笔记 week2
<程序员修炼之道>这本书后面一部分则是更深入.更具体.更细致地就程序员应该注意的事项做一些讨论,书中说的很多在过去的经历中都有较深的体会,同时也给了我很多启发.以下是一些我感悟较深的点: ...
- 软工+C(2017第7期) 野生程序员
// 上一篇:最近发展区/脚手架 // 下一篇:提问和回复 怎样做足够好的软件?我们就差一个程序员! 没有什么软件工程的理论的时候,程序员们凭借自己对编程的热爱,凭借着:"这是一个可以自动化 ...
随机推荐
- Linux的文件的打包(tar方法)
Linux的文件的打包(tar方法) tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一 ...
- PHP中 LFI Local File Include,本地文件包 漏洞
在allow_url_include=On就是远程文件包含了,假设这里为off,那就只能本地包含了. 1. 包含上传文件 只要目标服务器支持上传,不管是jpg,txt,gif等都可以,在其 ...
- Java_反射机制详解
本篇文章依旧采用小例子来说明,因为我始终觉的,案例驱动是最好的,要不然只看理论的话,看了也不懂,不过建议大家在看完文章之后,在回过头去看看理论,会有更好的理解. 下面开始正文. [案例1]通过一个对象 ...
- Kubernetes中的垃圾回收机制
本文所讨论垃圾回收(GC,Garbage Collection)机制针对Kubernetes1.1.7,docker容器. 一.Tips 01. Kubernetes的垃圾回收由kubelet进行管理 ...
- CRF两个例子的理解
概率计算例子: 预测例子:
- 学习笔记---log4j的使用与配置
Log4j由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地,日志信息的输出格式. 日志信息的优先级从高到低有OFF.FATAL.ERROR.WARN.INFO.DEBUG.ALL,分别用来 ...
- windows端口查看及进程查找
1. 使用netstat查看端口 netstat -ano 2. 查找特定端口号: netstat -aon|findstr "port" 3. 查找该端口的进程 tasklist ...
- sqlserver中利用Tran_sql把逗号分隔的字符串拆成临时表
在与数据库交互的过程中,我们经常需要把一串ID组成的字符串当作参数传给存储过程获取数据.很多时候我们希望把这个字符串转成集合以方便用于in操作. 有两种方式可以方便地把这个以某种符号分隔的ID字符串转 ...
- asp.net MVC 文件流导出Excel
<form id="FormEsExcel" action="/**/ExportEsExcelData" method="post" ...
- CSS3 transition 过度
一个元素在不同的状态之间进行平滑的交换 CSS3中使用transition属性实现过度效果 一个简单的例子: img{ background-image:url("img/1.jpg&quo ...