<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Cusox の Blog</title>
    <link>https://blog.cusox.net/</link>
    <description>Recent content on Cusox の Blog</description>
    <generator>Hugo</generator>
    <language>en</language>
    <managingEditor>cusoxlee@gmail.com (Cusox)</managingEditor>
    <webMaster>cusoxlee@gmail.com (Cusox)</webMaster>
    <copyright>Copyright© Cusox</copyright>
    <lastBuildDate>Mon, 04 Aug 2025 01:32:03 +0000</lastBuildDate>
    <atom:link href="https://blog.cusox.net/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>被流量裹挟的时代</title>
      <link>https://blog.cusox.net/posts/traffic-era/</link>
      <pubDate>Mon, 04 Aug 2025 01:32:03 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/traffic-era/</guid>
      <description>&lt;p&gt;回想起来，我好像很久没发过朋友圈了，什么时候开始我连简单的生活记录也觉得繁琐了，博客的话那就更不必多说了，在快节奏的生活能抽出时间来静心看点长文、长视频都实属不易，哪还有时间去写点东西。马上一年的研究生生涯也过去了，明年的这个时候差不多就准备秋招了，时间过的还是快，让我不由得想起之前看过毕导的一个视频，视频讲的是人对时间流逝的感觉是由长变短的。小时候觉得一年的时间长，那是因为一年对于年纪的占比大，随着年纪越来越大，一年的占比越来越小，因此会感觉时间过的越来越快，而这个分界线大概是 18 岁左右。我是 02 年生的，也算是经历了网络时代的变迁，现在有的时候刷刷新闻、翻翻论坛，还是怀念以前的互联网环境，毕竟那时刚刚起步，人人都有着刚接触互联网的稚嫩，当然也有对线吵架的时候，总归来说还是讲点道理的，人与人不说相互理解，但比之现在还是要好很多的。&lt;/p&gt;&#xA;&lt;p&gt;我一向都不太喜欢在各种社交媒体或是论坛上发言，大多时间都是看看帖子。帖子为了流量制造矛盾，而很多时候人是跟着情绪走的，尤其是当你在一个群体中时，群体的情绪会影响到你。人们总是喜欢在网上发泄自己的情绪，尤其是负面的情绪，这种情绪会传染，而这种情绪往往是消极的。消极的情绪在不理智的环境下就会变成攻击，攻击的对象往往是那些与自己意见不合的人，甚至是一些无辜的人，这种攻击往往是没有根据的，只是因为情绪的发泄。我就是要跟你对着干，我就是要说反话阴阳怪气你，因此在网络上说服一个人是非常困难的，尤其是在情绪激动的时候，人们往往会固执己见，这也是我不喜欢在网上发言的原因之一，因为没有意义。&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;节奏太快，心态太浮躁，加之经济下行，现在的互联网充斥着各式各样的牛鬼蛇神，昧着良心说着反话，哗众取宠的标题党，依靠着黑流量火出圈的内容数不胜数，人与人交心的话越来越少，多的是带节奏的水军，互相攻击对线、问候家人的评论，以及先造神再毁神的非黑即白。&lt;/p&gt;&#xA;&lt;p&gt;以前的 UC 标题党经常被大家拿来调侃，震惊形式的标题，以及各种夸张的语气词，但内容好歹还算正常，现在的标题党要考虑的就多了，怎么在标题中吸引眼球，说反话站在大众对立面引发众怒，蹭着一个又一个的热点，在这个快节奏的、被流量裹挟的时代，越是这种标题越能引发讨论，毕竟黑红也是红，大众也喜欢看这种，流量带来的正反馈让这种内容越来越多，越来越泛滥。&lt;/p&gt;&#xA;&lt;p&gt;这种现象的出现，让人的心态改变了很多，没有自己的思考能力，认定先入为主的主观意识想法，只愿相信自己愿意相信的东西，甚至不愿意去了解真相。媒体也不愿报道真相，因为它不够吸引眼球，甚至会被人骂，毕竟真相往往是复杂的，而大众更愿意相信简单的东西，媒体也不愿意去做那些复杂的事，毕竟这不是它们的职责所在。媒体的舆论通稿，潜移默化的影响着大众的认知，不断夸大事实带来的造神，远超内容的实际价值，甚至是对事实的扭曲，造神之后再毁神，媒体通稿又会成为大众攻击的对象，既没有利益上的损失又获得了流量，何乐而不为。&lt;/p&gt;&#xA;&lt;p&gt;这个带来的另一个弊端就是政府及各种机构的公信力下降，造谣的成本太低了。我已经不知道多少次跟家里人辟谣了，很多时候家里人会在网上看到一些不实的消息就会跟我说，我每次都要耐心的跟他们解释，这些消息是假的，甚至有些时候还要去查证一下真相。现在的网络环境让人很难分辨真假信息，很多时候我们只能依靠自己的判断力和常识来判断信息的真实性，而辟谣往往来的要晚，在这段时间里各种媒体的不实报道已经加深了大众的误解，导致的结果就是你越辟谣我越不信，甚至会觉得你在掩盖什么。&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;再说说最近的《明末：渊虚之羽》，这也是我想写这个主题的原因之一，这个游戏就是个被流量裹挟的典型例子。由于黑猴的爆火，国单最近热度也非常高，媒体的营销通稿让这个本该属于小众的类魂游戏变成了大众眼中的第二个大学生。刚发售时的发售事故，剧情节奏，大量极端的评论和水军的攻击让这个游戏的口碑雪上加霜，甚至有些人连游戏都没玩过就开始喷了。媒体为了流量不惜夸大事实，甚至是捏造事实，导致很多人对这个游戏产生了误解，败光了路人缘；极端的民族主义者借此来攻击游戏，甚至是制作游戏攻略视频的 UP 主，互联网情绪的发酵愈演愈烈，游戏及游戏制作团队成为了众矢之的。&lt;/p&gt;&#xA;&lt;p&gt;反观游戏内容，对我来说我能给到 7.5 分，作为一个小团队的处女作，我觉得它是合格的，但也只是合格了。这里借用 STN 的一句话，游戏本身质量合格，但并没有好到让我为它去辩护的地步，事实上制作团队对于部分事件的处理也确实存在不小问题。在当今的非黑即白的互联网环境中，力排众议说客观的观点就是洗地，是收了厂商的钱，这种吃力不讨好的事自然会没人愿意去做，而且这种观点在流量时代是没有市场的。对这个游戏来说，因为这种节奏被差评如潮确实比较可惜，但一些为了黑而黑的人又一次提高了让子弹飞的含金量：他们不关心六子吃了几碗粉，只想让六子死。&lt;/p&gt;&#xA;&lt;p&gt;游戏的口碑在节奏渐渐褪去后有所好转，毕竟质量还是摆在这的，这也为后续国单的发行做了个警示，流量时代下的舆论怎么都有，人们太喜欢造神毁神了，但对于一些低级错误能不犯就不犯，游戏质量永远是摆在第一位的，游戏好玩自会有人来买单。&lt;/p&gt;</description>
    </item>
    <item>
      <title>邮箱系统的整合</title>
      <link>https://blog.cusox.net/posts/mail-aio/</link>
      <pubDate>Wed, 31 Jul 2024 17:32:25 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/mail-aio/</guid>
      <description>&lt;p&gt;邮箱，这东西，从互联网开始兴起的时候就存在了，国内的邮箱受制于 QQ、微信等等这些社交软件的快速发展，因此相较于国外来说用户不多，也见证了一系列邮箱的诞生和消亡，但对于那些需要长时间保存的信息，需要 GPG 来加密内容来说，邮件属于最优解之一，很多大公司选择通过邮件进行任务分配，也有为了防止赖账行为，防止信息泄露的考虑&lt;/p&gt;&#xA;&lt;p&gt;从以前到现在我也注册过很多邮箱，像 Gmail、Hotmail、Outlook、Yahoo、QQ 邮箱、网易邮箱、学生邮箱等等，后面发现了还有企业邮箱，也称作域名邮箱的存在，这些大大小小的邮箱过于冗杂，不便于管理，于是这便开始了折腾邮箱系统&lt;/p&gt;&#xA;&lt;h2 id=&#34;各个平台的邮箱应用&#34;&gt;各个平台的邮箱应用&lt;/h2&gt;&#xA;&lt;h3 id=&#34;web-端&#34;&gt;Web 端&lt;/h3&gt;&#xA;&lt;p&gt;各家基本上都有自己的 WebMail，我用的最多的也就是 Gmail 的网页，最近发现了个 Github 上的开源项目：&lt;a href=&#34;https://github.com/the-djmaze/snappymail&#34;&gt;snappymail&lt;/a&gt;，这个 WebMail 可以自部署，但我平常用桌面应用用的多，就懒得整了&lt;/p&gt;&#xA;&lt;h3 id=&#34;桌面端&#34;&gt;桌面端&lt;/h3&gt;&#xA;&lt;p&gt;邮箱太多，不可能一个个去邮箱网站查看最近收到的邮件，特别是对于订阅了一堆 Newsletter，注册了各种各样服务的我来说，那样效率太低了，因此有个好点的邮箱聚合应用就很重要了&lt;/p&gt;&#xA;&lt;p&gt;对于桌面应用来说，我用的是 &lt;a href=&#34;https://www.thunderbird.net/zh-CN/&#34;&gt;Thunderbird&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Outlook 太重了，以及各种各样 bug，不考虑&lt;/p&gt;&#xA;&lt;p&gt;Spark，唉，隐私，不全局 TUN 代理根本上不去，分流规则也很迷，虽然界面挺好看的，而且可以多个邮箱换设备自动同步&lt;/p&gt;&#xA;&lt;p&gt;Foxmail，玩具，不中看也不中用，不支持 GPG 加密&lt;/p&gt;&#xA;&lt;p&gt;网易邮箱大师，Gmail 同步老是报网络错误，一直拉取不下来&lt;/p&gt;&#xA;&lt;p&gt;当然，Thunderbird 也不算十全十美，至少界面不是特别好看的那种，但好在还算实用，而且一个压缩包就能直接用，纯绿色版不用安装，因此可以使用 Scoop 直接安装，官方也提供了相应的包，这点值得好评&lt;/p&gt;&#xA;&lt;p&gt;下载下来第一步当然是把所有邮箱全都绑定在上面了&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./b46ba5c09acba051da090acf3361b76a_MD5.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;缺点在于多个账户没法自动同步，换设备需要手动导入，而且 Gmail 现在改成 OAuth2 认证，需要进高级设置单独配置，有点繁琐，但由于是开源的全平台邮箱软件，加之 Mozilla 的情怀加持，最终还是选择它了&lt;/p&gt;&#xA;&lt;h3 id=&#34;android&#34;&gt;Android&lt;/h3&gt;&#xA;&lt;p&gt;Android 选择的也是 Thunderbird 的安卓端，这个软件也在 Github 上开源了：&lt;a href=&#34;https://github.com/thunderbird/thunderbird-android&#34;&gt;thunderbird-android&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;配置简单很多，而且界面也挺好看的，可以进行账户同步，数据的导入导出，但缺点就是没法和桌面端的 Thunderbird 联动，这两数据没办法互相导入，不过看 Is 已经有引入 Mozilla Sync 来进行同步的计划了，可以期待一手&lt;/p&gt;&#xA;&lt;h2 id=&#34;临时邮箱&#34;&gt;临时邮箱&lt;/h2&gt;&#xA;&lt;p&gt;临时邮箱用来注册一些临时使用又不想暴露自己身份信息的网站，比如有的时候可能只想进网站看看内容而网站需要注册登录才能用，这时就可以用临时邮箱来代替&lt;/p&gt;&#xA;&lt;p&gt;临时邮箱可以用现成的网站，如：&lt;a href=&#34;https://www.emailnator.com/&#34;&gt;Emailnator&lt;/a&gt;，也可以采取自建的方式&lt;/p&gt;&#xA;&lt;p&gt;自建的话就要用到我们的大慈善家 Cloudflare 了，Github 上也有很多的开源项目可以利用 Cloudflare 的 Workder 自建临时邮箱，比如：&lt;a href=&#34;https://github.com/dreamhunter2333/cloudflare_temp_email&#34;&gt;cloudflare_temp_email&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>PVE 折腾之旅</title>
      <link>https://blog.cusox.net/posts/pve/</link>
      <pubDate>Tue, 23 Jul 2024 23:41:29 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/pve/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;因为要在服务器中跑几个大程序，云服务器的 2G 内存显得不是那么够用了，启动程序直接爆内存，于是还是上车了心水了很久的小主机，性能不需要太强，内存够大功耗足够小就 ok，目前整服务器 N100 的 U 性能完全足够了，看了下各大厂商的，感觉还是零刻的接口比较符合我的要求，畅网的四网口适合软路由，不过我有个斐讯 N1 作旁路由所以软路由暂时没需求，遂在闲鱼找了个卖家花 1k 左右整了个零刻 N100，带 16G DDR5 阿斯加特内存 + 250G 固态，均全新，后来了解到卖家是个厂商清库存的，算下单买的话价格其实也差不多，就直接上车了&lt;/p&gt;&#xA;&lt;p&gt;之前 PVE 系统装在另一个 500G SSD 当中，跑了几个服务几个虚拟机将就用着，但由于我软硬件洁癖实在严重，这也一直搁置了，刚好现在有时间就又重新装一遍，这次选择装在 250G 固态上，文件系统也由 Ext4 改成了 Btrfs ，下文就沿着以前写的继续添笔了&lt;/p&gt;&#xA;&lt;h2 id=&#34;pve&#34;&gt;PVE&lt;/h2&gt;&#xA;&lt;p&gt;入手之后便开始了虚拟化的折腾之旅，考虑到 ESXI 对部分硬件的兼容性不太行，就直接选择 PVE 了，ESXI 的好处是功能很完善，然后配置很简单，PVE 的话主要是基于 Debian 开发的，所以配置直通这块需要用到命令行操作比较多，不过也当练手 Debian 了&lt;/p&gt;&#xA;&lt;p&gt;PVE 即 Proxmox Virtual Environment，也简称 Prxomox VE，安装 PVE 过程很简单，安装引导也很完善，安装步骤和安装系统类似&lt;/p&gt;&#xA;&lt;h3 id=&#34;安装-pve&#34;&gt;安装 PVE&lt;/h3&gt;&#xA;&lt;p&gt;在 &lt;a href=&#34;https://www.proxmox.com/en/downloads&#34;&gt;PVE 官网下载&lt;/a&gt; ISO 镜像&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;d39c22544a7e2b9fc8854ab4b4023220_MD5.png&#34; alt=&#34;image-20230817115148418&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;下载之后制作安装 u 盘，可以用 &lt;a href=&#34;https://rufus.ie/&#34;&gt;rufus&lt;/a&gt; 擦除，我有保存 ISO 的习惯，所以选择了 &lt;a href=&#34;https://github.com/ventoy/Ventoy&#34;&gt;Ventory&lt;/a&gt;，不需要擦除，直接把 ISO 文件拷贝进去就行&lt;/p&gt;&#xA;&lt;p&gt;接下来忘了截图，就把大致步骤说下，可以参考具体视频看，比如&lt;a href=&#34;https://www.bilibili.com/video/BV1GY41177Es/&#34;&gt;司波图大佬的 AIO 教程&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>选择与从新出发</title>
      <link>https://blog.cusox.net/posts/choice-and-leave/</link>
      <pubDate>Wed, 17 Jul 2024 01:49:42 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/choice-and-leave/</guid>
      <description>&lt;p&gt;自今年六月底参加完自己的本科毕业典礼过去快一个月了，我也正式消去了大学生的身份，下一步便是跨入研究生大学的校门，继续研究生生涯的深造&lt;/p&gt;&#xA;&lt;p&gt;前段时间回来跟几个初中同学聚了聚，由于高中期间我和他们不在同一所学校，大学期间又是各种时间错位，这次聚会也算是近几年来寥寥无几中的一次了，我本以为和以前有着最大改变的是每个人的样貌或性格，但很遗憾都不是，最大的变化是聊的话题，不再局限于游戏怎么玩、谁谁谁喜欢哪个女生，话题的落点到了你之后准备去哪？啥时候走？虽说我已经刻意去避免落到这话题上，引导着聊聊过去发生的事，但发现大部分时候还是会去问这些情况，这种话题的转变颇有种闰土见迅哥时那种物是人非的感觉，已经不是无忧无虑的小时候了，现在要考虑的方面多了&lt;/p&gt;&#xA;&lt;p&gt;事实上，大家都做出了各自的选择：有选择国内深造读研的、有选择出国留学的、有选择工作的、有成功上岸公务员的等等，这是大家的选择，每个人都选择了自己的道路，有些人可能也因为这个选择一辈子就再也见不到了，当然，我也做出了属于我自己的选择，推免研究生&lt;/p&gt;&#xA;&lt;p&gt;我对自己的技术有着盲目的自信，但三年疫情说来就来说走就走，大环境突然一下就不行了，各大公司为了自保开始大规模裁员，直到大三我才开始认识到可能我的技术也并没有那么厉害，可能我没办法找到令自己满意的工作，那时我才决定往推免这条路上走的，因此我夏令营预推免提交的简历中基本都是对就业有利的项目，而没有任何科研项目，直到现在我也一直在怀疑这个选择是否是做正确了，特别是在如今严峻的就业环境下，就算我拖延了三年面对就业，但三年后的研究生就业形势真的好吗？计算机那个时候还能像近些年这样迅速发展吗？那时候技术迭代过快淘汰了怎么办？同班同学有人放弃推免选择就业的选择是否更优？&lt;/p&gt;&#xA;&lt;p&gt;由于大学学的是软件工程专业，大部分人流向了就业，当然，也有出国和公务员上岸的，这都是各自的选择，我以为只有我一人有着这样纠结的烦恼，但当我看到就业同学公司选择的后悔，出国同学的国家选择纠结，国考上岸同学的岗位抱怨，我才意识到原来不止我一人有着做出选择之后的情绪——焦虑，旁人看到的和自己看到的往往不同，公务员就一定是铁饭碗吗？在大部分人看来是的，但也有人害怕着政策大环境之类的导致这个铁饭碗也不一定能够端稳一辈子，至少十多年前说的老师岗位是铁饭碗在现在已经不是了&lt;/p&gt;&#xA;&lt;p&gt;有一天，柏拉图问苏格拉底：“老师，什么是爱情？”，苏格拉底微笑着说：“我请你穿越这片稻田，去摘一株最大最金黄的麦穗回来，但你不能走回头路，而且只能摘一次”，柏拉图按照苏格拉底的话去做，很久才回来，苏格拉底问他摘到没有，柏拉图摇摇头：“开始我觉得很容易，充满信心出去，但最后空手而归”，苏格拉底继续问：“什么原因呢”，柏拉图叹了口气说：“很难看见一株不错的，却不知道是不是最好的，因为只可以摘一株，无奈只好放弃，于是再往前走，看看有没有更好的，可是我越往前走，越发觉不如以前见到的好，所以我没有摘，当已经走到尽头时，才发觉原来最大最饱满的麦穗早已错过了，只好空手而归了”，这时，苏格拉底意味深长地说：”这就是爱情“；有一天，柏拉图问苏格拉底：”老师，什么是婚姻？“，苏格拉底说：”我请你穿越这片森林，去砍一棵最粗最坚实的树回来放在屋里做圣诞树，但你不能走回头路，而且只能砍一次“，于是柏拉图去做了，许久之后，他带了一棵并不算高大粗壮却不算赖的树回来了，苏格拉底问：“怎么只砍了这样一棵树回来？“，柏拉图说道：”当我穿越森林的时候，看到过几棵非常好的树，这次我吸取了上次麦穗的教训，看到这棵树很不错，就选它了，我怕我不选它，就又会错过了砍树的机会而空手而归，尽管它并不是我碰见的最棒的一棵“，这时，苏格拉底意味深长地说：”这就是婚姻“&lt;/p&gt;&#xA;&lt;p&gt;上面这则故事是我在前几天看到的，每个人对这则故事都有着自己的思考，这便是语言的艺术，其中让我记忆深刻的是柏拉图也曾纠结于选择的正确性，我也经常陷入选择的局部最优，而没有考虑整体最优，这在算法当中称作贪心思想，但在生活中选择的跨度和是否正确往往不是当下就能检验的，我们也没法预测未来会因为这个选择如何变动，我一个初中同学高考考了 530 多分，进了一个二本的警察学院，选的刑警专业，今年毕业直接划分到省会城市的警察编制了，这个选择在当时来看可能不是最优解，但时间跨度拉到现在再看，可能最优解的定义就变了，父母认为我高考失利了，虽然我并不这么认为，我知道我自己当时的状态不对，只能说是正常发挥，最后的分数可以进一个差不多的 211，但没法选好专业，我熬了两个大夜，把整本填报志愿的书从头到尾翻了两遍，把每一个符合我要求的筛选出来，最后不顾父母劝阻，选择了个双非的一本，学了软件工程专业&lt;/p&gt;&#xA;&lt;p&gt;到今天来看，当时做选择的时候我有过后悔吗？有过如果高考考高点的分就好了这样的想法吗？有过毕业之后未来会怎么样的焦虑吗？答案是都有过，但是不多，大概是因为这个选择是我深思熟虑过后的，做好了面对一切的准备，无论发生什么都不会后悔，做这个选择是我认为最正确的一件事，至今我也是这样认为的，而那个暑假是我最轻松的暑假，甚至比现在还轻松，比现在的焦虑还少，直到现在有人提起当时要是选个 211 就好了，我也会给与反驳：”这谁说得准，说不定去了 211 就拿不到推免资格了“，很多人在制造焦虑，高考没考好人生就完了之类的，特别是互联网的大流行，事实上大部分焦虑和压力是自己给到自己的，是眼界不够宽广以及时间跨度短带来的局限性造成的，人生太长了，世界太广了，值得去选的值得去看的还有很多，比中考高考重要的选择在漫漫人生中太多了，身边还在备战中高考的父母亲戚朋友家的小孩也会向我取经，但我经常给的一句话都是：“保持一颗平常心，尽量做到不让自己后悔”&lt;/p&gt;&#xA;&lt;p&gt;我无法保证未来做的每个选择都是正确的，我也无法保证是否会由于贪一时的小便宜选择了个局部最优的选择，正如选择自己喜欢的专业而不是学校的 title，正如选择推免而不是就业，深思熟虑考虑做出的选择不能保证一定正确，但至少能够让以后的自己回想起来不会感到后悔，标题之所以是&lt;strong&gt;从新出发&lt;/strong&gt;而不是&lt;strong&gt;重新出发&lt;/strong&gt;也是这个含义，做完每个选择都如同重生一般，抛弃了过去的种种而成为了一个更加坚定想法的自己&lt;/p&gt;</description>
    </item>
    <item>
      <title>Paygo / T-Mobile WifiCalling 连接不上的解决方案</title>
      <link>https://blog.cusox.net/posts/paygo-t-mobile-wificalling/</link>
      <pubDate>Thu, 14 Mar 2024 11:32:50 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/paygo-t-mobile-wificalling/</guid>
      <description>&lt;p&gt;最近整了张 paygo 的 3 美刀月付卡，在 wificalling 下可以使用手机卡自带的套餐，每月 100 分钟通话，100 条收发短信，流量不可用，非 wificalling 下通话和短信算作漫游，具体可以参考&lt;a href=&#34;https://itangtalk.com/sim-vs/&#34;&gt;美国手机卡横评，0 月租美国手机卡评测，T-Mobile 原生手机卡评测&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;所以在大陆使用的话得开启 wificalling，而连接不上主要是众所周知的原因导致的 dns 解析问题，可以选择手动设置国外 dns 解析或者直接在路由添加这样一段 Host 规则：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&#xA;&lt;table style=&#34;border-spacing:0;padding:0;margin:0;border:0;&#34;&gt;&lt;tr&gt;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;2&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;3&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;4&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;5&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;;width:100%&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;epdg.epc.mnc260.mcc310.pub.3gppnetwork.org 208.54.49.131&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ss.epdg.epc.mnc260.mcc310.pub.3gppnetwork.org 208.54.36.3&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;epdg.epc.mnc260.mcc310.pub.3gppnetwork.org 208.54.35.163&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ss.epdg.epc.mnc260.mcc310.pub.3gppnetwork.org 208.54.35.163&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ss.epdg.epc.geo.mnc260.mcc310.pub.3gppnetwork.org 208.54.87.3&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;如果想要实现秒连，可以在 Rules 当中加入这样一条规则来使用服务节点，Proxy 可以自己选择服务节点：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&#xA;&lt;table style=&#34;border-spacing:0;padding:0;margin:0;border:0;&#34;&gt;&lt;tr&gt;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;;width:100%&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;IP-CIDR,208.54.0.0/16,Proxy&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;实测可以成功激活 wificalling，而且很稳不会断连&lt;/p&gt;</description>
    </item>
    <item>
      <title>踩坑 | oneAPI for NVIDIA GPUs 安装的一两事</title>
      <link>https://blog.cusox.net/posts/oneapi-nvidia-gpu/</link>
      <pubDate>Thu, 14 Mar 2024 01:22:58 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/oneapi-nvidia-gpu/</guid>
      <description>&lt;p&gt;标题写明了踩坑，所以这是一篇讲述踩坑经历的文章，本来想写安装的两三事的，后面发现这坑特小，一两事足够概括了，坑再小都还是有人踩，而且爬个几天可能都不一定能爬上来&lt;/p&gt;&#xA;&lt;p&gt;毕设题目是异构计算的实现，各种实现方案选来选去最后还是选了 &lt;a href=&#34;https://www.intel.cn/content/www/cn/zh/developer/tools/oneapi/overview.html&#34;&gt;oneAPI&lt;/a&gt; ，intel 开发的基于 sycl 的一套工具链，由于底层是基于 sycl，所以天生拥有着多设备的兼容性，可以支持 cpu、gpu、fpga 等等，具体介绍这里不赘述了，详情可去官网了解，下面讲踩坑的心路历程，记个流水账先：&lt;/p&gt;&#xA;&lt;p&gt;我的 CPU 是 amd 的 3600，显卡是 Nvidia 的 2060，oneAPI Toolkits 提供了 Windows 的整套安装方案，如果电脑上装有 VS 可以方便迁移，可惜的是最开始我的电脑并没有装 VS，所以安装的时候也就没办法选择安装迁移 VS 编译的插件，就先用的是 VS Code 搭的简易环境，毕竟官方也有几个扩展可以支持简单代码的编写，但当我写完了代码运行的时候发现怎么都找不到 gpu，cpu 倒是能找到（），当时以为是支持不好，于是装了个 VS 搭环境开始配置，结果还是一样没办法找到 gpu&lt;/p&gt;&#xA;&lt;p&gt;到这时候发现不对了，明明编译器是一样的，环境不影响才对，何况还换了环境结果还是不能识别 gpu，于是跑去详细看官方文档，这才发现原来 oneAPI 只支持自家的 gpu，如果要想支持 N 卡得另外装插件，ok，既然要另外装插件才能跑那就装呗，结果一看这不对啊，这插件怎么只支持 linux 啊&lt;/p&gt;&#xA;&lt;p&gt;没办法，只好在电脑上考虑装个 linux 了，双系统每次使用需要开关机太麻烦，就直接上 WSL2 了，不得不说 WSL2 的体验确实好，之前一直没装的原因是因为 Android 模拟器的 VT 和 Hyper-V 有冲突，不过现在二者共存用蓝叠兼容性还是挺好的&lt;/p&gt;&#xA;&lt;p&gt;本来以为这就完事了，从 &lt;a href=&#34;https://developer.nvidia.com/cuda-toolkit-archive&#34;&gt;Cuda 下载页面&lt;/a&gt;给 WSL2 装上了特定的不带驱动版本的 Cuda，从 &lt;a href=&#34;https://www.intel.cn/content/www/cn/zh/developer/tools/oneapi/base-toolkit-download.html?operatingsystem=linux&amp;amp;linux-install-type=apt&#34;&gt;intel 官方&lt;/a&gt;利用 apt 包管理工具下载了 intel oneAPI Toolkits，同时用 apt 安装了 &lt;a href=&#34;https://developer.codeplay.com/products/oneapi/nvidia/download&#34;&gt;oneAPI for NVIDIA GPUs&lt;/a&gt;，万万没想到就是这里出了岔子&lt;/p&gt;</description>
    </item>
    <item>
      <title>重装系统的新体验 - Scoop &amp; vfox</title>
      <link>https://blog.cusox.net/posts/scoop-and-vfox/</link>
      <pubDate>Wed, 13 Mar 2024 17:55:57 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/scoop-and-vfox/</guid>
      <description>&lt;p&gt;距离上次重装系统又过去了一年，这对于具有电子洁癖的我肯定是忍受不了，不过这次重装最主要的原因还是装环境把系统装乱了，懒得一个个清文件了，干脆重装得了&lt;/p&gt;&#xA;&lt;p&gt;Windows 的注册表一直以来都处于被诟病的状态，格式化 C 盘一时爽，重装后的软件一个用不了，为了对标 Linux 的包管理器，微软自家搞了个 Winget，说是说包管理器，实则只是省去了找官网的时间的安装器，而且安装还是静默安装，默认安装到 C 盘，外加国内软件厂商不遵守规范，各种垃圾文件垃圾目录层出不穷，以及不能添加额外命令自定义安装位置&lt;/p&gt;&#xA;&lt;p&gt;于是，Scoop 出来了，Scoop 的理念在于便携、绿色，一个 json 文件代表一个软件，可以方便导入导出，利用 bucket 机制来添加删除软件源，对于一些不需要 UAC 之类的软件安装非常舒适，json 文件的可定义程度很大，当然维护者需要对 Powershell 命令有所了解&lt;/p&gt;&#xA;&lt;p&gt;Scoop 可以自定义安装位置，对我这种不喜欢把软件安装在 C 盘的人来说十分友好，大部分软件包可以在&lt;a href=&#34;https://scoop.sh/&#34;&gt;官网&lt;/a&gt;找到，有些是官方认可的 bucket，主要由社区维护，有些是个人维护的 github 仓库，当然不是所有的软件都能找到，这个时候可以选择自己构建 bucket ，比如这是我自己构建的&lt;a href=&#34;https://github.com/Cusox/scoop-bucket&#34;&gt;bucket&lt;/a&gt; ，有关 Autoupdate 和 Manifest 的编写方法可以参照官方的&lt;a href=&#34;https://github.com/ScoopInstaller/Scoop/wiki&#34;&gt;文档&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Scoop 可以把添加的 bucket 和安装的软件一同导出为一个配置文件，这样在新环境中配置只需要拷贝持久化的文件夹和导入这个配置文件并 reset 便可以实现快速迁移&lt;/p&gt;&#xA;&lt;p&gt;目前 Scoop 安装的 cli 和提供了 portable 的软件基本没什么问题，但一些 no portable 的软件还有点小 bug，不过我装的软件大多属可接受范围内，建议是需要用到 UAC 之类的软件或者是会自动更新的软件选择从官网下载安装&lt;/p&gt;&#xA;&lt;p&gt;Scoop 用来装各种环境也很舒服，而且不需要手动修改 PATH，Scoop 本身提供了 shim 文件夹，安装软件后的 exe 文件会自动加入该文件夹，同时可以装多个版本的环境，比如多个 jdk，切换的时候只需要 reset 到相应版本就行了&lt;/p&gt;&#xA;&lt;p&gt;当然，管理配置环境这边我更推荐 &lt;a href=&#34;https://vfox.lhan.me/&#34;&gt;vfox&lt;/a&gt;，Scoop 的 main bucket 也添加了 vfox 的软件包，可以直接使用官方 bucket 安装&lt;/p&gt;</description>
    </item>
    <item>
      <title>开箱 | Pixel 7 Pro</title>
      <link>https://blog.cusox.net/posts/pixel-7-pro/</link>
      <pubDate>Sun, 25 Feb 2024 19:27:06 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/pixel-7-pro/</guid>
      <description>&lt;p&gt;作为一名谷歌粉，谷歌全家桶的生态已经把我绑的死死的，而且在把我的小米 10 刷成类原生深度体验两年后，我发现类原生的毛坯房才是最适合我的系统，于是一直心水一台 Pixel，想着体验体验原厂的类原生，而不是刷第三方支持的 PE 或是其他类原生，虽然说 Pixel 的硬件都属于电子垃圾一类的，特别是 Tensor 芯片，但在解 bl 政策越来越严峻的今天，拥有一台能够随时随地解锁回锁的机子反而是一件幸事&lt;/p&gt;&#xA;&lt;p&gt;刚好现在我的米 10 也到了更新换代之际，也一直在参考能方便解锁以及内核是否开源的各种机子，具体参考：&lt;a href=&#34;https://github.com/KHwang9883/MobileModels/blob/master/misc/bootloader-kernel-source.md&#34;&gt;各 Android 手机厂商 Bootloader 解锁 / 内核开源 / 解锁后保修情况&lt;/a&gt;，发现了新兴牌子 Nothing，由以前一加的创始人之一在国外创的牌子，看外观很吸引我，灯也挺好看的（主要是想体验灯），类原生系统体验，解 bl 啥的都很方便，但在酷安看到很多用户系统更新有概率变砖，而且由于刚创立技术上不太成熟，目前遇到问题的解决方案较少，保修也比较困难，硬件与价格不符，二手传家宝等等因素，放弃了优先选择，还是等三代配置出来看看能不能好点&lt;/p&gt;&#xA;&lt;p&gt;Pixel 的话，由于很久以前就在闲鱼蹲 Pixel 3 和 Pixel 4，但一直没蹲到好价入手，这次就干脆在闲鱼淘了个 Pixel 7 Pro 来体验一下，虽然也是硬件与价格不符的，但至少有着谷歌原生支持，解决方案这些也比较多，而且这边再吹一下谷歌的文档，这在所有互联网公司中都属于特别完善规范的那种&lt;/p&gt;&#xA;&lt;p&gt;2300 的价格，12 + 256，屏幕完美，成色一般，主要是镜头框磨损严重点，其他没啥太大问题，平常戴套也还算可以接受的范围，个人卖家，还没解锁过 bl，第一次还在（&lt;/p&gt;&#xA;&lt;p&gt;这价位只能说性价比无敌，果然新一代发售 + 大船靠岸的时候买旧一代的洋垃圾是最具性价比的选择&lt;/p&gt;&#xA;&lt;p&gt;手感挺不错的，镜头模组个人感觉没有 Pixel 3 和 Pixel 4 好看，审美倒退了说是，上正反面两张图，这里喷一下米 10 自带的相机，真的被砍成一坨了，拍的啥都是糊的，拍两张直接不想拍了&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./65db0eef26404.webp&#34; alt=&#34;image-20240225175712468&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./65db0ef95b66e.webp&#34; alt=&#34;image-20240225175722939&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;有个极其反人类的设计，电源键和音量键是反的，需要自适应一段时间&lt;/p&gt;&#xA;&lt;p&gt;CPU 方面，这代采用的是 TensorG2，dddd，性能就 888 的水平，这方面永远是遥遥落后，不过好在我的游戏需求并不大，唯一担心的就是夏天的发热情况以及耗电问题，Root 的话手动修改调度情况应该能够有所改善&lt;/p&gt;&#xA;&lt;p&gt;相机方面，还没咋拍，不过看各路评测感觉这块挺强的&lt;/p&gt;&#xA;&lt;p&gt;系统方面，该说不说的是，CPU 虽然拉，系统流畅度绝对是数一数二，还了类原生最开始的模样，对于大部分习惯了国产定制系统的人来说，光是类原生的推送机制就可以劝退了，但对我这种爱折腾的人来说，简陋意味着自定义的地方多，各种地方都折腾一下反而是其中的乐趣所在，Pixel 还一大好处就在于此，内核代码均开源，可以自己编译内核，编写打包各种模块，可折腾的方面有很多&lt;/p&gt;&#xA;&lt;p&gt;充电方面，支持 PD 协议 24w，甚至比我的小米 10 的 27w 还拉跨，续航的话看评测感觉也一般，还在体验&lt;/p&gt;</description>
    </item>
    <item>
      <title>旁路由的那些事</title>
      <link>https://blog.cusox.net/posts/side-router/</link>
      <pubDate>Wed, 07 Feb 2024 20:34:57 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/side-router/</guid>
      <description>&lt;p&gt;我有个坏毛病，要紧事不咋急，喜欢赶各种 ddl，空闲之余又喜欢折腾些杂七杂八的东西，也不干正事，去年在 v2 收了一个二手白色的斐讯 n1，到手就刷了个 F 大的 OpenWrt 镜像，随便调了下配置就凑合用了，一直到今年年初，结果不知道咋的突然寄了，正好那段时间 clash 全系迎来了有史以来最大的删库行动，软路由重装计划也暂时搁置了，刚好这段时间没啥事干也不想写毕设，于是就开始重装软路由的计划&lt;/p&gt;&#xA;&lt;p&gt;对于软路由我的需求不是很多，日常我只是当个透明网关使用，用来实现去广告、流量监测、国内外分流以及 Tailscale 作为内网入口，而 n1 只有一个网口，正好用作旁路由的使用。旁路由这个词也是我在折腾 n1 的时候听到的，事实上很不学术，因为根本没有这种叫法，但在拓扑结构中旁路由确实又很形象，所以就干脆延续下去了。正因如此，F 大的镜像对我这种有电子洁癖的人来说过于完善了，很多功能用不上却也占着位置，而且由于 &lt;em&gt;overflayfs&lt;/em&gt; 文件系统的原理，删除固件自带的软件包也无法增加空间，于是萌生了自己编译的想法&lt;/p&gt;&#xA;&lt;h2 id=&#34;编译&#34;&gt;编译&lt;/h2&gt;&#xA;&lt;h3 id=&#34;本地编译&#34;&gt;本地编译&lt;/h3&gt;&#xA;&lt;p&gt;以前也进行过类似的本地编译，当时玩的是极路由 4，奈何内存过小 OpenClash 一直开不起来，这次选用的依然是 &lt;a href=&#34;https://github.com/coolsnowwolf/lede&#34;&gt;Lean&amp;rsquo;s LEDE&lt;/a&gt;，由于设备不同，打包则选用了 &lt;a href=&#34;https://github.com/unifreq/openwrt_packit&#34;&gt;Flippy&amp;rsquo;s Packit&lt;/a&gt;，LEDE 比较接近 OpenWrt 官方的镜像，而 F 大的内核和打包源码对 n1 也很友好，软件源方面另外添加了 &lt;a href=&#34;https://github.com/kenzok8/small-package&#34;&gt;small-package&lt;/a&gt;，要用的 OpenClash 包在默认源当中不存在，只能三方引入&lt;/p&gt;&#xA;&lt;p&gt;本地编译用的环境是 Archlinux，很幸运的是很久没开过结果更新竟然没有滚炸，就顺着以前搭建的编译环境继续编译了，详细过程就省略了，讲讲几个当时编译遇到的问题吧&lt;/p&gt;&#xA;&lt;p&gt;首先就是网络问题，这也是最后逼着我云编译的原因，90% 的编译不通过都是由于网络问题，我挂的全局代理设置的环境变量，导致编译的时候有个工具死活下载不下来，没一点速度，后面关了代理才能正常下载，但是在编译过程中又不能停下来关代理，于是选择直接 curl 国内环境先下载扔进 dl 文件夹里了，这里还有一个坑，curl 下载和直接网页下载的文件 Hash 值不一样，这里猜测可能和浏览器 UA 有关&lt;/p&gt;&#xA;&lt;p&gt;其次遇到的就是编译环境的问题了，忽略了重要的 gcc 版本，Arch 由于滚动更新所有的软件时刻保持最新，gcc13 版本发生了头文件和语法的改变，然后就报错寄了，于是下载了 gcc12 版本，并且进行了环境变量的设置来改变默认使用 CC 和 CXX 是 gcc13&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&#xA;&lt;table style=&#34;border-spacing:0;padding:0;margin:0;border:0;&#34;&gt;&lt;tr&gt;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;;width:100%&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a90d91&#34;&gt;export&lt;/span&gt; &lt;span style=&#34;color:#000&#34;&gt;CC&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;=&lt;/span&gt;gcc-12 &lt;span style=&#34;color:#000&#34;&gt;CXX&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;=&lt;/span&gt;g++-12&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;再者遇到的问题就是 xfsprogs 的编译错误了，后来发现是上游错误，而且有很多人提交了 pr，这里就不再赘述了&lt;/p&gt;</description>
    </item>
    <item>
      <title>2023 年终总结</title>
      <link>https://blog.cusox.net/posts/2023-summary/</link>
      <pubDate>Mon, 08 Jan 2024 01:47:04 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/2023-summary/</guid>
      <description>&lt;p&gt;一直想着说写个总结吧，然后一直拖到了现在，说是说年终总结，然而却在新的一年才开始写，不过也还好，赶在了农历新年前，那就姑且还算作 2023 吧&lt;/p&gt;&#xA;&lt;p&gt;不知不觉又过去了一年，今年发生了很多事，但真当动手写时却又写不明白，所以想到哪写哪吧&lt;/p&gt;&#xA;&lt;h2 id=&#34;推免&#34;&gt;推免&lt;/h2&gt;&#xA;&lt;p&gt;是的，今年上半年一直在忙这件事，说实话，一直以来都没想过能保上吧，从高考后选完志愿开始就一直朝着大学毕业工作的方向努力，谁又能料到疫情三年能让依托于房产的泡沫经济垮台，各大公司裁员，在大三上返校的时候，也就是 22 年 9 月，看着动态里一个个优秀的学长保进了心仪的学校，然后又看了眼自己班级第五的成绩，心想要不考虑争取一下，毕竟现在实习也不好找，然后就开始填补自己空缺的竞赛经历&lt;/p&gt;&#xA;&lt;p&gt;年底报名了蓝桥杯，很久没练过算法题了，来年 6 月水了个国二草草了事，然后又被拉去打了大学生计算机设计大赛，侥幸拿了个国一，于是竞赛这块空白被填充了&lt;/p&gt;&#xA;&lt;p&gt;与此同时也在不停的网罗各种学校，相较于人工智能 ai 方向来说，我个人偏向于学习系统方向，奈何国内研究生导师研究操作系统这块比较少，后来转入了研究数据库系统这块，于是发现了华师的数据学院，看着还是挺合我的心意的，便考虑报名了华师夏令营&lt;/p&gt;&#xA;&lt;p&gt;当然还有其他的，推免总结的话在我这篇文章 &lt;a href=&#34;https://blog.cusox.net/posts/recommendation-summary/&#34;&gt;迟来的推免总结&lt;/a&gt; 中都写了，这里就不再赘述了&lt;/p&gt;&#xA;&lt;p&gt;如此说来，算是续费了三年的求学生涯吧，不过世事难料，人就活这一辈子，谁也不能告诉你这个决定是否正确，这也只能由以后的自己回头来验证&lt;/p&gt;&#xA;&lt;h2 id=&#34;大学&#34;&gt;大学&lt;/h2&gt;&#xA;&lt;p&gt;今年上半年，也就是大三下，成为了一名预备党员&lt;/p&gt;&#xA;&lt;p&gt;水完大四上的十周实训就回家了，上个礼拜由于开题答辩又急匆匆买票赶回学校，用着研究生导师那边的题目，作了一个自认为还行的答辩，答辩完买不到回家的票，就去长沙转了转跨了个年，然后又坐车回了家，大四上也差不多结束了&lt;/p&gt;&#xA;&lt;p&gt;四年时间，说长也长说短也短，说长是因为大约有 365 × 4 天，说短是因为这四年在记忆中也仅仅留下了几个记忆深刻的片段&lt;/p&gt;&#xA;&lt;p&gt;有句话是这样说的：10 岁时，觉得一年长，那是因为一年是年纪的 1/10；40 岁时，觉得一年短，那是因为一年是年纪的 1/40&lt;/p&gt;&#xA;&lt;p&gt;曾经一起通宵游戏的人开始了朝九晚五的实习，期望着考研能上个好点的学校，准备着一年一度的公考，每个人都在做着自己当下认为的最正确的决定&lt;/p&gt;&#xA;&lt;p&gt;还有半年就各奔东西了，大学时光也便要告一段落了，想见的人一年见不到几面，不想见的人应该这辈子也见不到了&lt;/p&gt;&#xA;&lt;h2 id=&#34;体检&#34;&gt;体检&lt;/h2&gt;&#xA;&lt;p&gt;水完实训从学校回来后做了个体检&lt;/p&gt;&#xA;&lt;p&gt;左肺上叶舌段和右肺中叶少许纤维灶，无疑是当时新冠留下的后遗症，医生说的是没啥太大影响，但年纪大了之后会不会病变谁说得准&lt;/p&gt;&#xA;&lt;p&gt;尿酸偏高，大抵是饮料喝多了，需要控制&lt;/p&gt;&#xA;&lt;p&gt;脂肪肝和左肾小结石，现在一天天的不是面对电脑就是躺在床上，需要多运动&lt;/p&gt;&#xA;&lt;p&gt;然后就是其他指标测定的不正常，由于熬夜导致的，需要注意休息&lt;/p&gt;&#xA;&lt;h2 id=&#34;长沙旅行&#34;&gt;长沙旅行&lt;/h2&gt;&#xA;&lt;p&gt;开题答辩完后在长沙玩了玩，只能说去的时候不对，刚好赶上跨年全是人，不建议在节假日往那边跑，不然真的会堵在五一广场那而且手机没信号，最后也打不到车只能灰溜溜的骑共享电动车回酒店&lt;/p&gt;&#xA;&lt;p&gt;放几张图吧，全是人，手机像素也不太行，拍照属于能看就行的那种&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./659acb4f98af3.webp&#34; alt=&#34;image-20240108000316209&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./659acb5f1cc14.webp&#34; alt=&#34;image-20240108000341313&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;.//659acb8f8c6fe.webp&#34; alt=&#34;image-20240108000429589&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./659acb9fd216d.webp&#34; alt=&#34;image-20240108000446460&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./659acbadcbdb5.webp&#34; alt=&#34;image-20240108000501291&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./659acbbda9a15.webp&#34; alt=&#34;image-20240108000517374&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./659acbc86eb35.webp&#34; alt=&#34;image-20240108000527287&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;.//659acbd305445.webp&#34; alt=&#34;image-20240108000538734&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./659acbe3b9548.webp&#34; alt=&#34;image-20240108000555091&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./659acbecc160d.webp&#34; alt=&#34;image-20240108000604488&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;人太多了，挤地铁排队都排了 1h，要再给我一次机会我绝对不会去这了&lt;/p&gt;&#xA;&lt;h2 id=&#34;数码产品&#34;&gt;数码产品&lt;/h2&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./659acf23efb28.webp&#34; alt=&#34;image-20240108001946880&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;今年三月份整的 Canokey，天天插在我电脑上，越用感觉越离不开了，啥东西都存在里面，也开始担心没备份的事情了，来年一定得整个 Yubikey&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./659acdd8d1712.webp&#34; alt=&#34;image-20240108001416221&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;先来两个，左边的是斐讯 n1 盒子，刷了 Openwrt 系统，目前起到旁路由的作用，需要科学的设备改 dns 连接到这个软路由；右边的是零刻的 n100 小主机，放在家里当个家庭服务器，用来跑一些服务、折腾一些小玩意之类的&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./659acfec0ffce.webp&#34; alt=&#34;image-20240108002308029&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>迟来的推免总结</title>
      <link>https://blog.cusox.net/posts/recommendation-summary/</link>
      <pubDate>Mon, 09 Oct 2023 16:39:42 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/recommendation-summary/</guid>
      <description>&lt;p&gt;今年推免系统开放的时间是 &lt;strong&gt;9 月 29 日&lt;/strong&gt;，同往年一样，凌晨系统刚开放填志愿，然后中午十二点录取工作开始进行，整个流程很顺利，大概下午一点的时候就已经录取完成了，本来说那天下午就想把这篇文章写了，太懒了，拖着拖着就直接过完中秋国庆假期了，想了想今天没事正好写篇文章，算是对这半年以来的总结吧，&lt;/p&gt;&#xA;&lt;p&gt;说实话，大一入校的时候根本没往保研这块想，我本科学校不算特别好，是一个普通的双非院校，一直以来想的都是准备本科毕业就去就业的，跟我身边人说的这些也都差不了多少，包括我最后的个人简历也是一样，很杂很乱，都是些凭借着个人兴趣开发的项目，论文啥的实验室经历啥的全是空的，说起萌生保研这想法还得追溯到去年的这个时候，那时刚好和一个学长打了个比赛，他当时正在准备保研（最后保研上了成电 cs），耳濡目染之下发现自己的成绩好像能够争取一下，刚好那时感觉经济不太行，去年实习秋招情况也不太乐观，于是便开始准备相关的材料了&lt;/p&gt;&#xA;&lt;p&gt;当时我处于大二下学期结束的时候，开学就大三了，还好我的绩点不算太差，根据保研政策，唯一的缺点大概是缺少国奖比赛之类的，如果有一个的话那就更加稳了，于是大三大部分时间都处于准备比赛的阶段，很幸运在今年获得了一个计算机设计大赛的国一以及蓝桥杯的国二，让我对推免名额的冲击更上一步，最后也是以综测成绩第一获取了保研名额，事实证明，没有国奖也能稳校内推免，但是可能之后的夏令营预推免之类的困难重重&lt;/p&gt;&#xA;&lt;h2 id=&#34;夏令营&#34;&gt;夏令营&lt;/h2&gt;&#xA;&lt;p&gt;大概是今年四月五月的时候，开始了夏令营简历的投递，发现了 &lt;a href=&#34;https://github.com/CS-BAOYAN/CSSummerCamp2023&#34;&gt;github&lt;/a&gt; 的仓库，加了绿裙，以及一个四非群（想着到时候没 offer，捡漏兴许能用上），每天做的事就是刷新仓库网页，然后登陆注册系统，投递简历，复印打印，盖章之类的，自己做了个 excel 表方便自己查询时间是否冲突之类的，顺便记录一下投递的情况&lt;/p&gt;&#xA;&lt;p&gt;方向的话我个人大体分为 ai 方向和系统方向，观察了一下国内趋势，做 ai 方向的远远超过的系统方向，ai 方向是一个风口，变化很快，分支很多，论文发起来也比较简单，很容易做出成果，但风口意味着人多， ai 的就业竞争比较大，基本上就是奔着算法岗去了，算法岗过剩的没法消化也只能去写 java 这些业务系统，多少有些大材小用了。除了就业这方面，以前我也做过一些 ai 相关的项目，感觉相对于 ai 方向，系统方向的编码更对我口味，对于底层的研究或许困难，但能让我一直保持着编码的兴趣也挺不错的，于是便开始了高校系统方向的搜索&lt;/p&gt;&#xA;&lt;p&gt;看了一圈国内做系统方面的院校，人大的数据库算是国内数一数二的了，但很遗憾，人大歧视双非而且只在夏令营招人，于是放弃了，华科的数据库也挺不错，但是听说坑导很多而且也比较歧视双非，也放弃了，厦大的数据库挺好，但今年数据库导师不招生，看一圈全是 ai 方向的，兜兜转转绕了一大圈，最后发现了华师 dase，这学院挺合我口味的，导师有复旦和人大挖过来的，系统方向的话除了人大感觉就它了，或许是大部分实验室不允许实习的原因，一直不算特别出名，最后也是将其作为梦校梦院了&lt;/p&gt;&#xA;&lt;p&gt;首先拿到的是吉大软院的面试，面试很早，刚好赶上期末考那天上午，匆忙写完交卷准备面试，也遇到了很恶心的一件事：昨天晚上有人在群里问老师是否有英文自我介绍，老师说的是只有英文问答，全中文自我介绍，刚好第二天考试有很多需要记住的知识点，于是我直接复习去了，没有任何英语自我介绍相关的准备，而且本来英语就不算特别好，到面试那天等开始等了很久，结果上来直接让我英文介绍一下自己，当时直接想退了，结果还是硬着头皮面完了接下来的面试，随便说了两句应付了一下，后面是知识点考察，一道操作系统的题，一道计网的题，感觉答的一半一半，最后也是草草结束了，反正当时我直接对这学校好感减了一半，不过吃了这个亏，基本后面的面试都很从容了，而且也没有初次面试这么紧张，最后很意外的是竟然优营了&lt;/p&gt;&#xA;&lt;p&gt;然后下一个是天大，海王没啥说的，给所有人发了邮件然后按入群时间卡人，机试不爆零就能过，最后机试完还剩 400 多人，这个时候才会看简历，第二天导师线上面试我直接没去，听说去了的同学感觉对双非态度不是很好，为了防止被鸽我直接先把它鸽了，对天大没啥好感&lt;/p&gt;&#xA;&lt;p&gt;在天大面试那天我在去西南的火车上，距离太远了，还不报销路费，不过也想去重庆旅个游，天天待家里待着也是待着，不过最后也没去很多地方，一直在下雨，鞋子湿了不好出门。两天下来体验还行，去的是北碚校区，只能说校区是真的大，基本去哪都是坐那种观光车，那应该在校内算代步车了，毕竟校内没有共享单车，一直在学校迷路，而且山很多，去哪都跟爬山一样，不过风景非常优美，亲近大自然的感觉很爽，空气很清新，校园环境我给到 8 分，一分扣在山多走路很累磨脚，一分扣在树多虫多，师兄师姐和老师们都挺好，宣讲后茶歇的甜点很好吃，唯一的缺点算是宿舍环境了，宿舍环境太简陋了，独卫条件不太行，最后的面试中规中矩吧，我抽到的英文题目比较简单，最后也拿到了优营&lt;/p&gt;&#xA;&lt;p&gt;重庆这城市挺好的，生活节奏很慢，就是路段太绕了，地铁天上走，不开导航一直在迷路，导航有时也在瞎指路，只能说 3D 城市名不虚传&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./6523b2a94945c.webp&#34; alt=&#34;psc&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./6523b2b2a957d.webp&#34; alt=&#34;psc (1)&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./6523b2bb1d245.webp&#34; alt=&#34;psc (2)&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;最后参加的夏令营也就是华师 dase 了，夏令营算是最复杂的一个了，不过好歹是梦校梦院也坚持下来了，校区是中北校区，外看宿舍大概能想象到应该就是老校区那样，不过这几天体验还是挺不错的，路费报销 300，提供早中晚三餐，住的校区外的高档酒店，住宿这块体验还是很不错的，三天流程大致是：第一天听一天宣讲，晚上答疑，第二天上午机试（分两部分，一部分是 oi，按过的测试点得分，题目难度一般，暴力可解；另一部分是专业方向相关，这部分分两道题，一道是数据分析方向的，没学过没写，另一道是完善 C++ 写的数据库底层的一个功能，两个功能，过第一个得 60 分，过了第二个得 100 分，两方向题目二选一，也可以两个都写，两部分机试分数面试参考。第一部分的五道题我 A 了两道半，有道忘了语法了没写出来，另一道并查集不知道为啥一直有 bug，到最后也没调试出来；第二部分我写了数据库功能，没系统学过怎么写，听说他们本部的好像学过，硬看逻辑然后根据知识拿了个 60 分，60 分还是挺好拿的），第三天就是面试环节，没啥好说的，自从面完吉大软院面试都很从容了&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./6523b64012bf4.webp&#34; alt=&#34;psc (1)&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./6523b66413156.webp&#34; alt=&#34;psc&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;打卡了上海的沪西老弄堂面馆，我按评价点的雪菜毛豆辣肉拌面，味道很不错，算是拌面第一梯队了，猪排感觉一般，排队太久了，还有就是上海的消费水平是真的高，一瓶可乐都要 3.8 元&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./6523b6c7369a8.webp&#34; alt=&#34;psc (4)&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>努力真的有用吗？</title>
      <link>https://blog.cusox.net/posts/effort-really-worth-it/</link>
      <pubDate>Mon, 25 Sep 2023 09:48:25 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/effort-really-worth-it/</guid>
      <description>&lt;p&gt;前段时间李佳琦的翻车发言算是掀起了一阵大讨论，日常我个人是不咋使用抖音这个软件的，也没关注过直播带货，在这次事件之前也对这人没啥过多了解，所以对我来说应该也算是出圈了吧。总的来说，我认为他的想法是正常的，这并不是为了给他洗地，客观来说，在经过了这么多年的直播带货，每天面对着相似的言论，回答相似的问题，但凡是个人都要感到厌烦，可能一开始的兴趣，但当兴趣变成重复的工作的时候，没有新鲜感，兴趣便会慢慢消退。对于刚刚开始的李佳琦来说，这句话他肯定是不会去回答的，他要在乎自己赚钱的饭碗，在乎这场直播的收益，需要注意自己的言行，查了查这几年的流水，大概到了月入百万的级别，对已经到达这种量级资产的他来说，79 确实不能算一个很高的价格，而且了解这个牌子的之后，确实一直这个价格，所以这牌子也算是躺枪了。至于后半句的努力，他也的确能说出来，踩在了直播带货的风口，或许认为自己现在的成就都是靠自己努力得来的，每天都在满含热情的对着直播间，这就是他认为的努力。成为时代的幸运儿却身而不知，相信一切成功都是靠着自己努力获得的，这又何尝不是一种唯心主义。&lt;/p&gt;&#xA;&lt;p&gt;引起这么大讨论的原因，也许刚好是这句话引发了当代年轻人的爆点，在经济不如从前的形势下，找不到工作，或者面临随时可能被优化的风险，这些全被人归结于自己的不努力，但这真的是自己不努力的原因吗？从小父母亲戚告诉我们要努力，努力就能得到回报，这是因为在他们当时那个年代确实是这样的，努力工作，保持上进心，大部分人都能得到回报，但生活在现在的环境下，再相信努力和成功有因果关系的话，属实是有些天真了，正如余华老师说的那样：&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./6510e661055ed.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./6510e67022070.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;说实话，正是看到了这两张图，才心血来潮来写的这篇文章，现在大环境处于一种卷和摆的风气中，很多人都是嘴上说的开摆开摆但实际上没几个真的敢摆的，谁都在明卷暗卷，在这个发展的时代，一点不卷的话与时代脱轨的只会越来越快，努力的人太多了，成功的人却寥寥无几，当然大部分人对于成功的定义也是不同的，将所有一切归结于努力上，抛弃所有一切不确定因素，太过于绝对，努力或许在这之中只占了 5%，另外 95% 都属于运气成分，那这说明努力没用吗？并不是这样，努力有用，但又不那么有用，5% 努力是为了去撬动那 95% 的不确定性，努力是成功的必要条件，但不是充分条件，我们不能决定运气的归属，每个人都有每个人的命，我们能做的只有努力。努力不一定会成功，但不努力一定不会成功，与其纠结于努力是否有用，不如选择接受命运的安排，做事尽力而为，找找自身的兴趣，朝着兴趣方向努力就行，始终保持着一颗乐观积极向上的心态面对一切，这也是我一直以来奉行着的一句话：&lt;strong&gt;修身养性，少欲随缘&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>有关于博客和播客的一些思考</title>
      <link>https://blog.cusox.net/posts/blog-and-podcast/</link>
      <pubDate>Thu, 07 Sep 2023 23:40:31 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/blog-and-podcast/</guid>
      <description>&lt;p&gt;先来说一说近况，最近整了台零刻 N100 小主机，想着利用起来，就顺便整顿整顿云服务器，故又开始折腾博客了，不过不同于以往的不断新增元素，这次的主题是减少，简洁，拒绝花里胡哨&lt;/p&gt;&#xA;&lt;p&gt;服务器还没到期，动态博客还是想着能用一阵是一阵，&lt;code&gt;Halo&lt;/code&gt; 更新 2.0 版本后我就停止更新了，一是因为迁移有点复杂，而且主题没有感觉很满意的，二十采用 Java 作为后端占用内存过大，三是因为 2.0 版本功能更新不是很符合我意，多用户系统的存在让我感觉突然一下变重了很多，不选 &lt;code&gt;Wordpress&lt;/code&gt; 的原因也是因为太重了，而且原生不支持 Markdown，需要另外装插件，对于 php 语言编写的博客系统也是一样，期间考虑过 &lt;code&gt;Typora&lt;/code&gt;，在动态博客框架间挑来挑去感觉差了点什么，每个都有不能使我满意的点存在，甚至萌生了自己写一个的想法，以后有机会再说吧。最初本来想搞一个动静态博客一起维护来着，太懒了也没搞，这边想把静态博客慢慢从 &lt;code&gt;Hexo&lt;/code&gt; 迁移至 &lt;code&gt;Hugo&lt;/code&gt;，所以要做的事还有很多，最后在茫茫搜索下还是找到了个 &lt;code&gt;Sonic&lt;/code&gt; ，由 Golang 语言写的，不能说百分百满意，但感觉比其他的好些，它采用了 1.0 的 &lt;code&gt;Halo&lt;/code&gt; 后台管理界面，较为轻量，目前还在开发中，没有 api 文档导致开发主题比较困难，简单看了看源码然后照猫画虎的仿了个主题，这个主题最早是在 &lt;code&gt;VOID&lt;/code&gt; 主题作者 &lt;a href=&#34;https://github.com/AlanDecode&#34;&gt;AlanDecode&lt;/a&gt; 的博客那看到的，心水了很久，后面则是看到了&lt;a href=&#34;https://github.com/chengirii/chengirii.github.io&#34;&gt;这个 Github 仓库&lt;/a&gt;，于是根据源码采用 &lt;code&gt;Go Template&lt;/code&gt; 模板语言进行了拙劣的模仿，看着还挺养眼的，能用就行&lt;/p&gt;&#xA;&lt;p&gt;我一向偏向于那种简约的花里胡哨，身为一名 Google 粉，我是很喜欢 Material 系列设计风格的，以往的主题也一直采用的是类似的设计，然而这次采用这个主题有很大原因是来自于最近发现的新世界：播客。事实上，很久之前我就听说过这个东西，但也就是最近半个月才接触到它，所以对我来说也是一个全新的世界，它让我知道了原来内容创作、观点表达不仅限于图片文字，声音也可以&lt;/p&gt;&#xA;&lt;p&gt;大概是在临近开学的时候，刷 v 站无意间发现了一个有关于播客的讨论，从而知道了小宇宙这个软件的存在，在以前使用最相近的就是听书了，不过就听过一阵子就不听了，感觉对于小说这类来说听的节奏有点慢不太适应。听歌听的有点疲惫，抱着试一试的心态，点开了小宇宙，听了几个 v 友推荐的频道，宛如打开了新世界的大门，大多数播客的内容质量很高，能够启发很多，同时声音的形式相较于文字图片这些可以给人更多的情绪表达，很容易在一个认同的观点上与作者共情，这大概就是声音的魅力所在吧，你可以很享受的听作者讲述自己故事，可以放空自己的大脑，可以有自己独立的思考，不需要像文字图片那样花费额外的精力去理解，同时还能接触到很多不属于原认知领域的东西，开阔自己的见解&lt;/p&gt;&#xA;&lt;p&gt;这半个月来每天最期待的就是听播客，在无聊的实训上，在吃饭时，在校园独自散步时，很累的状态下我不会选择听歌，但我现在会选择打开播客，每天都在期待能听到什么有趣的内容，无论是脱口秀、心路历程分享、故事分享、话题讨论等等，每当听播客的时候我都能最大程度的放松自己，那种类似于听别人对自己说话的形式属实给了我很大的惊喜&lt;/p&gt;&#xA;&lt;p&gt;播客让我彻底理解了博客的存在，博客重要的不是主题，而是内容，技术类文章的终归属于自身的学习，我需要一个能够表达自己的地方，于是便有了这一系列的操作，我将大部分技术类相关的文章放在了自建的 Wiki 上，准备以此博客作为输出自己想法的站点，分享一些自己的生活经历等&lt;/p&gt;&#xA;&lt;p&gt;写技术类的文章需要不断去搜集资料，考虑很多的东西，并且重复性这块很高，相对于这些文章来说，写点自己的想法，分享点自己的见闻更容易，更实际一些，将一些大事或琐事以日记的形式作记录，输出自身想法，不求读者能够在阅读文章的时候有深刻的思考，只希望能够不带着那么大的压力，以完全放松的心态来阅读，享受在自我的世界中&lt;/p&gt;&#xA;&lt;p&gt;博客会存在，而且会一直存在，播客也一样，可能不会成为主流，但确是小部分人的慰藉之地&lt;/p&gt;</description>
    </item>
    <item>
      <title>开箱 | 国产开源硬件安全密钥 Canokey Pigeon</title>
      <link>https://blog.cusox.net/posts/canokey-pigeon/</link>
      <pubDate>Tue, 11 Apr 2023 09:37:05 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/canokey-pigeon/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;之前没赶上 cf 优惠券的活动，然后又一直心水 Yubikey，奈何国内的价格太贵，闲鱼的价格也一直不降反涨，无意间发现了国产开源硬件 Canokey 的存在，似乎可以平替 Yubikey，在清华开源站中也可以查到相关的资料：&lt;a href=&#34;https://tuna.moe/event/2021/canokey/&#34;&gt;金枪鱼之夜：从 YutriKey 到 CanoKey&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;简单开箱&#34;&gt;简单开箱&lt;/h2&gt;&#xA;&lt;p&gt;目前提供两种商业产品和两种开发产品，均使用的相同内核：&lt;a href=&#34;https://github.com/canokeys/canokey-core&#34;&gt;canokey-core&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;我这款是 Canokey Pigeon，经典鸽子&lt;/p&gt;&#xA;&lt;p&gt;开箱开箱：&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f53dbb0e43b.webp&#34; alt=&#34;包装&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;样子大概长这样：&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f53dbda322d.webp&#34; alt=&#34;反面&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f53dbe240d1.webp&#34; alt=&#34;正面&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f53dc6a0df2.webp&#34; alt=&#34;插入亮灯&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;介绍&#34;&gt;介绍&lt;/h2&gt;&#xA;&lt;p&gt;Canokey 支持的协议很多，类似与 Yubikey 5 NFC，支持的协议如下：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;FIDO2 / U2F&lt;/li&gt;&#xA;&lt;li&gt;OpenPGP&lt;/li&gt;&#xA;&lt;li&gt;PIV&lt;/li&gt;&#xA;&lt;li&gt;NDEF&lt;/li&gt;&#xA;&lt;li&gt;OATH（TOTP、HTOP）&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;对于平替 Yubikey 的需求，协议方面是足够了，但是由于硬件方面的问题，NFC 的实现效果可能不尽人意，具体可以参照以下两个 discussion：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/canokeys/canokey-pigeon/discussions/4&#34;&gt;对 NFC 的一些说明和建议&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/canokeys/canokey-pigeon/discussions/6&#34;&gt;NFC 修复指南&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://docs.canokeys.org/&#34;&gt;官方文档&lt;/a&gt;中也有各个协议的详细说明，同时由于协议互通，Yubikey 的一些配置文档也通用（）&lt;/p&gt;&#xA;&lt;h2 id=&#34;相关名词解释&#34;&gt;相关名词解释&lt;/h2&gt;&#xA;&lt;p&gt;下面用容易理解的话对相关名词进行解释，目的是为了让读者有一个大致的了解，具体实现原理或详细信息等可以自行查找相关资料了解&lt;/p&gt;&#xA;&lt;h3 id=&#34;非对称加密对称加密&#34;&gt;非对称加密、对称加密&lt;/h3&gt;&#xA;&lt;p&gt;简单理解就是非对称加密是通过算法生成一对密钥对，分为公钥和私钥，公钥用来加密，私钥用来解密，对称加密则是一个钥匙既可以加密也可以解密&lt;/p&gt;&#xA;&lt;p&gt;当然理论上公钥和私钥是可以互换的，但是由于算法会偏向于一方，使得双方长度不相同，一般来说私钥长度较长，长度不同使得破解公钥的难度小于破解私钥的难度，基于这方面原因公钥和私钥是不可以互换的&lt;/p&gt;&#xA;&lt;h3 id=&#34;2fa--mfa&#34;&gt;2FA / MFA&lt;/h3&gt;&#xA;&lt;p&gt;2FA：&lt;strong&gt;Two-Factor authentication&lt;/strong&gt;，双因素认证&lt;/p&gt;&#xA;&lt;p&gt;MFA：&lt;strong&gt;Muti-Factor authentication&lt;/strong&gt;，多因素认证&lt;/p&gt;&#xA;&lt;p&gt;为了让用户登录网站时不单单将安全托付于单一的密码上，开发者选择了使用额外因素的方式来保护用户账号安全，防止因为密码泄露而整个账户遭到泄露&lt;/p&gt;&#xA;&lt;h3 id=&#34;oathotp&#34;&gt;OATH、OTP&lt;/h3&gt;&#xA;&lt;p&gt;OATH：&lt;strong&gt;Open Authentication&lt;/strong&gt;，开放认证&lt;/p&gt;&#xA;&lt;p&gt;OTP：&lt;strong&gt;One-Time Password&lt;/strong&gt;，一次性密码&lt;/p&gt;&#xA;&lt;p&gt;OTP 是开发者使用两步验证最常用的手段，顾名思义一次性密码只能使用一次，OTP 分为以下两类：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;TOTP：&lt;strong&gt;Time-based One-Time Password&lt;/strong&gt;，基于时间戳的一次性密码&lt;/li&gt;&#xA;&lt;li&gt;HOTP：&lt;strong&gt;HMAC-based One-Time Password&lt;/strong&gt;，基于 HMAC 算法加密的一次性密码&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;大致原理是客户端和服务器端均有一个共同密钥，客户端将共同密钥与时间因子经过特定的算法生成代码发送给服务器，服务器端也使用共同密钥与当前的时间因子通过相同的算法生成代码，将两个代码进行比对，如果相同则认证成功，当然如果你把密钥给别人，别人也是能和你算出同样的结果的（&lt;/p&gt;</description>
    </item>
    <item>
      <title>年轻人的第一款自建网盘 —— Alist</title>
      <link>https://blog.cusox.net/posts/alist/</link>
      <pubDate>Tue, 17 May 2022 09:27:39 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/alist/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;最近白嫖了微软的 E5 账号，想着放着这 5T 的账号要做点啥，刚好最近刷机，太多东西需要备份了，而有部分应用支持 WebDav 备份，国内最大 WebDav 网盘当属坚果云，本来想照旧继续部署在坚果云上，突然意识到自己的服务器不能闲着，于是便开始寻找了相关的程序部署在服务器上，能够当一个云盘挂载 OneDrive，又支持 WebDav，岂不美哉&lt;/p&gt;&#xA;&lt;p&gt;终于在不懈努力下，找到了符合要求的，让我最心仪的网盘程序：&lt;a href=&#34;https://github.com/alist-org/alist&#34;&gt;Alist&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f53c3d9e489.webp&#34; alt=&#34;Alist&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;于是这篇部署的文章便诞生了&lt;/p&gt;&#xA;&lt;h2 id=&#34;alist-介绍&#34;&gt;Alist 介绍&lt;/h2&gt;&#xA;&lt;p&gt;这是官方的&lt;a href=&#34;https://alist.nn.ci/&#34;&gt;演示网站&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;官方的英文介绍&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f8818da8f92.webp&#34; alt=&#34;介绍&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;多种存储并非浪得虚名，基本主流的网盘都支持了，甚至蓝奏云&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f8818db1595.webp&#34; alt=&#34;支持的存储&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;经过上面的演示，优点自然就出来了&lt;/p&gt;&#xA;&lt;p&gt;1、支持多存储&lt;/p&gt;&#xA;&lt;p&gt;2、简单易部署&lt;/p&gt;&#xA;&lt;p&gt;3、支持 WebDav&lt;/p&gt;&#xA;&lt;p&gt;4、文件预览格式支持众多&lt;/p&gt;&#xA;&lt;p&gt;&amp;hellip;&lt;/p&gt;&#xA;&lt;h2 id=&#34;部署在宝塔面板&#34;&gt;部署在宝塔面板&lt;/h2&gt;&#xA;&lt;h3 id=&#34;配置&#34;&gt;配置&lt;/h3&gt;&#xA;&lt;p&gt;这里只简单介绍在宝塔面板上的部署，如需更多平台上的部署，请参见&lt;a href=&#34;https://alist-doc.nn.ci/&#34;&gt;官方文档&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;好了，下面正式开始进入部署环节&lt;/p&gt;&#xA;&lt;p&gt;首先当然是进行一个网站的创建，记得先去解析域名（如果你也是二级域名的话）&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f8818e0549c.webp&#34; alt=&#34;创建网站&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;FTP 自主选择是否创建，数据库不需要创建，PHP 版本选择纯静态&lt;/p&gt;&#xA;&lt;p&gt;接下来是强制 HTTPS 了，养成一个创建网站就开启的好习惯&lt;/p&gt;&#xA;&lt;p&gt;然后访问 &lt;a href=&#34;https://github.com/Xhofe/alist/releases&#34;&gt;Alist 的 Github 仓库&lt;/a&gt;，找到相对应的版本进行下载，这里我的服务器是 x86 架构的，所以我下载 &lt;code&gt;alist-linux-amd64.tar.gz&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;如果你不知道你服务器是 x86 架构还是 arm 架构的，可以输入下面的命令查询&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&#xA;&lt;table style=&#34;border-spacing:0;padding:0;margin:0;border:0;&#34;&gt;&lt;tr&gt;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;;width:100%&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;uname -m&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;然后就是把下载下来的文件上传到服务器站点目录下解压了&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f53c34e1a40.webp&#34; alt=&#34;解压后的文件&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;现在其实就可以运行了，但防止被杀进程，还需要守护进程&lt;/p&gt;&#xA;&lt;p&gt;宝塔面板软件商店找到 Supervisor 管理器 &lt;del&gt;（忽略 Halo 的守护进程）&lt;/del&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f53c34b5fdb.webp&#34; alt=&#34;Supervisor 管理器&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>你好，Halo</title>
      <link>https://blog.cusox.net/posts/hello-halo/</link>
      <pubDate>Sun, 08 May 2022 04:21:33 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/hello-halo/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;一直以来我都是用的 Hexo 静态博客，直到我下定决心入了人生中的第一台轻量服务器，想着要做些啥，于是便有了动态博客的想法&lt;/p&gt;&#xA;&lt;h2 id=&#34;过程&#34;&gt;过程&lt;/h2&gt;&#xA;&lt;p&gt;最初选择的 Typecho，奈何相比于 Hexo 来说，Typecho 的主题少的可怜，后来看上了 Halo 的，Halo 部署发现操作没有 Typecho 那么简洁，需要一定的技术而不是简单的上传一个文件到后台服务器，查了查发现主题大多是 WordPress，尽管很早就听闻了这个博客框架的大名，真正部署还是第一次，部署过程也很顺利，主题确实很多，不过缺点就是后台实在是过于卡顿，而且不支持原生的 Markdown， 插件对于一些语法支持性不是特别好，在使用了几天过后，还是又回到了 Typecho，当时选用的是 AlanDecode 大佬的 &lt;a href=&#34;https://github.com/AlanDecode/Typecho-Theme-VOID&#34;&gt;VOID&lt;/a&gt; 主题，这个主题很精致，第一眼就吸引了我，&lt;a href=&#34;https://blog.imalan.cn/archives/247/&#34;&gt;VOID：现在可以公开的情报&lt;/a&gt;，作者的文笔也很好，但可惜主题已经很久没有维护了，以至于装在最新版本的 Typecho 上报了各种错，尽管最后一一解决了，但还是觉得心里不是滋味，于是又再一次弃坑了，中间也萌生了很多次要不还是选择静态博客的想法，然而因为各种项目的临近结项，迁移博客这件事也就搁置了一段时间&lt;/p&gt;&#xA;&lt;p&gt;直到最近有空闲的时间了，想着要不做点啥吧，兜兜转转最后选择了 Halo，仔细研究了一下部署，其实好像也不是那么难？于是按着 Halo 的文档进行了第一次部署并换上新主题，部署不算简单，也不算很难，也就这么一回事，看中了 &lt;a href=&#34;https://bestzuo.cn/&#34;&gt;Sanarous 大佬的博客&lt;/a&gt;，按着大佬的样式一点点修改，采用了寒山主题和 sakura 主题，开始了这一个礼拜的主题样式美化，着手于自用主题的开发，审美不太行，而且对于前端开发兴趣不是那么浓厚，一礼拜的时间，不断查资料，看源码，我也收获了许多，目前主题只优化了首页，其他分类页，标签页等都还没动工，但还是把这半成品先放出来用了&lt;/p&gt;&#xA;&lt;h2 id=&#34;浅谈-halo&#34;&gt;浅谈 Halo&lt;/h2&gt;&#xA;&lt;p&gt;Halo 博客是基于 Java 和 Freemarker 构建的，在这段时间的迁移，不论是 Halo 完善的文档，又或是 Halo 丰富的后台配置，还是 Halo 社区的活跃环境都让我惊艳到了，这是一个未来可期的博客框架&lt;/p&gt;&#xA;&lt;p&gt;Halo 文档提供了各个环境上的部署以及一系列问题的解决方案，同时提供给开发者完善的指南，一系列的 API 接口等等&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f880a0ce70b.webp&#34; alt=&#34;Halo 文档&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;后台功能也及其丰富，除了基础功能，也具有其他体验良好的功能，比如上传附件等，界面也很简洁&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f880a0e8c7b.webp&#34; alt=&#34;Halo 后台&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;你也可以在博客后台直接自定义全局 head 代码等&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f880a1357fd.webp&#34; alt=&#34;自定义样式&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;最令我体验良好的还是小工具功能，里面有博客备份以及导入 Hexo 文章并解析元数据的功能，在涉及了动态博客后，迁移便是一大问题，但这个原生的博客备份小工具很好的解决了这个问题，可以选择整站备份，导出数据或者导出 Markdown 文档，这是别的动态博客框架不能给我的体验&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f53af0a1e91.webp&#34; alt=&#34;小工具&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;关于 Halo 社区，这也是一大令我惊艳的地方，社区的环境气氛很好，开发者互动很频繁，用户问题会立马得到解决，一些用户需求的功能也会很快列入开发计划，现在技术社区有这样的环境实为可贵&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f880a169c90.webp&#34; alt=&#34;Halo 社区&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Halo 框架也一直在更新，而且升级也很简便，开发者也在不断优化，博客以后就常驻 Halo 了，也期待 Halo 能有越来越多的功能&lt;/p&gt;</description>
    </item>
    <item>
      <title>踩坑 | Github 解决 Contribution 不增加</title>
      <link>https://blog.cusox.net/posts/github-contribution/</link>
      <pubDate>Sat, 12 Feb 2022 00:23:49 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/github-contribution/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;今天打开 github，突然发现我的 contribution 一直没增加，找了半天原因，发现是 github 开启了隐私邮箱，隐私邮箱是使用基于 ID 的 Github-provided noreply 地址，即 &lt;strong&gt;&amp;lt;ID + &lt;a href=&#34;mailto:username@users.noreply.github.com&#34;&gt;username@users.noreply.github.com&lt;/a&gt;&amp;gt;&lt;/strong&gt; ，然后很显然，这个和不开启隐私邮箱是不同的，然后由于 github 是根据邮箱来增加 Contribution 的，所以自然就加不上了&lt;/p&gt;&#xA;&lt;p&gt;隐私邮箱开启位置：&lt;/p&gt;&#xA;&lt;p&gt;个人设置 -&amp;gt; email -&amp;gt; Keep my email address private&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://image.lsilencej.top/i/2023/09/04/64f53a8555601.webp&#34; alt=&#34;开启隐私邮箱&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;最好养成每次切换代码库时检查 author 信息的习惯&lt;/p&gt;&#xA;&lt;h2 id=&#34;查看-git-用户配置&#34;&gt;查看 git 用户配置&lt;/h2&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&#xA;&lt;table style=&#34;border-spacing:0;padding:0;margin:0;border:0;&#34;&gt;&lt;tr&gt;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;2&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;;width:100%&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;// 查看全局配置&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git config --global -l&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h2 id=&#34;修改-git-用户配置&#34;&gt;修改 git 用户配置&lt;/h2&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&#xA;&lt;table style=&#34;border-spacing:0;padding:0;margin:0;border:0;&#34;&gt;&lt;tr&gt;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;2&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;3&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;4&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;5&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;6&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;7&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;;width:100%&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;// 设置全局&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git config --global user.name &lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;Author Name&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git config --global user.email &lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;Author Email&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;// 或者设置本地项目库配置&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git config user.name &lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;Author Name&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git config user.email &lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;Author Email&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h2 id=&#34;修改历史-commit-用户信息用户名和邮箱&#34;&gt;修改历史 commit 用户信息（用户名和邮箱）&lt;/h2&gt;&#xA;&lt;h3 id=&#34;变基&#34;&gt;变基&lt;/h3&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&#xA;&lt;table style=&#34;border-spacing:0;padding:0;margin:0;border:0;&#34;&gt;&lt;tr&gt;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;2&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;;width:100%&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;// 查看从 HEAD 开始的前面的 log&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git rebase -i HEAD~n&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;按 i 切换为 INSERT 模式，将需要修改的 commit 前面的 pick 改成 edit&lt;/p&gt;</description>
    </item>
    <item>
      <title>文章推荐系统（思路优化版）</title>
      <link>https://blog.cusox.net/posts/simple-recommender-optimization/</link>
      <pubDate>Wed, 27 Oct 2021 03:23:07 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/simple-recommender-optimization/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;上次的文章推荐太过于简陋，而且限制太大，这次思路优化了一版，思路仍然是基于文章内容的推荐&lt;/p&gt;&#xA;&lt;h2 id=&#34;基于文章内容的推荐&#34;&gt;基于文章内容的推荐&lt;/h2&gt;&#xA;&lt;h3 id=&#34;原理&#34;&gt;原理&lt;/h3&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f8803b2f3bb.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;如图所示，对于用户 lsilencej 来说，假设他只看过 article1 和 article2，通过对比发现，article3 和 article1 的内容相似度很高，article4 和 article2 的相似度很高，于是，article3 和 article4 也被推荐给 lsilencej&lt;/p&gt;&#xA;&lt;h3 id=&#34;定义内容相似&#34;&gt;定义内容相似&lt;/h3&gt;&#xA;&lt;p&gt;对于一篇新闻或者长文章来说，可以从文本特征几个方面去提取它的特征信息，进而将不同的新闻间的信息进行比较&lt;/p&gt;&#xA;&lt;p&gt;常见的特征信息有：文本的长度、文本的所属类型（科技、游戏、社会等）、文本的来源（知乎、CSDN、人民日报等）、&lt;strong&gt;文本关键词&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;文本的关键词可以大致概括文本主要内容&lt;/p&gt;&#xA;&lt;h3 id=&#34;提取文本关键词&#34;&gt;提取文本关键词&lt;/h3&gt;&#xA;&lt;p&gt;TF-IDF ：TF-IDF 是一种统计方法，用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加，但同时会随着它在语料库中出现的频率成反比下降。&lt;/p&gt;&#xA;&lt;p&gt;当然，提到分词当然要祭出 jieba 库了，在 jieba 库中有 jieba.analyse.extract_tags，同样是基于 TF-IDF 算法实现&lt;/p&gt;&#xA;&lt;p&gt;usage：keywords = jieba.analyse.extract_tags(article, topK=5, withWeight=True, allowPOS=(&amp;rsquo;n&amp;rsquo;))&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;article 代表要分词的文本&lt;/li&gt;&#xA;&lt;li&gt;topK = 5 代表返回 5 个权重最大的关键词&lt;/li&gt;&#xA;&lt;li&gt;withWeight = True 代表同时返回关键词的 TF-IDF 值&lt;/li&gt;&#xA;&lt;li&gt;allowPOS = (&amp;ldquo;n&amp;rdquo;) 代表返回的均为名词&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;默认使用的是 jieba 库中自带的语料库，当然也可以自定义语料库，具体参照 &lt;a href=&#34;https://github.com/fxsjy/jieba&#34;&gt;jieba 分词&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;用户偏好构建&#34;&gt;用户偏好构建&lt;/h3&gt;&#xA;&lt;p&gt;用户喜好的关键词如何获取？&lt;/p&gt;&#xA;&lt;p&gt;这里采用了一个简单的方法：从用户历史浏览记录中挖掘&lt;/p&gt;&#xA;&lt;h4 id=&#34;用户喜好关键词列表构建&#34;&gt;用户喜好关键词列表构建&lt;/h4&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;在数据库中为每个用户维护一个关键词列表&lt;/p&gt;</description>
    </item>
    <item>
      <title>利用朴素贝叶斯模型进行中文文本类别预测</title>
      <link>https://blog.cusox.net/posts/bayes-classify-predict/</link>
      <pubDate>Mon, 25 Oct 2021 05:21:36 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/bayes-classify-predict/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;这是之前的那个文章分类系统的完全重构的版本，之前那个预测的准确率不太行，为了让项目运行地更完善，决定通过训练 nlp 模型来更加精确地预测文章所属的类别，数据集是我们用爬虫精选的，模型也是通过训练集训练的，准确率能够达到 0.96，数据集的话就不分享了&lt;/p&gt;&#xA;&lt;h2 id=&#34;贝叶斯原理&#34;&gt;贝叶斯原理&lt;/h2&gt;&#xA;&lt;h3 id=&#34;贝叶斯公式&#34;&gt;贝叶斯公式&lt;/h3&gt;&#xA;$$&#xA;P(B_{i}|A) = \frac{P(B_{i})P(A|B_{i})}{\sum_{j=1}^{n}P(B_{j})P(A|B_{j}))}&#xA;$$&lt;h3 id=&#34;朴素贝叶斯分类器&#34;&gt;朴素贝叶斯分类器&lt;/h3&gt;&#xA;&lt;p&gt;朴素贝叶斯是一个概率分类器，它通过计算两个不同类别 X 和 Y 之间的所属同类的可能性来进行类别的预测估计，P（Y|X）为 Y 的&lt;strong&gt;后验概率&lt;/strong&gt;，P（Y）为 Y 的&lt;strong&gt;先验概率&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;将一系列训练数据通过贝叶斯公式进行计算，得出一个个 P（Y|X）后验概率，分类时，对于实例 x，比较所有的 P（Y|x），最大的概率的 Y 即为实例 x 的分类&lt;/p&gt;&#xA;&lt;p&gt;后验概率：&lt;/p&gt;&#xA;$$&#xA;P(Y|X) = \frac{P(Y)P(X|Y)}{P(X)}&#xA;$$&lt;p&gt;P（Y）可以通过数据集进行估计，P（X）为常数，在比较中可以忽略&lt;/p&gt;&#xA;&lt;h3 id=&#34;文本分类算法&#34;&gt;文本分类算法&lt;/h3&gt;&#xA;&lt;p&gt;朴素贝叶斯分类器是一种有监督的分类器，即需要给出训练集并根据需要打好标签&lt;/p&gt;&#xA;&lt;p&gt;对于每一个训练样本，均生成一个属性向量，各个属性相互独立，如文章的文本特征向量&lt;/p&gt;&#xA;&lt;p&gt;计算 P（x|Y）条件概率，P（x|Y）= 包含此单词的文章总数 / 该类别下的文章数量&lt;/p&gt;&#xA;&lt;p&gt;根据贝叶斯公式求出 P（Y|X），预测文本分类&lt;/p&gt;&#xA;&lt;h3 id=&#34;具体实现&#34;&gt;具体实现&lt;/h3&gt;&#xA;&lt;h4 id=&#34;预处理&#34;&gt;预处理&lt;/h4&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;训练集语料库&lt;/li&gt;&#xA;&lt;li&gt;测试集语料库&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;语料库可以根据需要自己生成，本文代码是基于复旦大学语料库的格式基础写的&lt;/p&gt;&#xA;&lt;p&gt;复旦大学语料库：http://download.csdn.net/detail/github_36326955/9747927&lt;/p&gt;&#xA;&lt;p&gt;语料库均为已分类好的文章作为预处理数据&lt;/p&gt;&#xA;&lt;h4 id=&#34;中文分词&#34;&gt;中文分词&lt;/h4&gt;&#xA;&lt;p&gt;采用的是 &lt;a href=&#34;https://github.com/fxsjy/jieba&#34;&gt;jieba 分词&lt;/a&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;jieba.cut&lt;/code&gt; 方法接受四个输入参数: 需要分词的字符串；cut_all 参数用来控制是否采用全模式；HMM 参数用来控制是否使用 HMM 模型；use_paddle 参数用来控制是否使用 paddle 模式下的分词模式，paddle 模式采用延迟加载方式，通过 enable_paddle 接口安装 paddlepaddle-tiny，并且 import 相关代码；&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;jieba.cut_for_search&lt;/code&gt; 方法接受两个参数：需要分词的字符串；是否使用 HMM 模型。该方法适合用于搜索引擎构建倒排索引的分词，粒度比较细&lt;/li&gt;&#xA;&lt;li&gt;待分词的字符串可以是 unicode 或 UTF-8 字符串、GBK 字符串。注意：不建议直接输入 GBK 字符串，可能无法预料地错误解码成 UTF-8&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;jieba.cut&lt;/code&gt; 以及 &lt;code&gt;jieba.cut_for_search&lt;/code&gt; 返回的结构都是一个可迭代的 generator，可以使用 for 循环来获得分词后得到的每一个词语(unicode)，或者用&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;jieba.lcut&lt;/code&gt; 以及 &lt;code&gt;jieba.lcut_for_search&lt;/code&gt; 直接返回 list&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;jieba.Tokenizer(dictionary=DEFAULT_DICT)&lt;/code&gt; 新建自定义分词器，可用于同时使用不同词典。&lt;code&gt;jieba.dt&lt;/code&gt; 为默认分词器，所有全局分词相关函数都是该分词器的映射。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;strong&gt;curpus_segment：&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>我有特别的 rss 使用技巧</title>
      <link>https://blog.cusox.net/posts/rss/</link>
      <pubDate>Fri, 17 Sep 2021 06:26:58 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/rss/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;闲来无事，想起来同学的一个空闲的服务器还剩 50 天的时间，决定折腾点东西，毕竟放着浪费也是浪费，于是看到了 freshrss，于是开始了我的 rss 折腾之路&lt;/p&gt;&#xA;&lt;p&gt;采用的是阿里云轻量应用服务器，系统是 CentOS 8.2 ，采用宝塔面板安装是真的简便快捷&lt;/p&gt;&#xA;&lt;p&gt;我用的是 FreshRSS + Fluent Reader Lite 的配置，方便电脑和手机随时随地接收更新&lt;/p&gt;&#xA;&lt;h2 id=&#34;配置&#34;&gt;配置&lt;/h2&gt;&#xA;&lt;h3 id=&#34;安装-freshrss&#34;&gt;安装 FreshRSS&lt;/h3&gt;&#xA;&lt;p&gt;在宝塔面板上添加新站点，设置好数据库的账号密码&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87f55d21c0.webp&#34; alt=&#34;创建新站点&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;打开终端，输入：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&#xA;&lt;table style=&#34;border-spacing:0;padding:0;margin:0;border:0;&#34;&gt;&lt;tr&gt;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;1&#xA;&lt;/span&gt;&lt;span style=&#34;white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f&#34;&gt;2&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td style=&#34;vertical-align:top;padding:0;margin:0;border:0;;width:100%&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a90d91&#34;&gt;cd&lt;/span&gt; /www/wwwroot/&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git clone https://github.com/FreshRSS/FreshRSS.git&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;如果下载不了，也可以先通过 git 运行下面那行命令下载到本地，然后上传到 wwwroot 目录下，上传完如图所示，记得设置权限为 777 ：&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87f5637674.webp&#34; alt=&#34;站点目录&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;添加站点完成后，访问之前创建新站点输入的域名，可以进入 FreshRSS 的安装界面&lt;/p&gt;&#xA;&lt;p&gt;如果进不去可能是没有取消禁用 openlog 和 syslog 这两个函数，可以在软件商店的 PHP 插件中禁用函数面板进行取消&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87f5686c81.webp&#34; alt=&#34;取消禁用 openlog 和 syslog&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;如果有缺少的插件之类的也可以在宝塔面板的软件商店进行安装&lt;/p&gt;&#xA;&lt;p&gt;数据库主机配置填写 localhost 或者 127.0.0.1&lt;/p&gt;&#xA;&lt;p&gt;数据库账号密码根据之前创建新站点的填就可以&lt;/p&gt;&#xA;&lt;p&gt;之后设置完用户名密码就可以进入首页了&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87f5731306.webp&#34; alt=&#34;首页&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;添加订阅源&#34;&gt;添加订阅源&lt;/h3&gt;&#xA;&lt;p&gt;有一个 Github 上的仓库里面有大部分整理的 rss 订阅源：&lt;a href=&#34;https://github.com/AboutRSS/ALL-about-RSS&#34;&gt;Github 仓库地址&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>微软自家的远程桌面？ RD Client</title>
      <link>https://blog.cusox.net/posts/rd-client/</link>
      <pubDate>Thu, 16 Sep 2021 05:08:49 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/rd-client/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;看到一篇有关远程协作的文章，突然想起微软自家有个 RD Client ，便选择下载下来玩玩，顺便看看效果，安装过程还是挺简单的&lt;/p&gt;&#xA;&lt;h2 id=&#34;准备&#34;&gt;准备&lt;/h2&gt;&#xA;&lt;h3 id=&#34;电脑&#34;&gt;电脑&lt;/h3&gt;&#xA;&lt;p&gt;在设置中找到远程桌面选项并打开&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87d775cc74.webp&#34; alt=&#34;Windows 11 的远程桌面设置&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;手机&#34;&gt;手机&lt;/h3&gt;&#xA;&lt;p&gt;下载 RD Client 软件，Google 商店有（新版，听说卡带宽限制，可下载 8 开头的版本）&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87d77905d4.webp&#34; alt=&#34;RD Client&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;配置&#34;&gt;配置&lt;/h2&gt;&#xA;&lt;h3 id=&#34;内网&#34;&gt;内网&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;点击右上角的 &amp;rsquo; + &amp;rsquo; 号，Add PC&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87d77cce88.webp&#34; alt=&#34;Add PC&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;点击 ADD MANUALLY&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87d7846dcc.webp&#34; alt=&#34;ADD MANUALLY&#34;&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;PC NAME 填写电脑的 IP 地址，可以通过命令行 cmd ，输入 ipconfig 查询，一般为 IPv4 的地址，形如 192.168.1.1&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;下面的 USER ACCOUNT 为你的 Microsoft 账户，登录电脑的时候需要用到，默认为连接时询问，可以直接添加账户&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;右上角 SAVE 保存即可&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87d78ad728.webp&#34; alt=&#34;SAVE&#34;&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;点进去连接即可&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87d791637b.webp&#34; alt=&#34;添加后的界面&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;然后就可以在手机上远程操控 PC 了&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87d79da500.webp&#34; alt=&#34;成功！！！&#34;&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;frp-内网穿透&#34;&gt;frp 内网穿透&lt;/h3&gt;&#xA;&lt;p&gt;frp 内网穿透和内网的步骤没差多少，只是需要把 PC NAME 填写的电脑 IP 改成内网穿透后的 IP&lt;/p&gt;</description>
    </item>
    <item>
      <title>旧手机利用 AIDA64 &#43; Remote Panel 构建的远程监控屏</title>
      <link>https://blog.cusox.net/posts/aida64-remote-panel/</link>
      <pubDate>Tue, 31 Aug 2021 17:07:47 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/aida64-remote-panel/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;最近找出了几年前的红米 1，突发奇想决定废物利用，利用 AIDA64 做一个电脑的监控屏&lt;/p&gt;&#xA;&lt;h2 id=&#34;操作&#34;&gt;操作&lt;/h2&gt;&#xA;&lt;h3 id=&#34;安装在文末有下载链接&#34;&gt;安装（在文末有下载链接）&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Remote Panel 手机版&lt;/li&gt;&#xA;&lt;li&gt;Remote Panel 桌面版&lt;/li&gt;&#xA;&lt;li&gt;AIDA64 桌面版&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;配置&#34;&gt;配置&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;打开手机版的 Remote Panel ，长按出现以下界面，勾选 Enable Fullscreen 进入全屏模式，取消状态栏&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f536f915210.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;手机打开 usb 调试，并通过数据线连接电脑，电脑端打开 Remote Panel ，右下角任务栏中右键，点击 Settings&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f536f77fc52.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;在 Device serial 中下拉选框选择手机（&lt;del&gt;一串乱码&lt;/del&gt;），只修改 Device serial ，其他不变&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f536f9630aa.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;打开 AIDA 64，点击左上角文件 -&amp;gt; 设置&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f536f731acb.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;在左边的状态栏点击 LCD 选项，在右边窗口中选择 Odospace，ip 地址和 TCP / IP 端口都不变，修改 LCD 分辨率为手机分辨率，点击启用 Odospace LCD 支持，LCD 背景色可根据喜好修改&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87cbc4a70a.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;点击左边的 LCD 项目，图是我在别人的配置基础上用 ps 二次修改的，配置文件也放在文章底部的链接里了，网上也有很多制作配置文件的教程，这里不再赘述，当然不同的主板可能支持的功能可能不相同&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87cc51f54d.webp&#34; alt=&#34;配置文件&#34;&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;打开手机的 Remote Panel ，手机上应该就显示出相应界面了&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87cc74cb4a.webp&#34; alt=&#34;手机界面&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>一个简单的文章推荐系统</title>
      <link>https://blog.cusox.net/posts/simple-recommender/</link>
      <pubDate>Mon, 23 Aug 2021 04:05:40 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/simple-recommender/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;接上，这次实现的是一个简单的文章推荐系统，采用的仍然还是 TF-IDF 算法（&lt;del&gt;因为这种最好写&lt;/del&gt;），对我们这个项目够用了吧应该（doge&lt;/p&gt;&#xA;&lt;h2 id=&#34;原理&#34;&gt;原理&lt;/h2&gt;&#xA;&lt;h3 id=&#34;基于内容的推荐&#34;&gt;基于内容的推荐&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;将文章向量化&lt;/li&gt;&#xA;&lt;li&gt;记录用户的浏览记录&lt;/li&gt;&#xA;&lt;li&gt;将浏览记录中的文章进行向量求和求平均计算出用户的用户向量，算是简要构建出用户的模型&lt;/li&gt;&#xA;&lt;li&gt;将用户向量和文章库中的文章进行比对，计算相似度&lt;/li&gt;&#xA;&lt;li&gt;推荐相似度最高的文章给用户&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;文章推荐系统&#34;&gt;文章推荐系统&lt;/h2&gt;&#xA;&lt;h3 id=&#34;参考文章&#34;&gt;参考文章：&lt;/h3&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://blog.csdn.net/u011897301/article/details/79137918&#34;&gt;个性化阅读中的推荐系统（一）&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;项目地址&#34;&gt;项目地址：&lt;/h3&gt;&#xA;&lt;p&gt;本项目已在 Github 上开源：&lt;a href=&#34;https://github.com/Cusox/archive-tools/tree/main/Post_Recommend&#34;&gt;Github 地址&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;数据库表&#34;&gt;数据库表&lt;/h3&gt;&#xA;&lt;p&gt;&lt;strong&gt;article_dictionary&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;数据量尽量大，不然有些文章生成向量为空（找不到分词的话会变成零向量）&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;id int 非空 键&lt;/li&gt;&#xA;&lt;li&gt;dictionary longtext 可空&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;strong&gt;user&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;存放用户数据的表&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;id int 非空 键&lt;/li&gt;&#xA;&lt;li&gt;user_history longtext 可空&lt;/li&gt;&#xA;&lt;li&gt;user_dictionary longtext 可空&lt;/li&gt;&#xA;&lt;li&gt;updated varchar 30 非空，只有两个值：true false&lt;/li&gt;&#xA;&lt;li&gt;recommend longtext 可空&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;strong&gt;article&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;代码中是 article_category_data，用了测试时的数据）&lt;/p&gt;&#xA;&lt;p&gt;存放文章基本信息的表&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;id int 非空 键&lt;/li&gt;&#xA;&lt;li&gt;weight longtext 可空&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;tips&#34;&gt;Tips&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;sql = &amp;ldquo;select id, weight from article_category_data where id not in {} limit 5000&amp;rdquo;.format(tuple(user_dictionary[1].split(&amp;rsquo;,&amp;rsquo;))) 的 limit 5000 是用来限制文章数量的，可以修改成通过时间进行限制&lt;/li&gt;&#xA;&lt;li&gt;dictionary 的数据量一定要够大，如果一篇文章的关键字都在 dictionary 中找不到的话则会变成零向量，可以和分类系统中通过构建得到词库的 dictionary 是同一张表&lt;/li&gt;&#xA;&lt;li&gt;article 中的 weight 最好在爬取文章的时候就算出来&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;效果&#34;&gt;效果&lt;/h3&gt;&#xA;&lt;p&gt;就推荐的结果而言还是比较符合模型的，但仍然存在两个缺点：&lt;/p&gt;</description>
    </item>
    <item>
      <title>TF-IDF 的文章分类系统</title>
      <link>https://blog.cusox.net/posts/tfidf-classify/</link>
      <pubDate>Wed, 18 Aug 2021 07:55:07 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/tfidf-classify/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;接上，一个聚合类的阅读软件当然少不了文章分类系统，模型之类的根本来不及看，来不及学，就采用了 TF-IDF 算法来写，自己构建词库，自己算，准确率还算比较高的，对于我们这个小项目来说够用了反正&lt;/p&gt;&#xA;&lt;h2 id=&#34;原理&#34;&gt;原理&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;将已分类的文章做分词，保留 TF-IDF 算法前五的名词&lt;/li&gt;&#xA;&lt;li&gt;将每篇文章的五个名词去重合成一个大的集合作为词库&lt;/li&gt;&#xA;&lt;li&gt;根据字典生成每篇文章的单独向量&lt;/li&gt;&#xA;&lt;li&gt;将所有相同类别的文章向量相加求平均得到文章类别的平均向量&lt;/li&gt;&#xA;&lt;li&gt;将未分类的文章做分词，保留前 20 的名词做向量&lt;/li&gt;&#xA;&lt;li&gt;与所有文章类别的平均向量做比对，保留匹配度最高的三个&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;文章分类系统&#34;&gt;文章分类系统&lt;/h2&gt;&#xA;&lt;h3 id=&#34;参考文章&#34;&gt;参考文章：&lt;/h3&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://blog.csdn.net/lsr40/article/details/87281966&#34;&gt;【python】爬虫篇：通过文章内容使用 TF-IDF 算法对文章进行分类（五）&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://blog.csdn.net/lsr40/article/details/87385105&#34;&gt;【python】爬虫篇：最后一篇之 TF-IDF 分类代码篇（六）&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;项目地址&#34;&gt;项目地址：&lt;/h3&gt;&#xA;&lt;p&gt;本项目已在 Github 上开源：&lt;a href=&#34;https://github.com/Cusox/archive-tools/tree/main/Post_Classification&#34;&gt;Github 地址&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;文件&#34;&gt;文件&lt;/h3&gt;&#xA;&lt;p&gt;&lt;strong&gt;Dictionnary_Builder.py&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;构建词库和各类文章的平均向量&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Post_Classify.py&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;将未分类的文章和各类文章的平均向量进行比对&lt;/p&gt;&#xA;&lt;h3 id=&#34;数据库表&#34;&gt;数据库表&lt;/h3&gt;&#xA;&lt;p&gt;&lt;strong&gt;article&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;未分类的文章&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;id int 非空 键&lt;/li&gt;&#xA;&lt;li&gt;category varchar 可空&lt;/li&gt;&#xA;&lt;li&gt;content longtext 非空&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;strong&gt;article_category_data&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;已分类的文章&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;id int 非空 键&lt;/li&gt;&#xA;&lt;li&gt;category varchar 非空&lt;/li&gt;&#xA;&lt;li&gt;content longtext 非空&lt;/li&gt;&#xA;&lt;li&gt;weight longtext 可空&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;strong&gt;article_category_weight&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;各类文章的平均向量&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;id int 非空 键&lt;/li&gt;&#xA;&lt;li&gt;category varchar 非空&lt;/li&gt;&#xA;&lt;li&gt;category_weight longtext 非空&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;strong&gt;article_dictionary&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>基于 TextRank 的中文文章概要</title>
      <link>https://blog.cusox.net/posts/textrank-summary/</link>
      <pubDate>Wed, 11 Aug 2021 23:12:33 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/textrank-summary/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;&#xA;&lt;p&gt;最近参加华五的比赛，我们队伍打算做一个聚合类的阅读软件，需要用到中文文章概要，选择使用抽取式的 TextRank 算法&lt;/p&gt;&#xA;&lt;h2 id=&#34;原理&#34;&gt;原理&lt;/h2&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f535e79182c.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;先把所有文章整合为文本数据，并将文本分割成单个句子&lt;/li&gt;&#xA;&lt;li&gt;将句子中的每个词向量相加取均值，获取句向量&lt;/li&gt;&#xA;&lt;li&gt;通过计算余弦相似度得到句子间的相似度，得到相似度矩阵&lt;/li&gt;&#xA;&lt;li&gt;相似度矩阵化为以句子为节点，相似度得分为边的图结构&lt;/li&gt;&#xA;&lt;li&gt;对句子的得分进行排序，取排名靠前的 n 个句子为概要&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;基于-text_rank-的中文文章概要&#34;&gt;基于 Text_Rank 的中文文章概要&lt;/h2&gt;&#xA;&lt;h3 id=&#34;参考文章&#34;&gt;参考文章：&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://blog.csdn.net/ziyi9663/article/details/106996293/&#34;&gt;《基于 TextRank 的抽取式文本摘要（中文）》&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://blog.csdn.net/weixin_43283397/article/details/107418834&#34;&gt;《TextRank 系列之文本自动摘要提取》&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://zhuanlan.zhihu.com/p/54571283?utm_source=wechat_timeline&#34;&gt;《如何给文章自动生成摘要》&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;项目地址&#34;&gt;项目地址：&lt;/h3&gt;&#xA;&lt;p&gt;本项目已在 Github 上开源：&lt;a href=&#34;https://github.com/Cusox/archive-tools/tree/main/Text_Summarizer_cn&#34;&gt;Github 地址&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;tips&#34;&gt;Tips：&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;对代码进行了封装，逻辑上不太易读&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;预训练的词向量文件来自 &lt;a href=&#34;https://github.com/Embedding/Chinese-Word-Vectors&#34;&gt;https://github.com/Embedding/Chinese-Word-Vectors&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;停用词可使用项目内 res 文件夹下的，也可使用 &lt;a href=&#34;https://github.com/goto456/stopwords&#34;&gt;https://github.com/goto456/stopwords&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;懒，有些当时测试时的注释没删&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
    </item>
    <item>
      <title>记录一次悲惨的回家经历</title>
      <link>https://blog.cusox.net/posts/20210714/</link>
      <pubDate>Wed, 14 Jul 2021 19:51:56 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/20210714/</guid>
      <description>&lt;h2 id=&#34;710&#34;&gt;7.10&lt;/h2&gt;&#xA;&lt;p&gt;夏令营在 7.10 晚上结束，选择退出了学校的 ACM 社团（&lt;del&gt;因为不想刷题了&lt;/del&gt;），算法的学习会仍然继续下去，可能以后会在博客开个算法系列，专门分享算法的知识，夏令营结课的最后比赛 ak 了，算是对自己的 OI 生涯的一个交代吧&lt;/p&gt;&#xA;&lt;p&gt;就是因为夏令营比别人多一天时间，否则 7.10 走了就没那么多事了，大暴雨 7.11 才来&lt;/p&gt;&#xA;&lt;h2 id=&#34;711&#34;&gt;7.11&lt;/h2&gt;&#xA;&lt;p&gt;买的本来是 7.11 下午六点多将近七点的机票，恰巧碰到难得一遇的暴雨天，天津航空中午直接发短信说取消了，五点多的深圳航空并没取消，本来说改签这趟，结果剩余的几张票秒没，只好改签明天同时间的，改的票比之前买的还便宜，还好改的早后来涨价直接翻倍&lt;/p&gt;&#xA;&lt;p&gt;打包好衣服这些包裹准备去寄，上门取件的小哥把车开了过来，外面这个时候还是阴天，刚下楼直接给我下雨，还没有一个增大的过程，我和快递小哥直接隔了一条河一样，等了差不多半小时雨还没有小的迹象，快递小哥叫我先上楼，刚上楼到寝室坐下快递小哥又打个电话叫我下楼，说是停雨了，我一看还真是，急冲冲跑下去给了快递小哥&lt;/p&gt;&#xA;&lt;p&gt;还好给的及时，给完了赶快跑上来雨又继续下，大概三点左右雨停了，然后就再也没下过，所以我的飞机莫名就取消了，深航的照样飞走了&lt;/p&gt;&#xA;&lt;h2 id=&#34;712&#34;&gt;7.12&lt;/h2&gt;&#xA;&lt;p&gt;兴冲冲的第二次收拾好行李，铺好床，外面一直在下小雨，天也是阴的，一直到中午收到条短信说是延机两小时直接延到八点，我寻思着还好没取消，看了看原来五点的深航取消了，明天又没飞机，只能改签我这一班，于是票价又开始涨&lt;/p&gt;&#xA;&lt;p&gt;下午一下午没下雨，急冲冲的收拾好东西，拿着室友从食堂带的饼走了，刚出楼门就开始下雨，越下越大，没办法只好跑到地铁站，等地铁的时候匆忙吃了两口饼，还好赶上了，地铁到处转来转去用了一个多小时，终于到了机场，然后就是值机之类的，把冷了的饼吃完过安检，到目前为止一切正常&lt;/p&gt;&#xA;&lt;p&gt;过完了安检走了一年走到了检票口，找了一年的位置好不容易坐下来，广播突然来一句很抱歉的通知您，xxxx 航班起飞时间待定，然后八点多将近九点的飞机无了，等到大概九点半，收到条短信通知航班取消，连广播都没有，直接心态爆炸，然后去找工作人员问能不能包宿，之前说由于天气原因取消的不能包宿，后面了解到了情况说改签的航班只能改签这一趟所以才包的宿，就这样在刚装修的全是甲醛味的酒店里和陌生男子呆了一晚，吸了一晚上的二手烟，连续几天也没咋睡，每天三小时睡眠，后来才知道晚上十点多的江西航空照常发了，离谱，等了一晚上才给出了明天上午的补机方案，补到了上午 10.10 的飞机&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f879e6e181d.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;713&#34;&gt;7.13&lt;/h2&gt;&#xA;&lt;p&gt;酒店良心的提供了免费的自助早餐，品种比较少然后每种也没多少，随便吃了点就坐着机场大巴去机场了&lt;/p&gt;&#xA;&lt;p&gt;到了机场一切正常，天气虽然阴天但还是挺亮的，还出了一下太阳，看来能飞&lt;/p&gt;&#xA;&lt;p&gt;差不多九点半的时候，十点整发机的江西航空突然说延机到十一点整，然后围了一堆人在那里问，过了十分钟广播通知我们登机，刚好江西航空的登机口就在我们登机口旁边，然后顶着一堆人的目光在登机口排队，大家目的地都相同然后莫名延机了，我还以为天津航空终于不拉了，进飞机前还特地看了下天，发现很亮&lt;/p&gt;&#xA;&lt;p&gt;找到位置坐下来后，还没五分钟，正要起飞的时候，天全阴了，直接变暗，随之而来的就是大暴雨，好的，硬是等到十一点才起飞了，到了南昌差不多一点&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87ab9323d0.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;./64f87ab963ffa.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;到了南昌后，找到机场大巴的位置，刚准备坐机场大巴，结果人满了，只能等 20min 的下一班，然后开始抢回家的高铁票，拿了各种第三方 app，抢票系统是真的垃圾，而且大概是那种基本不开会员就抢不到的，他那个抢票也是在 12306 上抢，这还不如我自己抢，期间刷出来几张都抢不到，&lt;strong&gt;&lt;ins&gt;我一定要写一个抢票的脚本&lt;/ins&gt;&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;到了高铁站大概 14.30，没票了也抢不到只能买 16.00 的票，第三方 app 的票一下就没了，最后还是在 12306 抢到了张，最后成功到家&lt;/p&gt;&#xA;&lt;h2 id=&#34;总结&#34;&gt;总结&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;天航包宿还算挺良心的，但不能阻止我黑他，这航班太玄学了&lt;/li&gt;&#xA;&lt;li&gt;千万不要在第三方 app 上面抢票，还不如自己去 12306 买，&lt;strong&gt;&lt;ins&gt;我一定要写一个抢票的脚本&lt;/ins&gt;&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;li&gt;千万不要在火车站买樱桃味的可口可乐&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;总的来说这几天过的过于充实，一次终身难忘的经历，运气不好是真的啥事都碰得到&lt;/p&gt;</description>
    </item>
    <item>
      <title>远方</title>
      <link>https://blog.cusox.net/posts/yuanfang/</link>
      <pubDate>Thu, 13 Aug 2020 19:28:08 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/yuanfang/</guid>
      <description>&lt;h2 id=&#34;远方&#34;&gt;远方&lt;/h2&gt;&#xA;&lt;p&gt;第一眼看到进入游戏，就只有两个字来形容：&lt;strong&gt;惊艳&lt;/strong&gt;&lt;br&gt;&#xA;画面惊艳，音乐惊艳，剧情惊艳&lt;br&gt;&#xA;变幻的色彩，令人静心的音乐，跌宕的剧情使得这个玩法单一的游戏变得不那么单调&lt;/p&gt;&#xA;&lt;h3 id=&#34;音乐&#34;&gt;音乐&lt;/h3&gt;&#xA;&lt;center&gt;&lt;iframe frameborder=&#34;no&#34; border=&#34;0&#34; marginwidth=&#34;0&#34; marginheight=&#34;0&#34; width=330 height=450 src=&#34;//music.163.com/outchain/player?type=0&amp;id=755122627&amp;auto=0&amp;height=430&#34;&gt;&lt;/iframe&gt;&lt;/center&gt;&#xA;&lt;h3 id=&#34;剧情&#34;&gt;剧情&lt;/h3&gt;&#xA;&lt;p&gt;第一篇章的空旷，迷茫，音乐的低沉恰对上男孩女孩的相识相爱以及分别&lt;br&gt;&#xA;第二篇章的音乐的激进与剧情中战争的激烈相互映衬&lt;br&gt;&#xA;第三篇章则存在着一丝悲凉，战争的残酷使得两人分别，战争结束却早已物是人非，开放性的结局也让人拥有无尽的遐想&lt;br&gt;&#xA;隐藏篇章则主要交代了故事中其他人的一则剧情，算个彩蛋吧&lt;/p&gt;&#xA;&lt;h3 id=&#34;总结&#34;&gt;总结&lt;/h3&gt;&#xA;&lt;p&gt;故事精彩细腻，多镜头人物心理描写将人物形象刻画的淋漓尽致&lt;br&gt;&#xA;游戏从开头的背景音乐开始便在传达给人一种&amp;quot;孤独感&amp;quot;，让孤独之人新生共鸣，这应该也是另一个名字 Loner 的由来吧&lt;br&gt;&#xA;但传达的还不仅仅是孤独，更多的是玩家对于整个故事的思考&lt;br&gt;&#xA;隆尼对爱的执着，政府与个人所谓的&amp;quot;人道主义&amp;quot;，战争起因的可笑，战争的残酷以及隆尼的心意等等&amp;hellip;&lt;br&gt;&#xA;这些都通过一则则记录表现出来，在当今浮躁的社会中传达着一种生活的本意，即善的本意，让人真正的与平静结合，与善结合&lt;/p&gt;&#xA;&lt;center&gt;&lt;font size = 35&gt;&lt;font color = #FFD700&gt;&#34;金色的梦，我爱的你&#34;&lt;/font&gt;&lt;/font&gt;&lt;/center&gt;</description>
    </item>
    <item>
      <title>【NOIP2018】游记</title>
      <link>https://blog.cusox.net/posts/noip2018/</link>
      <pubDate>Mon, 12 Nov 2018 05:47:44 +0000</pubDate><author>cusoxlee@gmail.com (Cusox)</author>
      <guid>https://blog.cusox.net/posts/noip2018/</guid>
      <description>&lt;h3 id=&#34;day--inf&#34;&gt;&lt;strong&gt;Day -INF&lt;/strong&gt;&lt;/h3&gt;&#xA;&lt;h6 id=&#34;学习数据结构&#34;&gt;&lt;strong&gt;学习数据结构&lt;/strong&gt;&lt;/h6&gt;&#xA;&lt;p&gt;离散化什么鬼 &lt;del&gt;(这不是离散数学里的吗???)&lt;/del&gt;&lt;/p&gt;&#xA;&lt;p&gt;树上差分是啥???&lt;/p&gt;&#xA;&lt;p&gt;线段树 orzorz&lt;/p&gt;&#xA;&lt;p&gt;别人学习而我在打暴力，真棒&lt;/p&gt;&#xA;&lt;p&gt;赞扬一下南大的伙食&amp;hellip;&lt;/p&gt;&#xA;&lt;h3 id=&#34;day--inf--1&#34;&gt;&lt;strong&gt;Day -INF + 1&lt;/strong&gt;&lt;/h3&gt;&#xA;&lt;h6 id=&#34;学习图论&#34;&gt;&lt;strong&gt;学习图论&lt;/strong&gt;&lt;/h6&gt;&#xA;&lt;p&gt;匈牙利算法???&#xA;算是今天唯一听懂了&amp;hellip; AC 了一道模板题 &lt;a href=&#34;https://www.luogu.org/problemnew/show/P1894&#34;&gt;[USACO4.2] 完美的牛栏 The Perfect Stall&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;接下来处于懵逼状态&lt;/p&gt;&#xA;&lt;p&gt;Tarjan 求强连通分量???&#xA;这是什么&amp;hellip;好像有点熟&amp;hellip;&#xA;对着模板硬是把 dfn 打成 dnf &amp;hellip;怕是没救了&#xA;缩点是啥&amp;hellip;我怎么什么都没听懂???&#xA;好的，暴力&lt;/p&gt;&#xA;&lt;p&gt;LCA orzorz&#xA;理解了理解了&#xA;开始做题: &lt;a href=&#34;https://www.luogu.org/problemnew/show/P2680&#34;&gt;运输计划&lt;/a&gt;&#xA;紫题&amp;hellip;好的，下一个&lt;/p&gt;&#xA;&lt;p&gt;再见我的懵逼的一天&lt;/p&gt;&#xA;&lt;h3 id=&#34;day--inf--2&#34;&gt;&lt;strong&gt;Day -INF + 2&lt;/strong&gt;&lt;/h3&gt;&#xA;&lt;h6 id=&#34;学习数论&#34;&gt;&lt;strong&gt;学习数论&lt;/strong&gt;&lt;/h6&gt;&#xA;&lt;p&gt;唯一分解定理，好的，了解了&lt;/p&gt;&#xA;&lt;p&gt;欧拉函数，好的，了解了， 又是背模板的一天&amp;hellip;&#xA;按模板 AC 了一题:&lt;a href=&#34;https://www.luogu.org/problemnew/show/P2158&#34;&gt;[SDOI2008] 仪仗队&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;筛法: 埃氏筛，欧拉筛&amp;hellip;好的，但我选择 Miller_Rabin 算法(玄学结论: 大于 5 的素数一定在 6 的倍数附近)&lt;/p&gt;&#xA;&lt;p&gt;欧几里得算法(gcd): 数论只会 gcd&lt;/p&gt;&#xA;&lt;p&gt;扩展欧几里得算法(exgcd): 花了一个晚上推公式&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;乘法逆元: 什么鬼&amp;hellip;这不就是变相的扩欧吗&amp;hellip;来来来，一道乘法逆元模板题: &lt;a href=&#34;https://www.luogu.org/problemnew/show/P3811&#34;&gt;【模板】乘法逆元&lt;/a&gt;&#xA;什么??? exgcd 只能 A8 个点???被迫学习线性递推乘法逆元&amp;hellip;继续推&amp;hellip;&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
