每周分享第 50 期
这里记录过去一周,我看到的值得分享的东西,每周五发布。
欢迎投稿,或推荐你自己的项目,请前往 GitHub 的 ruanyf/weekly[1] 提交 issue。
由于微信不允许外部链接,你需要点击页尾左下角的“阅读原文”,才能访问文中的链接。
(题图:杭州,2018)
前几天,我听一个广播节目。主持人问,现在很多人开网约车,这样能赚多少钱,能够赚到大钱吗?
这个问题很容易回答,答案就是不能。出租车司机的收入,主要由营业时间的长短决定。基本上,一天开12个小时,就是比开6个小时,收入高出一倍。每天只有24个小时,因此收入存在上限,不可能偏离平均水平很远。
出租车是“时间换收入”的典型行业,投入的时间越多,收入越高,在家休息就没收入。很多行业都属于“时间换收入”,所有此类行业都赚不到大钱。因为你能用来交换的时间是有限的,而且进入中年以后,你就拿不出更多的时间来交换。开出租车赚零花钱,或者作为短期过渡,这是没问题的,但作为终身职业是很糟糕的。
我觉得,越来越多的程序员正在落入这个陷井,用编码的时间换取收入。只有不停地做项目,才能拿到钱。项目做得越多,收入越高。这个项目开发完了,公司又让他去干下一个项目。 忙了好几年,项目完成了一大堆,但是自己什么也没留下,以后的收入还要取决于从零开始的新项目。这样的话,你跟出租车司机有何两样,哪一天你不写代码了,不是照样没收入。
那些赚到大钱的人,没有一个是靠时间换取收入的。他们要么通过积累资产致富,要么购买他人的时间,为自己创造财富。你应该警惕,不要落入“时间换取收入”的陷井,不要只顾着为别人生产代码,而要注意积累自己的资产,以及适时开展属于自己的业务。
新闻
1、银行模仿科技公司[2]
银行通常给人一种严肃保守的感觉。丹麦一家银行决定改变这种印象,向科技公司学习,让银行也变得轻松随便。它重新装修了办公楼,允许员工穿便服,还采用了开放式办公室。
2、霍金教授的纪念硬币[3]
英国皇家造币厂为了纪念去年去世的霍金教授,推出了一枚纪念硬币,面值为50便士。这枚硬币中间有一个洞,象征霍金对黑洞的研究成果。
3、删除 Facebook[4]
WhatsApp 于2014年以193亿美元的价格,被 Facebook 收购。但是,2019年3月13日,WhatsApp的联合创始人布莱恩·阿克顿(Brian Acton,上图最右边)在斯坦福大学的一个讲座上,公开呼吁学生删除 Facebook。
他解释说,收购完全是资本的需要,他本人是无可奈何。“我有50名员工,我不得不考虑他们,以及他们从这笔交易中赚到的钱。我不得不考虑我们的投资者,我不得不考虑我的少数股权。即使我想拒绝收购,我也没有完全的影响力来否决。”
4、月球岩石[5]
1969年到1972年,阿波罗计划的宇航员多次登录月球,一共采集了382公斤月球岩石,其中大部分都公开了,但是有三个样本一直是保密的。今年是人类登陆月球50周年,美国宇航局决定将所有样本都公开。
科学家已经决定,采用最先进的手段,彻底检查这些样本。因为月球被发现存在固态水,这些岩石中可能有氧化物,科学家想知道有无可能从月球岩石提取氧气。
5、圆周率的最新记录[6]
3月14日是国际圆周率日,谷歌宣布,日本的谷歌员工 Emma Haruka Iwao 打破了世界记录,将圆周率计算到了31万亿位数,远远超过之前的22万亿记录。整个计算使用虚拟机,花了121天才完成。这个新的圆周率保存在硬盘上,需要 170TB 的空间。
6、VR 电影[7]
今年的美国 SXSW 艺术节,推出了 VR 电影体验。观众一人一套设备,每套设备都有很长的电线,以便观看时可以适度的移动。这次展映了20多部 VR 电影,每部长度都在10分钟~15分钟。不同的电影有不同的观看设备,上图是坐在轮椅上观看,观众表示体验还不错。
VR 电影的优势是沉浸式体验,可以360度观看。下面的这部电影讲述第一次世界大战时,一个英国士兵的经历。他走进一所老宅,然后是战地医院,最后在战地营房里,到处是他无法寄出去的明信片。
另一部 VR 电影则是观看一对夫妻的故事。
7、苹果取消 AirPower[8]
苹果公司宣布,取消 AirPower 这个产品,理由是无法达到该公司的产品要求。AirPower 是2017年宣布的,它是一个椭圆型的无线充电器,可以同时为三个设备进行无线充电。原定2018年上市,但被推迟了,现在终于宣布放弃。
外界猜测,真正的原因是物理学的限制,导致这个产品很难实现。主要的障碍有两个,一个是无线充电通过感应电流实现,会有一部分电量泄漏出来,AirPower 内部有多个线圈,如果同时充电,多个感应电流会互相加强,泄漏电量的强度可能会影响到心脏起博器和助听器这样的设备。另一个障碍是,无线充电的效率不是很高,多个设备同时充电,需要很大的功率,内部会有大电流,过热无法避免。
8、一句话新闻
•GPS [9]传送的数据采用10个二进制位表示“周数”,4月6日午夜这个字段将会溢出,重新归零。那些采用 GPS 授时的设备,可能将会出现时间错误。
•欧洲议会[10]通过决议,建议成员国2021年废止实行夏令时。此前,欧盟强制所有成员国实行夏令时。
•法国[11]与中国签署协议,参与2023-2024年实施的嫦娥六号探月计划,准备在嫦娥六号上搭载15千克的法方设备,包括一台照相机和一台分析仪。
•抖音[12]被美国联邦贸易委员会罚款570万美元,因为是没有经过监护人同意,就保存13岁以下儿童的信息。
文章
1、我的 Linux 桌面配置[13](英文)
一个高级程序员介绍他的 Linux 桌面开发环境,以及他的各种软件选择。
2、我们不再需要 Chrome[14](英文)
Chrome 已经垄断了浏览器市场,作者论证为什么这种情况对互联网是不利的。
3、React Hooks 入门教程[15](英文)
一篇很好的 React Hooks 的入门介绍文章。
4、Kanban 与 Scrum 的比较[16](英文)
Kanban 和 Scrum 都是敏捷开发的具体实现方法,本文讨论它们的异同。
5、在特斯拉工作的感受[17](中文)
在马斯克的影响下,特斯拉公司上下极其激进、残酷冰冷、毫无感情,你的工作不仅压力超级大,而且很有可能因为表现不好被开除。但是为什么还有员工没辞职呢?
6、LFU 算法的一种实现[18](英文)
LFU 是常用的删除过期缓存的算法,本文介绍了它的一种代码实现。
7、重新设计 UI 基本上是浪费时间[19](英文)
作者认为,95%情况下,你不需要重新设计 UI。
8、中国超高压电网[20](英文)
中国已经建成了全国性的超高压电网,用来将西部的电力输送到东部。这是世界上前所未有的,IEEE 的这篇报道进行了长篇介绍。
9、State of CSS 2019[21](英文)
针对全世界开发者的 CSS 调查。(@lanlejiudunle[22] 投稿)
10、业余无线电爱好者入门[23](中文)
如何在国内拥有一个个人的无线电台。
软件
1、syncthing[24]
多台电脑之间自动同步文件夹的工具,可以在命令行作为服务运行,也提供图形界面。
2、snailjs[25]
一个同时包括前端和后端的 Web 框架,采用 node + react,可以用作架构参考。
3、subsync[26]
有时,srt 字幕文件跟视频不同步,该工具可以自动让其同步。它的原理是,从视频里面检测出,何时有语音,然后将字幕与其对齐。
4、Zero server[27]
一个 JS 的后端框架,设计很有意思,每个文件(HTML / JSX / JS)自动成为可访问的路径,不需要其他任何配置。
5、pi-hole[28]
一个基于树莓派的家用 DNS 服务器,自带屏蔽广告功能。
6、dbdiagram.io[29]
制作数据库关系图的在线工具。(@linlicro[30] 投稿)
6、pagedraw[31]
一个浏览器里面的 UI 生成器,可以通过拖曳组件来设计 UI,然后自动生成 JSX 代码。
7、EditorConfig[32]
生成编辑器配置文件,以便整个团队有同样的编辑器设置。
8、Pika[33]
一个只能搜索 npm 上面的 ES6 模块的搜索引擎。
9、BashUpload[34]
一个可以从命令行上传文件的网站,文件上传后可以保存七天,其间可以无限次下载。
10、dead.io[35]
一个显示你是否还活着的 API,做法是它每隔一段时间向你发一封邮件,如果你连续多次没有回复,它就认为你已经死了。你可以通过这个 API,设置一些死了以后需要触发的动作。
11、colorise[36]
一个为黑白照片着色的在线服务。(@bikmanwei[37] 投稿)
12、dust3d[38]
开源的 3D 建模软件,适用于游戏开发,3D打印等。(@huxingyi[39] 投稿)
资源
1、React 教程[40]
一个 React 的30天开源教程。(@CharlesCCC[41] 投稿)
2、PC Assembly Language[42]
介绍汇编语言的本科生入门教材,有中文译本,免费下载。
3、ARM 汇编语言简介[43]
通过树莓派介绍 ARM 汇编语言的开源教材。
4、Visu Algo[44]
各种算法的动态演示网站。(@wyzlove[45] 投稿)
5、7DRL Challenge 2019[46]
这是一个地图探险类(rogue like)游戏的比赛,全世界开发者都可以将自己的作品上传,唯一的条件是该游戏必须是在七天内开发完成。目前,已经有100多个作品,各个平台都有,其中将近一半可以在浏览器里面运行,都可以免费下载。
6、name-suggestion-index[47]
这个项目收集各类商品的著名品牌,作为 OpenStreetMap 的自动拼写建议。比如,你在地图上要标识一家“名牌鞋专卖店”,它会自动提示59个牌子[48]的鞋子。
图片
1、建筑物的水平线和垂直线[49]
以前的建筑物追求庞大威严,因此更看重高度和垂直感,会有很多垂直线。但是,现在的建筑物越来越多的是水平线。下图左边是以前的建筑,右边是当代建筑。
2、纯 CSS 图片[50]
下面图片不是照片,而是纯粹用 CSS 生成的。(@beiyeqingteng[51] 投稿)
3、佛罗里达钓鱼比赛[52]
美国佛罗里达州每年举办出海钓鱼比赛。下图是1957年的比赛成果。
下图是80年代初的比赛成果。
最后是2007年。
可以看到,五十年间,鱼变得越来越小,种类也越来越少。
文摘
1、SQL 是最有价值的技能之一[53]
我的职业生涯学到了很多技能,但没有比 SQL 更有用的技术技能。由于以下几个原因,SQL 对我来说是最有价值的技能。
(1)SQL 适用很多方面。
作为产品经理,你需要从数据库看数据。知道如何使用 SQL 查看原始数据,可以为你节省大量的精力,无需向其他人询问数字。
作为一名工程师,SQL 通常可以让我更快地获取我想要的信息,而不需要用 Ruby 或 Python 编写脚本。Web 应用变得缓慢时,了解所执行的 SQL 以及优化它的方法是不可或缺的。
(2)SQL 只需学习它一次,且不需要重新学习。
过去20年,SQL 并没有真正改变。当然,有一些新的改进,但是比起其他语言,它算是毫无变化。是的,每隔几年 SQL 会有一个新的标准,偶尔会出现一些新东西,但 SQL 的基础知识是非常永久的。学习 SQL 一次将允许您在职业生涯中重复使用它,而无需重新学习。
不要误会我的意思,我喜欢学习新的东西,但我宁愿学习一些真正新的东西,而不仅仅是另一种完成同样任务的方法。
(3)SQL 很酷。
熟练掌握 SQL 人并不多,大多数开发者跳过它,很少有人真正了解 SQL,所以掌握 SQL 的人可能看起来比实际更像精英。过去在一家拥有数百名工程师的公司中,我每周会收到多个同样的请求,来自从初级工程师到主要工程师各种人:“嘿,你能帮忙写一个查询吗?”因为你很擅长这样的事情,可以帮助其他人。
2、ARM 公司的蓝图[54]
ARM 是一家芯片公司,但它自己不制造芯片,而是销售芯片的设计图纸。它是地球上最受欢迎的芯片公司,自1990年成立以来,根据它的图纸制造和销售的芯片高达1300亿片,苹果、华为、高通等巨头都购买 ARM 的设计,然后制造的每一块芯片都会向 ARM 支付版税。
2016年,孙正义的软银公司以320亿美元收购了 ARM。这是软银最大的收购,也是最昂贵的收购之一(比 ARM 的市值高出43%)。ARM 原来是一家很赚钱的公司,但是孙正义要求它将利润降至零,全力以赴扩展业务领域,争取收入的快速增长,而不是利润的增长。
收购之前的2015年,ARM 收入高达5.9亿英镑,利润5.39亿英镑。收购之后,2017年它的利润下降至3.25亿英镑,收入为13亿英镑。
ARM 重点关注的一个领域是汽车,它认为未来几年,越来越多的处理器将用于汽车。ARM 现在只占汽车芯片市场的20%份额。由于车内的电子设备越来越多,汽车制造商开始要求将多个控制电路做进一个芯片,以节省空间并消除电路的复杂性。随着自动驾驶汽车的出现,将需要更多的芯片。自动驾驶需要的计算能力是手机的10倍,这意味着每辆自动驾驶汽车,可能会让 ARM 收到十倍的特许费。ARM 预计,汽车芯片市场将变得与手机芯片市场一样大。
ARM 另一个重点领域是网络设备。ARM 认为世界将需要更多的网络设备,来有效地传送数据,并保证网络安全。ARM 在这个市场的份额从2011年的5%,已经增加到20%。
ARM 最弱的地方是服务器,这是一个几乎由英特尔垄断的市场,ARM 的份额不到1%。不过,去年11月,亚马逊宣布已经将 ARM 芯片用于服务器,开始提供云服务。主导云计算的巨型公司,希望能够有 ARM 服务器,这样就可以避免英特尔对他们索取垄断高价。
ARM 公司的一个障碍可能是开源芯片,任何企业都可以免费使用,从而放弃使用 ARM 芯片,比如 RISC-V 芯片就是开源的。
言论
1、
全周期工程师就是一个人负责完整的软件生命周期:设计,开发,测试,部署,操作和支持。
-- 《从全栈工程师到全周期工程师》[55]
2、
只有大型工业,才会让人口大量聚集在一小块地方,愿意不干净地挤在一起生活。
-- T.E.劳伦斯《智慧七柱》
3、
磁带储存数据有一个好处,要是断了,只要把两头再连起来,依然可以读取文件,只丢了断掉的那部分。
-- 《CERN 见闻》[56]
4、
互联网公司的时间是狗年。狗的一年,据说相当于人的七年。一家开张两年的互联网公司,就像经营了二十年的传统行业公司。
-- 某微信公号
5、
任何一种专门服务小企业的软件都很糟糕。对于大众软件来说,客户获取成本低,开发成本可以分散在数百万人身上,因此即使价格低,也有巨大的利润潜力。对于大企业软件而言,客户获取成本很高,但报酬也很高。对于小企业软件而言,客户获取成本仍然很昂贵(面对面的个人销售和售后支持),但销售价格仍然很低。
--《从零到一》[57]
References
[1]
ruanyf/weekly: https://github.com/ruanyf/weekly[2]
银行模仿科技公司: https://www.reuters.com/article/us-world-work-banks-idUSKBN1QS0BB[3]
霍金教授的纪念硬币: https://www.bbc.com/news/uk-england-cambridgeshire-47527505[4]
删除 Facebook: https://www.buzzfeednews.com/article/ryanmac/whatsapp-brian-acton-delete-facebook-stanford-lecture[5]
月球岩石: https://www.nytimes.com/2019/03/13/science/moon-rocks-nasa.html[6]
圆周率的最新记录: https://www.bbc.com/news/technology-47524760[7]
VR 电影: https://arstechnica.com/gaming/2019/03/its-time-to-start-caring-about-vr-cinema-and-sxsws-stunners-are-proof/[8]
苹果取消 AirPower: https://ifixit.org/blog/14883/what-finally-killed-airpower/[9]
GPS : https://www.nature.com/articles/d41586-019-01048-2[10]
欧洲议会: https://www.bbc.com/news/world-europe-47704345[11]
法国: http://www.sohu.com/a/303872041_115479[12]
抖音: https://www.eff.org/deeplinks/2019/03/why-are-creators-paying-tiktoks-mistake[13]
我的 Linux 桌面配置: https://hookrace.net/blog/linux-desktop-setup/[14]
我们不再需要 Chrome: https://redalemeden.com/blog/2019/we-need-chrome-no-more[15]
React Hooks 入门教程: https://testdriven.io/blog/react-hooks-primer/[16]
Kanban 与 Scrum 的比较: https://www.statista.com/statistics/673786/worldwide-software-development-survey-agile-development-continuous-integration-adoption/[17]
在特斯拉工作的感受: https://zhuanlan.zhihu.com/p/57993225[18]
LFU 算法的一种实现: https://ieftimov.com/when-why-least-frequently-used-cache-implementation-golang[19]
重新设计 UI 基本上是浪费时间: https://debugandrelease.blogspot.com/2019/03/ui-redesigns-are-mostly-waste-of-time.html[20]
中国超高压电网: https://spectrum.ieee.org/energy/the-smarter-grid/chinas-ambitious-plan-to-build-the-worlds-biggest-supergrid[21]
State of CSS 2019: https://stateofjs.typeform.com/to/TxDuh6[22]
lanlejiudunle: https://github.com/ruanyf/weekly/issues/329[23]
业余无线电爱好者入门: https://www.yuque.com/ham/base/iw8xi2[24]
syncthing: https://github.com/syncthing/syncthing[25]
snailjs: https://github.com/BrunoBernardino/snailjs[26]
subsync: https://github.com/smacke/subsync[27]
Zero server: https://zeroserver.io/[28]
pi-hole: https://github.com/pi-hole/pi-hole[29]
dbdiagram.io: https://dbdiagram.io/home[30]
linlicro: https://github.com/ruanyf/weekly/issues/318[31]
pagedraw: https://github.com/Pagedraw/pagedraw[32]
EditorConfig: https://editorconfig.org/[33]
Pika: https://www.pikapkg.com[34]
BashUpload: https://bashupload.com/[35]
dead.io: https://dead.io/[36]
colorise: https://colourise.sg/#colorize[37]
bikmanwei: https://github.com/ruanyf/weekly/issues/350[38]
dust3d: https://github.com/huxingyi/dust3d[39]
huxingyi: https://github.com/huxingyi[40]
React 教程: https://github.com/fullstackreact/30-days-of-react[41]
CharlesCCC: https://github.com/ruanyf/weekly/issues/332[42]
PC Assembly Language: https://pacman128.github.io/pcasm/[43]
ARM 汇编语言简介: http://bob.cs.sonoma.edu/IntroCompOrg-RPi/intro-co-rpi.html[44]
Visu Algo: https://visualgo.net/zh[45]
wyzlove: https://github.com/ruanyf/weekly/issues/351[46]
7DRL Challenge 2019: https://itch.io/jam/7drl-challenge-2019[47]
name-suggestion-index: https://github.com/osmlab/name-suggestion-index/[48]
59个牌子: http://osmlab.github.io/name-suggestion-index/brands/shop/shoes.html[49]
建筑物的水平线和垂直线: https://twitter.com/wrathofgnon/status/1095940340589092864/photo/1[50]
纯 CSS 图片: https://codepen.io/ivorjetski/pen/xMJoYO[51]
@beiyeqingteng: https://github.com/ruanyf/weekly/issues/276[52]
佛罗里达钓鱼比赛: https://sites.uw.edu/bevanseries/2018/02/28/data-is-in-the-eye-of-the-beholder/[53]
SQL 是最有价值的技能之一: http://www.craigkerstiens.com/2019/02/12/sql-most-valuable-skill/[54]
ARM 公司的蓝图: https://www.economist.com/business/2019/01/05/masayoshi-son-wants-arms-blueprints-to-power-all-tech[55]
《从全栈工程师到全周期工程师》: https://medium.com/@eminetto/full-stack-vs-full-cycle-developer-2a454942291b[56]
《CERN 见闻》: https://remysharp.com/2019/02/13/cern-day-2[57]
《从零到一》: https://news.ycombinator.com/item?id=19164389