这次接着上一次的进度继续阅读,并将其中感悟较深的几点记录如下。


     程序员是一个幕后工作者

书中绝影给医院写软件,而医生(用户)只是评价这个软件好不好用,而不会去评价写这个软件的程序员优不优秀。这看起来对程序员不太公平,我辛辛苦苦写的代码,评价都没有我的份。但是这就是个事实,一个软件开放给用户的只是它的功能、它的界面,用户不会管某一个功能实现起来背后的代码有多复杂,他只是从他用这个软件的感受出发。所以,还是那句话,用户体验是第一位的。


高分和技术矛盾吗

在周总审阅简历的时候,有这么一份简历被直接拒绝,原因是上面写了几门课的分数都是90+,然后周总的逻辑是“他把所有时间拿去学习,没有时间去真正的动手实践”。我觉得,直接因为成绩太好去打掉一个人总不是很合情理的吧。不过这个告诉我们,简历应该有的放矢,对方不关心你能考多少分,只关心你有没有丰富的技术储备,有没有相应的项目经历之类的。换句话说,就是要展现出对方想了解的,其他方面比较优秀的,可以放上去,但是不能作为主体。


     杂七杂八的感悟

有感触的一点就是,像绝影和BOSS Liu一样,明明花了五六个小时甚至通宵调好的bug,后来再提及时,总是不太想说自己实际花费的时间。一方面是“打肿脸充胖子”,另一方面就我自己而言,确实是在调bug或者说写代码上花费了很多无谓的时间,如果当时能够想清楚,真的只是二三十分钟或者一个多小时的事。我觉得还是经验问题吧,代码写多了,这些无谓的时间应该会越来越少。

还有就是提到的主任给绝影提这种要求,要求不少,还不一次性提完,这个现象在实际的软件项目中还是很常见的。但是没办法,用户第一位,虽然心里可能骂了无数句,该做的还是要做。但另一方面,写代码的时候,就要考虑到修改的方便性,这可以就是多个函数,或者说运用一些预处理语句之类的。除非是重构代码,否则尽量要做到减少修改的工作量。这也是优秀代码的一个体现吧。

还有一点边角一些的感悟就是话不要提前说太满,不要吹牛太多。这一点体现在BOSS刘向新公司推荐绝影这件事上。我们在做软工项目时,总是倾向于提前把要实现的功能构想的多么多么好,但实际上最后的结果总是和最初的构想有不少差别。我觉得还是最初就实际一些为好,当然这个对实际的预估也建立在有经验的基础上。

再就是一点软件这个行业,新人总是会层出不穷,旧人只有保持技术不落后,不断地去和新人竞争,不断地学习,才能不被淘汰。对于我们学生来说,未来我们首先还是新人,作为新人,也要不断地努力,工作之外的时间可以用于学习新的技能,而且新人没有那么多的后顾之忧,这也是我们的优势。

软工读书笔记 week 8 —— 《疯狂的程序员》的更多相关文章

  1. 软工读书笔记 week 9 ——《构建之法》

    软工读书笔记  week 9                 ——<构建之法> 最近的三周我们正式开始我们的项目.然后我也把<构建之法>中的相关章节再拿出来读了一番.以下是一些 ...

  2. 软工读书笔记 week 1

    这次读书笔记主要是就<程序员修炼之道>这本书的前半部分做一些总结以及发表一些自己的看法. 本书前面的一部分主要是一些程序员应该在工作中时刻注意的事情,一些关键的信息如下: 1.处理问题的态 ...

  3. 软工读书笔记 week 5 ——《构建之法》

    本周主要对<构建之法>中的一部分进行阅读. 一.软件与软件工程究竟是什么? 本书的概论部分就指出“软件 = 程序 + 软件工程”.而我们这门课的名字就叫“现代软件工程”.其实在上课之前,我 ...

  4. 软工读书笔记 week4 ——《黑客与画家》下

    因为时间有限,只对书中后半部分几个篇章进行了阅读.        一.另一条路       作者以他自己为例,在那个没人知道什么叫“软件运行在服务器时”的时代,他和朋友选择创业时,没有选择写传统的桌面 ...

  5. 软工读书笔记 week 6 ——《疯狂的程序员》Part 1

    这本小说以主人公绝影上大学后初次接触编程开始讲起,这周主要看的就是绝影还在大学的那段经历,虽然故事背景很多年前,但很多地方仍然会引发我的共鸣. 第一个梦想 在“第一个梦想”一节讲了作业布置做一个通讯录 ...

  6. 软工读书笔记 week 7 ——《构建之法》

    总时长近两周的结对项目终于算是结束了,马上要重新开启团队项目.于是这几天决定对<构建之法>一书中与团队项目及需求分析有关的章节进行重点阅读,希望能够从中得到启发,并运用到接下来的团队项目中 ...

  7. 软工读书笔记 week3 (《黑客与画家》上)

    一.何谓黑客? 黑客,在我们大多数普通人眼里,就是入侵计算机的人,通常还与干坏事挂钩.而书中告诉我们,这 并不是它的真正含义.而要想理解这本书,就要首先理解什么是黑客. 黑客这个词最初起源时,完全是一 ...

  8. 软工读书笔记 week2

    <程序员修炼之道>这本书后面一部分则是更深入.更具体.更细致地就程序员应该注意的事项做一些讨论,书中说的很多在过去的经历中都有较深的体会,同时也给了我很多启发.以下是一些我感悟较深的点: ...

  9. 软工+C(2017第7期) 野生程序员

    // 上一篇:最近发展区/脚手架 // 下一篇:提问和回复 怎样做足够好的软件?我们就差一个程序员! 没有什么软件工程的理论的时候,程序员们凭借自己对编程的热爱,凭借着:"这是一个可以自动化 ...

随机推荐

  1. C++的开源跨平台日志库glog学习研究(一)

    作为C++领域中为数不多的好用.高效的.跨平台的日志工具,Google的开源日志库glog也算是凤毛麟角了.glog 是一个C++实现的应用级日志记录框架,提供了C++风格的流操作. 恰巧趁着五一我也 ...

  2. Spring Security构建Rest服务-1100-单机Session管理

    Session失效时间: springboot配置session失效时间,只需要在application.properties里配置 #session超时时间,低于60秒按60秒server.sess ...

  3. windows 64位 下 安装 tomcat

    tomcat 版本 windows 64位 .zip apache-tomcat-7.0.42.zip 注意: 1. 安装目录不得有 空格 或 中文字符 2. 然后,在系统环境变量下,新建一个变量: ...

  4. LogStash启动报错:<Redis::CommandError: ERR unknown command 'script'>与batch_count 的 配置

    环境条件: 系统版本:centos 6.8 logstash版本:6.3.2 redis版本:2.4 logstash  input配置: input { redis { host => &qu ...

  5. 堆排序详解以及java实现

    前言 临近毕业,开始找工作,近期一直在看算法导论(CLRS)同时各种刷题.希望以后有时间把所有学习心得和刷题心得记录下来. 堆 堆排序和合并排序一样,是一种时间复杂度为O(nlgn)的算法,同时和插入 ...

  6. 终极 shell zsh

    在mac上安装zsh,推荐安装. 参见http://macshuo.com/?p=676. 安装成功提示,看着很帅的样子

  7. @RestController和@Controller注解的区别

    @RestController是@ResponseBody和@Controller注解的结合,当你return一个页面时,使用@Controller注解返回的是相应页面,使用@RestControll ...

  8. js加载事件和js函数定义

    一  dom文档树加载完之后执行一个函数 在Dom加载完成后执行函数,下面这三个的作用是一样的,window.onload 是JavaScript的,window.onload是在dom文档树加载完和 ...

  9. api.execScript

    在指定 window 或者 frame 中执行脚本,对于 frameGroup 里面的 frame 也有效,若 name 和 frameName 都未指定,则在当前 window 中执行脚本,具体执行 ...

  10. C#中is与as的区别分析

    这篇文章主要介绍了C#中is与as的区别,较为详细的分析了is与as的原理与特性及用法区别,具有很好的学习借鉴价值,需要的朋友可以参考下 本文实例分析了C#中is与as的区别,分享给大家供大家参考.具 ...