能花钱的,就不要花时间
如果要寻找这个星球上最抠门的群体,那么一定非程序员们莫属了。有个笑话是找对象要找程序员:『挣得多,花的少;常加班,死的早』。
在创业之前,我也是个抠门的主。公司给配笔记本,就绝不自己买。一个N73用三年如果不是丢了就不会买新的。东西永远是够用就好,而不管是否在技术上已经落伍;为了找一款软件的sn,我可以花上一个小时,不厌其烦地注册有sn的论坛,攒积分下载,尽管该软件的正版价也就几十人民币。
值得庆幸的是,这种抠门的劲儿在11年终于得到了改观。
11年初我人生第一次自己花钱买了个笔记本,还是个13"的macbook pro。
11年底我买了自己的第一部iphone,iphone4s。
12年初我正式为自己买了github.com的micro plan,每月$7。
12年下半年我买了15"的new macbook pro。
12年我买了好几个正版软件。
...
在这些不断购买的过程中,我逐渐发现了一个道理 —— 程序员的时间很宝贵,只要有能用合理价格买来的用来提高效率的产品和服务,就不要花时间找免费或廉价的替代品。
我应该早就使用15"的mbp进行软件开发,而不是使用PC或13"的mbp。
我应该购买github的服务,而不是自己搭建gitosis。
我应该购买好的英文图书的kindle版,而不是苦苦在各大网盘上搜索对应的盗版pdf。
我应该在wrapbootstrap上购买中意的css模板,而不是自己去从头设计,或者在google上不断搜索,以期碰到免费的好模板。
我甚至应该买digitalocean的vm,而不是在自己的机器上使用vagrant —— 仅仅是为了更快的apt-get
的速度。
但是,至今很多人还不明白这个道理。我尝试着将我的这一理论传播给周围的人,不少人的反应是:你真有钱!
其实这和有钱没钱真没太大关系。这是行为习惯,是程序员逐渐将自己的时间往高附加值的事情上转移的必经之路。
什么是高附加值的事情?因人而异。在我看来,读读书,写写文章,参加活动和聚会,甚至坐在那思考人生都是比在网上翻来覆去找某个免费资源的价值要高。
如果花两百块钱,你就能买到一套某个软件的实战高手录制的两个小时的学习视频,你买不买?自学也没什么问题,不过你要多花好几倍的时间,而且还不一定能达到看视频所能达到的高度。
我估计你还是不会买。因为你还被桎梏在『互联网上的内容就该免费』的观念里。
这笔账要这么算,假设你自学免费的文档达到相同的高度需要10小时,那么这意味着只要你每小时的薪水超过20元,你就应该购买。20元的时薪意味着什么?意味着一个月收入大概3500元(20 x 8 x 21.5)—— 绝大多是程序员的身价应该是这个的好几倍。
如果换个角度看待这笔消费,把它视作对你个人的技能的投资?你愿意投么?
- R语言 使用BP神经网络进行银行客户信用评估
- 使用R语言挖掘QQ群聊天记录
- 解析滴滴算法大赛---GBDT进行数据预测
- 数据迁移中的数据库检查和建议(r2笔记71天)
- 决策树案例:基于python的商品购买能力预测系统
- 数据迁移前的准备和系统检查 (r2笔记70天)
- 数据处理的统计学习(scikit-learn教程)
- 机器学习实战,使用朴素贝叶斯来做情感分析
- Python NLTK 处理原始文本
- 通过闪回事务查看数据dml的情况 (r2笔记69天)
- 通过shell和sql结合查找性能sql(r2笔记68天)
- 淘宝的评论归纳是用什么方法做到的?
- Python的机器学习实战:AadBoost
- 通过shell检查分区表中是否含有默认分区(r2笔记87天)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- python控制鼠标键盘,解放你的双手~
- 用腾讯云批量计算(batch-compute)调度GPU分布式机器学习
- R语言模拟保险模型中分类器的ROC曲线不良表现
- Linux xargs grep zgrep命令
- r语言空间可视化绘制道路交通安全事故地图
- 小知识:Oracle RAC添加服务名实现单节点访问
- Python去掉图片四周纯色边框
- R语言空间可视化:绘制英国脱欧投票地图
- CC攻击防御的一种方法
- 机器学习笔记之梯度下降算法原理讲解
- 使用OpenCV在Python中进行图像处理
- R语言对布丰投针(蒲丰投针)实验进行模拟和动态可视化生成GIF动画
- Shiny-R语言轻松开发交互式web应用
- SPSS中的等级线性模型Multilevel linear models研究整容手术数据
- Python花式表白