软件随想录 卷2 读书笔记

第一部分 人员管理

三种管理方法:

1 军事化方法:优秀的人可以去任何他们想去的地方,最后会让管理者成为光杆司令,不需要沟通技巧。

2 经济利益驱动法:其实是在鼓励员工和制度博弈;内部激励变成了外部激励。

3 认同法:创造内部激励;公司的目标是高尚的;大家一起吃饭;团建;宽敞明亮的环境;尊重;效果最好,沟通水平要求最高。

 

第二部分 写给未来程序员的建议

1 学校只教java的危险性

2 给计算机系学生的建议:练习好写作;学好微观经济学,懂最简单的盈利模式;学好C语言基础;大量编程实践;真正的优秀的程序员根本不会失业;找一份好的暑期实习;

 

第三部分 设计的作用

1 苹果和微软界面设计理念的区别:一个强调艺术保真,一个强调硬件保真

2 寸土必争:优化到极致没有尽头

3 大构想的陷阱:硬要统一多个功能到一个界面

4 被给用户太多选择:关机这种最常用的功能居然要在一大堆菜单中才能找到

5 易用性是不够的:一个应用程序易用性再好,如果对别人毫无用处也是要完蛋的;一个程序易用性很一般,如果别人非常需要,并不影响卖钱。

6 用软件搭建社区:人类除了工作和家庭还需要第三个场所;论坛的点赞使得垃圾信息被抛弃到后面;骂人者会被举报和拉黑禁言;我看过的帖子;论坛的主要目的就是让发言变得容易以让他人提供技术支持;用注册来改善论坛是老土的办法不会起到作用

 

第四部分 管理大型项目

1 火星人的耳机:一步错后面的都要去适应前面的错,从而一错再错,错误越来越多,几乎无法解决。浏览器就是一个典型场景。所以Web标准也只是徒劳,因为不会有人能看懂。

2 为什么Office的文件格式如此复杂:历史的原因,基本上跟浏览器的情况一样。最好的办法是使用文本导入导出,而不是去研究他公开的二进制格式。

3 要挣钱、就别怕脏:苦活累活但是客户愿意付钱就行。微软也是这样。

 

第五部分 编程建议

1 关于战略问题的通信之六:

1)低速CPU和小容量的内存环境:在摩尔定律起作用周期内,那些一个劲的提高效率的程序员发现自己最后是白忙活一场;那些不关心程序是否臃肿的程序员都赚到钱了。

2)跨平台的编程语言:C语言、Java语言、他们都是靠编译器和虚拟机这种代码之下的东西来支持跨平台的,目前Ajax代表的JavaScript也遇到了类似的问题,解决方案也只能如此。

3 你的编程语言做的到吗:只有在各个层面都能很好的抽象(函数式编程MapReduce极大的可扩展性)的编程语言才是最有效率的编程语言。C的函数指针太丑陋;

4 完善的互动性和用户界面标准:Windows内部的复制粘贴使得应用程序之间传递数据有了标准,从而上面开发出了无数的应用;现在的互联网程序Ajax也会面临同样的情况,将来一定有一个一统江湖的NewSDK。它能够将不同的Web应用数据在应用之间自由的传递。

5 让错误的代码显而易见:让变量和函数的名字体现安全和不安全、体现业务的状态变迁、体现业务本身。从而,一看就知道代码写的有问题。

 

后面几章,过两天再更新。

 

 

你可能感兴趣的:(读书笔记)