遥遥周刊 第4期
封面图 :
我一直以为这种花是绣球花的一种,但是好像叫做马缨丹, 别名也称为五色梅、五彩花。
花落之后会结绿色的果实,成熟后的果实呈黑紫色,果实与茎叶都含有毒性。
由于极其粗生,无论雨水充足,抑或干旱地区,都见其影踪,甚至赶绝原生草木,被列为世界百大外来入侵种。
本周新闻
1. Django 5.0 released
2. 阿里巴巴智能计算研究院发布了Animate Anyone,一个可以把静态图片和预设动作转换成动画的 AI 工具
阿里巴巴发布了该工具的论文和演示视频,但是没有开源代码。
结果过了几天,字节(ByteDance)直接就放出了类似的项目并提供了代码和演示。
- 项目及演示:https://showlab.github.io/magicanimate/
- 论文:https://arxiv.org/abs/2311.16498
- 源码:https://github.com/magic-research/magic-animate
- Huggingface 在线测试: https://huggingface.co/spaces/zcxu-eric/magicanimate
- Colab 在线测试:https://colab.research.google.com/github/camenduru/MagicAnimate-colab/blob/main/MagicAnimate_colab.ipynb
Reference: https://twitter.com/xiaohuggg/status/1731868943340707855
3. 美国国防部长雷 蒙多直接点名英伟达,要求英伟达停止向中国出售芯片
美国国防部长雷蒙多警告英伟达等芯片公司,不要企图通过围绕分界线重新设计芯片来向中国出售。
4. Meta 开源了它们的样式系统 StyleX
它们整个产品都使用了这套样式系统,包括:Facebook,Instagram,Whatsapp 等。
在官网的文章中,有一篇 Thinking in StyleX 详细阐述了为什么 StyleX 会存在,
现在的 BEM/Utility Classes 存在的问题以及解决了什么问题,值得大家好好读下。
效率工具
1. Excalidraw
Excalidraw 把他们的文本到图表的功能开源了。
举个例子,输入下面的文本,就可以生成下面的图表(付带 Mermaid 的 code)。
how git work in sequence diagram
2. Raycast 插件: Year in Progress
显示今年已经过了多少天,还剩多少天。
时刻提醒自己时间的宝贵。😄
3. Better Go Playground: goplay.tools
Golang 官方提供的 Go Playground 不是很好用,比如 format 代码会把 3rd party 包去掉。
goplay.tools 是一个更好用的 Go Playground(而且开源),除了官方的 Go Playground 的功能外,还支持了以下功能:
- 支持下载 3rd party 的包
- 可选的编程字体:Fira Code, JetBrains Mono 等
- 支持 VIM 模式
4. 截图/贴图工具: PixPin
截图工具也内卷的厉害 😄。
PixPin 是一个截图/贴图工具,现在只支持支持 Windows,Mac 版本即将推出。
技术知识
1. わかりやすい説明のための 10 の鉄則(中文:简单易懂的表达的 10 条原则)
最近 X 上很火的东京大学在读学生写的关于简单易懂的表达的 10 条原则,并出版了书籍。
在大学有效地学习的同时,把自己的心得写成文章和书籍,顺便还能赚钱,真是太棒了。😄
2. git 支持提交空 commit
原来 git 支持提交空 commit,可以用来触发 CI/CD 的工作流。
git commit --allow-empty -m "Empty commit to trigger workflow"
当然还是建议用 gh cli 在本地来触发 CI/CD 的工作流。
gh workflow run <workflow-name> --ref <branch-name>
Reference: How to Push an Empty Commit in Git?
3. docker-compose.yml 中重复利用变量
如果你的 docker-compose.yml (>= v3.4
) 中有很多地方需要用到同一个变量,可以利用 YAML 的 anchor
和 alias
来实现。
如下面的例子,MYSQL_DATABASE
变量在 db
和 backend
两个服务中都用到了,
我们可以把 MYSQL_DATABASE
变量定义在 x-mysql_database
中,然后在 db
和 backend
中用 *MYSQL_DATABASE
来引用。
x-mysql_database
中的 &MYSQL_DATABASE
是 anchor
,db
和 backend
中的 *MYSQL_DATABASE
是 alias
。
docker-compose.yml 中以 -x
开头的变量,docker 不会去解析其结构,所以即使结构不完整也不会有警告。
version: '3.9'
x-mysql_root_password: &MYSQL_ROOT_PASSWORD "sample"
x-mysql_database: &MYSQL_DATABASE "sample"
x-mysql_user: &MYSQL_USER "sample"
x-mysql_password: &MYSQL_PASSWORD "sample"
x-mysql_host_name: &MYSQL_HOST_NAME "db"
services:
db:
image: mysql:8
environment:
MYSQL_DATABASE: *MYSQL_DATABASE
...
backend:
...
environment:
MYSQL_DATABASE: *MYSQL_DATABASE
...
4. Golang 中的 处理钱的库
我们知道在 Golang 中,float64
是不适合用来处理钱的,因为 float64
会有精度问题。
所以在 Golang 中,如果我们有高精度要求,可以用类似 shopspring/decimal 这样的库来处理。
但是,这个库会把数据保存成 string
,这样在做计算的时候,就需要先把 string
转成 decimal
,然后再做计算。
mercari 为了解决这个问题,开发了 mercari/go-bps 这个库, 有需求的朋友可以看看。
Reference: 料率計算における小数点数の扱いについて
5. 用 ChatGPT 学习英语
AI英语老师 pic.twitter.com/l71SvqaCum
— 瞎玩菌 (@Blind___Gamer) December 3, 2023
语言学习
1. 日语: 栄枯盛衰 (えいこせいすい)
栄枯盛衰 (えいこせいすい) 是日语中的四字熟语,就字面意思 😸。
例子: フロントエンド(技術)は栄枯盛衰早すぎてやばい。 意思: 前端(技术)的兴衰太快了,太可怕了。
引用自 同事语录
生活趣味
1. 日本的故乡纳税
喜欢户外产品的朋友,可以看看 新潟県 三条市 的产品。