法官能为民主做什么 读书笔记

这是 [[20220417-21 天计划]] 中的第一本书,记录一下读书笔记。 这本书的作者是最高法院[[斯蒂芬-布雷耶大法官]],英文的标题是 Making our Democracy Work: A Judge’s View 可以看到这是布雷耶大法官多年的观察记录。 三句话总结书的内容 本书主要分为三个部分: 第一部分通过具体的案例介绍民众是如何建立起对最高法院的信任,并接受他们心中不认同的判决的过程。 [[马伯里案]] 中确立了[[司法审查权]] 切诺基印第安人土地纷争中涉及到了「判决的可执行性」,如 Read more ...


使用 Docker 安装 Mastodon 实例搭建自己的社交网络

早之前就对 Mastodon 有所耳闻,当时 Google+ 关闭的时候就想着自建一个 Mastodon 实例,但是一直因为没有服务器,也没抽出时间就耽搁了,期间一直在寻找一个比较合适的栖息地,但国内的豆瓣越来越封闭,动不动就删贴,Twitter 是进来使用比较多的社交媒体,但也并没有怎么深入的用,只是在上面关注了一些行业里面的大佬。最近正好 So you Start 服务器中的资源很有剩余,就尝试安装一下 Mastodon。 [[Mastodon]] 是一个开源的、分布式社交网络,他创立的目的就是用来代替 Twitter。和 Twitter 一样,用 Read more ...


使用 Husky 来管理 git hook

今天在 GitHub 上看到一个 repo,在其根目录中包含了一个 .husky 的文件夹,好奇之下就去搜索了以,于是发现了 husky 这个项目,这是一个使用 JavaScript 实现的用来管理 Git hooks 的工具。 GitHub: https://github.com/typicode/husky 什么是 Git hook 首先要先了解一下 Git hooks,对于 git 已经是现代开发中必不可少的一个工具了,大家应该都比较熟悉,但是可能很多人在项目中并没有使用过 Git 的 hooks。 Git 的 hooks 允许用户在特定的时 Read more ...

2022-04-15 husky , git-hook , git

每天学习一个命令:tail 输出文件的最后部分内容

tail 命令是一个日常查看日志非常常用的命令,用来在终端显示文件的最后部分内容。 用例 tail 不加任何参数的情况下,默认显示文件最后 10 行内容。 tail /path/to/file.log 显示文件追加的内容 通常业务系统中以文件形式记录日志时会一直追加到文件末尾,可以使用 -f 来显示新追加的内容: tail -f /path/to/file.log 显示文件结尾 100 行 tail -100 mail.log tail -n 100 mail.log 显示文件第20行至末尾 tail -n +20 mail.log Read more ...

2022-04-12 linux , tail , log

Gatsby 静态站点使用入门

Gatsby 是一个基于 [[React]] 的、免费开源的、用于搭建静态站点的框架。Gatsby 虽然是一个静态站点框架,但其数据却可以从任何地方获取之后渲染。 Gatsby 是基于 React 和 [[GraphQL]]。 结合了 webpack, babel, react-router 等前端领域中最先进的工具。 对开发人员来说开发体验非常好。 Gatsby 采用数据层和 UI 层分离的现代前端开发模式。静态 HTML 访问快,对 SEO 非常友好。 数据来源多样化: Headless CMS, markdown, API 等多种方式获取数据。 Read more ...


Nginx 中数据 Buffer size 相关配置

client_body_buffer_size Nginx 分配给请求数据的 Buffer 大小,如果请求的数据小于 client_body_buffer_size ,那么 Nginx 会在内存中存储数据,如果请求的内容大小大于 client_body_buffer_size,但是小于 client_max_body_size,会先将数据存储到临时文件中。 默认的情况下,这个缓存大小是等于两个 memory pages,也就是在 x86 机器上是 8K,在 64-bit 平台上是 16K。 这个空间只有当请求有上传的时候才会被用到,一旦数据被传输到 Read more ...

2022-04-09 nginx , linux , web-server , buffer-size

Laravel 学习笔记:Blade Component

Blade 模板中的 Components 提供了和 section, layout 和 includes 相似的机制。都可以用来复用构造的 Blade 模板。 但 Component 更容易理解,提供了两种方式: class based components anonymous components 使用命令创建: php artisan make:component Alert 创建的文件在 App\View\Components 目录。 make:component 命令会创建一个 template 在 resources Read more ...

2022-04-08 laravel , blade , php

Laravel 学习笔记:部署到生产环境

在本地开发调试的时候使用了 Laravel 提供的 Sail 依赖本地的 Docker 环境,Sail 提供了 Nginx,MySQL,Redis,等等容器,还提供了一个用于测试的 SMTP mailhog,但是生产环境可以使用更加稳定的组件。 Requirements Laravel 应用需要一些基础的系统依赖,需要确保Web 服务器有如下的最低要求: PHP >= 8.0 BCMath PHP Extension Ctype PHP Extension cURL PHP Extension DOM PHP Extens Read more ...

2022-04-07 laravel , php , laravel-deploy

Laravel 学习笔记:多语言及本地化

通过 Laravel 的样例项目也应该能看到 Laravel 对本地化多语言的支持代码了。 观察一下项目的目录结构就能猜出来语言文件在 resources/lang 中。目录结构需要按照 ISO 15897 标准来命令,简体中文 zh_CN /resources /lang /en messages.php /es messages.php 可以看到所有的语言文件都是返回一个 key-value 结构。 JSON 文件 Laravel 还可以定义 JSON Read more ...


利用 Cloudflare 和 Gmail 配置域名邮箱的收发

早在 2022 年年初的时候 Cloudflare 就推出了 Email Routing 的服务,在第一时间就从 Google Domains 中迁移到了 Cloudflare,中间好像也没有遇到什么问题,正常的收到域名邮箱的邮件,转发到 Gmail。 Cloudflare Email Routing (beta) is designed to simplify the way you create and manage email addresses, without needing to keep an eye on additional m Read more ...


最近文章

  • Claude Code /goal:让 AI 自主持续工作直到达成目标的新命令 用 [[Claude Code]] 写代码时,一直有一个令人微妙不适的摩擦:每当 Claude 完成一轮工作,控制权就回到了我这里,我需要再次发出指令,告诉它”继续”“再检查一遍”“还有这个文件没改”。对于那种需要跑很多轮才能完成的任务——比如把一个模块从旧 API 迁移到新 API 直到所有测试通过,或者逐文件重构某个目录直到符合统一规范——这个”人类中继”的环节就显得相当机械,本质上我只是在不停地按确认键。
  • 本地快速切换 Claude Code 和 Codex CLI 账号的几种方案 同时维护个人项目和工作项目的时候,最让我头疼的不是代码本身,而是工具的账号管理。[[Claude Code]] 和 [[Codex]] 这类 AI 编程工具,我在公司有一套账号,个人订阅又是另一套。每次在项目之间切换,都要 claude auth logout 再 claude auth login,不仅耗时,还经常忘了当前用的是哪个账号,写了半天才发现额度消耗到错误的账号上去了。
  • socat:比 netcat 更强大的网络瑞士军刀
  • codex-lb:用负载均衡的思路管理多个 ChatGPT 账号 用 [[Codex]] CLI 做开发的人大概都遇到过这个场景:手头有几个 ChatGPT 账号,分散在不同的订阅计划里,但工具只认一个账号,额度用完了只能手动切换,每次还要重新登录。更头疼的是,当多人共享一个环境,或者想用同一套配置同时跑 Codex CLI 和 OpenCode 时,账号管理很快就变成了一团乱麻。
  • cc-switch:在多个 AI 编码工具之间优雅切换 最近这一年,AI 编码工具的竞争进入了白热化阶段。[[Claude Code]]、[[Gemini CLI]]、[[OpenAI Codex]],每家都在拼命迭代,功能差距越来越小,价格战也越打越猛。于是我开始同时订阅好几个服务,针对不同的任务选用不同的工具——写复杂逻辑用 Claude,快速查文档用 Gemini,处理 Python 脚本用 Codex。