Skip to content

四火的唠叨

一个纯正程序员的啰嗦

Menu
  • 所有文章
  • About Me
  • 关于四火
  • 旅行映像
  • 独立游戏
  • 资源链接
Menu

给车换电池的神奇经历

Posted on 09/23/201806/23/2019 by 四火

水文预警。

这段故事,像小说或者电视剧一样的故事,发生在三天前的下午。我不相信这辈子还能遇到第二次。我本来发在朋友圈上,而且我觉得这样悲催而搞笑的经历,除了哄笑一番以外,应该没有什么价值。但是好几个朋友看到以后,表示对我的神奇经历有了解详细情况的愿望,希望通过给我的悲惨故事他们带来欢乐…… -_-|| 我仿佛看到了那个得意的和嘲笑的嘴脸,好吧,我就稍微详细一点讲……

准备开车去附近买个午饭,车启动的时候挣扎了一下。凭借我二把刀的用车经验,我猜应该是车在向我发起抛锚警告,但是我对我的车抱有十二分的信任,我相信它的顽强,我相信它的潜力——出去买个饭总不至于出问题吧。

好吧,判断失 [……]阅读全文

Continue reading

关于一篇讲华为 “狼性文化” 文章的不同看法

Posted on 09/16/201806/23/2019 by 四火

最近微信的朋友圈和公众号,被 《离开华为三年,我才真正认同狼性文化》这样一篇文章刷屏了。基本上,评论都是正面的,表示支持、理解,或者赞赏。还有许多人表示,正是因为华为这样的狼性文化,这样的领导管理方式,才造就了公司今天的成就。

一开始我也没有太在意,后来发现大量的一边倒的正面评价和转发,我觉得我应该唱个反调,在这里谈谈不同的看法。如果您还未读过原文,不妨先移步阅读。

对于文中的观点,除去在开头的案例,我大致是认可的。特别是强调了实打实地做事给钱,坚持原则和不找借口,我觉得是值得用来树立一个好的典范的。只是开头这个案例太过瘆人,太过引起不适:

同事为与家人团聚,想调来我们办事处。

[……]阅读全文

Continue reading

谈谈微信的信息流

Posted on 08/15/201806/23/2019 by 四火

最近才更新到微信的最新版本,早有耳闻公众号变成了微博似的信息流展示信息。之前也没有太在意,这次微信客户端版本更新以后,发现坏了坏了,以往的阅读习惯已经被彻底毁掉了。下面两图都是我手机上的截图,左边是新的信息流模式,右边是信息流界面下点击右上角图标,回到的 “类似以往” 的基于订阅号发布者的模式。

image1 image2

首先我要澄清的是,我认为信息流是绝大多数 SNS 软件都乐意采用的信息传递模式,简洁而且高效,包括我经常使用的那些应用,比如微博,比如知乎,比如 LinkedIn,甚至绝大多数 RSS 软件,因此,它绝不是一个新东西。毫无疑问,基于信息和基于信息发布账号(公众号)的方式比较起来,通常前者更有优势,但是此事

[……]阅读全文

Continue reading

从 Mac 下的包管理和安装工具说起

Posted on 08/06/201810/08/2024 by 四火

先说点别的。

可能很多人和我一样,最开始习惯使用的是 Windows,后来开始接触 Linux,再后来,接触到 Mac,几周以后,一发不可收拾。

如果说,在 Windows 下面,基本上习惯了便捷友好的图形化界面,以及经历了对 “系统在干什么” 一无所知的恐惧之后,那么接下来 Linux 就带来了另一个极端的体验,知道系统在做什么,但是总是觉得不那么便捷而友好(刚开始很长一段时间都没有接触 Linux 图形界面)。我记得大致有这么一句话,“Linux is user friendly, but it is selective who its friends are.”,Linux 也是对用户朋友友好的,只 [……]阅读全文

Continue reading

招聘有多重要?

Posted on 07/15/201801/30/2020 by 四火

A red vintage “for hire” sign招聘有多重要?

很重要……

嗯,废话!

说 “很重要” 的确是废话,而没有比较就没有差异,同样一句 “很重要” 我看到许多人理解其程度实际上大相径庭。在很多互联网公司,招聘被视为 “最重要” 的事情。这是令许多人不理解,甚至觉得不可思议的事情,这里的 “许多人” 也包括曾经的我。公司不开展业务吗?不管理员工吗?不和了解客户需求吗?这些事情哪个不比招聘重要呢?

中午吃饭的时候,同事老兔和我算了这么一笔账。估算非常之粗略,请勿以之作为任何有效依据,但是从大略上足以窥其端倪。

  1. 假如一个勤奋的中级程序员工程师,一年薪水 200K 的话,一年 365 天,大约有 52 周,扣掉双休日还有 365-52*2 = 261 天

[……]阅读全文

Continue reading

程序员懂业务有多重要?

Posted on 07/09/201810/01/2024 by 四火

Image result for complex程序员懂业务有多重要?印象中我从来都说,“很重要” 这句没有营养的废话。在许多项目中,业务才是真正驱使价值兑现(冠冕堂皇的说法,基本上意思就是 “赚钱”)的法宝,而技术实际上有诸多选择,选择某一项并无太大区别。可是,老实说,下意识地,在技术和业务难以两全其美的时候,我还是倾向于选择那些从技术角度更有趣,但是业务上显得没 “那么” 重要的项目。我不讳认这一点,但是随着这些年的经验积累,或者说经历的项目的洗礼,业务的分量已经越来越大了。

在华为的时候,我做过一些杂七杂八的项目,其中最大的一个项目是一个大型的电信门户网站,由于我参与的是基线版本的研发,定制业务少,变态需求少,扩展性、性能、可维护性这些技术层面

[……]阅读全文

Continue reading

为什么云计算服务是亚马逊先做出来?

Posted on 06/11/201810/02/2024 by 四火

Image result for aws google cloud azure最近看了一个知乎的帖子,大家讨论为什么是 Amazon 先把云计算服务做出来,而不是 Google。类似的问题我遇到过好几次了,之前还在亚马逊的时候,我觉得利益相关等等原因,自己不太适合回答这个问题;而现在,又看到各路人马大神已经把这个问题从各个角度分析得底朝天了,于是觉得似乎又没有太大必要了。不过现在,回头看到这个帖子的时候,我还想再从我的视角总结总结,不只是为什么 Amazon 先把云服务做出来,还有为什么现在它可以一路领先。虽然说 Google 也是云服务的三驾马车之一(另两驾是 Amazon 和微软),但如今许多方面它都和另两驾还有不少的差距。我记得刚加入 Oracle 的时候,但凡听说我从 Amazon 来,

[……]阅读全文

Continue reading

关于 RESTful 不足的思考

Posted on 06/04/201810/08/2024 by 四火

在 Amazon 的时候,公司内有大量的组来维护不计其数的 service,而 service 之间的通用通讯方式是公司内部的一个框架,协议是自定的,客户端也是内部的;现在到了 Oracle,我看到这个变成了 RESTful,也就是说,协议本身变成了最常见和适用的一种。我看到有太多论述 RESTful 优点的文章了,而实际工作中也确实有所体会,比如接口和报文的可读性好,不需要特制的客户端,上手和调试都比较容易等等。但是,如果看到某个东西被冠以过多正面的评价,就要当心了。我也慢慢地体会到了一些问题。不过,在谈谈我的思考之前,我想先明确一下我对 REST 的认识,而这点,鉴于历史原因,也是我不太愿意花时间争辩的内容。我 [……]阅读全文

Continue reading

关于国内程序员到美国工作

Posted on 04/18/201804/13/2020 by 四火

本来是没有倾向谈论这个话题的,但是最近邮件或者微信问我这个问题的国内程序员朋友很多,我在这里一并介绍一下,也算作简单的解答。同样的问题就直接参阅即可。事实上,我很乐意收到这样或者那样的问题,也包括到美国工作这样的话题,混熟了的话瞎扯也开心。但是也请大家注意一点礼貌,有好几次有程序员没头没脑地微信上跳出来问问题,然而话都说不清楚,或者连个招呼也不会打,更有甚者二话不说直接把 log 贴过来让我看问题,实在是让人觉得很不舒服。有些我回复了,有些我实在是不想回复了。另外,具体的问题我比较好解答,像有不少人问我,“你觉得美国怎么样?”,我都不知道从何说起。具体问题还是邮件沟通更合适,我答复起来也更舒服,微 [……]阅读全文

Continue reading

评审的艺术——谈谈现实中的代码评审

Posted on 04/09/201806/23/2019 by 四火

曾经写过一点关于代码评审(code review)的文章,比如这篇和这篇,现在觉得关于它的认识又有了不少更新。软件工程的技术和实践分成两部分,一部分是和书本知识一致的,大约占一半,这部分基本上在大学里就可以学,自学只要方法得当、刻苦努力也可是途径;但是第二部分来自于实际团队、经验,内容通常无法从书本当中获得,而且难说对错,不同的人和不同的经历造就了不同的认识。代码评审就是第二部分颇具槽点,可以大加讨论的典型。

代码评审是展现个性和性格的途径

我本人特别反对一种颇为常见的观点,就是 “一个良好运作的项目,不同的人,应该写出一样的代码”。我非常理解这种观点的初衷,一个良好规范约束的团队中 [……]阅读全文

Continue reading

接触 Python 后的一点感受记录

Posted on 03/25/201806/23/2019 by 四火

python最近因为工作的关系开始学习 Python 了。以前从不曾正儿八经地学过,如果说工作学习经验带来改变的话,那么编程语言的学习就是个很好的例子。如果在十年前,我要学习 Python 的话大概会买本系统介绍的 Python 教程,然后一页一页慢慢看,估计能够啃完大半本,跳过一些自认为次要的特性。等到在项目中使用已经得是一两个月之后了吧。但是如今我显然不太会做一样的事情,我现在会拿着我那些熟悉的编程语言来比较,不同的特性上面,Python 是怎样的,是先进还是落后,适合解决什么问题,在哪些领域可以大行其道,但在遇到哪些问题的时候事倍功半。

想起以前接触过的编程语言里,事实上有一半都不能算系统地学过,大致上只是 [……]阅读全文

Continue reading

写在 Oracle 入职一个月之时(兼招人帖)

Posted on 03/19/201806/23/2019 by 四火

OCI加入 Oracle 的 OCI(Oracle Cloud Infrastructure)团队一个月了,感触颇多。事实上每一次团队的更换都是一次体验记录和整理的好机会。技术方面的东西有很多,在允许的范围内,我会在以后慢慢再谈,但是其他方面,现在我想稍微谈一谈,特别是和我的老东家 Amazon 比较地看。以下的文字更像一篇帖子,而不是文章。

先说工作中的生活。Amazon 的总部在西雅图,整个 SLU 满大街走着大亚麻的人,但是 OCI 目前只有 downtown 两栋楼的几层,人数要少得多。对我来说,每天上班从 van pool 改成了 bus,commute 的时间代价略高,但由于车次很多,因此也能够接受。Downtown 的

[……]阅读全文

Continue reading

开发环境上的代码同步

Posted on 02/15/201806/23/2019 by 四火

最近在搭建开发环境,大致的布局是这样的:一个专门的数据库 VM,一个用于编译和代码执行的 VM(dev virt,装的 RedHat),还有用来写代码和运行这两个虚拟环境的 Mac(local)。这里我需要一个工具,可以满这样的需求:

  • 能够把 Mac 上写的代码同步到 dev virt 上去。
  • 不需要手动触发,每当有修改,应该能够自动同步。

我把我的解决办法简单记录在这里。在接下去记录之前,需要回答这样两个问题:

  • 为什么需要把编译和执行环境放到 VM 里面去?因为尽量使得代码的编译执行环境接近于生产线。
  • 为什么要在 Mac 上写代码,而不在 dev virt 那个 VM 上写代码?因为在 Mac 上

[……]阅读全文

Continue reading

再见,亚马逊时光

Posted on 02/13/201806/23/2019 by 四火

IMG_6884新入职 Oracle 已经超过一周了,但是一直没敢下笔,写一点东西纪念将近 6 年的亚马逊时光,总有惶恐的感觉。现在觉得不能再拖了,文字不在多寡,仿佛一种仪式,把整个亚马逊的经历画上句号。离开老东家的时候,往往是喜忧参半的,并且难免对前任颇有微词。在我离开华为的时候,便是如此,多为感怀和想念,但是诚实地说,也有一些厌烦的情绪,于是有释放之后的舒坦。这其中的缘由,我在以前的文中写到过。但是离开亚马逊,我却仿佛不再有这些负面的情绪,除了感伤和怀念,便是感激。要说明的是,如今亚马逊的股票直往上蹿,它却远非完美,也有诸多令人遗憾的风言风语。我觉得它在某些方面可以被称为 “美国的华为”,做企业的成就自不必说,但是

[……]阅读全文

Continue reading

《Person of Interest》剧评

Posted on 01/23/201806/23/2019 by 四火

POI

看完美剧 Person of Interest(POI,疑犯追踪,下同),心有波澜,写一点点文字,零零散散,算是剧评。

我不觉得我是一个美剧狂热的爱好者,但是确实也看了好几部美剧。读书的时候开始看 Friends(六人行),后来顺着相同的风格,看 Two and a Half Men(好汉两个半),以及 How I Met Your Mother(老爸老妈浪漫史)等等,都是很欢快的风格;另一条线看一些悬疑、枪战、罪犯之类的片子,比如最早看 Prison Break(越狱),看 24(反恐 24 小时),后来看 Breaking Bad(绝命毒师),看 Crime Scene Investigation(犯罪现场

[……]阅读全文

Continue reading

折腾的快乐

Posted on 01/09/201809/25/2019 by 四火

sde

先讲个故事

公司里有这么一个小小的差事,某一个月,每天都要把 Excel 的某一列的数据根据某种规则换算以后拷贝到另一列去。

DA(数据分析师)看了以后说,就手工完成吧。反正只有一个月,这件事情每天做 3 分钟,也没有多耽误时间。

TPM 看了以后说,这事情每天做做很简单啊,写一张便签贴在屏幕上,每天就不会忘记了。

Dev Manager 看了以后说,衡量一下这个很小的时间成本,用其它的方式来解决是不划算的,还是手工搞定吧。

……

不过地球上还有一种特殊的物种不同意。它门叫做程序员——这么重复性的劳动难道不能用脚本完成吗?

就是,用 geek 的脚趾头想一想,这还用问?

于是写脚本,调试,

[……]阅读全文

Continue reading

2017 年总结

Posted on 01/03/201806/23/2019 by 四火

summary

一周前才家人送上飞机回国过年,这两个月要一个人安安静静呆着了,就从写一点东西回顾这个过去的 2017 开始吧。

健康

我总是把健康放在首位。就像我之前写的,健康是一个拥有它的时候不会注意到它的东西。Crohn’s Disease 时不时回来找我,但是总的来说,仅仅急性地比较严重地犯了一次,其它都还可控,比 2016 年好;抑郁症的问题也基本得到控制,虽然有时候还会头晕,特别是天气不好的时候,这也比 2016 年好。除了药物以外,时间越长我越能够理解自己的身体,总的来说我已经很满意了。当然,要是没有一个比较好的状态,我也没有办法完成面试求职这些事情。

孩子出生以后,爬山的次数明显不如 [……]阅读全文

Continue reading

时间投入上的权衡

Posted on 11/22/201710/01/2024 by 四火

time management

时间管理被很多人忽略了。被忽略的一个原因是,我们被洗脑洗得太久,读到的鸡汤文太多,觉得一个人的主观努力程度扮演了过度重要的作用。事实上,这里有两个问题,一个是如何评价目标的达成,特别是人一生这个大的范围内的评价,鸡汤文中总把一个人在事业上的 “成功” 列为最大的目标,但实际我觉得这只对一部分人成立;另一个是,即便这个目标成立,主观努力依然被高估了——或者说,主观努力当然重要,而且对于大多数人来说,天赋并无法起到决定性作用,但是,许多人的主观能动力是类似的,结果却大相径庭。这里面,除了主观努力和先天天赋以外,明显还有别的因素在起作用,而时间管理就是其中之一。

几年前写过一点关于时间的文字,不过都是

[……]阅读全文

Continue reading

Blog 安全问题小记

Posted on 11/21/201707/03/2022 by 四火

xmlrpc

最近 Blog 遭遇了几个安全问题,折腾了几个钟头,在此记录一下。

最大的问题是 blog 访问时不时地出现 “502 bad gateway”,即便不出现,latency 也能达到接近三十秒。

于是登上 vps 去看原因,top 命令发现 CPU 都用完了。靠,十个 php-fpm 居然都在满功率工作。研究了一下,通常 php-fpm 在没有请求的时候是不应该占用那么多 CPU 资源的,而且 mysql 也高,似乎有人在访问网站,但是去 access log 里面却没找到东西:

top - 02:08:12 up 56 min,  1 user,  load average: 10.18, 9.41, 8.68

[……]阅读全文

Continue reading

职业生涯下一站

Posted on 11/20/201708/25/2020 by 四火

career

水文一篇。

在亚马逊已经呆了六年多了,想起第一次换工作的情形仿佛还历历在目。如今,就在我还有半年多就将迎来我第十个工作的年头,经历了骑驴找马的面试,不久我将迎来第二次职业生涯的重大变更,下一站:Oracle,Oracle Cloud Infrastructure。

我的工作经历,可以用多样来形容,也可以用乱七八糟来形容。其中的原因有客观的,也有主观的。客观的原因是项目和团队的需要,本来工程师团队如同资源池,就是要去解决不同的问题,这些问题是由当时的境况和市场决定的。主观的原因是,我本来就是一个领域涉猎相对广泛的程序员,而且兴趣三年两头自己都弄不清楚,有时候这未必是好事,但是 [……]阅读全文

Continue reading
  • Previous
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • …
  • 23
  • Next

订阅·联系

四火,啰嗦的程序员一枚,现居西雅图

Amazon Google Groovy Hadoop Haskell Java JavaScript LeetCode Oracle Python Spark 互联网 前端 华为 历史 同步 团队 图解笔记 基础设施 工作 工作流 工具 工程师 应用系统 异步 微博 思考 技术 数据库 曼联 测试 生活 程序员 管理 系统设计 缓存 编码 编程范型 英语 西雅图 设计 评审 问题 面试 项目

分类

  • Algorithm and Data Structure (30)
  • Concurrency and Asynchronization (6)
  • System Architecture and Design (43)
  • Distributed System (18)
  • Tools Frameworks and Libs (13)
  • Storage and Data Access (8)
  • Front-end Development (33)
  • Programming Languages and Paradigms (55)
  • Testing and Quality Assurance (4)
  • Network and Communication (6)
  • Authentication and Authorization (6)
  • Automation and Operation Excellence (13)
  • Big Data and Machine Learning (5)
  • Product Design (7)
  • Hiring and Interviews (14)
  • Project and Team Management (14)
  • Engineering Culture (17)
  • Critical Thinking (25)
  • Career Growth (57)
  • Life Experience and Thoughts (45)

推荐文章

  • 谈谈分布式锁
  • 常见分布式系统设计图解(汇总)
  • 系统设计中的快速估算技巧
  • 从链表存在环的问题说起
  • 技术面试中,什么样的问题才是好问题?
  • 从物理时钟到逻辑时钟
  • 近期面试观摩的一些思考
  • RSA 背后的算法
  • 谈谈 Ops(汇总 + 最终篇):工具和实践
  • 不要让业务牵着鼻子走
  • 倔强的程序员
  • 谈谈微信的信息流
  • 评审的艺术——谈谈现实中的代码评审
  • Blog 安全问题小记
  • 求第 K 个数的问题
  • 一些前端框架的比较(下)——Ember.js 和 React
  • 一些前端框架的比较(上)——GWT、AngularJS 和 Backbone.js
  • 工作流系统的设计
  • Spark 的性能调优
  • “残酷” 的事实
  • 七年工作,几个故事
  • 从 Java 和 JavaScript 来学习 Haskell 和 Groovy(汇总)
  • 一道随机数题目的求解
  • 层次
  • Dynamo 的实现技术和去中心化
  • 也谈谈全栈工程师
  • 多重继承的演变
  • 编程范型:工具的选择
  • GWT 初体验
  • java.util.concurrent 并发包诸类概览
  • 从 DCL 的对象安全发布谈起
  • 不同团队的困惑
  • 不适合 Hadoop 解决的问题
  • 留心那些潜在的系统设计问题
  • 再谈大楼扔鸡蛋的问题
  • 几种华丽无比的开发方式
  • 我眼中的工程师文化
  • 观点的碰撞
  • 谈谈盗版软件问题
  • 对几个软件开发传统观点的质疑和反驳
  • MVC 框架的映射和解耦
  • 编程的未来
  • DAO 的演进
  • 致那些自嘲码农的苦逼程序员
  • Java 多线程发展简史
  • 珍爱生命,远离微博
  • 网站性能优化的三重境界
  • OSCache 框架源码解析
  • “ 你不适合做程序员”
  • 画圆画方的故事

近期评论

  • + 1.943624 BTC.NEXT - https://graph.org/Ticket--58146-05-02?hs=9a9c6f8dfe3cdbe0074006e3e640b19b& on 所有文章
  • Anonymous on 闲聊投资:亲自体验和护城河
  • 四火 on 关于近期求职的近况和思考
  • YC on 关于近期求职的近况和思考
  • mafulong on 常见分布式基础设施系统设计图解(四):分布式工作流系统
  • 四火 on 常见分布式基础设施系统设计图解(八):分布式键值存储系统
  • Anonymous on 我裸辞了
  • https://umlcn.com on 资源链接
  • Anonymous on 我裸辞了
  • Dylan on 我裸辞了
© 2025 四火的唠叨 | Powered by Minimalist Blog WordPress Theme