程序员的经济学系列——你不可不知的生存智慧——第一篇:小X是要成为IT精英的男人!
21世纪,不懂经济学就是耍流氓!如何才能生活得更好?作为程序员你一定也思考过这个问题。今天我们就来从经济学中寻找这问题的答案吧!
一·PPF与机会成本

1.PPF综述
首先为大家介绍第一个最简单的经济模型——PPF——生产可能性边界曲线。
XX程序员是我们的主角(以后简称小X) 。小X每天的时间精力都是有限的,他的知识技能也是同样。这些对于小X而言都是稀缺资源。经济学的第一前提就是块砖。(可见小X还是蛮文武双全的!我们需要向他学习!)要是小X既写代码又搬砖,并且充分利用了自己的时间精力、知识技能等资源,也就是对稀缺资源进行了有效配置,那么,所有可能的生产组合在坐标中可以表示为一系列的点,将这些点用平滑的曲线连接起来,那么这条曲线就叫做“生产可能性边界曲线”,英文名字叫做PPF。
PPF下方的蓝色区域中的所有的点都是可以达到的,也就是小X能够做到的,比如(搬1000块砖,写450行代码),这些曲线下方的生产组合都是可以实现的,但是都是低效率的,因为这都是小X在没有充分利用自己的时间精力、知识技能等资源的情况下发生的,也就是没有对稀缺资源进行了有效配置。
图中的红色曲线就是我们的PPF,曲线上的所有点所代表的生产组合同样也都是可能的,并且是有效率的。因为这些都是小X在充分利用自己的时间精力、知识技能等资源的情况下发生的,也就是对稀缺资源进行了有效配置。
而曲线上方的白色区域所代表的就是不可能的商品组合,因为小X的时间精力、知识技能等资源都是稀缺的,即使充分利用,也只能够到达PPF,却不能够超过它,所以才叫做生产可能性边界。
2.PPF相关补充说明
经济学基本原理之一:人们面临权衡取舍。PPF表明了人们在生产组合之间面临的一种权衡取舍。一旦我们达到了该边界上有效率的各点,那么得到更多的一种物品的办法就是减少另一种物品的生产。拿小X来说,当他的生产处于PPF之上有效率的各点时,他想多写些代码,就得少搬些砖。究竟写多少代码搬多少砖,就要靠他来权衡取舍。
这种权衡取舍有助于我们理解另一个经济学基本原理:某种东西的成本是为了得到它所放弃的东西。这被称为行)移动到b(1000块,900行),小X为了多搬了1000块1砖而放弃了100行代码。换言之1块砖的机会成本是0.1行代码。值得注意的是,某点中1块砖的机会成本等于PPF在该点的斜率。
另外,经济学家认为PPF通常是这种凹向原点的形状,因为机会成本一般是边际递减的。PPF还具有时间性,它表明在一段时期内生产不同物品之间的权衡取舍,但是随着时间的推移这种权衡取舍关系可以改变,也就是对应着PPF的移动。
二·投资引起的经济增长

2012年,玛雅人预言的世界末日并没有到来,小X因此更加感念生活,发愤图强,决心定位自己是要成为IT精英的男人!于是不再搬砖,潜心搞技术。
一年之中资源仍然是稀缺的,假设全年的工作时间里他要么接项目做,要么潜心钻研总结经验积累属于自己的框架、类库,2012年小X的PPF如图PPF1所示——将全年全部的资源配置到做项目中,最多能做3个项目;将全年全部的资源配置到积累自己的框架、类库中,最多能做3个框架。(为了说明方便而选取的数据,不一定很贴切,望大家见谅!)
可是,小X现在的PPF与当年“搬砖写代码”时期的PPF不同,因为,无论是搬砖还是写代码都是挣钱的活计,然而现在是要么积累框架,要么做项目,可是积累框架是没人开工资的。所以,搬砖写代码做项目都是生产,但积累框架不是生产(至少在这里不是),它是投资。
正如之前在介绍PPF时所指出的,随着时间的推移,PPF是有可能移动的。那么产生这个移动的动力在哪里?投资就是一个重要的原因!
2012年,如图PPF1所示 ,小X选择在a点生产,一年做2个项目,积累2套框架。
一年之后,由于小X去年积累了2套框架,所以他的工作更加得心应手,避免了大量的重复劳动,从而生产效率有所提高,于是:
2013年,如图PPF2所示,可见PPF2处于PPF1 上方,这说明小X超越了他当年的生产可能性边界。通过之前对于PPF的讲解我们知道,在当时的情况下,PPF是无法超越的,是一切生产可能性的边界,PPF上方的区域是不可能达到的,然而,由于小X没有将全部的资源用于生产和消费,而是将一部分资源配置到投资中去——积累自己的框架、类库,于是提高了劳动生产率,扩展了自己的PPF。这何尝不也是一种自我超越!《老子》中说:“知人者智,自知者明;胜人者有力,自胜者强。”,小X是要成为IT精英的男人,唯有不断的自我超越才能做到!
再接再厉,2013年小X选择在b点生产,一年做2.8个项目,积累2套框架,来年之后,小X就拥有了2+2=4套框架,从此他的工作时更加驾轻就熟,游刃有余,于是:
2014年,如图PPF3所示,小X再次超越了之前的生产可能性边界,再次扩展了自己的PPF,不断地突破藩篱,才会遇见最棒的自己!
两次PPF的扩展,化不可能为可能,从必然王国走向自由王国,大力发展了生产力——而这就是由于资本积累所引起的经济增长!
三·总结
对于广大程序员而言,做码农,通过低水平重复的劳动来创造价值的道路是永远不可能一劳永逸的,恰恰相反,是永劳一逸的!生产只能够惠及当下之刹那,而投资却能够惠及来日之千秋!
识时务者为俊杰,随着知识经济时代的到来,与知识、技能紧密结合的人力资本和固化了知识技术及创新力的技术资本在创造价值中所发挥的功效日益超过了传统的生产要素,拥有了比物质、货币等硬资本更大的增值空间!对于广大程序员而言,与其冒着巨大的风险去投资证券,与其蒙昧无知地去投资古玩,与其赴汤蹈火地去投资实业,不如立地成佛!所谓“坐亦禅,行亦禅”,“挑水担柴无非妙道”——其实法门就在寻常中——做好程序员,努力成为IT精英,积累自己的人力资本和技术资本,你便能坐享这笔投资带来的经济增长!
投资拉动经济增长,对人力资本和技术资本进行投资更是拉动经济增长!回到我们最初的那个问题——作为程序员,如何才能生活得更好——我在这里为大家提供的答案之一正是——进行人力资本和技术资本的投资。
博客园中的一位大牛,相信许多人都对他有所耳闻,他曾经语重心长的将自己的成功经验分享给了以后也能成功其他朋友,而他在那篇获得广泛推荐的博客中所介绍的经验,正是我今天得出的这一结论的切身实践和最佳注解!我曾经拜读,收获良多;至今回味,温故知新。在这里也分享给大家,同时也希望大家从中找到“如何才能生活得更好”的更具体的答案!
参考阅读:
程序员的出路之一
要是您觉得还看得过去,请点个赞鼓励一下哦!
程序员的经济学系列——你不可不知的生存智慧——第一篇:小X是要成为IT精英的男人!的更多相关文章
- Web程序员开发App系列 - 开发我的第一个App,源码下载
Web程序员开发App系列 Web程序员开发App系列 - 认识HBuilder Web程序员开发App系列 - 申请苹果开发者账号 Web程序员开发App系列 - 调试Android和iOS手机代码 ...
- Web程序员开发App系列 - 调试Android和IOS手机代码(补图)
Web程序员开发App系列 Web程序员开发App系列 - 认识HBuilder Web程序员开发App系列 - 申请苹果开发者账号 Web程序员开发App系列 - 调试Android和iOS手机代码 ...
- Web程序员开发App系列 - 申请苹果开发者账号
Web程序员开发App系列 Web程序员开发App系列 - 认识HBuilder Web程序员开发App系列 - 申请苹果开发者账号 Web程序员开发App系列 - 调试Android和iOS手机代码 ...
- Web程序员开发App系列 - 认识HBuilder
Web程序员开发App系列 Web程序员开发App系列 - 认识HBuilder Web程序员开发App系列 - 申请苹果开发者账号 Web程序员开发App系列 - 调试Android和iOS手机代码 ...
- 程序员的智囊库系列之2----网站框架(framework)
程序员的智囊库系列之2--网站框架(framework) 这是程序员的智囊库系列的第二篇文章.上一篇文章讲了服务器与运维相关的工具,这篇文章我们将介绍几个搭建网站的框架: django express ...
- 程序员的智囊库系列之3--分布式文件系统(Distributed file systems)
程序员的智囊库系列之3--分布式文件系统(Distributed file systems) 这是程序员的智囊库系列的第三篇文章.上一篇文章本来打算介绍几个搭建网站的框架,但由于这部分的内容较多,还需 ...
- 【MM系列】SAP MM模块-基础配置第一篇
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MM模块-基础配置第一篇 ...
- 【ABAP系列】SAP ABAP常用函数总结第一篇
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP常用函数总结第一 ...
- 程序员的脑袋系列---利用ffmpeg命令提取音频
今日各大播放器的版权控制越来越严格.导致很多歌曲无法听,但是MV却可以听.这样很蛋疼有木有? 然而,我们可以利用ffmpeg工具提取MV的音频,比如做成MP3格式,这样就可以听了.--哈哈(邪恶地笑) ...
随机推荐
- JDBC URL FOR ORACLE, wrong or correct, how do you know? ORA-12505
JDBC URL FOR ORACLE, wrong or correct, how do you know? INSTANCE SID by ":" jdbc:oracle:th ...
- [C#].NET中几种Timer的使用
这篇博客将梳理一下.NET中4个Timer类,及其用法. 1. System.Threading.Timer public Timer(TimerCallback callback, object s ...
- 【leetcode】Generate Parentheses
题目简述: Given n pairs of parentheses, write a function to generate all combinations of well-formed par ...
- 进击的Python【第七章】:Python的高级应用(四)面向对象编程进阶
Python的高级应用(三)面向对象编程进阶 本章学习要点: 面向对象高级语法部分 静态方法.类方法.属性方法 类的特殊方法 反射 异常处理 Socket开发基础 一.面向对象高级语法部分 静态方法 ...
- Redis集群搭建1
wget .168.0.201:6379 192.168.0.201:6380 192.168.0.201:6381 192.168.0.202:16379 192.168.0.202:16380 1 ...
- border-radius四个值的问题
我们都知道border-radius后面如果是4个值的话,依次代表的是左上角.右上角.右下角.左下角. 但是这样写呢:border-radius:10px 20px 30px 40px/50px 40 ...
- Ue4的容器(数据结构)
之前都没注意,作为程序眼这些还是比较重要的 Engine\Source\Runtime\Core\Public\Containers\
- mssql与mysql 数据迁移
概要: mssql向mysql迁移的实例,所要用到的工具bcp和load data local infile. 由于订单记录的数据是存放在mssql服务器上的,而项目需求把数据迁移到mysql ser ...
- 弱省互测#1 t3
题意 给出一棵n个点的树,求包含1号点的第k小的连通块权值和.(\(n<=10^5\)) 分析 k小一般考虑堆... 题解 堆中关键字为\(s(x)+min(a)\),其中\(s(x)\)表示\ ...
- canvas图片处理
1.灰度 .299 * r + .587 * g + .114 * b; 2.连环画效果 R = |g – b + g + r| * r / 256 G = |b – g + b + r| * r / ...