在微信上关注了先知书店店长荐书,某一天的公众号文章中推荐了 [[罗斯巴德]] 这位经济学家的几部著作,这一本《美国大萧条》一下子就抓住了我的眼球,他的另外一部作品 [[人,经济与国家]] 也在我的待看清单上。
[[罗斯巴德]] (Murray Newton Rothbard) 是一位美国犹太裔经济学家,历史学家,自然法理论家,政治理论家,是[[奥地利学派]]著名的学者。他的著作大量的介绍了 [[米塞斯]] 的工作,对现代的自由意志主义,和无政府资本主义理论的发展和传播有着极大的贡献。
这一本《美国大萧条》是罗斯巴德对 1929 年美国大萧条原因的分析和梳理,他提出了一个和主流观点截然不同的视角去剖析大萧条的成因。
简单的说这本书罗斯巴德根据[[商业周期理论]] 分析大萧条的原因是政府对市场的干预太多(低利率和信贷扩张)。
主流的观点(国内教科书上流行的观点)通常将 1929 年的经济危机归结于自由市场经济的失灵,但罗斯巴德认为与其说是市场的失败,不如说是政府货币政策的失败。虽然为了解决大萧条许多政府逢兴[[凯恩斯主义]],但是过去近百年,再回望就能知道凯恩斯主义已经不再行得通。
[[奥地利学派]] 通过 [[商业周期理论]] 尽管没有指出准确的时间,但是预测到了世界性的经济大萧条。奥地利学派认为政府的扩张性货币政策,利率非常低,信贷规模膨胀,因为利率过低扭曲了资源配置信号,使得市场自我调节失灵,一旦信贷收缩,萧条就发生了。
与米塞斯和哈耶克不同的是,凯恩斯认为,大萧条是由于需求不足导致,有效需求不足的原因是居民储蓄太多,而企业对未来太悲观,不愿意投资。大危机造就了凯恩斯主义经济学,大危机过后的 30 年代,凯恩斯主义获得了主流地位,一直到 80 年代才开始被人质疑。凯恩斯主义为政府干预经济提供了很好的理论依据,需求不足,市场失灵,解决的办法就是政府介入市场,增加需求。
但是奥地利学派认为,萧条是市场自身调整的必然过程,有助于释放经济中已经存在的问题,政府干预只能使得问题更糟糕。书中更是花了大量的笔墨描写胡佛政府的干预(扩大公共投资,限制工资下调,贸易保护主义法律等),使得这次危机持续很长时间。
区分商业周期和普通商业波动。
商业变动,通过普遍的交易媒介—-货币进行传播。货币把经济活动串联起来,货币供给量上升,货币的需求保持不变,那么每一美元所体现的购买力会下降,价格会普遍上升。
金本位制度的废弃使得美联储可以无限制扩大纸币供应量和银行的美元数量,致使价格上升,经济陷入混乱,收入因为通货膨胀而下降。
奥地利学派的理论揭示了通货膨胀并非政府扩大货币和信贷供给量的唯一恶果,这种扩张扭曲了投资和生产的结构,使得资本品行业对不良项目投资过度。
避免萧条的最好的方法就是,禁止美联储利用权力扩大货币和信贷。如果陷入了萧条,那么合理的措施是避免政府对萧条进行干预,使萧条的过程能尽快自行完成,然后重建一套健康和繁荣的经济体系。
大萧条的错误并不在于自由市场经济,而应该归咎于政客、官僚。
《美国大萧条》一书让我重新更换了一个视角去看待 1929 年发生的大萧条,也通过作者补充的大量胡佛的新政,和当时政府社会上大量具体的经济数据,来再次回到了那个动荡的时代。就像书中说的那样,从完全不相信市场经济的马克思主义经济学,到到摇摆的[[凯恩斯主义]],到适度干预的 [[芝加哥学派]],再到完全信任市场的[[奥地利学派]],对于同样的一件灾难,有不同的解释和叙事。站在我们这个时间点上,我还无法判断出来究竟是哪一种学说能真正根治大萧条的产生。虽然我已经感觉到大萧条在疫情的催化作用中,已经渐渐显露出了头角,但我还是从心底中希望不要发生,毕竟没有人一生之中有 10 年的时间可以虚度,已经被疫情浪费的三年时间也尽量想挽回一些。
每一个人,我在看书的过程中无时不刻联想到当今的现实,虽然这本书距离出版已经过去了 60 年,但其中的理论无一不是当今现实的写照,疫情的三年美国因为救济向社会发放了大量的美元,导致市场美元增多,信贷扩张,而从去年开始的加息,缩表,导致如今的萧条,虽然程度上可能并不及当年但这依然可以说是过去几十年里面很罕见的了。
Shortcat 是一个 macOS 上的效率工具,可以利用键盘了操作 UI 界面上的一切,而不需要使用到触摸板或鼠标。理念有一些类似于 Chrome 上的 [[vimium]] 插件,利用快捷键在界面上的每一个可以点击的区域加上快捷按键,通过按键来操作界面的内容。
可以直接通过 brew 安装
brew install shortcat
打开
然后可以使用默认的快捷键 Shift+Cmd+Space 来调用出来 Shortcat,然后界面每个可以点击的地方都可以直接看到一个黄色的标签,通过这个搜索框就可以直接进行检索然后,按下
不过我个人在尝试了一下之后,发现在 macOS 上触摸板相对来说更加便捷,并且 Shortcat 虽然可以让用户扔掉鼠标,但是由于操作系统可操作的区域非常多,所以导致搜索出现的选项非常多,而这个检索的过程,使用触摸板早就已经操作完成了。
因为电脑空间告警,所以用 Clean Me 这个应用对系统进行了一次清理,没想到的是,可能在我误操作的情况下把我系统的设置和全部软件的设置都给清空了。我所有的系统配置都恢复了初始的状态,让我使用起来非常变扭,我在之前有写过一篇 MacBook 初始化和应用安装 的文章,但是那篇文章写的比较啰嗦,索性就重新整理一下。
下面的内容会按照常用的功能来划分。
首先在 Input Sources 中添加 Rime 输入法。
Touch Bar 设置成默认 Fn 键
Touch Bar shows -> F1, F2, etc. Keys
在 Shortcut 中将 Spotlight 的快捷键取消,因为我使用 [[Raycast]]。
在设置 Desktop & Dock 设置的时候看到了一个新的设置 Stage Manager,查了一下是 macOS 最早在 iPad 上引入的多窗口管理方式。
Stage Manager 基本是一个单窗口模式,点击一个应用就会集中到该窗口上,其他的应用会被移动到左边。用户可以将应用拖入到当前的工作区中,然后形成多个应用窗口的组合。
说实话我不知道 Apple 在 macOS 桌面版引入这样的窗口管理模式的目的,只是为了配合 iPad 触摸屏的操作方式?虽然我承认 macOS 上的窗口切换本来就有很多问题,我是通过
过去的一个月里面 EV Hosting 陆陆续续更新了共享主机服务,域名注册服务,现在因为我自己使用域名邮箱一直也在使用域名邮箱,所以现在也推出了域名邮箱服务。
很早之前就想给自己的网站弄一个自定义的域名邮箱发发验证码,邮件通知之类的,就了解了一下域名邮箱的服务。我自己之前就尝试过国内的一系列的域名邮箱,但后来这种限制(绑定电话,限制发件)就不再使用了,之前的网站我是自己注册了一个 Gmail SMTP 发件,虽然没遇到什么大的问题,但 Gmail 还是有一些发件限制的(每 24 小时不能超过 500 封)一旦超过,可能 Gmail 收发件都会收到影响。另外我还调研 了其他的一些邮件发送服务,但是最开始的时候,我就没有想使用大公司的服务(虽然 AWS 好像提供一个月上万的邮件发送额度,我还是没有考虑)。中间还考虑过自建域名邮箱 Mailu, Mailcow 对于接受邮件来说没有任何问题,但是对于发信来说,还是依赖于服务器的 IP 地址的权重,所以最后我还是将发信迁移到了 MXRoute,我体验了一段时间之后觉得不错,所以也申请了一个转售,现在在 这里 购买使用 EV_MAIL 折扣码可以获得 6 折优惠,最低 30 元一年。后台使用的 DirectAdmin 面板,购买后配置几条 DNS 记录就能直接开始用了。注意不要发送垃圾邮件。另外每小时发送 300 封的限制只存在每个邮箱,也就是注册邮箱,通知邮箱可以单独开来以提升发件的限制,这对于我来说以及完全足够了。
为了让大家快速体验这个域名邮箱托管服务,现在设置了一个体验套餐 只需要 24 元就可以购买入门的套餐,包含 500 MB 空间,一个域名,一个子域名,每个邮箱可以享受每小时 300 封邮件的发信。
共享的域名邮箱服务由 [[MXRoute]] 提供服务,使用 [[DirectAdmin]] 控制面板,在购买之后会收到一封叫做「您的自定义域名邮箱帐号信息」其中包含了使用该邮箱的具体信息。
使用自定义域名邮箱一般需要设置几条 DNS 记录。
所有具体的配置教程 可以参考 EV Hosting 的知识库 所有配置的详情都可以从收到的邮件中获得。
当完成配置之后,就可以在 DirectAdmin 界面中创建邮箱,然后进行邮件的收发了。
在写这篇读书笔记的时候去豆瓣看了一眼,我才发现我已经将这一本书加入待看列表,将近 10 年了,早已经忘记了当时是怎么知道的这一本书,又是为何把这本书加入到了待看清单。
在进入《非暴力沟通》之前要先了解什么是暴力,认识暴力,有助于理解非暴力。
我们常常认识不到自身的暴力,常常以为只有打人、鞭挞、杀人以及战争才算是暴力。相比于身体上的暴力,造成精神伤害的,那就是「隐蔽的暴力」。而隐蔽的暴力往往更加伤害更大。
非暴力主张积极进取,而非消极无为。
非暴力意味着让爱融入生活。让尊重、理解、欣赏、感激、慈悲和友情,而非自私自利、贪婪、憎恨、偏见、怀疑和敌意,来主导生活。
非暴力生活的关键就是感激生活的赐予,而不贪心。
非暴力沟通让我们转变谈话和聆听的方式。
四个要素(表达自己):
当我们说「我觉得」,常常并不是在表达感受,而是在表达想法。
建立表达感受的词汇表。
一旦人们开始谈论需要,而不是指责对方,就可能找到办法来满足双方的需要。
请求和命令的区别在于,请求没有满足时,提出人如果批评和指责,那就是命令
如果一个人想要别人了解他的处境,听到的却是安慰和建议,那么就有可能觉得不舒服。
就像在看新闻的时候去区分事实和观点一样,看完这一本《非暴力沟通》,我对书中阐述的非暴力沟通四要素倒是没有太多的关心,但是作者在行文过程中将影响这四个要素的一些细微的差别说了出来。区分观察和评论,区分感受和想法,区分请求和命令
不懂得如何表达的人。
Drift 是一个可以自行架设的 Gist 代替。使用 [[Next.js]] 13 和 React Server Components 编写。
Drift 发布了一个官方的 Demo
分享的文件页面内容
目前官方还没有发布编译好的 Docker 镜像,需要自己编译部署。但是也非常简单。
拉取官方的代码
git clone https://github.com/MaxLeiter/Drift.git
cd Drift
docker-compose build
目前为止因为项目还在开发过程中,编译过程可能会出现一些问题。
编译完成直接运行下面的命令即可。
docker-compose up -d
虽然我把其他服务陆陆续续从 Google 迁移出来,但 Google Analytics 一直都运行良好所以也没有怎么管,但 Google Analytics 到今年年中的时候会强行升级 GA4,看了一下升级的过程和 Google Analytics 的操作实在太复杂,就诞生了迁移出 Google Analytics 的想法。简单地了解了一下目前的 Google Analytics 的代替品,收费的,自行架设的还很多选择。这篇文章就简单地对比一下。
主要还是分成两个部分来划分搜罗的产品,可以自行托管的,和商用的。看过我之前文章的小伙伴应该知道,我个人会偏向于开源,可自行托管的服务。即便这个服务还在初始阶段可能还比不上某个商业化的服务,但我依然会选择开源的那个,比如我会选择 [[Wallabag]] 更甚于 [[Pocket]] 和 [[Instapaper]],我会选择 [[miniflux]] 更甚于我过去常常推荐的 InoReader。如果实在找不到合适的开源的,我会优先选择数据归属权在于个人的服务(比如数据不联网,存在本地,可以使用纯文本或有格式的类型导出数据),比如 Obsidian 更甚于 [[Notion]] 和 [[Roam Research]] 以及一切基于网页的笔记应用。
可 Self-hosted:
不可自架,闭源
下面就重点介绍一下我准备去试试的几个服务。
Umami 是一个可以自托管的数据统计服务,可以用来代替 [[Google Analytics]]。 “Umami”,源于 “Umai”,在日语里是“美味、鲜味”的意思。
Matomo (原名 Piwik)是一款使用 PHP 编写的网站访问统计分析工具,开源,可自行架设,可以很好的代替 [[Google Analytics]] ,Matomo 使用 PHP 和 MySQL 实现,已经被超过 100 万网站所使用 。
Matomo 非常强大,并且只需要一来 PHP 和一个数据库,并且其报表分析非常强大。
Fathom Analytics 是一个 [[Google Analytics]] 的代替。Fathom Analytics 是一个基于加拿大的团队推出的服务。
Fathom Analytics 是一个官方推出的 SaaS 平台,是一个收费的商业服务。如果不想使用官方的,也可以利用 Fathom Lite 自己搭建服务。
Fathom Lite 主要是使用 Go 语言 和 JavaScript 编写。Fathom Lite 和 Analytics 的区别可以参考这里。
Plausible 是一个简单的 [[Google Analytics]] 代替。Plausible 是使用 [[Elixir]] 语言编写的,我最早知道这个服务是在 Twitter 上偶然之间看到了创始人分享如何想要找到一个 Google Analytics 代替,然后自己做,最后到如何打造成为一个 SaaS 产品,支撑自己的全部生活的成功故事。
shynet 是一款使用 Python 编写的网站流量分析工具。
Ackee 是一个关注隐私的开源(基于 MIT 协议)网页分析工具,采用轻量级的 Node.js 和 MongoDB 架构,接口使用 [[GraphQL]]。
Ackee 界面简洁美观,采用匿名数据采集的方式,分析你网站的流量并在最小的界面中提供有用的统计信息。对于不需要像 Google Analytics 或 Matomo 这样的全功能营销分析平台的个人来说,是一款非常不错的工具。
除了浏览了一下官网和 GitHub 页面,没有对这些产品更进一步的了解了,但是我个人感觉 Umami 还不错,页面简洁,功能也满足我的使用。然后后端数据库支持 PostgreSQL 和常用的 MySQL,并且浏览了一下帮助文档,发现还支持 PlanetScale ,并且资源消耗也比较小,所以立马 Docker 搞起,创建数据库连接字符串,然后直接拉取镜像就能起来,配合 HestiaCP 申请一个 SSL 证书很快就搞定了。
it-tools 是一个使用 [[Vue.js]] 和 TypeScript 编写的常用 IT 工具的集合。
it-tools 项目中集成了如下的工具:
使用 Docker 镜像可以很快的安装上。更加具体的 docker-compose.yml
可以见这里
git clone https://github.com/einverne/dockerfile.git
cd dockerfile/it-tools
docker-compose up -d
it-tools 也可以作为一个很好的学习 Vue 和 TypeScript 的项目,给这个项目贡献一个常用的工具库,用 Vue 绘制界面可以很好的上手 Vue 的使用。
EV Hosting 上线了域名注册服务,现在可以在 EV Hosting 选购超过 20 种的域名后缀,包括了常见的 .com, .org, .me, .info 等,还上线了 .fun, .life, .studio, .store 等等新的顶级域名。域名的价格在不同时期会略有不同。
在目前阶段,.fun, .pw, .life, .shop, pics, .studio, 等等域名只需要 20~30 元不等就可以购买一年。但是域名的续费一般会比较贵,可以酌情考虑不同的域名后缀。EV Hosting 也会在不同时间提供最优惠的域名注册服务。
请注意购买域名之前,保证自己的注册邮箱是能够接收邮件的,在注册完成之后会受到一封验证邮件,域名注册局在第一次购买时需要验证该邮箱的使用。
在下一个页面中进行支付。
完成付款之后在「我的域名」中就能看到购买的域名。
在 EV Hosting 中,点开对应的域名,可以在侧边栏中修改 NS 名称服务器(Name Server)。
本站提供的四个名称服务器可以在这里 查看(仅注册用户可见)。
更推荐将域名添加到 Cloudflare 后台进行管理,访问 Cloudflare 后台,然后将域名添加到 Cloudflare。使用 Cloudflare 可以免费享受其提供的 CDN,还能隐藏背后服务器的 IP 地址。现在就介绍一下如何将 EV Hosting 购买的域名添加到 Cloudflare 。
首先要有一个 Cloudflare 的账号,进入账号之后,点击 「Add a site」,然后输入自己购买的域名。
然后再下一步中选择 Free,使用免费套餐。然后 Cloudflare 会自动对域名进行扫描,自动找到域名的 DNS 记录,点击导入。然后 Cloudflare 会给出两个 Name server 的地址,将这两个服务器配置到 EV Hosting 域名管理后台的名称服务器中。
完成配置之后,等待一段时间 NameServer 生效,点击页面中的 「Done,check nameservers」。Cloudflare 会自动检查 DNS 是否生效,如果检查通过,会发一封邮件到 Cloudflare 的邮箱中。
添加到 Cloudflare 之后就可以使用 Cloudflare 的 DNS 管理,添加 [[A 记录]], [[TXT 记录]], [[CNAME 记录]] 等等了。
[[Ansible]] 是使用 Python 开发的自动化运维工具。它可以配置管理,部署软件并编排更高级的任务,例如持续部署或零停机滚动升级。Ansible 可以用来管理 crontab。[[Crontab]] 是一个用于在 Unix 和 Unix-like 操作系统上执行定期任务的工具,它允许用户在预定的时间间隔内自动运行命令或脚本。Crontab 是 Cron Table 的缩写,Cron 是一个用于定时执行任务的守护进程。
Crontab 使用一个称为 crontab 文件的特殊文件来定义定期任务的计划。每个用户都可以拥有自己的 crontab 文件,其中包含一系列命令或脚本以及与之关联的时间规则。更加详细的 cron 使用可以参考之前的文章
借助 Ansible,用户可以轻松地创建、修改和删除 crontab 条目,自动化 Crontab 任务的管理。
在没用使用 Ansible 之前,都是通过 crontab -e
手动对 cron 任务进行管理,通常的任务就是备份与同步。但是随着要管理的机器和需要定义的脚本内容越来越复杂,手工编辑 crontab 就无法维护了。
另外在学习 Ansible 之后,了解了「Infrastructure as Code」概念,通过配置文件来定义所有的配置修改是一个不错的解决方案。这样一方面不用自己备份所有的脚本内容,也不用每一次都临时创建。在系统初始化的时候,直接通过 Ansible 就能纳入管理。
首先,确保你的系统上已经安装了 Ansible。你可以使用包管理器来安装它。例如,在 Ubuntu 上,你可以运行以下命令:
sudo apt update
sudo apt install ansible
下面是一些使用 Ansible 管理 crontab 的常见任务示例:
使用 Ansible 创建 crontab 条目非常简单。你可以编写一个 Ansible playbook 文件,其中定义了你要创建的 crontab 条目。以下是一个示例 playbook 文件的内容:
---
- name: Manage crontab
hosts: your_target_hosts
tasks:
- name: Add crontab entry
cron:
name: "rsync backup"
minute: "0"
hour: "2"
job: "/path/to/your/backup_script.sh"
在这个示例中,your_target_hosts
是你要管理 crontab 的目标主机的列表。name
字段是 crontab 条目的名称,minute
和 hour
字段是定时任务的执行时间,job
字段是要执行的脚本或命令。
保存以上内容到一个 YAML 文件(比如 crontab.yml
),然后运行以下命令来执行 playbook:
ansible-playbook crontab.yml
将在目标主机上创建一个新的 crontab 条目。
要修改或删除现有的 crontab 条目,你可以使用 Ansible 的 cron
模块的 state
参数。以下是一个示例 playbook 文件,演示如何修改和删除 crontab 条目:
---
- name: Manage crontab
hosts: your_target_hosts
tasks:
- name: Modify crontab entry
cron:
name: "My cron job"
minute: "30"
hour: "3"
job: "/path/to/your/updated_script.sh"
state: present
- name: Remove crontab entry
cron:
name: "My cron job"
state: absent
在这个示例中,state: present
表示修改 crontab 条目,state: absent
表示删除 crontab 条目。保存以上内容到一个 YAML 文件,然后运行 ansible-playbook
命令来执行 playbook。