软工读书笔记 week4 ——《黑客与画家》下
因为时间有限,只对书中后半部分几个篇章进行了阅读。
一、另一条路
作者以他自己为例,在那个没人知道什么叫“软件运行在服务器时”的时代,他和朋友选择创业时,没有选择写传统的桌面软件,而是走了另一条路,也就是写在服务器上运行的软件。而事实证明,他们是正确的,他们不但取得了巨大成功,甚至可能引领了下一个潮流。
其实说到潮流,大多数人都在追随着潮流,当然这不是件什么坏事。但是我们不能总是在现有的潮流中迷失自己。也就是说,眼光要放长远一点。你永远不知道下一个潮流是什么,所以,不要觉得有些自己现在做的事没用,他们会在该发挥用处的时候大放异彩。而如果我们还能够对未来的潮流有敏锐的嗅觉,去把握它,那么等这个潮流真正到来时,我们就是最大的赢家。
作者就是选择了互联网软件这条路,从而取得了成功。与互联网模式相比,桌面软件实在显得有些麻烦。桌面软件要使用就必须先安装,而互联网软件则可以更便捷地访问。打个比方,桌面软件就像是一幢单独的大楼,而互联网软件则像是一个由各种高楼大厦构成的城市。而从发布方式来看,互联网软件修改起来更方便。这种种优势,现在也许在我们看来都是显而易见的事,但如果我们处在作者那个时期,我们能看的这么明确吗?
我觉得作者虽然这一部分没有太多提到“黑客”,但这就是一种“黑客精神”。这也和作者在前面提到的黑客的价值观、黑客的标准相符,即“好玩、高智商、探索精神”。
二、逆向 “人月神话”
虽然我还没有读过《人月神话》这本书,通过别的同学的读书笔记,我也多少有些了解。“人月”指的是一个人在一个月内能完成的工作量。看起来人越多项目完成时间越短,但是在软件项目上,当项目进度落后时,一味增加人力并不能达到目的,甚至会有反效果。因为人多意味着沟通需要更多时间,开会讨论、相互协调等等事项所耗费的时间往往随着人数增加成指数增长。
这一点我也有体会,上学期的电子设计实践二课程中,我们组只有三个人,大多数组有五个人,但是我们的进度却是很靠前的(当然也跟我们的项目选题比较简单有关)。只有三个人的话,我们分工比较明确,每周和助教汇报的时候把下周的目标定好,然后各自做各自的部分,平时通过QQ就能很方便沟通,也不怎么需要开会,项目的进度基本按着预期制定的执行。其实有时候人一多反而不好分工,当然这得看是什么项目,毕竟有些项目工作量还是摆在那里的。
三、设计师的品味
从事软件行业,不光要有过硬的技术,也要有良好的品味。这就像我们做海报一样,即使你Photoshop用得再娴熟,你没有良好的审美,你做出来的海报也难以被被人欣赏。人们往往倾向于用“品味是个人偏好”这一论断去减少一些对于事物看法上的争执。确实,“萝卜青菜,各有所爱”,但不可否认的是,有些东西,它确实就是“优美的”。设计师必须要承认,世界上存在一种人们公认的东西叫做“美”,而不是“美”只在于每个人的心中。
那什么是好的、美的设计?好的设计应该是简单的、不过时的、能解决主要问题的设计,当然能有启发性,趣味性则更好。好设计还是看着容易的设计,我们看一些好看的海报、好看的网页设计,往往觉得它看起来做着很简单,但其实如果要我们自己来做,就能发现其中的不易。
软工读书笔记 week4 ——《黑客与画家》下的更多相关文章
- 软工读书笔记 week 9 ——《构建之法》
软工读书笔记 week 9 ——<构建之法> 最近的三周我们正式开始我们的项目.然后我也把<构建之法>中的相关章节再拿出来读了一番.以下是一些 ...
- 软工读书笔记 week3 (《黑客与画家》上)
一.何谓黑客? 黑客,在我们大多数普通人眼里,就是入侵计算机的人,通常还与干坏事挂钩.而书中告诉我们,这 并不是它的真正含义.而要想理解这本书,就要首先理解什么是黑客. 黑客这个词最初起源时,完全是一 ...
- 软工读书笔记 week 5 ——《构建之法》
本周主要对<构建之法>中的一部分进行阅读. 一.软件与软件工程究竟是什么? 本书的概论部分就指出“软件 = 程序 + 软件工程”.而我们这门课的名字就叫“现代软件工程”.其实在上课之前,我 ...
- 软工读书笔记 week 8 —— 《疯狂的程序员》
这次接着上一次的进度继续阅读,并将其中感悟较深的几点记录如下. 程序员是一个幕后工作者 书中绝影给医院写软件,而医生(用户)只是评价这个软件好不好用,而不会去评价写这个软件的程序员优不优秀. ...
- 软工读书笔记 week 1
这次读书笔记主要是就<程序员修炼之道>这本书的前半部分做一些总结以及发表一些自己的看法. 本书前面的一部分主要是一些程序员应该在工作中时刻注意的事情,一些关键的信息如下: 1.处理问题的态 ...
- 软工读书笔记 week 6 ——《疯狂的程序员》Part 1
这本小说以主人公绝影上大学后初次接触编程开始讲起,这周主要看的就是绝影还在大学的那段经历,虽然故事背景很多年前,但很多地方仍然会引发我的共鸣. 第一个梦想 在“第一个梦想”一节讲了作业布置做一个通讯录 ...
- 软工读书笔记 week 7 ——《构建之法》
总时长近两周的结对项目终于算是结束了,马上要重新开启团队项目.于是这几天决定对<构建之法>一书中与团队项目及需求分析有关的章节进行重点阅读,希望能够从中得到启发,并运用到接下来的团队项目中 ...
- 软工读书笔记 week2
<程序员修炼之道>这本书后面一部分则是更深入.更具体.更细致地就程序员应该注意的事项做一些讨论,书中说的很多在过去的经历中都有较深的体会,同时也给了我很多启发.以下是一些我感悟较深的点: ...
- 《程序员思维修炼》读书笔记——week4
<程序员思维修炼>读书笔记——week4 PB16061441 陈昶金 这周读的是Andy Hunt的著作<程序员思维修炼>,这本书对于我这种刚刚入门的新手很友好,大多是讲一些 ...
随机推荐
- windows下几个方便的右键菜单
一直在用,拷来拷去麻烦,贴这里方便自己方便大家 PSHere.reg 右键菜单打开powershell Windows Registry Editor Version 5.00 [HKEY_CLASS ...
- 等价类计数问题(Polya定理和burnside引理)
零.约定: (置换等名词会在前置知识中有解释) \(1.\)在本文中,题目要求的染色方案等统称为"元素". \(2.\)两个元素严格相等我们记做"\(=\)", ...
- 计算几何误差修正cmp
//计算几何误差修正 Math.EPS=0.00000001; //判断x的符号 Math.cmp=function(x) { if(Math.abs(x)<Math.EPS)return 0; ...
- JavaScript设计模式-15.适配器模式
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- js中请求数据的$post和$ajax区别(同步和异步问题)
$.post和$.Ajax都为页面上向后台发送请求,请求数据 1.post 因为post默认为异步请求,可是有时候我们会发现,本来要求请求马上出现,可是异步会导致后面突然再执行,这样就出很多问题 2. ...
- 微服务Kong(七)——CLI参考
KONG提供了一套CLI(命令行界面)命令,您可以通过它来启动.停止和管理您的Kong实例.CLI管理您的本地节点(如在当前机器上). 全局配置 所有命令都采用一组指定的可选标志作为参数: --hel ...
- nextval 遍历ResultSet,行列要从1开始
nextval nextval与序列关联,表示下一个,如:创建里一个序列seq_1:#序列一般表示第几行,起标识作用create sequence seq_1 increment by 1 start ...
- 使用 csc.exe 编译C#代码
csc.exe是C#的编译器,可以将C#代码编译为IL中间语言代码(exe.dll),然后再通过.net framework中的clr内的JIT(即时编译器)将中间语言代码编译为机器语言,然后再由机器 ...
- [转] .NET中六个重要的概念:栈、堆、值类型、引用类型、装箱和拆箱
为何要转载 一来是最近面试了几家公司,发现问的还都是这些的基础知识,二来是为了复习对.NET技术的基础拾遗达到温故知新的效果. 为什么有人说,不动笔不读书.我现在也是深有体会了,看过的东西不一定会记得 ...
- Spring-在IDEA2016中创建maven管理的SpringMVC项目
这是一套我自己摸索出来的创建项目方法,基本是用在创建用maven管理的 Spring+SpringMVC+Mybatis的J2EE项目时. 创建一个maven管理的webapp项目 在创建项目时,选择 ...