栋的周评 | 第七回合(定期更新、动态、架构、云技术、算法、后端、前端、收听/收看、英文、书籍、影视、好歌、新奇)

开篇词

大家好!以下是我在 2020 年 2 月 10 日至 16 日的所见、所闻、所学和所悟。

现在,我把它们安利给你们。

 

定期更新

  • 原创专栏:
    • 栋的周评
    • 一文搞定
    • Linux 管理员手册:既简单又深刻
  • 官方授权:
    • Baeldung Java 周评
  • 符合官方许可:
    • Spring 官方指南
       

动态

从我的英文博客翻译并迁移了一些原创文章到《Linux 管理员手册:既简单又深刻》专栏里,并分别命名为

  • 42. 用户信息 - 编号 ID、组编号 Group ID、名称等等
  • 43. 文件权限 - 符号 & 数字模式,指定用户 ID、指定组 ID
  • 44. 文件权限- chown、chgrp、chmod、umask
  • 45. 组管理 - 创建、变更、删除
  • 46. 用户管理 - 创建、变更、删除
  • 47. 用户管理 - 登陆详情 / 登陆记录
  • 48. 用户管理 - SSH/Bash Shell 用户间沟通

帮尤金大神从他的 Baeldung Java Weekly 里翻译了一些文章到《Baeldung Java 周评》专栏里,并分别命名为

  • Baeldung Java 周评 | 第四十一弹(关键词:Java 路线图、Java 9 幕后花絮、嵌入式 MongoDB、注入领域对象、启动时验证配置、微服务经验教训、Redis 集群、惯性问题)
  • Baeldung Java 周评 | 第四十二弹(关键词:Spring Web 应用体系结构、Hibernate 应用及可重复读取、Java CPU和 PSU 发布版、Spring Sync 简介)
  • Baeldung Java 周评 | 第四十三弹(关键词:Spring Boot Actuator、Spring Boot 数据源、Spring Rest API Swagger、JVM 自适应堆)
  • Baeldung Java 周评 | 第四十四弹(关键词:Java 8 Optional 类、Java 10 null 值、Java 十个不知道、Java 泛型和擦除、Java 线程之外、乐观加锁)
  • Baeldung Java 周评 | 第四十五弹(关键词:JDK 9 的又一库?、从 Joda-Time 切回 java.time、乐观加锁实体建模策略的扩展、不可变性的帮助、打成 War 包)
  • Baeldung Java 周评 | 第四十六弹(关键词:Java 9 新特性、Java 时区处理指南、中断 Executor 任务、ExecutorService 提示和技巧、持续交付、微服务测试)
  • Baeldung Java 周评 | 第四十七弹(关键词:Java 服务器调优、Elasticsearch Groovy 客户端、Mockito 单元测试、Spring Boot 会话状态外部化)

在符合许可的前提下从 Spring 官方指南里翻译了一些文章到《Spring 官方指南》,并分别命名为:

  • SpringBoot 2 使用 MongoDB 访问数据
  • SpringBoot 2 通过 Spring MVC 服务 Web 内容
  • SpringBoot 2 将 JAR 应用转换成 WAR 应用
  • SpringBoot 2 创建异步方法
  • SpringBoot 2 处理表单提交
  • SpringBoot 2 构建应用
  • SpringBoot 2 借助 WebSocket 构建交互式 Web 应用
     

架构

左耳听风 | 程序员如何用技术变现(上/下)
收获:你把你的时间投资在哪些地方,就意味着你未来会走什么样的路。所以,利用好你的时间,投到一些有意义的地方吧。
评分:10
左耳听风 | Equifax 信息泄露(始末/看数据安全)
收获:Equifax 信息泄露始末、Apache Struts 漏洞相关、数据泄漏介绍以及历史回顾、数据泄漏攻击、专家建议、技术上的安全做法。
评分:10
左耳听风 | 何为技术领导力?
收获:技术重要吗?、什么是技术领导力?、拥有技术领导力的软件工程师。
评分:10
左耳听风 | 如何才能拥有技术领导力?
收获:技术领导者需要有良好的沟通能力、组织能力、驱动力、团队协作能力等等。
评分:10
左耳听风 | Go 语言,Docker 和新技术
收获:抢占先机的公司有更大的影响力、当需求引爆时公司或个人影响力就会形成比较大的护城河、通讯/金融行业对于 PaaS 平台的理解已经超过了互联网公司、Go 语言和 Docker 作为 PaaS 平台的关键技术前途是无限的。
评分:10
左耳听风 | 答疑解惑:渴望、热情和选择
收获:思考问题的出发点、思维方式、格局观、价值观、思维基因、编码能力很重要、技术视野核技术洞察力还有技术解决问题的能力更为重要。
评分:10
左耳听风 | 如何成为一个大家愿意追随的 Leader?
收获:做一个好的 Leader 真的不容易,你需要比大家强很多,你需要比大家付出更多;你需要容天下难容之事,你还需要保持热情和朝气;你需要带领团队守护理想,你还需要直面困难迎刃而上。
评分:10
查看《左耳听风》原文

许式伟的架构课 | 怎样成长为优秀的软件架构师?
收获:程序员的三个层次:搬砖工、工程师、架构师;优秀的架构师:掌控全局;架构相关图书:架构思维类、设计模式类、分布式系统架构设计类、重构类;该主题的两个脉络主线:从零开始构建整个信息世界、过程所用的重要架构思维范式以及如何将其运用于平常的工程实践中;如何成长为优秀的软件架构师:匠心、悟心。
评分:10
许式伟的架构课 | 架构设计的宏观视角
收获:为什么需要建立宏观视角?:如果把应用比作一座大厦,那么我们作为大厦的架构师,需要把大厦的结构搭建好,让程序员可以把砖填充进去,我们都知道,一个大厦的结构建的是否稳固,与地基密不可分。应用的基础架构:中央处理器+存储+一系列的输入输出设备;可编程性(计算类、I/O类、指令跳转类);开放设计的外部设备支持(电脑的 CPU 非常简洁,只读入和写出数据并对其进行计算。直接用机器指令太累,没人看懂以及没法维护)。完整的架构是怎样的?:服务端应用(业务架构、应用框架及各类基础库、中间件类基础软件/Nginx/MySQL、操作系统、编程语言、冯诺伊曼体系架构)、客户端应用(业务架构、跨平台应用框架及各类基础库、浏览器、HTML/XML+CSS+JS/WebAssembly、操作系统、编程语言、冯诺伊曼体系架构)。架构能力的提升,本质上是对你的知识脉络(全身经络)进行反复梳理与融会贯通的过程。
评分:10
查看《许式伟的架构课》原文

研发效率破局之道 | 为什么你要关注研发效能?
收获:研发效能的完整定义应该是:团队能够持续地为用户产生有效价值的效率(效性/Effectiveness、效率/Efficiency、可持续性/Sustainability。能否长期、高效地开发出有价值的产品)。软件开发的灵活性决定了研发效能提升的困难性。研发效能的提高,需要整个公司在研发流程、工程方法、个人效能和文化管理等方面进行精心设计。研发的高效能:研发效能、研发流程、工程方法、个人效能、管理和文化。着重 Why,深入了解效能实践背后的原理,给出 How,也就是具体的实践。
评分:10
查看《研发效率破局之道》原文

MySQL 实战 | 普通索引与唯一索引
收获:普通索引和唯一索引的选择、数据的查询和更新过程、change buffer 的机制以及应用场景、索引选择的实践。
评分:10
MySQL 实战 | 如何选择索引
收获:索引统计的更新机制、优化器存在选错索引的可能性、索引统计信息不准确导致的问题、在应用端用 force index 来强行指定索引。
评分:10
MySQL 实战 | 给字符串加索引
收获:如何为邮箱字段建立合理的索引?、前缀索引对覆盖索引的影响、其他处理方式、字符串字段创建索引的几种方式。
评分:10
MySQL 实战 | InnoDB 脏页的控制策略
收获:WAL 概念、刷脏页操作和执行时机、随机写转换成顺序写以提升数据库性能、控制刷脏页的方法和对应的监控方式。
评分:10
MySQL 实战 | 日志和索引常见问题
收获:日志和索引的相关问题、MySQL 内部处理命令时的三种选择。
评分:10
MySQL 实战 | binlog 和 redo log 的写入机制
收获:怎么保证 redo log 和 binlog 是完整的、对 crash-safe 概念的清晰理解。
评分:10
MySQL 实战 | 大查询
收获:MySQL 的查询结果、发送给客户端的过程、边算边发的逻辑、不在 server 端保存完整的结果集、会堵住 MySQL 查询过程但不会打爆内存、InnoDB 引擎内部由于淘汰策略的存在所以大查询不会导致内存暴涨、InnoDB 对 LRU 算法做的改进使冷数据全表扫描对 Buffer Pool 的影响可控、业务高峰期还是不能在主库执行全表扫描。
评分:10
查看《MySQL 实战》原文
 

云技术

AWS | 开发助理 | S3 权限
收获:默认情况下私有化所有的桶,其所有者才可访问。所有者可以通过 S3 基于资源的策略来进行授权访问或通过一个传统的 IAM 策略来进行授权访问。S3 的两种基于资源的策略:桶策略、S3 访问控制列表(ACL)。S3 IAM 策略被附加至用户、组以及角色:IAM 策略不被附加到桶或对象、匿名用户无法进行授权访问、JSON 形式编写并附加至一个 IAM 用户、组或角色。可用来指定 S3 资源策略的高级方法:指定特定桶(arn:aws:s3:::桶名称)、指定特定对象(arn:aws:s3:::桶名称/键名称)、指定桶里的所有对象(arn:aws:s3:::桶名称/)、指定所有桶(arn:aws:s3:::)、在策略中使用变量(arn:aws:s3:::公司桶名称/developers/${aws:用户名}/*)。桶策略:附加至桶的策略、策略中的所有权限被应用至桶中的所有对象,除了由非桶所有者的外部用户创建的对象、可以用来进行 IAM 用户或其他 AWS 账户的授权访问、指定了桶用户允许或禁止的操作(匿名用户进行授权访问、指定可以进行如 PUT 或 DELETE 等特定操作的用户、限制基于 IP 地址的访问)。S3 访问控制列表:可与桶以及对象共用、无法拒绝或授予条件式权限、对象 ACL 的使用场景(管控非桶所有者所有的对象访问、管控对象级别的权限以及对象区分的权限、允许外部账户来管控对象策略)。罐装式 ACL:公有读(允许向外共享对象)、aws-exec-read(允许 EC2 从 S3 获取 AMI 捆绑)、XML 形式编写。
评分:9
AWS | 开发助理 | S3 加密
收获:两种保护信息的方式:中途/客户端加密(使用客户端主键、使用 AWS KMS 管理的客户主键/CMK)、静止加密(S3 管理的键/SSE-S3、KMS 管理的键/SSE-KMS、客户提供的键/SSE-C)。
评分:9
AWS | 开发助理 | S3 对象版本管控
收获:S3 版本控制:默认情况所有桶和对象禁用版本控制、版本控制一旦启用,其只能被暂停而不能被完全禁用、暂停版本控制只会防止创建新版本、所有现有版本的对象将保持它们的老版本、版本控制只能在桶级别进行设置并被应用至桶内的所有对象、生命周期策略可被应用至对象的特定版本。启用 S3 版本控制:现有对象将保持不变、新增对象将自动地被赋予唯一的版本编号、每个新版本将被当成一个全新的对象进行计费。删除版本控制的对象:标准工作流(只对最新版本做删除标记、直接访问对象时返回 404、依然可以通过指定特定版本号来获取指定版本的对象)、永久删除一个版本(发送删除请求时指定版本号)。恢复版本控制的对象:删除当前版本(提取先前版本,直到你想要的版本为止)、复制旧版本(将对象先前版本复制到相同桶、以新版方式将其添加至桶、复制的版本变成当前版本、所有对象的版本被预留)。
评分:10
AWS | 开发助理 | S3 对象类型与冰河存储
收获:存储类型:标准(通用,所有用途的存储、默认存储选项、11 个 9 持久性、4 个 9 可用性、最昂贵的存储类型)、低冗余存储(RRS:非关键,可再生的对象、4 个 9 持久性、4 个 9 可用性、比标准存储类型便宜些)、不常访问(S3-IA:标准-IA、单空间-IA、不常访问的,但必须能立即可用的对象、11 个 9 持久性、3 个 9 可用性、比标准和低冗余存储类型便宜些)、冰河(可通过生命周期管理来切换至其中、长期归档的存储,不适合用来做备份、可能需要花上数小时来提取对象、11 个 9 持久性、最便宜的存储类型,成本非常低、三种提取数据的级别:加急,1-5 分钟;标准,3-5 小时;大批量:5-12 小时)。
评分:10
AWS | 开发助理 | S3 生命周期策略
收获:默认情况下,禁用桶/对象的生命周期。可定制以适应公司的数据保存策略。很好地用于对象存储的自动化管理以达成更高的成本效益。可通过结合版本控制来很好地创建归档和备份方案。
评分:9
AWS | 开发助理 | S3 部署静态网站
收获:提供了低成本/高可靠的静态网站部署服务。包含 HTML/CSS 以及 JS 文件还有图片和字体。创建静态网站时可指定首页以及错误文件。提供一个网站的唯一 URL 端点,其格式取决于所处区域。Route 53 可映射人类可读的域名至部署静态网站的桶,特别适合于 DNS 故障转移解决方案。
评分:9
AWS | 开发助理 | S3 启用跨站资源共享(CORS)
收获:允许某个域名里的 Web 应用访问另一个域名里的资源。通常指的是某个桶里所部署的 Web 应用可以访问另一个桶里的资源。每个桶都能设置 CORS。
评分:8
AWS | 开发助理 | DynamoDB 概述
收获:核心特性:完全可控的 NoSQL 数据库、一致的和快速的性能、方便搭建并与其他服务进行通信、静止加密可选加密。热门用例(物联网:元数据存储、游戏:会话信息存储、移动端:用户资料存储)。费用:核心收费部分(额定写吞吐率、额定读吞吐率、索引数据存储)、其他收费因素(保留容量、自动伸缩、全局表:复制写容量单元、按需备份:按月每 GB 存储收费、按需存储:按每 GB 恢复收费、加速器:按每小时使用实例收费、流:按每 100k 读收费)。
评分:9
AWS | 开发助理 | DynamoDB 核心概念
收获:分区键:每张表都要求有一个分区键、条目的分区键也被称作哈希属性、分区键属性必须为标量,只能存放一个值、在一个内部哈希函数里使用分区键以决定在哪存放分区数据。排序键:表不要求有排序键、条目的排序键也被称作范围属性、范围键必须为标量,只能存放一个值、在使用分区键来决定存入的分区数据后,排序键被用来对分区中的数据进行排序操作。主键:简单主键,只有分区键、组合主键,分区键和排序键。条目:一组在表中其他条目间可被唯一标识的一组属性、每个条目是一或多个属性并且可被想像成关系型数据库中的行。属性:基本数据元素,于其他数据库中的资源以及列类似。
评分:9
AWS | 开发助理 | DynamoDB 额定吞吐率
收获:一个应用能够从一张表或索引消费的最大容量。当吞吐率到达上限时,请求将被阻塞。可以同时使用自动伸缩来避免被阻塞(按需提升容量、周期性降低容量)。根据读和写容量单元来测量。额定吞吐率被设置于表级别但被拆分和消费于分区层。意味在其他分区正常运作的情况下特定分区可能缺少需要的容量。分区:在分区中存储数据、分区为存储表的 SSD 分配并自动在多空间进行复制、分区数量取决于表吞吐率容量以及现有分区的存储大小。读:读容量单元被消费的原因(使用 GetItem 和 BatchGetItem 操作时、使用 Query 操作时、使用 Scan 操作时)、一个读容量单元等于一个 4KB 或以下大小的条目的每秒读操作(强一致性)、单个条目的读操作大小总是进位至距离 4KB 最近的大小、最终一致性读只需要读容量单元一半的大小。
评分:8
AWS | 开发助理 | DynamoDB 读操作
收获:GetItem:根据条目的主键来高效地从一张表中读取单个条目。BatchGetItem:可从一或多张表读取至 100 个条目(请求中的每个条目均使用 GetItem 操作来处理、每个条目都独立地进行进位操作以供读容量单元使用)。Query:以相同的分区键值来读取条目、同时,我们能用排序键来高效地对条目进行排序操作、所有返回的条目均被当作单个读操作,计算所有条目总大小并进位至下一个 4KB 边界。Scan:读一个表中的所有条目、考虑的是条目评估的大小,而不是其所返回的条目的发小。最终一致性和强一致性读:最终一致性不保证获取的是当前写入表中的数据、强一致性保证获取的是当前写入的数据。
评分:9
AWS | 开发助理 | DynamoDB 局部与全局的二级索引
收获:二级索引:允许高效地查询非主键属性、每个二级索引只关联一张表、表可以有多个二级索引、自动维护二级索引,索引根据表的变化而变化。本地二级索引(LSI):为表提供了排序键的选择、LSI 主键为组合键(主键和排序键)、每个本地二级索引可作为另一个排序键、每个 LSI 自动与基表保持同步、本地二级索引的读和写容量窃取自基表的容量、LSI 必须在建表时创建。全局二级索引:每个全局二级索引可作为另一种方式以查询使用了不同分区以及不同排序键的信息、类似于 LSI,每个 GSI 自动与基表保持同步、无法进行强一致性读、不与主表共用读和写容量,其拥有自己的 WCU 和 RCU 额定吞吐量、可在建表后创建 GSI。
评分:9
AWS | 开发助理 | DynamoDB 条件写与原子计数器
收获:写:WCU 在增/改/删时被消费、一个 WCU 等于一个 1KB 或以下大小的条目的每秒写操作、总是进位至距离 KB 最近的大小、多个条目要求多个 WCU。原子计数器:写是有序的以至于可以对现有值进行递增操作以实现类似于网站访问记录之类的用途,失败的操作可以被重试,但重试会产生条目被更新两次的风险并且可能出现少算或多算的情况。条件写:当写条件成功时可以使用条件写来进行额外控制、只有当正在写入的条目属性符合一或多个预期的条件时才成功。
评分:9
AWS | 开发助理 | DynamoDB 的常见错误与限制
收获:ThrottlingException:可能是在快速地尝试着对表进行增、删或改操作。ProvisionedThroughputExceededException:表的吞吐量不足以支撑当前的读及写操作数量。ResourceNotFoundException:请求的表不存在,或正在创建中的状态。限制:二级索引、额定吞吐率、表、条目与属性、特定 API 限制。
评分:9
AWS | 开发助理 | DynamoDB 加速器(DAX)
收获:内存加速器:被设计用于伸缩和性能、毫秒级响应、某些特定场景会要求微秒级响应、为最终一致性数据提供快速的响应时间,高访问量的应用可从加速器的高速内存性能获益、加速器的应用场景(需要有响应时间尽可能最快的读、一些需要频繁读取的小部分条目、读密集型,成本敏感、针对大量数据集的重复读需求)。
评分:10
AWS | 开发助理 | DynamoDB 节流问题
收获:根据每个条目的分区键来在多个分区中对其进行存储、每个分区与表共用额定读(RCU)/写(WCU)吞吐率、当请求发出时,其路由至正确的分区以获取数据,并且被请求的分区容量决定了是允许或阻塞(拒绝)该请求、一些阻塞是应该被应用预测并处理的、导致阻塞的原因(表分区接收到不可数的请求量,热分区。容量限制:表本身不具有足够的容量来服务多个分区上的请求)、阻塞过多的结果(在应用没有重试写的情况下丢失数据。过度尝试写导致的慢处理。在写被阻塞及读未被阻塞时数据可能会过期)。解决阻塞问题:逐步提升表的额定容量、确保审查表的全局二级索引容量,索引阻塞是表阻塞的两倍、实现错误重试以及指数退避 - 该技巧在重试之间使用逐渐延长等待时间来应对连续的错误响应以帮助提升应用的可靠度,亚马逊云 SDK 内置了该逻辑,当使用其他 SDK 时请考虑手工对其进行实现、尽可能均匀地分发读和写操作至多个表中、实现一个缓存方案,类似于 DAX 或 Elasticache。分区底线:只提供 3000 RCU 和 1000 WCU、只持有 10 GB 数据、不可被删除,哪怕容量或存储的数据减少了、拆分后,其当前吞吐率和数据一分为二,新建两个分区、并非所有分区的额定吞吐率都是一样的。
评分:10
 

算法

本周无
查看《算法面试通关》原文
 

后端

本周无
 

前端

本周无
 

收听/收看

得到学习计划 | 高考复习节奏被打乱,怎么办?
收获:八条战术打法:1. 严格要求自己按照规划的作息时间起居、学习;2. 把省出来的上学、放学路上的时间,用于户外体育活动,增强体质,提高免疫力;3. 把各科学习时间与所在省份统一安排的高考时间吻合,让自己的大脑开始逐渐适应不同科目考试时段,并 “培育” 大脑兴奋点;4. 按照规划学习时,一定要先收起手机等移动通讯工具;5. 开始做一套题目(试卷)前,不要急于对答案;6. 万一此次停课时间较长,可以独立研究一下所在省市的历届高考真题;7. 每天关心一下疫情状况和收看新闻也需要排上学习议程;8. 组建在线学习小组。
评分:9
得到学习计划 | 如何打造一个反派角色?
收获:如果你成功的话,观众会和你的主人公同喜同悲,跟随他走到天涯海角。也就是说:一个电影成功的要点是要观众与主人公共情。传播学心理实验的两个发现:发现一(观众对于影视角色道德观的判断,是随着对人物的好恶而变化的。也就是说:如果你喜欢一个角色,你对他不道德行为的容忍度会增加)、发现二(“相对道德观”:尽管观众不赞成坏主人公的行为,但是当他周围的环境和人物比他更坏、更不道德时,观众会选择支持主人公)。英雄和恶魔只是一线之隔,道德和罪恶在于一念之差。我们和世界可以相互毁灭,也可以相互成就。因为最终成就一个人的,并不是善或恶的本性,而是在善事和恶事之间,人做出的一次次选择。
评分:10
得到学习计划 | 了解电影不一样的意义,人间值得
收获:电影不仅仅是一种艺术形态,也是一个让人梦想成真的地方。可能这就是为什么李安会说,他在拍电影的时候,反而觉得电影里的世界比现实更真实。除了重构现实,电影在一些重大的历史节点,也发挥了非常重要的社会作用。这些导演的努力也换来了想要的结果,美国民众形成了一股集体意识,那就是美国正在参与一场正义之战。电影哪里仅仅是一种艺术形式,它在现代史上承担的东西太多了,从个人的希望,到一个国家的团结,我们每多了解一点,就会觉得人间值得。
评分:9
得到学习计划 | 音乐是怎么变成免费午餐的
收获:真正从事网络盗版的团队还很容易脱罪。而下载盗版音乐,则是一代人的集体行为。这也正是盗版很难追罪的原因。MP3 技术超前于它所在的时代,它天生适合音乐产业,却长期被音乐行业打压,在市场上所获甚少。直到互联网时代来临,它才被文件共享亚文化团体发现,并广泛使用,但却成了盗版音乐的代名词。
评分:8
得到学习计划 | 为什么越理解人性,就越能解决问题?
收获:越能理解人性,就越能解决商业问题:《道德与市场》、《天主教世界》。越能理解人性,越能解决技术问题:《俞军产品方法论》、《增长思维 30 讲》。越能理解人性,越能解决社会问题:《警察:街角政治家》。
评分:8
得到学习计划 | 家庭背景声 - 关键时刻演讲 - 总序
收获:《我们将战斗到底》、《在阵亡将士葬礼上的演讲》、《申辩》、《不自由,毋宁死》、《葛底斯堡演说》、《我有一个梦想》、《支持 “物种起源” 的学说》、《论不合作》、《探索的动机》、《在巴黎索邦代表大会的致辞》。
评分:8
得到学习计划 | 家庭背景声 - 宽容 - 总序
收获:《先驱者》、《苏格拉底》、《伊拉斯谟》、《拉伯雷》、《布鲁诺》、《斯宾诺莎》、《伏尔泰》、《莱辛》、《托马斯潘恩》、《宽容的出路》。
评分:8
得到学习计划 | 家庭背景声 - 傅雷家书 - 总序
收获:《一九五四年一月十八日至十九日晚:远行》、《一九五四年十月二日:正视人生的低调》、《一九五五年一月二十六日:赤子之心》、《一九五五年五月八日:对手,镜子与伙伴》、《一九五六年二月二十九日夜:伟大的心,真诚的爱》、《一九五九年十月一日:爱国家》、《一九六〇年八月二十九日:冷静、容忍与爱情》、《一九六一年九月十四日:父母心》、《一九六二年三月八日:恋爱中的博敏》、《一九六五年二月二十日:伟大音乐与中国传统》。
评分:9
得到学习计划 | 家庭背景声 - 哈佛毕业演讲 - 推荐序
收获:《倾听内心的低语》、《未来并非在劫难逃》、《永远别向复杂低头》。
评分:9
得到学习计划 | 家庭背景声 - 西方名家经典散文 - 罗振宇推荐序
收获:最经典的作品,最优秀的声音表演者。
评分:8

逻辑思维第 110 期 | 大门口的野蛮人
收获:人类的繁荣到底是怎么来的、日本经济衰落之谜、老而不死是为贼、大航海精神何在、迈阿密:靠罪犯和流浪汉繁荣起来的都市、创新:低素质者与高素质者的双人舞、患上 “日本病” 的香港何去何从。
评分:9

卖桃者说第 45 期 | 深入浅出数据库索引
收获:索引常见模型、InnoDB 的索引模型、索引维护。
评分:10
卖桃者说第 46 期 | 极客时间手记一:产品之难
收获:你有你的计划,世界自有计划。产品之难,难于上青天。发挥自己的长板,让别人补足你的短板,这就是现代的木桶理论。做到产品的确定性,需要付出巨大的努力。只有这样,你可能把事情做对、做好,最终将产品呈现到大众的眼前。
评分:10
卖桃者说第 47 期 | 极客时间手记二:我们要做什么样的产品
收获:第一、精益现有业务。第二、需要做一款真正意义上的互联网产品。
评分:8
卖桃者说第 48 期 | 极客时间手记三:找到合适的人
收获:3F 原则:Friend / 朋友、Family / 家人、Fool / 傻子。构建自己的影响力和资源池:1. 多输出、多分享;2. 帮助别人。团队的组织结构:1. 大公司团队构成;成长型公司团队构建;3. 创业公司团队构建。
评分:9
卖桃者说第 49 期 | 极客时间手记四:构建技术基础服务
收获:1. 根基:技术基础服务(流畅、稳定)。2. 如何构建基础服务(规划产品要有长远的打算、成熟的技术要尽快引入、考虑同类型技术在不同应用场景下的使用、要重构代码,而不是重写代码、要把变化集中在某个领域、要做好 Code Review 和研发计划)。3. 大公司和创业公司的不同(基础服务、业务系统、使用的编程语言、各个终端技术、本地只搭建测试环境、生产服务都放公有云)。
评分:10
卖桃者说第 50 期 | 风险管理:不能盲目乐观,凡事都应该有B计划
收获:什么是风险管理?:风险 = 损失 x 发生概率、风险管理重要吗?:被动应对(风险已经发生,造成了问题才被动应对)、有备无患(事先制定好风险发生后的补救方案,但没有任何防范措施)、防患未然(对可能的风险做出防范,并把风险防范作为项目任务的一部分)、如何做好风险管理?:1. 培养风险意识(项目中的任务,不能盲目乐观,都思考一下它最坏的结果是什么,如果最坏的结果不能接受,就说明要有个 B 计划,考虑风险管理)、2. 管理风险(第一步:风险识别,识别可能的风险、第二步:风险量化,对风险进行评估量化、第三步:应对计划,对风险制定应对策略、第四步:风险监控,对风险进行监控预警)。
评分:9
卖桃者说第 51 期 | 极客时间手记五:产品的构建和发布(上)
收获:1. 从 MVP 到 PMF。2. 万丈高楼平地起,盘龙卧虎高山齐。3. 产品发布了,什么都没有发生。
评分:9

极客新闻 | 姚期智:工业界有望反向助力 AI 理论突破
收获:需要整合大数据、自然语言分析、图像识别等诸多人工智能技术,本质上是将已有的知识点按照需求进行整合。
评分:9
极客新闻 | QQ 空间已在生产环境中使用 QUIC 协议
收获:谷歌通过大规模的性能分析访问,相较于 TCP 而言,QUIC 的性能有了真正的进步。而与 HTTP/2 相比,QUIC 协议弃用了 TCP 而改用了 HTTP/2 在传输层所遇到的一些性能瓶颈,同时又具有 HTTP/2 的特性。目前的劣势是浏览器支持度比较差。
评分:7
极客新闻 | 算法比数据更重要,AlphaGo Zero 完胜旧版
收获:最大的突破在于实现了 “白板理论”。婴儿是一块白板,可以通过后天学习和训练来提高智力。人工智能(AI)的先驱图灵认为,只要能用机器制造一个类似于小孩的 AI,然后加以训练,就能得到一个近似成人智力,甚至超越人类智力的 AI。而自学成才的 AlphaGo Zero 正是实现了这一理论。
评分:10
极客新闻 | Spring Data Kay 发布最新正式版
收获:同时发布的还有 Spring for Apache Kafka 2.0,也是以 Spring 5 和 Java 8 为基准,支持事务、Kafka Streams API,并更新了 Kafka 客户端,能够更好地支持测试,改进了错误处理方式。
评分:9
极客新闻 | SaaS 与 IaaS 推动全球公有云收入增长
收获:到 2021 年有 70% 的公有云服务收入将被前 10 大公有云厂商所主导。在 IaaS 方面,亚马逊、微软和阿里巴巴已经占据强有力的市场地位。
评分:8
极客新闻 | Docker 宣布将支持 Kubernetes
收获:Docker 容器被称为容器运行时的事实标准,但在容器编排上,Kubernetes、Mesos 和来自 Docker 官方的 DockerSwarm 一直处于竞争状态,而来自谷歌的 Kubernetes 以其高效、简便、高水平的可移植性等优势占领了绝大部分市场。。
评分:8
极客新闻 | 谷歌发布 Android Instant Apps SDK 1.1
收获:当用户需要使用或浏览某个未安装的应用时,系统可以自动加载其中的内容并打开它。在这个过程中,用户不需要安装这个应用,这在很大程度上方便了用户,也为手机省去了安装所需的内存。
评分:8

每日一课 | C++ 中如何深入理解左值、右值与右值引用?
收获:右值:xvalue(Expiring Value,将亡值)、prvalue(Pure Right Value、纯右值);纯右值:函数返回的临时变量值、字面量值、lambda 表达式;将亡值:在 C++ 版本中新引入的跟右值引用相关的表达式类型;使用基于右值引用的语义转移过程:省去重新分配内存空间的过程,可以在一定条件下提升应用的整体运行效率;RVO 与 NRVO:编译器厂商会同时使用的编译器优化技术,以对函数的对象返回值类型进行临时值上的优化;常量左值类型(const T&)的好处:可以被进行取地址操作;将亡值:资源能够被重新使用的对象(“std::move” 函数的返回值;返回值被标记为右值引用(&&)的函数)。
评分:8
每日一课 | 如何快速设计出一套实用的监控系统?
收获:要监控的层面:基础设施(硬件、网络、操作系统/容器、主机)、中间件和公共服务(JVM、MySQL、Redis、Tomcat、Nginx)、应用服务(服务状态、服务错误数、调用链、订单状态类、耗时类、实时统计类)。
评分:10
每日一课 | C++11 中简单好用的新语法特性有哪些?
收获:auto 关键字(有时会出 BUG):类型占位符。decltype 关键字:匿名枚举类、匿名结构体、匿名联合体、增强模版泛型的能力。基于范围的 for 循环:冒号前(用于进行迭代的具体变量)、冒号后(将要被迭代值的具体范围)。其他好用特性:lambda 表达式、 constexpr 关键字、智能指针。
评分:8
每日一课 | 如何从容地应对生产事故?
收获:一、事故洞察;二、事故分析;三、事故升级;四、事故应对;五、事故复盘;六、完善方案池;七、故障演练;解决事故的参与者。
评分:10
每日一课 | 如何利用有效的资源扛住 618 大促流量?
收获:梳理清楚部署及调用情况、外网网关机房部署比例、对接口调用情况进行梳理、接口重要程度识别、识别业务风险点(制约性能上限)、性能测试报告、分层优化。
评分:10
每日一课 | TLS1.3 原理以及在 Nginx 上的应用
收获:椭圆曲 DH 密钥交换、魏尔斯特拉斯椭圆函数、蒙哥马利曲线。
评分:8
每日一课 | 究竟要不要使用 React Hooks?
收获:Class、fx 组件 + React Hooks(解决代码复用问题:高阶组件、函数作为子组件。最大的好处:关注分离、代码复用)。
评分:8
查看《每日一课》原文

编辑训练营 | 为什么说编辑要重视文字规范?
收获:文字规范:“小” 错误,有 “大” 成本。对症下药,才能真正解决问题:1. 不拒绝问题,才能进一步解决问题、2. 如何改掉 “粗心” 的毛病,提升文字质量?、你可能不是 “粗心”,而是知识体系有欠缺、好编辑,应该有文字洁癖;参考资料:《标签符号用法》、《出版物上数字用法》、《新华字典》、《图书编辑校对实用手册》、《作者编辑常用标准及规范》。
评分:10
编辑训练营 | 如何发现并纠正文章语病?
收获:一、何谓病句及正确句子的语法结构。二、病句出现的常见雷区。三、最常见的四大病句类型:1. 语序不当(常发于:并列定语与宾语)(让长定于先行、短定语紧贴宾语)、2. 结构混乱(常发于:主语、谓语、状语、宾语)(抽离主句中的主语,将该主语套在每个半句上,如果半句中缺失主语不能与抽离的主语吻合,就一定产生了主语的偷换)(谓有否,宾状不可否);3. 成分残缺(常发于:代词、宾语)或赘余(常发于:代词、介词)(砍掉句子中所有的定、状、补及各种从句,保留下来的主、谓、(宾)是否能独立成句,如果不能,则一定出现了成分残缺)(先定位清楚补足语内(比如例子中的后半句)是否包含主、谓、(宾)等成分)(只有当 ”对于“ 接定于成分或单独的主语内容,那么才是正确的语境);4. 搭配、指代不当(常发于:介词、动词、代词、关联词)。四、语病 Checklist(因此,为了更好地帮你记忆正确的语法结构,我也为你建立了一个简单的 ”语病 Checklist“,如果你的句子出现了以下任一问题,那基本上可以断定 80% 以上的可能性会是病句);长句子系列;用词系列。五、培养你的语感。
评分:8
编辑训练营 | 到底该怎么理解技术采用生命周期?
收获:技术采用生命周期:第一类人群称为创新者、第二类人群称为早期采用者、第三类人群称为早期大众、第四类人群称为晚期大众、第五类人群称为落后者。跨越鸿沟。衡量方法:InfoQ 的可以做些什么(报道一些成功案例、解决方案,也可以多做一些深入浅出的文章帮助大家入门)、怎么才能知道技术发展到了哪个阶段(借助 QCon、ArchSummit 大会,与 300 为不同行业,不同领域,不同规模公司的主要技术负责人沟通,了解他们对于目前我们所关注技术的采用情况。对沟通情况数据进行整理,计算对应技术的采用率,并根据采用率数据,把相关技术对应到技术采用生命周期中。与行业关键意见领袖沟通,对于上述客观计算出的技术采用生命周期曲线做主观层面的微调)。推荐书籍:《创新的扩散》
评分:8
编辑训练营 | 如何取一个好的文章标题?
收获:标题是文章的第一句话,它决定用户是否对你产生兴趣。什么是好标题?:好的标题应该是 “真实可信” 的、具有 “冲突感” 的、能和用户产生 “共鸣” 的。怎么取一个好标题?:1. 巧用数字,把复杂的概念具像化、2. 设置悬念,引发用户好奇心、3. 扩大外沿,增加潜在受众群体、4. 移动端、Web 端,相同内容两种标题。当在微信公众号等移动端展示时,标题的冲突性很受用户喜欢(但现在已经不好使了)。好标题三大要素总结:真实可信、营造冲突感、引发共鸣。
评分:8
编辑训练营 | 怎么才能写出一篇好新闻?
收获:什么是好新闻:用概括的叙述方式,以简明扼要的文字,迅速及时地报道新近发生的、有价值的事实,使一定人群了解。好新闻的三个关键部分:概括的叙述方式、简明扼要的文字(谁、何时、何地、何事、为何);迅速及时地报道新近发生的事(快是王道);有价值的事实,使一定人群了解(要帮助用户去甄选、判别值得他们关注的新闻)。养成刷线索的习惯的几个维度:Hacker News、Reddit 等聚合类线索源,当天的重磅、热点事件;你所关注公司、人的社交媒体;你所负责技术领域的一些公司技术博客、技术网站或者开发者社区;三个关键点:文字简洁(新闻事件补充背景信息,从而让信息更为丰满)、快(想要比别人快,就要比别人勤奋)、有价值(提升技术敏感度,多找专家去采访、交流、吃饭聊天)。如何写一个好的正文:提出三个用户可能产生的疑惑,同时确保你已经就这些疑惑提供增量信息。
评分:9
编辑训练营 | 和专家沟通出现冲突时,我该怎么办?
收获:沟通不畅,很可能只是准备不足?:首先,关于目的、其次,关于沟通对象、再次,准备内容你预设场景了吗?、最后,自己的状态(你能做到每次沟通前都 “重启” 自己的状态吗?)。不会倾听就不会沟通,太夸张了吧?:对他人真心好奇,就这么简单。用数据说话,到底有多厉害?:你有一个论点,那就要有几个论据来支撑,最好的论据当然是数据和事实了。坦诚沟通,能解决所有问题吗?:坦诚沟通不一定能解决所有的问题,但这是通往解决所有问题的唯一路径。
评分:9
编辑训练营 | 如何快速找到各个领域的专家?
收获:高效的搜索技巧:Google hacking(1. 搜索指定网站的内容、2. 搜索特定类型的文档、3. 对关键词进行逻辑运算,以找到更精确的结果)、最常用的三种 Google hacking 技巧(1. 通过相关参数来匹配具体需求、2. 用逻辑运算来进行关键词组合、3. 特殊符号)、通过哪些渠道找讲师(1. 技术会议、现在技术论坛(meetup);2. 技术媒体 / 博客 / 公众号文章作者 / 技术社区;3. 技术图书作者或译者;4. GitHub 开源项目贡献者;5. 微博等社交网站;)、如何与意向讲师取得联系(1. 多从个人主页找信息;2. 尽可能地多搜集和这个老师相关的资料,然后组合多个关键词进一步检索;3. 留意会议的演讲视频或者演讲文稿的开头和结尾;4. 擅用其他查询工具;5. 猜测微信 ID;6. 进一步确认是否有共同好友)。
评分:8
查看《编辑训练营》原文
 

英文

导师盒 | 危机管理 - 埃里克·德岑霍尔
收获:由于大众认知的偏差,你无法满足所有人,只要照顾好那 18% 与你产生共鸣的市场足矣。
评分:9
导师盒 | Instagram 高级营销 - 丹·弗莱什曼
收获:发布高质量内容:业务相关、符合实际情况、让读者愉悦;关注:常人觉得有趣的内容(非政治类、非种族歧主义类)、看竞争对手在做的事、看其他人在做的事。
评分:9
导师盒 | 三个能即时增加网站任意页面的参与度的高级技巧 - 亚历克斯·莫尔
收获:技巧一、有一个好的标题:为什么访客需要看这个界面:顶部显示能给终端用户带去的好处、以访客为中心、处在顶部并居中、两个重要的好处(更优惠、更快)、五至十二个单词(包含数字信息)。技巧二、进行 A/B 测试,但别被它骗了:A/B 测试是一个工具,不是一个信仰、主要的问题是显著性差异、太多其他变数以及一些工具的非正规归纳方式、比没有信息还糟糕的是相信误导类信息、可能有用的代替方法(A/A-B/B 测试)。技巧三、不要强迫方可做决定:避免交叉设计,这会带来决策疲劳、大多数人不是因为他们不喜欢你的产品而不去购买,而是因为拖延症、避免两列布局、使其易用并可用(不是扫描或抓取信息)。
评分:10
导师盒 | 病毒视频剖析 - 泰·洛佩兹
收获:主要故事主题(M.S.T.):学的越多,赚的越多。发布的信息需要有 70%(可预测) 与 MST 一致,其余的 30%(不可预测) 可以随机一些,如果一切都可预测,那将很乏味。为 MST(吸引眼球) 选择一个行业(收益):UFC/拳击=Underdog、Tai Lopez 教育=学得多赚得多、Rock Entertainment=Loveble Big Strong Guy、PewDiePie Video Game=Joker/Crazy。欧拉回路命运:赞扬、业余时做的事情、敌人的补充、成长的环境、个性测试。
评分:10
导师盒 | 用 Snapchat 来推广公司业务 - 克里斯·瑞克特
收获:每天发布到 Snapshot 的内容将成为其故事的一部分。故事可以使人相信你说的话。由于大家在默认情况下都是静音查看每个消息,所以如果发布的是视频内容,请添加字幕。确保只发布圈内相关的消息。
评分:9
导师盒 | 给网站引入更多流量 - 布雷特·费尔勒
收获:发布线性的小测试。使用正确的语言。
评分:8
导师盒 | 如何为你的品牌引入大流量 - 安东尼·马塞洛内
收获:1. Instagram 的价值(好内容、直接访问至影响人物、切换至商务账户)。2. 对标你的服务(普通的页面、个人的页面)
评分:9
 

书籍

反脆弱:从不确定性中获益 - 纳西姆·尼古拉斯·塔勒布
第 2 章 - 随处可见的过度补偿和过度反应
收获:知识分子往往关注的是随机性(脆弱性)带来的负面反应,而非正面反应(反脆弱性)。对挫折的过度反应所释放出来的多余能量成就了创新!。如何在跑马比赛中取胜。论暴乱、爱和其他意料之外压力受益者的反脆弱性(你的堡垒筑得越高,我们就越有力量)。请将该书列为禁书:信息的反脆弱性。
评分:10
第 3 章 - 猫与洗衣机
收获:压力就是知识(反之,知识也可以是压力)— 有机体与机械 — 在现代化主宰了 200 年后,现在该唤醒我们体内的野性了。复杂系统:压力源即信息、机械体或有机体/生物体或非生物体(机械体,非复杂系统:需要持续修复和维护、厌恶随机性、无须恢复、相互依赖性低或没有、压力导致材料疲劳、常用导致老化/消耗、在冲击下会反应不足、时间只会带来老化。有机体,复杂系统:自我修复、喜欢随机性/小幅变化、在受压后需要恢复、相互依赖性高、缺乏压力导致萎缩、闲置导致老化、在冲击下会反应过度、时间带来老化和衰老)。均衡,不再均衡:针对儿童的犯罪(我们不仅厌恶压力,也不理解压力,殊不知,彻底消除波动和变化只会危害生命、生活、科学和智慧。除了伤害孩子,我们还会危害社会和我们的未来。旨在减少儿童生命中的变化和波动的举措却也会降低我们这个所谓的 “伟大的全球化社会” 中的多元性和差异性)。受到翻译的惩罚:一个能说流利英语的人,举着一块把我的名字拼错的牌子,在机场迎接我,没有压力、没有歧义,不用使用任何从丑陋的教科书上接触到的俄语、土耳其语、克罗地亚语或波兰语。观光化:我们现代人的生活要收到诸多条条框框的约束,即使在我们的休闲时间(周五晚上看歌剧、某个晚上参加约定好的聚餐、预定的活动、预定的笑声。再次叹息,我们住在 “金色” 的监狱里)。对机遇的秘密渴望:如果我能预测我未来每一天的轨迹,那么我会感觉自己身体的一部分已经死了;现代生活中充斥着原本可以避免的慢性应激损伤。大自然才是伟大的反脆弱专家。
评分:10
第 4 章 - 杀死我的东西却让其他人更强壮
收获:对一个人具有反脆弱性的东西,对其他人而言则是脆弱性的 — 我们何时引入了想的太多、做得太少的理念 — 失败是为了他人的成功 — 终有一天,你会收到感谢信。反脆弱性的层级:进化和不可预测性(进化最有趣的一面是,它是依赖反脆弱性实现的;它喜欢压力、随机性、不确定性和混乱 — 而个体生物则相对脆弱,基因库正是利用冲击来确保优胜劣汰,提高整体的适应力)、有机体即群体,群体即有机体(当你禁食的时候,坏的蛋白质将首先被分解,并通过你自己的身体再生,这个过程被称为细胞自噬)。错误,谢谢你:从他人的错误中学习(彼此负相关/独立的错误发生会降低未来犯错的概率。自然是在非系统性的错误中学习和改进的)、怎样成为特里莎修女(犯罪的人要比那些从来没犯过罪的人更可靠。犯了很多错误的人要比那些从来没有犯过错的人更可靠)。为何整体厌恶个体(要让经济具有反脆弱性,并经历所谓的进化,每个独立的企业都有必要是脆弱的,面临着奔溃的风险进化需要有机体死亡,并被其他有机体取代,以实现整体改善,或淘汰适应力不如其他有机体的生物):。杀不死我的,会杀死其他人:我和我们(如果不打破个体的利益,整个经济体就无法生存;一味地保护是有害的,为了个体的利益制约进化的力量似乎毫无必要)、美国创业者日(创业就是一个高风险、英雄式的活动,对经济的增长,甚至仅仅是生存来说都至关重要)。
评分:10
外卖战略:抢占餐饮的下一个主战场 - 闫寒
第 1 章终局思维看外卖 - 餐饮行业发展趋势和外卖发展趋势分析
收获:选择行业和选择股票的逻辑差不多,我们都要在它价格尚低且处于高速增长时入手。
评分:9
第 1 章终局思维看外卖 - 外卖爆发式增长的原因
收获:堂食和外卖的依赖元素不同。餐饮行业的发展依赖一个重要元素:饮食文化。外卖行业不光要做饭给你吃,还需要能够在 “你在家,我在餐厅” 的时候顺利沟通订单和服务需求。
评分:9
 

影视

本周无
 

好歌

Eastside - Benny Blanco, Halsey, Khalid
 

新奇

本周无

 

末了

希望你在吸收了这些精华之后,能与我一起,茁壮成长…

英雄,我们下期,不见不散!

你可能感兴趣的:(栋的周评)