编辑推荐
避免常犯的错误
养成优良的习惯
破解密码,你也可以好起来
内容简介
本书集合了作者在软件行业里总结的第一手教训、体会和走过的弯路。话题涉及程序员生活的方方面面,例如,如何保持开发动力,如何提高生产力,如何摆脱软件的复杂性,如何与客户打交道,如何教导编程新手,何时进行自主开发,程序员的自豪感等。每个话题独立成篇、言简意赅,引人思考。
本书不仅适合编程老手阅读,也适合编程菜鸟学习,还适合想了解软件这个行业的人士阅读。
作者简介
Ka Wai Cheung,程序员、设计师,还是芝加哥We Are Mammoth(我们是猛犸)公司的联合创始人。为各行各业的客户制作应用软件,也制作自有的一些基于网页的软件。
译者介绍:
劳佳,上海交通大学电子工程系硕士,现在SAP美国任高级软件支持顾问。业余爱好语言、数学、设计,近年合作翻译出版了《周末读完英国史》、《加州大学伯克利分校人文建筑之旅》等书。
内页插图
精彩书评
“这是Pragmatic Programmers系列中的又一本书——对新手来说是指引,对专家来说是重温,这是关于程序员技艺(和生活)的一本美妙的智慧集。”
——Derek Sivers,CD Baby和sivers.org的创始人
“Ka Wai Cheung先生为那些寻找自己赖以生存的代码的专业开发人员写了一本书。这本书不是用那些在任何博客中都能找到的传统想法拼凑起来的,而是用强有力且有针对性的方法,讲述专业编程的技艺和现实。
如果你想找一本新瓶装旧酒的编程规则,那就不用看这本书了。但是,如果你正在寻找一种视角,看看软件开发是什么,或者你想要一套由真实经验提炼出的指导方针,那这本书正是你需要的。”
——Bob Walsh,作家、47 Hats的创始人
“充满‘美味’的经验,每篇的大小也十分‘适口’——在这本书里你可以学到很多。花上些时间从过来人那里学学吧。”
——Adam Hoffman, 高级开发主管
“一本好书,有现代程序员从日新月异的世界中得到的提示、技巧和经验教训。从事开发或与开发人员合作的人士不可不看。”
——Caspar Dunant, Webfish
目录
第1章 引言
1.1 谁是21世纪的程序员
1.2 吸取第一手教训
1.3 这本书写的是我们自己
第2章 比喻
第1篇 谨慎使用比喻
第2篇 规划完备,然后开工
第3篇 发行不过是第1版
第4篇 “象牙塔”架构师的传说
第5篇 扔掉旧代码
第6篇 多元化胜于专业化
第7篇 比喻渐欲迷人眼
第3章 动力
第8篇 工作即福利
第9篇 从喜欢处入手
第10篇 莫求全
第11篇 休止一下
第12篇 早起先测试
第13篇 别在卧室里工作
第14篇 第一印象也就那么回事
第15篇 软件发行的情感价值
第16篇 找个争论话题
第4章 生产力
第17篇 对消闲项目坚决说不
第18篇 限制所有的因素
第19篇 去掉时间表中的细节
第20篇 每天改进产品的两个方面
第21篇 为良好的工作环境投资
第22篇 列一张个人待办事项清单
第23篇 和团队一起安排免打扰时间
第24篇 采用自治小团队的工作形式
第25篇 提高生产力,避谈“我们”
第5章 复杂性
第26篇 “嗅”出坏的复杂性
第27篇 关于“简单”的悖论
第28篇 复杂性就像挑棍游戏
第29篇 把复杂性藏起来
第30篇 “难编”可能意味着“难用”
第31篇 知道何时重构
第32篇 确定编程的节奏
第6章 教学
第33篇 教学不同于编程
第34篇 当心“知识魔咒”
第35篇 用浅显的例子
第36篇 为简化不妨说谎
第37篇 鼓励自主思维
第7章 客户
第38篇 刁钻的客户无处不在
第39篇 软件黑魔法揭秘
第40篇 设定软件的目标
第41篇 激发热情,相信自己
第42篇 宽容大度,和蔼可亲
第43篇 价值远不只是工时
第44篇 尊重你的项目经理
第8章 代码
第45篇 写代码是不得已而为之
第46篇 拿来主义的文化
第47篇 代码是最好的初级程序员
第48篇 把机器和人的工作区分开
第49篇 从核心开始生成代码
第50篇 自主开发的情形
第9章 自豪感
9.1 形象是个问题
9.2 烹饪行业的一课
参考文献
前言/序言
中文版序
亲爱的读者:
在编程的世界里,我们会和各种各样的“语言”打交道。虽然我主要的服务器端开发语言是C#,但我的工作方法却几乎可以完全应用到Java、PHP、Ruby或Python上。编程语言虽有不同,核心的编程思想、方法和架构却是高度类似的。我们只是用不同的方式来表达而已。
我们的工作方式也具有普遍性——如何保持干劲、提高成效,教学的重要性,如何与客户合作,如何发现合适的流程,勇于摆脱不好的流程。此外,我猜想,我通过编程学到的人生一课,不仅适合在美国工作的我们,也可能适用于在中国工作的你。
作为在美国出生的第一代华裔,我非常荣幸这本书能够被翻译成我父辈的语言。我在美国长大,在西方文化中生活,同时也有一些中国的传统价值观。我对于应该如何在这个行业工作的看法肯定受到了两种文化的影响。
无论你是刚刚投身编程事业,正在创业,还是在寻找一些新鲜的观点,我都希望这本书在现在和未来都能对你有所启发。
张家为
Dear readers,
In the world of programming, we work with “languages” of all different kinds. Though my primary server-side development language is C#, the way I work almost fully translates to the world of Java, PHP, Ruby, or Python. Core programming ideas, methodologies, and architectures are highly similar between these different coding worlds. We just express them in different ways.
The same is true for how we work - How we stay motivated and productive, the importance of teaching, working with clients, discovering the processes that work just-right and being brave enough to shed the ones that don’t. And, I’d imagine that the life lessons I’ve learned through programming translate not just to how we work in the U.S., but how you might work in China.
As a first-generation American born to Chinese parents, I was tremendously humbled to have this book translated to my ancestral language. I grew up in the United States, living in a western culture while growing up with some traditional Chinese values. My opinions on how we ought to work in this industry have certainly been influenced by both cultures.
Whether your just beginning your career in programming, starting your own small business, or seeking some fresh perspectives, I do hope you find this book valuable now and in the future.
Sincerely, Ka Wai Cheung
图灵程序设计丛书:卓越程序员密码 下载 mobi epub pdf txt 电子书 格式