跳到主要内容

营销中的 CAC、LTV 和 PBP 是什么?

· 阅读需 1 分钟
  • CAC:客户获取成本是将客户转化为购买产品/服务的成本。
  • LTV:生命周期价值是我们可以从客户身上获得的预计净利润。
  • PBP:资本预算中的回报期是指收回投资所需的时间,或达到盈亏平衡点的时间。理想的回报期约为 1 年。

LTV:CAC 比率

LTV:CAC 比率帮助您确定应花费多少资金来获取客户,以实现可持续增长。

  1. 1:1 = 销售越多,亏损越多
  2. 3:1 或更好 = 良好。
  3. 5:1 或更高 = 在营销上投资不足

马克·塞勒斯:技术不是护城河

· 阅读需 2 分钟

==经济护城河==是指: 企业保持相对于竞争对手的竞争优势,以保护长期利润和市场份额的能力

不属于经济护城河的部分

  • 技术。技术终将会被复制。
  • 大量阅读。 ==阅读只能让人跟上他人的进度。== 在行业里,每个人都读了很多的书,即使阅读比他人更多的书,也并不一定会让你更有竞争力。
  • 顶级大学的工商管理硕士学位或者其他学位。这些学位通常会给人们带来丰厚的薪水,即使它与优秀投资者所做的事情截然相反。
  • 经验。要想参与经济游戏之中,一定程度的经验是必要的,但在某些情况下,这些经验可没有帮助。

属于经济护城河的部分

  1. 规模经济和范围经济。例如沃尔玛,家得宝,劳氏这些企业。
  2. 网络效应。例如eBay,万事达信用卡。
  3. 知识产权,例如专利、商标。
  4. 客户流失成本高。例如Paychex、微软。

公共 API 选择

· 阅读需 2 分钟

总之,在选择公共 API、API 网关或 BFF(前端后端)网关的工具时,我更喜欢 GraphQL,因为它具有尾随结果、批处理嵌套查询、性能追踪和显式缓存等功能。

JSON RPCGraphQLRESTgRPC
用例以太坊Github V2、Airbnb、Facebook BFF / API 网关Swagger高性能、谷歌、内部端点
单一端点
类型系统✅,与 JSON 一样弱
无 uint64

无 uint64
✅ w/ Swagger
无 uint64

有 uint64
定制结果
批处理嵌套查询
版本控制模式扩展是,使用 v1/v2 路由protobuf 中的字段编号
错误处理结构化结构化HTTP 状态码结构化
跨平台
游乐场 UIGraphQL BinSwagger
性能追踪?Apollo 插件??
缓存无或 HTTP 缓存控制Apollo 插件HTTP 缓存控制尚未原生支持,但仍可使用 HTTP 缓存控制
问题缺乏社区支持和工具链 Barrister IDL42.51 kb 客户端包大小多个端点的非结构化,便携性差。Grpc-web 开发进行中,140kb JS 包。兼容性问题:并非所有地方都支持 HTTP2 和 grpc 依赖

马克·塞勒斯:技术不是投资者的经济护城河

· 阅读需 2 分钟

==经济护城河==:企业在竞争中保持竞争优势的能力,以保护其长期利润和市场份额

那些不是经济护城河来源的人

  • 技术。技术总是会被复制。
  • 阅读很多。==阅读只是让人跟上潮流。== 在这个行业中,每个人都阅读很多。有些人阅读的比其他人更多,但这并不一定让你更具竞争力。
  • 来自顶尖学校的MBA或其他学位或资格。这通常会让人获得高薪,尽管这与优秀投资者的做法正好相反。
  • 经验。为了参与游戏,某种程度的经验是必要的,但在某个时刻,它就不再有帮助了。

那些是经济护城河来源的人

  1. 规模和范围经济。例如:沃尔玛、家得宝、Lowe’s。
  2. 网络效应。例如:eBay、万事达卡。
  3. 知识产权,例如:专利、商标。
  4. 高客户转换成本。例如:Paychex和微软。

杰瑞·纽曼:护城河的分类。

杰瑞·纽曼:护城河的分类

过往工作经验面试

· 阅读需 5 分钟

目标受众

拥有一定或较少的经验,或者是在职业生涯中没有担任过任何领导或设计职位的人(无论是正式还是非正式)。

问题描述

描述你以前特别感兴趣或难忘的项目经历。后续的问题包括:

  • 为什么你会觉得它有趣?
  • 该项目最具挑战性的部分是什么,你又是如何应对这些挑战的呢?
  • 你从这个项目中学习到了什么?你又希望在项目开始前了解什么?
  • 你有考虑其他的设计或实现方法吗? 你为什么选择你做的那个方案? 如果再次选择做同样的项目,你有什么不同的做法吗?

面试官提示

由于这里的目标是评估一个人的技术沟通能力和兴趣水平,而他们有可能参与过速成班,所以你应该准备好问他们更多的问题(无论是为了更多的细节,还是有关项目的其他方面)。如果是他们是刚写完论文的毕业生,那么毕业论文通常是很好的切入点。虽然这个问题在很多方面都类似于电话面试中的简历问题,但其内容大约是电话面试的四倍,而且应该按比例更详细地询问他们都做了些什么。因此,虽然评分标准是相似的,但应该用更高的期望和更多的数据来评估面试者。

得分

优秀的候选人能够:

  • 充分地谈论项目经历,在面试中,与面试官的互动应当是对话而不是指导

  • 对整个项目具有一定的了解,而不仅仅是他们所关注的领域,并且能够清楚地表达出项目的设计和意图

  • 无论是什么项目,都要充满激情,并且能够清楚地描述出激发这种激情的项目要素

  • 能够清楚地解释考虑了哪些备选方案,以及他们为什么选择他们所采取的实施策略

  • 是否有从他们的经历中反思并吸取教训

而好的候选人能够:

  • 在面试中可能会遇到一些问题,但是能够在面试官的帮助下解决

  • 可能缺乏对项目更广范围的一些了解,但仍然对与他们直接交互的部分和特定领域具有很强的了解

  • 也许看起来充满激情,但无法准确解释这种激情来自何处

  • 也许能够讨论他们所做的替代方案,但是考虑的不够深刻

  • 从他们的过往经历中反思并汲取经验

而差的候选人则是这样的:

  • 在面试交流中表现得费劲,面试官觉得面试者是在询问他,而不是与他交谈

  • 即使是在他们工作的领域,也可能缺乏对项目的详细了解。他们可能不了解他们的产品为何这样设计,或者不明白产品是如何与其他系统交互的

  • 当你在询问所做过最有趣的项目时,他们对产品表现得应该很感兴趣,但事实上是,他们看起来可能并不太感兴趣

  • 可能不熟悉潜在替代方案的实现方法

  • 似乎并没有从他们的过往项目经历中反思和学习。而判断这种情况的重要迹象是:“你学到了什么”和“你会有什么不同”的答案很短,或者几乎千篇一律

在软技能面试中我们可以沟通什么?

· 阅读需 2 分钟

什么是面试?

面试是员工寻找未来同事的过程,在此过程中,他们 寻找信号来回答以下三个关键问题:

  1. 能力问题 - 你能胜任这份工作吗?
  2. 意愿问题 - 你愿意做这份工作吗?
  3. 文化契合问题 - 你能融入团队吗?

为什么软技能如此重要?

以上任何一个关键问题都无法在没有良好沟通的情况下回答。 你的工作将被那些沟通能力比你更强的人取代。

准备的通用回答(故事)

  1. 艰难取得的胜利。你是如何应对失败的?简要谈谈你经历的最艰难时刻,然后专注于你是如何反击的,并感谢那些帮助过你的人。这表明你具备毅力、团队建设能力以及与工作相关的素质。
  2. 影响力。你能引导他人接受你的观点吗?领导者 = 激励自我牺牲的愿景者。没有说服能力,领导者就不存在。
  3. 技术技能。你有故事证明你出色的技术技能吗?
  4. 文化契合。联邦调查局曾经询问潜在特工他们读过哪些书,直到一个地下线人的网络找到了理想答案:“汤姆·克兰西的间谍小说。”
  5. 吸引力。你有什么吸引人的地方?是什么让你与其他人不同?

什么是 Apache Kafka?

· 阅读需 5 分钟

Apache Kafka 是一个分布式流处理平台。

为什么使用 Apache Kafka?

它的抽象是一个 ==队列==,并且它具有

  • 一个分布式的发布-订阅消息系统,将 N^2 关系解决为 N。发布者和订阅者可以以自己的速度操作。
  • 采用零拷贝技术,速度极快
  • 支持容错的数据持久性

它可以应用于

  • 按主题进行日志记录
  • 消息系统
  • 地理复制
  • 流处理

为什么 Kafka 这么快?

Kafka 使用零拷贝,CPU 不需要将数据从一个内存区域复制到另一个内存区域。

没有零拷贝的情况下:

使用零拷贝的情况下:

架构

从外部看,生产者写入代理,消费者从代理读取。

数据存储在主题中,并分割成多个分区,这些分区是复制的。

Kafka 集群概述

  1. 生产者将消息发布到特定主题。
    • 首先写入内存缓冲区,然后刷新到磁盘。
    • 仅追加的顺序写入以实现快速写入。
    • 写入磁盘后可供读取。
  2. 消费者从特定主题中拉取消息。
    • 使用“偏移指针”(偏移量作为 seqId)来跟踪/控制其唯一的读取进度。
  3. 一个主题由分区组成,负载均衡,分区(= 有序 + 不可变的消息序列,持续追加)
    • 分区决定最大消费者(组)并行性。一个消费者在同一时间只能从一个分区读取。

如何序列化数据?Avro

它的网络协议是什么?TCP

分区的存储布局是什么?O(1) 磁盘读取

如何容错?

==同步副本 (ISR) 协议==。它容忍 (numReplicas - 1) 个死掉的代理。每个分区有一个领导者和一个或多个跟随者。

总副本 = ISRs + 不同步副本

  1. ISR 是活着的副本集合,并且已经完全追赶上领导者(注意领导者始终在 ISR 中)。
  2. 当发布新消息时,领导者会等待直到它到达 ISR 中的所有副本,然后才提交消息。
  3. ==如果一个跟随者副本失败,它将被移出 ISR,领导者随后继续以更少的副本在 ISR 中提交新消息。注意,现在系统正在以不足副本模式运行。== 如果领导者失败,将选择一个 ISR 成为新的领导者。
  4. 不同步副本继续从领导者拉取消息。一旦追赶上领导者,它将被重新添加到 ISR 中。

Kafka 是 CAP 定理 中的 AP 还是 CP 系统?

Jun Rao 说它是 CA,因为“我们的目标是在单个数据中心内支持 Kafka 集群的复制,在那里网络分区是罕见的,因此我们的设计专注于保持高度可用和强一致性的副本。”

然而,这实际上取决于配置。

  1. 默认配置(min.insync.replicas=1,default.replication.factor=1)开箱即用时,您将获得 AP 系统(至多一次)。

  2. 如果您想实现 CP,您可以将 min.insync.replicas 设置为 2,主题复制因子设置为 3 - 然后使用 acks=all 生产消息将保证 CP 设置(至少一次),但(如预期)在特定主题/分区对可用副本不足(<2)时将会阻塞。

什么是 Apache Kafka?

· 阅读需 5 分钟

Apache Kafka 是一个分布式流(streaming)平台。

为什么使用 Apache Kafka?

它的抽象是一个==队列==,它的特点包括

  • 分布式发布-订阅(pub-sub)消息传递系统,可将 N ^ 2 的关系简化成 N.发布者和订阅者可以按自己的速率运行。
  • 超快速的零复制(zero-copy)技术
  • 支持可容错的数据持久化

它可以被应用于

  • 按主题打日志
  • 消息系统
  • 异地备份
  • 流处理

为什么 Kafka 如此的快?

Kafka 使用零复制技术,其中,CPU 不会执行数据跨存储区复制副本(replica)的任务。

不使用零复制技术:

使用零复制技术:

构架

从外部看,生产者写给 kafka 集群,而用户从 kafka 集群读取内容。

数据按照主题存储,并分割为可复制副本的分区。

Kafka Cluster Overview

  1. 生产者将消息发布到特定主题中。
    • 首先写入内存缓冲区中并更新到磁盘中。
    • 为了实现快速写,使用 append-only 的序列写。
    • 写入后方可读取。
  2. 消费者从特定主题中提取消息。
    • 使用“偏移指针”(偏移量为 SEQ ID)来跟踪/控制其唯一的读取进度。
  3. 一个主题包括分区和负载均衡,其中,每个分区是一个有序,不变的序列的记录。
    • 分区决定用户(组)的并行性。同一时间内,一个用户只可以读取一个分区。

如何序列化数据? Avro

它的网络协议是什么? TCP

分区内的存储布局是怎样的 y? O(1)磁盘读取

如何容错?

==同步副本(ISR)协议==. 其容许 (numReplicas - 1) 的节点挂掉。每个分区有一个 leader, 一个或多个 follower.

总副本量 = 同步的副本 + 不同步的副本

  1. ISR 是一组活的并且与 leader 同步的副本(注意领导者总是在 ISR 中)。
  2. 当发布新消息时,leader 在提交消息之前等待,直到它到达 ISR 中的所有副本为止。
  3. ==如果 follower 同步失败,它将从 ISR 中退出,然后 leader 继续用 ISR 中较少的副本提交新消息。注意,此时系统运行在低副本数量的状态下== 如果一个 leader 失败了,另一个 ISR 将被选成为一个新的 leader 。
  4. 未同步的副本不断的从 leader 那里拉出消息。一旦追赶上 leader ,它将被添加回 ISR。

Kafka 是 CAP 定理中的 AP 或 CP 系统吗??

Jun Rao 认为它是 CA,因为“我们的目标是支持在单个数据中心内的 Kafka 集群中进行复制,其中网络分区很少见,因此我们的设计侧重于维护高可用性和强一致性的副本。”

然而,它实际上取决于配置。

  1. 如果使用初始配置(min.insync.replicas=1, default.replication.factor=1),你将获得 AP 系统(最多一次)。

  2. 如果想获得 CP,你可以设置 min.insync.replicas=2,topic replication factor 为 3,然后生成一个 acks=all 的消息将保证 CP 设置(至少一次),但是,如果没有足够的副本(副本数< 2)用于特定主题/分区时,则无法成功地写。

美国海军预飞学校:如何在 120 秒内入睡?

· 阅读需 2 分钟

为什么要快速入睡?

在战场上,如果你不睡觉,你会很快精疲力竭。你会做出错误的决定。你会让人失望,成为一个负担。

如何在 120 秒内入睡?

原则:逐个放松全身的每个部位,不要思考。

  1. 伸展身体
  2. ==放松面部肌肉,减缓一切==
  3. 放松上半身
    1. 让肩膀尽量下垂
    2. 深吸一口气。然后慢慢呼气,释放所有的紧张
    3. 放松手臂。如果没有放松,先紧绷,然后再放松
    4. 放松前臂
    5. 放松手
  4. 放松腿部
  5. 不要思考任何事情
    1. 保持心灵静止。你可以通过在脑海中保持一个静态图像来做到这一点
    2. 如果这不起作用,反复说“不要想……不要想……不要想”,至少持续 10 秒钟

美国海军飞行班: 如何在120秒内入睡?

· 阅读需 2 分钟

为什么要快速入睡?

在战场上,你如果不睡觉,很快就会感到精疲力竭,你会做出错误的决定,你会有负使命,成为累赘。

怎么做?

原则:一点一点的放松整个身体,不要去思考。

  1. 舒展身体
  2. 放松脸部肌肉,放慢一切速度
  3. 放松上身
    1. 尽可能地放低肩膀
    2. 深吸气,然后慢慢呼出,把所有的紧张都呼出来
    3. 放松双臂。如果它不够放松,就先绷紧它,然后让它放松
    4. 放松前臂
    5. 放松双手
  4. 放松双腿
  5. 什么都不要想
    1. 保持头脑冷静。你可以通过在头脑中保持一个静止的画面来做到这一点
    2. 如果这样没有效果,就一直说“不要思考……不要思考……不要思考”,至少10秒钟