惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Latest news
Latest news
T
Troy Hunt's Blog
V
Vulnerabilities – Threatpost
L
LINUX DO - 热门话题
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Simon Willison's Weblog
Simon Willison's Weblog
V
V2EX
博客园 - 司徒正美
B
Blog RSS Feed
AWS News Blog
AWS News Blog
MyScale Blog
MyScale Blog
Scott Helme
Scott Helme
Cisco Talos Blog
Cisco Talos Blog
Last Week in AI
Last Week in AI
NISL@THU
NISL@THU
博客园 - Franky
P
Proofpoint News Feed
博客园_首页
C
CERT Recently Published Vulnerability Notes
雷峰网
雷峰网
S
Schneier on Security
P
Proofpoint News Feed
Hugging Face - Blog
Hugging Face - Blog
G
GRAHAM CLULEY
博客园 - 三生石上(FineUI控件)
月光博客
月光博客
WordPress大学
WordPress大学
The Hacker News
The Hacker News
T
Threatpost
阮一峰的网络日志
阮一峰的网络日志
A
Arctic Wolf
Microsoft Azure Blog
Microsoft Azure Blog
T
The Exploit Database - CXSecurity.com
Engineering at Meta
Engineering at Meta
罗磊的独立博客
T
The Blog of Author Tim Ferriss
D
Darknet – Hacking Tools, Hacker News & Cyber Security
I
Intezer
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
K
Kaspersky official blog
SecWiki News
SecWiki News
云风的 BLOG
云风的 BLOG
美团技术团队
C
Cybersecurity and Infrastructure Security Agency CISA
博客园 - 【当耐特】
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Security Latest
Security Latest
C
Cyber Attacks, Cyber Crime and Cyber Security
B
Blog
S
Security Affairs

Kaffa.im

Kaffa.im - 寻找数据源头 Kaffa.im - 玩魔方 Kaffa.im - AI 在常见病上取代医生 Kaffa.im - 上 NextCloud,一站搞定个人数据同步 在 Windows 上 Bose SoundLink 音箱声音自动停止问题的解决 Kaffa.im - 交易的实质——浪随风向 Kaffa.im - 新手学电脑从入门到精通 Kaffa.im - 数字化转型之路(从数字化到数智化) Kaffa.im - 机器人简史 Kaffa.im - 安卓Frida逆向与协议分析 Kaffa.im - 数学的惊奇 Kaffa.im - 牌局心理学 Kaffa.im - Python计算机视觉实战 Kaffa.im - ALaunch v1.0 发布 Kaffa.im - Windows 音频设备控制之旅 Kaffa.im - 结构性优势 Kaffa.im - 尤瓦尔·赫拉利-真假信息与连接 Kaffa.im - 小狗钱钱 Kaffa.im - 短视频编导全能手 Kaffa.im - 爆品创新:新时代爆品打造法 Kaffa.im - 如何阅读一本书 Kaffa.im - 冰血暴第一季 Kaffa.im - 冰血暴第二季 Kaffa.im - 冰血暴第三季 Kaffa.im - 冰血暴第四季 Kaffa.im - 冰血暴第五季 Kaffa.im - 思维迭代的26个卓越方法 Kaffa.im - 再度唤醒世界:赖特诗选 Kaffa.im - 中国量化投资 Kaffa.im - Clojure Recipes Kaffa.im - 文案卖货 Kaffa.im - 印象派与东亚美术 Kaffa.im - 深入实战vue开发 Racket Programming the Fun Way Kaffa.im - 我们为什么爱喝酒 Kaffa.im - 雅余的自省《独立博客自省问卷15题》 Kaffa.im - 2024年第41-42周周报 莫名解决局域网内 macOS 与 Windows 不能互访的问题 Kaffa.im - 2024年第39-40周周报 Kaffa.im - 2024年第37-38周周报 Kaffa.im - Money Focused Freestyle 给网站增加了 DIŸgöd 的 follow(Description 方式) Kaffa.im - 给网站增加了 DIŸgöd 的 follow Kaffa.im - 2024年第35-36周周报 Kaffa.im - 记录盒马鲜生好吃的烘培和好喝的啤酒 Kaffa.im - 边水往事 Kaffa.im - 事件流实战 Kaffa.im - 神经漫游者 Kaffa.im - 重启蒙娜丽莎 Kaffa.im - 零伯爵 Kaffa.im - TypeScript编程 Kaffa.im - 唯有书籍——读书、藏书及与书有关的一切 Kaffa.im - 福佳白啤 Kaffa.im - 2024年第33-34周周报 Kaffa.im - 安全意识、记一次MySQL勒索 Kaffa.im - 2024年第31-32周周报 Kaffa.im - 关于遗产代码维护 Kaffa.im - Rust项目开发实战 Kaffa.im - 抖音盒子:短视频与直播带货从入门到精通 Kaffa.im - 浮华与金戈(中世纪上) Kaffa.im - Rust系统编程 Kaffa.im - 大话机器智能 Kaffa.im - 为什么伟大不能被计划——对创意、创新和创造的自由探索 Kaffa.im - 电解质水平替、该不该喝酒及智商堪忧 Kaffa.im - AI融入生活的两点想法 Kaffa.im - 2024年第29-30周周报 Kaffa.im - 《黑客与画家》中累加器引发的思考 Kaffa.im - 2024年第27-28周周报 Kaffa.im - 别丧了,一点也不酷 Kaffa.im - 心智的本质 Kaffa.im - 宽客人生 Kaffa.im - 工作一年拉开差距:问题解决 Kaffa.im - 工作一年拉开差距:逻辑思考 Kaffa.im - Svelte和Sapper实战 Kaffa.im - The Digital Factory Kaffa.im - 游世与自然生活——庄子评传 Kaffa.im - 工作的原理·发现问题篇 Kaffa.im - 工作的原理·解决问题篇 Kaffa.im - DB Service Kaffa.im - 2024年第26周周报 Kaffa.im - 「KN.phoenix」终极笔记软件需求 Kaffa.im - ALaunch v0.9 发布 当我们 Build in Public 时,我们谈些什么 Kaffa.im - 2024年第25周周报 Kaffa.im - 给网站增加最近评论功能 Kaffa.im - 2024年第24周周报 Kaffa.im - [翻译]此网站是个人的 Kaffa.im - [翻译]制作自己的独立网站 Kaffa.im - [翻译]制作自己的独立网站 Kaffa.im - 2024年第23周周报 清除 Microsoft Edge 自动跳转 https 的缓存 参加 AWS 讲 AIGC 活动 Kaffa.im - 2024年第22周周报 Kaffa.im - 2024年第21周周报 Kaffa.im - 2024年第20周周报 Kaffa.im - 营销管理 Kaffa.im - 所有旅生,AI的一图定位来了 Kaffa.im - 2024年第19周周报 Kaffa.im - 2024年第18周周报
Kaffa.im - 年轻只是爱构建
Kaffa · 2024-05-04 · via Kaffa.im

年轻只是爱构建

Kaffa 发布于

锤子找钉子

本文探讨的结构很简单,即大家常说过的:手里握着锤子,看什么都是钉子。

很多人好奇新技术,学习新技术,验证学习的新技术时,便会使用新技术构建很多已构建的成熟软件。然而,如果新构建并未获得相比旧构建有比较优势的制品时,就命中了上述结构:手里握着锤子,眼里都是钉子。

值得注意的是,现实中的“钉子”们存在很多细微的差异,比如有很多类似钉子的东西,其实是螺丝和针。锤子对付螺丝和针,也不是不行,但算不上好用。

软件开发

上述是偏软件工程的叙述,换算为软件开发领域的表述就是:

  1. 掌握了一种编程语言则认为该编程语言适合开发任何软件。
  2. 掌握了一种数据软件则认为该数据软件适合开发任何软件。
  3. 掌握了一种操作系统则认为该操作系统适合开发任何软件。
  4. 掌握了一种编程框架则认为该编程框架适合开发任何软件。

任何代码都是成本

一些代码是业务规则,但任何代码的一面至少都是成本,它需要有人开发、有人测试、有人维护(重构、升级)。

并不是任何软件都值得构建,但我非常理解那些掌握了新技术的年轻工程师,毕竟年轻只是爱构建,很少问为什么。

但只要稍稍有十年经历,一旦有机会维护十年前的代码时,就能理解这里在说什么。

如果可以不修改别人代码,较为便利地实现业务目的时,就不要修改别人代码。

如果需要修改别人代码的逻辑,最好完整地、采用非耦合地方式利用软件,然后才是依赖开发框架,最后是第三发库。

你几乎很难找到长达十年维护的非知名软件,所以,当需要在长期使用的软件中引入一个依赖时,要万分小心,此时有两种考虑:一,慢慢地自己研发;二、如果能看懂源码且源码对个人来说有可维护性时,再审慎依赖。

绝大多数的构建都是无意义的

从五年的长度去看,绝大多数的构建都是无意义。公司活不过五年,五年后技术更新了,你的主要依赖升级了,你的第三方依赖更新了或下线了。公共领域已经有非常多且功能不错的软件,继续构建的大多软件都没有明显存在的理由。

然而,年轻总是爱构建,当审视自身,年轻时也总是会做很多别人眼里无意义的事,这些别人眼里的无意义对当事人来说其实挺重要。

这也许是张颂文老师《灿烂的花园》中说的,去 “创造阅历” 。在第二集中,颂文听见了烟花,这种生活的好奇心来了,让他骑上三轮车在乌漆嘛黑的夜里出发,朝着“烟花”的方向出发,最后除了一路颠簸,只有伸手不见五指的乡路,众人折返,一无所获。然后就是这种看似无意义的行为,构成了一行人人生难忘的花园经历。

所以

在这个内卷时代,现实让人不停提升经济环境效率,将社会推向充分竞争,竞争并非是缺点,但过度后就属于恶性竞争,产生内耗。在这个最好的年代,尤其更要注重和鼓励探索,竞争可以获得生存的机会,但在良性竞争下鼓励探索才能孕育变革,如 OpenAI 技术栈的诞生,靠的是八年的投入、几十亿美金的投资、软件研发的探索。在技术发展到数量级瓶颈时,这些关键的变革一旦成立,几乎决定的就是跨领域的恒久成立的国家竞争优势。