Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Travis CI
committed
Dec 3, 2019
1 parent
9392032
commit ffc4e62
Showing
116 changed files
with
28,473 additions
and
5 deletions.
There are no files selected for viewing
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
我们程序员是如何让自己失业的 | ||
============================== | ||
|
||
|
||
物理的大厦已经建成,剩下的都是添砖加瓦,只是还有几朵乌云罢了。 | ||
|
||
|
||
|
||
| 当我们在说 Docker和微服务的时候,我们在说什么? | ||
| 当我们谈论 Github引领开源时代的时候,我们又意识到什么? | ||
|
||
| IT的基础能力正在被云计算标准化,IT的业务能力正在碎片化, | ||
| 最后每个IT服务都变成了互联网上的一个细胞,寄生在鲸鱼(Docker)上, | ||
| 而鲸鱼漂浮在云计算的海洋之上。 | ||
|
||
| 那个时候,我们程序员将逐步失业。 | ||
|
||
我们程序员是如何一步一步解放自己的生产力,最后失业的? | ||
|
||
|
||
|
||
| 起初,天地混沌于一物,方有盘古开天辟地,而后有了计算机。 | ||
| 神说,要有连接,于是万物基因开始交流,而后有了互联网。 | ||
| 先知说,这还不够,我们需要通天塔来到达天堂,要活在永恒不灭的境地。 | ||
| 所以有了程序员,来建造通天塔。 | ||
|
||
| 每建造一层,我们手中的工具就升级换代一次,从钉子换成凿子。 | ||
| 就这样随着摩尔定律的增长,我们有更好的生产工具,来建造更好的服务。 | ||
| 从0到1,从二进制到汇编,从汇编到C,从 C 到 Python,再到大数据。 | ||
| 抽象愈多,接口愈简洁,我们就像玩乐高似的,仿佛可以建造任何东西。 | ||
| 不断地追求自动化,不断追求抽象分层化,我们走进了碎片化的时代。 | ||
| 计算能力的碎片化,业务服务的碎片化。碎片化达到一定标准后,我们迎来了云计算的时代。 | ||
|
||
| 也就是现在,技术解决方案百家齐鸣,我们迈入智能化。 | ||
| 智能来自于数据,我们把数据存在云端,使用云端的服务,为终端用户提供个性化服务。 | ||
| 将只有两家 IT公司存活下来,一个提供智能数据云计算平台,另一个也是。 | ||
| 最后,我们重新发明了自己。 | ||
| 我们会做一个实验,这个实验叫做地球,来解决宇宙,生命和自由的本质这个问题。 | ||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
.. feed-entry:: | ||
:author: Wenter | ||
:date: 2017-03-18 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
程序员不懂的经济学 (1) | ||
================================ | ||
|
||
|
||
|
||
|
||
|
||
1, 只要不断学习新框架,就能不落伍 | ||
--------------------------------- | ||
|
||
| “现在的前端技术框架好多,得赶紧学,比如那个 React ”, | ||
| 前阵子有个实习生跟我聊天时这么说着。 | ||
| 俺看到他眼里求知的光芒,便附和道“很棒,加油。” | ||
| 其实,俺不忍明说事实,怕熄灭了他学习的积极性。 | ||
| 学这些技术框架其实是不经济的。 | ||
| 为什么不经济呢? | ||
**知识半衰期短** | ||
人生苦短,老是追逐半衰期短的知识,只能随波逐流,不可成为弄潮儿。 | ||
就计算机这块,计算机网络和软件架构的半衰期是要大于这些三天两头换的技术框架的。 | ||
所谓的技术框架,只不过是每次一点点的对现有知识的重新优化组合,只需不求甚解就好。 | ||
|
||
**有些框架是某些技术公司的掩护弹** | ||
没错,有的技术框架就是某些别有用心的公司搞出来搞垮竞争对手的。 | ||
所以技术选型时还是要考虑是哪家公司弄出来的。否则人为刀俎,我为鱼肉。 | ||
|
||
**群体协作性差** | ||
有不少同学看到一个新框架,立马就撸起袖子加油干,像一个孩子一样陶醉在新玩具的花枝招展上。 | ||
却没有考虑到群体协作效率。就比如说 ruby 吧,真是奇技淫巧于一身。然而前两天国内的rubycon 都是 python 和 go 的分享。 | ||
|
||
|
||
|
||
|
||
|
||
|
||
2, 我只要写代码牛逼,其他事和我无关 | ||
----------------------------------------- | ||
|
||
| 商业的本质就是人与人之间的贸易与交换,你写的代码再牛逼,再怎么孤芳自赏也产生不了 GDP。 | ||
| 有人就开始感叹 “遍身罗绮者,不是养蚕人” 云云。 | ||
| 只有你的代码给别人用了,给别人带来了收益,不管是帮人节省了时间还是让别人也产生了愉悦感, | ||
| 那么你的代码才真的创造了价值。 | ||
| 所以呢,写完代码就去找认可它的人,并把它卖出去吧。 | ||
|
||
|
||
|
||
3, 努力工作几十年,就可以财务自由了 | ||
------------------------------------------------ | ||
|
||
| 不要期望时光具有超能力,能把一个中二的青年变成一个英雄。 | ||
| 不要觉得 30岁, 40岁, 50岁 一切忽然就变得顺心如意了。 | ||
| 30 岁的生活是从你现在开始的时时刻刻积分出来的,是一个连续可微的函数。 | ||
| 所以,从现在就开始制定你的理财计划吧。 | ||
|
||
|
||
|
||
|
||
|
||
|
||
.. meta:: | ||
|
||
:description: 每个程序员都该有的经济学常识 | ||
:keywords: 程序员, 经济学常识, 软件设计的权衡 | ||
|
||
|
||
|
||
|
||
.. feed-entry:: | ||
:author: Taoge | ||
:date: 2017-09-18 |
60 changes: 60 additions & 0 deletions
60
_sources/economics/how_economics_works_a_programmer_view.rst.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
程序员和纺织工有啥区别? | ||
======================== | ||
|
||
.. meta:: | ||
|
||
:description: 程序员的价值 | ||
:keywords: 程序经济学 | ||
|
||
| 前些日子,上海市某官员一行来我司视察。 | ||
| 我看他瞧我们的样子,像是瞧工厂里的一排排的纺织工似的。 | ||
| 这个微弱的想法如同照山洞里的一道光,作为一个山顶洞人,看着自己在墙壁的投影,不禁也在思考, | ||
| 我需要做什么努力让别人觉得这个影子看起来好看一些,来满足虚无的自尊心吗? | ||
| 而我写代码时和一只砸核桃的大猩猩有什么区别? | ||
| 于是我站起来,环顾四周,俨然自己是个局外人。 | ||
| 看着这群其貌不扬的程序员,或盯着屏幕,或托腮,或佝偻着敲键盘,或戴着耳机抖腿,或吮手指,或举目望天花板... | ||
| 实在看不出来他们划水和认真工作的区别,自然也就很难想象,这么些相貌平平的人,要土地没土地,要机器没机器,要石油没石油, | ||
| 凭什么能估值过亿?要这么算的话,我估计我得是个身价百万的程序员了。 | ||
|
||
| 让我们想想这个回路: | ||
| 我们生产的代码,运行在银行的数据中心,消费者每笔在淘宝或者其他地方的交易,都会通过网络,达到数据中心。 | ||
| 我们给银行带来了所谓的价值,银行的产品给消费者带来了价值,消费者又会在其他企业工作生产价值。 | ||
| 而这些价值是通过钱来运转的。 | ||
|
||
| 钱是经济社会网络的数据包,总会流向最需要最需要它的地方。 | ||
| 所以程序员拿工资,并不是因为他写的代码漂亮,只是因为他写的代码被人需要,并且恰好能运行而已。 | ||
| 我们早上能吃到热腾腾的包子,而不需要种地,也不用四点就起床和面。 | ||
| 不全是因为卖包子的大妈热心肠, | ||
| 只不过我们都是衣衫褴褛的活在这世界上,只能相濡以沫,互感需要而已。 | ||
| 所以我们作为政府的衣食父母,对那些个来视察的官员,应该表现出我们的慷慨。 | ||
| 可以指着屏幕说,“来,看看我的 Bug。” | ||
|
||
| 那我们在这写的代码到底价值几何呢? | ||
| 也许在市场部的美女看来,我们写的代码就是 bullshit。 | ||
| 也许在投资者来看,我们写的代码是改变世界的推动力。【至少老板让投资者这么认为。】 | ||
| 所以呢,这个价值没个定数,投资好比选美,你不能选你认为最漂亮的,你应该选大家认为最漂亮的。 | ||
| 什么钻石啦,什么翡翠啦,一不能吃,二不能发电,但是你就是买不起呀。 | ||
|
||
| 可是,好像有些人似乎很高冷,扬言道, | ||
| “我是个高贵的程序员,我可不是为了谋生。” | ||
| “我是个有追求的艺术家,我只为自己创作。” | ||
| 对此,我很佩服他们,因为他们不需要通过满足别人来满足自己, | ||
| 这种自满的人,都是幸福的人。因为他们满足自己之后,顺便满足了一下别人。 | ||
| 我希望,每个人都能自满。自私自利是我最欣赏的品质。 | ||
| 因为,他们都在努力绽放。 | ||
|
||
|
||
|
||
|
||
|
||
|
||
.. feed-entry:: | ||
:author: 爱吹牛的 Taoge | ||
:date: 2019-02-25 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
谈开源软件的商业博弈,以 kubernetes 为例 | ||
========================================= | ||
|
||
没有人是傻瓜,这一切都是博弈的结果。 - 语自 Taoge | ||
|
||
.. meta:: | ||
|
||
:description: 开源软件的博弈 | ||
:keywords: 开源生态, kubernetes, 博弈 | ||
|
||
免费的午餐: 开源软件的便车 | ||
-------------------------- | ||
|
||
| 当我们使用 kubernetes 等开源软件时,似乎不需要花钱,这真的是免费的午餐。 | ||
| 所以,那些投身于开源软件的那帮人都是傻瓜吗?让我们薅羊毛。 | ||
| 这个结论似乎显而易见,我们在搭开源软件的便车。 | ||
| 比如最经典的 `智猪博弈`: | ||
:: | ||
|
||
假设猪圈里有两头猪,一头大猪,一头小猪。 | ||
猪圈很长,一头有一踏板,另一头是饲料的出口和食槽。猪每踩一下踏板,另一边就会有相当于10份的猪食进槽, | ||
但是踩踏板以后跑到食槽所需要付出的“劳动”,加起来要消耗相当于2份的猪食。 | ||
|
||
如果两只猪同时踩踏板,同时跑向食槽,大猪吃进7份,得益5份,小猪吃进3份,实得1份; | ||
如果大猪踩踏板后跑向食槽,这时小猪抢先,吃进4份,实得4份,大猪吃进6份,付出2份,得益4份; | ||
如果大猪等待,小猪踩踏板,大猪先吃,吃进9份,得益9份,小猪吃进1份,但是付出了2份,实得-1份; | ||
如果双方都懒得动,所得都是0。 | ||
|
||
| 如上所述,作为一只聪明的小猪,必然选择等待。大猪在推测出小猪的选择后,只能踩踏板。最终达到均衡。 | ||
| 比如大公司花大成本去研发出一个新产品, 小公司等待市场开拓后选择跟进,也就是一种典型的搭便车模式。 | ||
|
||
开源软件的背后是怎么赚钱的 | ||
----------------------------------- | ||
|
||
| 熙熙攘攘,皆为利往。 | ||
| 一方面,对 IT 公司来讲,理论上也可以自己造轮子,但是技术栈的选择是存在风险的,软件开发和维护也是需要大量心血。 | ||
| 尤其是开发复杂程度极高又是分布式系统 如 kubernetes 一类的软件,则更加困难。所以搭便车是最好的选择。 | ||
| 另一方面,开源软件的使用者越来越多,也就是消费者的聚集之后必然形成一个市场。 | ||
| 这个时候,借助开源软件兜售自己的产品和服务的生产者也就趋之若鹜。 | ||
| 看 kubernetes 的代码我们便知,几乎所有的资源相关的 API 都是通过定义好通用的接口。 | ||
| 比如存储相关,比如网络相关,比如负载均衡相关。 | ||
| 这样,各大厂商也就乐意在 kubernetes 添加一些代码作为钩子钓消费者。 | ||
| 这个商业圈内层有各大厂商参与,第二层有培训和定制化的小厂商。 | ||
| 这些厂商为了兜售产品,会招聘对应的岗位,全球各地的开发者也就 Roll In 了。 | ||
| 随后,生态形成。 | ||
| 所以,羊毛出在羊身上。 | ||
|
||
存在即合理 | ||
-------------- | ||
|
||
| 大家都知道,成为亿万富翁最简单的办法就是 “让每个中国人都付给你一块钱。” | ||
| 开源软件成功的关键也是如此,重要的是生态。一个好的生态会滚雪球,一个不好的生态自然会消失。 | ||
| 比如 Andorid,比如 Linux,比如 Git。 | ||
| 这对开发者也是好事,但是如果只有一个操作系统则会被绑架,如果有过多的操作系统又让人头疼【软件的移植性谁试谁知道】。 | ||
| 市场只有一个选择时是资源最优的,但不合理,有过多选择则导致资源过度浪费。 | ||
| 所以,我鼓励每个开发者都参与开源,因为让自己的 Bug 跑满全世界听起来就很酷。 | ||
|
||
|
||
|
||
|
||
|
||
|
||
.. feed-entry:: | ||
:author: 戴眼镜的 PenguinPG | ||
:date: 2019-02-22 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
订阅 Rss | ||
=========================== | ||
|
||
|
||
|
||
这是我的 RSS Feed,你可以订阅 http://blog.heytaoge.com 。 | ||
|
||
|
||
|
||
|
||
.. feed:: | ||
:rss: index.rss | ||
:title: Taoge's Thoughts | ||
:description: 所见,所闻,所思 | ||
:link: http://blog.heytaoge.com/ | ||
|
||
wechat_subscribe | ||
thoughts/my_friends_at_dao_2 | ||
thoughts/my_friends_at_dao | ||
economics/how_economics_works_a_programmer_view | ||
my_projects/build_your_own_notification_feed | ||
economics/why_open_source_works | ||
journal/2018_review | ||
travel/bali_island | ||
thoughts/how_skateboard_feel | ||
thoughts/why_serverless_is_the_future | ||
thoughts/how_to_find_memory | ||
thoughts/xunwu_survey_method | ||
programming/understanding_program | ||
thoughts/trade_off_and_chose | ||
thoughts/the_flow_of_information | ||
manage/how_to_help_employee | ||
thoughts/how_to_solve_problem | ||
my_projects/imuseum | ||
economics/a_programmer_economic_sense_1 | ||
thoughts/find_job_by_github | ||
thoughts/why_we_communicate | ||
thoughts/is_k8s_the_google_gift | ||
thoughts/knowledge_base | ||
travel/thoughts_in_another_country | ||
travel/thailand_2017_06_15 | ||
ml/machine_learning_notes | ||
hadoop/yarn_debug | ||
hadoop/hadoop_install | ||
thoughts/100_times_effective_programmer | ||
my_projects/search_job | ||
about_tech | ||
manage/time_manage | ||
intercom_intro | ||
|
||
|
Oops, something went wrong.