转眼在唯品会工作了近5年,在这过程中得到了很多收货和成长,期间也经历过两段迷茫期,不过都通过读书或者与大佬交流得到了很大的缓解,尤其感受到读书对于人生的指引有很大的作用。
先简单讲述下我两段迷茫期,这也是我分享这篇读书笔记的原因。第一段是我工作1-2年后,那个时候自己所掌握的专业技能,基本已经能够满足各种工作场景所需,虽然没法解决一些疑难杂症或者创新工作,至少已成为一名合格的螺丝钉,这个时候我似乎找不到学习和努力的方向,感觉工作就是代码的增删改查,觉得工作没有什么技术含量。但刚好在这个时间段我开始大量阅读一些技术类的经典书籍,比如:《代码整洁之道》《架构整洁之道》《重构-改善代码的既有设计》《设计模式》《代码大全》等等,在读完这些书之后,我又重新确定了我学习的方向,写代码完成业务功能,对于我们程序员只是最基本的要求,在此之上,我们应该怎么写出更好的代码,设计更加完善的架构,这也是需要我们不断去学习和努力的。
第二段是就是工作4-5年后,觉得工作越来越没有意义感,哪怕自己用尽可能优雅的代码实现业务需求之后,然后呢?我找不到自己工作的意义和价值,越来越觉得自己只是个写代码的机器而已,这个时候我又重读了《黑客与画家》这本书,得到了不少启发,让我站在更高维度,行业或整个社会去看待一些问题,适当缓解了我的迷茫,回归到个人行动上,我也可以选择不做机器,去做一名艺术家,所以想拿出来分享下。《黑客与画家》的作者保罗·格雷厄姆,以黑客、画家、创业者的三重身份,构建了一套融合技术创新与人文思考的认知体系。他的跨界经历与反叛精神,不仅塑造了硅谷的创业文化,也为数字时代的个体成长提供了独特视角——在代码与画布之间,寻找创造力的本质。
一、书中主要内容
(一)黑客的本质:被误解的创造者
书中重新定义了“黑客”,他们并非入侵系统的破坏者,而是追求优雅代码、热爱解决问题的创造者。
黑客与画家的核心相似性在于:
1、创作过程相似:画家从草图开始逐步完善,程序员也应通过编写代码动态调整设计,而非预先规划一切;
2、作品评价标准相通:好画作要色彩协调,好代码要逻辑优雅(书中举例Lisp语言的括号之美);
3、核心驱动力相同:对美的追求(作者称:“丑陋的代码比错误代码更可怕”);
(二)反主流的成长哲学
书中犀利指出,学校中的“书呆子”往往因专注探索而疏于社交,但在真实世界中,他们的创造力却能直接转化为财富。例如,保罗·格雷厄姆本人通过开发Viaweb(首个互联网商城),用Lisp语言实现快速迭代,最终被雅虎以4900万美元收购,实现创业成功,正是这种能力的体现。这一观点颠覆了传统教育对“成功”的定义,强调解决问题的能力比社交技巧更具长期价值。
(三)财富的真相:创造而非占有
书中区分了“金钱”与“财富”:财富是用户需要的产品(如软件、服务),而金钱只是交换媒介。程序员通过代码创造价值,例如开发开源工具提升社会效率,本质上是在生产财富。创造人们需要的东西就是创造财富,财富的本质是满足人类需求的客观价值,格雷厄姆强调,财富创造必须基于真实需求,而非主观臆想,例如:农业时代:粮食是财富;工业时代:机器是财富;信息时代:软件和互联网服务是财富。成功企业的根本在于解决未被满足的需求(如Uber解决出行效率问题)。
格雷厄姆的财富公式:
1、财富 = 可扩展性 × 需求强度
通过技术(尤其是软件)实现服务的无限复制(边际成本趋零),是创造巨额财富的关键。
举例:微软Windows系统的代码只需开发一次,即可售卖给数亿用户。
2、财富 ≠ 零和游戏
传统观念认为财富是固定总量的分配,但格雷厄姆指出,创造新财富可以扩大整体经济规模。
例如:互联网行业创造了数万亿美元的新增财富,而非从传统行业“抢夺”金钱。
(四)技术决策的哲学:动态扩展优于完美设计
保罗·格雷厄姆批判大公司将程序员视为“翻译需求的技术工人”,认为这扼杀了创造力。他推崇创业公司的敏捷模式:允许黑客像画家一样动态调整产品设计,而非机械执行需求文档。例如书中提到“编程语言的首要特性应是允许动态扩展”,这一理念在Python等灵活语言的成功中得到验证。
二、个人思考与启发
(一)技术人的“创作者觉醒”
传统认知中,程序员是逻辑严谨的“工程师”,但书中将其提升为“艺术家”。这让我反思:在日常开发中,我们常陷入“实现需求”的被动状态,却忽视了设计优雅解决方案的主动性。例如,在优化接口性能时,是否可以像画家构思色彩搭配一样,尝试多种算法并选择最具美感的实现?这种思维转变能提升代码的长期可维护性。
(二)创业精神
如果你是一个黑客,并且梦想自己创业,可能有两件事情令你望而却步。一件是可能不懂企业管理,另一件是你害怕竞争。可事实上这两件事都是没有通电的篱笆。格雷厄姆在书中反复强调,程序员(尤其是技术能力强的黑客)是创业的核心角色,因为软件的可扩展性能够创造巨大价值。然而,许多黑客因以下两个担忧而放弃创业:1、“不懂企业管理”:认为需要系统学习MBA知识或成为管理专家才能创业;2、“害怕竞争”:担心市场上已有强大对手,自己难以胜出。格雷厄姆将这两种担忧比作“没通电的篱笆”—看似危险,实则毫无威胁,他用这一比喻试图破除程序员对创业的恐惧。
“企业管理”是伪门槛,创业初期不需要复杂的“管理”,初创企业的核心是用技术解决真实问题,而非流程化管控,早期团队(尤其是技术型创始人)应专注于产品迭代和用户需求,管理问题随着公司规模扩大才会显现,且可通过实践或引入专业人才解决。“竞争”的本质是虚假威胁,程序员往往高估竞争风险,低估技术创新的颠覆力,创业者应关注未被满足的需求或更高效的解决方案,而非与现有玩家直接对抗。
作者通过Viaweb的案例证明,小团队能通过技术创新颠覆行业,格雷厄姆本人创立Viaweb(首个在线商店构建工具)时,团队仅3人,无管理经验,但凭借技术优势击败大公司,最终被雅虎收购。但在大公司中,程序员常受限于流程规范。对此,我的实践是:在内部项目中引入“创业式迭代”——将需求拆解为最小可交付单元,快速验证并调整。
(三)努力工作
格雷厄姆在讨论“财富创造”时指出,大企业与创业公司的核心差异在于对贡献的测量能力。传统企业默认员工会努力工作(因雇佣关系存在),但无法精准量化每个人创造的真实价值,导致奖励机制失效,企业支付工资购买的是员工的“时间”,而非“成果”,默认“努力=价值”,但二者可能完全无关。
公司成立的目的不是奖励那些将全部精力投入工作的员工,企业的根本目标是创造财富,而非单纯奖励“努力”。格雷厄姆批判了“加班文化”的误区:长时间工作≠创造价值,比如一名程序员熬夜写出低效代码,可能反而增加团队维护成本。相比大公司,创业公司(尤其是小团队)能更直接地衡量贡献,从而更公平地分配财富。当制度无法识别真正的贡献者,组织将滑向低效与内耗,而对个人而言,跳出“努力幻觉”、聚焦可测量的价值创造,才是突破职业瓶颈的关键,也可以选择加入能清晰衡量贡献的团队(如创业公司或技术驱动型组织)。
(四)用户思维的具象化
书中强调“换位思考”是伟大产品的核心。程序员常沉迷技术实现,却忽略用户体验。就拿新能源汽车产业来说,小米,理想,以及小鹏,都是非常注重用户体验,而不是单纯的堆科技狠活,使得其产品受到了广大消费者的喜爱。
三、工作中的应用
(一)开发流程的“动态绘画法”
实践案例:借鉴画家从草图到成品的创作过程,采用“渐进式开发”。例如在开发微服务时,先实现核心通信协议(草图),再逐步添加容错、监控等模块(细节填充),避免过度设计。
工具适配:选择支持快速迭代的语言(如Python/TypeScript),利用Jupyter Notebook或Figma等工具实现“可视化编程”。
(二)技术决策的“财富视角”
量化价值:评估技术方案时,加入业务影响分析。例如选择缓存策略时,不仅考虑QPS提升,还需计算其对用户留存率的潜在贡献(如延迟降低1秒可能带来2%留存增长)。
规避陷阱:警惕“技术完美主义”,例如为追求代码覆盖率100%而过度测试,可能延迟核心功能上线,反降低整体ROI。
(三)个人成长的“黑客式突破”
学习路径:像画家临摹大师作品一样,研究优秀开源项目(如Redis、React),分析其架构设计与取舍逻辑。
思维训练:定期进行“逆向需求推演”——假设产品经理的需求是错误的,尝试提出更优解决方案(如将功能A与功能B合并,减少用户操作步骤)。
结语:
《黑客与画家》不仅是一本技术书籍,更是一部关于创造力的宣言。它启示我们:程序员与画家的终极目标都是通过作品表达对世界的理解。当我们下次编写代码时,不妨想象自己正在绘制一幅数字油画——每一行代码是笔触,架构是构图,而用户满意的微笑则是最终的签名。正如保罗·格雷厄姆所说:“画作永远没有完工的一天,你只是不再画下去而已。”我的桌面一直摆放着一个写着“保持热爱”四个字的相框,希望我们大家能对自己从事的事业一直保持热爱吧!
by 西门吹雪