阅读视图

Omarchy: Bottling that inspiration before it spoils

Over the years, I've learned not to question inspiration. To simply let it drive when it shows up with a full tank. Quite often, I don't exactly know where we're going or even why we're going, but it's repeatedly taken me to just the right place at just the right time, so now I just hop in and say: Let's go!

Case in point: Arch + Hyprland. It's been over a year since I created Omakub to smooth out my own exit path from macOS to Linux, and in the process, helped thousands of others enjoy a beautiful, preconfigured, and relatively familiar desktop experience with Ubuntu. And I continue to think this is an excellent choice for Linux, especially for first-time Mac and Windows defectors.

But this weekend, I just happened to be home alone, and the hype around Arch + Hyprland got the better of me. While Ubuntu is all about being a friendly place for newcomers to Linux, Arch + Hyprland is the exact opposite: It's Linux on hard mode! 

At least that's the reputation, and there's certainly something to that. The Arch ISO literally just dumps you into a terminal with scarcely any direction. Just getting on the Wi-Fi requires learning the arcane command-line options for the iwctl terminal configurator.

But besides iwctl, it's actually not that bad anymore. We now have a cheat code for installing Arch in the form of archinstall. It's a terminal interface for getting all the bits like picking a disk and creating the first user done in the correct order, without having to set aside an entire evening just to get the OS installed. So it didn't take long to get Arch up and running.

That doesn't get you much further, though! By default, Arch is about as minimal as it gets. There's no default graphical interface. There are no niceties. Not even wget or curl by default! It really is just a bare-bones installation of Linux.

But on the other hand, Arch is blessed with the AUR — a Wikipedia-style, community-maintained package management system that seems to have literally every piece of software ever released on Linux, and always in the latest version.

A quarter of Omakub is trying to work around the fact that helpful tools like Alacritty or LazyGit or whatever rarely have official packages for Ubuntu, so you're left doing a lot of manual scripting to get everything a developer would want from a modern Linux setup. Not so with the AUR!

So that's Arch. But Hyprland is even more hilarious. It's a tiling window manager with something as rare in the Linux world as a keen focus on aesthetics! It looks like it was written by visual artists rather than neckbeards. And it's at the core of the modern r/unixporn Linux ricing subculture.

That's not the funny part, though. The funny part is how ridiculously atomized the entire thing is. Hyprland comes with absolutely nothing out of the box. No login screen, no menu bar, no notification system, no file manager, no visual settings application. Just a text-based configuration file, a wiki, and an outline on a map for how to design your own adventure.

This means that if you're interested in running Hyprland, and you intend to set it all up from scratch, you're probably signing up for at least a good 10+ hours — just to install and configure everything! Now, there are some precompiled setup scripts out there already, but most of them still require you to do a ton of manual legwork before you reach that beautiful summit of a complete system.

So while the downside of Arch + Hyprland is that literally every last detail requires you to make a choice and a config file to move on, it's also its upside: you can change EVERYTHING! And the core window tiling magic of Hyprland is one of the most intoxicating ways of using a computer that I've ever experienced. It looks amazing; it feels amazing (if you prefer using a keyboard instead of a mouse!).

I've poured hours and hours into this quest over the weekend, and yet I'm still not even done with my first Arch + Hyprland build! My login screen looks like shit. I haven't decided on a final menu bar configuration. But what is working — the basic tiling flow and look — is so nice that the inspiration keeps driving the project forward.

Which, of course, I've already decided to codify. I'm not going through all this work to set up a beautiful, preconfigured, fully-functional, out-of-the-box Arch + Hyprland combo and then not share it with anyone who's curious (and might not have 10–20 hours for this kind of side quest available in their schedule). So of course I registered a domain and found a way to draw some ASCII art: Omarchy is on the way!
  •  

半月抓俩鳖

晚饭过后,会去附近的河边儿溜达,北京的这些河道治理真的非常好,鱼虾水产非常丰富,5月23号傍晚溜达时就看到一只小鳖在水中自在的游动,手边儿没网,赶紧回家拿网,回来后鳖还在,手到鳖来,非常惊喜。

直径大约13CM,ChatGPT说是中华鳖,家里的保姆是四川人,极力推荐炖了吃,霸王鳖鸡,对产妇可大补呀。结果媳妇儿不敢吃,遂作罢。放到脸盆里挪到窗台上,结果第二天早上吃完早饭发现跑了。楼上摔下,活不见鳖,死不见尸。

今天(6月1号)饭后,想着跟姐姐聊下家里孩子高考的事儿,河边没走多远就看到黑乎乎一坨,比上次见到的还大。再细看,伸着脑袋蛄蛹着呢,哎,又没带网。赶紧回家拿网,回来往下一扣,又是手到鳖来,非常轻松。开着视频给姐姐看现场捉鳖,声音提醒了周围的人,顿时大人小孩儿围一圈,非常热闹,人群里一个老头也手提抄网说:“这河里确实不少,我自己也抓到过,我邻居家养了好几个.........可都没你抓到的个头大.......”。听完这话更兴奋了。

回到家,保姆说这种野生鳖,在我们老家300元一斤,你这个得3斤多,一千多块钱呢。问下媳妇儿意见,还是不敢吃,不只是顾虑河水水质,也确实是没吃过,很害怕。

查了下,上次的直径13CM,大概需要3~5年,这次的20CM,需要6~10年的成长期,该算是老鳖了。先养着吧,回头不想养了,再扔回河里。

20CM,大黑鳖
13CM 小绿鳖

  •  

报案不需要身份信息了?

咚咚咚,有人砸门,出门去问,说是我们楼上漏水把他们房顶弄脏了,接着就是各种大声抱怨,我说我们没有用水,并且家里有孩子,咱楼道说话,以随你去看看情况。结果老头子越说越气开始夹带脏字,我也开始生气,并且催促他赶紧下楼,不要在家门口吼叫。老头子看我不是乖乖赔笑,就越发生气,脏话越来越难听,好吧,既然不想解决问题,就想侮辱人,果断电话报警,然后拍视频留证据,最后带到派出所,老头子跟民警横了好一会儿,才乖乖道歉,还不忘加一句:“我今年76了,我给你鞠一躬行吧”。

临走民警说,你先回去吧,稍后把立案告知书送家里。下午文件送到,签完字突然想起几个好奇点:

1、从报警到从派出所离开,自始至终没有人任何人问过我姓名身份证号等身份信息,但是“立案告知书”上却清晰显示我的名字,为什么?

2、隐约想起,110电话接通的一瞬间,似乎接线员直接说出了我的小区名字,只是问几号楼,是我记错了?

3、iPhone手机双卡双待,但是拨打110,120,119这类公共号码,系统会自动切换为主号,即使拨号界面设置为副号。

民警走了,才想到自己这些。尤其是第一个,人脸识别?手机号蜂窝定位?有点儿后怕呀~

  •  

慎独,autocontrole 与 Saudade

中国传统文化中的「慎独」理念可谓融贯三教,深远而恒久。此词源于《中庸》,强调即使在独处无人、缺乏外在监督的情况下,仍要谨慎自持,不做任何有违道德的事情:

莫见乎隐,莫显乎微,故君子慎其独也。

若究其深意,正如《大学》所阐述:

所谓诚其意者:毋自欺也,如恶恶臭,如好好色,此之谓自谦,故君子必慎其独也!

在葡萄牙的传统文化中,也存在着相似的理念,被称为 "autocontrole" —— 即以健康的方式处理思想、感情和情绪,从而应对问题或意外情况的能力。这一理念深深植根于天主教传统之中,被视为一种重要的生活智慧。

除了 "autocontrole" 之外,葡萄牙文化还孕育了一个独特而深刻的概念 —— "Saudade"。这个词汇承载着「通常由某物或某人的距离或缺席所引发的,一系列复杂的感情」。它体现了葡萄牙人深层的内在情感反思传统,是一种对失去或远离事物的深切怀念,同时交织着希望与忧郁的复杂情感。这种独特的情感文化源于葡萄牙悠久的海洋传统。

在「大发现时代」,勇敢的水手们远航探索未知海域,与家人往往要分离数年甚至永远无法重逢。正因如此,葡萄牙本土音乐 Fado(法朵),成为表达 Saudade 最生动、最真挚的方式。那忧郁深沉的旋律、令人难忘的嗓音和充满诗意的歌词,经常触及爱情、失去和渴望等永恒主题,诉说着人类内心最深处的情感。


本文初稿在 Tana 上完成,这是一款通过将 AI 驱动的结构化数据库与流畅的大纲列表相结合的笔记软件,重新定义了现代知识管理,使用户能够无缝地组织相互关联的想法,同时保持自由形式思考的灵活性。

  •  

1Panel自动同步Github仓库

之前使用的是宝塔面板,由于自带webhook,所以可以很方便的同步github仓库,达到更新网站的功能,但是由于目前转移到了1Panel,每次更新文章后都需要手动拉取,略显麻烦,所以研究了一下,最重使用action执行ssh链接并执行命令解决了这个问题。
  •  

之外小馆清扬湖

又一探店游记。 已经歇业的本市赫赫有名的西水东漫咖啡老板娘去年在城南清扬公园开设了新基地“之外小馆”,今日应朋 […]
  •  

值得入手的Steam模拟类神作:缺氧(Oxygen Not Included)

各位小伙伴!今天给大家安利一款超硬核、超上头的模拟经营类游戏——缺氧(Oxygen Not Included)! 如果你喜欢挑战脑力、沉浸式体验和无限可能的建造乐趣,这款游戏绝对不容错过!

缺氧是由 Klei Entertainment(饥荒开发商)打造的一款生存模拟类游戏。玩家需要在一个地下星球中管理一群可爱的小人(复制人),通过建造基地、分配资源、应对环境危机,让他们在缺氧、缺食、缺电的恶劣环境中存活下来!

特点

  • 超高自由度的建造体验
    在游戏中,你可以自由规划地下基地,设计复杂的管道、电力和氧气系统。想建一个自给自足的生态圈?还是一个高科技的自动化基地?全看你的脑洞!从简单的茅厕到复杂的核反应堆,建造过程既烧脑又满足
  • 硬核的资源管理
    氧气、食物、水、能源、温度……每一项资源都需要你精打细算。稍有不慎,小人可能会因为缺氧窒息、食物中毒,甚至被高温烫伤
  • 随机生成的挑战
    每次开局的地图和资源分布都不相同,随机事件(如陨石雨、火山喷发)让每一局都充满新鲜感。你需要根据环境灵活调整策略,永远不会觉得无聊
  • 丰富的 MOD 支持
    社区 MOD 丰富多样,从增加新建筑到优化游戏体验,应有尽有!无论你是想降低难度还是挑战极限,都能找到适合自己的玩法

我的玩法开局看水和铜多不多,不多重开

适合人群

  • 喜欢模拟经营
  • 热衷挑战的硬核玩家:喜欢烧脑、追求极限生存
  • 创意玩家:想打造独一无二的地下乌托邦

当然耐心很重要, 同时要有自我控制能力,因为很容易肝上头

入手性价比

推荐直接购买缺氧完整包, 我上个月入手大概不到 90CNY。

缺氧完整包

推荐购买正版,请勿相信廉价购买,谨防虚假入库,导致游戏和钱两失。

新手建议

  • 前期多关注氧气和食物,善用“暂停”功能规划基地
  • 游戏上手稍有难度,但官方有中文支持,社区教程也超多,入门后根本停不下来
  • 多在 B 站搜搜相关教程
  • 早期多重开几次就会玩了。

官方介绍节选

  • 建立广阔的基地以及探索生存所需的资源:
    从挖掘、资源分配到管道、电力系统,太空殖民地的一切都在你的掌控之下。然而,资源会从你第一次呼吸开始被消耗 ,所以如果你想生存下来的话,就一定要确保你探索得够快。
  • 伴随着压力模拟的精神状态问题
    给你的殖民地提供娱乐休闲活动、优越的住宿条件和更好的食物,来保证生存不会受到精神状态的影响。每个复制人之间都有差异,会对压力做出不同的潜在破坏性反应。 所以不管付出什么代价,一定要确保他们拥有愉悦的心情
  • 用复杂的气体和液体模拟系统来提高效率
    建立一个连锁的管道系统,可以迅速的将燃料和液体输送到基地的关键区域。优质的规划以及获得的加成可以让你的殖民地转变成一个运转良好的不朽机器
  • 通过电网模拟系统来获得电力:
    你可以通过众多不同的能源来获得电力,包括煤,氢,天然气或者仅仅是朴实老旧的油脂。修复电力流失,电路过载和崩溃问题以保持你殖民地的顺利运行

欢迎关注,可以看看我郑再打工每天都在折腾什么。

  •  

轻松管理K3s集群服务:System Upgrade Controller 的超实用指南

K3s 作为轻量级 Kubernetes 发行版,以其高效、简洁的特性深受开发者与运维人员喜爱。但手动升级 K3s 集群可能是个繁琐的任务,幸好有 System Upgrade Controller!这个工具能让你的 K3s 集群实现自动化、无宕机升级,省时又省心。本文将带你了解 System Upgrade Controller 的魅力,并提供简洁的部署步骤,让你的集群管理更轻松!

主要用于升级 k3s 集群节点上的服务,不仅仅局限于 k3s 服务本身。

简介

System Upgrade Controller 是 Rancher 开发的一个自动化升级工具。它通过 Kubernetes 原生资源(如 Plan)管理节点和 K3s 版本的升级,核心优势包括:

  • 自动化:一键配置,自动完成 K3s 版本升级
  • 零宕机:逐节点升级,确保服务不中断
  • 灵活性:支持自定义升级策略,适配各种集群规模
  • 轻量高效:与 K3s 的低资源占用理念完美契合

如果你想让 K3s 集群保持最新或者减少运维负担,绝对值得一试!

项目地址:

在 K3s 上部署

以下是快速部署 System Upgrade Controller 的步骤,简单易上手

kubectl apply -f https://raw.githubusercontent.com/rancher/system-upgrade-controller/master/manifests/system-upgrade-controller.yaml

或者

kubectl apply -k github.com/rancher/system-upgrade-controller

服务控制器默认会部署到 system-upgrade 命名空间下

kubectl get deploy -n system-upgrade
NAME                        READY   UP-TO-DATE   AVAILABLE   AGE
system-upgrade-controller   1/1     1            1           335d

使用场景

常见使用如下,由于权限极高,操作时需要确保重复执行没影响。

  • 升级 k3s 本身
  • 升级 k3s 集群节点服务

升级 k3s 服务

由于我现在的环境特殊,只有一个 master 节点,每次跨版本升级 master 节点都是先手动升级到最新版本,然后在使用下面的命令升级计算节点。(保障至少 1 个控制节点版本是最新的)

---
apiVersion: v1
kind: Secret
metadata:
  name: k3s1306
  namespace: system-upgrade
type: Opaque
stringData:
  upgrade.sh: |
    #!/bin/bash

    set -x

    binfile=$(command -v k3s)

    $binfile -v | grep "v1.30.6" && (
      echo "done"
      exit 0
    ) || (
      wget https://c.ysicing.net/oss/tiga/linux/amd64/k3s
      chmod +x k3s
      mv k3s $binfile && systemctl restart k3s
    )
---
apiVersion: upgrade.cattle.io/v1
kind: Plan
metadata:
  name: k3s1306
  namespace: system-upgrade
spec:
  concurrency: 3
  nodeSelector:
    matchExpressions:
      - {key: kubernetes.io/os, operator: Exists}
  tolerations:
  - {operator: Exists}
  serviceAccountName: system-upgrade
  secrets:
    - name: k3s1306
      path: /host/run/system-upgrade/secrets/k3s1306
  cordon: false
  version: latest
  upgrade:
    image: hub.ysicing.net/ysicing/debian-upgrade:20230909
    command: ["chroot", "/host"]
    args: ["sh", "/run/system-upgrade/secrets/k3s1306/upgrade.sh"]

想了解更多官方的姿势,可以参考

升级集群服务

  • 升级 tailscale 服务
---
apiVersion: v1
kind: Secret
metadata:
  name: ts-script
  namespace: system-upgrade
type: Opaque
stringData:
  upgrade.sh: |
    #!/bin/bash

    set -x
    if tailscale version 2>/dev/null | grep -q "1.82.5"; then
        echo "Tailscale 1.82.5 already installed"
        exit 0
    fi
    export DEBIAN_FRONTEND=noninteractive
    apt-get update -qq
    apt-get install -y --no-install-recommends tailscale
---
apiVersion: upgrade.cattle.io/v1
kind: Plan
metadata:
  name: ts1825
  namespace: system-upgrade
spec:
  concurrency: 1
  nodeSelector:
    matchExpressions:
      - {key: kubernetes.io/os, operator: Exists}
  tolerations:
  - {operator: Exists}
  serviceAccountName: system-upgrade
  secrets:
    - name: ts-script
      path: /host/run/system-upgrade/secrets/ts-script
  cordon: false
  version: latest
  upgrade:
    image: hub.ysicing.net/ysicing/debian-upgrade:20230909
    command: ["chroot", "/host"]
    args: ["sh", "/run/system-upgrade/secrets/ts-script/upgrade.sh"]
  • 升级 easytier
---
apiVersion: v1
kind: Secret
metadata:
  name: debian
  namespace: system-upgrade
type: Opaque
stringData:
  upgrade.sh: |
    #!/bin/sh
    set -e
    if easytier-core -V 2>/dev/null | grep -q "2.2.4"; then
        echo "easytier 2.2.4 already installed"
        exit 0
    fi
    apt-get --assume-yes update
    DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade --assume-yes
    curl https://c.ysicing.net/oss/scripts/easytier.sh | bash
---
apiVersion: upgrade.cattle.io/v1
kind: Plan
metadata:
  name: debian-25021514
  namespace: system-upgrade
spec:
  concurrency: 3
  nodeSelector:
    matchExpressions:
      - {key: kubernetes.io/os, operator: Exists}
  tolerations:
  - {operator: Exists}
  serviceAccountName: system-upgrade
  secrets:
    - name: debian
      path: /host/run/system-upgrade/secrets/debian
  cordon: false
  version: latest
  upgrade:
    image: ysicing/debian
    command: ["chroot", "/host"]
    args: ["sh", "/run/system-upgrade/secrets/debian/upgrade.sh"]

通过上面 3 个例子,其实就是帮你去每个节点执行相关脚本,如果你有大量类似的重复的工作,System Upgrade Controller 就是个绝佳的运维工具,它让版本管理变得简单、高效、无忧,显著提升你的运维体验。


欢迎关注,可以看看我郑再打工每天都在折腾什么。

  •  

上海again

去年年初回国刚途经上海,年底又来了,因为机票便宜,也正好顺便弥补遗憾——去东方明珠。因为上次约了我十几年未见的大学同学,所以本来这次没想约人,但就是这么机缘巧合,豆哥大学乐团的朋友们小小聚了聚,意想不到的开心。就是这么正好,我跟豆哥异地大学,最后同学们倒是“殊途同归”。

上海集锦
集锦

看着“奄奄一息”的豆哥,我知道这天的东方明珠旋转餐厅是去不成了,便提前给坡坡做了心理建设。坡坡很懂事,理解了我的“遗憾更有故事”说法,并表示长大后赚钱了再带我们去。我在劝说她的过程中也意识到自己的成长——不再纠结于不可能的事情,而是着眼于未来。

遗憾更有故事,遗憾也超快被弥补了哈哈!快给我的超绝行动力点赞!总而言之言而总之,玩得很尽心——斥巨资把三个球全玩了,眺望了上海的白天和夜晚,在旋转餐厅大快朵颐,还走了空中栈道(除了豆哥),简直太完美了!

东方明珠
到此一游照

以下仍是故事几则,毕竟流水账每次都一样,还是记录些印象深刻的小事更值得。

这次来上海主要是弥补遗憾的,所以并未待太久,确实也不好意思压榨跟父母团聚的时间。因为目标明确,所以我直接订了外滩的亚朵,虽然整体设施没有上次世博园好,但体验却大不相同。主要原因就在于地段。话说世博园那边真的挺冷清的,天气也灰蒙蒙的,所以上次的上海行之后我留下了这样的结论——

……这次近距离重新接触了解上海之后,我又犹豫了,机会确实多,但压力也是真的大。朋友说,如果你想要拥有事业的同时兼顾家庭,那么上海远远不及日本。
……
特别是回了福州以后,我第一次以定居的角度对比审视两座城市的差异,最后发现答案其实早就有了,那就是我们选择定居神户的理由。二线城市的慢生活,进可攻退可守。不求大富大贵,只求小富则安。

可这次的体感截然不同,果然还是市中心的魅力加成吗!到哪里都超级方便,天气好,人不多,生活气息浓郁,也比想象的干净,整个就是对上海重拾信心了哈!

接着说一下社交距离。因为在日本待久了,其实对路人是比较冷淡疏离的。不过因为我性格本就如此,豆哥又社恐,所以我俩都挺适应。回国后,在我们自己的家乡福州那没话说,就是感觉都是老乡,所以聊聊天正常。但是在上海就觉得很神奇了,在电梯里会有人跟你搭话,还不是一对一那种,是好多家一起聊,大家都能凑几句,蛮好玩的。坡坡刚开始还很不习惯,毕竟她遗传豆哥的性格多一些,但终归小孩,还是很喜欢热闹的,自己也开始巴拉巴拉讲起来。可能也因为在日本,我们聊天都说中文,周围日本人本来就不咋反应,再听个外语想反应都反应不来,所以我们都是默默低声聊天或者不聊。但在中国可就不同啦,其他人听到坡坡奶声奶气地提问,也会加入我们的聊天里来。坡坡虽然看起来小脸一红有点害羞,但是离开人群后又会激动地跟我说起刚才的事,可见她还是喜欢聊天的。我的基因在逐渐占据上风!

可能也正是因为更加紧密的社交距离,我们安心地收下了酒店前台送的圣诞礼物,和在酒店电梯里一个漂亮小姐姐送给坡坡的大草莓。草莓摊就在酒店门口,但考虑到我们待得不久,怕吃不完坏掉,也没有空余肚子了(每次回国都这样,幸福),所以就没买。没想到在电梯里人挤人的时候,一个小姐姐看到可爱小坡,就把手上的草莓送给她了。坡坡抬头问我可以吗,我说可以,记得谢谢姐姐,她便开心地道谢收下。小姐姐也很开心地说了不用谢,感觉整个梯厢都充满了甜甜的味道。

最后一个故事仍是跟社交距离有点关系,有个路人阿姨帮聚会的我们拍合照。豆哥乐团的学弟很给力,找了个很有格调的餐厅。餐厅离外滩不远,听我们说晚上要去东方明珠吃饭,所以大家就边聊天边陪我们慢慢逛过去。坡坡率先走不动,我背了一会儿就睡着了。于是朋友提议在外滩的露天卡座坐下休息喝咖啡。我们大聊特聊,还不忘拍照,毕竟天时地利人和。朋友拿出相机以自拍的方式留影,边上有个阿姨实在看不下去了,主动走上来说帮我们拍。我们非常高兴,阿姨反而有点脾气,操着上海普通话调整我们的姿势,还自己选了角度和构图,横向竖向都拍了好几张。我有点子理解为什么会有外地人说上海人排外了,我觉得是方言和表达的锅。其实我心里特别谢谢这位阿姨,因为她不仅帮忙了,还提供了专业的帮助。但是那种劲儿劲儿的感觉,年轻的我很容易误解为她不愿意帮忙嫌麻烦。这可能有点像东亚父母对孩子的态度,心里爱但嘴上要嫌弃。小时候不懂,长大了才明白。

如果没有意外,今年夏天和冬天都会回国。也不知道是年纪大了不爱折腾了,还是更想多待在父母身边,不仅仅是陪伴他们,也想做回无忧无虑的小孩。哎,我最近可太累了。近期应该都不会再去上海了,有缘再见,肯定会再见的。

  •  

C++的左值/lvalue, 右值/rvalue和右值引用/rvalue references


C++ 左值(lvalue)、右值(rvalue)与右值引用(rvalue reference)

理解 C++ 中的左值、右值及其引用形式,是掌握现代 C++(尤其是 C++11 以后的移动语义/move和完美转发/perfect forwarding)必不可少的基础

📌 什么是左值(lvalue)

左值指的是有名字、可寻址的对象,通常可以出现在赋值语句的左侧。

int x = 10;
x = 20;        // x 是左值
int* p = &x;   // 可以取地址

📌 什么是右值(rvalue)

右值是临时对象,不能被取地址,通常是表达式的结果或字面值常量。

int x = 10;
int y = x + 5;  // x + 5 是右值
y = 100;        // 100 是右值

右值不能出现在赋值语句左侧,且生命周期通常较短。

📌 右值引用(rvalue reference)

C++ 11 引入了右值引用(通过 && 语法),允许我们“捕获”右值。这为移动语义提供了基础。

void process(int& x);   // 左值引用
void process(int&& x);  // 右值引用

int main() {
    int a = 42;
    process(a);        // 调用 int&
    process(10);       // 调用 int&&
}

右值引用通常与移动构造函数、移动赋值运算符std::move 和完美转发/forwarding一起使用。

📊 左值 vs 右值 比较

特性 左值(lvalue) 右值(rvalue)
是否有名称 通常没有
是否可取地址 可以 不可以
是否可出现在赋值语句左侧 可以 不可以
生命周期 受作用域控制 通常是临时的
是否可绑定到 &&

🧪 std::move 与移动语义

std::string a = "hello";
std::string b = std::move(a);  // a 被“移”给了 b

std::move 并不移动对象,它只是把左值强制转换为右值,从而触发移动构造函数或移动赋值运算符。

💡 使用建议

  • 使用左值引用(&
    • 当你需要访问和修改已有变量
    • 不涉及资源转移
  • 使用右值引用(&&
    • 希望接管临时对象的资源
    • 编写移动构造函数或移动赋值
    • 优化性能,避免深拷贝

总结

左值和右值是 C++ 表达式语义的核心。右值引用是现代 C++ 的重要特性,能显著提高资源管理和性能表现。理解它们的区别和用法,是成为高阶 C++ 程序员的基础。

C/C++编程

英文:C++ Lvalue, Rvalue and Rvalue References

本文一共 541 个汉字, 你数一下对不对.
C++的左值/lvalue, 右值/rvalue和右值引用/rvalue references. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c C++的左值/lvalue, 右值/rvalue和右值引用/rvalue references C++ C++ 学习笔记 折腾 程序设计 编程 计算机
The post C++的左值/lvalue, 右值/rvalue和右值引用/rvalue references first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. C++中的 const和constexpr 比较 C++ const 与 constexpr:真正的区别是什么? 一眼看都是定义常量。 为什么这很重要 现代 C++ 鼓励编写不可变、高效且表达力强的代码。两个关键字—const 和 constexpr—是这一理念的核心。它们看起来很相似,但理解它们的不同语义,对于正确利用编译期与运行期行为至关重要。 高层次对比 特性 const constexpr...
  2. 简易教程: C++的智能指针 C++ 智能指针教程 C++ 中的智能指针提供了自动且安全的内存管理。它们通过 RAII(资源获取即初始化)机制,帮助开发者避免内存泄漏和悬空指针的问题,确保对象在生命周期结束时被正确释放。 本教程将介绍 C++ 中三种主要的智能指针: std::unique_ptr:独占式所有权 std::shared_ptr:共享式所有权 std::weak_ptr:非拥有式弱引用 1. std::unique_ptr unique_ptr 拥有独占所有权。一个资源只能被一个...
  3. 被动收入之: 微博红包 今年开始重新经营我的微博帐号 drlai 收到两笔微信红包,应该是来自于官方的支持,150元(成功提现到支付宝)。虽然这不能持久,也没多少,但毕竟实现了零的突破,意义重大。 如果流量上来,内容创作者可能会接受到比较多的赞赏,这也是一个比较简单的变现方法。这也能作为一种被动收入,不过如果不是头部网红,可能杯水车薪,但如果你有好几个类似这样的,也能积少成多! 在用户中心,微博用户可以每天登陆手机微博APP打卡,获取点数和少量的红包钱(几分钱),积少成多! 微博做些小任务可获得积分和几分钱。聊胜于无。 微博的主要盈利模式 微博的主要盈利模式主要包括以下几个方面: 广告收入:微博的大部分收入来源于广告,尤其是品牌广告和效果广告。广告形式包括信息流广告(类似于推文广告)、热门话题广告、开屏广告和视频广告。品牌和企业可以利用微博庞大的用户群和社交互动来提升曝光率、推广品牌和产品。 会员服务:微博提供的VIP会员服务,用户可以支付订阅费用来享受更多的特权,比如个性化的主题、特有的表情包、私密权限设置等。这些会员服务主要面向个人用户,提升其社交体验。 直播和打赏:微博提供直播平台,用户可以通过购买虚拟礼物来支持主播,微博会从这些打赏中抽取一定比例的分成。此外,微博与内容创作者分成,通过内容付费、知识付费等形式变现。 增值服务:针对企业和大V(拥有大量粉丝的用户),微博还提供增值服务,如账号认证、粉丝数据分析、精准推送、推广和营销工具等。这些服务帮助企业提升营销效果,同时也增加了微博的收入来源。 电商和导流:微博上有大量的电商导流业务,尤其是和明星、网红的合作推广。微博用户在浏览社交内容时,可以直接跳转到商品购买链接,微博通过这种方式赚取导流佣金。 游戏联运:微博也会与一些游戏公司合作推出联合运营的游戏,微博负责推广和流量引入,用户充值或付费时,微博可以获得一部分的分成。 这些模式相结合,使得微博能够在广告市场、内容创作和电商等多个领域获利。...
  4. 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) 程序员的未来?Vibe Coding + AI 一起上! 借助 AI 快速开源了三个小工具 最近,我利用 ChatGPT-4o 和 o4-mini 快速开发并开源了三个小工具。起因其实很简单——每次想转换 YAML/JSON 或进行...
  5. 换了个奥迪Q5大灯花了我1000英镑 我那辆奥迪Q5 SUV今年年检没通过,原因是左前车灯坏了,需要更换。车厂告诉我,光是订购零件就要700多英镑,加上人工费,总费用得1000英镑。但没办法,如果不修,车辆年检(MOT)就过不了,车也不能上路。 MOT是英国的机动车强制性安全检测(Ministry of Transport Test)的简称。 近侧前位置灯不工作 drl/位置灯集成(4.2.1(a)(ii)) Nearside Front Position lamp not working drl/position...
  6. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  7. 你给SteemIt中文微信群拖后腿了么? 这年头不缺算法, 就缺数据. 这两天花了很多时间在整API上, 整完之后自己用了一下还觉得真是挺方便的. 今天就突然想看一看自己是否给大家拖后腿了, 于是调用每日中文区微信群排行榜单的API, 刷刷拿着 NodeJs 练手: 1 2 3 4 5 6...
  8. 通过脚本让电脑实现模拟按键(一直在线功能): VBScript/JScript/PowerShell 本文详细讲诉了用脚本实现定时模拟计算机按键,用于保持系统一直在线的状态。脚本可以使用VBScript、JScript和Powershell。这三种脚本语言都是微软/Microsoft的,不过前两种已经要被淘汰了。 在 Windows 环境下,这三种脚本(PowerShell、VBScript 和 JScript)都通过 CreateObject 来调用 COM 对象 WScript.Shell,以实现模拟按键的功能。例如,可以每隔一分钟模拟按下 Scroll Lock 键一次,从而保持“在线”状态(Keep Alive)。Scroll...
  •  

夏日蓝调宝藏咖

昨日还是冷风阵阵,今日气温已直冲三十,穿着衬衫颇有些热。 马上端午假期了,又是月末,该完成的活儿七七八八,下午 […]
  •  

C++中的assert和static_assert的区别


C++ assertstatic_assert 的区别

C++ 提供了两种机制来验证程序中的假设(断言):assertstatic_assert。虽然它们看起来类似,但它们在不同的阶段工作,并且用途也不同。

🔍 assert — 运行时检查/断言

assert 用于在程序运行时验证条件是否成立。如果条件为假,程序会打印错误信息并中止运行。

#include <cassert>

int divide(int x, int y) {
    assert(y != 0);  // 如果 y 为 0,程序会中止
    return x / y;
}

assert 通常只在调试模式下启用,如果定义了 NDEBUG,这些断言会被禁用。

🧱 static_assert — 编译时检查/静态断言

static_assert 在编译期间检查条件是否成立。如果条件不满足,编译器会直接报错,阻止程序编译。

static_assert(sizeof(int) == 4, "此代码假设 int 是 4 字节");

它要求条件是一个常量表达式,特别适合在模板、类型检查或平台限制中使用。

📊 对比表

特性 assert static_assert
检查时机 运行时 编译
是否可被禁用 可以(通过 NDEBUG 不可以
是否需要常量表达式 不需要 需要
失败时表现 程序中止 编译失败
主要用途 调试时的逻辑检查 编译时的类型或平台验证

💡 使用建议

  • 适合使用 assert 的场景:
    • 检查运行时数据或逻辑
    • 验证函数参数或程序状态
    • 只在调试模式下需要检查
  • 适合使用 static_assert 的场景:
    • 验证类型或大小是否符合要求
    • 确保模板参数使用正确
    • 编译时需要强制保证某些条件

总结

assertstatic_assert 都能帮助你更早地发现程序中的问题,但它们发生的时间点不同。static_assert 更适合在编译阶段做静态验证,而 assert 更适合在调试阶段检查运行时逻辑。

C/C++编程

英文:C++ assert vs static_assert

本文一共 479 个汉字, 你数一下对不对.
C++中的assert和static_assert的区别. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c C++中的assert和static_assert的区别 C++ C++ 学习笔记 折腾 程序设计 计算机
The post C++中的assert和static_assert的区别 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 简易教程: C++的智能指针 C++ 智能指针教程 C++ 中的智能指针提供了自动且安全的内存管理。它们通过 RAII(资源获取即初始化)机制,帮助开发者避免内存泄漏和悬空指针的问题,确保对象在生命周期结束时被正确释放。 本教程将介绍 C++ 中三种主要的智能指针: std::unique_ptr:独占式所有权 std::shared_ptr:共享式所有权 std::weak_ptr:非拥有式弱引用 1. std::unique_ptr unique_ptr 拥有独占所有权。一个资源只能被一个...
  2. C++中的 const和constexpr 比较 C++ const 与 constexpr:真正的区别是什么? 一眼看都是定义常量。 为什么这很重要 现代 C++ 鼓励编写不可变、高效且表达力强的代码。两个关键字—const 和 constexpr—是这一理念的核心。它们看起来很相似,但理解它们的不同语义,对于正确利用编译期与运行期行为至关重要。 高层次对比 特性 const constexpr...
  3. 被动收入之: 微博红包 今年开始重新经营我的微博帐号 drlai 收到两笔微信红包,应该是来自于官方的支持,150元(成功提现到支付宝)。虽然这不能持久,也没多少,但毕竟实现了零的突破,意义重大。 如果流量上来,内容创作者可能会接受到比较多的赞赏,这也是一个比较简单的变现方法。这也能作为一种被动收入,不过如果不是头部网红,可能杯水车薪,但如果你有好几个类似这样的,也能积少成多! 在用户中心,微博用户可以每天登陆手机微博APP打卡,获取点数和少量的红包钱(几分钱),积少成多! 微博做些小任务可获得积分和几分钱。聊胜于无。 微博的主要盈利模式 微博的主要盈利模式主要包括以下几个方面: 广告收入:微博的大部分收入来源于广告,尤其是品牌广告和效果广告。广告形式包括信息流广告(类似于推文广告)、热门话题广告、开屏广告和视频广告。品牌和企业可以利用微博庞大的用户群和社交互动来提升曝光率、推广品牌和产品。 会员服务:微博提供的VIP会员服务,用户可以支付订阅费用来享受更多的特权,比如个性化的主题、特有的表情包、私密权限设置等。这些会员服务主要面向个人用户,提升其社交体验。 直播和打赏:微博提供直播平台,用户可以通过购买虚拟礼物来支持主播,微博会从这些打赏中抽取一定比例的分成。此外,微博与内容创作者分成,通过内容付费、知识付费等形式变现。 增值服务:针对企业和大V(拥有大量粉丝的用户),微博还提供增值服务,如账号认证、粉丝数据分析、精准推送、推广和营销工具等。这些服务帮助企业提升营销效果,同时也增加了微博的收入来源。 电商和导流:微博上有大量的电商导流业务,尤其是和明星、网红的合作推广。微博用户在浏览社交内容时,可以直接跳转到商品购买链接,微博通过这种方式赚取导流佣金。 游戏联运:微博也会与一些游戏公司合作推出联合运营的游戏,微博负责推广和流量引入,用户充值或付费时,微博可以获得一部分的分成。 这些模式相结合,使得微博能够在广告市场、内容创作和电商等多个领域获利。...
  4. 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) 程序员的未来?Vibe Coding + AI 一起上! 借助 AI 快速开源了三个小工具 最近,我利用 ChatGPT-4o 和 o4-mini 快速开发并开源了三个小工具。起因其实很简单——每次想转换 YAML/JSON 或进行...
  5. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  6. 你给SteemIt中文微信群拖后腿了么? 这年头不缺算法, 就缺数据. 这两天花了很多时间在整API上, 整完之后自己用了一下还觉得真是挺方便的. 今天就突然想看一看自己是否给大家拖后腿了, 于是调用每日中文区微信群排行榜单的API, 刷刷拿着 NodeJs 练手: 1 2 3 4 5 6...
  7. 换了个奥迪Q5大灯花了我1000英镑 我那辆奥迪Q5 SUV今年年检没通过,原因是左前车灯坏了,需要更换。车厂告诉我,光是订购零件就要700多英镑,加上人工费,总费用得1000英镑。但没办法,如果不修,车辆年检(MOT)就过不了,车也不能上路。 MOT是英国的机动车强制性安全检测(Ministry of Transport Test)的简称。 近侧前位置灯不工作 drl/位置灯集成(4.2.1(a)(ii)) Nearside Front Position lamp not working drl/position...
  8. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  •  

博客这片自留地,情怀不老!

前几天读了 Jeff Cann 的一篇文章,心里挺有感触,也让我重新琢磨起博客这回事儿。他那几句话,一下子勾起了我的回忆,想起咱们在博客这片小天地里,那些来去匆匆却又分量十足的缘分。 这么些年,眼看着博客圈里人来人往。有些曾经熟悉的名字,如今他们的博客页面再也不会更新,甚至听说有些朋友已经不在了。还有些人,写着写着就淡了,更新频率越来越低,直到某天,就这么停了。记得特别清楚有一个博主,他说自己写博客写到有些“魔怔”,怕是成了心病,结果几小时内就把所有文章、连同个人主页删得一干二净,好像他从没来过一样,真是让人唏嘘。当然,也有一些朋友,虽然不写了,但偶尔还会邮件聊上几句,这就像个温柔的提醒:有些情谊,就算不在聚光灯下,也依然在。 虽然世事常变,但我打心底里盼着,博客这片自留地可千万别消失啊。对我来说,这依然是最有味道的交流方式。它不像那些被算法操控的平台,规定我们看什么,把我们的喜怒哀乐往设定好的方向上引。所以啊,像微博等主流的社交媒体,我早就敬而远之了。它们那种精心投喂的信息流,只会加剧偏见,潜移默化地影响我们怎么看世界,想想都觉得有点儿不舒服。 博客就不一样了,它给我们一片净土,可以不急不躁地分享自己的想法,不用担心马上就得有回应,也没那么多七嘴八舌的干扰。 我关注的一些博客,博主可能不常更新,但每次刷到新文章,都像是遇见了久违的老朋友,心里特熨帖。我不算是个爱评论的人,但每篇我都会认真读。偶尔点个赞,留个言,不一定是因为我完全同意博主的看法,更多的是因为我喜欢那些能让我打开思路、换个角度看问题的好东西。博客的魅力,就在于这份多元和纯粹——各色各样的声音,在一个相对安静的角落里交流思想,不求什么,不图什么。 所以,真心感谢所有还在写博客、爱博客的朋友们——不管你是笔耕不辍,还是偶尔冒泡;不管你是把它当成一辈子的事儿,还是人生旅途中的一段风景。你们的文字,就像一座桥,连接着...
  •  

C++: auto_ptr智能指针被弃用


为什么 auto_ptr 在 C++ 中被弃用

TLDR; 很久之前看到auto_ptr就觉得挺好,和auto一样,反正不用自己管,C++会自动推导智能指针的类型。不过这个关键字已经在C++ 11中被弃用/deprecated。

弃用与移除

  • std::auto_ptr 在 C++ 11 中被弃用。
  • 在 C++ 17 中被完全移除。

为什么 auto_ptr 被弃用?

  • 它具有不安全的拷贝语义/copy semantics。
  • 拷贝一个 auto_ptr 会转移所有权,并将原指针设为 nullptr
  • 这种行为很容易引发 bug,尤其是在标准容器或算法中使用时。
<code>std::auto_ptr<int> p1(new int(42));
std::auto_ptr<int> p2 = p1; // 所有权被转移
std::cout << *p2 << std::endl; // 正常
std::cout << *p1 << std::endl; // 未定义行为(p1 变成 nullptr)
</code>

应该使用什么替代?

  • std::unique_ptr —— 独占所有权
  • std::shared_ptr —— 共享所有权
<code>#include <memory>
#include <iostream>

int main() {
    std::unique_ptr<int> p1(new int(42));
    std::unique_ptr<int> p2 = std::move(p1); // 转移所有权
    std::cout << *p2 << std::endl;
}
</code>

对比表

特性 std::auto_ptr std::unique_ptr
可拷贝性 是(但不安全)
移动语义
引入/移除 C++98 / C++17 中移除 C++11 引入

结论

在现代 C++ 中,使用 std::unique_ptrstd::shared_ptr 进行内存管理。不要在新的项目中再使用 auto_ptr

C/C++编程

英文:Why auto_ptr is Deprecated in C++?

本文一共 236 个汉字, 你数一下对不对.
C++: auto_ptr智能指针被弃用. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c C++: auto_ptr智能指针被弃用 C++ C++ 学习笔记 程序设计 编程
The post C++: auto_ptr智能指针被弃用 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. C++中的 const和constexpr 比较 C++ const 与 constexpr:真正的区别是什么? 一眼看都是定义常量。 为什么这很重要 现代 C++ 鼓励编写不可变、高效且表达力强的代码。两个关键字—const 和 constexpr—是这一理念的核心。它们看起来很相似,但理解它们的不同语义,对于正确利用编译期与运行期行为至关重要。 高层次对比 特性 const constexpr...
  2. 简易教程: C++的智能指针 C++ 智能指针教程 C++ 中的智能指针提供了自动且安全的内存管理。它们通过 RAII(资源获取即初始化)机制,帮助开发者避免内存泄漏和悬空指针的问题,确保对象在生命周期结束时被正确释放。 本教程将介绍 C++ 中三种主要的智能指针: std::unique_ptr:独占式所有权 std::shared_ptr:共享式所有权 std::weak_ptr:非拥有式弱引用 1. std::unique_ptr unique_ptr 拥有独占所有权。一个资源只能被一个...
  3. 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) 程序员的未来?Vibe Coding + AI 一起上! 借助 AI 快速开源了三个小工具 最近,我利用 ChatGPT-4o 和 o4-mini 快速开发并开源了三个小工具。起因其实很简单——每次想转换 YAML/JSON 或进行...
  4. 被动收入之: 微博红包 今年开始重新经营我的微博帐号 drlai 收到两笔微信红包,应该是来自于官方的支持,150元(成功提现到支付宝)。虽然这不能持久,也没多少,但毕竟实现了零的突破,意义重大。 如果流量上来,内容创作者可能会接受到比较多的赞赏,这也是一个比较简单的变现方法。这也能作为一种被动收入,不过如果不是头部网红,可能杯水车薪,但如果你有好几个类似这样的,也能积少成多! 在用户中心,微博用户可以每天登陆手机微博APP打卡,获取点数和少量的红包钱(几分钱),积少成多! 微博做些小任务可获得积分和几分钱。聊胜于无。 微博的主要盈利模式 微博的主要盈利模式主要包括以下几个方面: 广告收入:微博的大部分收入来源于广告,尤其是品牌广告和效果广告。广告形式包括信息流广告(类似于推文广告)、热门话题广告、开屏广告和视频广告。品牌和企业可以利用微博庞大的用户群和社交互动来提升曝光率、推广品牌和产品。 会员服务:微博提供的VIP会员服务,用户可以支付订阅费用来享受更多的特权,比如个性化的主题、特有的表情包、私密权限设置等。这些会员服务主要面向个人用户,提升其社交体验。 直播和打赏:微博提供直播平台,用户可以通过购买虚拟礼物来支持主播,微博会从这些打赏中抽取一定比例的分成。此外,微博与内容创作者分成,通过内容付费、知识付费等形式变现。 增值服务:针对企业和大V(拥有大量粉丝的用户),微博还提供增值服务,如账号认证、粉丝数据分析、精准推送、推广和营销工具等。这些服务帮助企业提升营销效果,同时也增加了微博的收入来源。 电商和导流:微博上有大量的电商导流业务,尤其是和明星、网红的合作推广。微博用户在浏览社交内容时,可以直接跳转到商品购买链接,微博通过这种方式赚取导流佣金。 游戏联运:微博也会与一些游戏公司合作推出联合运营的游戏,微博负责推广和流量引入,用户充值或付费时,微博可以获得一部分的分成。 这些模式相结合,使得微博能够在广告市场、内容创作和电商等多个领域获利。...
  5. 步步高学生电脑上 Basic 编程语言 peek 用法示例 步步高学生电脑 是8位FC机的经典之作.它上面的BASIC有三个版本 1.0, 2.0 和 2.1 2.1 版本有个在线帮助,实际上是 help.cmd 1.0 是用 Esc 键退回到 DOS 的,...
  6. 换了个奥迪Q5大灯花了我1000英镑 我那辆奥迪Q5 SUV今年年检没通过,原因是左前车灯坏了,需要更换。车厂告诉我,光是订购零件就要700多英镑,加上人工费,总费用得1000英镑。但没办法,如果不修,车辆年检(MOT)就过不了,车也不能上路。 MOT是英国的机动车强制性安全检测(Ministry of Transport Test)的简称。 近侧前位置灯不工作 drl/位置灯集成(4.2.1(a)(ii)) Nearside Front Position lamp not working drl/position...
  7. 你给SteemIt中文微信群拖后腿了么? 这年头不缺算法, 就缺数据. 这两天花了很多时间在整API上, 整完之后自己用了一下还觉得真是挺方便的. 今天就突然想看一看自己是否给大家拖后腿了, 于是调用每日中文区微信群排行榜单的API, 刷刷拿着 NodeJs 练手: 1 2 3 4 5 6...
  8. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  •  

通过脚本让电脑实现模拟按键(一直在线功能): VBScript/JScript/PowerShell


本文详细讲诉了用脚本实现定时模拟计算机按键,用于保持系统一直在线的状态。脚本可以使用VBScript、JScript和Powershell。这三种脚本语言都是微软/Microsoft的,不过前两种已经要被淘汰了。

在 Windows 环境下,这三种脚本(PowerShell、VBScript 和 JScript)都通过 CreateObject 来调用 COM 对象 WScript.Shell,以实现模拟按键的功能。例如,可以每隔一分钟模拟按下 Scroll Lock 键一次,从而保持“在线”状态(Keep Alive)。Scroll Lock 键在某些键盘上可能不存在,其作用是切换滚动锁定状态,连续按两次不会对系统造成实际影响。

模拟按键:自动化任务脚本

有时候,你可能想模拟按键(键盘输入),例如为了自动化一些任务,相比查找 API 并写脚本,通过重复按键可能更简单。例如,你想打开任何聊天窗口并输入 “Hello!” 100 次,可以使用 PowerShell 编写一个脚本,它先暂停几秒钟,然后模拟按键。

你可以通过在 Windows 中使用 PowerShell 脚本创建 Wscript.Shell COM 对象来实现。

$WShell = New-Object -com "Wscript.Shell"
$WShell.sendkeys("Hello!")

要重复 100 次,可以在 PowerShell 中使用 FOR 循环:

$WShell = New-Object -com "Wscript.Shell"
for (($i = 0), ($j = 0); $i -lt 10; $i++)
{
    $WShell.sendkeys("Hello!")
    $WShell.sendkeys("{ENTER}")
}

要运行一个 PowerShell 脚本,例如 .ps1 文件,你可以在 PowerShell 提示符中输入该脚本的完整路径。PowerShell 提示符也支持逐行输入 PowerShell 语句。

Powershell 脚本通过按键保持在线

powershell-sendkeys-keep-alive 通过脚本让电脑实现模拟按键(一直在线功能): VBScript/JScript/PowerShell Powershell Powershell 学习笔记 小技巧 折腾 程序设计 计算机 计算机

Powershell每分钟按Scroll Lock键用于保持Keep Alive在线

基于这个方法,我们可以每隔一段时间发送 Scroll-Lock 按键,直到脚本被终止。一些键盘甚至没有 Scroll-Lock 键。这个思路是模拟按键,使你的聊天程序(如 Microsoft Teams、Slack、Discord、Google Chat、Telegram 等)认为你仍然在线,从而不会将你的状态设置为 “离开”(AFK)。

$WShell = New-Object -com "Wscript.Shell"
while ($true)
{
  $WShell.sendkeys("{SCROLLLOCK}")
  Start-Sleep -Milliseconds 100
  $WShell.sendkeys("{SCROLLLOCK}")
  Start-Sleep -Seconds 120
}

VBScript脚本自动按键

Microsoft VBScript 简单又方便。以下是 VBScript 版本。你可以将脚本保存为 .vbs 文件并双击运行。或者在命令行中通过 “start.exe send-keys.vbs” 或 “cscript.exe send-keys.vbs” 运行它(假设脚本名为 send-keys.vbs)。

Dim WShell
Set WShell = CreateObject("Wscript.Shell")
Const ASecond = 1000
Const AMinute = 60000
While True
  WShell.SendKeys "{SCROLLLOCK}"
  WScript.Sleep ASecond
  WShell.SendKeys "{SCROLLLOCK}"
  WScript.Sleep AMinute
Wend

JScript脚本自动按键

Microsoft JScript 类似于 Javascript,也可以在 Windows 上运行。以下是 JScript 版本,你可以用和 VBS 相同的方法来运行。

// alternatively
// var WShell = WScript.CreateObject("Wscript.Shell");
var WShell = new ActiveXObject("Wscript.Shell");
var ASecond = 1000;
var AMinute = ASecond * 60;
for (;;) {
  WShell.SendKeys("{SCROLLLOCK}");
  WScript.Sleep(ASecond);
  WShell.SendKeys("{SCROLLLOCK}");
  WScript.Sleep(AMinute);
}

顺便提一下,JScript 不支持 const 关键字和现代 Javascript 的其他语法特性。

总结

本文展示了如何使用 PowerShell、VBScript 或 JScript 来模拟按键。一种用途就是通过模拟 SCROLLLOCK 按键来让你的聊天软件(如 Slack、Discord、Microsoft Teams、Telegram 等)显示为 “一直在线”。此外,如果你不希望电脑在你离开键盘时进入睡眠状态(尽管可以通过设置来控制),这类脚本也会派上用场。

需要注意的是,由于安全原因,这类脚本(创建 WScript.Shell COM 对象)可能会被公司的安全策略所屏蔽。不过,你仍然可以在 PowerShell 终端中逐行输入命令来绕过限制。

英文:How to Send Keys using PowerShell or VBScript or JScript via WScript.Shell COM Object (Simulate Keystrokes)?

本文一共 723 个汉字, 你数一下对不对.
通过脚本让电脑实现模拟按键(一直在线功能): VBScript/JScript/PowerShell. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 通过脚本让电脑实现模拟按键(一直在线功能): VBScript/JScript/PowerShell Powershell Powershell 学习笔记 小技巧 折腾 程序设计 计算机 计算机
The post 通过脚本让电脑实现模拟按键(一直在线功能): VBScript/JScript/PowerShell first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. Chrome 浏览器上的快速标签链接 我很久之前练手PHP和MYSQL做了一个长网址变短的小工具(免费) https://rot47.net/_url/. 添加记录的表单在: https://rot47.net/_url/add.php 这样还是太麻烦, 因为用户还得拷贝和粘贴网址, 为了方便, 在PHP程序里支持从URL参数里获取想添加的长网址, 比如可以这样使用: https://rot47.net/_url/add.php?p=https://helloacm.com 然后, 我们就可以把下面HTML+JAVASCRIPT的代码放到页面上, 让用户添加成标签(可以直接把这个链接拖到上面的快速标签栏) <a rel="nofollow"...
  2. 新的旅途 – 离别总是伤感的, 离开了一起创业的公司 2周前, 正式离开了一起创业的公司, 这公司是我博士毕业后的第一份正式工作, 待了8年多了, 离别总是伤感的. 我是9月初提的离职, 三个月 Notice Period, 最后的几周交接完工作确实没有什么压力了. 11月30号, 在公司最后一天, 公司有个习惯, 对于 Good...
  3. 租车被收了两份保险钱 前不久去北爱游玩的时候在 booking.com/rentalcars.com 上租了车, 当时一共付了92英镑, 其中36英镑多是保险钱. 然而, 当飞机落地后我去 Budget 取车的时候又交了92英镑钱. 当时我在柜台的时候就有点犹豫, 但是没办法, 必须交, 不交就不给钥匙. 当然92英镑还包括路税. 后来回来就想想不对劲,...
  4. 测测你的幸运 – Linux Fortune-Teller LINUX 下有很好很好玩的命令,之前已经介绍过: figlet, rig, curl. 现在推荐另一个 命令 fortune 是用来随机显示一段(句)话的.fortune 在英文里就是幸运的意思. 这个命令可以不需要 参数 如果没有 可以通过 apt-get...
  5. Minuet in C – 小步舞曲C Posted Youtube – 油管地址 孩子弹琴的时候最帅了. 我现在成了我儿子的粉丝了. Eric (Aged 6) is playing “Minuet in C” when...
  6. 上了年纪痛风脚崴了的惨痛经历(尿酸过高) 痛风是一种疼痛性关节炎, 当血液中的尿酸水平高, 导致晶体形成并积聚在关节内或关节周围, 就会发生痛风. 当人体分解一种叫做嘌呤的化学物质时, 就会产生尿酸. 嘌呤自然存在于您的身体中, 也存在于某些食物中. 尿酸通过尿液从体内排出. 上两周, 和媳妇吵架, 然后就自己一人睡, 有一天起床后脚踝就开始疼了, 然后明显比左脚肿了. 我刚开始就以为是睡觉的时候不小心姿势不对,...
  7. 优衣库 感觉像炒作 这几天 这个在北京三里屯 ‘优衣库’ 试衣间自拍的视频真的很火, 男女主角均被人肉. 不可否认 这个效果还真的不错 因为我之前根本不知道 “优衣库” 是干嘛的 很刺激 在试衣间XXOO是多么爽的事情 女主角 95后妹子 长相甜美....
  8. 今晚可能是英国倒数第三次冬令时时间调整 来英国生活过的人都知道 英国有一个很有意思的夏令时和冬令时时间调整. 夏令时是每年3月份的最后一个星期天凌晨会暴力的把时间往后调整1个小时, 也就是1点的时候很神奇的时间会自动变成2点. 冬令时是相反, 在每年的十月份最后一个周日凌晨暴力的把时间往前调整一个小时, 也就是2点神奇的变成1点. 现在大多数电子设备都能自动调整时间了, 比如你的智能手机和电脑. 但是传统的一些钟表, 还需要人为的调整时间. 夏令时 (Daylight Saving Time)调整的那一天,...
  •  

邻居家的猫

之前有提过这只“神奇的猫”,她能识人,可以说这一片没有她不认识的人,没有她不知道的“细节”。一只狸花猫,可以说应验了狸花猫多聪明的事实。 有这么好的人缘,她可以说每天只有晚上回家,每天几乎都能看到她的倩影在这条街上转悠,找个太阳大的地方晒一 …

💾

  •  

当生态城的房价下跌

今天办事儿去了趟生态城,环境是一如既往的优美,特别是二社区,绿树成荫,小区在树丛中若隐若现,因为靠海,体感温度也比北京低,微风吹过,非常惬意。上午办完事儿,下午扫了辆共享电单车,想随处逛逛。

两年没见,海博馆周围的基建做得更好了,道路也通了很多,靠海的的位置有了更多的自行车车道,可以骑着单车慢行海岸线(渤海湾全是淤泥😂),相较于起步区,中部片区的商场,零零星星,但也确实比两年前人气更旺了。如果骑行经过万达旁边的慧风溪,新建的汇金华府和锦铂园,楼房林立,密度又高,非常压抑。

2025-5-21汇金华府
2022-4-09 锦铂园

这种高密度小区居未来的居住舒适度不敢想象,背上20多年的房贷,买一个这样的鸽子笼,实在憋屈。

过了南开小学就没有再走了,越往北越感觉房子高的遮云蔽日,锦铂园后面一个施工的工地,远看像一个学校,可带了不少露台,问了周围的路人,说是小区,叫学府尊邸,坐西朝东,大抵是因为锦铂园的高层太高了,后面真的没有阳光了。

生态城的起步区算是我的梦中情房,越往北越垃圾。离开的时候,才知道生态城的环线公交开始收费了,实时到站的提示牌也换成广告板,路口的行人灯光斑马线也破裂不堪。当房价不再上涨,城投没有了收入,这些曾经引以为傲的“宣传”都是要变质的。

  •  

北京南站,啥人都有

上午媳妇儿出院,下午办事儿时出北京南站,看到不少中学生模样的队伍,是不是看到几个老外领队在维护秩序,有点儿好奇,就问了两个学生:”你们是来北京玩的吗?“;“不是,我们从外面回来”。然后两个学生继续聊天,全英文的聊天,更诧异了?这是故意不想让我听懂?出站后,留意到这队伍里的学生都是全英文聊天,甚至还有几个男生,大声喊着英语起哄。就又问了一个学生:“你们是那个学校的?”;“我们学校在顺义,刚春游回来”;“哦哦,那这距离顺义很远呀”;“高铁只能到南站,xxxxxxx”。

最后这个男生,年龄最多13/4岁,侃侃而谈,落落大方,跟之前见到的扭扭捏捏的中学生完全不一样,又是顺义学校的,第一时间想到了顺义的那些贵族国际学校。走不远,很快听到领队老师在引导学生:“Bus one,Bus Two.,xxxxxx”,学生群里也开始叽叽喳喳,一大串对话,我就完全听不懂了。

再往前走,一个民工模样的人,拉一个行李箱,行李箱上放着特大一麻袋包,圆滚滚,像是衣服或被褥,吃力的走着。然后旁边骑着单车过来一人,对民工喊:“需要打车或是住店吗?”,民工来了兴趣,停下脚步,对着男人喊“没地儿去,还不知道去哪儿呢?你们那里缺人手吗?干啥都行”,单车男听后,扭头离开了。

北京南,是个大站,每天熙熙攘攘,不同的人来到北京,带着不同的目的。附近居住的上班族,可能每天都在这里进进出出,而有些人,可能一辈子才来一次。南站附近为什么总那么多外地警车?也是最近才知道,也有些人来到南站,是想来这里讨一个公道。

贵族学校的学生,民工,想讨个公道的人,在南站,都能看到....

  •  

数据库可视化WEB工具对比

最近迁移服务器,并且搞了一个1P专业版玩玩,感觉效果很不错,想找一个管理数据库的服务,其中看了phpmyadmin等一些知名项目,但是都不太符合我的要求,最后经过筛选,找到了比较合适的,分享给大家!
  •  

剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店


今天和媳妇约了会,大娃跟着学校去了法国旅行,二娃参加他同学的生日派对(在剑桥Leisure Park打保龄球)。刚好有两个小时空闲时间,于是我们把车停在了Hills Road,然后找了这些网红店。

平时很经常路过Hills Road,但是都没注意到这家小店,直到朋友推荐这家面包甜点咖啡店:Maison Clément

Maison Clement Bakery and Patisserie 创始人故事

Maison Clément 是位于英国剑桥的法式手工面包与甜点店,以其正宗的法国风味和高品质的烘焙产品而闻名。自2017年在 Hills Road 开设首家店铺以来,Maison Clément 已成为当地人和游客喜爱的“剑桥小法国” 。2019年,他们在 Newnham 的 Derby Street 开设了第二家分店,进一步拓展了其影响力 。

创始人 Clément 来自巴黎,从13岁起便对烘焙产生浓厚兴趣。他在著名的巴黎 Vandermeersch 面包店完成学徒生涯,并在世界各地的邮轮上积累经验。随后,他在布莱顿的 Real Patisserie 工作了十年,不仅提升了管理技能,还结识了未来的妻子兼商业伙伴 Monika。2010年,Clément 在法国鲁昂获得了高级烘焙师资格证书。2017年,他们一家搬到剑桥,开启了 Maison Clément 的旅程 。

网址:maisonclement.co.uk

产品特色

Maison Clément 每天凌晨1点开始烘焙,确保在早上7点为顾客提供新鲜出炉的面包和酥点。他们坚持使用高质量的原材料,尽可能采用本地采购,同时也从法国进口部分食材,以保证正宗的法式风味 。

招牌产品包括:

  • 羊角面包(Croissant):被誉为“英国最好的羊角面包”之一,吸引了来自世界各地的顾客。
  • 羊角面包吐司(Croissant Loaf):最初是利用多余面团制作的创新产品,如今已成为顾客争相购买的特色商品。
  • 无麸质甜点:如开心果费南雪(Pistachio Financier)、无面粉巧克力蛋糕和季节性水果塔,满足不同饮食需求的顾客。
  • 经典法式甜点:如巴黎布雷斯特(Paris-Brest)、咖啡闪电泡芙(Éclair au Café)和千层酥(Mille-Feuille),深受顾客喜爱。

顾客评价

Maison Clément 在 Google 和 TripAdvisor 上均获得了高分评价。顾客赞赏其面包和甜点的高品质,以及店内温馨的氛围。不过,也有顾客提到价格相对较高,但认为物有所值 。

店铺信息:

Hills Road 店

地址:28 Hills Road, Cambridge, CB2 1LA
电话:+44 1223 324 983
营业时间:周一至周六 7:00–18:00

Newnham 店

地址:7 Derby Street, Cambridge, CB3 9JE
电话:+44 1223 301 460
营业时间:周二至周六 7:00–17:00,周日 7:00–15:00

无论您是想享用一杯咖啡搭配新鲜出炉的羊角面包,还是寻找正宗的法式甜点,Maison Clément 都是剑桥不可错过的美食之选。

cambridge-maison-clement-bakery-and-patisserie 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

剑桥网红蛋糕店的地址

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-13.06.47 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

很久没和老婆约会了

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-13.00.38 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

和媳妇约个会,媳妇爱吃甜的,胖。

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.49.50-scaled 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

这家网红店在Hills Road的街角,路过这条路好多次,以前都没注意到。

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.47.22 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

这家店是它家的面包比较有名,我尝了一些,确实不错,不甜不腻,有点好吃。

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.42.27 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

它家的面包据说很畅销,很快就卖没了。

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.40.01-rotated 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

我好久没和媳妇约会了。

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.39.58 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

刷个力扣。现在这IPAD常年被弟弟霸占了。

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.38.08-scaled 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

刷题,C++

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.26.49-scaled 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

写写STEEM

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.18.54 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

咖啡拉花,情绪价值拉满

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.18.07-scaled 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

放松的事情就是:和媳妇约会,喝咖啡,吃蛋糕,刷题。

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.17.39-scaled 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

它家的甜点蛋糕

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.17.07 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

窗外就是Hills Road,剑桥市中心最有名的大街。它家店面很小,里面只有一个小桌子,只够坐上5-6个人。

cambridge-maison-clement-bakery-and-patisserrie-shop-2025-05-24-10.13.51-scaled 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯

早上刚出炉的面包

参考:英国剑桥值得去吃和玩的地方

本文一共 1140 个汉字, 你数一下对不对.
剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 媳妇 照片 生活 资讯
The post 剑桥网红蛋糕面包甜点店 Maison Clement Bakery and Patisserie /法式手工面包与甜点店 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  2. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  3. 同一台服务器上多个WORDPRESS站点的一些设置可以移出去 我自从把所有网站都挪到一处VPS服务器上 就发现很多事情省事很多 可以同时管理多个网站 包括 WORDPRESS博客. 比如我有四个WORDPRESS博客 然后我就把通用的一些资料给移出去 移到 HTTP或者HTTPS都不能直接访问的文件夹里这样就更安全许多. 文件 wp-conn.php 存储了 相同的数据库资料. 1 2...
  4. 英国房子的EPC节能报告(Energe/Efficiency Performance Certificate) EPC (Energe/Efficiency Performance Certificate) 是英国房子的节能报告, 法律上规定, 每个房子都必须要有一个EPC报告, 报告的有效期为十年. 房东在把房子出租或者想卖房的时候, 这个EPC就必须有效, 在一些情况下 比如出租房子的时候, 这个EPC报告还必须符合一些最低标准, 比如房子必须满足 F档(类似及格线)...
  5. 优化设计 个人主页 并且 PageSpeed Insights 双项 100分 坛子的个人主页 www.tanzhijun.com 不错 很适合个人主页的模板. 而且是手机友好. 于是我照着把 我的主页改了改. https://steakovercooked.com 并且做了几点修改: 0. 使用 google mod_pagespeed 把 JS,...
  6. Hinchingbrooke 公园 (多图) 时间: 2015年7月19日 星期天 坐标: Hinchingbrooke Country Park, Brampton Road, Huntingdon, Cambs, PE29 6DB 官网: Hinchingbrooke...
  7. 比特币最近波动有点大: 一天牛市一天熊 比特币10万美金以内都是最后上车的机会! 比特币近期的价格波动可以归因于多个关键因素,包括地缘政治动态、监管变化以及加密行业内的重大安全事件。其中一个主要影响因素是美国前总统唐纳德·特朗普对乌克兰和加密货币监管的立场变化。据报道,特朗普再次当选,他可能会推动减少美国对乌克兰的支持,这可能会影响全球金融市场和风险偏好。同时,特朗普正在将自己塑造为亲加密货币的候选人,表示有意让美国成为一个更加友好的加密货币环境。这一立场引发了市场对监管政策可能发生变化的猜测,导致市场情绪在乐观和不确定性之间波动。 特朗普对俄乌战争的态度 美国第43届总统唐纳德·特朗普已经在2025年1月当选并正式上任(第二次),那么他的政策可能会对比特币价格的波动产生更加直接和显著的影响。他政府对乌克兰和加密货币监管的立场已经不再是猜测,而是正在实际塑造市场的关键力量。 特朗普(Donald Trump)减少美国对乌克兰的支持,全球投资者可能会预期地缘政治稳定性发生变化,从而增加对比特币作为避险资产的需求。同时,他的亲加密货币立场可能正在推动市场的乐观情绪。如果他的政府推出有利于加密行业的监管政策,例如明确的合规指南或减少监管审查,可能会吸引更多机构投资者进入市场,并促进更广泛的加密货币采用。然而,政策的快速变化也可能导致短期市场剧烈波动,因为市场需要时间来消化新的政策动向。 朝鲜黑客盗取Bybit交易所15亿美元的ETH 另一个显著影响比特币价格的事件是近期涉及朝鲜黑客组织“Lazarus”的15亿美元以太坊被盗案件。据报道,Bybit交易所(全球第二)这些被盗的ETH已经被清洗,此次大规模黑客攻击引发了人们对加密行业安全性的担忧。此类安全事件不仅会削弱投资者信心,还可能引发更严格的监管审查,导致短期市场动荡。此外,被盗资金的大规模流动和出售可能对市场流动性造成冲击,进一步加大价格波动。随着这些事件的持续发酵,比特币价格正受到政治决策、监管预期以及安全挑战等多重因素的影响。 与此同时,与朝鲜黑客组织 Lazarus 相关的 15 亿美元以太坊被盗事件仍在影响加密市场。由于这些被盗 ETH 已被清洗,人们对加密行业安全漏洞的担忧持续存在,同时也可能引发更严格的监管审查。政治、监管和安全等多重因素交织在一起,共同导致了比特币近期的剧烈价格波动。...
  8. 记录那些值得回忆的精彩瞬间 媳妇 @happyukgo 其实挺反感我给她拍照片的, 但主要原因是 我经常把她拍得很丑, 而我除了会用美图秀秀简单的滤镜之外就不会一丁点儿的PS技术. 我家孩子 Eric 很爱臭美, 每次看着我拿相机, 总会让我 “Take a picture”, 然后各种摆姿势做鬼脸,...
  •  

C++中的consteval是什么? 它与const和constexpr有何不同?


C++:什么是 consteval?它与 constconstexpr 有何不同?

如果你在 C++ 中经常使用 constconstexpr,可能会好奇 C++20 新引入的 consteval 关键字到底是做什么用的。下面我们来一一解析。

什么是 consteval

consteval 用于声明一个立即函数(immediate function),也就是说,这个函数必须在编译期进行求值。与 constexpr 不同,constexpr 允许函数在编译期或运行期执行,而 consteval 强制要求只能在编译期调用。

consteval int square(int x) {
    return x * x;
}

如果尝试使用运行时参数调用此函数,将会导致编译错误。

示例

consteval int add(int a, int b) {
    return a + b;
}

int main() {
    constexpr int result = add(2, 3);  // 正确,编译期求值
    int x = 5;
    // int y = add(x, 3);  // 错误:add 必须在编译期调用
}

比较表

特性 const constexpr consteval
引入版本 C++11 之前 C++11 C++20
用途 声明只读变量 允许编译期求值 强制编译期求值
可用于 变量 变量、函数、构造函数 函数
是否可在运行期执行? 可能
是否强制编译期? 可选

什么时候该使用 consteval

  • 当你需要强制函数只能在编译期执行时。
  • 用于元编程中,在编译期验证输入的正确性。
  • 避免任何运行时开销。

高级用法示例:编译期字符串长度计算

consteval std::size_t const_strlen(const char* str) {
    std::size_t len = 0;
    while (str[len] != '\0') ++len;
    return len;
}

constexpr auto len = const_strlen("Hello");  // 正确,编译期求值

总结

consteval 是 C++ 中用于强制编译期执行的新利器。当你觉得 constexpr 不够严格时,它是实现严格编译期逻辑的最佳选择。

C/C++编程

C++ What is the consteval? How is it different to const and constexpr?

本文一共 371 个汉字, 你数一下对不对.
C++中的consteval是什么? 它与const和constexpr有何不同?. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c C++中的consteval是什么? 它与const和constexpr有何不同? C++ C++ 学习笔记 程序设计 计算机
The post C++中的consteval是什么? 它与const和constexpr有何不同? first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 简易教程: C++的智能指针 C++ 智能指针教程 C++ 中的智能指针提供了自动且安全的内存管理。它们通过 RAII(资源获取即初始化)机制,帮助开发者避免内存泄漏和悬空指针的问题,确保对象在生命周期结束时被正确释放。 本教程将介绍 C++ 中三种主要的智能指针: std::unique_ptr:独占式所有权 std::shared_ptr:共享式所有权 std::weak_ptr:非拥有式弱引用 1. std::unique_ptr unique_ptr 拥有独占所有权。一个资源只能被一个...
  2. C++中的 const和constexpr 比较 C++ const 与 constexpr:真正的区别是什么? 一眼看都是定义常量。 为什么这很重要 现代 C++ 鼓励编写不可变、高效且表达力强的代码。两个关键字—const 和 constexpr—是这一理念的核心。它们看起来很相似,但理解它们的不同语义,对于正确利用编译期与运行期行为至关重要。 高层次对比 特性 const constexpr...
  3. C++ 教程: 用std::move来移动所有权 📘 C++ 移动语义与 std::move() 教程 C++的std::move用于转移变量/对像的所有权/Ownership。 🔹 什么是移动语义? 在 C++ 中,移动语义通过转移资源所有权/Ownership(如内存或文件句柄)来优化性能,而不是复制它们。 移动语义是在 C++11 中引入的,它允许: 更快速地传递大型或昂贵的对象...
  4. C++ Ranges 教程 C++20 引入了 ranges(范围),这是一个强大且优雅的抽象,用于处理序列(如数组、vector 等)。相比传统的迭代器或旧式循环,Ranges 提高了代码的可读性、可组合性和性能。 什么是 Range? 在 C++20 中,range(范围) 是一种抽象,代表一个可以迭代的元素序列。它与 views(视图) 和 actions(操作) 如过滤、转换等配合使用非常自然。...
  5. 被动收入之: 微博红包 今年开始重新经营我的微博帐号 drlai 收到两笔微信红包,应该是来自于官方的支持,150元(成功提现到支付宝)。虽然这不能持久,也没多少,但毕竟实现了零的突破,意义重大。 如果流量上来,内容创作者可能会接受到比较多的赞赏,这也是一个比较简单的变现方法。这也能作为一种被动收入,不过如果不是头部网红,可能杯水车薪,但如果你有好几个类似这样的,也能积少成多! 在用户中心,微博用户可以每天登陆手机微博APP打卡,获取点数和少量的红包钱(几分钱),积少成多! 微博做些小任务可获得积分和几分钱。聊胜于无。 微博的主要盈利模式 微博的主要盈利模式主要包括以下几个方面: 广告收入:微博的大部分收入来源于广告,尤其是品牌广告和效果广告。广告形式包括信息流广告(类似于推文广告)、热门话题广告、开屏广告和视频广告。品牌和企业可以利用微博庞大的用户群和社交互动来提升曝光率、推广品牌和产品。 会员服务:微博提供的VIP会员服务,用户可以支付订阅费用来享受更多的特权,比如个性化的主题、特有的表情包、私密权限设置等。这些会员服务主要面向个人用户,提升其社交体验。 直播和打赏:微博提供直播平台,用户可以通过购买虚拟礼物来支持主播,微博会从这些打赏中抽取一定比例的分成。此外,微博与内容创作者分成,通过内容付费、知识付费等形式变现。 增值服务:针对企业和大V(拥有大量粉丝的用户),微博还提供增值服务,如账号认证、粉丝数据分析、精准推送、推广和营销工具等。这些服务帮助企业提升营销效果,同时也增加了微博的收入来源。 电商和导流:微博上有大量的电商导流业务,尤其是和明星、网红的合作推广。微博用户在浏览社交内容时,可以直接跳转到商品购买链接,微博通过这种方式赚取导流佣金。 游戏联运:微博也会与一些游戏公司合作推出联合运营的游戏,微博负责推广和流量引入,用户充值或付费时,微博可以获得一部分的分成。 这些模式相结合,使得微博能够在广告市场、内容创作和电商等多个领域获利。...
  6. 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) 程序员的未来?Vibe Coding + AI 一起上! 借助 AI 快速开源了三个小工具 最近,我利用 ChatGPT-4o 和 o4-mini 快速开发并开源了三个小工具。起因其实很简单——每次想转换 YAML/JSON 或进行...
  7. 你给SteemIt中文微信群拖后腿了么? 这年头不缺算法, 就缺数据. 这两天花了很多时间在整API上, 整完之后自己用了一下还觉得真是挺方便的. 今天就突然想看一看自己是否给大家拖后腿了, 于是调用每日中文区微信群排行榜单的API, 刷刷拿着 NodeJs 练手: 1 2 3 4 5 6...
  8. 换了个奥迪Q5大灯花了我1000英镑 我那辆奥迪Q5 SUV今年年检没通过,原因是左前车灯坏了,需要更换。车厂告诉我,光是订购零件就要700多英镑,加上人工费,总费用得1000英镑。但没办法,如果不修,车辆年检(MOT)就过不了,车也不能上路。 MOT是英国的机动车强制性安全检测(Ministry of Transport Test)的简称。 近侧前位置灯不工作 drl/位置灯集成(4.2.1(a)(ii)) Nearside Front Position lamp not working drl/position...
  •  

樱花特辑:东京圈赏樱指南 (上)

✇Simon
作者Simon

写在前面

本文是《日本全境漫游计划》的试读部分,无需担心,你可以免费阅读本章节的全部内容。

《日本全境漫游计划》是一套以“地域 × 专题”方式深度解读日本的旅行指南,想写给第一次来日本的朋友,也写给那些已经走过很多次、仍想继续发掘惊喜的你。

《日本全境漫游计划》是由我执笔,已经上线少数派平台的共创项目,目前为试读阶段+反馈征集阶段,因此十分欢迎你在本文底部留下你的阅读反馈。

樱花线路

提到东京的樱花,你多半已经在社交平台上刷到过「一年一度必须打卡」的经典场景:上野公园的人海粉浪、目黑川夜樱的光影倒映、千鸟之渊护城河上摇曳的粉色倒影…… 这些「官方答案」之所以历久弥新,正因为它们在最佳花期真的足够震撼。本章当然不会错过它们——如果是第一次来东京赏樱,这些场景依旧值得你亲身见证。

然而,这些「经典款」开花时,美得理所当然,却也挤得理所当然——三脚架根本架不开,相机对焦框里总会闯进陌生人。与其在喧闹的人海里匆匆按下快门,不如把镜头再稍稍拉远:西边的山梨、南面的静冈、北边的埼玉…… 只需一到两小时的车程,就能收获「抬头是满枝粉雪,低头却空无一人」的奢侈体验。

因此,本文将分上下两章,分成两条并行的赏樱路线,并且推荐几个赏樱必看的网站:

都会经典线:东京都内

适合初次造访、想一次打包「东京必看」的读者。 聚焦于目黑川、千鸟之渊等耳熟能详的热门景点,附上避峰小技巧与摄影机位。

静谧寻香线:东京圈精选

为想摆脱人潮、追求风景与氛围兼得的读者而设。 带你走进河口湖畔的逆富士倒樱、秩父山谷的流动花筏、伊豆早樱与温泉小镇的粉色烟雾等小众坐标,外加自驾与公共交通的详细攻略。

DIY 自己的赏樱路线:樱花信息网站精选

为想自己寻找赏樱地、自己 DIY 行程的读者而设;当然也对赏樱的所有人群有效。 我将在文章末尾总结几个在日本赏樱必备的网站,这些网站在樱花季每日都会更新樱花的开花进度、天气情况、人流混杂情况等信息,这对你制定属于自己的赏樱行程非常有帮助。

无论你是第一次抱着「必打卡」清单奔赴东京,还是想在熟悉的樱花季里找回久违的宁静,这一篇《樱花特辑:东京圈赏樱指南》都希望为你留出两种选择——在灯火霓虹里与万人同赏,也在山谷湖畔与樱花独处。愿你在翻页之间,就已闻到春天的风。

东京都赏花计划

目黑川

  • 地点:東京都目黒区大橋一丁目 10 番地先 - 目黒区下目黒二丁目 9 番先。
  • 交通方式:「中目黑」站位于东急东横线、东京 Metro 地铁日比谷线。
  • 推荐理由:东京人气赏樱地,樱花沿河而开,形成壮观的「粉色河廊」;满开时樱花枝头从岸边探出,视觉效果非常好。傍晚点灯后的夜樱尤其梦幻,是白天与夜晚都值得造访的樱花名所。
  • 注意事项:由于过于知名,因此人流量非常大,想要拍到好的照片需要清晨前往或者找一些特别的角度。中目黑位于目黑川周围,距离潮流发源地代官山和惠比寿都很近,步行即可抵达。这个区域非常适合 city walk,不仅有咖啡馆和餐厅、还有网红书店「茑屋书店」以及以书店附近分布的商业街区。
image.png

不得不说,中目黑(或者说目黑川)作为每年东京知名赏樱地之一,每到樱花盛开的时候,这里经常堵得水泄不通。但这里仍然值得推荐,因为满开时的中目黑,樱花像一条铺陈两公里的粉色长廊,自清晨第一缕光落在河面开始,八百多株樱花便在水面上层层递出双重倒影。

image.png

如果你想避开拥挤的人潮,不妨在早晨六点左右抵达,这时候人相对较少,桥上三脚架可以从容展开;若更钟情夜樱,就把时间留到傍晚点灯后,灯笼的暖黄与樱色相叠,河畔的咖啡香和临时摊位卖的樱花香槟一起,把喧嚣调成浪漫的底噪。

image.png

哪怕肩膀不断被路人擦过,也仍值得顺流而下慢慢行走——河岸两侧不乏风格独特的小店、咖啡馆与临时摊位,气氛热闹又不失文艺气息。最推荐的,是在 Onibus Coffee 或星巴克臻選(每年樱花季需要排队叫号)这样的店铺中找个窗边座位,点杯热拿铁,看窗外人群与花影交错,是难得的片刻静谧。

image.png

若赶上傍晚灯笼点起,夜樱则更添梦幻。橘黄灯光从花枝间洒下,反射在水面,像是花瓣也发了光。此时人潮会更密集,想拍摄建议携带轻便相机或手持稳定器,从桥头避开主干道人群,用桥梁做前景,能拍出极有氛围的画面。等到满开后几天,花瓣随水漂流,便可见「樱吹雪」,是只有少数人捕捉到的美景。

尽管人潮汹涌,中目黑依然是每年东京樱花地图上无法绕开的名字——它不只是为了「打卡」,也是为了见证东京如何把繁华与浪漫合成一条河道。但如果你更偏爱安静的赏花体验,我会给你推荐同样沿河而建的神田川。这里相对目黑川来说行人寥寥,花开依旧,更适合安静地赏花。

新井药师前

  • 地点:東京都中野区上高田 5 丁目 43 新井薬師前駅。
  • 交通方式: 搭乘西武新宿线至「新井药师前站」,南口步行五分钟。
  • 推荐理由: 这是东京能同时拍到「樱花 + 电车」的经典构图地点。每年春天,盛开的樱花簇拥着西武新宿线的铁轨,电车穿行其中,成为社交网络上人气极高的摄影打卡地。尤其在新井五丁目步道桥上远望,借助望远镜头的压缩效果,能捕捉到花海与列车交错前进的独特画面。
  • 注意事项: 步道桥为公共通行空间,拍摄时请勿妨碍行人通行;电车通行频繁,不用特意卡点抵达;建议使用长焦镜头拍摄。步道两旁也有很多樱花树,不必拘泥于在桥上拍摄。
image.png

如果你曾幻想过在春天里拍摄一辆穿梭于樱花之间的电车,那新井五丁目步道桥或许就是你梦中的取景地。这里是隐藏在西武新宿线沿线居民区中的一座普通人行桥,但经过社交媒体的宣传后,每到三月底四月初,随着染井吉野盛开,樱花季这座桥上会挤满游客。

站在桥上,可以俯瞰铁路两侧被樱花包围的铁道。远处驶来的电车在望远镜头下被拉近,与近处花团交错成一体。许多摄影爱好者便是为了这一刻,在桥上守候良久,只为等来一辆电车——它的出现频率并不高,但一旦入画,就能将整张照片点亮。

image.png

在新井五丁目步道桥附近,不仅桥上可以拍摄「樱花 + 电车」的经典构图,这一带街道两侧的樱花景色本身,也同样值得细细欣赏。

这一带不需要特意找「打卡点」,只需沿着街道缓步前行,抬头是枝繁花密的粉色樱云,低头是车轮与人影交织的日常节奏。走累了,还可以在街边的公交站亭或便利店门前小憩,哪怕只是坐着看着花,也是一种不动声色的浪漫。如果说新井五丁目步道桥是摄影师和海内外游客前来捕捉樱花列车瞬间的「舞台」的话,那么这条街道,就是生活与春天共演的一整幕长镜头。

立音无亲水公園

  • 地点:東京都北区王子本町 1 丁目。
  • 交通方式: 搭乘 JR 京浜東北線「王子駅」,北口出门即达。
  • 推荐理由: 日本都市公园 100 选,相对小众的赏樱公园,可以闹中取静;距离赏樱名地「飞鸟山公园」非常近。
  • 注意事项:公园面积不大,人流密集时拍摄和休憩空间有限,建议和「飞鸟山公园」一起欣赏。

立音无亲水公园的樱花,并不依靠数量取胜,而胜在氛围的独特营造。这里原为旧石神井川的一部分,后经改造保留了天然水道的高低地形与石垣结构,使整个公园呈现出一种「微型峡谷」的地貌。春日樱开时,沿着水边步道蜿蜒而行,抬头是低垂的花枝,身旁是潺潺流淌的溪水,耳边是风声与鸟鸣,一切都恰到好处地将城市与自然拉回到平衡点。

image.png

若从公园一侧拾阶而上,还可眺望整个溪谷式结构,樱花在石垣之上绵延展开,有种「从城市中凿出一块春天私景」的奇妙感受。喜欢拍摄风景的读者不妨携带轻便长焦镜头,站在高处取景,以石垣、木栏与花影构成画面层次,极具日本传统园林的空间美学。

image.png

另外,沿着公园步道行走,可以感受到这里比其它赏樱景点更浓厚生活气息。石凳上坐着带孙散步的祖父母,木栏边倚着边赏花边聊天的街坊邻居,小朋友追逐着花瓣奔跑,老人们在溪边对弈小憩…… 春天的樱花在这里不只是风景,更是社区日常的一部分。

你可以在这里遇见不带相机、也不为拍照而来的行人——他们只是每天按时散步而已;也可以偶遇在樱树下读书的学生,或是午休时间匆匆走过、顺手拍下一张花照的上班族。即便是赏花季最热闹的时段,这里也不会有过度商业化的喧嚣,取而代之的是一种缓慢、沉静、带着旧东京气息的生活节奏。

音无亲水公园没有让人屏息的震撼景观,但它以一座小而美的社区花园之姿,将「赏樱」重新拉回人与自然之间最纯粹的连接。

南大塚三丁目

  • 地点:東京都丰岛区南大塚三丁目。
  • 交通方式:从 JR 山手线「大塚站」南口出站,步行约 5 分钟;或搭乘东京 Metro 丸之内线至「新大塚站」,步行约 7 分钟即可抵达。也可搭乘都电荒川线,于「向原站」下车后步行至街道中段。
  • 推荐理由:丰岛区的南大塚通被誉为「东京都内最美的樱花街道之一」。从大塚站至新大塚站之间,长达 600 米的道路两侧栽种着高大整齐的樱花,每年春天如期盛放,形成一条温柔而壮观的「樱花隧道」。三十年来,这条街道一直由当地居民用心守护,是兼具历史感与生活气息的赏樱名所。
  • 注意事项: 街道为通行道路,车流量适中,拍摄时请注意安全。

如果说赏樱是一种季节性的仪式,那么在南大塚通,这一仪式就是日常的一部分。南大塚三丁目这一段,正好位于大塚站与新大塚站之间的中点,是整条樱花街道的精华所在。每年花季一到,道路两侧的樱花便仿佛按下了统一的开花按钮,树冠相接、花影交错,在车道与人行道之上构筑出一条如梦似幻的「粉色隧道」。

这里没有喧嚣的观光团,也没有过度包装的节庆布置,只有最朴素的街道风景与盛开的樱花树。你可以看到送孩子上学的家长一边推车一边欣赏花景,也可以看到骑自行车的中学生从花雨中穿过。

ootsuka.jpg

最具特色的一幕,莫过于从都电荒川线的车窗望出去——当电车从大塚站缓缓驶向向原站,车窗两侧尽是樱花枝条拂过的轻影,宛如一段短暂的「花之旅程」。列车速度不快,刚好可以让你捕捉到「行进中的樱花拱门」,这一幕,也常被丰岛区本地人私藏为春日限定的浪漫。

井之头公园

  • 地点:東京都武蔵野市御殿山1-18-31
  • 交通方式:从JR中央线・总武线「吉祥寺站」南口出站,步行约5分钟即达。也可搭乘京王井之头线至「井之头公园站」下车,步行3分钟到达公园入口,交通便利、适合轻松一日游。
  • 推荐理由:被选入“日本赏樱名所100选”的井之头恩赐公园,是东京最具人气与风情的赏樱胜地之一。公园整体种有约400株樱花,其中围绕着井之头池分布的200余株染井吉野最为壮观。春日盛开时,花枝纷纷探向水面,形成“花云压水、花影入湖”的经典景致。特别是在七井桥上眺望湖面,落樱如雪、随风旋转,是每年樱花季最动人的瞬间。
  • 注意事项:距离都心稍远。赏花旺季人流极多,尤其周末与中午时段池畔步道可能拥挤,建议清晨或傍晚造访避开高峰。这里除去赏樱之外,著名的森吉卜力美术馆也在这附近,但需提前预约进场。 井之头恩赐公园的樱花美,在于「水」的映衬。围绕井之头池展开的樱花群,每年三月底至四月上旬盛放,不只是漫天繁花,更是连水面都染成一片淡粉的绝景。尤其是站在池中央的七井桥上,视野两侧是如瀑般倾泻而下的花枝,水面上倒映着粉白花影与天鹅船划过的涟漪,这一刻既壮观又柔美。
image.png

最推荐的方式,是租一艘天鹅船或者划艇,绕行池心,从水面仰望花海,享受「花在头顶飞舞、水在脚下闪光」的独特视角。阳光好的日子里,池面光影交错,花瓣随风飘落,有时还会遇见鸳鸯或野鸭漂浮其中。

image.png

除了池畔的经典染井吉野,公园西园也有不少特色品种的樱花:早开的寒樱、晚放的八重樱、姿态优雅的枝垂樱,以及白花与深红花瓣交织成的多样色彩,让赏樱季节延续至四月中旬,不同时期造访总有新发现。

而井之头公园作为东京最早的「郊外式庭园」,一向以文化氛围浓厚著称。园内不仅设有井之头自然文化园、动物园,还有众多手工艺摊位、古书摊与街头艺人演出,为樱花增添了一份生活气息。樱花之下,你可以在树下席地而坐,感受春天的氛围,享受一下悠闲的慢生活。

井之头恩赐公园的樱花,是那种会被写进回忆里的风景。它不只是「赏」,更是「沉浸」:在粉色湖畔划船、在树下铺垫而坐、在风中望花瓣飘落…… 属于东京的春天,在这里如诗般铺展,是赏花,更是过日子的一部分。

千鸟渊(千鳥ヶ淵)

  • 地点:東京都千代田区三番町 2 先。
  • 交通方式: 最近车站为东京 Metro 半藏门线「半藏门站」、都营新宿线「九段下站」,步行 5 分钟即可抵达。
  • 推荐理由: 与皇居护城河相伴的赏樱胜地,每年春天约 260 株染井吉野沿河绵延 700 米,形成独特的「水上樱廊」。搭乘小舟穿行在水面之上,抬头是拱起的樱枝,低头是满河的花瓣,堪称东京春日最浪漫的画面之一。
  • 注意事项: 作为东京数一数二的赏樱名所,赏花高峰期人潮密集,尤其是周末和点灯期间。若想搭乘小舟赏花,需提前前往排队或在线预约。河道两侧步道较窄,摄影建议携带轻便设备。 千鸟渊是东京赏樱地图上最具「日式风情」的一页。它不像目黑川那样现代、热闹,而是以皇居为背景,以护城河为舞台,将樱花的静谧与水面的宁和巧妙融合。在染井吉野满开之时,这里最经典的画面莫过于:划着小船穿行在河道中央,身边是低垂入水的樱枝,水中倒映出枝头与天光,仿佛置身梦境。
image.png

沿着千鸟渊绿道从半藏门方向缓缓前行,步道两侧的樱花枝叶向中心弯曲,彼此交错,行人仿佛走在天然花棚下。再加上水面宽阔,拍摄倒影极为方便,是摄影爱好者的常驻打卡点。仍然推荐清晨前往,人少光柔,是拍摄「水上花廊」的最佳时间。

image.png

个人认为千鸟渊的赏樱比较依赖天气。阴天的话虽说别有一番韵味,但景色却远远不如白天。若天气晴好,蓝天下的樱花尤为纯净。可以在沿途长椅小憩,或带上便当在附近的北之丸公园野餐,感受花见文化的闲适一面。

这里晚间也有灯光投射在花枝与水面上,可以在这里静静地欣赏夜樱。每年点灯时间约为 18:00 至 22:00(请以官网发布信息为准),非常适合情侣或喜静者前往。

千鸟渊不是那种会被一眼惊艳的赏樱地,但它胜在沉静与平衡。它不只属于相机,也属于放慢脚步、细细品味春日氛围的行人——在这里,樱花与水相拥、与城同眠,留下的是不动声色的优雅春意。

浅草寺(浅草寺・隅田公園・河边沿岸)

  • 地址:東京都台東区浅草 2-3-1。
  • 交通方式:搭乘东京 Metro 银座线、都营浅草线或东武伊势崎线至「浅草站」,出站后步行即可抵达。浅草寺本堂、雷门、五重塔周边即为赏樱核心区域,亦可步行至隅田公园继续赏花。
  • 推荐理由:作为东京最具代表性的观光地之一,浅草寺不仅是文化与历史的象征,也是赏樱季节极具人气的打卡地。寺院古建与樱花相映成趣,尤其在五重塔前樱树盛开时,能拍出极具「日本感」的春日场景。沿着隅田川延伸的隅田公园,则是拍摄「樱花 + 晴空塔」同框构图的绝佳地点,是游客与摄影爱好者必访的经典场景。
  • 注意事项:春季人流极大,基本无法躲避人流高峰,因此只建议本身计划浅草寺观光的朋友前去赏樱。浅草寺区域为宗教设施,拍照时请注意行为举止,不打扰他人参拜。

在东京的赏樱地图上,浅草寺是一处兼具视觉冲击与文化底蕴的春日风景线。每年三月底到四月上旬,染井吉野在浅草寺本堂、五重塔与仲见世街道两侧依序盛开,寺庙古刹在樱云映衬下显得格外庄严又温柔。游客在前往参拜的路上,往往会驻足于雷门前,望着樱花与红色大灯笼交相辉映,留下属于春天的合影。

image.png

但真正的春日奇景,隐藏在河道两侧的樱花步道之中。沿着隅田川铺展开的河畔樱道,绵延数百米,每当风起,花瓣便洒落水面,形成一片片随流漂浮的「花筏」。

image.png

此处不仅适合散步与野餐,更是拍摄「晴空塔 + 樱花」同框画面的黄金地点。在沿岸开满樱花的一带,选择一个略带仰角的机位,就能将枝头满开的樱花与晴空塔完整收入画面。清晨的光线柔和,晴空塔蓝白配色在樱花映衬下更显清丽;而在傍晚时分点灯之后,又是另一番「夜樱 + 灯塔」的梦幻景象。

晴空塔与樱花的同框,不只是视觉上的高度对比,更是一种时代与季节的交汇:古老浅草与现代东京在这里共处,春天也因此显得既有历史的沉静,又不失城市的生机。

小石川后乐园

  • 地址:東京都文京区後楽 1-6-6。
  • 交通方式:乘坐 JR 中央线、总武线至「饭田桥站」或「水道桥站」,从车站步行约 5 分钟即可抵达园区入口。
  • 推荐理由:作为江户时代遗留下来的代表性「回游式庭园」,小石川后乐园不仅拥有优美的园林构造,更是春日赏樱的静谧之所。园内分布着约 60 余株染井吉野与山樱,每年三月底至四月初次第盛放,映照在池水之上、古桥之间,与附近的高楼形成对比,构成东京独有的古今交错春景。
  • 注意事项:园区为文化保护庭园,禁止携带酒精饮品或进行喧哗野餐等行为。园内步道多为碎石与石阶,建议穿着舒适便鞋。因为樱花不多且因品种不同开花时间不同,再加上种植区域比较分散,所以赏樱的人流相对较少,是东京中心罕见的静赏型赏樱景点。
  • 与东京那些热闹非凡的赏樱名所不同,小石川后乐园更像是藏在繁华背后的静雅之境。园内原为水户德川家的江户别邸庭园,以中国朱熹「先天下之忧而忧,后天下之乐而乐」的儒学思想命名,园景讲究借景与含蓄,在春天更显温柔典雅。
image.png

绕池而行,映入眼帘的是一树树低垂的樱花,它们在水面轻轻摇曳,倒映着蓝天与庭园的石桥、假山、古松,构成一幅如画的江户春日图景。

image.png

步入园内深处,沿着碎石小径前往内庭周围,是静坐的好地方。虽然这里没有成群的樱花,但是配合自然的起伏地势,有种走入山林间春野的错觉。你只需顺着古树与池水的流向漫步,让春天在不经意间从枝头垂落、从倒影中浮现。这里的樱花,不为热闹,只为安静地陪你走过一个春日的午后。

image.png

若你已厌倦了「人从众」的赏花打卡,不妨在春光正好的某天,来到小石川后乐园。在古桥与石灯之间、在江户遗韵与现代楼影之间,用一场温柔的漫步,将春天静静收下。

六义园

  • 地点:東京都文京区本駒込 6-16-3。
  • 交通方式:JR 山手线「驹込站」南口步行约 7 分钟,或东京 Metro 南北线「驹込站」出站即达。
  • 推荐理由:江户时代典型的回游式庭园,以「枝垂樱夜樱」闻名。春季限定的夜间特别开放期间,一株高达 15 米、树龄超过 70 年的枝垂樱在灯光下如瀑布般倾泻而下,被称为「东京夜樱第一景」。园内古典园林与樱花灯景交织,静谧且充满东方意境。
  • 注意事项:赏樱期间需购买夜间特别入园票,提前购买有优惠,当日票价为 1100 日元。夜樱点灯期间(通常为 18:00–21:00),入园人数较多,建议提前抵达。由于园内多为碎石小道与昏暗区域,建议穿着便于行走的鞋子,并注意足下安全。

在日文里有一个词叫做「夜桜」,顾名思义,那就是「夜晚的樱花」,利用灯光点亮樱花来营造出宛若仙境的景致。说到夜樱美景,都内最著名的应该是六义园的枝垂樱。

image.png

这座庭园历史悠久,是在 1702 年由将军麾下大名(诸侯)柳泽吉保,以和歌中咏唱的景观为蓝本建造而成。每年园内的樱花盛开之时,就会在晚间展开特别的赏樱活动,以供大家观赏。

image.png

穿过庭园内的正门,不久便能看到这棵已有 70 年树龄、庄严华丽的枝垂樱。时至今日,每逢樱花季节,这株枝垂樱依旧绽放出淡粉色的樱花,那载满花朵的枝头低垂,宛如倾泻而下的瀑布。站在它面前,仿佛被花瀑包围,樱花如丝如雨,自空中垂落,在投射灯光的衬托下泛出柔和光晕,如梦似幻。

除了主枝垂樱,园内还有数十株染井吉野和山樱点缀在假山、池塘、小桥周围,搭配着夜间投影,不时可见花影倒映水面、古石桥下落樱轻漾。沿着小径缓步前行,四周是静静流淌的水声与远处灯影,仿佛穿越回古时京都的私家花园。

其它热门景点

诚然,东京还有许多广为人知的热门赏樱景点,比如上野公园、新宿御苑等等,每年花季一到,人潮如织,确实热闹非凡。但从我的角度来说,与其去这些地方体验「赏花不如赏人」,不如将目光放得稍远一些,看看首都圈附近那些略显低调却别有风韵的赏樱地。

或许,它们并不会出现在「打卡赏樱名所」的榜单上,但正因如此,你才能在漫步其中时听到脚步声和鸟鸣,才能真正地、毫无保留地与樱花面对面。

在接下来的篇章里,我想带你一起探访这些散落在东京周边的小小花境:从伊豆半岛盛开的早樱,再到川越河道里的静水流樱;从静冈茶园间盛放的古樱,再加上到神奈川寺庙旁守岁般的枝垂樱——它们或许名气不大,却是我愿意一次次返回的地方。春天,不止在东京市中心盛放,它更在那些人迹未至的枝头,静静等待你发现。

关于本栏目

未标题-2.jpg

五年前,我第一次独自走进日本。我喜欢一边旅行一边观察,喜欢泡地方温泉、拍地方电车、逛人不多的商店街。每一次次踏上新的土地,我开始用文字记录下这些旅程的片段,在少数派上慢慢构筑起《日本浮生录》系列。那是一部不断更新的个人游记,也是一种试图捕捉“日本日常之美”的方式。

写着写着,我渐渐意识到,光是游记式的分享还不够。而做这本《日本全境漫游指南》,是我一直以来的念头。我希望,这本指南不再拘泥于游记的形式,而是更加全面地、系统地介绍日本。它是一次从“浮生”走向“实用”的延伸,不同于一般“打卡式”路线推荐亦或者是“碎片化”的旅游攻略,这本栏目更像是一位熟门熟路的旅伴,从点滴开始,一边为你指路,一边轻声说:“这个地方,别急着走。”我希望它不止是一本“看完一次就搁置”的攻略,而是一本你每次出发前都会想翻一翻的小手册。

这本指南,写给第一次来日本、却不想走马观花的你;也写给那些去了很多次,却还想继续深入、继续发现的旅人。

writer.jpg
《日本全境漫游计划》希望做一份常旅之人也愿收藏的攻略书,共创页面:https://sspai.com/create/tour-guide-for-japan

Support on Patreon | 爱发电上赞助

  •  

Raphael AI图片生成器:释放创意,零门槛打造惊艳视觉盛宴

在 AI 技术席卷全球的今天,图像生成工具正成为内容创作者、设计师和营销人员的得力助手。Raphael AI 作为全球首款完全免费无限制无需注册登录的 AI 图像生成器,以其强大的功能和便捷的操作,迅速在创意圈掀起热潮。

今天偶然看到的,有免费额度的 AI 图片生成器。适合生成配图或者插图,用来生成封面感觉还差点意思,和即梦效果差不多。

Raphael AI 是什么?

Raphael AI 是一款基于先进的 FLUX.1-Dev 模型打造的 AI 图像生成工具,用户只需输入文字描述(提示词),即可在几秒钟内生成高质量、多风格的图像。它的核心优势在于:

  • 完全免费, 零成本创作:无使用次数限制,无需注册或登录,打开网页即可创作
  • 多样化风格:支持写实摄影、动漫、油画、数字艺术等多种艺术风格
  • 快速生成:优化的推理管道确保几秒内出图,效率惊人
  • 隐私保护:零数据保留政策,提示词和生成图像不存储于服务器,保障用户隐私
  • 商业用途:生成图像无水印,可自由用于个人或商业项目
  • 一定质量保障:由 FLUX.1-Dev 模型驱动,提供具有卓越细节和艺术风格控制的照片级逼真图像;高级文本理解

对比国内大模型,我觉得是优势功能的都标注了。为啥说一定质量保障,因为高质量需要订阅才行 😄

测试

英文提示词

Humorous and funny style, preferably with a purple-haired Japanese anime girl holding a sign that says, "I need 66 more followers to reach 1000, please subscribe."

选择一个,其他都略微有些瑕疵

中文提示词

幽默搞笑风, 最好有个紫色头发日漫妹子举牌子,牌子上写着「我还有 66 个粉丝才满 1000,请求订阅」》

总结

官方建议: 请用英文输入提示词以获得最佳效果

经过实操,确实英文提示词要比中文好多了,可能我问的方式仅在 ChatGPT 上实验良好。

官方也提供了一些灵感示例提示词,点击相关图片就可以查看其他人的提示词

再次实操一下,发现生成 SB 比缘生更简单哈哈哈

生成: Cute chubby Pikachu on the grass, surrounded by small white flowers, with the two Chinese characters "SB" written on Pikachu's belly, soft pastel anime style

官网


  •  

体检

现在基本都靠chatgpt帮忙翻译英文slug,又快又好,写博客的阻碍又少了一丢丢~感恩的心♥


自从去年10月加入公司社保之后,体检总算能够一站式搞定啦。回想我2022年的时候——

因为我是兼职而非正式员工,所以没法享受我们公司的体检福利。但因为我的健康保险是挂在豆哥名下的,所以免费接受了他们公司的乳腺检查。他们也有宫颈癌检查项目,但在我查清楚之前就因为身体不适自费做了检查,而又因为使用了保险,所以没法申请报销。另一方面,豆哥公司提供的家庭成员的常规体检必须35岁以上才能做,所以我又找到神户市的免费体检。于是就形成了在三处不同地方体检的奇幻结果——神户市役所查常规、神钢纪念病院查乳腺、家附近小诊所查宫颈。

转眼我已过了35岁,得益于神户市福利,偶数年龄检查宫颈癌有优惠,而超过40岁乳腺癌检查也有优惠。今年不正好,是奇数年龄,思来想去还是决定明年蹭优惠,所以今年附加项就只选了乳腺超声波。

我一接到公司关于体检的通知,便立刻查询了指定医院并顺利预约。地点选在了之前一直去的神钢纪念病院,环境和体验都很好,也熟悉,没理由不去。在网站上预约好后不久,担当就给我发了邮件,我按照同事交代的提出需要开具两份体检报告,一份寄给公司本部,一份寄到我家。顺利沟通完毕,就等约定的日子5月17日。

体检当天是周六,天降大雨,但我心里还挺开心。因为周天有神户节,坡坡将会跟着小提琴老师一起参加,周六下完了雨周天肯定能放晴,就不用像去年一样冒雨游行了。到了医院,一切都跟从前一样,只是因为体检项目不同,所以内容更丰富了一些。那些常规就不赘述了,着重讲一下胃部钡餐检查(胃バリウム検査)。

这可是我来日本之后第一次做这个检查,甚至在中国我印象中也只做过一次。我本来没想太多,按照之前发来的说明于前日22点之后就再无任何进食,连水都不能喝,可怜。到了医院说胃部检查最后做,我顶着饥肠辘辘的肚子幽幽应下。好在很快就到“重头戏”了,一上来慈祥的医生爷爷就问我有没有做过这个检查,我天真地摇摇头,说在日本是第一次,在中国很久以前做过。我印象里就是拿个纸杯喝钡餐,没什么难度。爷爷闻言耐心跟我讲解,做检查之前需要先喝发泡剂将胃撑大,然后喝钡餐照X光。说完拿了一张注意事项让我仔细阅读,他先去准备药剂。我越读越紧张,怎么这么复杂。

没一会儿爷爷就拿着发泡剂过来,同时递给我一杯水说,发泡剂要一口咽下然后喝水,千万别在嘴里就融化,不然嘴巴里充满了气也没用,还得再喝一袋进胃里。喝进去之后会感觉胃胀胀的想打嗝,千万不能打嗝,否则功亏一篑。本就紧张的我听完心更是一下就提到了嗓子眼,心里默念别像我平时喝蛋白粉一样在嘴里融化之后再咽,可是那要怎么做呢?我稍微做了个预演,随后心一横药一倒水一闷,搞定!

你还真别说,胃立刻就胀了起来,爷爷还在一旁千叮咛万嘱咐别打嗝,如果想打嗝就咽口水。我也不敢开口,生怕憋不住,只是紧闭双唇点点头。接着爷爷让我站在一个机器上,他解释说这个机器等会儿会躺下来,甚至还会微微倒立,让我握紧两侧的扶手。同时他递过来一大瓶,注意,真的是一大瓶钡餐,有三四百毫升吧,我一面听他说明心里一面嘀咕,应该不用全喝完吧。

一切就绪,爷爷进入控制室,他让我听指令行事,我点点头。首先先喝一口钡餐,估计他要看看胃里的情况再进行调整。接着他又让我一口一口喝了两次,他确认无误后就让我一口气全部喝掉。我???行吧,刀都架脖子上了还能跑不成,于是我按照之前注意事项上写的不紧不慢一口口吞咽,吞了十几口终于全喝完了,是我都能感觉到好久的久,可见量多大!

喝完之后爷爷让我把空杯子放在边上的杯槽里,还细心地拿来了纸巾给我擦嘴巴。接着他回去操纵机器使我慢慢水平躺下,这过程中我看见杯槽并不随着机器转动而是一直保持垂直,心里不禁默默感叹细节到位。躺好后爷爷让我翻身,我没理解,以为机器会自转3圈,于是便默默等着。只见他急匆匆从控制室跑出来让我自己在“床”上顺时针翻滚。我依言照做,心想这个操作应该是为了让钡餐涂满胃内部的表面吧。接下来就是左转右转拍照,然后爷爷让我趴着,接着又跑出来给我左肩上安了个什么东西,说等下“床”会往头的方向倾斜,让我坚持住。我点点头,瞬间明白左肩上的是个支撑物,防止我滑下去脑袋开花。本来我以为要倒立,结果只是15度左右的倾斜,果然做最坏的打算有利于心理健康(?)。“倒立”似乎是重头戏,过了这关爷爷明显轻松了不少。最后机器左边突然伸出个棒槌在我胃部压了又压,然后就完美收官了!

出来后爷爷问我接下来要去哪里吗?我说没有,但是下午要出去。他说那你现在赶紧吃个泻药,争取早点排出钡餐。我be like:这么猛吗?总之他看着我吞了一颗,然后又交给我一颗以及一张说明,表示如果4个小时后还没排出就再吃一颗,记得多喝水。我好好应下,便换衣服回家了。

到家胃还在胀,毕竟我从小胃就不太好,据我妈说是因为小时候被保姆喂了凉茶,伤了根本(?)。仔细想想从前一晚吃完晚饭就滴水未进,到现在吃的最多的就是钡餐了,那滋味,ew!豆哥说吃了午饭就好了,确实舒服了一些,但还是一直不适到晚上。本来前两天刚买了绿豆刚吃了一锅绿豆粥还想再接再厉的我只好暂时作罢,早餐的牛奶也不喝了,过了一两天终于恢复如初。今天绿豆粥又安排上啦,可喜可贺!

这次的体检体验挺好的,下次还去,简简单单,一步到位。胃部钡餐检查如果不是必做项目,我明年就不选了,挺折腾的。最后的最后,给未来的自己提个醒,是连续两年都犯的小错——出门前别上厕所!检尿的时候真的太捉襟见肘了。

  •  

上瘾

最近一直在关注生活节奏过快、快乐阈值升高的问题,也许老天爷就是大数据,又或者只是锚定效应在起作用,总之刷油管放松一下都能被我看到一个关于上瘾机制的视频1。视频里是一个国外博主对另一个介绍有毒动画cocomelon视频的实时点评和对弹幕的回复,看得我豁然开朗,也从另一方面验证了我之前的判断。

我在本系列的上一篇文章「被“快”裹挟」里说过——

昨天跟豆哥聊天,说到我有点点领悟到什么事能使我放松,且知其所以然。刷反转快的短剧、购物、看短视频,这些事都能在短时间内提供大量的新鲜感。

而视频中所控诉的cocomelon罪状之一就是极快的画面切换。一般来说,正常的画面切换时间是6~8秒。在老年大学学做视频的我爹说,因为人眨眼的频率是6~8秒,所以这个速度是合适的、符合自然规律的。他特意强调过长的画面会令人没有看下去的欲望,因为这是他还没系统学习之前所踩的最大的坑。那么反之我们也就知道,如果画面切换很快,便能死死抓住观看者的注意力,一刻也不放松,毕竟漏看一秒都会影响进度。而cocomelen正是使用了这种办法,牢牢锁住儿童的注意力,毕竟他们可是比成人还要难以专注。而因为习惯了这个速度,孩子们在现实生活中就感觉像被开了慢倍速,难以适应,甚至产生戒断反应,比如不停哭闹。

视频中将cocomelon比作儿童版抖音,因其快节奏的方式与抖音同出一辙,而且导致的后果甚至也可称得上一模一样。可悲的是,成年人也许还有从头再来的机会,但被耽误发育的儿童则有可能留下难以弥补的缺陷。视频中指出,很多儿童因长期观看此动画而导致语言障碍,因为他们没法慢慢练习。就像我看多了短剧,也看不下长剧或电影,开2倍速更是常态。我太追求所谓的效率了,反而变得愈发浮躁,什么都进不了脑子。

本来我都是在坡坡睡着后自己一个人看短剧,后来也不知道是不是心力越来越不足,我在娃面前也不装了,累的时候掏出手机就看。我看,坡坡自然也要凑过来一起看,在她看了十几秒后被我叫去继续做事时幽幽说了一句“好精彩”,我脑中立刻警铃大作,马上放下手机陪她一起做事。我虽然没找到我对她这句话下意识抵抗的原因,但我知道,还是尽量少在她面前看短剧。

上周跟朋友聊天时她说到她的娃沉迷抖音,是一闲下来就想看的程度。有一次她实在太困了就去睡午觉,醒来一看过了两个小时娃还在刷,她一下子火冒三丈,怒不可遏。我十分理解她的心情,因为我也有过类似的经验,同款睡午觉,同款刷太久手机的娃。于是我积极寻找解决办法,也是我给朋友的建议——带她玩点其他的,注意力自然就从手机上转开了。更重要的是让她知道,除了手机,还有很多有趣的事情可以做。朋友听后顿了顿,接着有些尴尬地说,“主要我也不知道能干嘛”。我笑了笑说,我们家会一起玩球、看书、做手工,还有就是带出去玩。她说她现在就是能带出门就带出门,省得在家只想看电视。

对于把孩子交给电视这件事确实毁誉参半,给看电视怕沉迷,不给看大人得不到休息。所以视频里的博主说,虽说cocomelon不是什么好东西,但长时间放任的父母也有责任。我也是好不容易才摸索出适合自己的办法,与前篇的结论一致——做选择只看当下。如果当下我实在带不了就塞电视,但会注意内容是否合适。而根据二八法则,有能力的时候一定好好陪玩,创造更多有意思的体验,将电视的负面影响压到最小。

说起来因为我们家是投影仪,坡坡想看还得开机等一会儿,一定程度上加大了难度,不像玩球做手工那样马上就能开始,也属于无心插柳了。而且我用手机也不仅仅看电视,我还在多邻国上学韩语、用chatgpt查资料、听歌、写博客、看照片等等,所以坡坡也知道手机是有很多用途的。

另一方面也感谢豆哥还挺乖不看抖音也不咋刷短视频,主要他是不容易沉迷的性格,也不知道他咋做到的,天选防沉迷圣体。我曾为了能向他学习而请教过个中缘由,他只淡淡说了一句——就是没有好玩到放弃其他事情。我???可能他比较钝感吧!

啊,这该死的钝感力!
啊,这该死的高敏感!

  •  

Google新AI产品无法使用解决指南

今天看到这个消息推送,之前也遇到过这种情况,这个简单写下如何解决,当个精神美国佬

背景

受限于某些特殊环境或者边缘因素影响,国内是没法正常使用 Google AI 相关的产品的。(默认你已经可以访问 Google AI 等产品了)

接下来给的几种方式,都可以尝试

修改浏览器默认语言

这个跟之前 Github 默认禁止中文用户访问类似,检查你的请求头 accept-language 信息

示例修改 Edge 默认首选语言为英语即可,生效后随便访问一个网站开发者工具查看请求头或者支持切换语言的网站打开是否为英文

如果你的账号没问题了,通常打开那些网站就可以正常使用了。如果还不行,可能就是账号问题了

当然也会带来一些问题,你打开所有支持多语言的网站都会默认使用英文,影响也不大

申请谷歌账号地区修改

有可能,你很早之前就注册了谷歌账号,地区选的中国

查看账号绑定的地区 https://policies.google.com/terms

换区操作

找对入口,其实也很简单,通常我们都选择美区,精神美国佬,社会大学生, 部分 AI 功能暂时只对美区开发。

换区入口 https://policies.google.com/country-association-form

理由选择其他原因,听劝

好了,其他就是基本要求了,自行准备就行。

对了,这两个我港区的小号也是可以正常访问的。

PS: 大佬们都买了 Google One Ultra 没?


  •  

Drawnix:无限画布上的开源白板工具

这个项目很早之前就关注过, 那时还没提供 Dockerfile😁

简介

Drawnix 是一款基于 Plait 框架打造的免费开源白板工具,提供思维导图、流程图和自由绘画等功能。依托插件化架构,用户能够随需扩展多种交互组件。每一次操作都能实时保存至浏览器缓存,确保内容不丢失

核心特性

  • 多样化绘图模式
    • 支持思维导图、流程图与自由画笔,满足不同场景需求
    • 可插入图片,通过简单拖拽丰富画面
  • 高效编辑体验
    • 撤销、重做、复制与粘贴操作流畅
    • 自动保存功能避免意外丢失(浏览器缓存)
  • 无限画布与导出能力
    • 通过缩放与滚动打造无边界创作空间
    • 可将画布导出为 PNG 或 JSON(.drawnix) 文件
  • 插件机制与兼容性
    • 插件架构支持 Angular、React 等多种 UI 框架
    • 自带 Slate 富文本扩展,后续可接入更多文本编辑插件
    • 未来可通过社区插件实现更多应用场景

项目

名称灵感

Drawnix ,源于绘画( Draw )与凤凰( Phoenix )的灵感交织。
凤凰象征着生生不息的创造力,而 Draw 代表着人类最原始的表达方式。在这里,每一次创作都是一次艺术的涅槃,每一笔绘画都是灵感的重生。
创意如同凤凰,浴火方能重生,而 Drawnix 要做技术与创意之火的守护者。
Draw Beyond, Rise Above.

与 Plait 框架的深度结合

Drawnix 底层依托作者公司开源的 Plait 画图框架,这是知识库产品的重要技术沉淀。两者紧密结合让开发者享受“一键开箱即用”的便捷,同时还能在业务分层中灵活装载自定义插件。

这款工具不仅是面向个人创作者,同样适用于团队协作与在线教学。无限画布中,每一次涂抹都让构思变得更生动、更立体,技术与想象力在此汇合,带来前所未有的白板体验。

私有化部署

作者已经提供了 Dockerfile,基于此 Dockerfile,我构建了一个镜像, 默认监听 80 端口,除此外无特殊配置

  • ccr.ccs.tencentyun.com/k7scn/drawnix 基于此97ab1d4构建完成

compose 部署

  • docker-compose.yaml
services:
  drawnix:
    image: ccr.ccs.tencentyun.com/k7scn/drawnix
    container_name: drawnix
    ports:
      - '100.90.80.15:8088:80'
    restart: always

然后配置 caddy 代理即可。

k3s 部署

我主要使用 k3s 部署,对外访问使用 cft

  • drawnix.yaml
---
apiVersion: apps.kruise.io/v1alpha1
kind: CloneSet
metadata:
  labels:
    app: drawnix
  name: drawnix
  namespace: kc-system
spec:
  replicas: 1
  selector:
    matchLabels:
      app: drawnix
  updateStrategy:
    type: InPlaceIfPossible
  template:
    metadata:
      labels:
        app: drawnix
    spec:
      tolerations:
      - operator: Exists
      nodeSelector:
        node-role.kubernetes.io/kc: "true"
      containers:
      - image: tcr.china.12306.work/github/drawnix
        imagePullPolicy: Always
        name: drawnix
        ports:
        - containerPort: 80
          protocol: TCP
        resources:
          requests:
            cpu: 100m
            memory: 128Mi
      restartPolicy: Always
---
apiVersion: v1
kind: Service
metadata:
  labels:
    app: drawnix
  name: drawnix
  namespace: kc-system
spec:
  ports:
  - name: http
    port: 80
    protocol: TCP
    targetPort: 80
  selector:
    app: drawnix
  type: ClusterIP

apply 之后,在 cfd tunnel 管理页添加公共主机名

演示站

欢迎自建,不保证 SLA,暂时不知道开源版与官方演示有什么区别。


欢迎订阅我的微信公众号,同步更新 😁

  •  

手工奖状

为了激励坡坡再接再厉,我开始了自制奖状和证书的政策,至今已经做了5张。按照时间顺序排列如下——

1️⃣在自己小床上睡了一个月
2️⃣小提琴发表会圆满成功
3️⃣独自在家待了一小时
4️⃣芭蕾舞发表会圆满成功
5️⃣成为小学生


在自己小床上睡了一个月
在自己小床上睡了一个月

分床行动终于取得了突破性进展,可喜可贺,我离自由更近了一步哈哈哈(情难自抑)。追溯起来是不记得何时开始的多年以前,刚买好小床,睡了一两次就又回我们大床上了。也好,那时候这个睡渣小孩晚上还是睡得不太安稳,在身边也好哄一些。又过了一阵子,我正好在淘宝上看到小帐篷,尺寸与小床完美适配,于是斥巨资空运过来,心想着这次十拿九稳了吧。一起布置好,坡坡也兴奋不已,睡了一周有余,突然又不香了。就这么反复几次,直到快上小学之前,我把帐篷拆了放回她的房间做秘密基地,小床又回到了原来的开阔。仍旧采取的是共同布置策略,也做好了继续反复的准备,没想到这次睡实了。而因为长大了,道理也听得懂了,面对她想回大床的请求,我的对策是睡满一个月能得到一份证书,她欣然接受。再后来,就算她偶尔靠过来,我也不会强求,逐渐过渡到等她睡熟再给挪回去,再到现在看她快睡着了喊她自己回去,她虽然嘴里会哼唧几声,但倒也听话,能够体谅我被挨着睡很热,实乃一个大大的进步。至此我宣布分床大业正式实现,接下来就等再过几年她自己提分房。


小提琴发表会圆满成功
小提琴发表会圆满成功

小提琴发表会需要和大家合奏小星星,独奏三首儿歌。为了不至于太丢脸,一向随意的我支棱了起来,扛起了监督练琴的重任。在全家人的不懈努力下,总算是练到八成熟。我也是没想到这娃是大赛型选手,在老师那边拉得可好了,拉错了也不慌不忙接下去,看来是继承了豆哥的稳重。过了老师那关,我便没有继续“强求”,轻轻松松迎来了最后的正式发表,美其名曰先苦后甜。而以这次发表会为分水岭,再加上在适应小学,练琴基本处于停滞状态。希望坡坡早日“醒悟”,自驱力爆棚主动练琴。


独自在家待了一小时
独自在家待了一小时

今年春天的花粉太强势,一开春就发起了总攻,我又好死不死狠狠揉了眼睛,于是直接肿了。本来还打算计划一番找个吉日去看病,这下好了,家附近眼科七点关门,我晚饭都来不及吃就匆匆赶去,第一次留坡坡一人在家。我以往虽然也独自去取过快递,出去买过咖啡,但那都是十分钟左右的事。而这次实在是等不到豆哥回家,好在为了上小学备好的GPS有发语音功能,于是我让坡坡有事发信息,便半悬着心出了家门。坡坡一个人在家吃饭还挺淡定,倒是我有些不安和愧疚,在安静的候诊室不停小声给她发语音。

顺利看完病,已经过去了一个小时,豆哥也在紧赶慢赶的归途中,不过还是我比较早到家。我回来后看她一个人在阅读角画画,问她一个人在家怎么样,她表情有些不自然地说本来想看电视,但是不知道为什么卡住了,就关了去画画。我听了立刻蹲下来抱住了她,问她是不是很想看电视但没人帮忙很难过,她的不自然瞬间转变为了委屈,流下了眼泪。我心疼坏了,赶紧帮她开了投影仪,并跟她说如果下次再出现这种情况可以试试重启。同时我也狠狠夸她,帮了妈妈好大的忙,一个人在家遇到困难也会想办法,真的太太太厉害了,妈妈要给你做一张奖状!坡坡闻言恢复了平静,我也破例让她多看了好一会儿电视。豆哥回来后接着一阵猛夸,他是比我还要担心坡坡的性子,有时候太过了反而还会被坡坡嗔怪(奶凶)。


芭蕾舞发表会圆满成功
芭蕾舞发表会圆满成功

芭蕾舞发表会和上小学之所以在同一张上,是因为我做了好几张奖状和证书后吸取了经验。一来一整张太大了,便利店也没法选择百分比缩放打印,所以只能我自己人工调整。二来一次做两张也省时省力省钱,何乐而不为呢。所以这次我用电脑开了张A4尺寸,对半分配,互不干扰。

说起来第一次做奖状时我为了追求事半功倍用了Canva的模版,甚至照片都没换,只改了字。效果挺不错,就是改起来有点费劲,还得另装APP。于是第二次我打开了本来就有的Picsart,寻找模版换照片加字一气呵成。但它有个致命缺点(?),就是没有会员没法修改,做完发现字写错了又重来了一遍,着实心累。所以第三次我便没用模版,而是自己选了图库里的插画拼凑而成。这次干脆直接干起老本行,用Photoshop从零开始制作。我上网找了些设计参考和素材,可以说是纯手工了。当然,上小学那张偷懒了,也是因为照片本身就足够出彩了,所以只需要简单加几个字。而芭蕾舞我截取了坡坡表演中的跳跃画面,她是那一排小朋友里面跳得最高、脚开得最大的,我觉得很有意义也很押题,所以就以此为中心做了扩展。

在制作的过程中,坡坡正好来找我。当她看到电脑屏幕第一反应是认真辨认我在做什么,等她看清后立刻用小手捂住了眼睛,模样过于可爱!我按下她的小手表示没关系,反正马上就能做好送给她了。


全家福
“全家福”

刚刚拍的新鲜出炉的“全家福”。

  •  

三十而砺 - 反思我的创业

转眼间到了而立之年,回首过去四年创业路,失败已成定局,但它教会了我什么是真正重要的。就像乔布斯在斯坦福演讲所说:”你无法预先把点滴串联起来,只有回头看时才会明白那些点是如何连成线的。”

商业的规律

四年探索,尝试了很多方向,做了很多产品,却没有真正赚钱。仔细思考最本质的原因:违背了商业第一性原理。

简陋的产品=不好卖吗?

不一定。只要用户需要,能满足其需求,照样可以卖的很好,赚的钱可以把产品做的更好,形成增长飞轮。用户需求的本质是解决方案,产品只要精准击中痛点,就能创造价值闭环。

有需求=能变现?

也不一定。用户可能不知道你的产品,你得想办法做好推广,找到目标用户。再好的产品,如果无法用正确方式出现在目标用户面前,等于不存在。

有需求+找到用户=能赚钱?

市面上有很多替代(免费)方案,产品得有(用户认为的)足够显著的差异化价值,才能让用户愿意为你的方案付费。

商业规律就是许多简单的常识,早点领悟这些,我能少走80%的弯路。真正符合商业规律的产品机会少之又少,如同沙里淘金。

创业是不断升级认知的修行,看的更远、更透彻,做更多符合商业规律的正确选择。

创业的收获

创业四年后悔吗?我的回答是,完全不后悔创业,唯一后悔的是成长速度还不够快。

积累了经验,提升了认知和能力

创业是最高效的实战学习。做的每个产品和功能就像是一次实验,运用自己的能力(原料),投入自己的想法(配方),期待发生神奇的反应,源源不断产生用户和收入。

最开始做的实验毫无章法,像小孩玩泥巴一样,瞎折腾一通。然后开始摸索总结经验,学会系统思考,看更多的书,向有结果的人学习,做更多实验去验证想法。大部分实验失败了,还有一些也不太成功,只产生了一些半成品。

自由职业,有时间照顾家庭

自由职业的状态让我有时间陪伴家人,工作间隙给小孩喂一下奶、陪她玩一会,放松眼睛和大脑,每天遛娃、散步正好锻炼身体。

有了小孩之后,合理高效安排自己的时间是个挑战,工作时长会不如以前,但并不是坏处,身体是革命的本钱,保持工作与生活的动态平衡,这才是可持续的发展模式。

后续的打算

标准化产品路线暂时搁置。后续我主要做定制项目/接单/远程兼职。定制开发网站、小程序、AI自动化工作流、浏览器插件、自媒体工具等。

这些都是我擅长的领域,技术能力完全满足,开发工期大致为1天~2周,最长不超过1个月,确保交付质量与效率。

我会继续不定期分享商业思考和技术经验,欢迎同行者交流碰撞。

最后

通过「RSS阅读器」或者关注公众号「自宅创业」可以订阅博客更新,也可以在 关于我 页面找到我的联系方式,欢迎交流!

  •  

HEY is finally for sale on the iPhone!

Our battle with Apple over their gangster attempt to extort 30% of our HEY revenues was one of the defining moments of my career. It was the kind of test that calls you to account for what you believe and asks what you're willing to risk to see it through. Well, we risked everything, but also secured a four-year truce, and now near-total victory is at hand: HEY is finally for sale on the iPhone in the US!

Credit for this amazing turn of events goes to Epic Games founders Tim Sweeney and Mark Rein, who did what no small developer like us could ever dream of doing: they spent over $100 million to sue Apple in court. And while the first round yielded very little progress, Apple's (possibly criminal) contempt of court is what ultimately delivered the resolution. Thanks to their fight for Fortnite, app developers everywhere are now allowed to link out of apps to their own web-based payment system in the US store (but, sadly, nowhere else yet).

This is all we ever wanted from Apple: to have a way to distribute our iPhone apps and keep the customer relationship by billing directly. The 30% toll gets all the attention, and it is ludicrously egregious, but to us, it's just as much about retaining that direct customer relationship, so we can help folks with refunds, so they don't tie their billing for a multi-platform email system to a single manufacturer.

Apple always claims to put the needs of the users first, and that whatever hardship developers have to carry is justified by their customer-focused obsession. But in this case, it's clear that the obsession was with collecting the easiest billions Apple has ever made, by taking an obscene cut of all software and subscription sales on the platform.

This obsession with squeezing every last dollar from developers has produced countless customer-hostile experiences on the iPhone. Like how you couldn't buy a book in the Kindle app before this (now you can!). Or sign up for a Netflix subscription (now you can!). Before, users would hunt in vain for an explanation inside these apps, and thanks to Apple's gag orders, developers were not even allowed to explain the confusing situation.

It's been the same deal with HEY. While we successfully fought off Apple's attempt to extort us into using their in-app payment system (IAP), we've been stuck with an awkward user experience ever since. One that prevented new customers from signing up for a real email address in the application, and instead sent them down this bizarre burner-account setup. All so the app would "do something", in order to please an argument that App Store chief Phil Schiller made up on the fly in an interview.

That's what we can now get rid of. No more weird burner accounts. Now you can sign up directly for a real email address in HEY, and if you like what we have to offer (and I think you will!), you'll be able to pay the $99/year for a subscription via a web-based flow that it's now kosher to link to from the app itself.

What a journey, and what a needless torching of the developer relationship from Apple's side. We've always been happy to pay Apple for hosting our application on the App Store, as all developers have always needed to do via the $99/year developer fee. But being forced to hand over 30% of the business, as well as the direct customer relationship, was always an unacceptable overreach.

Now that's been arrested by Judge Yvonne Gonzalez Rogers from the United States District Court of Northern California, who has delivered app developers the only real relief that we've seen in this whole sordid monopoly affair that's been boiling since 2020. It's a beautiful thing.

It also offers Apple an opportunity to bury the hatchet with developers. They can choose to accept the court's decision in full and worldwide. Allow developers everywhere the right to link to their own billing flow, so they can retain their own customer relationship, and so business models that can't carry a 30% toll can flourish.

Besides, Apple's own offering will likely still have plenty of pull. I'm sure many small developers would continue to consider IAP to avoid having to worry about international taxes or even direct customer service. Nobody is taking that away from Apple or those developers. All Judge Rogers is demanding is that Apple compete fairly with alternative arrangements.

In case Apple doesn't accept the court's decision — and there's sadly some evidence to that — I hope the European antitrust regulators watch the simple yet powerful mechanism that Judge Rogers has imposed on Apple. While I'd love side loading as much as the next sovereign techie who wants to own the hardware I buy, I think we can get the lion's share of independence by simply being allowed to link out of the apps, just like has been so ordered by this District Court.

I do hope, though, that Apple does accept the court's decision. Both because it would be a stain on their reputation to get convicted of criminal contempt of court, but also because I really want Apple to return to being a shining city on the hill. To show that you can win in the market merely by making better products. Something Apple never used to be afraid of doing. That they don't need these gangster extortion techniques to make the numbers that Cook has promised Wall Street.

Despite moving on to Linux and Android, I have a real soft spot for Apple's taste, aesthetics, and engineering prowess. They've lost their way and moral compass over the last half decade or so, but that's only one leadership pivot away from being found again. That won't win back all the trust and good faith that was squandered right away, but they'll at least be on the long road to recovery.

Who knows, maybe developers would even be inclined to assist Apple next time they need help launching a new device in need of third-party software to succeed.


  •  

Have you tried the exact opposite?

Have you thought about doing the opposite of whatever you're doing or considering? It's a really helpful way to test your assumptions and your values. What does the opposite look like, how would it work?

It's so easy to get stuck in a groove of what works, what you believe to be right. But helpful assumptions have a half-life, just like facts. And it's ever so easy to miss the shift when circumstances change, if you're not regularly stress-testing your core beliefs.

That doesn't mean you're just a flag in the wind, blowing whichever way. But it does mean having enough intellectual humility and creative flexibility to consider that what you believe to be true about your business, about your team, about your technology might not be so.

We did this a while back with full-time managers. We'd been working for nearly two decades without any, but exactly because it'd been so long, we were drawn to try the opposite, just to see what we might have missed. So we did. Hired a few full-time managers to help us test that assumption for a few years.

In the end, we decided that our managers-of-one culture worked better, but it wasn't a given at the outset. To try the opposite, you really have to believe that you might have been wrong.

Because you're wrong about something. I guarantee it. We all are.
  •  

C++ 教程: 用std::move来移动所有权


📘 C++ 移动语义与 std::move() 教程

C++的std::move用于转移变量/对像的所有权/Ownership。

🔹 什么是移动语义?

在 C++ 中,移动语义通过转移资源所有权/Ownership(如内存或文件句柄)来优化性能,而不是复制它们。

移动语义是在 C++11 中引入的,它允许:

  • 更快速地传递大型或昂贵的对象
  • 更高效地使用临时值

🔹 什么是 std::move()?

std::move(x) 并不会真的移动任何东西 —— 它只是将 x 转换为一个 右值引用(即 T&&),告诉编译器:
你可以把这个对象当作临时对象来处理并移动它。

要真正实现移动,你的类型必须实现 移动构造函数移动赋值运算符

✅ 什么时候该用 std::move()?

在以下情况下使用它:

  • 你想 转移资源的所有权
  • 你正在处理 复制开销大的对象(如 std::stringstd::vectorunique_ptr)。
  • 你写的函数按值接收参数,并希望将其移动进成员变量。

🔍 std::string 示例

#include <iostream>
#include <string>
#include <utility>
int main() {
    std::string a = "hello";
    std::string b = std::move(a);
    std::cout << "b: " << b << std::endl;
    std::cout << "a: " << a << std::endl;
}

🔍 移动 std::vector

std::vector<int> original = {1, 2, 3};
std::vector<int> moved_to = std::move(original);
// original 现在为空(但仍然有效)

⚠️ 移动后会发生什么?

移动后:

  • 被移动的对象 仍然有效
  • 但其 内容未定义 —— 你只能销毁它或重新赋值。
std::string x = "abc";
std::string y = std::move(x);
// x 现在处于有效但未定义的状态 —— 不要再读取它!

🧠 对内建类型使用 std::move()

int x = 42;
int y = std::move(x);  // 实际是拷贝,因为 int 没有移动语义

没必要,因为像 int 这样的基本类型不支持移动构造。

🛠️ 自定义类型实现移动语义

class MyBuffer {
    int* data;
    size_t size;
public:
    MyBuffer(size_t s) : size(s), data(new int[s]) {}
    // 移动构造函数
    MyBuffer(MyBuffer&& other) noexcept
        : data(other.data), size(other.size) {
        other.data = nullptr;
        other.size = 0;
    }

    // 移动赋值运算符
    MyBuffer& operator=(MyBuffer&& other) noexcept {
        if (this != &other) {
            delete[] data;
            data = other.data;
            size = other.size;
            other.data = nullptr;
            other.size = 0;
        }
        return *this;
    }
    ~MyBuffer() { delete[] data; }
};

使用示例:

MyBuffer a(1000);
MyBuffer b = std::move(a);  // 将 a 移动到 b

📦 std::move() 与智能指针

可以用 std::move来操作智能指针,比如 unique_ptr 或 shared_ptr:

#include <memory>
std::unique_ptr<int> p1 = std::make_unique<int>(10);
std::unique_ptr<int> p2 = std::move(p1);
// p1 现在为空指针

🔁 std::shared_ptr 所有权转移

当你“转移所有权”给另一个 shared_ptr 时,你实际上是:

  • 将控制块(用于跟踪引用计数)从一个 shared_ptr 移动到另一个。
  • 原来的 shared_ptr 变为空(use_count() == 0)。
  • 总体引用计数不变(仍为 1,除非还有其他共享所有者)。

✅ 示例:通过 std::move() 转移所有权

#include <iostream>
#include <memory>
int main() {
    std::shared_ptr<int> p1 = std::make_shared<int>(42);
    std::cout << "p1 use_count: " << p1.use_count() << std::endl; // 1
    std::shared_ptr<int> p2 = std::move(p1); // 转移所有权
    std::cout << "p1 is " << (p1 ? "not null" : "null") << std::endl; // null
    std::cout << "p2 use_count: " << p2.use_count() << std::endl; // 1
}

🔍 重要区别:shared_ptr vs unique_ptr

指针类型 转移机制 允许拷贝 主要用途
std::unique_ptr 仅支持 std::move() ❌ 不允许 独占资源所有权
std::shared_ptr std::move() 或拷贝 ✅ 允许 共享资源所有权,引用计数

⚠️ 注意事项

  • 可以使用 move 来转移 shared_ptr 的所有权(源指针将变为空)。
  • 也可以拷贝 shared_ptr 来共享所有权(两个指针都有效,引用计数增加)。
  • 只有在你明确希望原来的 shared_ptr 被置空时才使用 std::move()

🔄 常见使用模式

函数返回值使用移动:

std::string get_name() {
    std::string name = "Alice";
    return std::move(name);
}

只有在你想强制进行移动(比如返回函数参数)时才使用 std::move()

🚫 不该使用 std::move() 的场景

1. ❌ 不要从还需要使用的变量移动:

std::string s = "test";
std::string t = std::move(s);
std::cout << s;  // 内容未定义

2. ❌ 不要对 const 对象使用 std::move():

const std::string s = "hi";
std::string t = std::move(s);  // 实际是拷贝,因为移动构造<a  href="https://justyy.com/archives/67736">函数</a>无法接收 const 参数

🧪 总结速查表

使用场景 是否使用 std::move() 原因
移动大型容器或字符串 ✅ 是 高效转移内存或资源
移动智能指针 ✅ 是 转移所有权
基本类型(如 int、bool) 🚫 否 没有移动语义,等同于拷贝
const 对象 🚫 否 移动构造函数不接受 const
临时变量 🚫 通常不需要 已经是右值了

✅ 最后小贴士

如果你不确定该不该用 std::move(),问自己:
“我是否不再需要这个变量并打算把它交出去?”
如果答案是“是” → 那就用 std::move()

C/C++编程

英文:Tutorial on C++ std::move (Transfer Ownership)

本文一共 880 个汉字, 你数一下对不对.
C++ 教程: 用std::move来移动所有权. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c C++ 教程: 用std::move来移动所有权 C++ 学习笔记 编程 计算机
The post C++ 教程: 用std::move来移动所有权 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 简易教程: C++的智能指针 C++ 智能指针教程 C++ 中的智能指针提供了自动且安全的内存管理。它们通过 RAII(资源获取即初始化)机制,帮助开发者避免内存泄漏和悬空指针的问题,确保对象在生命周期结束时被正确释放。 本教程将介绍 C++ 中三种主要的智能指针: std::unique_ptr:独占式所有权 std::shared_ptr:共享式所有权 std::weak_ptr:非拥有式弱引用 1. std::unique_ptr unique_ptr 拥有独占所有权。一个资源只能被一个...
  2. 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) 程序员的未来?Vibe Coding + AI 一起上! 借助 AI 快速开源了三个小工具 最近,我利用 ChatGPT-4o 和 o4-mini 快速开发并开源了三个小工具。起因其实很简单——每次想转换 YAML/JSON 或进行...
  3. 被动收入之: 微博红包 今年开始重新经营我的微博帐号 drlai 收到两笔微信红包,应该是来自于官方的支持,150元(成功提现到支付宝)。虽然这不能持久,也没多少,但毕竟实现了零的突破,意义重大。 如果流量上来,内容创作者可能会接受到比较多的赞赏,这也是一个比较简单的变现方法。这也能作为一种被动收入,不过如果不是头部网红,可能杯水车薪,但如果你有好几个类似这样的,也能积少成多! 在用户中心,微博用户可以每天登陆手机微博APP打卡,获取点数和少量的红包钱(几分钱),积少成多! 微博做些小任务可获得积分和几分钱。聊胜于无。 微博的主要盈利模式 微博的主要盈利模式主要包括以下几个方面: 广告收入:微博的大部分收入来源于广告,尤其是品牌广告和效果广告。广告形式包括信息流广告(类似于推文广告)、热门话题广告、开屏广告和视频广告。品牌和企业可以利用微博庞大的用户群和社交互动来提升曝光率、推广品牌和产品。 会员服务:微博提供的VIP会员服务,用户可以支付订阅费用来享受更多的特权,比如个性化的主题、特有的表情包、私密权限设置等。这些会员服务主要面向个人用户,提升其社交体验。 直播和打赏:微博提供直播平台,用户可以通过购买虚拟礼物来支持主播,微博会从这些打赏中抽取一定比例的分成。此外,微博与内容创作者分成,通过内容付费、知识付费等形式变现。 增值服务:针对企业和大V(拥有大量粉丝的用户),微博还提供增值服务,如账号认证、粉丝数据分析、精准推送、推广和营销工具等。这些服务帮助企业提升营销效果,同时也增加了微博的收入来源。 电商和导流:微博上有大量的电商导流业务,尤其是和明星、网红的合作推广。微博用户在浏览社交内容时,可以直接跳转到商品购买链接,微博通过这种方式赚取导流佣金。 游戏联运:微博也会与一些游戏公司合作推出联合运营的游戏,微博负责推广和流量引入,用户充值或付费时,微博可以获得一部分的分成。 这些模式相结合,使得微博能够在广告市场、内容创作和电商等多个领域获利。...
  4. 步步高学生电脑上 Basic 编程语言 peek 用法示例 步步高学生电脑 是8位FC机的经典之作.它上面的BASIC有三个版本 1.0, 2.0 和 2.1 2.1 版本有个在线帮助,实际上是 help.cmd 1.0 是用 Esc 键退回到 DOS 的,...
  5. 换了个奥迪Q5大灯花了我1000英镑 我那辆奥迪Q5 SUV今年年检没通过,原因是左前车灯坏了,需要更换。车厂告诉我,光是订购零件就要700多英镑,加上人工费,总费用得1000英镑。但没办法,如果不修,车辆年检(MOT)就过不了,车也不能上路。 MOT是英国的机动车强制性安全检测(Ministry of Transport Test)的简称。 近侧前位置灯不工作 drl/位置灯集成(4.2.1(a)(ii)) Nearside Front Position lamp not working drl/position...
  6. C++ Ranges 教程 C++20 引入了 ranges(范围),这是一个强大且优雅的抽象,用于处理序列(如数组、vector 等)。相比传统的迭代器或旧式循环,Ranges 提高了代码的可读性、可组合性和性能。 什么是 Range? 在 C++20 中,range(范围) 是一种抽象,代表一个可以迭代的元素序列。它与 views(视图) 和 actions(操作) 如过滤、转换等配合使用非常自然。...
  7. C++中的 const和constexpr 比较 C++ const 与 constexpr:真正的区别是什么? 一眼看都是定义常量。 为什么这很重要 现代 C++ 鼓励编写不可变、高效且表达力强的代码。两个关键字—const 和 constexpr—是这一理念的核心。它们看起来很相似,但理解它们的不同语义,对于正确利用编译期与运行期行为至关重要。 高层次对比 特性 const constexpr...
  8. 你给SteemIt中文微信群拖后腿了么? 这年头不缺算法, 就缺数据. 这两天花了很多时间在整API上, 整完之后自己用了一下还觉得真是挺方便的. 今天就突然想看一看自己是否给大家拖后腿了, 于是调用每日中文区微信群排行榜单的API, 刷刷拿着 NodeJs 练手: 1 2 3 4 5 6...
  •  

解锁高效开发利器——Gitness,助力你的DevOps之旅

在快节奏的软件开发世界中,高效的代码托管和自动化部署是每个开发团队的追求。你是否曾为繁琐的 CI/CD 流程而头疼?是否希望有一个简单易用、功能强大的平台来管理你的代码和流水线?今天,我们为你介绍一款开源神器——Gitness,它将彻底改变你的开发体验。

作为 Drone 和 Gitness 深度定制用户,我还值得很推荐的。

什么是 Gitness

Gitness 是一个集代码托管与自动化 DevOps 流水线于一体的开源开发平台。作为 Drone CI 的下一代产品,Gitness 不仅保留了强大的持续集成(CI)功能,还新增了源代码托管能力,支持本地部署和 Docker 容器化运行。无论是个人开发者还是小型团队,Gitness 都能提供灵活、高效的解决方案。

核心亮点

  • 一体化平台:代码托管 + CI/CD 流水线 + 制品库
  • 用户友好:提供直观的 UI 界面、REST API,满足不同开发者的使用习惯
  • 灵活部署:支持私有化本地部署
  • 开源免费:完全开源,社区驱动,适合预算有限的团队(非常适合个人用户)

对比 Drone、Woodpecker

  • 目前支持 Runner 有限,仅支持 docker
  • 新增的制品库支持的种类相对比较少,常见的 Docker、Helm 是没问题的
  • 目前数据库仅支持 PG、Sqlite3
  • 流水线
    • 日志相比较 v2 仅支持存储到数据库,暂不支持存储到对象存储
    • 不支持重复执行(如定时、失败重试)
    • 流水线语法变更,相比较 Drone、Woodpecker 等 v2 版本的语法,功能缺少较多,但是满足基本使用
  • 代码仓库功能完善,日常使用是没问题

部署

环境变量配置

目前官方文档未提供,需要参考官方文档 harness/harness#config.go

部署

镜像:

  • harness/harness:unstable
  • 国内镜像 ccr.ccs.tencentyun.com/k7scn/harness:unstable
  • docker-compose.yaml
services:

  gitness:
    image: harness/harness:unstable
    container_name: gitness
    restart: always
    ports:
      - "3000:3000"
      - "3022:3022"
    volumes:
      - /data/gitness:/data
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - GITNESS_DEBUG=true
      - GITNESS_TRACE=true
      - GITNESS_GIT_TRACE=true
      - GITNESS_GIT_DEFAULTBRANCH=master
      - GITNESS_WEBHOOK_ALLOW_LOOPBACK=true
      - GITNESS_WEBHOOK_ALLOW_PRIVATE_NETWORK=true
      - GITNESS_METRIC_ENABLED=false
      - GITNESS_PRINCIPAL_ADMIN_UID=ysicing
      - GITNESS_PRINCIPAL_ADMIN_DISPLAY_NAME=ysicing
      - GITNESS_PRINCIPAL_ADMIN_EMAIL=ysicing@12306.work
      - GITNESS_PRINCIPAL_ADMIN_PASSWORD=ysicing
#     - GITNESS_SMTP_HOST=
#     - GITNESS_SMTP_PORT
#     - GITNESS_SMTP_USERNAME
#     - GITNESS_SMTP_PASSWORD
#     - GITNESS_SMTP_FROM_MAIL
#     - GITNESS_SMTP_INSECURE
      - GITNESS_GITSPACE_DEFAULT_BASE_IMAGE=ccr.ccs.tencentyun.com/k7scn/base:dev-ubuntu-24.04
      - GITNESS_UI_SHOW_PLUGIN=true
      - GITNESS_URL_GIT=http://192.168.23.16:3000/git
      - GITNESS_URL_UI=http://192.168.23.16:3000
      - GITNESS_URL_API=http://192.168.23.16:3000/api
      - GITNESS_URL_GIT_SSH=ssh://192.168.23.16
      - GITNESS_SSH_ENABLE=true
#      - GITFOX_SSH_PORT=3022
#      - GITNESS_CI_PARALLEL_WORKERS=2
#      - GITNESS_GIT_ROOT
      - GITNESS_CI_PLUGINS_ZIP_URL=https://c.ysicing.net/oss/offline/master.zip

部署完成,使用 IP:3000 访问. 账号密码需要使用设置的 GITNESS_PRINCIPAL_ADMIN_UIDGITNESS_PRINCIPAL_ADMIN_PASSWORD

目前配置参数过多,稍微配置不对还可能有 bug。针对这个

  • 我司会开源 GitFox,基于 Gitness 定制的 fork 版本,一些额外特性功能的补充(企业、与禅道的联动)
  • 我个人也维护了一套 Gitness 的魔改版本 Gitless,在上游的版本增加了个人开发者常用的特性(仅从我个人使用)

使用说明

这里简单过一些,后面会专门写一些文章介绍一下。

创建组织

对应其他 Git 服务的组织(ORG/GROUP)

创建仓库

流水线

执行流水线,目前支持部分 drone 插件,基本可以拿来就用如果熟悉 drone 和 gitness 的流水线语法的话

制品仓库

目前支持如下,感觉是借鉴了 Nexus,基本已经覆盖了日常使用。

WebIDE

总结

Gitness 不仅是一款工具,更是开发者高效协作的伙伴。无论你是追求极致效率的个人开发者,还是需要稳定流水线的小型企业团队,Gitness 都能满足你的需求。不过有一说一,目前 Gitness 还是处于快速发展阶段,有 Bug 是正常不过的事,但是基本功能还是没啥问题的。其次他们开源版本支持力度不是那么紧急,更多的还是服务他们的 SAAS 产品。


  •  

蠡湖轻霭绣紫阳

三年前,疫情未了,曾在七月初驱车至蠡园看荷花,其时所带相机乃是GR IIIx和G5 X Mark II。今日经 […]
  •  

Cheap mini PCs have gotten really good

For the past week, I've been working off the Minisforum UM870. A tiny mini PC with an 8-core/16-thread AMD 8745H CPU, which retails for $343 (or €379) as a bare-bone unit, and stays below $550, even after adding 48GB of RAM and 1TB of storage. I'm shocked to report that I really don't need more than this!

I mean, I knew that Apple's Mac Mini, which is equally petite to the Minisforum, had plenty of power for macOS. But somehow I thought Apple had some special sauce that made this possible, and that PCs were forever condemned to be bigger, louder, and slower. How 2020 of me.

The UM870 is a little beast. It runs our full HEY test suite in just 2m28s. In comparison, it takes a 14-core M4 Pro 2m49s, and such an Apple costs $2,199, once you've given it 48GB of RAM and 1TB of storage.

Now, that M4 Mac Mini can probably do things with, say, 8K video editing that the UM870 can't touch. But on the other hand, the UM870 can play the latest video games. Everything from Fortnite to Cyberpunk 2077 to Forza Horizon. It won't trouble a modern, dedicated Nvidia card for max FPS, but it's perfectly playable at 1080p at medium settings in a ton of games.

In raw CPU power, the AMD 8745H will match a regular M4 in multi-core. They both clock in right around 13,000 points on Geekbench 6. Though the M4 is a fair bit quicker in single-core. The AMD is also far behind an M4 Pro in raw multi-core power (13K vs 22K), but at less than a quarter the cost, it's hard to complain.

But as with the example of video games, it's often deceiving just to compare the Geekbench numbers, because it all depends on what you're doing. If you're really into video games, it's no use to have extra grunt, if your favorite games won't run. The same is true if you're a developer working with Docker containers and a Linux toolchain. As quoted above, the UM870 handily defeats the M4 Pro in our all-cores-buzzing HEY test suite.

That's partly because we run databases and accessories, like MySQL, Redis, and ElasticSearch, in Docker containers. Even though we run the Ruby code natively on both platforms, the Docker dependencies put the Mac further behind than it otherwise would have been, because Linux runs Docker natively, and the Mac has to deal with the file-system tax and other drawbacks.

The irony is that it was partly Apple's volume with and investment in TSMC that got us these incredible AMD chips, as they're riding the same improvements in TSMC manufacturing prowess as Apple's M chips. The Zen 4 cores in the 8745H are all forged on the same 5nm process as the M2, so it's no surprise that the AMD cores are dead-on-the-money for Apple's in Geekbench single-core performance.

And Zen 4 is even the last generation! The insane new (and insanely named) AMD Ryzen AI Max 395+ chip that's used in the upcoming Framework Desktop runs on Zen 5 cores. And with 16 of those, the 395+ is faster in Geekbench multi-core than an M4 Pro, and only ever so slightly behind the M4 Max. On my HEY test suite, it completes the run in an insane 1m21s — more than twice as fast as the 14-core M4 Pro!

But I digress. The 395+ chip isn't cheap, even if it's still a great deal. The Framework Desktop with 64GB/1TB, which is twice as fast as the M4 Pro with our HEY tests, is $1,744. That's still less than the $2,199 Mac Mini, which only has 48GB of RAM. But obviously way more than a $550 Minisforum! And while it's quite small, it's not tiny, like the UM870.

Regardless, this is what I love about technology. I love when our assumptions are tested: just how small and cheap can an awesome developer machine become? I love that open-source Linux is able to run laps around Apple in the workloads that many developers need (like working with Docker containers). I love that this tiny little silent $550 mini PC on my desk is capable of putting out computing power that only a decade ago would have been reserved to loud, honking metal in a data center.

Mini PCs have gotten really good. AMD is on a roll. Linux is a blast. These are my conclusions. Check out the Minisforum UM870 or the Beelink SER8. Anything with an AMD 7745H and up to an 8945HS should be a great deal. If you want to splurge (yet still get a bargain compared to the macs), you could have a look at the new HX370 in the Beelink SER9 or Minisforum X1, but I'd save my money, buy a Lofree Flow84 keyboard to go with the new mini rig, and put the rest of the money towards a KEF LSX II savings fund!

Update: The MediaTek Wifi + Bluetooth card used in the UM870 isn't compatible with Ubuntu out of the box. I run everything hardwired for performance, so didn't notice during my testing, but a reader caught it, and I confirmed it.

If you need wireless out-of-the-box on Ubuntu, I found that the card in the Beelink SER9 works great with both. If you already have a UM870 or still want one, and you need wireless, you could buy the AMD RZ616 Wi-Fi 6E card
from Framework or Amazon for around $20 — that works and slots right in.
  •  

读《一个女人的自传》

最近对女性回忆类的作品很感兴趣,于是又去图书馆借了一本《一个女人的自传》。这本书的作者杨步伟(出生于1889年)比《山居杂记》的作者高诵芬年长29岁。两人都生长在清末民初家世显赫的名门望族,但人生轨迹、性格特点和社会影响等各不相同。看书过程中不免将两人做比较。

一是家庭背景与教育经历。杨步伟的祖父和父亲思想开明,去过英法等国家开拓视野,重视教育,提倡废除缠足。杨步伟在家受教育后,先后去南京旅宁学堂、上海中西女塾读书,擅长英语和理科。二次革命失败后,她到日本东京帝国大学攻读医学,成为中国最早的女性医学博士之一。而高诵芬未接受现代学校教育,在家里念私塾侧重国学,受家族和传统礼教影响较多。

二是职业与社会角色。杨步伟20岁时担任崇实女子学校校长,积极参与革命。回国后在北京开设森仁医院(中国首家女性创办的医院),成为职业医生,活跃于学术和社会活动。而高诵芬则是传统闺秀与家族主母,一生以持家为本。

三是婚姻与个人性格。杨步伟从小当男孩养,性格果敢,热情外向,善于社交。她倡导女性独立,反对旧式婚约,与赵元任自由恋爱结婚,婚礼仅请胡适、朱征二人见证,仪式极简,登报声明“破除旧习”,被胡适称为“中国现代女性的先驱”。而高诵芬性格温婉内敛,依从父母之命,与门当户对的徐家公子徐定戡结婚,嫁妆筹备数年,婚礼仪式也严格按照传统风俗流程。虽为旧式婚姻,他们夫妻也幸福和睦。

杨步伟敢于革新的背后,离不开祖父和父亲的支持和托举,母亲的宠爱。对于指腹为婚,虽然未婚夫人品和才能没有问题,但杨步伟为了追求自主和人权,坚持写信退婚,祖父和父亲支持她的决定。当杨步伟在东京学医期间,父亲询问她今后打算组织私人医院,便取出积蓄动身去北京给她买房间造医院,为她的事业发展准备铺平道路。平时更是满足物质所需,杨步伟与人交往也从不计较花钱。

如果说《山居杂记》是对传统文化的传承和守护,记载了江南士族的生活细节与礼仪文化。而《一个女人的自传》则是新旧社会交替的破局和变革,文中侧重写时局变化、学业事业等情况,也有一些涉及家长里短的内容。杨步伟以现代教育和职业突破传统女性角色,展现了知识女性在科学、文化领域的贡献。杨步伟和高诵芬差异反映了近代中国女性在现代化进程中的多元选择,虽然人生轨迹不同,却都以各自的方式展现了女性成长的无限可能性,实现自我价值,成为时代的参与者和见证者。

  •  

被“快”裹挟

我又来“续上篇”了,起因是我机缘巧合“二刷”了大J的文章「给心累的父母:往这些方向发力,娃自会给你惊喜」。我是个看文章很少点赞和划线的人,除非打心底认同。今天我打算好好三刷的时候发现,我再一次在曾经打动过我的文字下驻足,同时也生出了一丝纳闷,为什么在写上一篇文章时我没有回忆起这些。归因之下,我想还是因为所有事情都“太快了”。

没劲

虽然这篇文章主要讲的是育儿相关,但经历了前阵子的挣扎再读,竟是读出了些人生哲理的意味。所以古人诚不我欺,万物皆通、大道至简。你别说你还真别说,焦虑和无力感来源于不确定性,低迷来源于没劲,迹迹可循。育儿可不是件最为不确定产出的事儿么,而因为人本能喜欢确定,所以这中间一直有着不可逾越和克服的障碍。于是因为没法确定,就觉得做什么都没用,无力感和没劲感便蜂拥而至。

当下

那要如何破解呢?既然此路不通,那就换个路子——只看当下。我最近在育儿问题上有个很大的察觉,那便是我很容易“举一反三”。某些行为可能会导致什么样的后果,这些点可以瞬间在我脑子里排成长长一串,这也是我大部分的焦虑来源。“如果我没有及时修正,那么后果不堪设想”。可是我又无法立刻确认行为出现的必然性,万一只是个偶然性事件呢?何必大费周章,反而引得亲子关系紧张,从而影响了真遇事儿时的教育效果。那么便得仔细观察慢慢引导,可我哪来的时间与精力呢?所以只看当下可能是我当下的最优解。既然未来无法预测,过好当下的每一分每一秒才是实实在在能够攥在手心里的东西。

选择

昨天我还跟朋友说起,每当我因为没有做好追高努力而内疚时,想想她的娃——不吃饭不睡觉不喝奶仍旧长得高,我的焦虑便顷刻消散(滑跪补充:没有不尊敬的意思,反而非常感激分享)。重点如果放在未来还没发生的影响,不如着眼当下,当下才是确定的。比如我好累没法陪坡坡跳绳,便不去想会影响她追高,而去想我能得到短暂的喘息和休息,这心情可不就好多了。原来自洽是这样的呀!

自我成长

如果真要说一个两全其美的法子,那么还是那句老话——做好自己。关注自己,便不会过分关注孩子,从而挑三拣四,影响亲子关系不说,还破坏自己的心情;提升自己,以身作则,便能抓大放小,上梁板正下梁便也歪不到哪儿去。

昨天跟豆哥聊天,说到我有点点领悟到什么事能使我放松,且知其所以然。刷反转快的短剧、购物、看短视频,这些事都能在短时间内提供大量的新鲜感。没劲的时候可不就得寻求新鲜刺激么!(在感情里的话就会走岔路,万万不可啊!)而如果我采用更“慢”的方式休息,比如冥想(发呆)、听音乐、写博客、画画、看闲书,甚至看电影和电视剧,我都会感觉刺激不够,因为太慢了。细究之下发现,我的脑子可能已经被“惯坏了”,类似上瘾机制,是另一层面的“由奢入俭难”。想到这儿突然理解影视作品里那些惨无人道的富人们,要玩穷人的命才觉有趣,可怕又可悲。

为了改变现状,我决定从不惧怕做花时间的事情做起。写一篇博文就是有可能要花上好几天,不是我动作慢没效率,我需要接受现实,而不是逼迫自己。娃习得新技能就是要经历很多次的失败,耗费大量的时间,我要做的仍旧是接受这件事,并且尽可能地提供帮助。

意义

踏踏实实地生活吧,人生的意义其实只在自己心中。

  •  

C++中的 const和constexpr 比较


C++ constconstexpr:真正的区别是什么?

一眼看都是定义常量。

为什么这很重要

现代 C++ 鼓励编写不可变、高效且表达力强的代码。两个关键字—constconstexpr—是这一理念的核心。它们看起来很相似,但理解它们的不同语义,对于正确利用编译期与运行期行为至关重要。

高层次对比

特性 const constexpr
编译期常量? 可能 一定(否则编译报错)
支持运行期? 支持 支持(在需要时运行期求值)
用于数组/模板参数? 仅当确实是常量 保证可用
允许函数? 仅限成员函数限定符 支持完整函数且可在编译期求值

1  声明不可变数据

const:构造后不可变

const int runtimeConst = std::rand(); // 是 const,但不是编译期常量

当你只想禁止变量被修改,而不在意值是在编译期还是运行期确定的,const 就足够了。

constexpr:必须在编译期已知

constexpr int arraySize = 10;
int arr[arraySize];           // 始终合法

如果值需要参与要求编译期常量的上下文(如数组大小、模板参数、switch 标签等),你必须使用 constexpr

2  函数与方法

const 成员函数

class Widget {
public:
    int value() const {/*…*/} // 保证不会修改 this 对象
};

它保护对象状态,但不提供编译期求值能力。

constexpr 函数

constexpr int square(int n) { return n * n; }

static_assert(square(4) == 16, "编译期计算");

constexpr 函数在参数是常量表达式时可以在编译期执行,也可以在运行期使用。

3  常见陷阱

// 1. 编译通过:runtimeConst 只是 const
const int runtimeConst = std::rand();

// 2. 编译失败:std::rand() 不是 constexpr
constexpr int fails = std::rand();

记住:每个 constexpr 变量本质上都是 const,但并非所有 const 都是常量表达式。

4  如何选择

  • 需要强制编译期计算?使用 constexpr
  • 需要不可变性但值可能在运行期确定?使用 const
  • 不确定时偏向使用 constexpr,编译器会提示你是否不合法

5  总结片段

constexpr int ctVal = 42; // 编译期常量
const int rtVal = std::rand(); // 运行期确定,但不可变

正确地选择 constconstexpr 能让你的 C++ 代码更安全、更高效、更具表达力。默认使用 constexpr,当且仅当你明确知道值只能在运行期获取时才使用 const

C/C++编程

英文:const vs constexpr in C++

本文一共 525 个汉字, 你数一下对不对.
C++中的 const和constexpr 比较. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c C++中的 const和constexpr 比较 C++ C++ 学习笔记 程序设计 计算机
The post C++中的 const和constexpr 比较 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 简易教程: C++的智能指针 C++ 智能指针教程 C++ 中的智能指针提供了自动且安全的内存管理。它们通过 RAII(资源获取即初始化)机制,帮助开发者避免内存泄漏和悬空指针的问题,确保对象在生命周期结束时被正确释放。 本教程将介绍 C++ 中三种主要的智能指针: std::unique_ptr:独占式所有权 std::shared_ptr:共享式所有权 std::weak_ptr:非拥有式弱引用 1. std::unique_ptr unique_ptr 拥有独占所有权。一个资源只能被一个...
  2. C++ Ranges 教程 C++20 引入了 ranges(范围),这是一个强大且优雅的抽象,用于处理序列(如数组、vector 等)。相比传统的迭代器或旧式循环,Ranges 提高了代码的可读性、可组合性和性能。 什么是 Range? 在 C++20 中,range(范围) 是一种抽象,代表一个可以迭代的元素序列。它与 views(视图) 和 actions(操作) 如过滤、转换等配合使用非常自然。...
  3. 被动收入之: 微博红包 今年开始重新经营我的微博帐号 drlai 收到两笔微信红包,应该是来自于官方的支持,150元(成功提现到支付宝)。虽然这不能持久,也没多少,但毕竟实现了零的突破,意义重大。 如果流量上来,内容创作者可能会接受到比较多的赞赏,这也是一个比较简单的变现方法。这也能作为一种被动收入,不过如果不是头部网红,可能杯水车薪,但如果你有好几个类似这样的,也能积少成多! 在用户中心,微博用户可以每天登陆手机微博APP打卡,获取点数和少量的红包钱(几分钱),积少成多! 微博做些小任务可获得积分和几分钱。聊胜于无。 微博的主要盈利模式 微博的主要盈利模式主要包括以下几个方面: 广告收入:微博的大部分收入来源于广告,尤其是品牌广告和效果广告。广告形式包括信息流广告(类似于推文广告)、热门话题广告、开屏广告和视频广告。品牌和企业可以利用微博庞大的用户群和社交互动来提升曝光率、推广品牌和产品。 会员服务:微博提供的VIP会员服务,用户可以支付订阅费用来享受更多的特权,比如个性化的主题、特有的表情包、私密权限设置等。这些会员服务主要面向个人用户,提升其社交体验。 直播和打赏:微博提供直播平台,用户可以通过购买虚拟礼物来支持主播,微博会从这些打赏中抽取一定比例的分成。此外,微博与内容创作者分成,通过内容付费、知识付费等形式变现。 增值服务:针对企业和大V(拥有大量粉丝的用户),微博还提供增值服务,如账号认证、粉丝数据分析、精准推送、推广和营销工具等。这些服务帮助企业提升营销效果,同时也增加了微博的收入来源。 电商和导流:微博上有大量的电商导流业务,尤其是和明星、网红的合作推广。微博用户在浏览社交内容时,可以直接跳转到商品购买链接,微博通过这种方式赚取导流佣金。 游戏联运:微博也会与一些游戏公司合作推出联合运营的游戏,微博负责推广和流量引入,用户充值或付费时,微博可以获得一部分的分成。 这些模式相结合,使得微博能够在广告市场、内容创作和电商等多个领域获利。...
  4. 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) 程序员的未来?Vibe Coding + AI 一起上! 借助 AI 快速开源了三个小工具 最近,我利用 ChatGPT-4o 和 o4-mini 快速开发并开源了三个小工具。起因其实很简单——每次想转换 YAML/JSON 或进行...
  5. 换了个奥迪Q5大灯花了我1000英镑 我那辆奥迪Q5 SUV今年年检没通过,原因是左前车灯坏了,需要更换。车厂告诉我,光是订购零件就要700多英镑,加上人工费,总费用得1000英镑。但没办法,如果不修,车辆年检(MOT)就过不了,车也不能上路。 MOT是英国的机动车强制性安全检测(Ministry of Transport Test)的简称。 近侧前位置灯不工作 drl/位置灯集成(4.2.1(a)(ii)) Nearside Front Position lamp not working drl/position...
  6. 你给SteemIt中文微信群拖后腿了么? 这年头不缺算法, 就缺数据. 这两天花了很多时间在整API上, 整完之后自己用了一下还觉得真是挺方便的. 今天就突然想看一看自己是否给大家拖后腿了, 于是调用每日中文区微信群排行榜单的API, 刷刷拿着 NodeJs 练手: 1 2 3 4 5 6...
  7. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  8. 剑桥网红餐厅 The Ivy Cambridge Brasserie 上周刚过40岁生日,媳妇带我去剑桥的一家网红餐厅——The Ivy Cambridge Brasserie。这家餐厅是朋友推荐的,和那家Trinity一样很有名,可惜我们在剑桥待了近10年才知道。 The Ivy Cambridge Brasserie 是剑桥市中心一家备受欢迎的网红餐厅,位于历史悠久的 Trinity Street。餐厅设计时尚典雅,融合了现代与经典元素,为食客提供了一个舒适而奢华的用餐环境。这里的菜单丰富多样,覆盖全天用餐,从早餐到晚餐以及下午茶,提供英式经典美食如松露鸡肉派、英式早餐等,也有一些国际风味的菜肴。得天独厚的位置和独特的氛围使得 The Ivy Cambridge Brasserie...
  •  

C++ Ranges 教程


C++20 引入了 ranges(范围),这是一个强大且优雅的抽象,用于处理序列(如数组、vector 等)。相比传统的迭代器或旧式循环,Ranges 提高了代码的可读性、可组合性和性能

什么是 Range?

在 C++20 中,range(范围) 是一种抽象,代表一个可以迭代的元素序列。它与 views(视图)actions(操作) 如过滤、转换等配合使用非常自然。

传统循环 vs 基于 Range 的循环

#include <iostream>
#include <vector>

int main() {
    std::vector<int> v = {1, 2, 3, 4};

    // 旧式循环
    for (auto it = v.begin(); it != v.end(); ++it)
        std::cout << *it << ' ';

    // 基于范围的循环(C++11)
    for (auto x : v)
        std::cout << x << ' ';
}

Range Views(视图)

View 是惰性的、可组合的范围操作。除非需要,一般不会复制数据。

Filter 和 Transform 示例

#include <iostream>
#include <vector>
#include <ranges>

int main() {
    std::vector<int> v = {1, 2, 3, 4, 5, 6};

    auto even_doubled = v 
        | std::views::filter([](int n) { return n % 2 == 0; })
        | std::views::transform([](int n) { return n * 2; });

    for (int n : even_doubled)
        std::cout << n << ' ';  // 输出:4 8 12
}

常见的 Views

View 描述
std::views::filter 保留符合条件的元素
std::views::transform 对每个元素应用函数
std::views::take(n) 获取前 n 个元素
std::views::drop(n) 跳过前 n 个元素
std::views::reverse 反转范围
std::views::iota(a, b) 生成从 a 到 b-1 的范围

使用 iota 和 reverse

#include <ranges>
#include <iostream>

int main() {
    for (int i : std::views::iota(1, 6) | std::views::reverse)
        std::cout << i << ' '; // 输出:5 4 3 2 1
}

组合视图操作

你可以使用管道符 | 流式地组合多个视图操作。

#include <vector>
#include <ranges>
#include <iostream>

int main() {
    std::vector<int> v = {5, 10, 15, 20};

    auto result = v 
        | std::views::transform([](int x) { return x + 1; })
        | std::views::filter([](int x) { return x % 2 == 0; });

    for (int x : result)
        std::cout << x << ' '; // 输出:6 16
}

实用示例

1. 过滤偶数

#include <iostream>
#include <vector>
#include <ranges>

int main() {
    std::vector<int> numbers = {1, 2, 3, 4, 5, 6};

    auto evens = numbers 
        | std::views::filter([](int n) { return n % 2 == 0; });

    for (int n : evens)
        std::cout << n << ' ';  // 输出:2 4 6
}

2. 将奇数翻倍

int main() {
    std::vector<int> numbers = {1, 2, 3, 4, 5};

    auto doubled_odds = numbers
        | std::views::filter([](int n) { return n % 2 != 0; })
        | std::views::transform([](int n) { return n * 2; });

    for (int n : doubled_odds)
        std::cout << n << ' ';  // 输出:2 6 10
}

3. 反转序列

int main() {
    std::vector<int> nums = {10, 20, 30};

    auto reversed = nums | std::views::reverse;

    for (int n : reversed)
        std::cout << n << ' ';  // 输出:30 20 10
}

4. 生成数值序列

#include <ranges>

int main() {
    for (int i : std::views::iota(1, 6))
        std::cout << i << ' ';  // 输出:1 2 3 4 5
}

5. 获取前 N 个元素

int main() {
    auto infinite = std::views::iota(1); // 无限序列
    auto first5 = infinite | std::views::take(5);

    for (int i : first5)
        std::cout << i << ' ';  // 输出:1 2 3 4 5
}

6. 计算前 5 个奇数的平方和

#include <numeric>

int main() {
    auto odd_squares = std::views::iota(1)
        | std::views::filter([](int x) { return x % 2 == 1; })
        | std::views::transform([](int x) { return x * x; })
        | std::views::take(5);

    int sum = std::accumulate(odd_squares.begin(), odd_squares.end(), 0);
    std::cout << "和 = " << sum << '\n'; // 输出:和 = 165
}

7. 判断是否所有元素都为正数

#include <ranges>
#include <algorithm>
#include <vector>
#include <iostream>

int main() {
    std::vector<int> nums = {1, 2, 3};

    bool all_positive = std::ranges::all_of(nums, [](int n) { return n > 0; });

    std::cout << std::boolalpha << all_positive << '\n'; // 输出:true
}

8. 自定义管道函数

auto pipeline = [](const std::vector<int>& v) {
    return v 
        | std::views::filter([](int x) { return x % 2 == 0; })
        | std::views::transform([](int x) { return x * 10; });
};

int main() {
    std::vector<int> nums = {1, 2, 3, 4};

    for (int x : pipeline(nums))
        std::cout << x << ' '; // 输出:20 40
}

性能提示

  • Ranges 是惰性的:仅在需要时才处理元素。
  • 避免不必要的分配与复制。
  • 适合处理大型数据或函数管道。

何时不适合使用 Ranges

  • 在对性能极度敏感的内循环中,STL 抽象可能较慢。
  • 当项目尚未迁移到 C++20。

参考资料

英文:Tutorial on C++ Ranges

本文一共 415 个汉字, 你数一下对不对.
C++ Ranges 教程. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c C++ Ranges 教程 C++ C++ 学习笔记 程序设计 编程 计算机
The post C++ Ranges 教程 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 简易教程: C++的智能指针 C++ 智能指针教程 C++ 中的智能指针提供了自动且安全的内存管理。它们通过 RAII(资源获取即初始化)机制,帮助开发者避免内存泄漏和悬空指针的问题,确保对象在生命周期结束时被正确释放。 本教程将介绍 C++ 中三种主要的智能指针: std::unique_ptr:独占式所有权 std::shared_ptr:共享式所有权 std::weak_ptr:非拥有式弱引用 1. std::unique_ptr unique_ptr 拥有独占所有权。一个资源只能被一个...
  2. 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) 程序员的未来?Vibe Coding + AI 一起上! 借助 AI 快速开源了三个小工具 最近,我利用 ChatGPT-4o 和 o4-mini 快速开发并开源了三个小工具。起因其实很简单——每次想转换 YAML/JSON 或进行...
  3. 被动收入之: 微博红包 今年开始重新经营我的微博帐号 drlai 收到两笔微信红包,应该是来自于官方的支持,150元(成功提现到支付宝)。虽然这不能持久,也没多少,但毕竟实现了零的突破,意义重大。 如果流量上来,内容创作者可能会接受到比较多的赞赏,这也是一个比较简单的变现方法。这也能作为一种被动收入,不过如果不是头部网红,可能杯水车薪,但如果你有好几个类似这样的,也能积少成多! 在用户中心,微博用户可以每天登陆手机微博APP打卡,获取点数和少量的红包钱(几分钱),积少成多! 微博做些小任务可获得积分和几分钱。聊胜于无。 微博的主要盈利模式 微博的主要盈利模式主要包括以下几个方面: 广告收入:微博的大部分收入来源于广告,尤其是品牌广告和效果广告。广告形式包括信息流广告(类似于推文广告)、热门话题广告、开屏广告和视频广告。品牌和企业可以利用微博庞大的用户群和社交互动来提升曝光率、推广品牌和产品。 会员服务:微博提供的VIP会员服务,用户可以支付订阅费用来享受更多的特权,比如个性化的主题、特有的表情包、私密权限设置等。这些会员服务主要面向个人用户,提升其社交体验。 直播和打赏:微博提供直播平台,用户可以通过购买虚拟礼物来支持主播,微博会从这些打赏中抽取一定比例的分成。此外,微博与内容创作者分成,通过内容付费、知识付费等形式变现。 增值服务:针对企业和大V(拥有大量粉丝的用户),微博还提供增值服务,如账号认证、粉丝数据分析、精准推送、推广和营销工具等。这些服务帮助企业提升营销效果,同时也增加了微博的收入来源。 电商和导流:微博上有大量的电商导流业务,尤其是和明星、网红的合作推广。微博用户在浏览社交内容时,可以直接跳转到商品购买链接,微博通过这种方式赚取导流佣金。 游戏联运:微博也会与一些游戏公司合作推出联合运营的游戏,微博负责推广和流量引入,用户充值或付费时,微博可以获得一部分的分成。 这些模式相结合,使得微博能够在广告市场、内容创作和电商等多个领域获利。...
  4. 换了个奥迪Q5大灯花了我1000英镑 我那辆奥迪Q5 SUV今年年检没通过,原因是左前车灯坏了,需要更换。车厂告诉我,光是订购零件就要700多英镑,加上人工费,总费用得1000英镑。但没办法,如果不修,车辆年检(MOT)就过不了,车也不能上路。 MOT是英国的机动车强制性安全检测(Ministry of Transport Test)的简称。 近侧前位置灯不工作 drl/位置灯集成(4.2.1(a)(ii)) Nearside Front Position lamp not working drl/position...
  5. 试用 Linkedin (领英) 高级帐号 (Premium) Linkedin (领英) 算是比较靠谱的职业社交网站, 在上面有很多猎头, 很多知名公司的HR 无时无刻在招人. 特别领英在被微软收购之后, 名气就变得大了许多. 领英是免费使用的, 但也有付费用户, 有给猎头的, 也有给想找工作的. 价格并不便宜, 对于想找工作的 Job...
  6. 步步高学生电脑上 Basic 编程语言 peek 用法示例 步步高学生电脑 是8位FC机的经典之作.它上面的BASIC有三个版本 1.0, 2.0 和 2.1 2.1 版本有个在线帮助,实际上是 help.cmd 1.0 是用 Esc 键退回到 DOS 的,...
  7. 《Steem 指南》之 justyy 在线工具与 API 系列 – Discord 机器人 Discord 聊天频道 Discord 原本是给游戏设计的, 但由于其功能多, 接口开放能力强, 使用的用户越来越多. 我们CN区也有一个Discord 频道, 加入地址为: https://discord.gg/7ctT3Xt 在网页里就可以加入 cnsteem 的大家庭了, 当然也可以下载手机APP或者桌面程序来加入...
  8. 你给SteemIt中文微信群拖后腿了么? 这年头不缺算法, 就缺数据. 这两天花了很多时间在整API上, 整完之后自己用了一下还觉得真是挺方便的. 今天就突然想看一看自己是否给大家拖后腿了, 于是调用每日中文区微信群排行榜单的API, 刷刷拿着 NodeJs 练手: 1 2 3 4 5 6...
  •  

日本办卡指南 2.0:初来乍到,日本信用卡推荐

✇Simon
作者Simon

写在前面

版本更新于2025/5/14,完善了说法不准确之处,并添加了学生办卡的一些新选择以及虚拟卡的评测。

本文作者移居东京五年,根据自身经验撰写而成,欢迎在Twitter上关注他:https://twitter.com/SimonJP404

同时也欢迎各位移步Telegram群交流:https://t.me/JapanChats

本文撰写时间为2023/4/22,更新于2025/5/14,共计5348个字,大约需要阅读时间在12分钟。本文起初只针对初来日本的人群,但随着本人玩卡的经历提升,目前也补充了一些高端卡。文章具有时效性,如果和实际情况有出入,还请谅解。

基础信用卡篇(国内卡)

基础信用卡存在的必要性:

初来日本,无外乎地址登录、办理手机卡、银行卡。地址登录需要一个日本手机号,而申请一个日本手机号则需要一张信用卡,中国/日本的信用卡均可。

如果你没有任何信用卡,自然也有其它的办法解决(比如先填写朋友的日后再修改);但如果能携带一张国内的外标信用卡入境,就会给自己节省不少时间。

国内办什么卡:

一般来说,JCB/VISA/MASTER均可。如果考虑到卡片的权益,推荐中国银行的JCB招财猫,理由是该卡提供人民币/日元双币结算,日本使用时可以避免由于币种兑换而产生的汇兑风险。

JCB金卡/白金卡用户可以享用JCB在日本各主要机场为您提供的专用贵宾休息厅,成田/羽田/大阪/新千岁均有提供,环境不错,值得一试。

基础储蓄卡存在的必要性:

在储蓄卡上存好人民币,在日本ATM可按照当日银联汇率取现日元。如果你有此需求,不妨准备一张。

国内办什么卡:

国内几大银行的储蓄卡基本上境外取现均有手续费,但很多国内小型银行境外取现免收手续费,比如秦皇岛银行(免费)、兰州银行(每月前5笔免费)、桂林银行(每年前8笔免费, 超出每笔15元)。

具体可以参考该网站:https://www.kylc.com/bank/upatmcharge.html

四大银行也有一些每月首笔取现免费的卡片,比如莫奈万事达等,可以自行查询了解。

日本卡基础篇(储蓄卡/銀行口座)

关于开卡陪同翻译问题

ゆうちょ銀行由于是外国人必备的基础卡,因此门槛是最低的,基本都可以陪同翻译;其它银行根据工作人员的心情,有可能拒绝陪同翻译,但也可能同意。比如三井住友银行新宿店拒绝陪同翻译,要求只能本人办卡的情况下,你可以尝试前往涉谷的三井住友再次尝试。

ゆうちょ銀行 デビットカード

image.png

每个刚来日本的人必办的储蓄卡,无任何门槛,理论上随到随办。你也可以选择网上申请,没有存折,需要等待一周左右。但请注意,在网上申请是存在拒绝办理的情况的,如果遇到可以直接前往线下网点。

目前ゆうちょ銀行发行的卡片为VISAデビットカード,即带有VISA功能的储蓄卡,多数场合可替代信用卡进行消费。

准备工作

日本电话号码、在留卡、学生证/工作证明、护照、印章

官方参考:https://www.jp-bank.japanpost.jp/tetuzuki/honnin/tzk_hn_kaisetu.html

注意事项

  1. 注意工作时间:周一至周五:9:00~15:00(一般情况)
  2. 请到学校/公司/住址的附近网点进行办理,其它地点可能因“不在本地区范围”被拒绝
  3. 在日本生活不满半年的,办理下来的卡会标注“非居住者”,根据ゆうちょ銀行最新政策,非居住者在转账时需要额外付7500日元手续费
  4. 如果有工作,或者介意手续费,可在办理时说明自己工作/打工,根据外汇管理规定的解释当中,如果你有工作,也可能被认定为居住者,这样一般情况下会取消手续费
  5. 请不要使用ゆうちょ銀行进行海外送金,因为只接受美元入账,所以手续费高昂。

三井住友銀行 デビットカード

image.png

由于ゆうちょ銀行海外送金高额的手续费,以及体验感极差的服务,所以有必要申请一张ゆうちょ銀行以外的储蓄卡。

三井住友发行的储蓄卡也为VISAデビットカード,可在手机APP上申请,亦或线下办理。办理过程同时可申请信用卡,但下卡几率不大。

此外,三井住友最新推出了Olive三合一卡,集积分卡、信用卡、储蓄卡为一体,在711便利店等指定商户消费积分倍率更高,推荐有条件的朋友们申请。

准备工作

日本电话号码、在留卡、学生证/工作证明/内定通知书/入学许可、护照、印章

注意事项

  1. 实际上三井住友銀行没有“在日未满半年不准开卡”的相关规定,如果工作人员以此为理由拒绝你,多数情况是日语沟通较为困难情况下的说辞
  2. 为了避免日语尴尬的局面,你可以先尝试在线上申请,如果没有通过在考虑线下申请
  3. 线下办理请熟记相关词汇:預金口座、身分証明書、在留カード、パスポート、鑑、通帳、暗証番号、キャッシュカード、郵送等词汇

三菱UFJ銀行 デビットカード

image.png

同样是大手银行,建议初到日本选择三菱或者三井之一办理一张储蓄卡。办理过程同时可申请信用卡,但如果你是语言学校的学生,下卡几率不大。(不过都是玄学)

准备工作

日本电话号码、在留卡、学生证/工作证明、护照、印章(可能不需要)

注意事项

  1. UFJ的储蓄卡申请对于外国人只能线下申请,网上申请仅限日本国籍。
  2. 办理时请提前预约附近的银行,原因和ゆうちょ銀行同理。
  3. 线下开通流程中,会要求客户在テレビ窓口里使用电脑和客服远程对话,确认用户信息和开户。

みずほ銀行

三井住友、三菱之后的第三大银行。该银行以“系统瘫痪”而享誉全球,拥有此卡后,你可能经常享受ATM故障、入金延迟、等待ATM上班等高级服务。

该银行口座也提供网上开通渠道,但和有日本国籍的人士有所区别,需要邮送材料(自己打印也可),并且需要开具住民票。因此如果能选择的话,请先优先考虑三井住友、三菱的储蓄卡。

*以上三大银行(三井住友、三菱、みずほ銀行)开户时,请准备回答“已经有了ゆうちょ账户为什么还要开新口座”的问题答案,该问题在日语不好的情况下出现频率异常高。回答的核心思路是“没了你家的卡我的生活就会受到极大影响”。

WISE デビットカード

image.png

可以在世界各地使用的储蓄卡,开通后可拥有各国银行口座。还可以发行无限的虚拟银行卡,在网购的时候提高安全性。

什么人建议办

  1. 如果平时有经常在美国、欧洲等产品网站上购买/参与众筹的需求,那么强烈推荐办一张。
  2. 在日本工作的人,如果有将日元兑换成人民币需求可以办理,可以直接打到指定支付宝账户。
  3. 如果你经常进行海外旅游亦或者货币之间的兑换,可以办理。

注意事项

  1. 日本发行的卡片为万事达,Wise日本截止 2025/5 仍不支持绑定Apple Pay。
  2. 实体卡片需要付费,不付费也可以使用虚拟卡片消费。
  3. 该卡片的余额充值需要绑定一张日本的储蓄卡。

同样类型的还有Revolut卡,可利用此卡充值来完成一些信用卡的刷卡活动,和Wise大同小异不再赘述。

邀请链接

通过邀请,免除75000日元手续费

Revolut デビットカード

image.png

和Wise一样,可以在世界各地使用的储蓄卡,但在日本的版本有所阉割,只提供日元的本地账号,其他货币只能走 SWIFT 入金。同样可以发行虚拟银行卡,在 2025 年还支持绑定了 Apple Pay,在功能上更进一步。

什么人建议办

  1. 如果平时有经常在美国、欧洲等产品网站上购买/参与众筹的需求,那么强烈推荐办一张。
  2. 在日本工作的人,如果有将日元兑换成人民币需求可以办理,可以直接打到指定支付宝账户。
  3. 如果你经常进行海外旅游亦或者货币之间的兑换,可以办理。

注意事项

  1. 日本发行的卡片为Visa,目前可以绑定Apple Pay。
  2. 实体卡的基础版本无需付费,但可以加钱升级金属卡片,为月费订阅制
  3. 该卡片的余额充值需要绑定一张日本的储蓄卡。

邀请链接

通过邀请,免除75000日元手续费

NEOBANK 住信SBIネット銀行

image.png

如果来日后申请了个人番号卡,可以考虑网络银行口座的开设。SBI银行可以网上开户,并且最快当天即可批准。

SBI的优势是每月5次免费的便利店取款/转账到他行的机会,并且根据你的账户等级的提升,提供更多的免费次数。此外,该卡可以绑定Apple Pay进行消费,并且可以无卡存款。

请注意,新生SBI和住信SBI是两个不同的银行,都可以尝试开户。

JAL Pay以及ANA Pay

image.png

只有虚拟版本的预付卡,发行公司为日本的两大航空公司,适合常乘坐JAL或者ANA、希望积攒里程的用户,可以绑定 Apple Pay。支持多种充值方式:信用卡、Apple Pay、银行储蓄卡、里程充值等。

AU銀行

该银行由KDDI和三菱UFJ共同出资建立,因此与三菱银行无缝连接,转账免费。也可以通过网上直接申请,申请时仅需提供運転免許証・個人番号カード・在留カード中的一个即可。

楽天銀行、PayPay銀行(旧ジャパンネット銀行)

即使生活居住半年后也很难申请的口座,相对来说这两家的信用卡比较好申请。

日本卡进阶篇(信用卡)

网传的一些说法

  1. 申请一张信用卡后如果被拒,不要连续申请,连续申请也会被拒 ×

以网上的多人经验和自身经验来看,如果你申请三井的信用卡被拒,那么连续申请三井的其它信用卡几乎一定被拒;但是被拒后申请其它银行/类型的信用卡,仍然可以审核通过。

  1. 申请失败后半年后再尝试申请 √

同一类型的卡被拒后请半年以上再尝试申请,连续申请同类型卡片容易影响信誉度。

JCB カード W

image.png

クレジットカード 人気ランキング 第三位

个人最推荐的信用卡,没有之一。因为目前看来这是最容易下卡的信用卡,即便入境第一天也可下卡。

由JCB直接发行的信用卡,终身免年费,星巴克、亚马逊等指定店铺消费,积分最高20倍。刷卡后有即时通知(很多卡没有即时通知,消费后过几天才显示)。最重要的是,JCB カード W作为几乎最容易下卡的信用卡,可以帮助你在日本社会建立初步的信用记录。

如果你是学生,请直接在申请时填写说收入为0,卡片固定额度为10万日元。

邀请链接

通过邀请链接注册,你我各得1500日元返现。

JAL 学生信用卡

image.png

推荐在日留学生都办一张JAL的学生信用卡,大学/大学院/专门学生均可下卡,语言学校不可🙅。

该卡由UFJ三菱发行,对留学生超级友好,下卡即送2000里程,每年第一次乘机再送1000里程,毕业后还送2000里程,TOEFL 等英语考试通过还送500里程,下卡后消费5万再送1000里程(限时活动),平时消费也可积攒航空里程。

使用本卡里程兑换机票的所需要的里程为通常的5折:比如東京ー福岡,单程机票需要8000里程,持有本卡仅需4000里程,也就是开卡就可以免费兑换一张東京ー福岡的机票。

👉 我的JAL邀请链接

楽天カード

image.png

クレジットカード 人気ランキング 第七位

相对于学生比较友好的信用卡,有专门的学生卡。无年费,基础返点1%,开卡送积分(活动时最高送1万积分),乐天购物两倍积分。

不过乐天的信用卡盗刷情况似乎比较严重(整个日本的信用卡都存在此现象),并且没有消费的即时通知。初期额度一般也是10万日元。

通过邀请链接注册积分增多:https://r10.to/hPPr7J?openExternalBrowser=1

メルカード

image.png

日本“闲鱼”煤炉发行的信用卡,最高额度50万。该卡对于刚来日本的人相对友好,每月都有机会调整额度,在煤炉购物有更倍率高积分。

该卡有永久1%的积分返现,积分可以抵消欠款,还款当月还可以提前还款。卡面也是无信息设计,更加安全。消费即时通知,邮件加APP推送。

邀请码

使用 NUZUMR 注册,你我各得500积分,活动时各得注册1500积分。

エポスカード(EPOS)

image.png

クレジットカード 人気ランキング 第四位

24小时即时审查,下卡非常迅速。

EPOS的特点是卡面有很多种选择,并且非常多的动漫卡面。同时,此卡也是最容易升级金卡的信用卡,一年消费50万以上后就可收到金卡邀请,且无年费。此外该卡是即时通知(需要开启),消费后邮件和APP会立即推送消费信息。

EPOS的积分可兑换为亚马逊礼品卡等,积分使用范围上还是非常广泛的。

邀请链接(紹介番号23041977605)

通过邀请链接注册,你得2500积分

PayPayカード

image.png

该卡审核比较迷,一方面有刚来日本就下卡的例子,另一方面也有在日本稳定工作多年被秒拒的例子。

该卡的特点卡面设计比较优秀(但实际卡片质量很差),无卡号和CVV的设计,并且可以和Paypay联动使用,在Yahoo!ショッピング购物时使用增加积分返现倍率,在使用Paypay时无需充值即可直接使用。该卡即时通知好像只有在大额消费时有效,小额不通知。

如果你对该信用卡比较感兴趣,可以尝试申请一次,填写资料比较简答,也无需提供在留卡信息。最快五分钟审核下卡,下卡后积分即刻到账。

Amazonカード

image.png

此卡对学生党友好,很多入境1个月的学生顺利下卡。请注意,学生申请时收入请填写0。

发卡行为三井住友,开卡礼送5000-8000积分,加入亚马逊会员后,在亚马逊购物返点数增加,免年费。

三井住友信用卡

他家的信用卡常年占据信用卡排行榜前三的位置,最新推出的Olive卡片更是受到日本人的追捧。但是对于刚入境的朋友来说,不一定能下卡。因此更推荐各位朋友半年以后再尝试申请,所以在此不再赘述。

SAISON 美国运通セゾン・アメリカン・エキスプレス・カード

image.png

使用QUICPAY固定返现2%,积分永久保留,首年无年费,消费一次下一年免年费。

比较好下卡,需要美国运通的朋友可以尝试申请。

邀请链接

通过邀请链接注册,得8000日元亚马逊礼品卡

日本卡高阶篇(信用卡)

如果你有此需求的话,应该已经在日本长住,并且有稳定的收入来源了。

你可以参考日本信用卡网站的排名,随心所欲的申请自己想要的信用卡了。

クレジットカード 総合ランキング

https://life.oricon.co.jp/rank-credit-card/

SAISON 美国运通 セゾンプラチナ・アメリカン・エキスプレス®︎・カード

image.png

SAISON家的白金卡,是我目前在使用的高端卡之一。有硬性年费,每年 22000 日元,从 25 年 6 月开始涨价。优点是日本日常积分 1.5 倍,海外消费积分 2 倍,并且可以永久储存(他家普卡也是永久积分),JAL积分最大 1.125 倍。

附带一张满血的PP卡,但目前没有电子版本,将在 6 月会费涨价后支持该功能。24時間/年中無休的客户支持,可以帮你订各种票或者房间。海外旅行最高保险 1 亿日元,在国际飞行的时候,可以免费邮寄行李到家。

日本股票推荐

image.png

顺带一提,如果你在办理完日本信用卡后,也开始对投资日股或美股感兴趣,不妨试试 moomoo(富途牛牛海外版)。它是目前日本市场上,目前为止最好用的APP,同时也是对中文用户最有好的APP。

他的主要优势有:

  1. 开户无需邮寄书类资料,全程网上办理;24小时中日文客服
  2. app优化超丝滑,吊打日本厂商,界面支持中文
  3. 业界最低手续费,新nisa口座美股手续费0元,综合口座是他社1/6
  4. 支持美股24小时取引,支持自动下单
  5. 引入AI分析,支持股票预测等功能;提供定期华人股票讲座

moomoo支持多市场交易,界面简单(吊打SBI和乐天证券),关键是开户门槛低、支持中文服务,对于刚入门的投资者也非常友好。在日本生活的同时合理配置资产,也是一种不错的理财方式。

通过我的邀请链接你能获得

1.入金1万日元(无需买股保持30天),必得美国股票一株 2.入金30万元(无需买股保持30天),必得美国股票四株 3.美股手续费2个月免费 4.500日元现金奖励

美国股票为抽选:特斯拉,苹果,英伟达,meta等。

邀请链接

通过邀请链接注册,必得美国股票以及现金奖励

写在最后

信用卡的审核制度各家不同,标准也众说纷纭。笔者在闲暇之余撰写此文,只希望对刚来日本的朋友能所有帮助。如果你由于来日不久,无法下卡也无需气馁,可以暂时使用国内的信用卡、亦或者是BybitInfini 等发行的U卡代替消费。

本文内置了信用卡的邀请链接,如果在申请信用卡的时候如若能使用我的邀请链接,笔者自当感激不尽。

更新时间:2025年5月14日


Support on Patreon | 爱发电上赞助

  •  

私有化部署Nexus3镜像源

昨天升级 Nexus3 翻车了,准备基于 PG 重新搭建 Nexus3 源,并移除一些不用的软件源, 新版软件源支持如下

环境要求

  • 机器配置至少 2C4G
  • 网络要好,推荐境外机器部署
  • 大硬盘可选(不代理 py 等还好)

部署

nexus 服务

使用 compose 或者 k8s,原理差不多,我的环境使用 k3s。

  • docker-compose.yaml
services:
  nexus3:
    image: sonatype/nexus3:latest
    container_name: nexus3
    restart: always
    ports:
      - "8081:8081"
    environment:
      - INSTALL4J_ADD_VM_PARAMS=-Xms2703m -Xmx4G -XX:MaxDirectMemorySize=2703m -Djava.util.prefs.userRoot=/nexus-data/javaprefs
      - NEXUS_DATASTORE_ENABLED=true
      - NEXUS_DATASTORE_NEXUS_JDBCURL=jdbc:postgresql://postgres:5432/nexus3
      - NEXUS_DATASTORE_NEXUS_USERNAME=oup44Fai4ta
      - NEXUS_DATASTORE_NEXUS_PASSWORD=ienah9eiquah7GeiMaengeitie5aeq66
    volumes:
      - /data/nexus/nexusdata:/nexus-data
    depends_on:
      - postgres

  postgres:
    image: bitnami/postgresql:17
    container_name: postgres
    environment:
      - POSTGRESQL_DATABASE=nexus3
      - POSTGRESQL_USERNAME=oup44Fai4ta
      - POSTGRESQL_PASSWORD=ienah9eiquah7GeiMaengeitie5aeq66
    volumes:
      - /data/nexus/postgres:/bitnami/postgresql
    restart: always

在启动前,先创建好目录,并给予权限

mkdir -p /data/nexus/postgres /data/nexus/nexusdata
chmod 777 /data/nexus -R

然后启动, 访问 ip:8081 即可

docker compose up -d

配置 caddy

mirrors.china.12306.work {
	import LOG "/var/log/caddy/mirrors.log"
	@rootOrIndex {
		path /
		path /index.html
		path /mirror.css
		path /.help*
	}

	handle @rootOrIndex {
		file_server {
			hide .git
			root /etc/caddy/pages/mirrors
		}
	}
	reverse_proxy http://100.90.80.3:8081
}

样式我从网易镜像源借鉴来的

目前支持的软件

本文档由 ysicing 收集整理, 希望能对国内开源软件用户有所帮助.

仅列出部分核心软件包:

  • tailscale
  • caddy
  • docker-ce
  • postgresql
  • trivy

为什么没有我用的软件包?因为我暂时用不上, 有好的想法可以联系我.


  •  

Nexus3 容器部署3.70.x升级实践-非成功案例

docker 从 3.70.x 及以下版本升级 3.71.x 及以上版本出现旧数据库不支持错误

官方也很细心给了一份升级文档 upgrading-to-nexus-repository-3-71-0-and-beyond

由于我使用的也是官方镜像,社区也有人给出了解决方案 sonatype/nexus-public#51

友情提示,操作前需要备份持久化数据,避免升级失败,建议先阅读文尾后再参考我的升级

创建 nexus 备份文件

  • 设置-系统-任务-创建任务

  • 搜索 Backup,选择它

  • 创建一下手动触发的任务,备份路径 /nexus-data/backup 就行

  • 创建完任务后,点击 backup 任务运行

  • 触发备份

  • 等待备份完成

不放心,也可以进容器内,看一下:

19:56 ➜  ~ kubectl exec -it pods/nexus3-859bb76886-mc29s -n nat -- bash
bash-4.4$ ls
nexus  sonatype-work  start-nexus-repository-manager.sh
bash-4.4$ cd /nexus-data/
bash-4.4$ ls
backup	blobs  cache  db  elasticsearch  etc  generated-bundles  instances  javaprefs  kar  karaf.pid  keystores  lock	log  orient  port  restore-from-backup	tmp
bash-4.4$ cd backup/
bash-4.4$ ls
analytics-2025-05-16-11-56-22-3.70.1-02.bak  component-2025-05-16-11-56-22-3.70.1-02.bak  config-2025-05-16-11-56-22-3.70.1-02.bak  security-2025-05-16-11-56-22-3.70.1-02.bak
bash-4.4$ exit

示例是 k8s 方式,docker 部署也是类似。

数据迁移

查询对应 nexus-db-migrator 迁移工具

需要下载和你 Nexus 版本匹配的 nexus-db-migrator 工具, 最新版本下载 nexus-db-migrator, 目前最新版本是 3.70.4-02

大概格式如下:

https://download.sonatype.com/nexus/nxrm3-migrator/nexus-db-migrator-<version版本号>.jar

由于我的版本是 3.70.1-02, 选择下载

https://sonatype-download.global.ssl.fastly.net/repository/downloads-prod-group/nxrm3-migrator/nexus-db-migrator-3.70.1-03.jar

可能你对应的版本不存在,可以尝试改 patch 版本,实在不行你就先升级到 3.70.4 最新版本

再次提醒版本一定要匹配上

操作

进入容器内部操作,方便起见, 确保在 /nexus-data/backup 目录下

bash-4.4$ pwd
/nexus-data/backup

下载迁移工具,或者同步到容器内也行(网络不好的情况下)

curl -s -L -O https://sonatype-download.global.ssl.fastly.net/repository/downloads-prod-group/nxrm3-migrator/nexus-db-migrator-3.70.1-03.jar

停 nexus 服务

/opt/sonatype/nexus/bin/nexus stop

执行迁移操作,将数据迁移到 H2 数据库,根据数据量和配置灵活调整 -Xmx4G -Xms4G 值,这里条件有限默认 4G, 执行完成如下图

java -Xmx4G -Xms4G -XX:+UseG1GC -XX:MaxDirectMemorySize=28672M -jar nexus-db-migrator-3.70.1-03.jar --migration_type=h2

再次停 nexus 服务

bash-4.4$ /opt/sonatype/nexus/bin/nexus stop
Shutting down nexus
nexus is not running.

查看迁移的数据

bash-4.4$ ls -ahl nexus.mv.db
-rw-r--r-- 1 nexus nexus 320K May 16 12:19 nexus.mv.db

将迁移的数据文件复制到 db 文件夹中

cp nexus.mv.db /nexus-data/db

然后退出容器

销毁容器

  • compose 部署
docker compose down nexus3
  • k8s 部署副本改成 0
kubectl scale --replicas 0 deploy/nexus3 -n nat

编辑配置文件

为啥不在容器里编辑,啥工具都没有不方便,而且这个配置持久化了

  • 默认配置如下 old
root@nat3:/data/k8s/local/nexus3/etc# cat nexus.properties
# Jetty section
# application-port=8081
# application-host=0.0.0.0
# nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xml
# nexus-context-path=/${NEXUS_CONTEXT}

# Nexus section
# nexus-edition=nexus-pro-edition
# nexus-features=\
#  nexus-pro-feature

# nexus.hazelcast.discovery.isEnabled=true
  • 新增 nexus.datastore.enabled=true, 新配置如下
root@nat3:/data/k8s/local/nexus3/etc# cat nexus.properties
# Jetty section
# application-port=8081
# application-host=0.0.0.0
# nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xml
# nexus-context-path=/${NEXUS_CONTEXT}

# Nexus section
# nexus-edition=nexus-pro-edition
# nexus-features=\
#  nexus-pro-feature

# nexus.hazelcast.discovery.isEnabled=true
nexus.datastore.enabled=true

启动老服务,验证数据库切换成功

  • compose 部署
docker compose up -d
  • k8s 部署副本改成 0
kubectl scale --replicas 1 deploy/nexus3 -n nat

观察日志,搜索 H2

2025-05-16 12:33:15,378+0000 INFO  [FelixStartLevel] *SYSTEM org.sonatype.nexus.datastore.DataStoreConfigurationDefaultSource - Loaded 'nexus' data store configuration defaults (Embedded H2)
2025-05-16 12:33:15,710+0000 INFO  [FelixStartLevel] *SYSTEM com.zaxxer.hikari.HikariDataSource - nexus - Starting...
2025-05-16 12:33:16,018+0000 INFO  [FelixStartLevel] *SYSTEM com.zaxxer.hikari.HikariDataSource - nexus - Start completed.
2025-05-16 12:33:16,020+0000 INFO  [FelixStartLevel] *SYSTEM org.sonatype.nexus.datastore.mybatis.MyBatisDataStore - nexus - Loading MyBatis configuration from /opt/sonatype/nexus/etc/fabric/mybatis.xml
2025-05-16 12:33:16,147+0000 INFO  [FelixStartLevel] *SYSTEM org.sonatype.nexus.datastore.mybatis.MyBatisDataStore - nexus - MyBatis databaseId: H2
2025-05-16 12:33:16,346+0000 INFO  [FelixStartLevel] *SYSTEM org.sonatype.nexus.datastore.mybatis.MyBatisDataStore - nexus - Creating schema for UpgradeTaskDAO

升级版本失败

直接替换镜像升级就完成了,然后我的数据就没了 😂, 严格按照官方文档来的哇 😂

后续

  • 云缘生镜像站暂停营业几天
  • 虽然有备份数据,但是不想回滚了,重新部署,数据存储使用 PG 吧

  •  

读《山居杂记》

前段时间我和hillway看过《秋园》后,时不时给两个娃讲书中的一些故事,而且感觉文字浅显易懂,情节流畅,富有感染力,小熊仔也能阅读,于是又从图书馆把《秋园》借回来,结果两个娃都很感兴趣,一有时间就坐在书桌前看起来。最近我又读了一本关于上世纪女性的回忆录《山居杂记》。

《山居杂记》的作者高诵芬出生于1918年,是杭州城里名门望族的大家闺秀。自幼家世显赫、衣食无忧、仆人众多。十八岁时奉父母之命嫁给了门当户对的徐定戡,生育三子一女,从此在家相夫教子。苦难的秋园和她的子女,与高诵芬的生活境况相比,差距太悬殊了。而百年后我们这些普通老百姓,即使再累积几代人奋斗,也很难达到这种阶层水平。

这本书是“一个闺房小姐和家庭妇女眼中、历经半世纪的生活看到的世界”。记录的有杭州旧时风俗、家乡美食、长辈亲戚、家庭教师、私人医生、佣人奶妈、旅游见闻、逃难经历等,讲述时没有居高临下、矫揉造作之感。有些篇幅描写的十分细致,如六种颜色的桂花糖、枣饼、乌糯米饭等食物制作,为结婚所做的准备和当时婚礼流程等。书中记载的幼时逢年过节的仪式感,大年初一必吃的荔枝橘子、家里西湖边庄园产的时鲜……成为孩子心中难忘的记忆。日常饮食不仅食材品类丰富,而且讲究干净卫生、顺应天时,做法讲究。这本书在写作时并非按照时间顺序,而是根据事件和人物等分章节,有多处内容交叉,被重复讲述。

这些偏重于记载家庭和习俗的日常文字,虽然书中有一个章节写到姨太太,也提到一个“混混”亲戚,可能是笔墨篇幅和记载侧重点的关系,没有什么腐朽堕落的封建末世之感,不似张爱玲小说里那种封建大家庭的气息格调。也没有奢靡之感,反而家族中有些女性生活节俭,孝敬长辈、乐善好施,宽厚待人。孩童时期也有很多有趣的事情:“我还记得我只有五六岁时,老屋还没有翻造,厕所间在卧室的后面,白天很暗。那时好像杭州还没有电灯,所以也无灯可开。我哥哥那时只有八九岁,怕黑,每次去厕所大便,都要我在他旁边坐在小凳上陪他。有一天,我学大人的口气对他说:“你要是没有我这个妹妹,就苦了!”看到这段我想起来,小猪仔平时晚上上厕所害怕,也需要人在一旁充当“闻屎官”。

高诵芬的父亲受封建思想影响,觉得女孩绝不用抛头露脸外出工作,以后教育小孩有家庭教师,做衣服有裁缝,做菜煮饭有厨师,所以只要懂点古文,学点字画作为日后消遣即可,进学校念书只会去学新潮去自由恋爱,所以就在家念私塾。高诵芬有一哥一弟,作为家中唯一的女儿,虽然父亲对她的学业不重视,在成长中也给予了充分的呵护和充裕的物质条件。她父亲婚前多次考察女婿人品相貌才能,家里花了数年时间为她准备嫁妆,装了三十六个条箱。从结婚到满月,每天她父母都会差人接她回家一次,也是杭州的风俗习惯之一,是怕女儿新作媳妇紧张劳累,回娘家去松散松散。婚后第二年生日,娘家将鸡鸭鱼肉等装在漆红大圆盆挑到婆家,还要送一桌鱼翅席过来,为了让婆家记住新娘的生日,往后每年记得加以庆祝。

书中所述几十载光阴,历经动荡和变革的年代,有着“兵戈布迁之危,疾病刀圭之惧,儿女抚育之劳,井臼操持之烦”。不过相对于普通百姓,有钱人家逃难经历就好太多了,带着一批佣人,专车送到火车站,坐二等车厢(头等只能外国人坐)吃西餐,沿途买特产小吃,专人接待并安排好住处。抗战时期杭州却歌舞升平,也能经常和丈夫到处旅游,如游黄山。

高诵芬一家居住在杭州和上海,加之又重视身体健康、讲究科学育儿,不在于支付昂贵的就诊费用,享受到的医疗条件也是领先的。在上世纪三十年代,高诵芬新婚后不孕,找多个知名西医诊断,在上海知名疗养院特等病房住院切除卵巢瘤,病房还有独立会客厅和陪护房间,除了家里佣人,又请了两位护士日夜轮流照顾。丈夫专门请了照相馆摄影师,来医院拍摄记录,并冲洗了一大本相册。出院后,丈夫担心回家恢复不好,又要求她去医生家住了一个月,在医生和特别看护照顾下,等伤口长好了才回家。他们婚后第二年逃难到里山,高诵芬摸到胸部硬块,怀疑是乳腺癌,丈夫二话不说立马决定第二天就回杭州医院检查,高价雇船。在孕期,丈夫买很多本育儿书,给她听西洋音乐。产后又请奶妈,丈夫还买了英国磅称每日测量记录婴儿体重。他们在上海也经常带四个孩子轮番去看牙医,拔牙补牙。

此外,高诵芬在回忆这些人物时,只要能记得,都会清楚记载他们的寿辰。有不少人都是晚辈很孝顺,被服侍到八九十岁高寿的。年轻时不在意寿命长短,如今看多了网上那些风险隐患事故灾难,觉得一辈子无病无灾,能身体健康、寿终正寝,也是一种福分。

  •  

简易教程: C++的智能指针


C++ 智能指针教程

C++ 中的智能指针提供了自动且安全的内存管理。它们通过 RAII(资源获取即初始化)机制,帮助开发者避免内存泄漏和悬空指针的问题,确保对象在生命周期结束时被正确释放。

本教程将介绍 C++ 中三种主要的智能指针:

  • std::unique_ptr:独占式所有权
  • std::shared_ptr:共享式所有权
  • std::weak_ptr:非拥有式弱引用

1. std::unique_ptr

unique_ptr 拥有独占所有权。一个资源只能被一个 unique_ptr 拥有。

示例:管理简单对象

#include <iostream>
#include <memory>

int main() {
    std::unique_ptr<int> p = std::make_unique<int>(42);
    std::cout << "值: " << *p << "\n";

    // 转移所有权
    std::unique_ptr<int> q = std::move(p);
    if (!p) std::cout << "p 现在是空指针\n";
    std::cout << "q 指向: " << *q << "\n";
}

示例:构建链表

struct Node {
    int val;
    std::unique_ptr<Node> next;
    Node(int v) : val(v), next(nullptr) {}
};

void printList(const std::unique_ptr<Node>& head) {
    const Node* curr = head.get();
    while (curr) {
        std::cout << curr->val << " ";
        curr = curr->next.get();
    }
    std::cout << "\n";
}

int main() {
    auto head = std::make_unique<Node>(1);
    head->next = std::make_unique<Node>(2);
    head->next->next = std::make_unique<Node>(3);

    printList(head);
}

2. std::shared_ptr

shared_ptr 允许多个指针共享同一个资源的所有权。它通过引用计数管理资源,当引用数为零时自动释放内存。

示例:共享资源

#include <iostream>
#include <memory>

int main() {
    std::shared_ptr<int> a = std::make_shared<int>(100);
    std::shared_ptr<int> b = a;

    std::cout << "a 的引用计数: " << a.use_count() << "\n";
    std::cout << "b 的引用计数: " << b.use_count() << "\n";
    std::cout << "*b = " << *b << "\n";
}

示例:共享链表节点

struct Node {
    int val;
    std::shared_ptr<Node> next;
    Node(int v) : val(v), next(nullptr) {}
};

3. std::weak_ptr

weak_ptr 是一种弱引用,不拥有资源,仅用于观察 shared_ptr 所管理的对象。它常用于打破循环引用,防止内存泄漏。

示例:打破循环引用

#include <iostream>
#include <memory>

struct B;

struct A {
    std::shared_ptr<B> b_ptr;
    ~A() { std::cout << "A 被销毁\n"; }
};

struct B {
    std::weak_ptr<A> a_ptr;
    ~B() { std::cout << "B 被销毁\n"; }
};

int main() {
    auto a = std::make_shared<A>();
    auto b = std::make_shared<B>();
    a->b_ptr = b;
    b->a_ptr = a;
}

是否存在 make_weak?

不存在 std::make_weak,因为 weak_ptr 不拥有资源,它必须引用一个已存在的 shared_ptr

如何创建 weak_ptr

#include <iostream>
#include <memory>

int main() {
    std::shared_ptr<int> sp = std::make_shared<int>(42);
    std::weak_ptr<int> wp = sp;

    if (auto locked = wp.lock()) {
        std::cout << "值: " << *locked << "\n";
    } else {
        std::cout << "对象已被释放\n";
    }
}

总结

智能指针 所有权 线程安全的引用计数 典型用途
unique_ptr 独占 N/A 高效、安全的单一所有权
shared_ptr 共享 多个所有者共享资源
weak_ptr N/A 打破 shared_ptr 的循环引用

C/C++编程

英文:Tutorial on C++ Smart Pointers

本文一共 375 个汉字, 你数一下对不对.
简易教程: C++的智能指针. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 简易教程: C++的智能指针 C++ C++ 学习笔记 程序设计 编程 计算机
The post 简易教程: C++的智能指针 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 被动收入之: 微博红包 今年开始重新经营我的微博帐号 drlai 收到两笔微信红包,应该是来自于官方的支持,150元(成功提现到支付宝)。虽然这不能持久,也没多少,但毕竟实现了零的突破,意义重大。 如果流量上来,内容创作者可能会接受到比较多的赞赏,这也是一个比较简单的变现方法。这也能作为一种被动收入,不过如果不是头部网红,可能杯水车薪,但如果你有好几个类似这样的,也能积少成多! 在用户中心,微博用户可以每天登陆手机微博APP打卡,获取点数和少量的红包钱(几分钱),积少成多! 微博做些小任务可获得积分和几分钱。聊胜于无。 微博的主要盈利模式 微博的主要盈利模式主要包括以下几个方面: 广告收入:微博的大部分收入来源于广告,尤其是品牌广告和效果广告。广告形式包括信息流广告(类似于推文广告)、热门话题广告、开屏广告和视频广告。品牌和企业可以利用微博庞大的用户群和社交互动来提升曝光率、推广品牌和产品。 会员服务:微博提供的VIP会员服务,用户可以支付订阅费用来享受更多的特权,比如个性化的主题、特有的表情包、私密权限设置等。这些会员服务主要面向个人用户,提升其社交体验。 直播和打赏:微博提供直播平台,用户可以通过购买虚拟礼物来支持主播,微博会从这些打赏中抽取一定比例的分成。此外,微博与内容创作者分成,通过内容付费、知识付费等形式变现。 增值服务:针对企业和大V(拥有大量粉丝的用户),微博还提供增值服务,如账号认证、粉丝数据分析、精准推送、推广和营销工具等。这些服务帮助企业提升营销效果,同时也增加了微博的收入来源。 电商和导流:微博上有大量的电商导流业务,尤其是和明星、网红的合作推广。微博用户在浏览社交内容时,可以直接跳转到商品购买链接,微博通过这种方式赚取导流佣金。 游戏联运:微博也会与一些游戏公司合作推出联合运营的游戏,微博负责推广和流量引入,用户充值或付费时,微博可以获得一部分的分成。 这些模式相结合,使得微博能够在广告市场、内容创作和电商等多个领域获利。...
  2. Javascript 中 sleep 函数实现 Javascript 中并没有 built-in 的 sleep 函数支持, 在 async/await/Promise 的支持之前, 我们可以用 busy-waiting 的方式来模拟: 1 2 3...
  3. 换了个奥迪Q5大灯花了我1000英镑 我那辆奥迪Q5 SUV今年年检没通过,原因是左前车灯坏了,需要更换。车厂告诉我,光是订购零件就要700多英镑,加上人工费,总费用得1000英镑。但没办法,如果不修,车辆年检(MOT)就过不了,车也不能上路。 MOT是英国的机动车强制性安全检测(Ministry of Transport Test)的简称。 近侧前位置灯不工作 drl/位置灯集成(4.2.1(a)(ii)) Nearside Front Position lamp not working drl/position...
  4. C++ 编程练习题: 如何合并两个二叉树? 题意: 合并两个二叉树, 没有说不可以改变原来的二叉树. 合并的时候把结点求合. C/C++ 中二叉树的定义 在C或者C++中, 二叉树的定义可以很方便的用结构体来表征. 其中左右子树都是递归定义. 1 2 3 4 5 6...
  5. 步步高学生电脑上 Basic 编程语言 peek 用法示例 步步高学生电脑 是8位FC机的经典之作.它上面的BASIC有三个版本 1.0, 2.0 和 2.1 2.1 版本有个在线帮助,实际上是 help.cmd 1.0 是用 Esc 键退回到 DOS 的,...
  6. 你给SteemIt中文微信群拖后腿了么? 这年头不缺算法, 就缺数据. 这两天花了很多时间在整API上, 整完之后自己用了一下还觉得真是挺方便的. 今天就突然想看一看自己是否给大家拖后腿了, 于是调用每日中文区微信群排行榜单的API, 刷刷拿着 NodeJs 练手: 1 2 3 4 5 6...
  7. C++ 编程练习题 – 找出第三大的数 题意: 给出一个数组, 求第三大的数字是多少, 重复的数字并不算在内, 比如 第3大的数字是1 而不是 2. Using std::set set 是集合, 是有序的(从小到大), 集合中不包含重复的元素, 所以我们可以遍历数组并把数字添加到集合中....
  8. 最简单有效的过滤WordPress垃圾评论的方法 当你的Wordpress博客流量大的时候, 不免会收到很多垃圾评论. 本文介绍一种特别简单而且免费的过滤Wordpress垃圾评论的方法. 这种方法不需要你安装任何插件, 也不需要拥有修改Wordpress主题模板函数的能力, 只需要1分钟就可以搞定. 把这个列表拷贝下来 打开 WordPress 的控制面版, 到设置-讨论 拷贝上面的列表到 “评论审核” 或者 “评论黑名单”...
  •  

借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding)


程序员的未来?Vibe Coding + AI 一起上!

借助 AI 快速开源了三个小工具

最近,我利用 ChatGPT-4o 和 o4-mini 快速开发并开源了三个小工具。起因其实很简单——每次想转换 YAML/JSON 或进行 Base64 编码时,我总是得去 Google 搜索在线工具。时间一久,我不禁开始思考:既然每次都要用,为什么不自己动手实现一个呢?正好我也在学习 React,把这个过程当作练习岂不是一举两得?

于是我开始“扮演”产品经理,向 ChatGPT 提出需求,它很快就为我搭建好了基础框架。包括项目结构、CI 工具(单元测试、ESLint——后来我换成了 Prettier)、README 文档,甚至是 GitHub Actions 上的自动化测试和部署流程,全部一气呵成。

这几个工具都部署在 GitHub Pages 上,开源、带测试、写了文档,虽然小巧,但功能完整,不需要自建服务器就能稳定运行,部署成本几乎为零。

YAML/JSON 转换工具

用于在 YAML 和 JSON 格式之间进行双向转换,支持美化和压缩,简单直观。

yaml-json-converter 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) ChatGPT (OpenAI) 人工智能 (AI) 小技巧 程序员 程序设计 编程 资讯 软件工程

Yaml/Json数据格式转换React小程序

Github开源库 | Github Pages在线工具

Base64 编码/解码工具

支持文字和文件的编码解码操作,可以将文件内容直接转换为 Base64 字符串,或者反向解析恢复文件。

base64-converter 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) ChatGPT (OpenAI) 人工智能 (AI) 小技巧 程序员 程序设计 编程 资讯 软件工程

Base64编码解码React小工具

Github开源库 | Github Pages在线工具

ROT47 混淆工具

这是一个轻量级的字符串混淆工具。ROT47 的特点是“加密两次即为原文”,类似于异或操作,适用于简单场景下的信息模糊处理。

rot47-converter 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) ChatGPT (OpenAI) 人工智能 (AI) 小技巧 程序员 程序设计 编程 资讯 软件工程

ROT47 Cipher文本混淆React小工具

Github开源库 | Github Pages在线工具

Markdown HTML转换

我又弄了一个,这个是把Markdown格式转换成HTML的,转换解释Markdown是基于 marked 库,所以并没有再造轮子。由于HTML转Markdown会比较复杂,这一版本就没有支持。

主要的活都让AI做了(编码/写测试/调CSS),我做的工作就是指导(Prompt Engineering)并把各个零件粘在一起。

markdown-html-converter 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) ChatGPT (OpenAI) 人工智能 (AI) 小技巧 程序员 程序设计 编程 资讯 软件工程

Markdown/HTML转换工具/React Js WebApp

Github开源库 | Github Pages在线工具

程序员的门槛正在降低

AI 的发展速度太快了,现在生成代码的质量不仅更高,出错率也更低。即便出错,只需将报错信息交还给 AI,它就能分析并修正。程序员的角色正在转变:与其说是手工写代码,不如说是理解需求、与 AI 高效沟通,并拼装整合它给出的解决方案。

对我来说,项目最初的搭建一直是拖延的主要原因。ChatGPT 正好擅长这一环节——自动生成 boilerplate,让我几乎能“秒启动”一个新项目,显著提升了开发效率。

我已经养成每天使用 AI 的习惯,甚至已经很少再使用 Google 搜索。遇到问题,第一反应是直接问 ChatGPT,不仅快,还能一步到位解决问题。

Vibe Coding:AI 驱动的编程方式

Vibe Coding 这个概念今年特别火,核心思想是“用氛围编码”。也就是说,程序员不再执着于每一行代码的细节,而是通过自然语言描述需求,让 AI 来实现代码的生成、重构与调试。

Andrej Karpathy (2025)

TLDR;Vibe 编码是一种新兴的软件构建实践,它用简单的语言描述你想要的内容 – 然后让 AI 处理代码和测试。
TLDR; Vibe coding is the emerging practice of building software by describing what you want in plain language – and letting AI handle the code and test.

我发现自己越来越倾向于这种方式。遇到 bug,第一时间就将错误日志扔给 ChatGPT 处理。虽然效率很高,但也让我逐渐失去了深入思考和调试的乐趣。

现在还有很多支持 Vibe Coding 的工具,比如 Cursor,或者在 VSCode 中配置 AI Agent。你只需告诉它“我要实现什么”,它就能完成代码编写、框架搭建,甚至进行模块拆解和逻辑优化。而你要做的,仅仅是审查和接受它的建议——这不就是产品经理的工作吗?

初级程序员的挑战与机会

AI 工具的普及正在重塑编程的边界,传统“照着教程敲代码”的模式已经远远落后。未来,初级程序员面临的挑战不再是“学不会写代码”,而是“不会用 AI”。

想要不被淘汰,最重要的是掌握如何高效地与 AI 协作,提升自己的系统思考与设计能力。AI 是强大的助手,但人类的洞察、判断和创造,依然无可替代。

未来属于那些善于利用工具、不断精进自己思考能力的人。也许“写代码”的定义正在改变,但“解决问题”的本质永远不会变。

AI大大提高了生产力,执行力和创造力会更加重要。软件工程师需要懂得怎么用AI来干活拧螺丝(开发/调试/解决问题)。感觉程序员的门槛瞬间变得好低,只要懂得看懂AI生成的代码,懂得基本的软件工程就可以了。

ChatGPT 可以拿来做什么?

ChatGPT 通用人工智能

Grok 3

字节/豆包/AI

英文:From Idea to GitHub Pages: Building Tools with AI and Vibe Coding

本文一共 1373 个汉字, 你数一下对不对.
借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding). (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) ChatGPT (OpenAI) 人工智能 (AI) 小技巧 程序员 程序设计 编程 资讯 软件工程
The post 借助AI快速开源了三个小工具: 写代码越来越像做产品了, AI 真把我宠坏了(Vibe Coding) first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 特朗普加关税的公式竟然是EXCEL里弄的? 这两天中美关税大战越演越烈,据说,特朗普加关税的计算方式竟然是直接在EXCEL电子表格里弄的,具体如下: 其中 I 是 Import,进口;E 是 Export 出口。 优美又实用的公式家族又添新成员 勾股定理: 欧拉恒等式: 牛顿运动定律: 爱因斯坦质能等价公式: 特朗普的“互惠关税”公式:,其中 I...
  2. 测测你的幸运 – Linux Fortune-Teller LINUX 下有很好很好玩的命令,之前已经介绍过: figlet, rig, curl. 现在推荐另一个 命令 fortune 是用来随机显示一段(句)话的.fortune 在英文里就是幸运的意思. 这个命令可以不需要 参数 如果没有 可以通过 apt-get...
  3. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  4. 推荐一款 CHROME 插件 – Wappalyzer 这个CHROME浏览器插件很方便的可以让你知道当前标签页里的网页 有用到哪些 技术. 你可以用它来检查是否插件正常工作. 1. CLOUD FLARE CDN 2. ADSENSE 3. GOOGLE ANALYTICS 4. Gravatar...
  5. 教娃编程有趣的瞬间 vlog视频集合 教娃700天:写在教娃编程700天, what’s next?。有很多有意思的瞬间记录一下,持续更新。 和孩子一起打闹,学习,成长。 教娃编程孩子有趣的瞬间 vlog(Day 641) 娃说我不够 Senior(Day 701) Bro.. I thought you’re like...
  6. 用 SB2000 的 FBASIC 计算圆周率后80位 英文同步 SB2000 的 FBASIC 是浮点 BASIC 的意思, 就是说可以用在计算一些数值,高级计算机.今天我们还测一下它的计算性能,之前大概知道很慢.. 计算圆周率有很多公式,收敛度不一样, 我们挑一个性价比较高的,比较容易实现的..比如这个: 在SB2000上,80位要算5 小时; 40位1个小时; 20位几分钟, 真得很慢....
  7. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  8. 你要找什么样的老婆? 找媳妇的标准 昨天和网友在剑桥面基, 网友奔现, 他从爱尔兰过来, 小我12岁, 就聊到了找对象的标准. TLDR; 找老婆不要(只)看颜值, 而要注重性格, 为人处事和顾家等更重要的品质, 当然性和谐也很重要. 在当今社会, 人们对于找伴侣的标准有所不同. 有些人认为颜值是最重要的, 因为外貌吸引力可以让人在日常生活中感到愉悦, 这是人的本性,...
  •  

Caddy拦截响应处理小记

简单小记,分享一下,主要还是针对 MinIO 异常的处理,其他服务应该也类似

之前配置 MinIO:

xxxx {
        import ERR
        import LOG "/var/log/caddy/minio.log"
        @rootPath {
                path /
        }
        handle @rootPath {
                respond "EdgeONE 403 Forbidden" 403
        }
        reverse_proxy 127.0.0.1:9000
}

仅禁止访问/,且有问题使用 import ERR 兜底

(ERR) {
	handle_errors {
		redir https://dxgw-{err.status_code}.external.ysicing.net
	}
}

之前没太注意,之前这种情况下,如果 MinIO 放回 400 的话是没法拦截的。这时候需要响应匹配器来干活了

域名 {
		import LOG "/var/log/caddy/minio.log"
	    import ERR
        @rootPath {
                path /
        }
        handle @rootPath {
                respond "EdgeONE 403 Forbidden" 403
        }
        reverse_proxy 127.0.0.1::9000 {
	     		@error status 4xx
	     		handle_response @error {
 						respond "EdgeONE 451 Forbidden" 451
				}
		}
}

handle_response 块内,可以使用任何其他指令,功能还挺强大的


  •  

读《幻夜》

近期又读了一本东野圭吾的《幻夜》,这本书的情节起伏转折,构思巧妙,有一定吸引力和可读性。但又总觉得这本书像是按照流行畅销的推理小说的公式,套出来的一个标准化产品。

作者把女主角新海美冬塑造成一位年轻漂亮、魅力非凡、独立沉稳、聪慧过人、品味高级的形象。同时,又是一位冷酷无情、心机颇深、缺乏人性的蛇蝎美人。她很善于用自己的容貌、气质甚至身体来获取资源,也会玩弄感情、把控心理来达到目的,最突出体现在她对男主角水原雅也的情感和心理操控上。

雅也在一场地震后因400万日元借款杀害了舅舅,被美冬目睹作案现场抓住了把柄,美冬又总是口头许诺两人将有美好的未来,加之雅也也很喜欢她,每次他都没能违背美冬的提议:诬陷浜中、给青江设圈套、杀害曾我。在这个过程中他也动摇过,但是又害怕被美冬轻蔑,想成为对她有用的男人,希望满足她的期望,做一个配得上她的男人……就沦为彻彻底底的工具人。

刚开始雅也以为美冬对他是有感情的,当他发现原来自己也被算计了,心态就崩塌了。美冬许诺的那个美好的未来里,只有她自己。为了达到成功,美冬隐瞒身份,冒充别人,成为人生的胜利者,这些才是她的野心。为此她会不择手段,不惜利用所有人。结尾后,美冬似乎有把握雅也不会杀死自己,面对警察加藤,表现得很冷静,或许她是故作镇定不暴露真实身份,或许是认为雅也不会对自己下手,或者是已经采用了更高段位的做法:匿名向雅也出售质量有问题会爆炸的子弹。

书中警察加藤有着高超的推理和联想能力,也曾经锲而不舍去侦查,但最终还是没能破案。合上书后,感觉剧情有些地方还是没有交代清楚,有些漏洞。比如美冬的父母虽然在地震中去世,但是她之前二十多年的同学、朋友、老师、亲戚、邻居等人际交往,涉及很多人,不是随便能掩盖住的。冒充美冬的这个人也不是从石缝中蹦出来的。在酒店房间中谋杀曾我、冒充妓女刺伤技工、夜袭美容店女店员…这些做案行为难道完全没有目击者?分尸现场完全没有痕迹?抛尸一年也没被发现?……

原本雅也可以选择类似冈田饭店的有子作为妻子,共度平凡简单的生活。但是他杀过人,被人抓住把柄,继而遭受威胁,陷入无法自拔的境地,为了掩盖一个罪行,而又犯下了更多的罪行。书中没有描写过美冬的心理过程,但她谋划了这些事情,也无法做到内心毫无波澜吧。

  •  

没有外患,全是内忧

题外话:感谢AI帮我翻译url。


上篇文章「中年空虚」说到,我最近精神状况不太稳定。这跟情绪不稳定还不一样,因为我两者都经历过,所以可以分别。以前在育儿中遭遇过不少困难,情绪起伏大,也曾发博客记录,收获了很多安慰和建议,感恩!后来慢慢释怀了,一是认知进步了,二是“罪魁祸首”坡坡长大了,所以直接治了本。但现在的emo又升级了,变成了乌云笼罩式的无力。

找不到原因,不知道到底是真的没有原因,还是只是我没找到。想来想去只剩一个答案——年纪大了!前两天跟朋友聊天,她说到自己四十了,我小小惊讶了一下,算了算发现我也快三十七了。真的这么明显吗,确实这几年奇奇怪怪的病不少,现在右胯还在疼着,明天要去复诊。按理说我几年前开始运动,身体应该更好才对,难道不运动身体差得更快?话说连豆哥都开始运动了,哈哈,这年龄带来的紧迫感。

工作一如往常,九点上班,三点下班。下班后一小时是我珍贵的me-time,状态好的时候运动写博客,不好的时候刷剧休息。四点接小坡,然后去公园玩会儿再回家煮饭洗澡陪读睡觉。我原本想不通,明明工作时长短了许多,为什么比没生娃前还累。我自诩各方面能力都不错,可是现在的情形似乎还比不上一般的全职妈妈。就因为这,我又emo了好几天。然后因为上次emo还没结束多久就又emo,使得我更emo了。不过后来我想通了,陪娃何尝不是一份工作,甚至比职场更不可控。毕竟工作是事情,娃是人。事情听你的,娃有自己的想法呀,得引导。想到这儿,我心里一松,笼罩了几天的乌云缓缓散开。

回家后我跟豆哥说到此事,原来我一直以为自己轻松是认知不清,其实我一直在加班加点劳作啊!认识到这点后,我开始有意识地把心从娃身上收回,担心她不如多想想自己,儿孙自有儿孙福!

非常感谢博友们的评论和现身说法,emo毫无规律可言,也不讲道理。来了忍一忍,没找到原因那也就无所谓需要克服或改变什么,等这阵子过了,可能就好了。如果不好就不好吧,一有空就做点不用脑子的事,我已经不再为刷土味短剧而自责了,毕竟能让成年人快乐的事太少了。写到这我想起前阵子的感悟——我从这个世界的参与者,逐渐变成了旁观者。经历多了,也就没多少能刺激到神经的事了,这事儿着实好坏参半。好的地方在于遇事能够做到处变不惊,人稳重了许多。坏的地方在于生活变得无聊,人也没什么活力。哈哈,天知道我小时候多希望自己能变得稳重,不以物喜不以己悲。可是现在,我又开始羡慕孩童们的天真和活力。

以前大人们总说当小孩好啊,无忧无虑。长大后我觉得还是大人好,自己的事情自己说得算。可是为什么脑子里的烦恼多了许多。我一直觉得坡坡缺根筋,小孩的脑子大概因为还没发育好,所以天然呆,这才是他们无忧无虑的真相吧。我也想无忧无虑,我也想像豆哥说的那样别想那么多,可是事情总是自动出现在我的脑袋里,然后我就开始担心这忧心那。我悟了,所以过来人们极力推荐正念冥想,就为了清空大脑,跟冥想盆是一个道理。

「凡事过犹不及」实乃真理啊!啥都不想缺根筋,啥都想伤心神。所以「看山是山,看山不是山,看山是山」的三阶段便是最好的例子吗?我还在「不是山」的阶段苦苦挣扎,什么时候可以真正放下呢?是能够自己选择放下的吗?难道目标是能够从容操控思想?

控制思想
→控制对世界的看法
→控制世界的呈现
→控制世界!
唯心主义好香啊~

年纪大了,身体不中用了,向外探索的机会就少了许多。但内心世界却越来越丰富,厚积薄发,无法掌控。看来跟健身一样,我还需要健心。想我小时候,总觉得身体里有花不完的力气,每天放学还要绕操场跑三圈。而现在,则每天上演内心戏,都是年度巨作的规模。

先从看坡坡的小儿哲学书开始吧。

  •  

中美贸易战告一段落, 牛市来了


“折腾一个月,关税无事发生。但是巴西得到了大豆订单,澳大利亚得到了肉类订单。东南亚和东盟得到了转口贸易中国得到了前所未有的外宣声望和内部团结,公知和maga得到了耳光。马斯克得到了教训。甚至加拿大都得到了民族自尊心。特朗普也没白忙活,和他的朋友们含泪赚几百亿。”

中美似乎在贸易关税上达成一致,各为10%。这下似乎牛市来了,不过二饼(以太ETH)还是很疲软。

蔡正元:中国大陆这次面子里子都赢麻了。赢到了让全世界刮目相看,因为看多人都跑到华盛顿去下跪。中国大陆不用。贝森特你要谈就到瑞士来谈,我刚好路过瑞士,有空找你谈,你最好把方案带着来,我们就一次来敲定,所以,中国没有移樽就教,而是贝森特代表美国移樽就教,所以在面子上面中国赢麻了,在里子上面,一个多月而已,一切回到解放前,美国全线溃败,他本来以为用关税政策可以打击中国大陆的贸易,没想到刀刀都刺向自己,中国不能说毫发无伤,但至少皮肉之伤挺得住啊,你美国是被打得鼻青脸肿,证实美国在这次压力测试里面,美国经不起和中国脱钩/De-coupling,因为你们没货。所以中国也经过这次的压力测试,算是挺住了。

BTC 第一次突破 10 万美元时,ETH 价格为 4000 美元。
BTC 第二次突破 10 万美元时,ETH 价格为 3900 美元。
BTC 第三次突破 10 万美元时,ETH 价格为 3700 美元。
BTC 第四次突破 10 万美元时,ETH 价格为 3400 美元。
BTC 第五次突破 10 万美元时,ETH 价格为 3000 美元。
BTC 第六次突破 10 万美元时,ETH 价格为 2800 美元。
BTC 第七次突破 10 万美元时,ETH 价格为 2700 美元。
BTC 第八次突破 10 万美元时,ETH 价格为 2000 美元。

crypto-btc-eth-tron-2025-05-14 中美贸易战告一段落, 牛市来了 以太网 ETH 加密货币 区块链 微软 投资 新闻 比特币 比特币 BTC 税 Tax 股市 资讯

币圈也开始涨回来了,牛市真的要来了?希望这是大饼最后一次破10万刀。

how-us-tax-tariff-trump-work 中美贸易战告一段落, 牛市来了 以太网 ETH 加密货币 区块链 微软 投资 新闻 比特币 比特币 BTC 税 Tax 股市 资讯

特朗普发动关税之战就是搬起石头砸自己的脚。

us-stock-msft-apple-amazon-meta-nvidia-2025-05-14 中美贸易战告一段落, 牛市来了 以太网 ETH 加密货币 区块链 微软 投资 新闻 比特币 比特币 BTC 税 Tax 股市 资讯

美国科技股:微软、苹果、亚马逊、英伟达、Meta涨回来了。

新闻/实事/经济

本文一共 681 个汉字, 你数一下对不对.
中美贸易战告一段落, 牛市来了. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 中美贸易战告一段落, 牛市来了 以太网 ETH 加密货币 区块链 微软 投资 新闻 比特币 比特币 BTC 税 Tax 股市 资讯
The post 中美贸易战告一段落, 牛市来了 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  2. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  3. 同一台服务器上多个WORDPRESS站点的一些设置可以移出去 我自从把所有网站都挪到一处VPS服务器上 就发现很多事情省事很多 可以同时管理多个网站 包括 WORDPRESS博客. 比如我有四个WORDPRESS博客 然后我就把通用的一些资料给移出去 移到 HTTP或者HTTPS都不能直接访问的文件夹里这样就更安全许多. 文件 wp-conn.php 存储了 相同的数据库资料. 1 2...
  4. 比特币最近波动有点大: 一天牛市一天熊 比特币10万美金以内都是最后上车的机会! 比特币近期的价格波动可以归因于多个关键因素,包括地缘政治动态、监管变化以及加密行业内的重大安全事件。其中一个主要影响因素是美国前总统唐纳德·特朗普对乌克兰和加密货币监管的立场变化。据报道,特朗普再次当选,他可能会推动减少美国对乌克兰的支持,这可能会影响全球金融市场和风险偏好。同时,特朗普正在将自己塑造为亲加密货币的候选人,表示有意让美国成为一个更加友好的加密货币环境。这一立场引发了市场对监管政策可能发生变化的猜测,导致市场情绪在乐观和不确定性之间波动。 特朗普对俄乌战争的态度 美国第43届总统唐纳德·特朗普已经在2025年1月当选并正式上任(第二次),那么他的政策可能会对比特币价格的波动产生更加直接和显著的影响。他政府对乌克兰和加密货币监管的立场已经不再是猜测,而是正在实际塑造市场的关键力量。 特朗普(Donald Trump)减少美国对乌克兰的支持,全球投资者可能会预期地缘政治稳定性发生变化,从而增加对比特币作为避险资产的需求。同时,他的亲加密货币立场可能正在推动市场的乐观情绪。如果他的政府推出有利于加密行业的监管政策,例如明确的合规指南或减少监管审查,可能会吸引更多机构投资者进入市场,并促进更广泛的加密货币采用。然而,政策的快速变化也可能导致短期市场剧烈波动,因为市场需要时间来消化新的政策动向。 朝鲜黑客盗取Bybit交易所15亿美元的ETH 另一个显著影响比特币价格的事件是近期涉及朝鲜黑客组织“Lazarus”的15亿美元以太坊被盗案件。据报道,Bybit交易所(全球第二)这些被盗的ETH已经被清洗,此次大规模黑客攻击引发了人们对加密行业安全性的担忧。此类安全事件不仅会削弱投资者信心,还可能引发更严格的监管审查,导致短期市场动荡。此外,被盗资金的大规模流动和出售可能对市场流动性造成冲击,进一步加大价格波动。随着这些事件的持续发酵,比特币价格正受到政治决策、监管预期以及安全挑战等多重因素的影响。 与此同时,与朝鲜黑客组织 Lazarus 相关的 15 亿美元以太坊被盗事件仍在影响加密市场。由于这些被盗 ETH 已被清洗,人们对加密行业安全漏洞的担忧持续存在,同时也可能引发更严格的监管审查。政治、监管和安全等多重因素交织在一起,共同导致了比特币近期的剧烈价格波动。...
  5. 公司请的专业摄影师 公司来了新的CEO管理之后,很多事情都不一样了, 特别是一些公司对外形象的事情就特别的在意, 比如公司网站用上SSL.现在公司还有空闲的位置,请速来(钱多人不傻). 一月份出差回LUTON,刚好公司请来摄影师给高层管理照像放网站上的,于是我也凑了凑热闹(但是却还不够资格被放在公司网站上),不过没关系,放这里也差不多. 人到中年, 沧桑感强了些. 更新更新: 同事用他NB的单反给谢菲尔得办公室的人也拍了一组这样的照片.看起来很不错, 很专业,灯光,道具应有尽有.我已经用在了LINKEDIN页面上,立马高大上. 本文一共 230 个汉字, 你数一下对不对. 公司请的专业摄影师. (AMP...
  6. 面向猫猫编程 Cat Oriented Programming (Chessly/Pyro这一生持续更新) 家里有两只猫 Chessly/Pyro,想着找个地方记录它们的生活,最后决定还是写在这里的博客。猫的一生很短,差不多也就二十年。 Chessly(黑白猫)是我加入微软剑桥研究院MSRC第一个月带回家的,过了两三个月,又把Pyro(橘猫)也接回了家。两只猫的名字是孩子们取的:Chessly因为黑白的像棋盘,加上“ly”听起来像个女孩的名字;而Pyro的意思是一团火(烟火),充满活力。 刚开始的时候,Chessly特别喜欢待在我的工作区域。她有时候趴在键盘上或旁边,有时候藏在显示器后面。偶尔还会绕到我身边“咕咕”地撒娇,等着我去摸她。有时更干脆跑到我腿上,舒舒服服地躺着。 不过,现在它们俩的体型都大了很多,躺在桌上就会挡住屏幕,真是“面向猫猫编程”(Cat Oriented Programming)的极致体验。 记录生活的点滴,也是一种珍惜,毕竟这二十年,我们会一起走过。 2024年 2025年 Ring视频:两猫日常就是打闹,Chessly追上Pyro想舔他,在猫的世界里,地位高的才能舔地位低的。 我家猫现在越来越胖,很喜欢在我工作的时候躺在显示器钱,很影响我的工作,不过这时候我就是会休息一下摸摸她,就当放松一下了。 Pyro在窗边喝水,这是个小的煮饭锅,现在不用了,就给猫当喝水的碗。Pyro很胆小,经常看到我就跑。没法跑就咕咕叫。 Chessly很喜欢陪我工作,然后她很好厅的盯着屏幕上的鼠标光标,真怕她把屏幕抓坏了。 哥哥弹琴,弟弟唱歌,Chessly午睡,真是幸福啊,下辈子做只猫吧。...
  7. 在英国给孩子换学校的经历: 孩子离开了村里的小学 由于搬了家, 孩子上学得提前半小时出门了, 因为早上堵, 也得开车半小时才能到. 之前在 Fen Drayton 村庄上小学, 早上8:45学校门开, 9点敲钟孩子排队依次进入教室, 我们由于在村里, 只需要提前5分钟出门和孩子一起走路就可以了. 现在一下子早上变得很匆忙, 得叫孩子起床, 做早饭,...
  8. 索兰娜区块链简介 (Solana) Solana 是一个高性能区块链平台,旨在提供快速、安全且可扩展的去中心化应用程序和加密货币。 它旨在通过利用独特的技术组合来解决其他区块链网络面临的可扩展性问题,包括历史证明(PoH)、一种称为权益证明(PoS)的新颖共识机制以及水平可扩展架构。 Solana 使开发人员能够构建具有高吞吐量和低延迟的去中心化应用程序 (DApp),使其适用于从 DeFi 到游戏等广泛的用例。 索兰娜区块链英文是 Solana,它的代币是 SOL。 索兰娜区块链是一个高性能的加密货币区块链,以其速度和效率而闻名。它旨在促进去中心化应用程序(dApps)和加密货币的发展。以下是其主要特点: 高吞吐量和可扩展性:索兰娜能够每秒处理数千笔交易,远远超过比特币或以太坊等较旧的区块链。这得益于其独特的共识机制和证明历史(PoH)算法。 证明历史(PoH):索兰娜引入了创新的证明历史概念,这是一种验证事件之间的顺序和时间流逝的方法。这对于网络的高吞吐量至关重要。 低交易成本:由于其高效的处理能力,索兰娜提供的交易成本远低于其他主要区块链。...
  •  

字节豆包AI还是比较懂男性: 可能和抖音数据有关?


今天在一个群里看到四张由字节的豆包(Doubao AI)生成的美女图,着实震撼。现在的AI技术已经发展到这种程度了吗?

刚开始我还以为是真人照片,直到注意到右下角写着“豆包AI”。不得不说,字节的这波操作真是让不少男性同胞“受益”匪浅(字节豆包模型训练数据很可能有来自其抖音和Tiktok平台,所以更懂男性)。AI的进化速度之快令人惊叹,各大模型之间也越来越“内卷”。很多行业都在被AI渗透:程序员、设计师、律师、医生……并不是说这些岗位会因此消失,但竞争会更加激烈,岗位需求可能也会减少。尤其是对那些懂得使用AI工具的高级从业者来说,卷得只会更厉害。

这四张图完全击中了我的审美:美女站在镜子前自拍,高跟鞋短裙长发身材丰满,每一处细节都恰到好处,而且看起来毫无“AI感”。

注意美女脚上的青筋,还有手机闪光,阴影等,细节很细致。

其实我已经很久没有关注AI生成美女图了,之前总觉得那些图风格千篇一律,容易审美疲劳,也可能是提示词的问题。

这种效果可能在ChatGPT、Grok、Midjourney等平台上未必能生成,毕竟这种尺度对某些AI来说可能有些“越界”,系统可能直接提示:“不符合规定,无法生成”。

2025-05-14-10.19.09 字节豆包AI还是比较懂男性: 可能和抖音数据有关? AIGC-图片 人工智能 (AI) 女人 小确幸 有意思的 福利

字节豆包AI生成的大长腿美女/短裙/丰满/长发/高根

2025-05-14-10.19.16-1 字节豆包AI还是比较懂男性: 可能和抖音数据有关? AIGC-图片 人工智能 (AI) 女人 小确幸 有意思的 福利

字节豆包AI生成的大长腿美女/短裙/丰满/长发/高根

2025-05-14-10.22.27 字节豆包AI还是比较懂男性: 可能和抖音数据有关? AIGC-图片 人工智能 (AI) 女人 小确幸 有意思的 福利

字节豆包AI生成的大长腿美女/短裙/丰满/长发/高根

2025-05-14-10.19.13 字节豆包AI还是比较懂男性: 可能和抖音数据有关? AIGC-图片 人工智能 (AI) 女人 小确幸 有意思的 福利

字节豆包AI生成的大长腿美女/短裙/丰满/长发/高根

吉卜力风格/Ghibli

把上面这四张的高挑美女图,让ChatGPT来生成吉卜力风格的照片,尽可能保留细节:只需一张图, AI就能拍大片: Pollo引爆短视频创作革命

ChatGPT-Image-May-24-2025-08_12_53-PM 字节豆包AI还是比较懂男性: 可能和抖音数据有关? AIGC-图片 人工智能 (AI) 女人 小确幸 有意思的 福利

字节大语言模型豆包AI生成的高挑大长腿美女黑丝高跟鞋让ChatGPT生成Ghibli吉普力风格,尽可能保留照片细节。

ChatGPT-Image-May-24-2025-08_12_48-PM 字节豆包AI还是比较懂男性: 可能和抖音数据有关? AIGC-图片 人工智能 (AI) 女人 小确幸 有意思的 福利

字节大语言模型豆包AI生成的高挑大长腿美女黑丝高跟鞋让ChatGPT生成Ghibli吉普力风格,尽可能保留照片细节。

ChatGPT-Image-May-24-2025-08_12_40-PM 字节豆包AI还是比较懂男性: 可能和抖音数据有关? AIGC-图片 人工智能 (AI) 女人 小确幸 有意思的 福利

字节大语言模型豆包AI生成的高挑大长腿美女黑丝高跟鞋让ChatGPT生成Ghibli吉普力风格,尽可能保留照片细节。

最后这一张生成的有点胖(丰满)了,因为ChatGPT生成的内容也会有点随机,当然你可以让它改,直接和它说需求即可。ChatGPT相当于一个设计师/PS大师,你是甲方,你只需要和它说需求即可。

ChatGPT-Image-May-24-2025-08_12_24-PM 字节豆包AI还是比较懂男性: 可能和抖音数据有关? AIGC-图片 人工智能 (AI) 女人 小确幸 有意思的 福利

字节大语言模型豆包AI生成的高挑大长腿美女黑丝高跟鞋让ChatGPT生成Ghibli吉普力风格,尽可能保留照片细节。

让它改了“有点胖了,改瘦一点,大长腿一点”,不过感觉还是上面第一版本比较好,丰满一些好看一下。

ChatGPT-Image-May-24-2025-09_01_45-PM 字节豆包AI还是比较懂男性: 可能和抖音数据有关? AIGC-图片 人工智能 (AI) 女人 小确幸 有意思的 福利

字节大语言模型豆包AI生成的高挑大长腿美女黑丝高跟鞋让ChatGPT生成Ghibli吉普力风格,尽可能保留照片细节。

有意思的/雅俗共赏

ChatGPT 可以拿来做什么?

ChatGPT 通用人工智能

Grok 3

字节/豆包/AI

本文一共 1253 个汉字, 你数一下对不对.
字节豆包AI还是比较懂男性: 可能和抖音数据有关?. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 字节豆包AI还是比较懂男性: 可能和抖音数据有关? AIGC-图片 人工智能 (AI) 女人 小确幸 有意思的 福利
The post 字节豆包AI还是比较懂男性: 可能和抖音数据有关? first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  2. 特朗普加关税的公式竟然是EXCEL里弄的? 这两天中美关税大战越演越烈,据说,特朗普加关税的计算方式竟然是直接在EXCEL电子表格里弄的,具体如下: 其中 I 是 Import,进口;E 是 Export 出口。 优美又实用的公式家族又添新成员 勾股定理: 欧拉恒等式: 牛顿运动定律: 爱因斯坦质能等价公式: 特朗普的“互惠关税”公式:,其中 I...
  3. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  4. 你要找什么样的老婆? 找媳妇的标准 昨天和网友在剑桥面基, 网友奔现, 他从爱尔兰过来, 小我12岁, 就聊到了找对象的标准. TLDR; 找老婆不要(只)看颜值, 而要注重性格, 为人处事和顾家等更重要的品质, 当然性和谐也很重要. 在当今社会, 人们对于找伴侣的标准有所不同. 有些人认为颜值是最重要的, 因为外貌吸引力可以让人在日常生活中感到愉悦, 这是人的本性,...
  5. 同一台服务器上多个WORDPRESS站点的一些设置可以移出去 我自从把所有网站都挪到一处VPS服务器上 就发现很多事情省事很多 可以同时管理多个网站 包括 WORDPRESS博客. 比如我有四个WORDPRESS博客 然后我就把通用的一些资料给移出去 移到 HTTP或者HTTPS都不能直接访问的文件夹里这样就更安全许多. 文件 wp-conn.php 存储了 相同的数据库资料. 1 2...
  6. 公司请的专业摄影师 公司来了新的CEO管理之后,很多事情都不一样了, 特别是一些公司对外形象的事情就特别的在意, 比如公司网站用上SSL.现在公司还有空闲的位置,请速来(钱多人不傻). 一月份出差回LUTON,刚好公司请来摄影师给高层管理照像放网站上的,于是我也凑了凑热闹(但是却还不够资格被放在公司网站上),不过没关系,放这里也差不多. 人到中年, 沧桑感强了些. 更新更新: 同事用他NB的单反给谢菲尔得办公室的人也拍了一组这样的照片.看起来很不错, 很专业,灯光,道具应有尽有.我已经用在了LINKEDIN页面上,立马高大上. 本文一共 230 个汉字, 你数一下对不对. 公司请的专业摄影师. (AMP...
  7. 在英国给孩子换学校的经历: 孩子离开了村里的小学 由于搬了家, 孩子上学得提前半小时出门了, 因为早上堵, 也得开车半小时才能到. 之前在 Fen Drayton 村庄上小学, 早上8:45学校门开, 9点敲钟孩子排队依次进入教室, 我们由于在村里, 只需要提前5分钟出门和孩子一起走路就可以了. 现在一下子早上变得很匆忙, 得叫孩子起床, 做早饭,...
  8. 终于在Steam平台上玩了最终幻想7-Remake-蒂法和爱丽丝真是美啊 前不久先是我用了7年的HPZ800的服务器在车库里寿终正寝了, 然后就是感觉小电脑NUC太慢, 所以又又搞了一台微软的 Surface Studio Laptop, 这电脑真是快, 自带独显, 玩DOTA2+鱼尾屏很爽. 在STEAM平台花了69.99英镑买了最终幻想7-Remake. Final Fantasy VII – Remake...
  •  

CodeBuddy腾讯云代码助手初体验

本文算个安利吧,目前比 trae 实在,至少不是老是排队,暂时免费使用。

CodeBuddy 是什么

腾讯云出品的代码助手插件, 支持 VSCodeJetBrains微信开发者工具

对比 Cursor

对比我用的 cursor,目前有两大优势

  • 暂时免费(Craft 对话限制 50 次/月,很容易用完的)
  • Craft 支持从用户需求转到研发需求,最后拆分成迭代执行(很早之前,就跟同事讨论过这个问题,这个应该是未来发展的趋势)

安装

插件安装教程, 安装完成后,扫码登录

使用

简单演示,空仓库如何写一个 caddy 插件

mkdir go/src/github.com/ysicing/caddy2-admin-ui
cd go/src/github.com/ysicing/caddy2-admin-ui
git init
go mod init

配置助手,默认全启用

  • 用户需求 - 研发需求

  • 研发需求 - 迭代执行

  • 迭代 1 - 迭代 n

可能问题

除写了"垃圾代码"外,偶尔不会重构代码外,Agent 执行命令提示没法获取结果,需要 ~/.zshrc 新增如下配置

[[ "$TERM_PROGRAM" == "vscode" ]] && . "$(code --locate-shell-integration-path zsh)"

总结

用的不多,偶尔用用还行,更多的还得关注他们后续的付费计划。


  •  

Coding should be a vibe!

The appeal of "vibe coding" — where programmers lean back and prompt their way through an entire project with AI — appears partly to be based on the fact that so many development environments are deeply unpleasant to work with.

So it's no wonder that all these programmers stuck working with cumbersome languages and frameworks can't wait to give up on the coding part of software development. If I found writing code a chore, I'd be looking for retirement too.

But I don't.

I mean, I used to! When I started programming, it was purely because I wanted programs. Learning to code was a necessary but inconvenient step toward bringing systems to life. That all changed when I learned Ruby and built Rails.

Ruby's entire premise is "programmer happiness": that writing code should be a joy. And historically, the language was willing to trade run-time performance, memory usage, and other machine sympathies against the pursuit of said programmer happiness. These days, it seems like you can eat your cake and have it too, though. Ruby, after thirty years of constant improvement, is now incredibly fast and efficient, yet remains a delight to work with.

That ethos couldn't shine brighter now. Disgruntled programmers have finally realized that an escape from nasty syntax, boilerplate galore, and ecosystem hyper-churn is possible. That's the appeal of AI: having it hide away all that unpleasantness. Only it's like cleaning your room by stuffing the mess under the bed — it doesn't make it go away!

But the instinct is correct: Programming should be a vibe! It should be fun! It should resemble English closely enough that line noise doesn't obscure the underlying ideas and decisions. It should allow a richness of expression that serves the human reader instead of favoring the strictness preferred by the computer. Ruby does.

And given that, I have no interest in giving up writing code. That's not the unpleasant part that I want AI to take off my hands. Just so I can — what? — become a project manager for a murder of AI crows? I've had the option to retreat up the manager ladder for most of my career, but I've steadily refused, because I really like writing Ruby! It's the most enjoyable part of the job!

That doesn't mean AI doesn't have a role to play when writing Ruby. I'm conversing and collaborating with LLMs all day long — looking up APIs, clarifying concepts, and asking stupid questions. AI is a superb pair programmer, but I'd retire before permanently handing it the keyboard to drive the code.

Maybe one day, wanting to write code will be a quaint concept. Like tending to horses for transportation in the modern world — done as a hobby but devoid of any economic value.

I don't think anyone knows just how far we can push the intelligence and creativity of these insatiable token munchers. And I wouldn't bet against their advance, but it's clear to me that a big part of their appeal to programmers is the wisdom that Ruby was founded on: Programming should favor and flatter the human.
  •  

我进入不了角色

几个同学,家人发来信息都问生了吗,我也都回了,却也没动力告诉其他关心的朋友,我就是开心不起来。我哥我嫂子在家人群里,满是恭喜或溢美之词,我不想理会;我姐问要不要给订束花,我不想回复,甚至感觉滑稽,又把电话发过来,我问她有时间听我唠叨吗?她说有,然后我情绪真的绷不住了,眼泪崩溃哭出了声,我不知道为什么,我和说我小时候就爱哭。你们都对着一个小孩子夸夸其谈,让我给你们不停的发照片,发视频。现在对这个陌生的甚至只见了一面的孩子,并没有比你们更熟悉一点,你们所有的恭喜都跟我无关,我媳妇昨天蹦蹦跳跳,谁知道过去的这一夜我们经历了什么,谁又看到她躺在平车上呼吸急促惊恐的样子。

我找不到那种开心的感觉,我也不知道自己该怎么做才能匹配他们的恭喜和赞美,也不知道过几天,我姑娘,也是我,该怎么面对那个刀疤

  •  

汉字的不可拼音化

今天看到了这样一个有趣的网站,理查德·西尔斯(Richard Sears),一个美国人,他花了 20 多年的时间整理了数万个甲骨文、金文和篆字的字形变体(包括 31000 多个甲骨文拓片、24000 多个金文铭文和 49000 多个篆书字形),并制作成了一个叫做字源的网站。打开网站之后,只需要输入一个汉字,点击一个按钮就能看到这个汉字在甲骨文,金文,篆体中的样子。

于是我想到了之前写过的一则笔记——「为什么汉字起源于象形而非拼音」。

汉字作为世界上最古老的仍在使用的文字系统之一,从其诞生之初就采用了以象形和表意为基础的系统,而非纯粹的拼音系统。这一特性的形成有着深刻的历史和语言学根源。

汉字在其起源时就是以图形和符号为基础,而非直接记录语音的拼音文本,其历史可追溯至远古时期。汉字最初可能源于原始图画,传说中虽有黄帝史官仓颉根据自然物体形状创造的故事,但现代学者普遍认为汉字系统是由古代先民在长期社会实践中集体智慧逐步形成的,而非一人一时所创。考古发现表明,最早的汉字雏形可能追溯至约 4800 年前的大汶口文化晚期陶器刻画符号等史前刻符,并在商朝(约公元前 1300 年开始)的甲骨文时期发展成为成熟的文字系统。这些早期文字主要通过直观的图像和符号来记录事物与概念,体现了典型的象形与表意特性。

汉字的构成方法,后人总结为「六书」原则:象形、指事、会意、形声、转注、假借。这些方法展现了汉字构造的多元性:

  • 象形、指事、会意主要围绕字形和意义构建字符;
  • 形声字(约占现代汉字的 80% 以上)则结合了表意的「形旁」和表音的「声旁」,创造出兼具形义的新字。

尽管包含了表音成分,但这种构造方式记录的是语素(有意义的音节)而非纯粹的语音流,与完全基于发音的拼音文字系统有着本质区别。例如,「臭」字在古代由表示鼻子的「自」和「犬」组合而成(会意),因为古人观察到狗的嗅觉灵敏,以此表达「气味」乃至后来的「难闻气味」之意。

汉语(尤其是其核心语素)具有显著的单音节特性,即一个字通常对应一个有意义的音节,这导致了语言中存在大量的同音字(或同音语素)。以现代标准汉语(普通话)为例,尽管有声母、韵母和声调的变化,但实际有效的带声调音节总数大约也只有 1200 到 1300 种左右。然而,汉字的数量却极为庞大,例如清代的《康熙字典》就收录了约四万七千个汉字,而现代大型汉语字典收录的汉字数量更多。

这种音节数量远少于文字数量的现象,必然导致大量同音字的存在。例如,发音为 "shì"(去声)的字,就有「是、事、市、世、视、适、士、势、试、释」等等,如果算上所有读作 "shi" 的音(包括四个声调),对应的汉字数量更为可观。若仅仅使用拼音(即使包含声调)来书写,将在很多情况下无法有效区分意义。

语言学家赵元任先生创作的《施氏食狮史》便是一个极端的例子:

石室诗士施氏,嗜狮,誓食十狮。施氏时时适市视狮。十时,适十狮适市。是时,适施氏适市。施氏视是十狮,恃矢势,使是十狮逝世。氏拾是十狮尸,适石室。石室湿,氏使侍拭石室。石室拭,氏始试食是十狮尸。食时,始识是十狮尸,实十石狮尸。试释是事。

全文九十余字皆读作 "shi" 的不同声调,仅凭拼音朗读几乎无法理解,但书写出来的汉字却文意清晰,生动地展示了汉字在区分同音语素上的优势。

虽然汉字的形体经历了漫长的演变,从甲骨文、金文到大篆、小篆,再到隶书、楷书等,字形发生了显著变化,但其作为语素文字(记录意义与声音相结合的语素)的核心特性始终保持了高度的连续性。这种连续性使得现代人通过专门学习,依然能够追溯部分现代汉字与数千年前殷商时期甲骨文的明确联系,一些高度象形的简单文字(如「日」、「月」、「山」、「水」等)的演变轨迹甚至能被普通人辨认出来,这体现了中华文明某种程度上未曾中断的特点,是许多其他古老文明的后继者难以企及的。

综上所述,汉字采用以形表意(或形音结合)的语素文字系统而非纯粹的拼音系统,是深深植根于汉语自身特点(尤其是同音语素繁多)的必然结果。这种系统能够:

  • 有效地区分同音词,保证书面信息的精确性;
  • 在一定程度上能够跨越不同地域、不同时代的语音差异(例如,不同方言区的人们虽口音不同,但能看懂相同的汉字书面语);
  • 承载丰富的文化信息和历史连续性。

这也解释了为何在历史上乃至现代,将汉语完全改造为拼音文字系统的各种尝试,虽然在注音、教学、信息处理等领域取得了重要应用,但最终都未能取代汉字本身——汉字系统的独特性质与文化承载决定了它难以被纯粹的拼音系统所完全替代。

清末民初,面对西方文化的冲击,在救亡图存的时代背景下,以鲁迅、瞿秋白等为代表的一批知识分子曾竭力主张汉字拼音化(罗马字母化),并认为汉字是文化落后的象征,是阻碍中国现代化的绊脚石。鲁迅甚至断言:「汉字不灭,中国必亡」。

虽说站在当今的视角去看待他们的观点,能够理解为矫枉必须过正。但这些主张中所反映出的「左派」的狂热,到底有多少不是被煽动的呢?「一声炮响」到底送来了些什么杂碎,自不必多言。

好在汉字不仅是一种书写工具,还是中华文明传承的载体。最终扛过了不堪回首的混乱年代,历久而弥新。


本文初稿在 Tana 上完成,这是一款通过将 AI 驱动的结构化数据库与流畅的大纲列表相结合的笔记软件,重新定义了现代知识管理,使用户能够无缝地组织相互关联的想法,同时保持自由形式思考的灵活性。

  •  

ImageFlow一款更适合个人使用的图床项目

ImageFlow 是一个为现代网站和应用程序设计的高效图像服务系统。它能根据设备类型自动提供最合适的图像,并支持 WebP 和 AVIF 等现代图像格式,显著提升网站性能和用户体验。

主要特性

  • API 密钥认证:安全的 API 密钥验证机制,保护您的图片上传功能
  • 自适应图像服务:根据设备类型(桌面端/移动端)自动提供横向或纵向图片
  • 现代格式支持:自动检测浏览器兼容性并提供 WebP 或 AVIF 格式图片
  • 图片过期功能:支持设置图片过期时间,过期后自动删除(支持本地和 S3 存储)
  • 简单的 API:通过简单的 API 调用获取随机图片,支持标签过滤
  • 用户友好的上传界面:支持拖拽上传,具有暗黑模式、实时预览和标签管理功能
  • 图片管理功能:通过直观的管理界面查看、筛选和删除图片
  • 自动图像处理:上传后自动检测图像方向并转换为多种格式
  • 异步处理:图像转换在后台进行,不影响主服务
  • 高性能:优化的网络性能以减少加载时间
  • 易于部署:简单的配置和部署流程
  • 多存储支持:支持本地存储和 S3 兼容存储(如 R2, 不支持MinIO
  • Redis 支持:可选的 Redis 集成,用于元数据和标签存储,提高性能

项目地址

快速部署

使用 docker compose 快速操作

  • 镜像: soyorins/imageflow
  • 国内镜像: ccr.ccs.tencentyun.com/k7scn/imageflow
git clone https://github.com/Yuri-NagaSaki/ImageFlow && cd ImageFlow

更新配置文件

cp .env.example .env
nano .env
# 主要修改API_KEY和存储方式,想快速体验建议填写local

示例.env

API_KEY=ohji8lob1Sagoh4shizooNe9oxif9pai
STORAGE_TYPE=local
LOCAL_STORAGE_PATH=static/images
CUSTOM_DOMAIN=
MAX_UPLOAD_COUNT=20
IMAGE_QUALITY=75
WORKER_THREADS=4
SPEED=5
WORKER_POOL_SIZE=4
# Debug Mode
DEBUG_MODE=false

启动

docker compose up -d
  • 目前版本存在 panic 问题,等后续版本修复, 可以使用 soyorins/imageflow:2.1.1 版本

常见参数设置

  • API_KEY, 用于保护上传和管理接口, 推荐使用 pwgen 32 1 生成
  • IMAGE_QUALITY, WebP 转换的质量设置, 数值范围 1-100, 越高表示质量越好,文件越大
  • SPEED, 范围:0-8 0-8,0=最慢/最高质量,8=最快/最低质量

如何使用

  • 打开 IP:8686 端口 输入你在 env 设置的 API_Key

  • 上传图片, 支持选择图片的过期时间,添加标签对图片进行分类,图片会自动转换为 WebP 和 AVIF 格式

  • 当删除图片时,所有相关格式(原始、WebP、AVIF)将同时被移除

  •  

运河水韵北仓门

本地公众号说城东门古运河两畔已整饬一新,网上搜了下。 近日,备受市民期待的古运河东门段城市更新迎来新进展,继年 […]
  •  

环京房价下跌

昨晚睡前看了眼贝壳,环京某个小区最近成交价3800多一平米,80多平,只需要36万。触目惊心呀,19年我去这个小区看过,少于17000一切免谈。卖点就是央企开发,品质保证。如今4000块钱不到,房价下跌压塌的都是一些怎样的人,他们又做错了什么?

手上还留有好多当年四处看房的宣传单和报价,一直没心思整理,明天出发去医院,准备开个新坑,再讲一下,我所经历的房价下跌的故事。

  •  

宝界晴澜映蠡畔

九〇后大妹子同事闪婚闪育,一年搞定人生五件事!(请至今单身的博友自觉面壁😌)今日她邀请亲朋好友去蠡湖畔宝界商会 […]
  •  

OneKey Pro & Classic 1S 双机评测:从旗舰到入门,哪一款更适合你?

✇Simon
作者Simon

特别九折优惠

通过下面购买链接购买,在结账时会自动添加优惠码APPDO,享受Onekey全线产品九五折优惠。

专属优惠链接:https://onekey.so/r/APPDO

个人补贴:作为Onekey大使,我将从我的分成中再补贴你 5%,做到九折优惠。请你购买后联系 Telegram Bot:@appdo_bot

Onekey是什么?

在正式开箱前,先来回答一个关键问题:OneKey 是什么?

OneKey 是一款华语区广受欢迎的硬件钱包品牌,主打「安全易用、生态完整、支持多端」的加密资产管理体验。它的核心理念是让更多用户以更低的门槛使用上专业级别的冷钱包工具,无论是新手入门还是资深用户都能找到适合自己的型号。OneKey 产品线支持二维码隔离、蓝牙通信、USB-C 连接等主流交互方式,并内置 EAL6+ 安全芯片,确保私钥始终离线保存,杜绝网络攻击风险。对于希望兼顾安全性与操作便利性的用户来说,OneKey 是冷钱包赛道中极具代表性的全场景解决方案。

OneKey Pro:从包装开始的旗舰安全体验

在当前硬件钱包市场中,用户常常需要在「安全性」与「易用性」之间做出权衡。OneKey 作为华语区知名的硬件钱包品牌,推出了 OneKey Pro 和 OneKey Classic 1S (以及新推出的Classic 1S Pure )两款产品,分别面向高端用户和入门用户。本文将从开箱体验、使用流程、适用场景等方面,对这两款产品进行详细评测,帮助用户根据自身需求做出选择。

DSC04264.jpg

OneKey Pro 的外包装采用全黑磨砂硬纸盒设计,正面印有产品渲染图与“Crypto Hardware Wallet”字样,简约而克制。在包装右下角,“EAL6+” 安全芯片认证标识清晰可见,为即将上手的用户传递出强烈的“安全”信号。

DSC04263.jpg

令人印象深刻的是,OneKey Pro 的包装并非简单纸盒,而是加装了塑封封膜和一次性撕拉胶条。这种设计不仅起到了防尘密封的作用,更重要的是它内嵌了自毁型防拆封设计——撕开即损的封条一旦断裂,将无法还原,用户可以一眼识别设备是否被提前开启,有效防止供应链攻击或中间人攻击带来的风险。

在硬件钱包领域,这种对“交付安全”细节的关注,体现出 OneKey 对产品从出厂到用户手中“全过程防护”的理念。对于追求极致安全的加密资产用户来说,这种开箱前的可验证性,已经是整个使用体验的重要组成部分。

DSC04268.jpg

撕开一次性封条,抽出内盒,映入眼帘的正是 OneKey Pro 本体。不仅外包装具备一次性撕毁封膜,OneKey Pro 在设备本体上也设置了专属安全封条。只要封条被揭开,表面图案会立即发生变化,用户可以一眼识别设备是否曾被开启或调包。这一机制确保了即便设备在海外仓储或跨境运输过程中遭遇海关开箱检查,用户依然可以在第一时间辨别设备完整性。

DSC04286.jpg

在本体之外,是一抹辨识度极高的荧光绿色——这是OneKey 的品牌代表色。绿色的封套内整齐收纳了所有随机附带物品,包括:

  • 编织工艺的 USB-C 数据线,这相比同类产品附送的普通数据线来说加长了使用寿命;

  • 三张助记词卡片,便于用户手写备份助记词;

  • 产品说明书,简洁明了地引导用户完成初始化流程;

  • OneKey 品牌贴纸,采用了镭射设计,为用户留出个性化装饰空间。

整个配件包装都有一种简洁的美感,延续了 OneKey 对安全与美学并重的理念。醒目的绿色传达视觉识别度,实用配件确保使用闭环,甚至连数据线的耐用性也未被忽视。

DSC04273.jpg

OneKey Pro有黑白两款可供选择,我收到的是经典的黑色款 。拿起OneKey Pro本体,纹理磨砂玻璃背板搭配光面铝合金设计 ,拿在手里感觉质感非常好,有点像高端智能手机的触感 。尺寸小巧,官方数据是 90.1 x 54.4 x 7.6 毫米,重量也只有65克 ,非常便携。

OneKey Pro最大的设计亮点就是采用了一块大尺寸触控屏幕,搭配高亮度显示和直观交互 UI,在离线签名、助记词生成等关键操作中,信息读取清晰直观。

DSC04296.jpg

背部配置有高清摄像头,支持扫描动态二维码,用于与 App 或网页钱包进行“Air-Gapped”通信。在交易授权时,用户只需将 OneKey Pro 对准屏幕,扫描页面生成的二维码,即可完成签名与授权,整个过程无须连接网络或插入数据线,有效避免 USB 通道劫持等常见攻击风险。

此外,OneKey Pro 还支持指纹解锁功能,生物识别信息储存在安全芯片中,进一步提高日常操作的便捷性与防护等级;支持Qi 无线充电,搭配给手机无线充电的底座,非常方便。

总的来说,OneKey Pro 的开箱体验非常棒。从包装的安全性到产品本身的设计和质感,都给人一种专业和高端的感觉。接下来,就该开始我的“Web3 作业”,好好设置一下这个新伙伴了!

DSC04294.jpg

拿起 OneKey Pro 本体,长按右侧电源键约 3~4 秒,屏幕随即点亮,进入初始设置界面。在选择系统语言后,正式进入钱包创建流程。

接下来,你可以选择「创建新钱包」或「恢复已有钱包」。作为全新设备,此处我们选择前者。OneKey Pro 将引导你选择助记词长度,推荐根据个人偏好选择,助记词越长,安全性越高。

确认后,设备将提示你设置 PIN 码,用于日常操作和交易签名时的身份验证。在PIN 设置完成后,OneKey Pro 会在屏幕上依次显示你的助记词。此时建议准备好包装盒中附带的助记词卡片,将每一个单词按顺序手动抄写下来。在助记词抄写完毕后,设备会要求你对其进行验证,确认你已完整备份。

⚠️ 重要提醒:这组助记词是你唯一的资产恢复方式,请务必离线保存,不要拍照或上传云端。一旦泄露,意味着你的资产将完全暴露。

DSC04299.jpg

在钱包创建完毕后,你可以选择将 OneKey Pro 与 OneKey App进行配对。使用包装内的数据线连接电脑,按照 App 指引完成识别与绑定。App 会显示当前钱包地址,OneKey Pro 屏幕也会同步显示相同地址,建议仔细核对两者是否一致,以排除中间人攻击等安全隐患。

到此为止,你的 OneKey Pro 就已经完成基础配置,可以正式进入资产管理与离线签名的安全操作流程。

实际使用体验

DSC04290.jpg

在完成初始设置之后,OneKey Pro 的正式使用环节显得格外丝滑且安心。它不仅延续了硬件钱包的核心优势——离线签名,更在二维码交互与蓝牙连接这两个方向上提供了不同层级的操作体验,满足从「冷存储」到「日常交易」的多样化需求。

二维码签名:极致离线,守住最后一道防线

OneKey Pro 支持完整的“Air-gapped”二维码签名流程。在需要进行交易授权时,App 会生成一个包含完整交易信息的动态二维码,用户只需使用 OneKey Pro 背部的摄像头扫描该二维码,随后设备会在本地生成签名后的二维码返回,用户再用 App 扫描回传即可完成广播。

整个过程没有蓝牙、没有 USB 线缆,甚至设备从未接入过网络。这种真正物理隔离的签名机制,大大降低了私钥遭遇远程攻击的风险,是长期持仓或执行高额交易时的首选交互方式。

这种模式更适用于专业投资者、DeFi 多签管理者等对「冷隔离」有高要求的用户。

蓝牙连接:操作流畅,适配日常交易节奏

对频繁使用加密资产的用户来说,蓝牙模式则显得更为高效。OneKey Pro 内置低功耗蓝牙模块,可与 OneKey App 快速配对,完成资产查看、交易发起、离线签名等操作。

例如在移动端发起转账后,App 会通过蓝牙将交易信息推送至 OneKey Pro,设备立即弹出核验界面,用户核对金额与地址无误后输入 PIN 或通过指纹识别完成签名,签名结果将自动回传至 App 并完成交易广播。

实际使用中,整个交互过程基本在 10~15 秒内完成,极具“即点即签”的响应速度。这种模式特别适合:高频转账、授权的 DeFi 用户;常用手机钱包进行资产管理的用户;需要在出行、移动场景中完成签名操作的用户。

蓝牙连接配对逻辑清晰,支持绑定设备名称识别、配对码确认等机制,确保链路安全。即使在蓝牙环境下,私钥依然始终保留在安全芯片内,不曾触网。

像Yubikey一样充当硬件钥匙

拥有Onekey 的产品就相当于同时拥有了Yubikey,它可以充当Yubikey密钥,成为你账户的硬件钥匙。值得一提的是,这个功能不仅是OneKey Pro享有,普通的 1S可以同样为你的账户保驾护航。

与同类产品比较:OneKey Pro 为何胜出?

DSC04338.jpg

在选择 OneKey Pro 之前,我也仔细研究了市面上其他几款主流硬件钱包,比如 Ledger、Trezor 和 Ellipal。它们各有特点,但在综合考量后,我认为 OneKey Pro 在以下几个方面更具吸引力:

顶级的安全配置

虽然 Ledger 和 Trezor 也是老牌硬件钱包,拥有不错的口碑,但在核心安全芯片的等级上,OneKey Pro 的 EAL 6+ 级别无疑更胜一筹。多颗安全芯片的配置也提供了额外的冗余和保障。

优秀的用户体验和功能性

OneKey Pro 拥有一个 3.5 英寸的彩色触摸大屏,操作直观便捷,比一些按键式操作的钱包体验要好很多。它支持指纹识别,不仅提升了安全性,也让日常操作更加方便快捷。同时,它支持蓝牙、USB 和摄像头(用于扫码)等多种连接方式,可以方便地与手机 App 或电脑客户端连接,管理资产非常灵活。它可以连接 Metamask 和 Rabby 等常用钱包插件,这对于 DeFi 用户来说非常友好。

全面的备份方案

DSC04314.jpg

OneKey Pro 支持使用 OneKey Lite 卡片进行助记词备份,这是一种基于 NFC 技术的备份方式,比传统的抄写助记词更便捷,也更易于安全保管。当然,在传统的助记词抄写备份的基础上,你还可以配合OneKey KeyTag 钛合金助记词备份板,这为追求极致安全的用户提供了更耐用的备份选择。

开源和社区支持

OneKey 的软件部分是开源的,这意味着代码接受社区的公开审计,透明度更高,也更容易发现和修复潜在的安全漏洞。同时,OneKey 拥有活跃的社区和较为完善的中文支持,对于国内用户来说,遇到问题更容易获得帮助。

持续创新和本土化优势

我从OneKey Mini就开始关注并且使用OneKey的产品了。OneKey 团队在产品功能和用户体验上持续投入研发,例如对多种公链和代币的支持、App 的不断迭代等。作为一家有中国背景的团队,OneKey 在产品设计和客户服务方面也更贴近中国用户的使用习惯。

当然,没有哪款产品是完美无缺的。但综合来看,OneKey Pro 在安全性、易用性、功能性和创新性之间取得了很好的平衡。它不仅拥有顶级的安全配置,还提供了流畅便捷的操作体验和丰富的功能支持。


OneKey Classic 1S:简约低调的性价比选择

DSC04326.jpg

由于Classic 1S和 Pro采用同样的设计语言,也配有自毁标签、安全封条等防供应链的安全手段,就连配件方面也和Pro保持一致,因此开箱部分不再赘述。

DSC04313.jpg

打开包装后首先看到的是 Classic 1S 设备本体,正面有一块小屏幕和几个实体按键,非常小巧轻薄,比我想象中还要精致一些。它虽然没有Pro的大屏交互,但依旧继承了 OneKey 家族核心的 EAL 6+ 安全芯片,更侧重于核心功能的实现和性价比,为更多人群提供了可靠的资产保护。

新成员:OneKey Classic 1S Pure (无电池版)

image.png

在撰写本文时,OneKey还推出了OneKey Classic 1S的无电池版本1S Pure。价格从 99 美元降低到了 79 美元。

无电池版本的推出,这意味着它在使用时必须通过 USB 连接供电。这样做的好处是进一步增加了设备的可靠性:消除了电池老化或故障带来的潜在问题。而去除电池后,成本也变得更低了,价格从 99 美元降低到了 79 美元。

对于那些主要在固定场所(例如家中或办公室的电脑旁)使用硬件钱包,并且对便携性要求不高的用户来说,Classic 1S Pure 版本可能是一个更纯粹、更经济的选择。它依然保留了 EAL 6+ 安全芯片的核心安全特性。


我该如何选择?针对不同人群的推荐

结合以上对 OneKey Classic 1S、OneKey Classic 1S Pure 以及 OneKey Pro 的分析,我为大家梳理一下针对不同人群的购买建议,希望能帮助大家做出更明智的选择:

追求顶级体验与全功能的用户 :

推荐一步到位,购买 OneKey Pro。

定位:你是加密资产的重度用户,管理着种类繁多或金额较大的资产,频繁进行 DeFi 交互、NFT 交易,或者对硬件钱包的交互体验有较高要求。

为什么选择 Pro:OneKey Pro 凭借其 3.5 英寸彩色触摸大屏提供了流畅直观的操作体验,类似于使用一部小型智能设备。指纹识别功能不仅增强了安全性,也使得解锁和授权交易更为便捷。内置摄像头方便扫描二维码进行转账或DApp连接,提升了操作效率。Pro 版本通常支持更广泛的币种和更复杂的链上交互,是追求极致功能和便捷性的用户的理想选择。虽然价格相对较高,但其提供的全面功能和优质体验物有所值。

注重核心安全与性价比,兼顾一定便携性的用户

推荐购买OneKey Classic 1S 标准版 ,也就是带电池的版本。

定位:你非常重视资产安全,希望拥有可靠的硬件钱包,但预算相对有限,或者认为 Pro 版本的某些高级功能对自己并非必需。你可能需要偶尔在外出时通过蓝牙连接手机 App 管理资产。

为什么选择 Classic 1S 标准版:Classic 1S 标准版同样配备了 EAL 6+ 安全芯片,在核心安全性上与 Pro 版本看齐。它通过实体按键操作,虽然不如触摸屏直观,但也足够清晰易用。内置电池和蓝牙功能使其具备一定的便携性,可以不依赖 USB 线连接手机 App 进行操作。对于大部分主流币种的管理和常规的转账签名需求,Classic 1S 标准版都能很好地满足,是一款性价比很高的选择。

追求极致性价比与简洁,主要在固定场所使用的用户

推荐购买OneKey Classic 1S Pure ,也就是无电池版本。

定位:你对硬件钱包的核心安全有刚需,但预算非常敏感,或者你主要在电脑旁使用硬件钱包,对便携性和蓝牙功能没有特别的要求。你偏好更轻薄、更“纯粹”的硬件设备。

为什么选择 Classic 1S Pure:Pure 版本在保留 EAL 6+ 安全芯片这一核心安全特性的前提下,取消了内置电池。这使得设备更加轻薄,也从根本上避免了电池老化带来的问题。由于必须通过 USB 连接供电和数据传输,它更适合在有电脑的固定环境中使用。如果你能接受这种使用方式,那么 Classic 1S Pure 将以更低的价格为你提供顶级的安全保障,是入门级用户或追求极致性价比用户的理想之选。 硬件钱包新手用户 (可从 Classic 1S Pure 或 Classic 1S 标准版入手):

写在最后

Onekey提供了本文所提到的所有产品,感谢Onekey的大力支持。

OneKey Pro 和 Classic 1S,就像冷钱包世界里的两位性格截然不同的守门人。

Pro 是那个全副武装、戒备森严的老朋友:指纹识别、安全芯片、无线充电、二维码签名……哪怕你把资产藏进深山,它也能默默守好那串助记词,一丝不苟,哪怕多按一个按钮,也宁可多一道防线。

而 1S,则是那个性价比拉满、轻量又可靠的新朋友:功能够用,配置不花哨,却足以覆盖日常使用场景,尤其适合刚刚开始认真对待加密资产的用户,作为第一台硬件钱包再合适不过。

安全、体验、价格,三者从不易兼得,但 OneKey 的这两款产品恰好在不同的侧重点之间,提供了一个令人满意的答案。你可以选择用 Pro 去构筑自己的“加密保险库”,也可以用 1S 搭建一个“够用、安心、不复杂”的资产安全起点。

选择哪一款,其实取决于你,和你想要把加密资产带到多远的地方。如果你正在寻找一款能够兼顾安全性、便捷性、可验证性的硬件钱包,OneKey的产品值得你认真考虑。

特别九折优惠

通过下面购买链接购买,在结账时会自动添加优惠码APPDO,享受 Onekey全线产品九五折优惠。

专属优惠链接:https://onekey.so/r/APPDO

个人补贴:作为Onekey大使,我将从我的分成中再补贴你 5%,做到九折优惠。请你购买后联系 Telegram Bot:@appdo_bot


Support on Patreon | 爱发电上赞助

  •  

FileCodeBox:告别网盘烦恼,安全高效的文件分享神器

在日常工作生活中,处理敏感项目文件时,担心文件被第三方泄露; 使用第三方网盘时还要下载客户端(客户端有时还给你偷跑流量,美名加速),有时下载还得开会员。如果有这些问题的话,我强烈安利一款开源利器——FileCodeBox!它开源、好用、安全,完美解决文件分享的各种难题,让你轻松搞定工作和生活中的文件传输。

开源地址

  • 代码仓库 vastsa/FileCodeBox
  • 镜像地址: lanol/filecodebox
  • 国内镜像: ccr.ccs.tencentyun.com/k7scn/filecodebox

三大优势,解决分享痛点

FileCodeBox 专为文件分享的痛点设计,简单几步就能让你的分享体验焕然一新

超快传输,省时省心

速度取决于你的网络带宽

  • 无大小限制:无论是高清设计稿还是海量项目文件,统统支持,轻松上传
  • 拖拽即传:无需压缩打包,直接拖文件到页面,秒速完成上传
  • 批量分享:支持多文件同时上传和分享,项目交付、团队协作 so easy!

安全可靠,隐私无忧

  • 加密保护:分享链接全程加密,只有指定接收者才能访问,杜绝泄露风险
  • 阅后即焚:支持设置文件过期时间,自动删除,防止资料被长期留存
  • 下载控制:可限制链接使用次数或者有效期,避免文件被恶意传播,敏感资料更安心

极致便捷,随时随地

  • 无需注册:凭码取件
  • 清爽体验:界面简洁

部署简单

要求

以下任选一个就行,我推荐使用腾讯云锐驰 200M,存储使用赠送的对象存储 😄

  • 有公网 IP 的服务器
  • 内网穿透走 cloudflare tunnels

PS: FileCodeBox 也支持对象存储,这里我就不推荐 MinIO 了直接使用本地存储就行,因为这个分享服务我定位是短期临时分享或者按次永久分享。

部署

  • docker-compose.yaml
version: "3"
services:
  filecodebox:
    image: lanol/filecodebox:latest
    # image: ccr.ccs.tencentyun.com/k7scn/filecodebox
    container_name: filecodebox
    volumes:
      - /data/filecodebox:/app/data
    ports:
      - "12345:12345"
    restart: always
  • caddy
kd.012321.best {
        import LOG "/var/log/caddy/kd.log"
        reverse_proxy 10.25.123.1:12345
}

分享文件

  • 打开网页,点击"分享文件"
  • 选择或拖拽文件
  • 设置过期时间和次数
  • 获取提取码

获取文件

  • 打开网页,输入提取码
  • 点击获取
  • 下载文件或查看文本

是不是用 FileCodeBox 分享文件,简单到不可思议。整个过程无需复杂操作,接收方也不需要注册,真正“即传即得”!

管理面板

访问 /#/admin
输入管理员密码 FileCodeBox2023, 登录后请立即修改

管理文件和配置

如果需要发送私密信息,建议自建请勿使用第三方服务,避免不必要的问题

最后想说

在数据安全越来越重要的今天,FileCodeBox 不仅是一款工具,更是一种自由、安全的文件分享方式。它让分享变得高效、可控,完美适配各种场景。如果你也厌倦了网盘的限速和收费,或为敏感文件的隐私问题担忧,FileCodeBox 绝对值得一试!
快部署你的 FileCodeBox,体验前所未有的文件分享自由吧!


  •  

日本旅游攻略:赴日前的准备与注意事项

✇Simon
作者Simon

写在前面

本文是《日本全境漫游计划》的试读部分,无需担心,你可以免费阅读本章节的全部内容。

《日本全境漫游计划》是一套以“地域 × 专题”方式深度解读日本的旅行指南,想写给第一次来日本的朋友,也写给那些已经走过很多次、仍想继续发掘惊喜的你。

《日本全境漫游计划》是由我执笔,已经上线少数派平台的共创项目,目前为试读阶段+反馈征集阶段,因此十分欢迎你在本文底部留下你的阅读反馈。

赴日前的准备与注意事项|行程开始前,你需要知道这些事

说走就走的旅行听起来浪漫,但在计划前往日本的旅途中,准备得越充分,旅途中的每一刻就越安心而从容。

无论你是第一次踏上这片土地还是重游故地,每一趟旅行都是一次全新的探索。比起单纯打包行李、订好机票,真正的出发,往往从细致入微的准备开始——办签证、查天气、装好交通卡App、学习几句实用日语…… 这些琐碎却关键的小事,正是让你自在畅游日本的秘诀。

本章节将带你一一梳理赴日前的实用准备,从最新的签证政策提示、交通攻略到日常交流小贴士,希望能帮你在启程前扫清所有「出发前的不安」。

第一部分:签证政策 & 入境须知

注:本节内容更新于 2025 年 4 月,请注意签证政策可能随时调整。所有签证申请资料及流程,请以日本驻华使领馆官方网站或其指定的签证代办机构为准。

出发前,请先确认你的签证类别

对于中国大陆游客而言,前往日本旅行需要事先办理签证。近年来,日本政府逐步推动电子化签证系统(JAPAN eVISA),为短期访问提供了更多便利。尤其是从 2024 年起,中国部分城市的居民可以通过线上申请「一次入境电子签证」,并新开设了 10 年多次往返签证。

由于笔者并非相关专业人士,再加上中国各地办理政策不同(如上海领区的日本签证办理条件相对宽松)、政策时效性变化大等原因,恕难在此列出详尽的签证要求。

但不论申请哪一类签证,都务必通过日本大使馆指定的正规旅行社进行办理。这些旅行社不仅承担签证资料的提交与审核,还必须负责签证行程的管理。如果你在电商平台上选择签证代办服务,请务必确认其是否为「挂靠」代办或中间商。制作虚假材料、选择非官方指定的旅行社办理有可能导致资料被退回,甚至签证被拒。

日本驻华大使馆公布的签证指定代理机构列表

观光签证常见申请资料 (以「一次短期个人观光」为例)

以下是 2024 年后日本使馆要求提交的主要材料 (适用于「一次短期观光签证」):

  • 护照原件
  • 贴好照片的签证申请表
  • 个人信息处理同意书
  • 能证明居住地的材料(如身份证、户口簿等)
  • 经济能力证明文件(如银行流水、在职收入)
  • 户口簿或亲属关系公证书(如为家庭成员同行)
  • 其它补充材料(如工作证明、邀请函等,根据具体情况由旅行社判断)

由于该部分可能存在时效性变化,且由于各领区具体规定也不相同 (无法跨领区申请),因此还请在官方页面或者指定的代理机构处确认:

日本驻华大使馆公布的办理签证所需要的常规材料

入境时需要注意什么?

虽然日本的 IT 系统很「拉胯」,但日本入境通关程序近年来确实变得更为高效。建议出发前注册 Visit Japan Web 系统,提前录入你的护照、航班与健康申报信息,抵达后可走快速通道。

此外,请注意以下几点:

  • 禁带物品包括某些药品(处方药需日文处方翻译)、动植物、肉类食品等;
  • 入境携带超过 100 万日元(或等值外币)需申报;
  • 如果没有注册 VJW 账户,请在飞机上拿取入境卡进行填写;如果忘记也没关系,在入境审查区同样可以填写。
  • 可以为了保险起见准备行程单,但日本作为旅游大国,海关 99.9% 的概率不会询问游客行程问题。
  • 如果你打算多次前往日本,或计划自驾、深度游,建议长期签证。虽然申请材料较多,但能省去未来反复申请的麻烦。

第二部分:行前准备指南

不只是订机票和办护照,那些让旅途更从容的小准备,也值得提前安排。

日本作为对旅游超级友好的国家,无需特别准备什么东西;你能想到的东西,基本都能在落地日本后买到,因此无需特别担心。但如果你的目的地是东京、大阪、福冈、札幌等大城市以外的地方,我还是建议你尽量提前准备好部分所需物品,因为在乡下交通不便,且能够购物的地方较少。

手机上网、支付方式:

网络连接方式

  • 实体SIM卡:这是最推荐的方式。个人比较推荐办理中国移动旗下的 CMLink,优点是全程中文办理,并且提供的是真实的日本号码,在日本可以拨打电话、接收短信以及流量上网;缺点是信号在城市内并不好,价格相对于电商平台较贵。如果只有流量需求的话,建议直接在国内电商平台购买、亦或者选择在日本的便利店内购买专供游客使用的流量卡,在机场、新宿等游客聚集的便利店均有出售。
  • 随身 Wi-Fi:适合多人同行,一般在机场租借较方便,但需注意电池容量与归还方式。
  • eSIM推荐:如果你手机支持eSIM功能,可以直接在线购买日本的 eSIM 卡,省时方便。

支付工具建议

image.png

在日本,各大支付运营商较多,往往生活在日本的人也不能拥有上图中的所有支付手段。但对于游客来说,仅需掌握以下几种即可:

  • 推荐使用 Suica 或 PASMO 电子版(可添加至 Apple Wallet 或 Google Pay):乘车必备,便利店、超市、自动贩卖机、部分餐厅也能使用。如果你使用 iPhone,可以直接提前开卡进行注册,支持国内的银联卡片直接充值。
  • 信用卡:主流的卡组织 Visa、MasterCard 以及美国运通、JCB 基本都可以,但极少数店铺会指定刷卡结算卡组织(比如秋叶原的某些女仆咖啡店?)。所以为了保险起见,最好准备两张不同卡组织的卡片。
  • 移动支付:日本全境范围内,主流便利店(711、罗森、全家等)都支持微信和支付宝付款;大型商场基本全部支持 Apple Pay。
  • 现金准备:在日本现金为王。虽然在东京、大阪这种城市基本可以实现「无纸化」,但还是有相当多的店铺仅支持现金付款,这在乡下(指东京大阪以外的任何地方)尤为常见。特别是如果你打算前往某个岛屿的时候,由于并不是所有 ATM 都支持银联取款,因此有必要常备现金出门。 此外,你还可以在微信支付、支付宝支付的时候提前领取汇率券以及日本当地的优惠券。在落地日本后,支付宝会自动切换成日本地区,在首页就有相关的优惠活动。

自动贩卖机的支付

日本作为自动贩卖机大国,无论是在城区亦或者偏僻的山村,你总能看到自动贩卖机的身影。一般来说,你可以直接使用硬币支付购买,这是最为基础、也是最保险的方式。但如果你恰巧没有现金,那么你可以尝试寻找支持移动支付的自动贩卖机。

自动贩卖机根据型号和厂商不同,支持的移动方式各有不同。在游客密集区域,一般支持的方式较多:微信、支付宝、西瓜卡、Apple Pay 等均可以付款。此外,你还可以下载 Coke ON 或者 ジハンピ 应用来进行支付,这两个 App 经常会有新用户活动,可以免费获取饮料。

衣物打包、季节建议

日本的气候四季分明,不同地区的温差也相当明显。不过你完全不用担心衣物的问题,因为日本当地的优衣库、MUJI 完全可以解决你的各种临时需求。因此在衣物方面,根据不同场景,你只需要注意这几点:

  • 如果你的行程都是城市场景:行前查询下目的地天气,随便带几件即可。
  • 如果你的行程中有徒步、露营等户外场景:请带好你的冲锋衣等户外功能性衣物,因为在日本购买户外产品并不便宜(尤其是露营用的小物件);如有临时需求,你也可以到 Montbell 这种平价户外店里购买。
  • 如果你的行程在梅雨季:折叠伞是旅行必备,日本天气变化快,雨具也常用得上。当然你也可以选择在日本便利店或者百元店购买雨伞。
  • 如果你的行程在冬季:北海道、东北等地常有暴雪,需准备防滑的户外鞋、防风保暖的机能外套。

日用品、药品携带

  • 常备药:感冒药、止泻药、过敏药、晕车药;在日本当地可以寻找松本清等药妆店购买。
  • 转换插头:日本统一电压为交流 110 伏。频率主要有两种,日本东部为 50 赫兹,西部(名古屋、京都、大阪等)为 60 赫兹。日本常见的插孔为两孔扁平插头,与国内基本通用,但请提前确认携带的设备是否为宽电压。一般来说,手机、MacBook 电脑等设备是可以在日本无障碍使用的,无需特别准备转换插头。
  • 收纳袋 & 洗衣袋:适合分装衣物、脏衣物;在胶囊旅馆或温泉旅馆较为有用。

无人机航拍的申报 特别需要指出的是,如果携带无人机航拍,请提前在日本国土交通省 DIPS 申报后导入飞行器;且在飞行时提前 2-3 月申请相关空域许可,二者缺一不可。个人建议是申报后如果没有空域许可,也不要在各种城市内飞行,风险过高,且大疆自带的禁飞区在日本显示并不准确。

具体规则和申报请参考:Drone/UAS Information Platform System 2.0

空域许可申请书以及DIPS网站的使用说明:DIPS User Guide / Manual

具体禁飞区可以下载 Drone Maps 查看。

第三部分:日本出行公共交通 & App 推荐

从成田机场到新宿车站、从地方电车到新干线,搞懂交通工具,是打开日本旅行地图的第一步。

image.png

很多初次来日本的旅人会对复杂的交通系统感到头痛,笔者当年初来乍到在新宿站转了一个小时也没找到山手线的入口在哪儿。

JR、电铁、地铁、巴士各自为政,车站如迷宫般庞大(比如新宿车站有 200 多个出口),票价计算也常让人一头雾水。但一旦摸清门道,你会发现,日本的公共交通系统其实高效、可靠;下载几个 App、准备一张交通卡,哪怕语言不通,也能畅行无阻。

如何高效分辨车站标识

日本的所有车站基本都遵守这样的标识规则,我们以东京地铁为例说明:

车站的标识由英文字母、罗马数字和带有颜色的外圈所构成。

通过查看标识可以方便地找到目的车站。车站标识规格统一,被使用在运行路线图、站台的设施等地方。

车站标识的使用

  • 可以通过车站标识的英文字母和罗马数字方便地找到目的车站。
  • 可以简单地计算出到换乘车站或目的车站的车站数。
  • 可以一目了然地确认是否乘坐了开往目标车站方向的列车。

车站标识的所在位置

image.png

在运行路线图、车站看板等处与车站名称一同表示(本部分摘自东京地铁中文官网)。

交通卡、周游券:游客出行的好帮手

Suica / PASMO / ICOCA / TOICA …

这些名字看起来像咒语,其实都是各地的交通 IC 卡。虽然由不同地区发行,但如今多数已全国通用,无论你在东京刷 Suica,还是在关西刷 ICOCA,大多数地铁、电车、巴士、便利店、自动贩卖机都能使用。

各种 PASS 周游券

为了促进旅游,日本想尽了诸多方式给予游客优惠政策,各种 PASS 周游券就是其中之一。这些 PASS 周游券用区域和天数划分,在规定时间内指定的公共交通可以无限次乘坐,好好利用的话就能省下不少钱。下面为大家介绍几个比较热门的PASS周游券:

JR 东日本 · 东北铁路周游券
image.png

推荐前往青森、秋田、仙台等东北地区的朋友购买。适用地区很广泛,从覆盖了关东地区的一部分、以及东北地区,但不适用于东海道新干线。目前分为 5 天的 PASS 和新增设的 10 天的 PASS,价格分别是 3 万日元和 4 万 8 千日元。

具体的使用范围、取票方式等可以参考中文网页

JR 北海道全境周游券

有效期间内可自由乘坐 JR 北海道线(不含北海道新干线)所有的列车,有效期分别是 5、7、10 天,价格分别为:2 万 3 千日元、2 万 9 千日元、3 万 7 千日元。周游券可以预购,会比正常票价便宜 1000日元。

需要说明的是,JR 北海道除去全境周游之外,还可以单独购买区域内的周游券,价格也便宜了不少,这对只想游玩固定区域的游客非常友好。

具体的使用范围、取票方式等可以参考中文网页

JR 东京广域周游券
image.png

有效期三天,价格为 1 万 5 千日元的东京圈周游券。非常适合想去轻井泽、宇都宫、富士山、伊豆等地的朋友。

具体的使用范围、取票方式等可以参考中文网页


由于日本针对游客的周游券众多,限于篇幅无法在本文全部列举。但几乎日本全境都有其对应的周游券,在旅途开始可以根据自己的行程规划和活动区域,选择最适合的周游券。

例如,如果主要在九州地区旅行,可以选择 JR 九州铁路周游券(全九州、北九州、南九州);如果计划游览大阪和京都,则有关西铁路周游券;四国等地也有各自的地区专用周游券;此外,部分热门景区还提供一日周游券(比如川越)。这些周游券都有其对应说明的中文网站,因此查询起来也很方便快捷。

购买方式也非常灵活:可以在出发前通过 JR 官方网站、海外代理或旅行社购买兑换券,抵达日本后在主要车站兑换成实体周游券;部分地区券还可直接在日本国内的指定窗口或自助售票机凭护照购买。使用时,只需在有效期内持票通过自动检票机或人工检票口即可进出车站,非常便利。

建议在出发前详细查阅各类周游券的适用范围、有效天数、价格及使用规则,合理搭配不同地区券与全国券,既能节省交通费用,又能让行程更加高效顺畅。

新干线的预约和使用

如果你不打算购买上述周游券,又有乘坐新干线的需求,那么你需要了解一个事实:日本的新干线由于归属不同的运营公司,因此在线上的购票是完全分开的,并不像国内只需在一个 App 上即可完成全国购票。

主要新干线运营公司与对应的预约方式如下:

JR 东日本(东北·北海道、上越、北陆、山形、秋田)

  • App 推荐:えきねっと(ekinet)
  • 支持线上预约、指定座席、车票变更
  • 可用信用卡付款,有英文界面

JR东海(东海道、山阳和九州)

  • App 推荐:smartEX APP
  • 可预约东海道新干线(即关西到关东,起于东京站、迄于新大阪站,串连东京、名古屋、大阪)
  • 外国游客亦可注册,但需到英文官网,支持海外信用卡绑定 此外还有各地的区域专用 App 和预约方式,比如 JR 九州也有自己的网站和 App,但只能购买九州范围内的新干线…… 总之说起来十分复杂。

上述这些网络购票方式,即使在日本生活多年,如果不经常出门的话也往往搞不清楚。因此,对于游客最简单便捷的方式就是直接去车站窗口购票,或者在车站自助售票机解决。

包车的注意事项

在北海道等出行不便的地方,对于预算充足的朋友来说,包车可能是前往景点的高效选择。

在这里笔者想请大家注意的是,无论你通过旅游平台还是私人途径包车,都需要认准「绿牌」车辆。因为只有「绿牌」车辆是日本营运车辆的标志,选择「绿牌」车辆,意味着你选择的是合法注册并接受监管的运输公司;而使用非「绿牌」车辆提供的所谓「包车」服务,往往存在很大问题,比如非法运营、安全隐患和保险不足等重大风险。

此外,你还可以查询旅行地当地的出租车包车政策,比如鸟取县就在 2024 年推出了针对游客的「周游计程车」:只要 4000 日元即可 3 小时包车畅游鸟取砂丘、白兔神社、若樱铁道、柯南机场等知名景点,共 23 条路线任选。

换乘导航 App 推荐:地铁巴士再多也不怕迷路

  • 乘換案内 (支持中文) 日本人也在用的老牌 App App 内有广告,内置付费项目
  • Google Maps (支持中文) 简单好用,不付费、无广告,涵盖地铁、电车、巴士等所有路线 适合快速查询,但票价与站名偶尔会有微小出入,建议交叉确认
  • NAVITIME (日文,面向日本人) / Japan Travel (中文,面向游客) 中文精准度高,支持站名模糊输入 App 内有广告,内置付费项目

补充说明:步行导航建议使用 Google Maps 或者iPhone 自带的地图导航即可。

第四部分:日本自驾出行 & App 推荐

虽然日本以高效的公共交通闻名,但想深入探索乡间、海岸线、森林秘境或是那些「电车到不了的景点」,租车自驾会是一种更自由、也更独特的旅行方式。尤其在北海道、冲绳、九州等地,自驾几乎已成为「体验本地生活」的关键手段。

当然,日本的交通规则、安全意识、导航系统也与国内略有不同。在这一部分,笔者将帮你梳理清楚从驾照准备、租车流程,到必备导航 App 与驾驶注意事项,带你顺利上路。

国际驾照

如果你是中国驾照持有者,不能直接在日本开车。你需要持有「日内瓦道路交通公约」认可的国际 ID 护照才可以合法租车。你可以考虑在日本、韩国亦或是新加坡等地考取该驾照,但具体操作不在本文覆盖的范畴内,请自行查询。

租车平台

日本租车行业十分规范、成熟,且本土消费者也习惯在日本租车旅行。在日本街头,经常能看到 わ 牌车辆出行,这些 わ 牌车辆就是租车的专用牌照;如果你租的车不是 わ 牌(冲绳等地也有 れ 牌),那么意味着该租车行为大概率不合法。

在日本租车,请尽量使用大牌租车行提供的车辆,一来流程规范、车辆整备好;二来也避免产生法律风险。以下是几个在日本人尽皆知的租车公司:

  • Times Car:网点遍布全国、共享汽车支持手机解锁、价格相对便宜,代表车型是马自达。
  • Toyota Rent a Car:丰田旗下的租车公司,代表车型是丰田旗下的各种车,包括雷克萨斯。
  • Nippon Rent-A-Car:日本本土老牌租车公司,代表车型是斯巴鲁。

大多数租车平台均支持以下服务:

  • 支持选配雪地胎、选择四驱车
  • 可以租赁 ETC卡(自动高速收费)
  • 提供多种保险选项,建议购买附带「NOC」的全险套餐

驾车导航推荐 App

对于游客来说,由于车辆内置导航大多为日语,因此最好选择支持 CarPlay 的车型,这样可以连接手机使用导航,方便快捷。如果车辆不支持 CarPlay,也可以尝试使用以下几款软件进行手机导航:

  • Google Maps:支持中文,基本准确,但对东京等大城市的复杂线路导航较差,但在乡下基本准确;
  • Apple Maps:支持中文,基本准确,但建议将内置语言显示为日语,播报语音为中文;
  • Yahoo!カーナビ(Yahoo! Car Navi):日本本地用户的选择,实时路况精准,全日文。
  • COCCHi:付费导航但可免费体验两周,支持推荐走行车道以及提前播报第几个红绿灯后转向,支持推荐自身车型宽度的车道,可播报停车场是否满车、甚至支持查询每栋楼的住户姓氏(主要给配送人员使用)。仅支持日语播报,但显示简单易懂。

日本开车须知:和国内有什么不同?

  • 靠左行驶:方向盘在右侧,雨刷器和转向灯和国内也是相反的,转弯需特别注意不要逆向行驶。
  • 红灯禁止转向:红灯状态下有绿色方向箭头的情况除外。
  • 行人优先:要绝对礼让行人,这是日本驾驶的重要规则之一。
  • 路权车优先:日本驾驶非常讲究路权,右转需让左转,左转需让直行,路权优先的一方默认优先通行。
  • 停车规范:大部分城市禁止路边停车,请使用「计时停车场」或「投币停车场」。
  • 山路较多:无论日本高速还是国道,都有很多弯道需要特别注意;日本窄路非常多,也需多加注意。
  • 注意停止标识:日本道路狭窄,很多路口不设置信号灯,但会在路口设置红色「とまれ」标识,代表一定要停车让行。这是非常重要的一点,每年都有游客自驾因为「とまれ」没停而发生严重事故。
  • 双闪感谢:在交替通行或者车辆谦让过程中,往往被谦让的车辆会打双闪表示感谢。但根据地域驾驶习惯不同,并不是所有车辆都会双闪感谢。
  • 铁道口停车确认:在通过无人看守的铁路道口或标志的道口时必须执行停车确认四周的操作。
  • 默认超速:通常来说,日本车辆不会按照道路标识的时速行驶,而是会大于标识速度的 10-20 左右的时速行驶,甚至更快。作为游客来说,请尽量不要超速并在慢车道行驶
  • 自助加油:日本有很多加油站采取自助加油的方式,在加油的时候一定要确认自己加油的种类。

当你开车穿越雾中的阿苏火山,沿着能登半岛海岸线缓缓行驶,或是在冲绳的滨海公路上看日落——这些都是坐电车无法抵达的风景。只要准备妥当、遵守规则,自驾将成为你深入日本土地、发现小众惊喜的利器。

第五部分:日本食住餐厅酒店预定 & App 推荐

餐厅预订 App 推荐:吃得好,玩得巧

日本是个预约为先的国家,很多非连锁的餐厅实施预约制,但也恰恰是这些小店的口味更为独特,因此要想品尝到这些美食,事前预约非常重要。

  • 食べログ(Tabelog) 日本最权威的美食评分平台,类似大众点评,日本本地用户数多,评分真实。可按评分、距离、营业时间等筛选,附有菜单照片与预约链接。

近年开始提供中文服务,甚至推出了微信小程序,还可以用中文预约餐厅。

  • Google Maps 综合性平台,可以列出店铺的可供预约的不同平台。直接列出店铺官网,可以直接指向官网预约(有些店铺只能自家官网预约)。

  • ぐるなび / Hot Pepper 更注重优惠与团体用餐预约,可获取折扣券或线上订座。Hot Pepper Beauty 可用来预约日本的美容院、理发店

日本住宿预订解析:哪种适合你?

一趟惬意的旅程,从一晚舒适的睡眠开始。日本的住宿选择种类繁多,从都市商务酒店到乡间温泉旅馆,从别致民宿到胶囊旅馆,应有尽有。由于篇幅限制,在这里仅做酒店的简单介绍。

  • 快捷商务酒店 城市中最常见的住宿类型,价格合理、交通便利,适合重视性价比的游客。常见的品牌有:东横 INN、Super Hotel、Dormy Inn、Route Inn、Daiwa Roynet Hotel 等。特点是房间一般较小但五脏俱全,普遍配有浴缸、加湿器、睡衣。

从个人角度来说,我更推荐 Dormy Inn,主打性价比的同时,酒店还附带有温泉以及免费的夜宵拉面,这对于预算不多的旅行者来说非常适合。

  • 温泉旅馆 想体验和式榻榻米、穿浴衣泡汤?那就别错过这一类。特点是一般价格偏高,部分风景优美的同时位置偏僻,需要提前查看是否提供免费接驳车。多含一泊二食,服务讲究,适合放慢节奏的旅程。

这种酒店相对知名的连锁品牌有大江戸温泉物語、亀の井ホテル等,价格也相对合理,服务也较为全面。剩下的基本都是独立的温泉酒店,价格差距较大。如果预算有限的话而又想体验温泉的话,可以寻找一些可以「日归」的温泉酒店,这样省钱的同时也体验了温泉项目。

  • 民宿 / Airbnb / Guesthouse 与当地生活更贴近,适合家庭出行或结伴旅行。特点是空间大、可自炊,有些可体验「町家」(有百年历史的日式老屋),需注意和日本房东的寒暄、以及是否是无接触式入住(有些是与房东交接)。

  • 高端酒店 以星野集团旗下的虹夕诺雅、界为代表的日本本土高端住宿品牌,以及如安缦、丽思卡尔顿、柏悦等国际顶级酒店,共同构成了日本「奢华旅宿」的天花板。

  • 以星野集团为例,强调「在地文化融合」,每一家酒店都融入当地风景与风俗:

  • 虹夕诺雅京都,隐于鸭川边的山林间,需乘小船才能抵达;

  • 虹夕诺雅富士,是以「森林露营」为概念设计的野奢酒店;

  • 界系列则更偏「高端温泉旅馆」,适合想沉浸式体验日本风情的旅行者。

国际高端品牌则多集中于大城市,如东京、大阪、京都等地,主打城市景观与高端服务。比如东京的安缦酒店位于大手町塔之巅,是不少商务旅客与名人指定入住的酒店,非常适合想兼顾高端住宿与文化体验的旅人。

住宿预订平台推荐

  • Agoda / Booking / Trip:界面中文友好、支持支付宝 / 微信支付、取消政策灵活。
  • じゃらん / Rakuten Travel:日本本地用户最常用的预订平台,有时会有独家优惠,但对于游客来说预定困难。
  • Airbnb:适合寻找特色住所,但需注意查看是否「正规登记民宿」(有备案编号)。

无论在哪家平台预定来说,比价是最重要的环节。笔者一般会在谷歌地图中搜索想预定的酒店,谷歌地图会自动将该酒店不同平台的价格显示出来,方便对比。

预订时请特别注意以下几点:

  • 查清「是否含税」与「是否含早餐」:日本不少住宿会在总价之外加上「住宿税」或者「入汤税」(会在入住时缴纳),部分城市还会收取额外「市税」。
  • 单人 / 双人订房的价格区别:在日本,同一间房型,一人入住和两人入住的价格是不同的,请务必注意。
  • 确认退改政策:特别是在樱花季、红叶季或大型活动期间,很多住宿「一经预订不可退款」,请务必看清条款。
  • 优先选择「车站步行 10 分钟内」:特别是在携带大件行李时,住宿地点离车站远会大大增加负担。有些酒店会提供免费的接送服务,请提前和酒店确认。
  • 注意分辨环保选项:部分日本酒店提供「环保计划」选项,价格会比其它房屋选项低。「环保计划」是不提供房屋清扫服务的(或者降低房屋清扫频率),请提前确认。
  • 注意 Check-in / out 时间与门禁制度:日本酒店一般不提供提前入住的服务,因此最好在酒店规定的 Check-in 时间后入住;请在 Check-out 时间之前退房,否则有可能收取额外的费用,与国内不同,日本多数酒店的退房时间为上午 10:00。此外,有些传统旅馆或民宿晚上 10 点后可能不接受入住(笔者就经历过抵达后前台已经下班了),请提前联系沟通。

第六部分:日本天气、节庆日历

四季分明的日本,每一段时间都藏着专属的风景与仪式感。选对时间,便选对了旅行的节奏。

在日本旅行,「什么时候来」往往比「去哪里」更重要。春看樱、夏赏祭、秋观枫、冬滑雪,几乎每一个月都有理由让人动身。而不同季节的气候、穿搭需求、活动安排,也各有讲究。本章将从一年四季的气候特点出发,为你呈现一份结合天气、节庆、穿衣建议的旅行月历。

春季:3 月下旬至 4 月中旬

关键词:樱花、初春、户外散策 看点:东京、京都、大阪、奈良等地的樱花陆续满开,公园、河岸、古寺都是热门赏樱地。 气候:白天温暖、早晚微凉,建议穿风衣 + 长袖内搭。 小贴士:避开日本「学校春假」(3月下旬 - 4月初),更容易拍到人少的樱景;热门城市需提前至少 1 个月订房

秋季:10 月下旬至 11 月中旬

关键词:红叶、温泉、文化季 看点:京都的东福寺、岚山;长野的上高地、户隐;东京近郊的高尾山、箱根枫叶。 气候:干燥清爽,是全年气温最舒适的旅行季节 小贴士:秋季适合「赏枫 + 泡汤」组合,别忘了携带风衣和薄围巾以防早晚微寒。

冬季:12 月中旬至 2 月

关键词:雪景、滑雪、灯光祭 看点:北海道、东北、新潟、白马等地雪景壮观,适合滑雪或泡雪中温泉;札幌、神户等城市点灯活动温暖人心。 气候:北国极寒,东京以南则较为温和但干冷。 小贴士:雪地行走注意鞋底防滑;滑雪场附近住宿热门,建议节前预订。

特别推荐:夏季祭典、烟火大会(7 月 - 8 月)

关键词:热浪、浴衣、祭典 看点:东京隅田川、长冈、琵琶湖等大型烟火大会,阿波舞、祇园祭、仙台七夕祭气氛热烈。 气候:炎热潮湿,日晒强烈。 小贴士:注意防晒、防蚊、补水;烟火大会现场人多,建议提前踩点或预约席位。

旅行建议 :如何避开人潮?

尽量避开日本「连休」:黄金周(4 - 5月初)、盂兰盆节(8 月中旬)、年末年始(12 月底至 1 月初) 如果你想避开游客人潮,那就尽量选择九州、东北、北海道等地广人稀的地方,往往能遇见安静又温柔的日本 如果你想找到更多、更为详细的活动内容,欢迎访问日本国家旅游局面向中国游客开设的旅游网站。

你可以按照自己的喜好亦或者地域查找日本相关的活动介绍,网站为官方中文,查找起来也非常方便。

从樱花初绽到红叶尽染,从雪中灯光到夏夜烟火,日本的时间是有颜色的。愿你不只是「计划旅行」,而是「选择属于你自己的季节」。

第七部分:日本便利设施、应急对策

一场顺利的旅行,既需要好风景,也需要在突发状况时「有备无患」。

旅行中总有一些突发的小插曲:迷路、轻微感冒、手机没电、护照不见了…… 别急,日本的便利设施非常发达,只要了解基本应对方式,就能把「意外」迅速化解,不让它们影响旅途的好心情。

便利店:比你想象得更万能

日本的便利店不仅是买饭团的地方,更是旅行者的「微型补给站」。

你可以在这里:

  • 缴费 / 取现金(大多数店内有 ATM,支持部分海外银行卡)。
  • 打印 / 复印 / 扫描文件(如护照复印件、行程单打印等)。
  • 寄送快递、买车票、购买演唱会门票。
  • 购买应急用品(创可贴、口罩、常见感冒药、数据线、租借充电宝)。
  • 购买简易便当并热饭、简易用餐、借用厕所等

生病怎么办?在日本看病的简要流程指南

  • 小病建议先去药妆店询问(如松本清等),店员多数受过基础药剂培训。
  • 如果症状较重,建议前往门诊诊所(クリニック)或综合医院(病院)。
  • 无需预约的急诊医院会有「急患」或「休日診療」等字样。
  • 持有护照可就诊,但需全额自费支付医疗费用(建议提前购买含医疗保障的旅行保险)。

语言不通怎么办?

一般来说,作为消费者、观光者,在日本的大都市内几乎不可能遇到语音障碍。大多餐厅都配有中文或者英文菜单,99.9% 的大型商场都配有中文店员,日本人也基本上都可以进行简单的英语交流。但如果你的目的地是村镇,那么的确很有可能遇到交流障碍,你可以尝试以下办法:

  • 日本最不缺的就是中国店员,可直接询问是否有中国店员。
  • 尝试利用手机自带的翻译软件翻译、拍照识图翻译,但笔者更为推荐使用 ChatGPT等 AI 翻译,在针对更为复杂的文本环境如菜单等会更为精准及便于理解。
  • 很多车站、观光设施设有多语言观光窗口(Tourist Information),可提供英语 / 中文协助。
  • 拨打多语种服务热线:050-3816-2787(Japan Visitor Hotline),提供 24 小时、365 天中文服务

地震等自然灾害的基本应对

日本是地震频发国家,旅行中可能遇到小规模地震或台风预警。iPhone 已经接入日本国家地震局系统,如遇地震会自动播报。如果你用的是 Android 手机,你还可以下载各种防災アプリ,安装后也会进行地震播报。

  • 若遇地震,保持冷静、避免使用电梯。
  • 留意手机上的紧急推送(日本政府会以震度 / 避难信息推送)。
  • 听从酒店或地铁站工作人员指示,有需要可前往指定避难所(避難所)。
  • 遇极端气象(如台风),建议提前调整行程,避免山区与海岸线区域。

由于日本的建筑防震等级都做的不错,因此多数情况下不必担心。如果遇到紧急情况,也请冷静地跟随周围的日本人一起行动(日本人从小就会不停地接受防灾教育,因此此时跟随他们行动是最推荐的方式)。

结语

一场旅行真正的开始,从来不只是打开航班 App、刷下那张特价机票…… 真正重要的,是在出发之前,你有没有好好问过自己:我准备好了吗?

办好签证只是第一步。落地后的第一站路线、行李里的雨具、常用药品、备用证件复印件…… 这些看似琐碎的事,也许才是决定旅行是否顺利的关键变量。而当你真的站在机场出发口、踏上陌生城市的电车、推开一家深夜营业的便利店时,你会感谢此刻冷静的自己——因为准备得越充分,旅途中的每一步就越自由。

旅行无法被完全预测,但可以被好好预备。希望这一章,能为你即将开启的日本之旅,打下一个坚定的起点。

关于本栏目

未标题-2.jpg

五年前,我第一次独自走进日本。我喜欢一边旅行一边观察,喜欢泡地方温泉、拍地方电车、逛人不多的商店街。每一次次踏上新的土地,我开始用文字记录下这些旅程的片段,在少数派上慢慢构筑起《日本浮生录》系列。那是一部不断更新的个人游记,也是一种试图捕捉“日本日常之美”的方式。

写着写着,我渐渐意识到,光是游记式的分享还不够。而做这本《日本全境漫游指南》,是我一直以来的念头。我希望,这本指南不再拘泥于游记的形式,而是更加全面地、系统地介绍日本。它是一次从“浮生”走向“实用”的延伸,不同于一般“打卡式”路线推荐亦或者是“碎片化”的旅游攻略,这本栏目更像是一位熟门熟路的旅伴,从点滴开始,一边为你指路,一边轻声说:“这个地方,别急着走。”我希望它不止是一本“看完一次就搁置”的攻略,而是一本你每次出发前都会想翻一翻的小手册。

这本指南,写给第一次来日本、却不想走马观花的你;也写给那些去了很多次,却还想继续深入、继续发现的旅人。

writer.jpg
《日本全境漫游计划》希望做一份常旅之人也愿收藏的攻略书,共创页面:https://sspai.com/create/tour-guide-for-japan

Support on Patreon | 爱发电上赞助

  •  

读《洗澡》《洗澡之后》

今天看完杨绛的《洗澡》和《洗澡之后》,整体感觉很一般,而且对作者的三观也不敢苟同,之前看她写的《我们仨》还没发觉她的思想有多奇怪。

本书将许彦成、姚宓和罗厚视为正面人物来写。罗厚为人热情正直,为了姚宓家的事情尽心尽力,忙前忙后。姚宓是一个性格执拗又清冷的小姐。最不能让人接受的是许彦成这个人物,真是让人匪夷所思,他的老婆杜丽琳家境优渥,相貌出众,从书中也看不出有什么明显缺点错处,作者总是强调她“俗”,但具体也没体现“俗”在哪里?芸芸众生哪个不是俗人呢?然而她偏偏没办法让许彦成动情。既然许彦成不喜欢她,又不拒绝,同意结婚,生下女儿又放养在异地,不管不顾老婆思女之情。在婆媳碰面时,他赶忙躲去别人家里,完全搞不清自己的身份和责任。留学期间许彦成对他老婆提出的关于学业和事业发展的合理化建议,包括在被“洗澡”时的提议全部否决,摆出一条路走到黑的架势。

也搞不懂姚宓吸引许彦成的地方在哪里?让许彦成婚内忍不住向其求婚。整天道貌岸然,在工作和生活的明面,和姚宓保持距离,没有给予什么帮助,背地里又朝思暮想、魂不守舍,精神出轨难道不是出轨?姚宓虽然做出一副正人君子样子,张口闭口不破坏别人婚姻,她又何尝不知道许彦成的心思,还默许和他在偏僻的书房经常密会、书信往来,甚至聊天时亲密趴在男方身上。

更奇葩的是作者为了担心别人写续集,竟然生拉硬扯安排杜丽琳去外省下放,毫无逻辑和一个轻浮的男知青好上了。作者煞费苦心如此安排,就是让女方出轨在前,俩人顺利离婚后,许彦成可以和姚宓结婚,从此幸福生活在四合院中。对于这种结局,作者在文末竟然还不由自鸣得意起来。续集没有巴掌大没有巴掌厚,行距宽字体大,一本小书竟然定价近30元,给人一种狗尾续貂、画蛇添足的感觉,何况《洗澡》也谈不上是“貂”。

本以为《洗澡》会深刻写出知识分子的思想改造,然而此部分篇幅很少,写的也很浅薄。两本书大部分都是很无聊的日常琐事,读起来不仅浪费时间,如购买来看还浪费金钱。

  •  

安利一下我最近写的两个caddy插件

我个人 Caddy 粉哈,习惯 Caddy 一梭子,从我历史博客中就可以看出来。最近写了两个 Caddy 的插件,geocngfw.

源码及镜像

源码 ysicing/dockerfiles#caddy

以下是我构建好的镜像,可以根据自己的环境拉取

  • ysicing/caddy2
  • ghcr.io/ysicing/caddy2
  • registry.cn-beijing.aliyuncs.com/k7scn/caddy2
  • ccr.ccs.tencentyun.com/k7scn/caddy2

源码构建

需要 go 环境了

go install github.com/caddyserver/xcaddy/cmd/xcaddy@latest
xcaddy build \
    --with github.com/caddyserver/jsonc-adapter \
    --with github.com/caddy-dns/cloudflare \
    --with github.com/caddy-dns/tencentcloud \
    --with github.com/caddy-dns/alidns \
    --with github.com/ysicing/caddy2-geocn \
    --with github.com/ysicing/caddy2-gfw \
    --with github.com/mholt/caddy-dynamicdns \
    --with github.com/mholt/caddy-events-exec \
    --with github.com/WeidiDeng/caddy-cloudflare-ip \
    --with github.com/xcaddyplugins/caddy-trusted-cloudfront \
    --with github.com/mholt/caddy-l4 \
    --with github.com/mholt/caddy-webdav \
    --with github.com/mholt/caddy-ratelimit

插件 geocn

  • 源码:https://github.com/ysicing/caddy2-geocn
  • 用途:识别来源 ip 是否为中国 ip,我的大部分服务都开启了这个,只针对大陆放行,甚至部分服务只针对部分省市(误判比较大,后续有需要也可以开源 😄)
@china {
		geocn 
	}
	file_server @china {
		root ./docker/example/deny
	}

上面是默认参考,正常情况下不需要调整,GeoIP 数据源来自 Hackl0us/GeoIP2-CN,支持自定义

geocn {
 georemote 你的自定义地址
}

插件 gfw

{
    order gfw before respond
}

:80 {
    gfw {
        # 基本规则配置
        block_rule ip:1.2.3.4
        block_rule url:/admin
        block_rule ua:curl
        block_rule_file /path/to/rules.txt
        ttl 24h

        # 额外安全检测(默认关闭)
        enable_extra true
    }
}

目前是所有实例共享黑名单的,命中就 1 天黑名单直接返回 403,之前想的是命中后触发 hook 执行 iptables 封禁 ip,但是容器跑的好像不太方便。

最后

大家对 Caddy 插件有什么的需求或者想法么?


  •  

崇安刹那镜浮光

5月3日,借着去城里大世界影城看低配版复仇者联盟的契机,自个儿拿着GR在对面崇安寺步行街区city walk了 […]
  •  

碎碎念之目标与你

最近很少想写东西,笔记本也搁置了,只有台式机还在用,除了上班,就是和一些织友约会,我刚认识的这个织友是法国移民过来的,简直针对我的情况,真挺好!
  •  

本地实现HEXO文章AI摘要

五一假期结束啦!这五天啥也没干,就在宿舍敲代码,都快无聊死了,恰逢找到了一些免费API,就自己实现一个AI摘要吧!利用API生成摘要文本放在文章头部,再通过hexo进行渲染就好啦!
  •  

轻松部署 Alist + MinIO,打造你的专属私人网盘

还在为网盘限速、空间不足而焦虑?想要一个安全、快速、完全掌控的私人网盘?今天带你一步步用 Alist 结合 MinIO,快速搭建一个高性能的私人云存储,文件管理从此自由无忧!

部署非常简单,也很适合内网私有化部署。另外这也是一个开源项目,社区灵活度特别高,对接的存储类型非常丰富,但是本文还是着重写写对接 minio。今天的音频调了几版,目前这版相关好点

什么是 Alist 和 MinIO?

  • Alist:一款开源免费的目录列表程序,支持挂载多种存储(如本地存储、云盘、对象存储等),提供简洁美观的界面,支持文件预览、下载、分享等功能。简单来说,它是你文件管理的“超级中枢”。
  • MinIO:一个高性能、分布式的对象存储服务,兼容 S3 协议,适合搭建私有云存储。相比第三方网盘,MinIO 让你完全掌控数据,安全又高效。

通过 Alist + MinIO 的组合,你可以轻松打造一个私有网盘,享受无限存储空间和极速访问体验!

Alist + MinIO 的优势

  • 多存储支持:Alist 支持 MinIO、本地存储、OneDrive、阿里云盘等多种存储方式,灵活扩展。
  • 简洁易用:Alist 界面美观直观,操作简单。
  • 高性能:MinIO 提供企业级的对象存储性能,适合大文件存储和高速访问。
  • 安全可靠:数据存储在你自己的服务器上,隐私有保障。
  • 开源免费:Alist 和 MinIO 均为开源项目,自由使用,社区活跃。

部署步骤:Alist + MinIO 一键搞定

以下以 Docker 部署为例,带你快速搭建 Alist 和 MinIO 的组合。这里就跳过 MinIO 部署相关了,之前也讲过,可以查看我之前写的文章:

准备工作

  • 准备好 MinIO 的账号即可,有存储视频资源最好不过

镜像

根据实际情况来,默认 aio 镜像已经包含本地存储缩略图 ffmpeg 和离线下载 aria2, 后面需要用的上

  • xhofe/alist:main-aio
  • 国内镜像 ccr.ccs.tencentyun.com/k7scn/alist:main-aio

创建 docker compose 文件

  • docker-compose.yml
services:
  alist:
    image: xhofe/alist:main-aio
    # image: ccr.ccs.tencentyun.com/k7scn/alist:main-aio
    container_name: alist
    ports:
      - "5244:5244"
    volumes:
      - /data/alist:/opt/alist/data # 应用程序持久化数据
      - /data/share:/opt/share # 本地存储,可选
    environment:
      - TZ=Asia/Shanghai
      - ALIST_ADMIN_PASSWORD=goxee7dieXeihu9uochoo6iquaighail
    restart: always

ALIST_ADMIN_PASSWORD 支持自定义密码,很早之前我提交的 PR😂,估计也就我一个人这么用。

启动容器

docker compose up -d

配置 caddy

caddy 配置比较简单

alist.ysicing.eu.org {
  reverse_proxy 100.90.80.2:5244
}

访问 alist

访问 Alist:在浏览器输入 http://你的服务器IP:5244 或者 caddy域名,进入 Alist 界面。

默认用户名是 admin, 密码是你配置的 ALIST_ADMIN_PASSWORD 值信息

挂载 MinIO 存储

登录 Alist,点击 管理 > 存储 > 添加

选择存储类型为对象存储

填写以下信息:

  • 挂载路径:自定义,例如 /minio。
  • Endpoint:http://minio 域名地址:9000。
  • Bucket:填写你在 MinIO 创建的存储桶名称,例如 ja。
  • Access Key 和 Secret Key:填入 MinIO 控制台生成的密钥。
  • 强制路径样式:默认勾选
  • 地区:默认留空

保存配置后,返回 Alist 主页,即可看到挂载的 MinIO 存储

可以上面的操作后就可以通过 Alist 浏览、分享 MinIO 中的文件,支持在线预览、下载等功能。

其他

官方文档

总结

通过 Alist 和 MinIO 的组合,你可以轻松搭建一个功能强大、安全可靠的私人网盘,告别存储焦虑!无论是个人文件管理还是团队协作,这个方案都能满足你的需求。快动手试试吧!


  •  

都是女娃?

医院产检完,去病房找大夫,听门口几位阿姨闲聊“一上午抱出来3个宝宝,全是女孩儿.......”,之前同学群里聊过,他们自己,包括他们自己的同学或者身边朋友,也几乎都是女孩。我身边的同学,朋友,只有一家是男孩儿。虽然“身边儿科学”不靠谱,可这也有点儿太邪乎了,我都要怀疑是不是这几年有啥邪性的东西刺激了,为啥出生这么多女孩儿。

回来跟媳妇儿讲这个,我说自己不喜欢女孩儿啦,想要个带把儿的。媳妇开玩笑“你是怕长大后,自己的丑闺女没有竞争力是吧”

嗯,是的。

  •  

绍兴游记

今年“五一”假期,与情人同赴绍兴旅游。一来是为了参观鲁迅故里,二来也为感受绍兴的人文气息。 周公子的故宅,阔绰得惊人,活像一座皇宫。而此时的故宅早已没了长妈妈的唠叨、寿镜吾先生自我陶醉的读书声、父亲的...
  •  

风起淀山湖

现在已经是五一的最后一天假的最后一个小时了,现在对即将逝去的五一进行一个盖棺定论,那可在适合不过了。 前两天去了淀山湖露营,之所以想去淀山湖,因为这边露营,无论是环境或者是费用上,都是相当不错的。 拍了一些风景图,选几张留在博客,也有一些随手拍的人物,拍到即是有缘人,哈哈。 近处的护堤,有些草,但是不多,在我看来有那么两种可能。 一是附近没有人管理,搭帐篷,烧炉子的人随意踩踏。 二是这草不想活了。 大概也就这两种可能,这边露营的人真的是非常的多,基本只要来的都是露营的。 这天的风超级大,刮的生活垃圾乱窜,只要过几分钟,就能看到不知道什么小垃圾,飞到帐篷边上。 哎 ?这张图压缩后,居然翻转了,算了,翻就翻了吧。 宝宝还是很喜欢出去游玩的,现在这个年纪正是不知疲倦的玩耍的时候。 有时候我也感慨,还是刚出厂的身体好使,玩一天都不累。 天幕真的很难搭起来,花了20,让这边服务人员帮忙搭的,这项服务还不错,露营椅子租借也是10元一张。 来这边才知道,原来帐篷临时租借也才一百出头,对于露营比较少的人群来说,非常的友好。 在dy上说这边不许搭帐篷,有草坪的养护期啥的。实际来这边一看,你只管扎堆就行,哪有人就去哪儿搭。 临走的时候,收拾帐篷,发现一根铝合金支撑杆,无法回缩了,尝试良久,发现彻底收不回去了。 帐篷的收纳袋也在大风吹的淀山湖边不翼而飞,大概也暗示着帐篷要报废了。 抱着侥幸心理,问了下骆驼的售后,售后的意思很明确,没有售后。 果然呀!最好的售后就是没有售后,反正我以后不会买他家的东西了,告辞! 回到家之后,看了下手臂,脖子,我说抓一下怎么就痛,还有点痒,果然晒伤了。 这天风很大,在天幕下居然会冷,谁能想到30度出头的天气,在天幕下居然会冷。 太阳晒得暖暖的,皮肤晒伤都没有一点的感觉!看来我还是太嫩了,手动滑稽。 以上风起淀山湖,愉快的露营游记。
  •  

每次换租客都有摩擦成本


我媳妇在剑桥的巴山(Bar Hill)有一套房子出租/Buy to Let,这房子是我在2022年买来送她的。结果她完全不管,每次出了什么问题都是中介直接找我。每当接到房屋中介的电话,我血压都上来了,因为十有八九都是房子出状况了。

之前的租客在这套房子里住了三年,合同是一年一签。前两年我稍微涨了点房租:第一年涨了100英镑,第二年本想再涨100,结果租客砍价只涨了50,我也接受了。今年到期我打算再涨100,但租客表示最多只能接受涨25。原本我想着还能再谈谈,但没想到租客直接说不租了,要搬走。

后来我通过中介表示25英镑的涨幅我可以接受,但租客已经下定决心要搬了。

租客搬走,对房东来说是要承担不少额外成本的:

Council Tax(房屋税)

这项费用(房屋税)本来是由租客承担的,但如果房子空着,那就由房东来付。政府是按照每天晚上的房屋状态来计费的。比如,如果租客当天搬走,那天起就是房东交税;反之,如果租客当天搬进来,那天起就由租客交税。因为新租客是5月1号才搬进来,前一周房子空着,所以这段时间的市政税都得我来付。

如果房子空着超过1年,房东则要多交50%的房屋税,如果空着超过2年,则要多付100%的房屋税。

房屋清洁

新租客搬进来之前,房东通常需要请人彻底打扫一遍,这一般也要几百英镑。

中介费用

每换一次租客,中介都要重新起草合同,还要做各种手续,也是一笔不小的费用。

说实话,现在有点小后悔。前租客说最多能接受1600英镑的月租,我没同意,结果他就搬了。现在新的租客也挺难搞的,一来就得付中介费,还要打扫卫生,再加上一周的Council Tax,前租客是4月23号搬走,新租客5月1号才入住,里里外外折腾下来,净亏了好几百英镑。都是些摩擦成本,费钱又费精力。

新租客搬进后第一个月的房租会被中介扣掉很大一步分额外费用:Tenancy Setup (594英镑) 加上 2周的房租(532英镑),不过在我的强烈不满下,中介答应只收我们一周的租金。

new-tenancy-costs 每次换租客都有摩擦成本 生活 被动收入 资讯 跟我一起来谈钱

换新租客产生的费用/成本

搞钱就要:被动收入

本文一共 708 个汉字, 你数一下对不对.
每次换租客都有摩擦成本. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 每次换租客都有摩擦成本 生活 被动收入 资讯 跟我一起来谈钱
The post 每次换租客都有摩擦成本 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  2. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  3. BBC推出了英国阶级计算工具: 来看看你是不是中产/韭菜, 还是精英? 想知道你在英国社会中属于哪个阶级?BBC最近推出了一款别开生面的英国阶级计算工具(点这里),颠覆了我们对传统“上层-中产-工人”阶级的理解方式。通过几个简单问题,这个工具可以判断你最匹配的是英国社会的哪一个“新阶级群体”。来看看你是不是真正的中产,还是你一直以来的“阶级自信”其实是错觉? 🏠 它是怎么判断你属于哪个阶级的? BBC这款工具基于2013年《大英阶级调查》(Great British Class Survey),由社会学家分析70多万份问卷数据后开发。判断维度包括: 经济资本:年收入、房产、储蓄; 社会资本:你认识什么职业背景的人; 文化资本:你参与哪些文化活动。 和你老爸老妈那一代“有房就是中产”不同,这套体系全面考虑了人脉圈子和生活方式——比如你去不去博物馆、听不听古典音乐、有没有朋友是科学家。 📊 举个例子:你属于哪个阶级? 工具会问你这些问题: 税后年收入是多少?(低于£10K,还是超过£100K?)...
  4. CSDN程序人生采访稿 CSDN程序人生采访稿...
  5. 同一台服务器上多个WORDPRESS站点的一些设置可以移出去 我自从把所有网站都挪到一处VPS服务器上 就发现很多事情省事很多 可以同时管理多个网站 包括 WORDPRESS博客. 比如我有四个WORDPRESS博客 然后我就把通用的一些资料给移出去 移到 HTTP或者HTTPS都不能直接访问的文件夹里这样就更安全许多. 文件 wp-conn.php 存储了 相同的数据库资料. 1 2...
  6. Python 中寻找数据的众数: mode vs multimode 在 Python 中寻找数据的众数 statistics.mode() 函数是 Python 中 statistics 模块的一部分,它返回数据集中出现次数最多的单个值(众数)。与 multimode() 不同,mode() 如果数据集包含多个众数(即多模态数据)或数据为空,则会引发错误。 以下是一些示例来说明 mode() 的行为:...
  7. git 小技巧: 通过pre-commit hook 来防止程序员把其它测试用例给禁用了 公司今天例会上说, 有一个PR几天前合进去, 结果导致CI上的测试用例都没有执行. 仔细一看, 原来是PR中不小心把 .only 提交了. 在 NodeJS的测试框架中, 我们开发的时候本地代码加上 describe.only 或者 it.only 来只运行我们关心的几个测试用例: 1...
  8. 现代编译语言: 整数计算性能比较: Delphi, C, C++, C#, JAVA 现在的编译器已经非常强大, 在大多数情况下, 开发者无需手动进行底层代码优化. 正如计算机科学家 Donald Knuth 所说: “过早优化是万恶之源”. Pre-optimisation is the root of evil. 过早关注细节优化,...
  •  

Alan Becker 的动画教学视频是非常好的启蒙材料


alan-becker-animation-vs-math-e-to-i-pi-2025-03-11-12.55.20-scaled Alan Becker 的动画教学视频是非常好的启蒙材料 学习笔记 教育 数学 物理 编程 视频 计算机 资讯

虚数i*i*i=-i 也就是i*e^(ipi)

自从去年家里装修完之后,我们在厨房装了一台电视,平时吃饭时会随便看看一些视频。大约两个月前的一天中午,我从学校接弟弟回家吃饭,无意间发现了一个叫 Alan Becker 的动画视频系列——“Animation vs.”,是 YouTube 上的一个非常有创意的系列。他最出名的作品之一就是《Animation vs Math》。

Alan Becker 的这些视频通常用一群小人(也有人叫他们“小黄人”、小橙色、火柴人)在电脑屏幕上互动的方式,讲述一个个富有创意、又带有教育意义的故事。虽然整个系列几乎没有一句对白,但却通过画面和动作把复杂的知识点讲得既直观又有趣。

我最喜欢的四个视频是《Animation vs Math》、《Animation vs Coding》、《Animation vs Physics》和《Animation vs Geometry》。每一集不仅让人捧腹大笑,还让人对背后的知识产生兴趣。比如在《Animation vs Math》中,小人们在坐标系、函数图像之间跳跃和作战,看得人不知不觉就理解了各种数学概念。而《Animation vs Coding》则展示了编程的魔法,小人甚至“黑进”了主人的电脑,自己写代码!《Animation vs Physics》里,小人们挑战了牛顿定律、重力和能量守恒,用夸张但合理的方式演绎了物理知识。

《Animation vs Geometry》则是另一个令人惊喜的作品。视频里,小人们与各种几何图形互动,有时被三角形包围,有时从正多边形中逃脱,有时又在空间几何中穿梭。通过他们的“冒险”,我对角度、面积、对称和旋转等概念有了更加立体的理解。这些原本在课堂上觉得枯燥的几何知识,突然变得生动起来。

现在每次吃饭的时候,我和弟弟都会打开一集,一边看一边讨论背后的知识点。他有时候还会模仿小人画画、写代码,看得津津有味。比起传统的教学方式,这种寓教于乐的视频真的非常适合启发孩子的兴趣,也让我重新发现了学习的乐趣。

Alan Becker 的动画视频在 YouTube 上非常火,常常能获得数百万甚至上亿的浏览量。很多 UP 主还会专门制作 Reaction(观看反应)视频,一边观看一边讲解其中的知识点,让观众能更深入地理解动画背后的内容。

我真心希望 Alan Becker 能继续制作这个系列的视频。他的作品不仅有趣,还兼具知识性和创意性,每一集都能带来惊喜。我还特地去看了一下他的 YouTube 主页,发现他有自己的网站和线上小店,里面出售一些周边商品和纪念品,比如角色贴纸、T 恤、鼠标垫等等。通过这些方式,粉丝们也能支持他继续创作。

如果我在初高中时就能看到这样的动画视频,可能我的学习态度和兴趣都会大不一样,说不定我也不会变成所谓的“学渣”。Alan Becker 的这些作品用轻松有趣的方式,把复杂的知识讲得通俗易懂、引人入胜。我相信,这样的内容一定能激励无数学生,让他们重新发现学习的乐趣,也让知识变得真正“活”起来。

这些视频的背景BGM音乐也非常出色,节奏紧凑、氛围感强,不仅很好地配合了剧情发展,还增强了观众的代入感。每当剧情进入高潮或角色展开大战时,音乐的节奏也随之加快,让人不自觉屏住呼吸、全神贯注。可以说,音乐和动画配合得天衣无缝,是整个系列成功的重要一环。

Alan Becker 的 Animation 系列动画教学视频

Alan Becker 在油管的频道有3000万+粉丝。

Animation vs Math 数学

这是我最喜欢的视频之一。它是在一年前上传的,如今已经有超过 8000 万的播放量。视频的开头从数学中最基础的常量“1”出发,接着逐步引入加减乘除等基本运算,再到实数与虚数,最后主角“-1”展开了一场围绕著名公式 tex_39ab8c54661fe3603377d1d4de5601e0 Alan Becker 的动画教学视频是非常好的启蒙材料 学习笔记 教育 数学 物理 编程 视频 计算机 资讯 的激烈格斗故事。

整个视频既紧凑又富有张力,把一个高度抽象的数学公式,用动画的方式生动演绎出来。观众不需要具备高深的数学背景,也能感受到其中的逻辑美和力量感。尤其是当角色“i”(虚数单位)和“π”共同施展出终极公式的那一刻,既震撼又令人忍俊不禁。

这也是 Alan Becker 的动画魅力所在:用可视化的手法,把严肃甚至有些晦涩的知识,变成一个个有趣的、像电子游戏一样的冒险故事。对我来说,看完这部视频后,对欧拉公式产生了浓厚的兴趣,后来还专门去查资料,才知道这个等式被称为“数学中的诗”。

哥哥弟弟也很喜欢这一集,他虽然年纪还小,看不懂太多公式,但他能理解角色之间的战斗与变化,这就足够吸引他了。我们甚至还尝试用积木和纸画重现其中的几幕场景,边玩边学,乐在其中。

哥哥也很喜欢数学,平时在学校数学成绩是班上最好的,希望这个视频能启蒙到他。

我最喜欢的一幕就是当 tex_96cad1e5ef25c476c3be4eb8d105669c Alan Becker 的动画教学视频是非常好的启蒙材料 学习笔记 教育 数学 物理 编程 视频 计算机 资讯 化身为 Transformer 形态,用手上的 “limit” 装置接住了小黄人化身的 tex_02d375c3338b3ac7e6c3b81fb6e031b5 Alan Becker 的动画教学视频是非常好的启蒙材料 学习笔记 教育 数学 物理 编程 视频 计算机 资讯 这一幕不仅视觉上震撼,也充满了数学梗的巧思。将抽象的公式和极限概念具象化成角色之间的对抗和救援,真的是把“知识即力量”演绎到了极致。

很享受这种知识划过脑却不留痕迹的感觉。

数学知识
0:07 最简单的入门方式——1 是第一个自然数,这是公理化的(尽管在一些数学分析教材中,他们首先指出 0 是自然数)。
0:13 等式——数学课上学习的两个对象之间的第一个关系。
0:19 加法——四种基本算术运算中的第一个。
0:27 重复 1 的加法,这是我们在集合论中定义其余自然数的方式;也是乘法的铺垫。
0:49 与 1 以外的数字进行加法,这可以用我们已知的 1 加法来定义。(省略证明)
1:23 减法——四种基本算术运算中的第二个。
1:34 我们的第一个负数!它也可以表示为 tex_8c4d4d144d960c160796f47c59507535 Alan Becker 的动画教学视频是非常好的启蒙材料 学习笔记 教育 数学 物理 编程 视频 计算机 资讯 ,这是将 tex_0e4258221bdbc1e8dd20cfdd36fa4447 Alan Becker 的动画教学视频是非常好的启蒙材料 学习笔记 教育 数学 物理 编程 视频 计算机 资讯 的泰勒级数的定义域扩展到复数的结果。
1:49 tex_8c4d4d144d960c160796f47c59507535 Alan Becker 的动画教学视频是非常好的启蒙材料 学习笔记 教育 数学 物理 编程 视频 计算机 资讯 乘以 i,这打开了一扇通往……虚数世界的大门?这也暗示了小黄人实际上存在于实数世界。TSC 现在如何再次得出这个量?

2:12 重复减 1,类似于对自然数的操作。
2:16 负数乘以负数得正数。
2:24 乘法,以及通过重复加法或任何运算对其进行的解释。
2:27 乘法的交换律,以及 12 的因数。
2:35 除法,最后的算术运算;也很好地展示了 – 和 / 之间的关系,就像 + 和 x 之间的关系一样!
2:37 除法就是计算重复减法的次数,直到零。
2:49 除以零,以及为什么它没有意义。令人惊讶的是,TSC 没有用这个来制造一个黑洞。

3:04 指数运算是重复的乘法。
3:15 高阶指数如何对应几何维度。
3:29 任何非零的零次方都是1。
3:31 负指数!以及它与分数和除法的关系。
3:37 分数指数和平方根!我们越来越接近了……
3:43 无理数(例如 sqrt(2))的小数展开是不规则的。(我避免使用“无穷大”这个词,因为从技术上讲,每个实数的小数展开都是无穷大的……)
3:49 sqrt(-1) 给出虚数 i,它首先由性质 i^2 = -1 定义。
3:57 复数的加法和乘法是根据我们已知的原理进行的。
4:00 i^3 等于 -i,这当然会得到 i*e^(i*pi)!

4:14 参考 3:49
4:16 欧拉公式 x = pi!这个公式可以通过重新排列 e^x 的泰勒级数来表示。
4:20 小细节:被负号击中会改变 TSC 的方向,这又一次暗示了复平面!
4:22 e^(i*pi) 到 e^0 对应于复平面上沿单位圆的运动。
4:44 +1/-1 的“剑”相互碰撞,发出“0”个火花。
4:49 -4 的剑击中 +1 的剑,变为 -3,等等。
4:53 2+2 的弩射出 4 支箭。
4:55 4 支箭击中除号,与 pi 对齐,得到 e^(i*pi/4),使其沿单位圆旋转 pi/4 弧度。
5:06 TSC 通过乘以 i 来推动自己,围绕单位圆旋转 π 弧度。

5:18 TSC 终于发现了复平面!5:21 虚轴;5:28 实轴。
5:33 最简单​​的单位圆。
5:38 圆中的 2*π 弧度。
5:46 弧度的定义——单位圆中跨越长度为 1 的弧度的夹角。
5:58 r*theta——半径为 r 的圆中,夹角为 theta 的圆弧长度公式。
6:34 对于单位圆来说,theta / r 就是角度。
6:38 圆周的一半正好是 π 弧度。
6:49 正弦函数和余弦函数如何与绕单位圆逆时针旋转相关——sin(x) 等于 y 坐标,cos(x) 等于 x 坐标。
7:09 旋转 sin(x) 可以直观地看到 sin(x) 和 cos(x) 之间的位移。
7:18 参考 4:16

7:28 将指数改变为 π 的倍数,使其向各个方向移动。
7:34 一个新形式!?e^x 的泰勒级数,其中 x=i*π。现在它有无限的弹药了!?同样,弹药将每个项的十进制展开式作为其弹道标记。
7:49 面积为 pi r^2,高为 8 的圆柱体的体积。
7:53 给读者的练习(哈哈)
8:03 参考 4:20
8:25 关于 e^(ix) 的 cos(x) 和 sin(x)
8:33 很遗憾,这部分我看不懂……TSC 创建了一个“函数”枪 f(x) = 9tan(pi*x),这样朝 e^(i*pi) 射击会得到 f(e^(i*pi))= f(-1) = 0。
9:03 参考 5:06
9:38 “函数”枪现在在无穷远处“求值”,通过每次增加一个维度来扩展实空间(它是一个向量空间),即实空间的跨度扩展为 R^2、R^3 等。
9:48 log((1-i)/(1+i)) = -i*pi/2,乘以 2i^2 = -2 再次得到 i*pi。
9:58 通过缩短间隔并取极限来阻挡“无穷大”光束,这并非黎曼积分的精确定义,但足够接近了。

油管视频:Animation vs Math

Animation vs Coding 编程

编程这一集我看得最懂了,也很有意思,特别是当中那个原子弹的Python程序,就是无限递归/Recursion内存爆炸。

def nuke(n):
    a = []
    for i in range(10):
        if n > 1:
            a.append(nuke(n - 1))
        else:
            a.append(i)
    return a

print(nuke(10))

还有就是Python里调用Turtle包进行海龟作图(这可是我学编程的第一个编程语言)也相当有创意。

0:18 未定义 – 计算机不知道这是什么,就是这样
0:34 print() 将内容打印到终端
0:42 重新运行代码
0:52 变量
1:00 运算(* 表示乘法,/ 表示除法)
1:05 向下取整除法(删除小数)
1:10 字符串本质上就是可以使用的文本
1:23 不能将数字和字符串一起使用
1:27 让你专注于一个特定的字符串/变量/数字
1:32 对象中的项目数(在本例中为 7,因为 string7 有 7 个字符)
1:38 代码语法错误
1:45 b 本质上是 a 中的字符(所以 a[5] 应该是 g,而不是 n,因为它从 0 开始)
1:48 重复代码数字/字符串长度
2:00 基本上会一直运行,因为它基本上告诉计算机“当 true 为真时”
2:02 大写显然
2:09 如果你在执行 while、if 或 for 之类的循环,需要将循环内部运行的代码推送进去,这样计算机才能知道你想要循环的代码。
2:16 循环内部的代码不是在 a 可打印的情况下运行,因为 a 可打印,所以它不能运行。
2:23 循环内部的代码在 if 不可打印的情况下运行。
2:32 字符串列表,本例中的 * 表示将所有字符串都考虑在内。
2:40 海龟本质上就是一支铅笔,我们在这里定义了海龟(所以我们可以直接写 t),然后 import 函数会从库中导入内容(库中有内置库)。
2:41 400 表示它在方向上移动的增量。
2:52 改变海龟移动的速度。
2:55 左右移动使海龟转向。
3:03 循环海龟的移动。
3:17 pensize 表示线条的面积。
3:32 这实际上是停止海龟的方法。哈哈
3:44 matplotlib 是一个绘图库(它显然可以让你访问图表和图形),numpy 允许你使用三维数组
3:44 插入绘图然后使其显示
3:58 获取一个随机的三维整数
4:20 绘图标题,太棒了
4:29 函数,让你在运行函数名称时运行这组代码
4:41 pygame 是一个令人惊讶的库,可以让你制作游戏!while true 循环用于检查用户是否关闭了窗口/选项卡
4:44 窗口的基本 pygame 代码
4:57 允许你通过按下某些键来移动对象
5:21 圆圈朝黄色的位置移动,向前移动时加速,向后移动时减速(谢谢 xTI0)
6:22 不要这样做。核函数中的数字表示列表嵌套的次数,所以 10 基本上就是递归地嵌套 10 次,非常卡顿
6:35 # 让你直接输入文本,非常适合解释你的代码是如何工作的
7:36 他真的在写一个 AI 代码
7:50 神经网络正在接受训练

快速提示:还记得最后提到这是 Python 吗?还有其他编程语言用于不同的目的,我想这很明显,但为了以防万一,一些流行的编程语言是 C、HTML、JavaScript 等等!

油管视频:Animation vs Coding

Animation vs Physics 物理

《Animation vs Physics》这一集的后半段内容变得相当深奥,涉及到了相对论、黑洞等高阶物理概念。我目前的理解还停留在初高中学过的一些基础知识,比如牛顿的第二定律 tex_9daa187e47eb4fb749102377832e3148 Alan Becker 的动画教学视频是非常好的启蒙材料 学习笔记 教育 数学 物理 编程 视频 计算机 资讯 、动能定理、还有爱因斯坦著名的能量公式 tex_76dbfb9a84d34d7f746b1f4cbbb81919 Alan Becker 的动画教学视频是非常好的启蒙材料 学习笔记 教育 数学 物理 编程 视频 计算机 资讯

虽然看不太懂后面的部分,但前半段关于力、加速度、重力等基础物理的呈现还是非常有趣的。角色们像在玩一场“现实模拟游戏”,各种物理定律在他们的世界里都有了视觉化的呈现,哪怕是没怎么学过物理的人也能看得津津有味。

0:19 加速度和速度
1:18 质量
3:07 势能
4:17 重力
4:38 米/秒
5:55 以更高的速度围绕行星运行
6:00 以米/秒为单位的速率增加
6:12 围绕其他行星的速度将随机倍增
基于其大小
6:40 围绕恒星的速度将根据其大小而倍增
7:05 是β的1%
7:21 磁场和引力
7:40 磁场环
7:48 制作磁场火箭
8:18 火箭速度因磁场火箭而加快
8:33 观察星系、星系系统和其他
9:14 黑洞
9:30 关于黑洞的事实
10:03 黑洞内部

油管视频:Animation vs Physics

Animation vs Physics 几何

说到几何,它是数学的另一个重要分支,其中最著名的“主角”之一就是黄金分割。黄金分割不仅在几何中占有一席之地,还常被视为“数学之美”的代表。比如大家熟悉的斐波那契数列,就和黄金分割密切相关——随着数列不断增长,相邻两项的比例会越来越接近黄金比例。

黄金分割的魅力不仅仅体现在数学里,在自然界、艺术、建筑甚至音乐中都有它的身影。像贝壳的螺旋、向日葵的花盘、古希腊神庙的比例,甚至名画《蒙娜丽莎》的构图,都被认为与黄金分割有关。

Alan Becker 在《Animation vs Geometry》中也通过角色与几何图形的互动,让我们直观地看到了这些数学背后的和谐与美感。通过一场看似搞笑却充满巧思的冒险,观众不仅被娱乐到了,也潜移默化地接触到了黄金分割等几何概念。

油管视频:Animation vs Geometry

油管视频 / Youtube Video

英文:Animation Youtube Videos from Alan Becker

本文一共 3926 个汉字, 你数一下对不对.
Alan Becker 的动画教学视频是非常好的启蒙材料. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c Alan Becker 的动画教学视频是非常好的启蒙材料 学习笔记 教育 数学 物理 编程 视频 计算机 资讯
The post Alan Becker 的动画教学视频是非常好的启蒙材料 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 什么是马太效应? 马太效应是一种社会学和经济学现象,描述了“富者愈富,贫者愈贫”的情况。这个概念来源于《新约圣经·马太福音》中的一句话:“凡有的,还要加给他,使他有余;没有的,连他所有的也要夺去。”因此,“马太效应”这一术语应运而生。 你可能听过这句话:“富者愈富,贫者愈贫” ——这就可以被视为马太效应。 有的人运气好的时候可以一直好运连连,似乎不管做什么都顺风顺水;而有的人一旦遭遇不幸,比如生了场大病,就像是被命运压垮了,接连而来的挫折仿佛永无止境。这种现象其实与我们常说的“马太效应”密切相关——资源和机会越多,往往更容易获得新的机遇,而那些本就处于困境中的人,可能会越发陷入逆境。 我们在生活中会经常遇到类似的情形:一部分人似乎总能轻而易举地获得成功,而另一部分人即便努力了也难以改变困境。这不仅仅是运气的问题,还涉及到资源、支持系统,以及社会对个人发展的反馈。有时候,幸运的人往往有更多的支持与资源来化解困难,反之亦然,不幸的人在面临困境时却因为资源稀缺而难以逆转局势。 马太效应在生活的各个领域广泛存在。 经济学 较富有的人通常有更多的资源和机会去进一步积累财富,而贫穷的人由于缺乏资源可能会变得更加贫困。例如,富人有更多的资本去投资和购买资产,从而获得更多回报。 教育 高成就的学生通常能够获得更多的教育资源、教师关注以及成就感,这进一步激励了他们的学习。与此同时,学业上困难的学生可能得不到足够的支持,导致成绩下降。 职场 在职场中,表现出色的员工往往能够获得更多的资源、机会和认可,进一步巩固他们的地位。而另一方面,表现普通的员工可能由于缺乏机会而被边缘化。 科学研究 著名科学家的研究成果往往更容易获得认可和引用,进一步提升他们的声誉,而其他研究人员由于缺乏可见性可能难以得到承认。 总结:马太效应...
  2. 如何在海外 在线观看 2016 欧洲杯比赛? 四年一度的欧洲杯足球又开始了, 夏天来了 没有什么比边看足球边喝啤酒更爽的事了. 通过以下链接可以 免费在线观看 2016 欧洲杯比赛 (英语解说). 点击以下链接能在线免费看 2016 欧洲杯比赛 (The following provides online...
  3. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  4. 来来来 加我公众号玩 石头剪刀布 写着玩的, 不过虽然猜拳的策略是完全随机 但是真的很难上 10分. 赢了得1分, 输了扣1分. 平局分数不变. 输入分数或者score查看当前得分. 这个分数会直接记入终身档案中.. 一个微信帐号一个分数. 暂时不支持 表情符号. 微信服务器 IP地址是 101.226.103.69...
  5. 你给SteemIt中文微信群拖后腿了么? 这年头不缺算法, 就缺数据. 这两天花了很多时间在整API上, 整完之后自己用了一下还觉得真是挺方便的. 今天就突然想看一看自己是否给大家拖后腿了, 于是调用每日中文区微信群排行榜单的API, 刷刷拿着 NodeJs 练手: 1 2 3 4 5 6...
  6. 2023年生日: 快乐的时间很快就过去了 奔四了,哎。这几年越来越不想过生日,感觉今年一年啥也没完成,混日子,每年生日的时候就感觉一年又白混了,快40了,腰都埋土里了。 每年生日,FACEBOOK,LINKEDIN等社交网络就会提醒你,提醒你的朋友,甚至是陌生人也会给你留言提醒你生日快乐。印象中离开初创公司后,每年生日我都会休假,加入微软2年多,从去年开始,经理总会在生日当天在TEAMS上给我发生日祝福。 当然,这几年最开心的事还是在生日当天,媳妇会格外变得听话贤惠多了,甚至可以满足我一些不太合理的要求。 早上醒来,媳妇就和我说生日快乐,然后把早餐给我送到床上来,我当时感觉像病号一样,娃也给我自己做的贺卡。 早上带娃去看牙医,后来就回家歇着了,中午媳妇给我做了长寿面,晚上约会吃饭(剑桥 Trinity (三位一体) 餐厅),然后去路边的小酒巴喝点小酒。然后该有的活动逃不掉的,你懂的。 哎,祝自己生日快乐,接下来一切顺利吧。 生日当天约会视频: 油管 Youtube B站 Bilibili 西瓜...
  7. 交易所Ionomy跑路, 又丢了好多币, 哎 ionomy.com 交易所的最后一次访问记录可能是2024年6月。 我有一些BLURT币在Ionomy交易所,一直没去管它,这几天想上去看看,因为牛市来了,BLURT币也拉了不少。谁知道网站直接打不开了。 Ionomy交易所已经打不开了。 问了一下,大概是几个月前(2024年年初)跑路的,我现在才知道,关键是没收到任何通知/预警。鱼老板说:“交易所真爱跑路,说了还怎么跑”。 Ionomy交易所是个非常小众的交易所,2018年10月创立,下面是Ionomy交易所在Coinmarketcap(现被币安收购)显示的信息: 我还在FB/Meta上联系他们,但是估计跑路了,不报任何希望了。 Ionomy的Telegram群也就不到300人,太小众了。 我在群的照片里看到了Ionomy交易所的管理层,也不知道是真是假,无从核实,在Linkedin上也搜不到。 这是我在群里照片看到的Ionomy交易所的界面,我的帐号里面应该有大概5000或者1万个BLURT币,也就几十美元,丢了几根鸡腿。 万幸的是前几年曾经提走了0.124个BTC,不然放到现在得哭死了。(当时BLURT的糖果/Airdrop/空投换了0.124个BTC) 为什么我要使用Ionomy交易所? 因为BLURT是STEEM分叉出去的币,小币种,支持它的交易所只有不到三个,其中一个是Ionomy,还有一个比较有名的是Hive-Engine。 小币上大交易所费用贵,听说前几年的上交费是1个比特币。我在STEEM上的发的文章一般也会同步到BLURT去,挣些糖果。 避免小众交易所...
  8. 你要找什么样的老婆? 找媳妇的标准 昨天和网友在剑桥面基, 网友奔现, 他从爱尔兰过来, 小我12岁, 就聊到了找对象的标准. TLDR; 找老婆不要(只)看颜值, 而要注重性格, 为人处事和顾家等更重要的品质, 当然性和谐也很重要. 在当今社会, 人们对于找伴侣的标准有所不同. 有些人认为颜值是最重要的, 因为外貌吸引力可以让人在日常生活中感到愉悦, 这是人的本性,...
  •  

在英国第二次被GP做肛门指检


十几年前我还在英国北部的谢菲尔德(Sheffield)生活时,因为痔疮问题去看过一次家庭医生(GP)。当时医生为我进行了肛门指检(back passage examination)。记得那是我人生第一次做指检,还闹了个小笑话——医生让我躺下,把裤子脱到膝盖处,但我转错了方向,应该是背对医生的,结果面对着他,场面一度非常尴尬。

上周我又去看了医生,这次是因为PSA(前列腺特异抗原)检查结果依然偏高,虽然比十几年前略有下降。医生建议再次进行肛门指检,检查一下前列腺情况。我都快忘了这种“酸爽”的体验了。这次医生让我侧躺,背对着他,把腿抱向胸前。他检查了两次,目的是摸一摸前列腺的大小和质地。我以前真的没想到前列腺还能通过这种方式检查。医生说摸起来有点肿大,但应该不是大问题(比如不是癌症),不过他也不能完全确定,于是把我的情况整理后转诊给医院的专科医生,目前还在等医院回复。

这两次检查都是由男医生进行的,医生还问我要不要请一位NHS同事在场监督,我说不用了,毕竟这种尴尬场面还是少一个人知道为好。

说实话,做指检的时候感觉整个人都快“拉了”,实在是又羞又憋屈……

nhs-gp-clinic-2025-05-02-14.19.16-scaled 在英国第二次被GP做肛门指检 医学 生活

NHS GP英国小诊所看医生

英国NHS免费医疗

本文一共 443 个汉字, 你数一下对不对.
在英国第二次被GP做肛门指检. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 在英国第二次被GP做肛门指检 医学 生活
The post 在英国第二次被GP做肛门指检 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  2. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  3. 在英国给孩子换学校的经历: 孩子离开了村里的小学 由于搬了家, 孩子上学得提前半小时出门了, 因为早上堵, 也得开车半小时才能到. 之前在 Fen Drayton 村庄上小学, 早上8:45学校门开, 9点敲钟孩子排队依次进入教室, 我们由于在村里, 只需要提前5分钟出门和孩子一起走路就可以了. 现在一下子早上变得很匆忙, 得叫孩子起床, 做早饭,...
  4. 英国NHS为年龄在40到70岁之间的中老年人提供免费身体检查 前几天过了40岁生日,正式步入了四十不惑的年龄。 “四十不惑” 是中国古代儒家思想中的一个成语,出自《论语·为政》一书,原文是“吾十有五而志于学,三十而立,四十而不惑,五十而知天命,六十而耳顺,七十而从心所欲,不逾矩”。这句话表达了孔子对人生各个阶段的理解和期望。 “四十不惑”的意思是指一个人到了四十岁,已经积累了足够的经验和智慧,不再轻易受到外界的干扰或困惑。这个年龄段的人对自己的人生观、价值观有了比较清晰的认知,能够判断是非,不会被事物表象或外界的干扰所迷惑。 在现代语境下,“四十不惑”常被理解为人到中年,对生活、工作和人际关系有了更成熟的态度,有自己的独立见解和判断,不再轻易摇摆或迷茫。 没过几天,就收到了英国NHS(全民医保)的短信,说我可以去做个免费体检(身体健康检查)。 根据所给的电话,我打过去询问,得知,这是个第三方的公司,和当地的市政厅合作,给居民提供免费的身体检查,不过有三个条件: 过去五年内没有做过体检。 年龄在40到70岁之间。 居住在剑桥地区(CB邮编)或者皮德堡/peterborough/PE邮编 所以,我不符合条件,毕竟我这一次全面体检就是半年前回国的时候,我顺便问了一下身体检查有啥项目,被告知就是很基本的那几项:身高、体重、血压、血常规、尿检。毕竟英国全民医保,并不可能给你像国内那种体检套餐没事做个MRI核磁共震或者是X光。英国的理念是健康的人不需要身体检查,有问题才会对症下药/检查。 第三方体检机构表示,如果有任何问题或感到不适,应该先去找GP全科医生。以上三个条件中,第一条感觉是有商量的空间的。我还特别问了什么样的检查算体检。不过无所谓,反正公司有福利,每年都可以安排一次体检,刚好下周就约到了公司的体检:公司的福利之: 员工体检(微软和Nuffield)。 本文一共 734...
  5. 同一台服务器上多个WORDPRESS站点的一些设置可以移出去 我自从把所有网站都挪到一处VPS服务器上 就发现很多事情省事很多 可以同时管理多个网站 包括 WORDPRESS博客. 比如我有四个WORDPRESS博客 然后我就把通用的一些资料给移出去 移到 HTTP或者HTTPS都不能直接访问的文件夹里这样就更安全许多. 文件 wp-conn.php 存储了 相同的数据库资料. 1 2...
  6. 车轮胎边上鼓起了包需要换掉么? 今天在30英理/小时 的时候不小心碰到马路崖, 就听见碰咚一声, 下车看, 车身没事, 倒是右边轮胎 (Off Side Front) 起了一个大包, 长这样. 不幸中的万幸, 轮胎是消耗品, 不会直接影响到车的保值, 而车身如果有刮擦,...
  7. 英国国家医疗服务体系(NHS)简介 英国国家医疗服务体系 (National Health Service, 简称 NHS) 是英国政府提供的公共医疗卫生服务体系,于1948年创立,旨在为英国居民提供从出生到老年的综合医疗服务。NHS 的宗旨是确保每位英国居民无论其收入、地位和健康状况如何,都能获得公平且免费(或低价)的医疗服务,属于全球范围内最早建立的全民医疗体系之一。以下是 NHS 的一些关键特点: 英国国家医疗服务体系(NHS)于1948年7月5日正式成立。这一体系是由当时的卫生部长阿奈林·贝文(Aneurin Bevan)主导创立的,其核心理念是确保所有人都能获得公平的医疗服务,无论收入高低。NHS 的诞生标志着现代公共医疗服务的开端,为全球范围内的全民医疗体系提供了参考。 全民覆盖和免费医疗 NHS...
  8. 比特币最近波动有点大: 一天牛市一天熊 比特币10万美金以内都是最后上车的机会! 比特币近期的价格波动可以归因于多个关键因素,包括地缘政治动态、监管变化以及加密行业内的重大安全事件。其中一个主要影响因素是美国前总统唐纳德·特朗普对乌克兰和加密货币监管的立场变化。据报道,特朗普再次当选,他可能会推动减少美国对乌克兰的支持,这可能会影响全球金融市场和风险偏好。同时,特朗普正在将自己塑造为亲加密货币的候选人,表示有意让美国成为一个更加友好的加密货币环境。这一立场引发了市场对监管政策可能发生变化的猜测,导致市场情绪在乐观和不确定性之间波动。 特朗普对俄乌战争的态度 美国第43届总统唐纳德·特朗普已经在2025年1月当选并正式上任(第二次),那么他的政策可能会对比特币价格的波动产生更加直接和显著的影响。他政府对乌克兰和加密货币监管的立场已经不再是猜测,而是正在实际塑造市场的关键力量。 特朗普(Donald Trump)减少美国对乌克兰的支持,全球投资者可能会预期地缘政治稳定性发生变化,从而增加对比特币作为避险资产的需求。同时,他的亲加密货币立场可能正在推动市场的乐观情绪。如果他的政府推出有利于加密行业的监管政策,例如明确的合规指南或减少监管审查,可能会吸引更多机构投资者进入市场,并促进更广泛的加密货币采用。然而,政策的快速变化也可能导致短期市场剧烈波动,因为市场需要时间来消化新的政策动向。 朝鲜黑客盗取Bybit交易所15亿美元的ETH 另一个显著影响比特币价格的事件是近期涉及朝鲜黑客组织“Lazarus”的15亿美元以太坊被盗案件。据报道,Bybit交易所(全球第二)这些被盗的ETH已经被清洗,此次大规模黑客攻击引发了人们对加密行业安全性的担忧。此类安全事件不仅会削弱投资者信心,还可能引发更严格的监管审查,导致短期市场动荡。此外,被盗资金的大规模流动和出售可能对市场流动性造成冲击,进一步加大价格波动。随着这些事件的持续发酵,比特币价格正受到政治决策、监管预期以及安全挑战等多重因素的影响。 与此同时,与朝鲜黑客组织 Lazarus 相关的 15 亿美元以太坊被盗事件仍在影响加密市场。由于这些被盗 ETH 已被清洗,人们对加密行业安全漏洞的担忧持续存在,同时也可能引发更严格的监管审查。政治、监管和安全等多重因素交织在一起,共同导致了比特币近期的剧烈价格波动。...
  •  

私有化部署无名杀卡牌游戏

部署非常简单,非常适合收藏,内网私有化部署。另外这是一个开源项目,灵活度比较高。

项目地址

https://github.com/libnoname/noname

镜像

可以根据自己的网络情况选择对应的镜像下载,镜像比较大, 大概 3.5G 左右。

  • hsiaoshun/noname
  • ccr.ccs.tencentyun.com/k7scn/noname

部署 compose

services:
  noname:
    image: hsiaoshun/noname
    # image: ccr.ccs.tencentyun.com/k7scn/noname
    container_name: noname
    ports:
      - '6080:80'
    restart: always

端口配置

  • 80 游戏本体网页版入口
  • 8080 WS 协议,联机大厅服务(客户端使用)

caddy 代理

示例,不建议公网跑,对带宽有点要求

sgs.ysicing.eu.org {
reverse_proxy 100.90.80.2:6080
}

联机大厅配置说明

目前只支持 windows 和安卓

注意: 结尾的/不能省略, 如果没有证书就是 ws,有证书就是 wss

其他

如果有更多兴趣的话,可以看看无名杀懒人包。


  •  

Debian常用初始化流程


在搭建 k3s 轻量级 Kubernetes 集群时,Debian 系统因其稳定性和灵活性成为首选。然而,Debian 默认配置可能无法满足 k3s 的需求,需要通过初始化优化系统设置。本文将分享一套针对 k3s 环境的 Debian 初始化方案,涵盖基础包安装、系统配置和防火墙规则,仅供参考。

安装基础包

以下命令安装 k3s 集群所需的基础工具,保持系统轻量:

export DEBIAN_FRONTEND=noninteractive
apt update -qq
apt remove -y -qq ufw lxd lxd-client lxcfs lxc-common
apt install --no-install-recommends --no-install-suggests -y -qq nfs-common iptables conntrack jq socat bash-completion open-iscsi rsync ipset ipvsadm htop net-tools wget psmisc git curl nload ebtables ethtool procps

配置系统

配置 ssh

修改 ssh 端口,设置密钥登录,禁用密码登录。这些比较常见,这里就不细说了。

更新内核

之前好像也写过,通常我都是使用最新内核,仅供参考.(通常也会踩坑比较多)

curl https://c.ysicing.net/oss/scripts/debian-upcore.sh | bash
# 或者
apt install -t bookworm-backports linux-image-amd64 -y

配置 system 相关

调整 Systemd 的资源限制和日志设置

mkdir -pv /etc/systemd/system.conf.d
cat > /etc/systemd/system.conf.d/30-k8s-ulimits.conf <<EOF
[Manager]
DefaultLimitCORE=infinity
DefaultLimitNOFILE=100000
DefaultLimitNPROC=100000
EOF

mkdir -pv /etc/systemd/journald.conf.d /var/log/journal

cat > /etc/systemd/journald.conf.d/95-k3s-journald.conf <<EOF
[Journal]
# 持久化保存到磁盘
Storage=persistent
# 最大占用空间 2G
SystemMaxUse=2G
# 单日志文件最大 100M
SystemMaxFileSize=100M
# 日志保存时间 1 周
MaxRetentionSec=1week
# 禁止转发
ForwardToSyslog=no
ForwardToWall=no
EOF

systemctl daemon-reload
systemctl restart systemd-journald

cat > /etc/modules-load.d/10-k3s-modules.conf <<EOF
br_netfilter
ip_vs
ip_vs_rr
ip_vs_wrr
ip_vs_sh
nf_conntrack
EOF

systemctl daemon-reload
systemctl restart systemd-modules-load

配置防火墙规则

提示:8.8.8.8 为示例白名单 IP,请替换为实际 IP,搭配rc.local

  • /data/scripts/iprule.sh
#!/bin/bash
iptables -I INPUT -s 8.8.8.8 -j ACCEPT
iptables -I INPUT -p udp -j ACCEPT
iptables -I INPUT -i lo -j ACCEPT
iptables -I INPUT -i tailscale0 -j ACCEPT
iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -I INPUT -s 10.0.0.0/8 -j ACCEPT
iptables -I INPUT -s 172.16.0.0/12 -j ACCEPT
iptables -I INPUT -s 192.168.0.0/16 -j ACCEPT
iptables -I INPUT -p tcp -m multiport --dports 80,443 -j ACCEPT
iptables -A INPUT -p icmp -j DROP
iptables -A OUTPUT -j ACCEPT
iptables -A INPUT -j DROP

防火墙规则没考虑使用 iptables-save 等保存恢复,而是每次开启时重新配置。

总结

通过以上步骤,我们完成了一套针对 k3s 环境的 Debian 系统初始化,优化了网络、资源限制和安全性。你可以直接使用以下脚本一键初始化

curl https://c.ysicing.net/oss/scripts/init.sh

  •  

千灯百桥客连云

5月2日,独自驱车往苏州昆山市千灯镇。 也是临时起意,昨晚翻看自己足迹发现离得最近的目标是千灯镇。虽说江南古镇 […]
  •  

How I use Obsidian

I use Obsidian to think, take notes, write essays, and publish this site. This is my bottom-up approach to note-taking and organizing things I am interested in. It embraces chaos and laziness to create emergent structure.

In Obsidian, a “vault” is simply a folder of files. This is important because it adheres to my file over app philosophy. If you want to create digital artifacts that last, they must be files you can control, in formats that are easy to retrieve and read. Obsidian gives you that freedom.

The following is in no way dogmatic, just one example of how you can use Obsidian. Take the parts you like.

Vault template

  1. Download my vault or clone it from the Github repo.
  2. Unzip the .zip file to a folder of your choosing.
  3. In Obsidian open the folder as a vault.

Theme and related tools

Personal rules

Rules I follow in my personal vault:

  • Avoid splitting content into multiple vaults.
  • Avoid folders for organization.
  • Avoid non-standard Markdown.
  • Always pluralize categories and tags.
  • Use internal links profusely.
  • Use YYYY-MM-DD dates everywhere.
  • Use the 7-point scale for ratings.
  • Keep a single to-do list per week.

Having a consistent style collapses hundreds of future decisions into one, and gives me focus. For example, I always pluralize tags so I never have to wonder what to name new tags. Choose rules that feel comfortable to you and write them down. Make your own style guide. You can always change your rules later.

Folders and organization

I use very few folders. I avoid folders because many of my entries belong to more than one area of thought. My system is oriented towards speed and laziness. I don’t want the overhead of having to consider where something should go.

I do not use nested sub-folders. I do not use the file explorer much for navigation. I mostly navigate using the quick switcher, backlinks, or links within a note.

My notes are primarily organized using the categories property. Categories display an overview of related notes, using the bases feature in Obsidian.

Most of my notes are in the root of the vault, not a folder. This where I write about my personal world: journal entries, essays, evergreen notes, and other personal notes. If a note is in the root, I know it’s something I wrote, or relates directly to me.

Two reference folders I use:

  • References where I write about things that exist outside my world. Books, movies, places, people, podcasts, etc. Always named using the title e.g. Book title.md or Movie title.md.
  • Clippings where I save things other people wrote, mostly essays and articles.

Three admin folders exist so that their contents don’t show up in the file navigation:

  • Attachments for images, audio, videos, PDFs, etc.
  • Daily for my daily notes, all named YYYY-MM-DD.md. I do not write anything in daily notes, they exist solely to be linked to from other entries.
  • Templates for templates.

Two folders are present in the downloadable version of my vault for the sake of clarity. In my personal vault, these notes would be in the root, not a folder.

  • Categories contains top-level overviews of notes per category (e.g. Books, Movies, Podcasts, etc).
  • Notes contains example notes.

Links

I use internal links profusely throughout my notes. I try to always link the first mention of something. My journal entries are often a stream of consciousness cataloging recent events, finding connections between things. Often the link is unresolved, meaning that the note for that link isn’t created yet. Unresolved links are important because they are breadcrumbs for future connections between things.

A journal entry in the root of my vault might look something like this:

I went to see the movie [[Perfect Days]] with [[Aisha]] at [[Vidiots]] and had Filipino food at [[Little Ongpin]]. I loved this quote from Perfect Days: [[Next time is next time, now is now]]. It reminds me of the essay ...

The movie, movie theater, and restaurant each link to entries in my References folder. In these reference notes I capture properties, my rating, and thoughts about that thing. I use Web Clipper to help populate properties from databases like IMDB. The quote was meaningful to me, so it became an evergreen note in my root folder. The essay I mention is in my Clippings folder, because I didn’t write it myself.

This heavy linking style becomes more useful as time goes on, because I can trace how ideas emerged, and the branching paths these ideas created.

Fractal journaling and random revisit

Fractal journaling and randomization are how I tame the wilderness that a knowledge base can grow into.

Throughout the day I use Obsidian’s unique note hotkey to write individual thoughts as they come up. This shortcut automatically creates a note with the prefix YYYY-MM-DD HHmm to which I may add a title that describes the idea.

Every few days I review these journal fragments and compile the salient thoughts. I then review those reviews monthly, and review the monthly reviews yearly (using this template). The result is a fractal web of my life that I can zoom in and out of at varying degrees of detail. I can trace back where individual thoughts came from, and how they bubbled up into bigger themes.

Every few months I set aside time for a “random revisit”. I use the random note hotkey to quickly travel randomly through my vault. I often use the local graph at shallow depth to see related notes. This helps me revisit old ideas, create missing links, and find inspiration in past thoughts. It’s also an opportunity to do maintenance, like fix formatting based on new rules in my personal style guide.

People have asked me if this could be automated with language models but I do not care to do so. I enjoy this process. Doing this maintenance helps me understand my own patterns. Don’t delegate understanding.

Properties and templates

Almost every note I create starts from a template. I use templates heavily because they allow me to lazily add information that will help me find the note later. I have a template for every category with properties at the top, to capture data such as:

  • Dates — created, start, end, published
  • People — author, director, artist, cast, host, guests
  • Themes — grouping by genre, type, topic, related notes
  • Locations — neighborhood, city, coordinates
  • Ratings — more on this below

A few rules I follow for properties:

  • Property names and values should aim to be reusable across categories. This allows me to find things across categories, e.g. genre is shared across all media types, which means I can see an archive of Sci-fi books, movies and shows in one place.
  • Templates should aim to be composable, e.g. Person and Author are two different templates that can be added to the same note.
  • Short property names are faster to type, e.g. start instead of start‑date.
  • Default to list type properties instead of text if there is any chance it might contain more than one link or value in the future.

The .obsidian/types.json file lists which properties are assigned to which types (i.e. date, number, text, etc).

Rating system

Anything with a rating uses an integer from 1 to 7:

  • 7 — Perfect, must try, life-changing, go out of your way to seek this out
  • 6 — Excellent, worth repeating
  • 5 — Good, don’t go out of your way, but enjoyable
  • 4 — Passable, works in a pinch
  • 3 — Bad, don’t do this if you can
  • 2 — Atrocious, actively avoid, repulsive
  • 1 — Evil, life-changing in a bad way

Why this scale? I like rating out of 7 better than 4 or 5 because I need more granularity at the top, for the good experiences, and 10 is too granular.

Publishing to the web

This site is written, edited, and published directly from Obsidian. To do this, I break one of my rules listed above — I have a separate vault for my site. I use a static site generator called Jekyll to automatically compile my notes into a website and convert them from Markdown to HTML.

My publishing flow is easy to use, but a bit technical to set up. This is because I like to have full control over every aspect of my site’s layout. If you don’t need full control you might consider Obsidian Publish which is more user-friendly, and what I use for my Minimal documentation site.

For this site, I push notes from Obsidian to a GitHub repo using the Obsidian Git plugin. The notes are then automatically compiled using Jekyll with my web host Netlify. I also use my Permalink Opener plugin to quickly open notes in the browser so I can compare the draft and live versions.

The color palette is Flexoki, which I created for this site. My Jekyll template is not public, but you can get similar results from this template by Maxime Vaillancourt. There are also many alternatives to Jekyll you can use to compile your site such as Quartz, Astro, Eleventy, and Hugo.

Related writing

  •  

Debian 双栈网络时开启 IPv4 优先(音频版)

PS: 用 AI 生成的图老是不合法微信封面的比例,放到文尾。本文也提供音频版, 欢迎订阅我的微信公众号。

在如今的网络世界,IPv6 正在逐渐普及,但 IPv4 依然是许多场景的“老大哥”。如果你用的是 Debian 系统,并且身处 IPv4 和 IPv6 共存的双栈网络环境,可能会发现系统默认优先使用 IPv6——这在某些情况下并不理想,比如某些服务只支持 IPv4,或者 IPv6 连接不稳定。今天,我们就来聊聊如何在 Debian 上实现 IPv4 优先,甚至在需要时完全禁用 IPv6。跟着这篇教程,轻松搞定网络配置!

为什么需要调整网络优先级?

先来点背景知识:双栈网络指的是设备同时支持 IPv4 和 IPv6 协议栈。现代操作系统(如 Debian)和浏览器通常默认优先使用 IPv6,只有当 IPv6 连接失败时才会“退而求其次”用 IPv4。这听起来很智能,但在实际场景中可能会遇到问题:

  • 服务兼容性:某些老旧服务或内网应用只支持 IPv4,IPv6 优先可能导致连接失败
  • 网络性能:部分网络环境下,IPv6 的延迟或稳定性不如 IPv4
  • 特殊需求:比如开发测试时,你可能希望强制使用某一种协议

所以学会调整 IPv4 和 IPv6 的优先级,或者在极端情况下禁用 IPv6,是每个 Debian 用户的“进阶技能”。下面,我们一步步教你搞定!

让 IPv4 优先:修改 gai.conf 文件

Debian 系统中,/etc/gai.conf 文件控制了 getaddrinfo 函数的行为,这个函数决定了系统如何选择 IPv4 或 IPv6 地址。默认情况下,IPv6 优先,但我们可以通过简单修改让 IPv4 站到“C 位”。

修改步骤

打开终端,输入以下命令编辑 /etc/gai.conf

#precedence ::ffff:0:0/96  100

去掉 # 号,修改为:

precedence ::ffff:0:0/96  100

保存并退出。

懒人福利:如果你不想手动编辑,可以直接用这条命令一键搞定:
bash

sed -i 's/#precedence ::ffff:0:0\/96  100/precedence ::ffff:0:0\/96  100/' /etc/gai.conf

测试效果

配置完成后,用 curl 命令测试一下:

curl ip.sb

也可以使用

# 查询本机外网IPv4地址
curl 4.ipw.cn

# 查询本机外网IPv6地址
curl 6.ipw.cn

# 测试网络是IPv4还是IPv6访问优先(访问IPv4/IPv6双栈站点,如果返回IPv6地址,则IPv6访问优先)
curl test.ipw.cn

如果返回的是类似 6.6.6.6 的 IPv4 地址,恭喜你,IPv4 优先已生效!如果返回的是类似 2001:db8::2 的 IPv6 地址,检查是否正确保存了配置。

原理

::ffff:0:0/96 是 IPv4 地址在 IPv6 协议中的映射范围,设置其优先级为 100(高于默认 IPv6 的优先级),系统就会优先选择 IPv4 地址。

特殊场景:强制 IPv6 优先

有些朋友可能有“奇特”需求,比如测试 IPv6 环境或某些服务明确要求 IPv6 优先。别担心,我们也可以反向操作!

同样编辑 /etc/gai.conf, 在文件末尾添加以下两行:

label 2002::/16    1
label 2001:0::/32   1

保存退出,或者用命令一键添加:
bash

echo -e "label 2002::/16    1\nlabel 2001:0::/32   1" | sudo tee -a /etc/gai.conf

原理

2002::/162001:0::/32 是常见的 IPv6 地址段,设置它们的 label 优先级为 1,确保系统优先选择这些 IPv6 地址。IANA 目前分配的公网 IPv6 地址还未覆盖到 3000:0000::/4,所以这招基本万无一失

(这个未测试过,仅供参考)

极端情况:完全禁用 IPv6

如果你的网络环境压根不需要 IPv6,或者 IPv6 总给你添乱,可以直接禁用它。以下是禁用 IPv6 的方法,适合“断舍离”爱好者。
编辑 /etc/sysctl.conf 文件:

net.ipv6.conf.all.disable_ipv6 = 1
# 禁用eth0的ipv6
net.ipv6.conf.eth0.disable_ipv6 = 1

结语

通过简单的配置文件调整,你就可以在 Debian 双栈网络中自由掌控 IPv4 和 IPv6 的优先级,甚至彻底禁用 IPv6。无论是提升网络兼容性、优化性能,还是满足特定需求,这些技巧都能让你事半功倍!


  •  

Debian 12 解决 /etc/rc.local 开机启动问题

在 Debian 12(以及 Debian 9 及以上版本)中,/etc/rc.local 是配置开机自启动脚本的传统方式,但默认未启用,导致自定义脚本无法自动运行。本文将详细指导你在 Debian 12 上启用和配置 /etc/rc.local,步骤同样适用于 Debian 9 Stretch、10 Buster 和 11 Bullseye

问题背景:rc.local 为什么不生效?

Debian 9 起采用 systemd 作为初始化系统,传统的 /etc/rc.local 默认不生效。尽管系统内置了 rc-local,但默认处于禁用状态:

root@debian:~$ systemctl status rc-local.service
○ rc-local.service - /etc/rc.local Compatibility
     Loaded: loaded (/lib/systemd/system/rc-local.service; static)
    Drop-In: /usr/lib/systemd/system/rc-local.service.d
             └─debian.conf
     Active: inactive (dead)
       Docs: man:systemd-rc-local-generator(8)

以下是默认的 rc-local.service 配置,表明它会在 /etc/rc.local 可执行时自动拉起:

root@docker:~$ systemctl cat rc-local.service
# /lib/systemd/system/rc-local.service
#  SPDX-License-Identifier: LGPL-2.1-or-later
#
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

# This unit gets pulled automatically into multi-user.target by
# systemd-rc-local-generator if /etc/rc.local is executable.
[Unit]
Description=/etc/rc.local Compatibility
Documentation=man:systemd-rc-local-generator(8)
ConditionFileIsExecutable=/etc/rc.local
After=network.target

[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
RemainAfterExit=yes
GuessMainPID=no

# /usr/lib/systemd/system/rc-local.service.d/debian.conf
[Unit]
# not specified by LSB, but has been behaving that way in Debian under SysV
# init and upstart
After=network-online.target

# Often contains status messages which users expect to see on the console
# during boot
[Service]
StandardOutput=journal+console
StandardError=journal+console

解决步骤:启用 /etc/rc.local

以下步骤助你快速启用 /etc/rc.local,实现开机脚本自动运行

创建 /etc/rc.local 文件

默认没有 /etc/rc.local,我们需要手工添加一个 /etc/rc.local 文件:

cat <<EOF >/etc/rc.local
#!/bin/bash
# 这是一个示例 rc.local 文件
# 在这里添加你的开机执行命令
# 示例:启动一个自定义脚本
# /path/to/your/script.sh
exit 0
EOF

设置可执行权限

确保文件具有可执行权限

chmod +x /etc/rc.local

启用并立即启动 rc-local 服务

启动 rc-local 服务,此时可能会弹出警告,可直接忽略

systemctl enable --now rc-local

检查服务状态, 状态显示 active (exited) 表示服务已运行

root@docker:~$ systemctl status rc-local.service
● rc-local.service - /etc/rc.local Compatibility
     Loaded: loaded (/lib/systemd/system/rc-local.service; static)
    Drop-In: /usr/lib/systemd/system/rc-local.service.d
             └─debian.conf
     Active: active (exited) since Fri 2025-05-02 18:21:26 EDT; 3s ago
       Docs: man:systemd-rc-local-generator(8)
    Process: 333116 ExecStart=/etc/rc.local start (code=exited, status=0/SUCCESS)
        CPU: 4ms

May 02 18:21:26 docker systemd[1]: Starting rc-local.service - /etc/rc.local Compatibility...
May 02 18:21:26 docker systemd[1]: Started rc-local.service - /etc/rc.local Compatibility.

添加自定义开机脚本

在 /etc/rc.local 的 exit 0 前添加命令。例如:

#!/bin/sh -e
#
# rc.local
#
# By default this script does nothing.
/data/scripts/ip.sh || true
exit 0

注意:使用绝对路径(如 /data/scripts/ip.sh),确保脚本有执行权限。|| true 可防止脚本失败影响。

测试配置

重启系统

总结

通过以上步骤,你可以在 Debian 9 及以上版本快速启用 /etc/rc.local,实现开机自动运行脚本。尽管 systemd 提供更现代的方案,rc.local 仍适合简单任务


  •  

深入浅出 MinIO:身份管理与权限配置实战

前面刚刚讲了如何搭建 MinIO,本文趁热打铁手把手教你如何配置 MinIO 权限配置。对于略懂 MinIO 的用户,配置权限可能是个挑战:如何安全地让别人读取存储内容,但不能列出所有存储桶或文件列表?或者让某个存储桶的内容可以列出? 本文将深入讲解 MinIO 的身份管理和权限配置,聚焦存储桶权限(private、public、custom)的区别和 匿名访问 的应用,通过清晰的场景示例,教你实现安全分享,同时保护数据

MinIO 身份管理基础

MinIO 的身份管理负责用户认证和授权,默认使用内置身份提供者(IDP)。核心概念包括:

  1. 用户(User)
    用户通过 Access Key(用户名)和 Secret Key(密码)访问 MinIO,可用命令行工具 mc 或 Web 控制台管理。
  2. 服务账号(Service Account)
    服务账号是为应用程序设计的专用凭证,无法登录控制台,但可通过 API 访问资源,适合自动化脚本或服务集成。
  3. 策略(Policy)
    JSON 格式的策略定义用户、服务账号或匿名访问对存储桶(Bucket)和对象(Object)的权限,基于 AWS S3 语法。
  4. 匿名访问(Anonymous Access)
    允许未认证用户(无 Access Key)通过 URL 或 API 访问特定资源,需通过存储桶权限配置。

用户组:可通过 mc admin group 批量管理用户权限,本文不展开。

我们的目标是:安全地让匿名用户或服务账号读取特定内容,限制列出存储桶或文件列表,或有选择地允许列出某个存储桶的内容。

准备工作

  1. 确保 MinIO 运行:假设 MinIO 部署在 http://localhost:9000,管理员账号为 homes4,密码为 aiy0ooCheephai0ohNahmu3Aijee6eiv
  2. 安装 mc 工具:下载 MinIO 客户端(mc),用于配置权限(支持 Windows、Mac、Linux)。
  3. 配置 mc
mc alias set homes4 http://localhost:9000 homes4 aiy0ooCheephai0ohNahmu3Aijee6eiv
Added `homes4` successfully.

准备好后,我们开始配置权限!

PS:命令行方式和可视化操作效果是一样的,下文会穿插着来,但是主要还是以可视化 web 操作为主

存储桶权限:Private、Public 和 Custom

MinIO 的存储桶权限控制匿名访问行为,分为 privatepubliccustom 三种模式,可通过 mc anonymous 命令设置。以下是它们的区别

Private(私有)

  • 定义:禁止所有匿名访问,仅允许认证用户或服务账号(有 Access Key 和策略授权)访问。
  • 适用场景:保护敏感数据,如内部文档、用户数据。
  • 效果:匿名用户访问存储桶或对象时,返回 403 Forbidden
  • 配置:mc anonymous set none homes4/web

Public(公开)

注意:风险较高,容易暴露所有文件,慎用。(我个人基本不用)

  • 定义:允许匿名用户访问,权限包括:

    • download:只读(s3:GetObject)
    • upload:只写(s3:PutObject)。
    • public:读写均可。
  • 适用场景:分享公开资源,如网站静态文件、开源软件。

  • 配置(只读):mc anonymous set download homes4/web

  • 效果:匿名用户可通过 URL(如 http://localhost:9000/web/file.jpg)读取对象,可能列出文件列表(若未限制)。

Custom(自定义)

推荐用

  • 定义:通过 JSON 策略精确控制匿名访问权限,如限制特定路径或操作。
  • 适用场景:部分公开,如只分享某个文件夹,或禁止列出文件列表。
  • 配置:见下文场景示例。
  • 效果:灵活性最高,匿名用户只能执行策略允许的操作。

存储桶权限区别总结

模式 匿名访问权限 适用场景 配置命令
Private 禁止匿名访问 敏感数据 mc anonymous set none
Public 读、写或读写(看设置) 公开资源 mc anonymous set download upload/public
Custom 自定义(JSON 策略) 部分公开、精确控制 mc anonymous set-json

实战:安全分享存储内容

通过一个最常见的场景,教你如何:

  • 让匿名用户只读特定文件,禁止列出存储桶或文件列表。

此外,还会写如何用服务账号为应用程序提供类似权限。

新建存储桶

先创建一个存储桶,默认创建的存储桶都是私有权限

root@docker:~$ mc mb homes4/cli
Bucket created successfully `homes4/cli`.
root@docker:~$ mc ls homes4
[2025-05-01 11:26:11 EDT]     0B cli/
[2025-05-01 11:23:57 EDT]     0B ddd/
[2025-05-01 10:38:53 EDT]     0B homes4/
[2025-05-01 11:29:06 EDT]     0B web/

场景:只读特定文件,禁止列出存储桶或文件列表

需求:存储桶 web 包含 public/photo.jpg 和 private/secret.pdf。想让匿名用户只读 photo.jpg,但不能列出 web 桶中 的文件列表,也不能访问其他文件或存储桶

步骤:

设为 Private(默认安全)

mc anonymous set none homes4/web

创建自定义策略:只允许匿名读取 public/photo.jpg

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": ["s3:GetObject"],
      "Effect": "Allow",
      "Resource": ["arn:aws:s3:::web/public/photo.jpg"],
      "Principal": "*"
    }
  ]
}
  • s3:GetObject:允许读取对象
  • Resource:精确到 photo.jpg, 例如你想某个目录读写 arn:aws:s3:::web/public/*
  • Principal: "*":表示匿名用户
  • s3:ListBucket:禁止列出文件列表

应用策略

mc anonymous set-json custom.json homes4/web

控制台可以直接编辑存储桶的 Access Policy,改成 Custom,内容和上面一致

查看策略

root@docker:~$ mc anonymous get-json homes4/web
{
 "Statement": [
  {
   "Action": [
    "s3:GetObject"
   ],
   "Effect": "Allow",
   "Principal": {
    "AWS": [
     "*"
    ]
   },
   "Resource": [
    "arn:aws:s3:::web/public/photo.jpg"
   ]
  }
 ],
 "Version": "2012-10-17"
}

效果

  • 匿名用户可通过 http://localhost:9000/web/public/photo.jpg 下载 photo.jpg。
  • 其他访问都是 403

服务账号:为应用程序配置相同权限

需求:为应用程序(如网站后端)提供只读 public/photo.jpg 的权限,类似上述场景,但通过服务账号实现

步骤:

创建用户(服务账号需绑定到用户):

密码长度需要 8-40

mc admin user add homes4 app1user app1pass

web 可视化操作,policy 那里随便选个小权限的,后面需要调整

创建服务账号:为 app1user 生成服务账号,绑定 custom.json 策略

mc admin user svcacct add homes4 app1user --access-key svc1 --secret-key svc1pass --policy custom.json

可视化操作创建服务状态,凭证信息会随机生成,且只显示一次

策略信息只能在生成 access key 后才能编辑操作

实用技巧:兼顾安全与便利

  • 优先 Custom 模式:比 public 安全,精确控制分享内容。
  • 避免 Public 模式:除非真想完全公开,否则可能暴露所有文件。
  • 检查权限:定期用 mc anonymous get-json homes4/web 确认存储桶权限
  • 随机存储桶名:用随机名,降低被猜到风险
  • 用预签名 URL 临时分享:生成带有效期的链接,过期失效:
# 分享下载链接,下载速度限制10MB/s有效期7天
mc share download --limit-download 10MB homes4/web/private/secret.pdf

总结

MinIO 的权限配置简单而灵活,用服务账号拥有某个存储桶的只读权限就行了。


  •  

暮春驻帐渤公岛

“五一”节约了朋友一起去渤公岛露营遛娃——像我们这个年纪与阶段,远的地方去不了,近的周边去腻了,干脆摆烂到底, […]
  •  

NotebookLM音频概览支持中文

4月30日消息,谷歌宣布其基于人工智能的笔记和研究助手工具 NotebookLM 的“音频概览(Audio Overviews)”功能新增 76 种语言支持。该功能于去年推出,旨在通过人工智能虚拟主持人根据用户上传到 NotebookLM 的文档(如课程阅读材料或法律摘要)生成播客,帮助用户以另一种方式理解和消化文档中的信息。

谷歌表示,此前“音频概览”功能仅支持用户账户所设置的首选语言。如今,公司新增了“输出语言”选项,用户可以自由选择生成“音频概览”的语言。谷歌强调,用户可以随时更改语言设置,这样就能根据需要轻松创建多语言内容或学习材料。

谷歌在一篇博客文章中举例说明了这一功能的实用性:“例如,一位准备关于亚马逊雨林课程的教师可以与学生共享多种语言的资源,比如葡萄牙语纪录片、西班牙语研究报告和英语学习报告。学生们可以将这些资料上传到 NotebookLM,并在他们偏好的语言中生成关键要点的音频概览。”

新增支持的语言包括南非荷兰语、阿拉伯语、阿塞拜疆语、保加利亚语、孟加拉语、加泰罗尼亚语、捷克语、丹麦语、德语、希腊语、西班牙语(欧洲、拉丁美洲、墨西哥)、爱沙尼亚语、巴斯克语、波斯语、芬兰语、菲律宾语、法语(欧洲)、法语(加拿大)、加利西亚语、古吉拉特语、印地语、克罗地亚语、海地克里奥尔语、匈牙利语、亚美尼亚语、印尼语、冰岛语、意大利语、希伯来语、日语、爪哇语、格鲁吉亚语、卡纳达语、韩语、孔卡尼语、拉丁语、立陶宛语、拉脱维亚语、迈蒂利语、马其顿语、马拉雅拉姆语、马拉地语、马来语、缅甸语、尼泊尔语、荷兰语、挪威语(新挪威语)、挪威语(书面挪威语)、奥里亚语、旁遮普语、波兰语、普什图语、葡萄牙语(巴西、葡萄牙)、罗马尼亚语、俄语、信德语、僧伽罗语、斯洛伐克语、斯洛文尼亚语、阿尔巴尼亚语、塞尔维亚语(西里尔字母)、瑞典语、斯瓦希里语、泰米尔语、泰卢固语、泰语、土耳其语、乌克兰语、乌尔都语、越南语、中文(简体)和中文(繁体)。

NotebookLM访问地址:https://notebooklm.google.com

来源:IT之家

  •  

超简单!5分钟用群晖搭建 MinIO + Caddy 对象存储

对象存储和 Web 服务是开发者必备工具。MinIO 凭借高性能和 S3 兼容性成为存储领域的“顶流”,Caddy 则以自动 HTTPS 和极简配置深受开发者喜爱。结合 Docker Compose,只需 5 分钟,你就能搭建一个安全、高效的对象存储服务!本文手把手教你部署 MinIO + Caddy。

前提要求

  • 群晖/大盘鸡(大硬盘 VPS):运行 MinIO 服务。
  • 大带宽机器(如腾讯云锐驰 200):运行 Caddy,代理 MinIO 服务。
  • 组网服务(如 Tailscale/EasyTier):确保内网互联互通

我的网络环境通过组网服务实现全链路打通,家里的群晖与腾讯云锐驰无缝互联,Caddy 代理内网 MinIO 服务,借助锐驰大带宽对外提供高效访问。

为啥选择 MinIO + Caddy

  • MinIO:开源、S3 兼容、支持分布式存储,轻松应对海量数据。
  • Caddy:自动 HTTPS、配置简洁,专为高并发优化,支持丰富插件。
  • Docker Compose:一键部署多容器,省时省力。

组合优势:Caddy 为 MinIO 提供安全访问和负载均衡,Docker Compose 确保部署简单,完美适配静态文件托管、API 服务或私有云存储。

5 分钟快速部署

根据需求,可选择在同一机器上部署或分布式部署。我因跨机器需求,选择分布式部署。

部署 MinIO

群晖已支持 Docker Compose,通用配置如下:

  • docker-compose.yaml
version: "3"
services:
  minio:
    image: bitnami/minio:2025
    # image: ccr.ccs.tencentyun.com/k7scn/minio:2025
    container_name: minio
    restart: always
    environment:
      - MINIO_ROOT_USER=homes4
      - MINIO_ROOT_PASSWORD=aiy0ooCheephai0ohNahmu3Aijee6eiv
      - MINIO_DEFAULT_BUCKETS=homes4
    ports:
      - '9000:9000'
      - '9001:9001'
    volumes:
      - '/volume1/docker/minio/data:/bitnami/minio/data'

注意:可能遇到目录权限问题,可运行以下命令解决:
chmod 777 /volume1/docker/minio/data -R

访问 MinIO 管理界面

在浏览器输入 http://NAS_IP:9001http://域名:9001,进入 MinIO 登录页面,使用 MINIO_ROOT_USERMINIO_ROOT_PASSWORD 登录。

安装客户端

提供 Linux/amd64 的 mc 客户端下载链接:

https://c.ysicing.net/oss/tiga/linux/amd64/mc

或从官网获取最新客户端 Install mc

部署 Caddy

  • docker-compose.yaml
services:
  caddy:
    image: ysicing/caddy2
    # image: ccr.ccs.tencentyun.com/k7scn/caddy2
    container_name: caddy
    restart: always
    # 可选host或者端口映射
    network_mode: host
    volumes:
      - '/data/caddy/cfg:/etc/caddy'
      - '/data/caddy/data:/data'
      - '/data/caddy/config:/config'
      - '/data/caddy/log:/var/log/caddy'

此 Caddy 镜像为我的定制版,内置以下常用插件:

xcaddy build \
    --with github.com/caddy-dns/cloudflare \
    --with github.com/caddy-dns/tencentcloud \
    --with github.com/caddy-dns/alidns \
    --with github.com/caddy-dns/dnspod \
    --with github.com/ysicing/caddy2-geocn \
    --with github.com/mholt/caddy-l4 \
    --with github.com/mholt/caddy-ratelimit

Caddy 配置

配置文件位于 /data/caddy/cfg,目录结构如下:

/data/caddy/cfg# tree
.
├── Caddyfile
├── load.sh
└── site
    ├── cr.caddy
    ├── dev.caddy
    ├── hub.caddy
    ├── http.caddy
    └── minio.caddy

Caddyfile 示例

(LOG) {
	log {
		output file "{args[0]}" {
			roll_size 50M
			roll_uncompressed
			roll_local_time
			roll_keep 3
			roll_keep_for 7d
		}
		format json
	}
}

(COMCFG) {
	encode zstd gzip
}

(ERR) {
	handle_errors {
    	# 异常重定向
		redir https://dxgw-{err.status_code}.caddy.local
	}
}

{
	debug
	# admin off
}

(TLS) {
tls {
  dns tencentcloud {
    secret_id AKID***
    secret_key CH85***
  }
}
}

import /etc/caddy/site/*.caddy

MinIO 配置

minio.caddy

域名 {
	import ERR
    # 如果是内网域名可以设置import TLS开启dns签发证书
    # import TLS
    import LOG "/var/log/caddy/minio.log"
	@rootPath {
		path /
	}
	handle @rootPath {
		respond "EdgeONE 451 Forbidden" 451
	}
    # 内网minio地址
    reverse_proxy 100.90.80.2:9000
}

同理,minio 控制台也是一样,通常控制台不对外开放,仅限内网访问。

minio-api.caddy

域名 {
	import ERR
    # 如果是内网域名可以设置import TLS开启dns签发证书
    # import TLS
    import LOG "/var/log/caddy/minio-api.log"
    @denied not remote_ip 192.168.1.0/24
    respond @denied "Access Denied" 403
    # 内网minio api地址
    reverse_proxy 100.90.80.2:9001
}

重新加载配置

curl "http://localhost:2019/load" -H "Content-Type: text/caddyfile" --data-binary @Caddyfile

使用 MinIO

配置 MinIO 客户端(mc)以访问服务:

# 内网
mc alias set home http://100.90.80.2:9000 homes4 aiy0ooCheephai0ohNahmu3Aijee6eiv
# 外网
mc alias set home https://域名 homes4 aiy0ooCheephai0ohNahmu3Aijee6eiv

更多场景可结合 restic,rclone,下载服务

写在最后

通过 MinIO 和 Caddy 的组合,你可以快速搭建一个高性能、安全的对象存储服务。本文提供的配置仅供参考,MinIO 还有更多玩法等待探索!


  •  

中西区闲逛

天气晴朗,本来想乘坐南港岛线到南区海边逛一逛,结果过于自信坐过换乘站了,索性就随便找个出口随便 walk 一下,因为我讨厌港岛线的原因,一旦到了港岛我都尽量步行,所以活动范围非常小。不过此次漫无目的的相关让我发现港岛的魅力,虽然我仍旧讨厌港岛线。 德己立街 德己立街是兰桂坊的主街,我居然是第一次来到这里,感觉非常新鲜,不过画风和铜锣湾那边还是相似的。 经典香港的士 香港外国人还是蛮多的 拍到一老哥双手合十 悠闲老哥 摄影姐和健身姐 混乱又带点秩序 繁忙的十字路口 繁忙的十字路口 云咸街 是我没见过的路牌,一看到就知道此次walk 稳了。 中东女人 港岛的建筑阳光打上去非常漂亮 中银 终审法院 – 前立法会大楼 走到这边已经有点熟悉了 建筑太漂亮啦 等公交 香港双层公交车特别多 diesel 喷涂的叮叮车,曾经我最喜欢的品牌。 叮叮车 叮叮车 叮叮车 广告喷涂的的士 谈笑风生 秩序感 港湾消防局 维多利亚港 直升机 乘坐天星小轮过海,一切都开始熟悉起来。 遥望港岛 弥敦道众生相 堪富利士道 九龙公园
  •  

五一大盘大带宽物理服务器活动推荐

之前,也有小伙伴让我推荐几家物理服务器(后面简称杜甫), 趁着五一假期有活动,推荐两家我都在用的,各有优势,但是活动期价格会有优惠。

物语云

优点

  • 工单响应速度快
  • 有 DDoS 攻击防护
  • 大带宽流量套餐/上行限速的不限流量套餐(账单日可互换)
  • 测试不满意满足条件可退款

不足

  • 多台机器暂不支持组内网
  • 暂不支持 ipv6
  • 暂时只支持国内
  • 只支持操作系统安装

目前活动

立减优惠码 Event8259

物语云计算物理机活动:双路铂金物理机600G防护399/月起。
🎉限时立减100循环优惠码:
Event8259
※优惠码使用流程:登录账号后选择对应产品,在下单处点击“我有优惠码”之后填入。

硬件配置:
物理服务器|NVMe SSD|资源完全独享|自助管理面板
CPU:双路铂金Platinum8259CL 48核96线程
内存:128G RECC DDR4
硬盘:1TB NVMe SSD

网络规格:
以下四种网络规格可选,价格相同:
 - 浙江宁波/电信/50Mbps独享/100G防护/不限流量
 - 湖北十堰/电信/50Mbps独享/600G防护/不限流量
 - 浙江宁波/移动/50Mbps独享/10G防护/不限流量
 - 浙江宁波/电信/500Mbps流量计费/100G防护/双向2TB

优惠活动:
销售价:1150/月 优惠价:499/月
活动价:399/月,循环优惠,续费同价。

※上述产品均为独享带宽,并非“峰值”、“共享”带宽,可7x24小时随时跑满,拒绝带宽竞技场!

<服务协议与退款>
云服务器产品 24 小时内上行方向使用不超过30GB流量均支持退款,
物理服务器产品 24 小时内上行方向使用不超过100GB流量均支持退款,每用户每月最多退款 1 次。

购买链接 物语云杜甫

测评

具体可以参考 https://www.nodeseek.com/post-303956-1,带宽是可以长时间跑满的。

狗云

多年资深狗云老用户了,目前我只用他们家的 KC 杜甫、重庆联通杜甫

优点

  • 相比较其他杜甫首发优惠力度很大
  • 预购活动多
  • 香港大带宽流量套餐
  • 支持多台机器组网
  • 支持 ipv6, 掩码 /64
  • 安装系统支持种类多
  • 支持快递硬盘

缺点

  • 只支持工单响应(可以 PY 德克狗老板)
  • 杜甫 VNC 需要工单才能开,且有时间限制(每次半小时,记得不太清了)
  • 重装每小时限制一次
  • 需要实名

目前活动

预售活动

预售活动力度大些,折扣也比较高, 走 aff 成功绑定后返利一半

预售地址 二代铂金服务器预售

主要说一下网络规则,支持切换每次手续费 20, 推荐优化线路,优化线路可以附加国际线路,但是不支持附加精品线路

网络规格:
以下三种网络规格可选,价格相同:
 - 精品线路 75 Mbps, 额外附加20元/个/月
 - 优化线路  750 Mbps,额外附加15元/个/月
 - 国际线路  1000 Mbps,额外附加10元/个/月
 - 额外附加高防IP200元/个/月

五一 · 劳动节促销

活动一:
折扣码“51”,新开弹性云7折,新开经典云(特价机除外)8折。
折扣码“jian100”,新开独立服务器优惠100元。

活动二:
5月1日-5月5日,单笔充值每满100元送10元。

活动三:
5月1日-5月5日,幸运大转盘每日抽取5折码,流量,余额等奖品。

活动四:
二代铂金服务器预售:https://ds.dogyun.com/server/preorder

香港-KC物理服务器邮件硬盘添加活动将在5月10日开始接收

测评 KC

具体可以参考 https://www.nodeseek.com/post-314492-1

其他 CQA

他们家的老款绝版 CQA 月付 200 还是挺不错的,稳定的很,可以收一收。

最后

祝各位老板五一假期玩的开心。


欢迎关注我的微信公众号
  •  

昆明游记

一次偶然的机会,我有幸前往云南昆明,也趁此机会游览一下这个著名的“春之城”。
  •  

福建之行

用一周时间去了一趟福建,参加了一个婚礼顺便把福建多个城市都打卡了一下 行程 4月13日·福州 8:13 高铁 上海虹桥-福州 12:30 到达福州酒店办理入住,简单休整 13:30 三坊七巷吃吃逛逛 17:00 去上下杭继续吃吃逛逛 18:00 在闽江边青年广场拍日落 4月14日·平潭 9:30 租车从福州出发前往平潭 11:30 到达平潭仙人井景区 15:00 一路向北沿海边逛逛拍拍 16:40 到达北部湾玻璃栈道 18:20 到达北部生态廊道F5观景台拍日落 4月15日·莆田 12:00 高铁到莆田 14:30 大巴-乘船至湄洲岛 15:00 到湄洲岛上民宿办入住 16:00 租电驴到湄洲岛最南端鹅尾海蚀公园 18:30 在山顶灯塔拍日落 18:30 在山顶灯塔拍日落 19:30 在农贸市场附近吃晚餐 4月16日·莆田&泉州 5:30 在民宿露台看日出,然后回去继续睡觉 10:00 天妃故里,了解妈祖文化 12:00 妈祖祖庙 17:00 乘船-大巴-到达莆田火车站前往泉州 20:00 泉州古城,开元寺,西街,钟楼 4月17日·泉州&永安 10:00 南少林寺 12:00 蟳埔民俗文化村 16:00 到达泉州站,坐城际动车去永安 18:30 到达永安,晚餐 20:00 婚礼前准备 4月18日·永安 5:00 接亲 12:00 婚礼 15:00 贡川古镇 17:00 九龙竹海 4月19日·永安 7:30 早餐,特色小吃 9:00 天宝岩景区 12:30 午餐 15:15 乘高铁返回上海 福州 由十条东西走向的小街巷构成 “棋盘状” 街区,南后街西边三条为 “三坊”,即衣锦坊、文儒坊、光禄坊,东边七条为 “七巷”,从北到南依次是杨桥巷、郎官巷、塔巷、黄巷、安民巷、宫巷、吉庇巷。坊巷内院落沿中轴线对称分布,宅院外有围墙,内部多进院落沿纵深轴线布置,为中轴线对称布局,白墙瓦屋,...
  •  

耗子面板和DPanel简单体验

最近毕业设计临近尾声,代码也敲完了,目前就剩稍微的调优,就可以开始写论文啦!在闲暇时间,我也尝试部署了一些不一样的面板程序,总感觉1panel稍微有些复杂,很多功能并用不上,比如GPU,下面简单分享一下我的体验。
  •  

沉迷塔防的乐趣:推荐Kingdom Rush系列游戏

作为一名开发者,我下班后除了写写代码、折腾技术,也喜欢通过游戏放松一下。塔防类游戏是我的最爱,尤其 Ironhide Game Studio(铁皮) 的 Kingdom Rush 系。这系列塔防游戏以扎实的玩法、精致的设计和恰到好处的挑战性,俘获了无数玩家的心。今天,我想向大家安利这个系列,希望你也能爱上它的独特魅力!

Kingdom Rush 系列简介

We make the games we'd love to play!

Steam 直达

Kingdom Rush 系列始于 2011 年的 Flash 游戏《Kingdom Rush》(早期我记得叫 皇家守卫军, 现在普遍翻译为 王国保卫战),随后推出了多款续作,覆盖 PC、移动端(iOS/Android)和主机平台,核心玩法保持一致,同时不断创新。目前包括以为五代作品(衍生品不算):

-《Kingdom Rush》(2011):初代经典,奠定系列基础。
-《Kingdom Rush: 前线》(2013):地图更复杂,敌人多样。
-《Kingdom Rush: 起源》(2014):优化塔升级,精灵主题, 节奏感比较好。
-《Kingdom Rush: 复仇》(2018):扮演反派,暗黑风格暗黑风格搭配创新塔种, 我最推荐。
-《Kingdom Rush 5: 联盟》(2024):双英雄机制,通关难度适中,兼顾新老玩家。

游戏设定在一个奇幻世界,玩家扮演指挥官,通过建造防御塔、操控英雄和使用魔法,抵御兽人、巨魔、恶魔等多样化敌人的进攻。核心玩法直观易上手:沿固定路线部署防御塔,合理分配资源,阻挡敌人前进。防御塔分为弓箭塔、兵塔、魔法塔和炮塔四类,每种塔可升级并解锁独特技能,如弓箭塔的连发箭、魔法塔的闪电链,策略性极强。
此外,系列引入了英雄系统,每位英雄拥有独特技能,例如弓箭手擅长远程狙击,骑士适合近战肉搏。玩家需操控英雄移动,堵截漏网敌人或支援薄弱防线。魔法技能(如陨石雨、援军召唤)则为战斗增添变数,关键时刻往往能逆转局势。特别值得一提的是,《复仇》的凤凰能喷射烈焰清场,《联盟》的双龙组合则带来史诗级输出,令人印象深刻。

为什么推荐 Kingdom Rush?

Kingdom Rush 系列由* Ironhide Studio* 精心打造,品质始终如一。以下是我推荐它的几大理由:

难度平衡,适合各水平玩家

关卡设计用心,普通模式新手友好,挑战模式(如老兵模式,即高难度关卡)则满足硬核玩家。敌人波次与资源分配恰到好处,既不无脑也不虐心。

高可玩性,玩法丰富多样

每作包含十余主线关卡,外加挑战关和隐藏关,内容充实。防御塔与英雄的多样组合,让每关都有新鲜玩法,重复游玩也不乏味。

碎片时间友好,单机体验纯粹

游戏无需联网,随时暂停,适合忙碌的玩家抽空玩一把。单机设计无内购压力,带来纯粹的游戏乐趣。

性价比高,物超所值

游戏在 Steam 和移动端定价多在几十元,经常打折。DLC 内容丰富,诚意十足,堪称塔防游戏的良心之作。

我的个人体验

高中时,我在 4399 平台接触到初代 Kingdom Rush,被它精致的画面和紧凑的节奏深深吸引。熬夜尝试不同防御塔组合,解锁隐藏关卡的成就感让我乐此不疲。后来,系列续作不断推出,我始终保持热情。2024 年 Kingdom Rush 5: 联盟 发布后,我迫不及待挑战老兵模式。双英雄机制让战斗更灵活,但也略微降低了通关难度。相比之下,我更偏爱《复仇》的暗黑风格和高难度设计,每次通关都充满成就感,尽管偶尔会被棘手的关卡“虐”得抓狂。

写在最后

Kingdom Rush 系列适合各类型玩家,无论是喜欢策略的硬核玩家,还是想休闲娱乐的轻度玩家,都能找到乐趣。作为技术人,我欣赏它在关卡设计和技能平衡上的用心。如果你喜欢塔防,或想找款轻松耐玩的单机游戏,不妨试试 Kingdom Rush。一旦上手,可能就停不下来!


  •  

只需一张图, AI就能拍大片: Pollo引爆短视频创作革命


AI进化迭代的速度太快了: AI视频工具Pollo (一张图片就能生成5秒公主抱/法式接吻等视频)

在AI技术飞速演进的今天,新一代视频生成工具Pollo横空出世,再次刷新了人们对AI创造力的认知。只需上传一张图片,Pollo便能生成5秒左右的动态视频,无论是充满浪漫氛围的法式接吻,还是童话般的公主抱画面,都能精准呈现,细节生动,情感自然。

相比以往动辄需要多张图片、复杂提示词、甚至训练模型的生成方式,Pollo的操作几乎简单到极致,大大降低了内容创作的门槛。这种从”静态到动态”的极速转化,不仅体现了AI在理解视觉信息和动作逻辑方面的重大突破,也预示着AI内容生产将进入一个全新的加速阶段。

回顾过去一年,AI从文生图、图生图到文生视频、图生视频的进步节奏几乎是按月计算的。Pollo的出现,标志着图生视频领域迈入了“即拍即生”的时代——未来个人创作者、小团队乃至普通用户,都有机会像专业影视团队一样快速制作高质量的短片内容。

AI的进化,远比我们想象中还要快。也许在不久的将来,”一念成片”、”一想成电影”不再是幻想,而是每个人指尖的日常。

Pollo AI视频制作 (持续更新)

PolloAI视频工具可以制作多种AI视频,只需要一段话或者一两张图片。注册后有100个积点,可以免费用10次,每天还可以打卡获得积分,感觉免费版就够用了。

pollo-ai-daily-checkin 只需一张图, AI就能拍大片: Pollo引爆短视频创作革命 AIGC-视频 人工智能 (AI) 在线工具 小技巧 视频 资讯 软件

Pollo AI视频生成工具:每天可以打卡获得免费积分。

pollo-ai-plan-prices 只需一张图, AI就能拍大片: Pollo引爆短视频创作革命 AIGC-视频 人工智能 (AI) 在线工具 小技巧 视频 资讯 软件

Pollo AI视频生成工具:付费版的价格

pollo-ai-video-tool-features 只需一张图, AI就能拍大片: Pollo引爆短视频创作革命 AIGC-视频 人工智能 (AI) 在线工具 小技巧 视频 资讯 软件

Pollo AI视频制作工具:短视频的利器,可以图生视频,文生视频,也可以在现有的视频丰添加AI效果。

公主抱 Bridal Carry

我媳妇很重,现实中我真抱不动,更不用说来一个公主抱了。

视频:油管/Youtube | B站/小破站 | 微博视频 | 西瓜视频 | 微信视频号 | X/推特 | 小红书 | Facebook

法式接吻 French Kiss – AI可以拿来喂狗粮

和媳妇来个法式接吻,秀个恩爱

视频:油管/Youtube | B站/小破站 | 微博视频 | 西瓜视频 | 微信视频号 | X/推特 | 小红书 | Facebook

也可以把ChatGPT生成的Ghibli动画图片拿来用!

也支持在Ghibli动画图上二次创作。

我媳妇说:生成视频不清楚,很模糊。确实是,感觉之后AI Agent会互相协作,视频生成后可以让AI再变高清4K无码之类的。未来可能真的要来了,听说2027年就能全面进入AGI时代,到时候平面动画、设计师、视频剪辑师、程序员、律师、医生等职业需求可能要大幅度减少了,被社会淘汰的会是那些不懂得用AI工具的人。

视频模糊变清楚

这个工具里也有视频变清楚的功能,选择了一个4k,除了生成的视频文件确实变大了一些,效果并不是感觉特别明显(当然可能确实有点效果)

和媳妇高清版本4k的法式接吻 French Kiss in 4k

Pollo立马注册,上传一张照片就能生成AI视频!

AI 图片/照片/视频 工具分享/小技巧

英文:AI Video Tool: Pollo.AI (AI Scales Fast!)

本文一共 1096 个汉字, 你数一下对不对.
只需一张图, AI就能拍大片: Pollo引爆短视频创作革命. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 只需一张图, AI就能拍大片: Pollo引爆短视频创作革命 AIGC-视频 人工智能 (AI) 在线工具 小技巧 视频 资讯 软件
The post 只需一张图, AI就能拍大片: Pollo引爆短视频创作革命 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 个人网站Adsense广告申请通过: 需要最少15篇文章 我的个人网站 zhihua-lai.com 本月通过了 Adsense 审核,终于可以再次放置广告,赚些零花钱了。 其实,最初 Adsense 账户通过审核后就能直接放广告,但后来规则变得严格了。如果一个网站长时间没有放置任何 Adsense 广告代码,账户资格会被撤销。重新启用时,需要进行单独审核。如今,在 Google Adsense 中新增一个域名,也必须通过审核后才能投放广告。 为了让我的网站通过审核,我尝试了几次,但总是被拒,原因之一是必须要有足够的内容支持。例如,以前我做的工具网站 SlowAPI.com...
  2. 特朗普加关税的公式竟然是EXCEL里弄的? 这两天中美关税大战越演越烈,据说,特朗普加关税的计算方式竟然是直接在EXCEL电子表格里弄的,具体如下: 其中 I 是 Import,进口;E 是 Export 出口。 优美又实用的公式家族又添新成员 勾股定理: 欧拉恒等式: 牛顿运动定律: 爱因斯坦质能等价公式: 特朗普的“互惠关税”公式:,其中 I...
  3. 新的旅途 – 离别总是伤感的, 离开了一起创业的公司 2周前, 正式离开了一起创业的公司, 这公司是我博士毕业后的第一份正式工作, 待了8年多了, 离别总是伤感的. 我是9月初提的离职, 三个月 Notice Period, 最后的几周交接完工作确实没有什么压力了. 11月30号, 在公司最后一天, 公司有个习惯, 对于 Good...
  4. Minuet in C – 小步舞曲C Posted Youtube – 油管地址 孩子弹琴的时候最帅了. 我现在成了我儿子的粉丝了. Eric (Aged 6) is playing “Minuet in C” when...
  5. 上了年纪痛风脚崴了的惨痛经历(尿酸过高) 痛风是一种疼痛性关节炎, 当血液中的尿酸水平高, 导致晶体形成并积聚在关节内或关节周围, 就会发生痛风. 当人体分解一种叫做嘌呤的化学物质时, 就会产生尿酸. 嘌呤自然存在于您的身体中, 也存在于某些食物中. 尿酸通过尿液从体内排出. 上两周, 和媳妇吵架, 然后就自己一人睡, 有一天起床后脚踝就开始疼了, 然后明显比左脚肿了. 我刚开始就以为是睡觉的时候不小心姿势不对,...
  6. 今晚可能是英国倒数第三次冬令时时间调整 来英国生活过的人都知道 英国有一个很有意思的夏令时和冬令时时间调整. 夏令时是每年3月份的最后一个星期天凌晨会暴力的把时间往后调整1个小时, 也就是1点的时候很神奇的时间会自动变成2点. 冬令时是相反, 在每年的十月份最后一个周日凌晨暴力的把时间往前调整一个小时, 也就是2点神奇的变成1点. 现在大多数电子设备都能自动调整时间了, 比如你的智能手机和电脑. 但是传统的一些钟表, 还需要人为的调整时间. 夏令时 (Daylight Saving Time)调整的那一天,...
  7. 优衣库 感觉像炒作 这几天 这个在北京三里屯 ‘优衣库’ 试衣间自拍的视频真的很火, 男女主角均被人肉. 不可否认 这个效果还真的不错 因为我之前根本不知道 “优衣库” 是干嘛的 很刺激 在试衣间XXOO是多么爽的事情 女主角 95后妹子 长相甜美....
  8. 因为一个 try catch 好几天优秀点赞程序挂掉了我却以为是节点的问题 YY银行有四个点赞程序, 分别跑于四台服务器上, 它们是: 股东点赞(代理给 @justyy ) 自己的号 足球队 优秀作者(排名前30, 还有跟随点赞) 这几天我就发现, 有些赞没有给出, 我还以为是节点的原因, 因为查看记录, 发现是...
  •  

Don't make Google sell Chrome

The web will be far worse off if Google is forced to sell Chrome, even if it's to atone for legitimate ad-market monopoly abuses. Which mean we'll all be worse off as the web would lose ground to actual monopoly platforms, like the iOS App Store and Google's own Play Store.

First, Chrome won the browser war fair and square by building a better surfboard for the internet. This wasn't some opportune acquisition. This was the result of grand investments, great technical prowess, and markets doing what they're supposed to do: rewarding the best. Besides, we have a million alternatives. Firefox still exists, so does Safari,  so does the billion Chromium-based browsers like Brave and Edge. And we finally even have new engines on the way with the Ladybird browser

Look, Google's trillion-dollar business depends on a thriving web that can be searched by Google.com, that can be plastered in AdSense, and that now can feed the wisdom of AI. Thus, Google's incredible work to further the web isn't an act of charity, it's of economic self-interest, and that's why it works. Capitalism doesn't run on benevolence, but incentives.

We want an 800-pound gorilla in the web's corner! Because Apple would love nothing better (despite the admirable work to keep up with Chrome by Team Safari) to see the web's capacity as an application platform diminished. As would every other owner of a proprietary application platform. Microsoft fought the web tooth and nail back in the 90s because they knew that a free, open application platform would undermine lock-in — and it did!

But the vitality of that free and open application platform depends on constant development. If the web stagnates, other platforms will gain. But with Team Chrome pushing the web forward in a million ways — be it import maps, nested CSS, web push, etc. — is therefore essential.

This is a classic wealth vs. riches mistake. Lawyers see Chrome as valuable in a moment's snapshot, but the value is all in the wealth that continued investment brings. A Chrome left to languish with half the investment will evaporate as quickly as a lottery winner's riches. Wealth requires maintenance to endure.

Google should not get away with rigging the online ad market, but forcing it to sell Chrome will do great damage to the web.
  •  

在群晖上使用 Docker 部署 Proxmox Backup Server

在群晖上使用 Docker 部署 Proxmox Backup Server

Proxmox Backup Server(后续简称 PBS) 是 PVE 容器、虚拟机的备份解决方案,支持增量、重复数据消除备份,可以节省存储空间,同时支持加密和完整性校验。

PBS 官方提供了 iso 格式的镜像,同时社区也有开源的 Docker 镜像的部署方式,为了在群晖等 NAS 上部署方便,本文使用 Docker 的方式进行部署,项目地址:https://github.com/ayufan/pve-backup-server-dockerfiles

镜像:

  • ayufan/proxmox-backup-server:latest
  • ccr.ccs.tencentyun.com/k7scn/proxmox-backup-server:latest (国内镜像)

部署 PBS

使用 Docker 或者 Docker Compose 方式部署都可以。方便起见,统一使用 docker compose 方式部署, 不管群晖还是飞牛都适用。

安装配置 PBS

参加官方的 compose 示例,可以配置如下:

  • docker-compose.yaml
services:
  pve-backup-server:
    image: ayufan/proxmox-backup-server:latest
    # image: ccr.ccs.tencentyun.com/k7scn/proxmox-backup-server:latest
    container_name: pbs
    ports:
      - "8007:8007"
    volumes:
      - /data/pve/pbs/etc:/etc/proxmox-backup
      - /data/pve/pbs/log:/var/log/proxmox-backup
      - /data/pve/pbs//lib:/var/lib/proxmox-backup
      - /data/pve/pbs/data:/backups
    tmpfs:
      - /run
    restart: always

唯一需要关注的是

  • /data/pve/pbs/data:/backups 存储你的备份数据的,所属目录空间需要大一些

配置 PBS

在启动容器后,访问 https://<ip>:8007/ 端口即可进行登录,默认的用户名是 admin,密码是 pbspbs,选择 Proxmox Backup authentication server 进行登录,可把语言切换成中文,证书问题可忽略

配置备份存储

配置存储路径

首次登录是没有配置存储的,在 数据存储中添加数据存储,将刚才映射的 /backups 目录作为存储路径

配置用户权限

默认情况下,新用户和 API 令牌没有任何权限。给用于备份的 admin 用户添加备份路径的访问权限

获取 PBS 指纹信息

指纹用于在 PVE 中添加备份时进行认证

在 PBS 仪表盘里显示指纹备用

配置 PVE

在 PVE 的数据中心-存储中选择添加 Proxmox Backup Server,输入认证信息和指纹;Datastore 为 Proxmox Backup Server 的数据存储的名称,如 local, 相关参数都是上面步骤配置的

验证备份是否可用

在 PVE 的数据中心-备份中添加备份计划,按需添加,添加完成后选择现在运行即可开始备份

在 PBS 处验证看是否有备份数据

End

到这里 PVE 系列教程结束了,新买的杜甫应该算折腾好了,趋向于稳定了。后面会陆续写些之前工作积攒的一些小技巧,吐槽一下 Caddy 新版本 libdns 变更真是一个特别大的破坏性更新。


  •  

繁花与缪斯特展

上周六翻看无锡博物院公众号,看到4月25日至8月24日有《繁花与缪斯:阿尔丰斯·穆夏的世纪绮梦》特展,果断下单 […]
  •  

Proxmox VE 添加监控

Proxmox VE 添加监控

PVE 支持添加 InfluxDB 或者 Graphite 作为指标数据的存储;在添加配置后,PVE 会主动上报相关监控数据,用于记录和监控 PVE 的状态

效果图

使用 InfluxDB 和 Grafana 对 PVE 进行监控,效果如图:

本文适用 8.x 版本,仅在 PVE8.3、PVE8.4 版本测试过。

安装配置 InfluxDB

当前 PVE 版本需要使用的 InfluxDB v2 版本,使用 Flux 语法进行查询。方便操作,本次仅提供 compose 部署方式,k8s 部署也是类似比较简单。

  • docker-compose.yaml
services:
  influxdb:
    image: bitnami/influxdb:2
     # image: ccr.ccs.tencentyun.com/k7scn/influxdb:2
    container_name: influxdb
    environment:
      - INFLUXDB_ADMIN_USER_PASSWORD=Cha3ie7gahthooyeech1xohgaeyax7Gi
      - INFLUXDB_ADMIN_USER_TOKEN=Eing5yaew6ujoo9ohd3saeH6neeshei3
      - INFLUXDB_USER_ORG=proxmox
      - INFLUXDB_USER_BUCKET=proxmox
      - INFLUXDB_USER=proxmox
      - INFLUXDB_USER_PASSWORD=Ao2eeGh7aDoh2eich0zeith6viyae4er
    volumes:
      - /data/influxdb:/bitnami/influxdb
    ports:
      - '8086:8086'
      - '8088:8088'
    restart: always

密码可以使用 pwgen 工具生成, 例如:

# 生成一个32位的随机密码
pwgen 32 1
  • INFLUXDB_ADMIN_USER_TOKEN 后续上报还是 grafana 获取监控数据都使用这个配置

由于我这个 influxdb 只有 PVE 使用,故初始化组织和 Bucket 都为 proxmox

配置 PVE

登录 PVE 后,PVE 的 服务器视图 下,选择数据中心 - 指标服务器,选择添加 InfluxDB,输入相关的配置;
协议选择 HTTP,组织添加 INFLUXDB_USER_ORG 配置的值,插槽添加 INFLUXDB_USER_BUCKET 配置的 Bucket, 令牌填写 INFLUXDB_ADMIN_USER_TOKEN 配置的 Token

添加后 PVE 就会将监控指标推送到 InfluxDB 的 Bucket 中了。

登录 InfluxDB 验证配置是否正确,使用 admin 账号密码登录

配置 Grafana

启动 Grafana

在上面的 docker-compose.yaml 的基础上,添加 grafana

grafana:
    image: bitnami/grafana:11
    # image: ccr.ccs.tencentyun.com/k7scn/grafana:11
    container_name: grafana
    ports:
      - '100.90.80.15:3000:3000'
    environment:
      - 'GF_SECURITY_ADMIN_PASSWORD=joh1AhDah9quah8ruteexaeloh1Ohyuc'
    volumes:
      - /data/grafana:/opt/bitnami/grafana/data
    restart: always

配置启动 grafana

docker compose pull
docker compose up -d

添加 InfluxDB 数据源

访问 http://ip:3000/connections/datasources/new, 使用 InfluDB 作为数据源

  1. Query Language 选择 Flux
  2. URL 填写 InfluxDB 的地址,如 http://100.90.80.15:8086
  3. Auth 下的配置不需要启用,默认启动 Basic auth,去掉勾选
  4. Custom HTTP Headers 添加一个新的配置,Header 名称为 Authorization, Value 为 Token+ 配置的 Token,如 Token Eing5yaew6ujoo9ohd3saeH6neeshei3(需注意 Token 和值中间有一个空格)
  5. OrganizationDefault Bucket 填写和上面配置的值一致就行,如果没变更填 proxmox
  6. 配置完成后,点击 Save and Test,如果提示成功则表示配置正确

添加 Grafana 图表

Grafana Dashboard 中搜索 proxmox,选择支持 Flux 查询语法的图表进行添加,如添加 Proxmox Flux,根据 ID 导入 Grafana 即可看到 PVE 的监控指标

这里推荐 ID 使用 15356

访问 http://100.90.80.15:3000/dashboard/import

导入 Dashboard 后效果如下:


  •  

花瓣里的火焰,转型中的鸣响

1974 年,那是一个春天,有一群士兵将鲜红的康乃馨插在枪口上。一场几乎不流血的革命,就此改变了一个国家的命运。这是属于葡萄牙的「春天的故事」。

十九世纪末,欧洲列强争相瓜分非洲大陆,葡萄牙虽国力衰退,却仍死死攥住安哥拉、莫桑比克等非洲殖民地。进入二十世纪后,葡萄牙政局动荡,1910 年共和革命后仍未稳定,1926 年军方再度政变夺权,安东尼奥·萨拉查这位经济学教授逐步崛起。他建立了「新国家」(Estado Novo)威权体制,将葡萄牙变为欧洲大陆威权统治的顽固堡垒,尽管整个国家表明和平静谧,内里却是暗流汹涌。

「新国家」号称致力经济繁荣民族强盛,实则专制极权、愚民统治。秘密警察成了悬在人们头上的「达摩克利斯之剑」,学者、记者缄默不言,教师、学生人人自危,言论和思想自由只存在于临睡前的呢喃或梦呓。

更使生活雪上加霜的是自 1961 年始,葡萄牙为控制非洲殖民地展开了一场毫无前景的远方战争。无数青年葬送异乡沙场,或干脆逃往法国、美国避难。人们越来越质疑,一场毫无意义的殖民战争,如何值得年轻人用生命去耗费?

1968 年 9 月,萨拉查在其夏季住所遭遇了一场严重意外——他坐的藤椅突然断裂,导致他重重摔倒在混凝土地面上,造成颅内出血。当时所有人,包括医生在内,都认为这位 79 岁的独裁者活不过秋天。时任葡萄牙总统阿梅里科·托马斯迅速任命马塞洛·卡埃塔诺为新总理。

然而,出人意料的是,萨拉查的病情有所好转。此时,他的亲信和新政府官员在两难中做出决定——这位前独裁者隐瞒真相。为了维持这一骗局,他们专门为萨拉查定制假报纸,伪造政府文件和会议记录,甚至安排忠实的前部长们定期「向他汇报工作」。萨拉查在完全不知情的情况下,继续「统治」着国家,直到 1970 年去世,始终以为自己仍然掌控着政权。

这一幕与袁世凯称帝前的情形颇为相似。袁世凯在窥视帝位时,同样被周围的人蓄意误导,被告知全国各地民众都热切盼望他登基为帝。他的儿子和幕僚们伪造报纸、假托民意,制造了一出出假象,让他相信称帝是天下归心。然而,一旦袁世凯真的称帝,却立即引发全国反对浪潮,最终不得不宣布取消帝制,黯然离世。

而卡埃塔诺接任总理后,确实试图进行有限改革,但为时已晚,殖民战争仍在继续,国内矛盾日益尖锐。他既不能完全延续萨拉查的强硬路线,又不敢彻底改革,结果是内外交困,最终引发了军方的不满。

普通民众在心灰意冷,军队中的不满情绪也在滋生。年轻军官们,许多曾在非洲殖民地服役,亲眼目睹了战争的残酷与无谓。他们秘密组建了「武装部队运动」(MFA),计划推翻独裁政权。其中,一位名叫奥特洛·萨拉瓦的上校扮演了关键角色,成为军队内部民主力量的核心人物。

1974 年 3 月,MFA 成员出版了一本名为《葡萄牙与未来》的书,公开批评政府政策。政府随即解除了参与此书的将军职务,却不料这一举动反而加速了革命进程,终于在 4 月 25 日,破晓而至。

那天,里斯本的清晨格外宁静。广播里,一首被禁的民谣《格兰多拉,维拉·莫雷纳》(Grândola, Vila Morena)轻声响起。对普通听众来说,这只是一首优美的歌曲;但对军中的变革者而言,这是约定好的行动信号——革命,正式开始。

军人们迅速行动,坦克开上街头,战略要地被一一占领。然而,令人惊奇的是,这并不是一场普通的军事政变。街头没有枪声,没有爆炸,没有流血冲突。相反,士兵们得到了民众的热烈欢迎。

此时,里斯本的花市正好在售卖康乃馨。一位花店的女孩,大胆地将一朵红色康乃馨插在了士兵的枪管上。这一举动如涟漪般扩散,很快,无数民众走上街头,将红色的康乃馨送给士兵,士兵则将花朵插在枪管上——枪口不再喷吐火焰,而是绽放鲜花。

就这样,一场本可能血腥的军事行动,因为人民的支持与军人的克制,成为了历史上少有的几乎不流血的革命。一个维持了 48 年的独裁政权,在不到 24 小时内被和平推翻。卡埃塔诺总理被捕,随后流亡巴西。一个由军人和文职人员组成的「国家救济委员会」接管了政权,承诺举行自由选举,建立真正的民主政体。

革命之后,葡萄牙迎来了翻天覆地的变化。葡萄牙国民首次拥有真正的普选权,言论自由得到了保障,新闻出版禁令被废除,结束了在非洲的殖民战争……然而,革命后的道路并非一帆风顺。在随后的两年间,葡萄牙经历了六个临时政府,政局动荡。左翼激进派与温和改革派之间的斗争日益激烈。1975 年,葡萄牙几乎陷入内战。所幸的是,最终温和派占据上风,确立了民主改革的方向。

1976 年举行的首次自由选举中,温和的社会党获胜,马里奥·苏亚雷斯成为民主葡萄牙的首位民选总理。国家也通过新宪法,确立民主共和制度。与此同时,葡萄牙结束了对非洲殖民地的统治,让这个昔日的海洋帝国得以将精力转向国内建设和融入欧洲共同体。

康乃馨革命为何意义非凡?因为它透过美丽的象征向全人类传递了一种极为罕见而宝贵的讯息:民主真正值得追求,正是因为它体现了对人权和自由的关怀,以及人类尊严的珍重。民主保障的不仅是选举权利,更是保障每个人能够自由表达其思想、不因言获罪、不因权力的随心所欲而受凌辱的尊严生活。

若无自由与民主,人们即使可以衣食无忧,却仍活在一种精神上的贫乏、恐惧与焦虑的环境中;而民主的制度建设,也需要一代又一代有觉悟、有勇气且愿意积极捍卫这些价值的人们努力才可巩固。

让我们把目光从亚欧大陆的最西端转向最东端。

半岛上的韩国,自光州民主化运动发轫,最终在 1987 年实现了宪政改革。然而,韩式民主似乎被某种「魔咒」所困扰——前总统或自杀,或入狱,青瓦台的光环下掩盖着难以摆脱的政治悲剧,民主的花朵在寒风中摇曳不定。

至于那「弹丸之地」的台湾,虽然有着「野百合学运」、「美丽岛事件」等社会运动,虽然有着政治精英的改革决策,虽然从 1987 年解除戒严,到党禁报禁的解除,再到首次全民普选和政党轮替,经历了一场相对和平的民主化进程——却仍难逃各种冠以「民主」之名的闹剧。

而 1989 年的广场上,莘莘学子和民众高举民主、自由、反腐败的旗帜,期望国家能够深化民主宪政。这场声势浩大的运动,按照后来的叙事,促成了更加深化的市场经济体制改革,也最终走向了高质量的全过程人民民主,不仅成为独树一帜的标杆,也为全球民主的发展、提升指明了方向。多么美妙的叙事!

Valeu a pena? Tudo vale a pena. Se a alma não é pequena.

Fernando Pessoa

葡萄牙诗人费尔南多·佩索阿说过:「一切都值得做,如果灵魂不渺小。」民主这场事业,从来都需要无数勇敢者代代相传,因为专制的诱惑从未消退过,而尊严和自由之花又是如此柔弱脆嫩,需要每一代人的悉心呵护。

从 1976 年以来,每年 4 月 25 日,葡萄牙都会庆祝「自由日」,纪念那一天花瓣轻巧的重量如何终结了坚硬的枪炮统治。肩抗自由大旗的人,必然懂得民主绝非轻易得手。康乃馨不只是往事的回忆,更是对专制永远保持警惕的号角。

期许在其他尚在黑夜挣扎的国度里,人们能够记起这一朵小花——枪炮最终都要为生命与民主服务;再黑暗的专制也无法永葆统治,因为追求自由的灵魂从未熄灭过希望之光。

愿长记此花的寓意,共勉之。


本文初稿在 Tana 上完成,这是一款通过将 AI 驱动的结构化数据库与流畅的大纲列表相结合的笔记软件,重新定义了现代知识管理,使用户能够无缝地组织相互关联的想法,同时保持自由形式思考的灵活性。

  •  

贪小便宜上大当

闲鱼上想买个TF存储卡,卖家说是家里音响上淘汰的闪迪高速卡512G,要价58元。50元包邮成交,珠海发货,今天收到,看了下容量有536G🐷,存个视频卡死。

打开手机,买家又上新了,音响上又淘汰下来一张的高速卡,还卖58元.........

  •  

日本浮生录 :一场跨越千年的樱花之旅

✇Simon
作者Simon

写在前面

2025年,是我在日本生活的第五年。

这五年里,我见过无数场樱花,从东京街头的行道树,到京都河畔的垂枝樱,从北国雪未融尽时的早樱,到南方海边迎风盛开的夜樱。每一场花开都很美,却也渐渐让我开始思考:还有什么,是我没见过的樱花风景?

于是这个春天,我决定踏上一场特别的旅程——去追逐传说中的“日本三大千年巨樱”,亲眼目睹一下那些跨越千年依旧盛开的巨樱。从山梨的山高神代樱、岐阜的淡墨樱,再到福岛的三春泷樱,它们不在都市闹市,而是都藏于深山、乡野与古老的神社之间;它们不是短暂的惊鸿一瞥,而是跨越千年仍能盛开的树中传奇。

这趟旅程,就从这里开始——向着三棵被时光守护的樱花树,出发。

山高神代樱篇

山高神代樱

三大樱花的旅程,我们选择从山梨县开始。与其他两处动辄需要大半天的交通相比,静冈是离东京最近的一站,也因此成了我们此行的首选。我们一大早就出发,前往山高神代樱所在的山梨县北杜市实相寺。

DSC03406.jpg

还未进入实相寺的入口处,我就已经看到里面的人山人海。除此之外,眼前的景色也很美丽:

视线之中,樱花正在最灿烂的时刻绽放,树枝相互交织,形成一片由粉色、浅白与淡紫色构成的柔软云霞。它们高低错落,有些枝头已经完全盛放,绚烂夺目,有些则还保留着含苞待放的姿态,仿佛在告诉大家春天才刚刚开始,最美的日子仍在继续。

樱花树下,游人如织,却并未显得喧嚣。我顺着人流的方向望去,从远处看到了那棵传说中的“山高神代樱”。她安静地屹立于寺院深处,被细心围护起来,古老的树干巨大而虬曲,仿佛一座生命的丰碑,诉说着属于自己的悠久历史。

从樱花树的缝隙中看去,远处覆盖着皑皑白雪的甲斐驹岳正清晰可见。雪峰耸立,与樱花互为映衬,形成了一种极富张力的视觉美感:春天的烂漫与冬日的肃穆,就这样巧妙而神奇地相逢。

DSC03437.jpg

目光回落,抬头所见的近景也同样春意盎然。枝头的樱花此刻已然绽放到极致,在蔚蓝的天空映衬下,花瓣轻盈而通透。阳光透过细密的花瓣洒落下来,宛如细碎的光点,闪烁着春日的温柔与明媚。

DSC03441.jpg

步入实相寺内,首先映入眼帘的是一株巨大的枝垂樱。这株樱花树姿优雅,枝条如垂落的长袖一般柔美,盛开的花瓣层层叠叠,如粉色瀑布从高处倾泻而下。

这棵树名为「宇宙樱」。它与众不同之处在于,它的种子曾于2008年11月搭乘美国太空梭奋进号(Endeavour),在无重力状态下,于国际空间站日本实验舱「希望号」内旅行长达8个月之久。2009年7月,这些种子伴随日本宇航员若田光一返回地球,随后交由当地武川中学的学生播种。这批珍贵的种子中,仅有两粒成功发芽,而其中一粒便被种植于眼前的实相寺内。

十多年后的今天,它已茁壮成长,并绽放出了美丽的樱花。我仔细观察着这棵经历过太空之旅的樱花树,树干与枝条尚且年轻,但花朵却一样明艳而丰盈,似乎并未受到失重环境的影响。生命的坚韧与神奇,跨越太空与时间,在这一刻以最美丽的姿态呈现在我们面前。

DSC03454.jpg

顺着人流再往前走,就来到了此行的主角——著名的山高神代樱。

眼前的神代樱树,树种为江户彼岸樱,据推测已有接近2000年的树龄,与岐阜县本巢市的“淡墨樱”和福岛县三春町的“三春泷樱”共同被誉为日本三大樱花之一。这株巨大的古树姿态奇特而壮观,历经岁月侵蚀和各种自然灾害,树冠相比最盛时期已有所缩小,树干的内部甚至已经部分空洞。当地有关部门为了保护树身不被风雪摧折,特地树枝四周架设了很多木柱作为支撑。

DSC03516.jpg

据说,镰仓时代,日莲圣人曾路过此地,目睹这株樱树衰弱枯萎的模样,深感忧虑,于是虔诚祈祷,樱树竟然奇迹般地恢复了生机,因此神代樱又有“妙法樱”之名。

在这棵树最为繁盛之时,树高13.6米,树冠东西长达27米,南北更是达到30.6米,主干周长超过10米。虽然近两年的长势每况愈下,但目前的神代樱仍然保持着约10米的高度,树干周长依然超过11米,尤其是它那向东伸展的粗壮枝条,宛如巨臂,仍然充满了生命的力量。

当我站在这颗树前,凝视着这颗历经两千年风雨依然盛开的巨树,内心也被强烈地触动——仿佛透过那些历经风霜的枝干,清晰地感受到了大自然顽强而不息的生命力。

身延山久远寺

离开润井川龙岩渊后,我们前往了旅途中的另一站——身延山久远寺。身延山久远寺位于山梨县南部,寺庙内拥有众多百年以上的垂柳樱。每年春天,久远寺境内的樱花树都会如期盛放,与古朴的寺庙建筑相映成趣,形成了一幅典型的“日式春景图”。

DSC03527.jpg

当我们走进久远寺境内,首先映入眼帘的是寺庙朱红色的屋檐与满树盛放的樱花交织在一起的绝美景象。白色樱花与朱红色的建筑形成了强烈的对比。坐在椅子上,当微风拂过时,耳畔传来阵阵风铃的清脆声响,伴随着淡淡的樱花香气,使人仿佛置身于诗意画卷之中。

DSC03531.jpg

漫步在久远寺境内,最引人瞩目的便是这株姿态优雅的枝垂樱。这棵古树就伫立在寺庙建筑的一侧,粉色花朵与朱红色建筑彼此映衬,在蓝天和绿意的映衬下更加明媚而醒目。这株巨大的古木,树龄已有400多年,入选为“日本全国十大枝垂樱”之一。它的树枝柔软地垂落,如同一道粉色瀑布,优雅而又充满灵动之美。

DSC03605.jpg

整个久远寺的行程中,最让我印象深刻的不是寺内的任何景点,而是久远寺后山的停车场。

那本是一个毫不起眼的地方,但当我们驱车抵达时,映入眼帘的却是令人惊艳的樱花隧道。停车场入口的道路的两侧,整齐地排列着十几棵高大的樱花树,形成了一条粉白交错的花之隧道。

DSC03629.jpg

虽然只是一个普通个停车场,人们也大多匆匆而过,并没有留意这里的美丽与静谧,但就在这个平凡的地方,我却看到了久远寺最日常、也最打动人心的一面。所谓美景配佳车,在这个不起眼的停车场里,我将汽车停到樱花树下,拿起相机给爱车拍下了一张照片。

润井川龙岩渊

离开久远寺之后,因为顺路,我们又前往了另一个近几年非常火热的赏樱景点——润井川龙岩渊。

DSC03684.jpg

这里与之前看到的古树风景不同,展现出另一种日式赏樱的经典风貌。我们站在桥上眺望,眼前便是沿着潤井川左岸绵延长达250米的樱花树。整齐而繁密的樱花林沿着河岸铺展开来,形成了一道壮观的粉色花道。

_DSC3742.jpg

润井川龙岩渊之所以出名,是因为在这里可以同时欣赏到“三重奏”的绝美风景——缓缓流淌的润井川河水、两岸如云似霞的樱花,以及远处巍峨耸立的富士山。在樱花的掩映之中,富士山洁白的山顶与晴朗的天空形成鲜明对比,三者彼此交相辉映,宛如一幅动人的风景画。

淡墨樱篇

うなぎ千草

从润井川龙岩渊出发前往岐阜的途中,我们途经了滨名湖。作为静冈著名的湖泊,这里以鳗鱼饭闻名日本,我们当然也不会错过这一绝佳的品尝机会。

我们选择的是一家位于三日町、名为「うなぎ千草」的老字号鳗鱼饭专门店。这家店创立于昭和56年(1981年),不仅口碑良好(谷歌评分 4.4,1206 条评价),而且餐厅位置极佳,从店内便能一览滨名湖的开阔景色。

IMG_3968.jpg

我吃过很多家鳗鱼饭,但这家对于我而言还是比较特别的。从鳗鱼的选材、烧烤方法、酱汁的调配,到米饭的煮制、山椒的搭配,都比较讲究。店家还自创的了鳗鱼的烤法——“奥滨名湖烧”。这种做法虽属于关东风格的“先蒸后烤”,但更强调鳗鱼表面烤制出酥脆香浓的口感。

我点了一个普通的鳗鱼定食(可以理解为套餐),鳗鱼外皮金黄酥脆,酱汁甜咸适中,搭配着饱满柔软的米饭,入口香气四溢。搭配清爽的汤品和简单的小菜,一餐下来,旅途的疲惫也一扫而空。

樽见铁道

DSC03702.jpg

与樽见铁道的相遇,完全是一场意料之外的巧合。当我们驱车抵达木知原附近的全家便利店时,一阵饥饿感袭来。于是,我们果断停车,选择一边品尝我们最爱的炸鸡,一边饶有趣味的观看远处田野里耕作的农户。那天下着小雨,远处的樱花和升起的薄雾有一种在“江南水乡”的错觉。

正当我们津津有味地品尝炸鸡时,忽然注意到附近有一条铁路。出于好奇,我们立刻查询了一下,原来这就是闻名已久的「樽见铁道」。

在樱花季节,这条铁道被人们称为“开往樱花盛开之地的列车”,列车本身就已然成为当地著名的赏樱景点。樽见铁道会特意调整运行时刻表,让旅客能够在沿途各个赏樱胜地停留,尽情感受春日的美好。

DSC03732.jpg

不久之后,我们便看到一辆浅蓝色的列车缓缓驶近。列车两侧樱花正满开,粉白的花朵仿佛轻轻拥抱着铁轨。列车以悠闲而舒缓的节奏驶过眼前,美妙如期而至。也许在旅途计划之外的偶然,才是旅途中最难以忘怀的时刻。

*有关樽见铁道的详情,欢迎参见官网:https://tarumi-railway.com/,网站设计的不错。

淡墨樱

DSC03712.jpg

樱花季同时也是日本的雨季,因此晴天赏樱的机会并不多。在我们抵达岐阜拍摄火车时,天空就已经是阴沉沉的,随着车辆逐渐驶入山区,天色越发阴沉,很快便下起了淅淅沥沥的大雨。

DSC03784.jpg

当我们终于抵达树下时,雨势仍旧不小。不过也正因为此,大雨帮我们避开了赏樱人潮,可以让我们得以安静地与这棵历经千年风雨的古樱相遇。虽然淡墨樱此时尚未完全盛开,但依然展现出庄严而优雅的美感。

淡墨樱作为日本三大千年巨樱之一,树龄已有1500年之久,高达16米,粗大的树干直径近10米,姿态雄伟,被指定为日本国家级天然纪念物。它独特之处,在于其花朵从含苞到凋零的过程中颜色不断变化:花苞初绽时为柔和的淡粉色,盛开时纯白如雪,等到凋谢之际,则呈现出一种独特的淡墨色,因此被称为“淡墨樱”。

就在我按下快门的那一瞬间,镜头里恰巧出现了一对日本情侣。他们撑着透明的伞,安静地站在树下合影,表情温柔而专注。在这阴雨绵绵的天气里,他们的身影与古老的淡墨樱相映成趣,成为了我此次旅途中最温柔也最难忘的画面之一。

据说夜晚这里会举行别具风味的夜樱点灯活动,灯光映照下的淡墨樱,会展现出与白天截然不同的姿态。虽然我们因行程关系未能亲眼见到这一幕,但如果你有机会亲临岐阜,建议除了白天赏樱之外,也不妨留到夜晚,静静感受那被灯光温柔点亮的千年古樱,定会别有一番风味。

三春泷樱篇

白石川一目千本樱

DSC03896.jpg

在正式前往三春泷樱之前,我们特地绕道来到了福岛附近的一处著名赏樱地——白石川一目千本樱。在等了长达一小时的停车位后,我们终于在中午之前抵达了白石川。

DSC03942.jpg

顾名思义,「一目千本樱」的意思是“一眼望去,便能尽收千棵樱树的盛放景象”。而这里用肉眼所看到的壮丽程度,远远比文字和图片所能传达的更为震撼:以蓝天白云为背景,脚下则是清澈透蓝的白石川水缓缓流淌,而沿河堤两岸,一整排绵延约8公里、以染井吉野为主的樱花正盛放着。

白石川一目千本樱的种植历史可追溯到大正12年和昭和2年,由大河原町出身的高山开治郎氏所捐赠,共计植樱约1200棵。如今,这里不仅被选为「日本赏樱百选」之一,更已成为每年4月上旬至中旬吸引来自全国各地赏花客的重要景点。

DSC04015.jpg

漫步在这长达8公里的樱花堤岸之上,脚边是点缀着的黄水仙,头顶是交错成拱的古老樱树树冠。我们放慢了脚步,让时间也跟着静了下来,只为更久地沉浸在这片粉色长廊之中。

DSC04009.jpg

在樱花的海洋中漫步,脚步越慢,就越是能感受到生活的气息。在白石川堤岸的尽头,我们遇见了一辆米白色的老款 Land Cruiser 静静停在河边。车前,两位上了年纪的当地老先生并肩而坐:一人戴着墨绿色渔夫帽,另一人穿着醒目的朱红色夹克。两把折叠椅随意插在尚未完全返青的河畔草丛里,脚边摆着简单的钓具与保温壶。他们有一句没一句地聊着天,偶尔把视线投向缓缓流淌的河水,更多时候则沉默地享受着下午柔和的阳光和岸上随风飘落的樱花瓣。

DSC03978.jpg

不远处的堤顶,染井吉野已盛放成粉白色的波浪,与对岸成排的住宅屋脊一起,勾勒出一幅典型而安静的东北小城春景。陌生的旅人、陈年的越野车和闲适的老友——原本毫不相干的元素,在这条河边因樱花而自然相连。樱花赋予风景短暂的华美,而这些平淡又悠长的生活片段,才让春天真正具备了温度。

DSC04103.jpg

除了在河堤上漫步之外,你还可以继续向前,在白石川堤最经典的观景高台上,你可以捕捉到这样一幅春日限定的景色——

近景是一列 JR 列车,车身点缀着浅绿条纹,正呼啸而过;中景是一目千本樱那连绵八公里的染井吉野,粉白花海在微风中摇曳成波浪;而远景则是仍披着残雪的藏王连峰,雪脊清晰、线条刚毅。列车的钢铁与樱花的柔美、雪山的肃穆在同一画面里交汇,静与动、寒与暖相互映衬。

如果运气好、时刻对上,当樱花花期与晴朗天气重叠,铁轨两侧的黄色连翘也正好盛开,便能在镜头里再添一抹金色;而列车驶过那一秒,仿佛把这一整幅春天的长卷轻轻拉开,让人恍若置身电影分镜。

虽然这些景色和我们所见的千年古樱相比,少了一些历史厚重感,但这里却多了一种春天才有的鲜活与欢快。在白石川边短暂停留的这一刻,也成为我们此次追樱旅程中最柔和、最悠长的一段前奏。

三春泷樱

DSC04219.jpg

在我的预想中,三春泷樱如果白天拜访,一定是人满为患。因此为了避开拥挤的人潮,我们第二天凌晨 5 点就从郊外的酒店出发。当车驶入三春町时,天才蒙蒙亮,但能容纳上千辆车的巨大停车场竟已所剩无几——樱花季的三春,果然名不虚传。所幸还是抢到了一个车位,一路小跑进园后才知道:清晨 6 点前均可免费入场,6 点之后才开始售票(500 日元,折合 25 元人民币)。

DSC04172.jpg

即便当天依旧是阴天拍照的效果并不好,但这并不影响我认为三春泷樱是三大古樱中最具冲击力的一株。远处看就可以看出它的花势十分蓬勃,仿佛有呼之欲出的生命力;近看时,层层叠叠的花幕将树干遮掩得若隐若现,展现出千年古木的苍劲与春光的柔美并存的奇景。

DSC04189.jpg

虽然游人络绎不绝,但换个角度拍摄还是能有不错的效果。顺着木栈道攀上小丘,三春泷樱在灰蓝的晨色里蓦然显现:粗壮的古干撑起万千细枝,花幕自高处倾泻而下,仿佛粉色瀑布落入新绿的梯田。三春泷樱其实是一棵枝垂樱,树龄已逾千年,1922 年就被列为国家天然纪念物,如今依旧高约十三米,冠幅展开能覆盖二十五米见方。

DSC04198.jpg

沿着缓缓爬升的水泥小路走到坡顶,视线突然豁然开朗:一座灰顶木屋静静坐落在竹林与梯田之间,门口那株枝垂樱正值盛放期,粉白花瀑垂到檐下,仿佛给整座房子披上了春日的轻纱。可能是大家也觉得这里风景不错,很多人选择在门口拍照打卡。(在此过程中没有任何人越过图上的牌子进入私人领地)

DSC04197.jpg

其实在东京这种钢铁森林里住久了,看到这样的房子也会在心里暗暗羡慕——每天推开门就是满树樱雨,四时耕作或日常采买,都要先经过这一片柔软的粉色帘幕。对我们这些旅人来说,这样的景象是一年难得一遇的幸运;而对他们而言,却是平凡生活里最自然不过的背景。原来,有些人真的把春天住进了家里。

夫妇樱

在这趟旅程的最后,我们绕道来到了三春泷樱附近的一座静谧神社。

DSC04225.jpg

与热闹非凡的三春泷樱不同,这里是完全无人的。神社门前的鸟居古朴沉静,石灯笼上布满岁月的痕迹,唯有两株枝垂樱正悄然盛放,一左一右,倚着彼此。它们被称为“夫妇樱”,相传是为了祈愿夫妻恩爱、家内安稳而种下。不同于那些以壮观著称的名樱,这对夫妇樱低调、含蓄,却有种令人动容的温柔。

DSC04228.jpg

我们在树下静静站了许久,头顶是缠绕交错的老枝,春风拂过,花瓣缓缓飘落,落在石阶、落在肩头,也仿佛落进了内心最柔软的地方。这一刻,没有喧嚣、没有相机快门声,只有鸟鸣与风声,和千百年来一如既往守候在神社前的花与树。

春日追逐樱花的旅途到这里就告一段落了。也许真正让人念念不忘的,不是看了多少樱花,而是在哪些不经意的角落,与怎样的风、怎样的光、怎样的人,一起度过了这一场属于春天的短暂时光。

更多内容

本次旅途的行程地图已经全部公开至公众号「日浮录」,发送「日本三大樱花」即可自动获取

如有问题或者想法,欢迎在文章下评论留言,我将尽快回复你。樱花之旅已经告一段落,但我的日本旅途仍在继续。欢迎关注我的公众号「日浮录」,我会在那里分享我的更多旅游随笔、在日生活。

image.png

关于我的更多日本生活,请移步推特: 推特

关于我的更多数码生活,请移步Telegram频道: appdo数字生活指南

本文首发于少数派,文章地址:https://sspai.com/post/98514


Support on Patreon | 爱发电上赞助

  •  

比特币私钥的数学本质与人类算力的极限


btc-bitcoin 比特币私钥的数学本质与人类算力的极限 加密货币 区块链 数学 比特币 BTC 计算机 资讯 跟我一起来谈钱

Bitcoin

总是看到有一些暴力破解的程序在不停的尝试比特币钱包的密钥,还声称已经很幸运的试到了几个钱包的密钥,并且移走了里面的几万美金。

下面的文字是抄于 rssdao.eth 的朋友圈。

抛256次硬币,你就拥有一个比特币私钥:人类算力难以企及的加密奇迹

破解比特币需要40亿个银河系?普通人根本无法想象的数学深渊。

当你抛硬币正面朝上为1,反面朝上为0,连续抛256次,并把结果转换成一个16进制数,就是下一个比特币的密钥,那么换句话来说,比特币私钥的本质就是256位二进制数,听起来普普通通有没有,感觉用普通的计算机随便就能破解了?

能这么想的一般数学老师已经哭在了厕所,2的256次方,相当于8个2的32次方相乘,二的32次方约等于40亿,现在有概念了吗?就是40亿×40亿×40亿×40亿×40亿×40亿×40亿再除以40亿。量化一下吧,第一个40亿是现代电脑的GPU每秒可以计算10亿个哈希值,40亿就相当于一台非常好的电脑,每秒计算的哈希值

第二个40亿用世界第一搜索引擎,谷歌公司作为例子,虽然谷歌没有对外公布服务器的数量,但有人估算大约在几百万个,是世界上最多服务器的企业之一,代表着地表最高算力,大部分谷歌服务器的算力都不如我们这些满载GPU的电脑强,那么40亿台电脑姑且约等于1000个谷歌算力。

第三个40亿全世界约有73亿人,我们假设地球一半以上的人每个人都有1000个谷歌的算力。再来看看第4个40亿,想象一下40亿个这样的地球像极了银河系有没有?姑且称为银河系算力。第5个40亿,我们把40亿个这样的银河系打包,算力之和每秒能计算出2的160次方。第6第7个40亿,我们从时间维度考量,40亿秒约等于126.8年,乘以40亿倍,就是5070亿年,差不多是目前我们已知的宇宙年龄的37倍。

最后我们得出了结论,以人类现在的文明程度要解开比特币的密钥,大约需要40亿个银河系的算力,计算37倍于宇宙的年龄一样长的时间,才有1/(40亿^8)可以算出密钥的可能。所以现阶段人类科技而言,要通过技术手段破解密钥,简直就是痴人说梦了,这种体量的计算连量子计算机串联也望尘莫及。

2021年2月旧文,再思考一下比特币的伟大发明。

今天一个大饼的价格是9.2万美金。

crypto-btc-eth-trx-2025-04-24 比特币私钥的数学本质与人类算力的极限 加密货币 区块链 数学 比特币 BTC 计算机 资讯 跟我一起来谈钱

Crypto Prices for BTC, ETH, TRX at 2025-04-24

比特币/大饼 BTC/Bitcoin

英文:Toss a Coin 256 Times: The Math Behind an Unbreakable Bitcoin Private Key

本文一共 797 个汉字, 你数一下对不对.
比特币私钥的数学本质与人类算力的极限. (AMP 移动加速版本)

扫描二维码,分享本文到微信朋友圈
75a5a60b9cac61e5c8c71a96e17f2d9c 比特币私钥的数学本质与人类算力的极限 加密货币 区块链 数学 比特币 BTC 计算机 资讯 跟我一起来谈钱
The post 比特币私钥的数学本质与人类算力的极限 first appeared on 小赖子的英国生活和资讯.

相关文章:

  1. 按揭贷款(房贷,车贷) 每月还贷计算器 去年给银行借了17万英镑 买了20万7500英镑的房子, 25年还清. 前2年是定率 Fix Rate 的合同 (年利率2.49%). 每个月大概是还 700多英镑. 有很多种还贷的计算方式, 定率/每月固定 是比较常用的. 简单来说就是 每个月交的钱是...
  2. 诈骗者正在利用多重签名钱包(Tron/波场): 保持警惕! 我经常收到类似这样的消息,有人请求协助转移资金,并提供钱包的种子短语或密码。 虽然看起来很诱人,但这实在是好得令人难以置信。不要上当,钱包里的币实际上是无法转出的。 他们实际上只是想骗你将资金(如TRX)转到他们的钱包,并以帮助解锁余额为借口。一旦你将资金转出,就再也拿不回来了。 请记住,任何声称可以“免费”提供带余额的钱包访问权限的人,很可能是在实施诈骗。务必保持警惕,保护好自己的资产! 多签名授权 这些钱包通常需要多签名授权才能访问资金。这意味着即使你拥有种子短语或密码,也无法转移余额,因为还需要其他签名,这一点骗子通常不会提及。 相反,他们会以解锁钱包为借口,诱骗你转移自己的资金(如TRX)。不要上当——保持警惕,保护自己免受此类诈骗! 保持谨慎,远离诈骗! 英文:Scammers Are Exploiting Multi-Signature Wallets (Tron): Stay...
  3. 智能手机 HTC One M9 使用测评 虽然我对手机要求不高, 远远没有像追求VPS服务器一样, 但是怎么算来两年内换了四个手机, 先是三星 S4 用了一年多, 然后 Nokia Lumia 635 Windows Phone, 后来又是 BLU, 半年多前换了...
  4. SteemIt 高级定制微信文章列表 RSS/API/阅读器 v2.0 The Advanced Wechat Group Posts Feed/API/Reader v2.0 Abstract: I have added five parameters to the...
  5. 面向猫猫编程 Cat Oriented Programming (Chessly/Pyro这一生持续更新) 家里有两只猫 Chessly/Pyro,想着找个地方记录它们的生活,最后决定还是写在这里的博客。猫的一生很短,差不多也就二十年。 Chessly(黑白猫)是我加入微软剑桥研究院MSRC第一个月带回家的,过了两三个月,又把Pyro(橘猫)也接回了家。两只猫的名字是孩子们取的:Chessly因为黑白的像棋盘,加上“ly”听起来像个女孩的名字;而Pyro的意思是一团火(烟火),充满活力。 刚开始的时候,Chessly特别喜欢待在我的工作区域。她有时候趴在键盘上或旁边,有时候藏在显示器后面。偶尔还会绕到我身边“咕咕”地撒娇,等着我去摸她。有时更干脆跑到我腿上,舒舒服服地躺着。 不过,现在它们俩的体型都大了很多,躺在桌上就会挡住屏幕,真是“面向猫猫编程”(Cat Oriented Programming)的极致体验。 记录生活的点滴,也是一种珍惜,毕竟这二十年,我们会一起走过。 2024年 2025年 Ring视频:两猫日常就是打闹,Chessly追上Pyro想舔他,在猫的世界里,地位高的才能舔地位低的。 我家猫现在越来越胖,很喜欢在我工作的时候躺在显示器钱,很影响我的工作,不过这时候我就是会休息一下摸摸她,就当放松一下了。 Pyro在窗边喝水,这是个小的煮饭锅,现在不用了,就给猫当喝水的碗。Pyro很胆小,经常看到我就跑。没法跑就咕咕叫。 Chessly很喜欢陪我工作,然后她很好厅的盯着屏幕上的鼠标光标,真怕她把屏幕抓坏了。 哥哥弹琴,弟弟唱歌,Chessly午睡,真是幸福啊,下辈子做只猫吧。...
  6. 个人网站Adsense广告申请通过: 需要最少15篇文章 我的个人网站 zhihua-lai.com 本月通过了 Adsense 审核,终于可以再次放置广告,赚些零花钱了。 其实,最初 Adsense 账户通过审核后就能直接放广告,但后来规则变得严格了。如果一个网站长时间没有放置任何 Adsense 广告代码,账户资格会被撤销。重新启用时,需要进行单独审核。如今,在 Google Adsense 中新增一个域名,也必须通过审核后才能投放广告。 为了让我的网站通过审核,我尝试了几次,但总是被拒,原因之一是必须要有足够的内容支持。例如,以前我做的工具网站 SlowAPI.com...
  7. 同一台服务器上多个WORDPRESS站点的一些设置可以移出去 我自从把所有网站都挪到一处VPS服务器上 就发现很多事情省事很多 可以同时管理多个网站 包括 WORDPRESS博客. 比如我有四个WORDPRESS博客 然后我就把通用的一些资料给移出去 移到 HTTP或者HTTPS都不能直接访问的文件夹里这样就更安全许多. 文件 wp-conn.php 存储了 相同的数据库资料. 1 2...
  8. 比特币最近波动有点大: 一天牛市一天熊 比特币10万美金以内都是最后上车的机会! 比特币近期的价格波动可以归因于多个关键因素,包括地缘政治动态、监管变化以及加密行业内的重大安全事件。其中一个主要影响因素是美国前总统唐纳德·特朗普对乌克兰和加密货币监管的立场变化。据报道,特朗普再次当选,他可能会推动减少美国对乌克兰的支持,这可能会影响全球金融市场和风险偏好。同时,特朗普正在将自己塑造为亲加密货币的候选人,表示有意让美国成为一个更加友好的加密货币环境。这一立场引发了市场对监管政策可能发生变化的猜测,导致市场情绪在乐观和不确定性之间波动。 特朗普对俄乌战争的态度 美国第43届总统唐纳德·特朗普已经在2025年1月当选并正式上任(第二次),那么他的政策可能会对比特币价格的波动产生更加直接和显著的影响。他政府对乌克兰和加密货币监管的立场已经不再是猜测,而是正在实际塑造市场的关键力量。 特朗普(Donald Trump)减少美国对乌克兰的支持,全球投资者可能会预期地缘政治稳定性发生变化,从而增加对比特币作为避险资产的需求。同时,他的亲加密货币立场可能正在推动市场的乐观情绪。如果他的政府推出有利于加密行业的监管政策,例如明确的合规指南或减少监管审查,可能会吸引更多机构投资者进入市场,并促进更广泛的加密货币采用。然而,政策的快速变化也可能导致短期市场剧烈波动,因为市场需要时间来消化新的政策动向。 朝鲜黑客盗取Bybit交易所15亿美元的ETH 另一个显著影响比特币价格的事件是近期涉及朝鲜黑客组织“Lazarus”的15亿美元以太坊被盗案件。据报道,Bybit交易所(全球第二)这些被盗的ETH已经被清洗,此次大规模黑客攻击引发了人们对加密行业安全性的担忧。此类安全事件不仅会削弱投资者信心,还可能引发更严格的监管审查,导致短期市场动荡。此外,被盗资金的大规模流动和出售可能对市场流动性造成冲击,进一步加大价格波动。随着这些事件的持续发酵,比特币价格正受到政治决策、监管预期以及安全挑战等多重因素的影响。 与此同时,与朝鲜黑客组织 Lazarus 相关的 15 亿美元以太坊被盗事件仍在影响加密市场。由于这些被盗 ETH 已被清洗,人们对加密行业安全漏洞的担忧持续存在,同时也可能引发更严格的监管审查。政治、监管和安全等多重因素交织在一起,共同导致了比特币近期的剧烈价格波动。...
  •  

We'll always need junior programmers

We received over 2,200 applications for our just-closed junior programmer opening, and now we're going through all of them by hand and by human. No AI screening here. It's a lot of work, but we have a great team who take the work seriously, so in a few weeks, we'll be able to invite a group of finalists to the next phase.

This highlights the folly of thinking that what it'll take to land a job like this is some specific list of criteria, though. Yes, you have to present a baseline of relevant markers to even get into consideration, like a great cover letter that doesn't smell like AI slop, promising projects or work experience or educational background, etc. But to actually get the job, you have to be the best of the ones who've applied!

It sounds self-evident, maybe, but I see questions time and again about it, so it must not be. Almost every job opening is grading applicants on the curve of everyone who has applied. And the best candidate of the lot gets the job. You can't quantify what that looks like in advance.

I'm excited to see who makes it to the final stage. I already hear early whispers that we got some exceptional applicants in this round. It would be great to help counter the narrative that this industry no longer needs juniors. That's simply retarded.

However good AI gets, we're always going to need people who know the ins and outs of what the machine comes up with. Maybe not as many, maybe not in the same roles, but it's truly utopian thinking that mankind won't need people capable of vetting the work done by AI in five minutes.
  •