防御性:如何理解企业护城河

为什么需要护城河

企业成功主导一个山头,成为行业领导品牌,要随时审视竞争环境的变化,快速转变战略节奏,从进攻战切换为防御战。

商业竞争是无情的,竞争的环境总是在变化,行业领先者需要不断审视和调整战略,从进攻转为防御。新进入的企业总是企图挑战行业领导者的地位,从不同角度对其发起攻击。为了保持领先地位,领导品牌需要采取各种手段来封杀竞争对手。

领导品牌必须高筑墙,广积粮,构筑防御工事,在优势位置上持续巩固自身的竞争壁垒,不断拓宽自身的护城河,以抵御竞争对手的攻击,有护城河的企业才能享受行业长期增长带来的红利。

五种护城河

graph LR
A(企业护城河)-->B3(无形资产门槛)
B3-->B31(专利)
B3-->B32(创新)
B3-->B33(监管)
B3-->B34(标准)
A-->B2(转换成本高)
B2-->B21(依托大公司的相互依存)
B2-->B22(复杂的程序转换)
B2-->B23(数据绑定生态)
A-->B4(网络效应形成)
B4-->B41(双边网络-平台)
B4-->B42(三边网络-渠道)
B4-->B43(通讯网络)
B4-->B44(内容网络)
B4-->B45(本地网络)
A-->B1(成本优势)
B1-->B11(规模优势)
B1-->B13(经验优势)
B1-->B14(模式优势)
A-->B5(用户心智)
B5-->B51(品牌)
B5-->B52(特性)

什么是好的商业模式?

商业模式是什么?

商业模式是指企业如何创造和捕获价值,并将其转化为盈利的方式。一个好的商业模式应该能够产生持续的现金流和利润,并且能够与竞争对手区分开来。

例如,苹果公司的商业模式是基于高端硬件销售和软件服务的组合。他们通过不断创新和设计出高品质的产品,吸引了一大批忠实的用户,并提供了与之相配套的软件和服务。这种商业模式的成功在于他们不断创新和提供高品质产品的能力,以及对消费者需求的深刻理解。

另一个例子是Amazon的商业模式,它是基于在线销售和物流的组合。Amazon通过建立强大的物流网络和广泛的产品选择,吸引了大量的消费者和卖家。同时,他们提供了高水平的客户体验和优质的客户服务,让他们赢得了消费者的信任和忠诚度,从而成为全球最大的在线零售商之一。

什么是好的商业模式

好的商业模式很简单,就是利润和净现金流很好,竞争对手哪怕花很长时间也很难抢。“时间是平庸公司的敌人,是伟大公司的朋友”,所以说伟大的公司时间越长越可怕。

商业模式经常要看的东西是:

  • 护城河是否长期坚固。产品的差异化的持续性,包括企业文化)
  • 长期毛利率是否合理。(产品的可替代性
  • 长期的净现金流是否满意。(长期而言其实就是净利润)

判断是否是好的商业模式,可以从两个角度看:“定价权”“防御性”。简而言之,只有拥有定价权、别人打价格战己方可以稳坐钓鱼台的,才是好的商业模式。有很高的防御性护城河,当竞争对手进入市场才不会太容易,这个和定价权也是有一定关联性的。

Hexo中使用emoji表情

背景

上一篇文章我想在文章中使用emoj来丰富页面,发现Hexo默认的markdown渲染引擎不支持将Github emoji渲染到静态的html页面。我们需要换一个支持emoji的引擎,再增加一个emoji插件即可。

Markdown 引擎安装

命令行如下:

1
2
3
npm un hexo-renderer-marked --save
npm i hexo-renderer-markdown-**it** --save
npm install markdown-**it**-emoji --save

Markdown 引擎配置

完成插件安装后还需要修改Hexo站点配置文件_config.yml(不是主题配置)

加入下列代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
## markdown 渲染引擎配置,默认是hexo-renderer-marked,这个插件渲染速度更快,且有新特性
markdown:
render:
html: true
xhtmlOut: false
breaks: true
linkify: true
typographer: true
quotes: '“”‘’'
plugins:
- markdown-it-footnote
- markdown-it-sup
- markdown-it-sub
- markdown-it-abbr
- markdown-it-emoji
anchors:
level: 2
collisionSuffix: 'v'
permalink: false
permalinkClass: header-anchor
permalinkSymbol:

这里需要注意render:下的html:配置项,它的作用是控制Markdown渲染引擎是否转移文档中出现的html标签,默认为false,这里要设置为true,否则会导致<!--more-->渲染失败。

plugins:中的最后一项- markdown-it-emoji是手动添加的,官方Github Wiki中给出的配置不包含这一项,其他配置参照的Github Wiki中的默认配置。

使用方法

输入对应的emoji编码

例如:输入笑脸对应的emoji编码:smile:就可以得到😄

emoji编码合集

可以查阅这篇文章

Seven Levels of Delegation

When we are doing management work, it is inevitable that we will delegate tasks to team members. At this point, how to delegate tasks is quite important. Just like most things in the world, delegation is not black and white, but exists in shades of gray.
Jurgen Appelo, author of books such as “How to Change the World” and “Management 3.0”, proposes that we think of delegation as something that is not binary, and that part of the art of management has to do with finding the right balance in it. Jurgen proposes seven different levels of delegation in management:

  • Say: The traditional. It’s telling someone what to do. The manager makes the decision and then tells the others what it is. There is little room for debate or negotiation.
    1️⃣ I told you to do

  • Sell: When the manager tries to convince others that the decision he or she is making is a good one and they should therefore accept it.
    2️⃣ I persuaded you to do

  • Consult: When the manager gathers information from the team before making a decision.
    3️⃣ After the decision, I made the decision

  • Agree: Implies that there is consensus about the decision between the manager and the team, or the decision is made jointly. It is the most difficult because it requires more time.
    4️⃣ After the decision, we reached a consensus

  • Advice: When the manager influences the decision made by the team.
    5️⃣ I adviced,team made the decision

  • Ask: Once the team has made the decision, the manager asks for information about the decision.
    6️⃣ Team made the decision, I asked for information

  • Delegate: The manager has zero influence on the decision. It is made entirely by the team.
    7️⃣ Team made the decision

知识管理之记录知识

记录原则

记录知识有很多目的,但在知识管理里,记录的原则是,把今天的知识传递给未来的自己,让他可以快速掌握你今天学到的东西。

为什么这么说呢?因为原来我们记笔记,往往没想清楚自己是为什么记笔记。就会出现以下一些现象:

  • 笔记比较零散,没有体系,记了再也没看过
  • 一些重要内容即使做了整理和标记,时间长了也很难记清楚当时关注的重点是什么,大概率找到笔记还要重新熟悉原始资料后才知道它有没有用
  • 随着时间的积累,很可能已经忘了当时对这篇文章的理解以及收藏它的初衷

未来我做的笔记,有着一个明确的读者,甚至是唯一读者,即未来的我。我写的每一条笔记,都是为了「未来的我」在需要时能更方便地查阅和调用。这样,写的笔记的好坏也很容易判断,即是否对未来的自己有帮助。

记录方法

记录打破思维惯性的想法

也就是说,当你听到这个想法,和你通常认为的完全不同,这个时候,需要尽快记录下来,然后仔细思考这个想法的来源,合理性及如何与自己认知进行整合。在这个过程中,不要被 自尊心,懒惰,安全感 等天然的反应支配,接纳新知识。以下这些场景都可能会有可能得到这样的想法:

  • 反直觉的观点或事实
  • 负面的观点
  • 改变解读过去经验的视角
  • 能把复杂东西简化的视角
  • 意料之外但情理之中的视角

用自己的话写

只有用自己的话来写,才能在写的过程中引起思考,然后将知识内化为自己的。大量复制别人的观点,并不能使自己得到提高,时间一长,就完全忘记了。

但我们刚开始接触到一个新的领域时,可能没有办法一下子有自己的想法,我的实际是,先试图用自己的话重复同样的意思,然后加上一些自己想到的案例,再想想是否有反面的例子,试着做一些推理。

不用担心做不好,记住是为自己来记录,只要坚持做,在过程中反复推敲,会让理解加深,最终掌握知识。

精炼知识点

为了未来的自己能快速得到知识的要点,我们需要在理解内容的基础中做精炼。方法是:

  • 先理解知识的结构,从结构中提取要点
  • 反复删除,减少冗余
  • 隐藏细节,保留出处
  • 将大的内容拆成原子化内容

定期整理和归纳

定期整理知识,继续做知识的归纳/精炼,同时找到知识点之间的关系,建立网状知识,同时提炼关键字和标签,方便未来的自己查。

解决ayer主题下Mermaid图表背景太暗的问题

背景

配好Mermaid图表后,我发现自动生成的图表背景太暗,和线的颜色混在了一起。刚开始我的思路是换Mermaid图表主题颜色,后来发现换主题只能修改线和图形的样式,不能改背景。经过研究网页CSS结构,我发现主要由于这个主题所有的代码块的背景是深色的,导致Mermaid图表的背景也是继承下来了。

解决方案

找到原因,解决方案也就呼之欲出了,找到主题路径:themes/ayer/layout/_partial/ 下,修改 head.ejs 文件,找到 <!-- mermaid --> 标签,在<style></style> 代码块内添加以下代码:

1
2
3
pre.mermaid {
background: #dedede;
}

含义为指定mermaid的div的背景,#dedede为背景色,比较浅。
清缓存,重新发布,搞定。

To Be More Confident

Background

When I was listening to the “English with Lucy” channel on YouTube, I heard an episode about boosting self-confidence, which was very inspiring. I tried to use a mind map to record the main points.

Mind Map

graph LR
A(To Be More Confident)-->B1(At parties)
A-->B2(On dates)
A-->B3(In persentations)
A-->B4(In job interviews)
A-->B5(On the telephon)
B1-->C11(Stay relaxed, relax your shoulders, centre your voice)
B1-->C12(Imagine everybody he meets is an old friend)
B1-->C13(I've only got to be there for five minutes)
B2-->C21(Think I'm beautiful, someone loves me, I have a secret)
B2-->C22(Keep yourself positive and only thinking about all the positive parts)
B2-->C23(Ask questions and show you're engaged)
B3-->C31(Practise twice with voice notes)
B3-->C32(Get the body relaxed and prepared)
B3-->C33(See the audience as old friends)
B4-->C41(Get yourself nice and calm and centred)
B4-->C42(Remember to breathe)
B4-->C43(Say it in ordered manner)
B5-->C51(Picture them sitting on the sofa)
B5-->C52(Punch the words as you're talking)
B5-->C53(Stand up)
More...

在Hexo中插入Mermaid图表

Mermaid是什么?

Mermaid是一个基于JavaScript的流程图、序列图、甘特图等图表生成工具。使用Mermaid可以方便地在Markdown文档中嵌入各种图表,而无需手动绘制或使用其他辅助工具。

Mermaid支持多种流程图、序列图、甘特图等图表类型,使用简单明了的语法来描述图表元素之间的关系。在插入Mermaid图表之前,需要在Hexo中安装相应的插件,如前面所述。

Mermaid提供了丰富的语法来绘制各种类型的图表,具体语法可以参考官方文档。在Hexo中插入Mermaid图表时,只需要在Markdown文档中使用Mermaid代码块即可。

如何在Hexo中插入Mermaid图表

安装Mermaid插件

1
npm install hexo-filter-mermaid-diagrams

修改配置文件

在hexo的_config.yml文件(根目录的并非主题的)中,添加以下内容:

1
2
3
4
5
6
# mermaid chart
mermaid: ## mermaid url https://github.com/knsv/mermaid
enable: true # default true
version: "7.1.2" # default v7.1.2
options: # find more api options from https://github.com/knsv/mermaid/blob/master/src/mermaidAPI.js
#startOnload: true // default true

修改主题

根据主题不同,修改方式不同,我使用的ayer主题,只要修改主题目录themes/ayer下的_config.yml文件,将Enable选项改为true即可:

1
2
3
4
mermaid:
enable: true
cdn: https://cdn.staticfile.org/mermaid/8.14.0/mermaid.min.js
theme: forest
More...

简单而后容易

读到这篇文章,介绍我们如何处理复杂性,其中几个观点都挺有意思,我记录一下。

容易不等于简单

  • 容易 对应 困难 / 简单 对应 复杂
  • 容易是主观判断 / 简单可以是客观评价

大脑的记忆是有上限的

大脑在同一时间,可以记住的事情是有限的。当我们的代码库变得越来越复杂和相互连接,就越难以理解它的全部。当事物相互交织在一起时,我们不能再孤立地思考不同的部分,而必须一起考虑它们。

每次我认为我需要理解软件的新部分,并且它与另一件事情相关联,我就必须把那个其他的东西也放入我的脑海中,因为我无法单独思考一个而不考虑另一个。这就是它们交织在一起的本质。因此,每个交织都增加了这种负担,而这种负担在考虑事物的数量方面是组合的。因此,从根本上讲,这种复杂性,我指的是事物的编织,将限制我们理解系统的能力。

“复杂”意味着交织、纠缠、编织

“复杂”意味着程序的交织、纠缠、编织,要尽量避免。

如何使困难的东西变简单?

主动学习、实验、尝试。

如何使复杂的东西变简单?

将扭曲和交织的部分分离开来,让每个个部分对其他部分的依赖最小化。

简单的好处

易于理解,易于更改,易于调试。

请我喝杯咖啡吧~

支付宝
微信