/images/portrait/meso.jpeg

麦索的麦田

如何卓有成效

我们三节课作为一家纯互联网公司,我的同事们都是知识工作者,知识工作者的工作目前很难像体力工作者一样被标准化衡量,而体力工作者的工作也是经过了近一百多年工业生产时代所制定的,是先辈的探索而来的,形成现在每个人所知道的常识。所以衡量我们的工作目前的有较好的论述的是彼得格鲁克提出的卓有成效,知识和脑力工作者的衡量工作是否好就是看其是否有成效。要做到这个并不容易,但是可以学习,OKR 工作法是一个框架,其实质是在强调成效,制定具有挑战性的目标并围绕目标进行工作,既符合卓有成效又符合要事优先。

量变引起质变

在做拉取巨量引擎广告数据时,本地开发时只拉取了近一个月的数据作为样本,将一个月的数据可能出现的问题都做了处理,但是当上线后拉取历史之前的历史数据时就出现了一些未考虑到的问题,比如某字段在历史数据里不存在的情况,还有部分功能由他人编码,在做集成时考虑不周全引起的异常问题,具有经验的人会考虑的比较多一些,这是经验的价值,有直接经验的人会处理的更好,我还需要时间来积累这些经验以及和他人学习获得这些经验。但也要注意具体问题具体分析,不要过分迷信经验的价值,那样容易落入经验主义和教条主义的陷阱中。

RPC 学习笔记

RPC框架

  • Dubbo:国内最早开源的 RPC 框架,由阿里巴巴公司开发并于 2011 年末对外开源,仅支持 Java 语言。
  • Motan:微博内部使用的 RPC 框架,于 2016 年对外开源,仅支持 Java 语言。
  • Tars:腾讯内部使用的 RPC 框架,于 2017 年对外开源,仅支持 C++ 语言。
  • Spring Cloud:国外 Pivotal 公司 2014 年对外开源的 RPC 框架,仅支持 Java 语言
  • Yar:PHP轻量的RPC框架,鸟哥开源,仅支持 PHP 语言

跨语言平台 RPC

  • gRPC:Google 于 2015 年对外开源的跨语言 RPC 框架,支持多种语言。
  • Thrift:最初是由 Facebook 开发的内部系统跨语言的 RPC 框架,2007 年贡献给了 Apache 基金,成为 Apache 开源项目之一,支持多种语言。

gRPC

gRPC 是一个高性能开源的通用的 RPC 框架,可以跨语言使用。

为什么应该学习自动化测试?

本次分享的主题是自动化测试,也就是大家常提到的单元测试。

我们为什么需要自动化测试

自动化测试的目标是什么

自动化测试是为了帮助我们将写好的代码以自动的方式进行功能检查,以确保现有的改动不影响已有的功能,多次的改动对已经完成的功能没有影响,它能够帮助我们有效避免和改善以下情况:

排序算法 - 冒泡排序

算法描述

冒泡排序是一种简单的排序算法。它重复地遍历排序的数列,一次比较两个元素,如果它们的顺序错误就交换彼此。遍历数列的工作是重复地进行直到没有再需要交换,既该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。