diff options
| author | Eltrac <hi@guhub.cn> | 2025-07-21 15:38:45 +0800 |
|---|---|---|
| committer | Eltrac <hi@guhub.cn> | 2025-07-21 15:38:45 +0800 |
| commit | ea0f31b0a056bc379f204400715c46cde42229a6 (patch) | |
| tree | f8eee8c7cd7836dcaaac2f4640e5a98262ccb7e7 | |
| parent | 2d842a9c16db0534183c941b029cb6c59823ae73 (diff) | |
| parent | 1628b3d768f2bbc853bd89ee0b84fa6935c3a9a3 (diff) | |
Merge branch 'master' of https://github.com/BigCoke233/geek-death-project
| -rw-r--r-- | content/posts/weekly/38.md | 57 | ||||
| -rw-r--r-- | layouts/_partials/posts/action-menu.html | 148 |
2 files changed, 112 insertions, 93 deletions
diff --git a/content/posts/weekly/38.md b/content/posts/weekly/38.md index e6329fce..a7dd1d73 100644 --- a/content/posts/weekly/38.md +++ b/content/posts/weekly/38.md @@ -1,20 +1,28 @@ --- title: 稻草人周刊 Vol.38 -subtitle: +subtitle: 「心理治疗语言」正在摧毁个性 tags: - 心理学 - AI - 写作 - 教育 - 效率 -date: 2025-07-14T06:36:00 +date: 2025-07-21T00:01:00 categories: 稻草人周刊 -banner: -draft: true +draft: false toc: true -endnotes: --- +<iframe allow="autoplay *; encrypted-media *;" frameborder="0" height="150" style="width:100%;max-width:660px;overflow:hidden;background:transparent;" sandbox="allow-forms allow-popups allow-same-origin allow-scripts allow-storage-access-by-user-activation allow-top-navigation-by-user-activation" src="https://embed.music.apple.com/cn/album/%E6%9C%89%E5%A4%AA%E5%A4%9A%E4%B8%8D%E8%83%BD%E8%AE%B2/1822757825?i=1822757827"></iframe> + +告五人新专辑里最喜欢的一首,不过初听时没觉得很惊艳来着。 + +> 有太多不能讲 怕你看见他 +> +> 有太多必要的麻烦 +> +> 怕你知道我没有办法 + <!--more--> ## ↯ · 当下 @@ -28,9 +36,9 @@ endnotes: {{< callout "文章链接:[Nobody Has A Personality Anymore](https://www.freyaindia.co.uk/p/nobody-has-a-personality-anymore)" "📜" >}} -作者观察到,如今的年轻人(尤其是 Z 世代女孩)大部分都把自己的心理问题当作自我认同的一部分,把自己当作一系列需要解决的问题。曾经被称作性格的东西如今成了未被诊断的 ADHD 和自闭症。在 Z 世代的叙事中,没有人是慷慨的,只有「讨好型人格」(people-pleasers);没有人是害羞的,而是有「自闭症」;没有人是友善、爱人的,他们只是有「焦虑型依恋」;没有努力工作的人,只有创伤的、不安的过度成就者(overachiever);你不是爱人,只是这个人让你在潜意识层面想起了曾经伤害过你的父母 …… 曾经让人觉得可爱的点,如今都成了心理诊断的证据。 +作者观察到,如今的年轻人(尤其是 Z 世代女孩)大部分都把自己的心理问题当作自我认同的一部分,把自己当作一系列需要解决的问题。曾经被称作性格的东西如今成了未被诊断的 ADHD 和自闭症。在 Z 世代的叙事中,没有人是慷慨的,只有「讨好型人格」(people-pleasers);没有人是害羞的,而是有轻微「自闭症」;没有人是友善、爱人的,他们只是有「焦虑型依恋」;没有努力工作的人,只有创伤的、不安的 Overachiever[^5];你不是爱人,只是这个人让你在潜意识层面想起了曾经伤害过你的父母…… 曾经让人觉得可爱的点,如今都成了心理诊断的证据。 -心理治疗本应该帮助那些真正需要帮助、日常生活受心理障碍影响的人,而如今的年轻人陷入了一种必须要解释清楚每一件事情、拼命找到自己有病的证据,在这一过程中逐渐失去了自我。凡事都要搞清楚原因或许是现代科学给现代人的诅咒,在解释一切客观存在的同时,现代科学教给人们的求知态度也让人们在审视自己时,难以将情感放在第一位。**过度理性地剖析自己,反而会造成更深远的痛苦**。 +心理治疗本应该帮助那些真正需要帮助、日常生活受心理障碍影响的人,而如今的年轻人陷入了一种必须要解释清楚每一件事情、拼命证明自己有病的困境,在这一过程中逐渐失去了自我。凡事都要搞清楚原因或许是现代科学给现代人的诅咒,在解释一切客观存在的同时,现代科学教给人们的求知态度也让人们在审视自己时,难以将情感放在第一位。**过度理性地剖析自己,反而会造成更深远的痛苦**。 读完之后我痛苦地意识到,《[人类恶疾](/categories/人类恶疾/)》这个文章系列就是这种「过度理性剖析」的产物。尽管我在这个系列里数次强调,重点不是治好自己的「病」,而是认识到并承认自己有「病」,放大对自己的觉察,但不可否认,这种叙事和语言的确极大地影响了我的思想。 @@ -48,17 +56,19 @@ endnotes: {{< callout "文章链接:[I used o3 to profile myself from my saved Pocket links](https://noperator.dev/posts/o3-pocket-profile/)" "📜" >}} -稍后读服务 Pockets 即将停运之际,作者导出了他七年来保存的 900 多条链接,喂给了 ChatGPT 的 o3 模型(没有使用「记忆」功能),让 ChatGPT 仅通过他保存的链接推断他的年龄、性别、家庭情况、教育水平、职业和定居地等信息。作者觉得 AI 生成的描述和自己基本符合。 +稍后读服务 Pocket 即将停运之际,作者导出了他七年来保存的 900 多条链接,喂给了 ChatGPT 的 o3 模型(没有使用「记忆」功能),让 ChatGPT 仅通过他保存的链接推断他的年龄、性别、家庭情况、教育水平、职业和定居地等信息。作者觉得 AI 生成的描述和自己基本符合。 这个小实验引发了我的几点思考: -1. 仅仅从一个人看些什么就足矣推断大量关于他的隐私信息。 +1. 仅仅从一个人看些什么就足以推断大量关于他的隐私信息。 2. 大语言模型不仅可以用于推断用户喜好,还可以得出精确的用户画像。 3. AI 的发展对用户隐私来说是巨大的威胁。[^1] 此外,本着「对于 AI 生成的内容我宁愿读提示词」的态度,在这里引用作者做这个小实验时用到的提示词,指示明确、非常详尽,很值得学习。 > I’m going to share a list of articles that I’ve saved to Pocket, a read-it-later app. I want you to use that information to “profile” me. Tell me everything about myself that you can possibly infer from this data set. Here’s an example of possible dimensions of that profile, but feel free to include other things that you can infer: age, sex, geographic location, education level, industry/field of work, job level/seniority, income bracket, political orientation, risk tolerance, learning style, information diet, relationship status, parental status and kids’ ages, health concerns, major life transitions, seasonal patterns in interests, etc. +> +> 我即将分享我保存到 Pocket(一个稍后读应用)中的一系列文章。我想要你用这个信息来构建我的“用户画像”。告诉我一切你能从这个数据集中推测出来的,有关我的信息。通过以下我给出的维度为例构建画像,但随意增加其他你能够推断的内容:年龄、性别、地理位置、教育水平、行业/工作领域、职业等级/资历、收入组别(income bracket)、政治倾向、为人父母的状态和孩子的年龄、健康隐患、重大生活变更、兴趣的季节变化规律[^6]等等。 [#AI](/tags/AI/) @@ -68,12 +78,14 @@ endnotes: 一方面,我想要在互联网上获取尽可能高质量的内容,另一方面,我想要保持信息来源尽量精简,所以在订阅博客的时候就会做一些筛选,其中一条对我而言比较重要的筛选标准就是「有没有评论功能」,因为我想要保留和作者沟通的可能。不过,读完这篇文章之后,我对没有评论功能的博客有了些改观。 -中文博客圈中,没有评论功能的博客占少数,英文博客则有不少都没有评论,博主会请读者通过 Email 等方式交流想法。之前在《[论独立博客的评论](/posts/论独立博客的评论/)》这篇文章中提到过,相比起来,中国人不太习惯通过 Email 一对一交流,更偏好在公共空间表达。如果表达者想要避免造成一言堂,对评论保持开放态度就比较重要。作者的这篇文章从他的角度谈到了评论功能的负面影响:表达时会产生顾虑。在我看来,这实际上是一种无法逃避的自我审查。 +中文博客圈中,没有评论功能的博客占少数,英文博客则有不少都没有评论,博主会请读者通过 Email 等方式交流想法。之前在《[论独立博客的评论](/posts/论独立博客的评论/)》这篇文章中提到过,相比起来,中国人不太习惯通过 Email 一对一交流,更偏好在公共空间表达。如果表达者想要避免造成一言堂,对评论保持开放态度就比较重要。作者的这篇文章从他的角度谈到了评论功能的负面影响:**表达时会产生顾虑**。在我看来,这实际上是一种无法逃避的自我审查。 -除了自我审查,开放评论的负面影响还有期望导致的失望。就拿我举例,大部分人都很难忍住不在空闲时刷刷手机,对我来说,比起刷视频,我更喜欢顺手打开博客的 Umami 统计和 Giscus 评论看看网站的流量,确认一下有没有新的评论。实际上,就算我看到有新评论,也会等到我有较长的休息时间,精力也比较好的时候才回复。我看评论只是为了满足被看见的欲望,而不是为了及时回复别人。应该没有一个表达者不会期待反馈。 +除了自我审查,开放评论的负面影响还有**期望导致的失望**。就拿我举例,大部分人都很难忍住不在空闲时刷刷手机,对我来说,比起刷视频,我更喜欢顺手打开博客的 Umami 统计和 Giscus 评论看看网站的流量,确认一下有没有新的评论。实际上,就算我看到有新评论,也会等到我有较长的休息时间,精力也比较好的时候才回复。我看评论只是为了满足被看见的欲望,而不是为了及时回复别人。应该没有一个表达者不会期待反馈。 这么说的话,没有评论功能的博客确实有诸多好处,可以从某种程度上减轻自我审查、舆论审查的影响[^3],也可以减少期待和期待衍生的焦虑和失望。毕竟要是没有得到直接回应的可能,就不会因为没有反馈而感到失望,反而,当收到有人通过 Email 等其他更麻烦的途径来给自己留言时,喜悦的程度会更大。 +其实我很想尝试在一段时间里移除博客的评论区,如果你对此有些看法,欢迎在我下定决心之前给我留言谈谈你的看法。 + [#写作](/tags/写作/) ### 当 AI 摧毁大学写作 @@ -107,18 +119,35 @@ CapCut(剪映)的开源替代品,目前还在 waitlist 阶段,除了 Git 访问:[OpenCut](https://opencut.app) +### Making Software + +一个写给设计和制作软件者的参考指南,其中有很多有意思的计算机知识,而且大部分不是很基础的、在学校里会讲的知识,比如:「什么是 Shader」「触摸屏如何工作」「怎么让代码变快」。只不过大部分条目都还没有写完。 + +网站是作者一个人编写的,插图也是他绘制的,这个网站上的设计,包括排版和动画还有字体,我都很喜欢。我最喜欢的是这个网站右侧的目录,做成了一个标尺的样子。最妙的是,它不只是一个目录,它还直观地显示了每一小节有多长,点击标题之间的小标尺还能跳转到非标题的位置,很有意思。我很想把这个设计抄下来,但思考实现方式时意识到还需要计算标题之间的距离,似乎太麻烦了。 + + + +访问:[Making Software](https://www.makingsoftware.com) + ## ※ · 妙语 +{{< quotecard >}}在古希腊语中,语言和理性是同一个词,即 logos。{{</ quotecard >}} + +这句话来自《如何从敌人身上获益》的脚注,一本我最近忙到没精力读的书,是树老师翻译的,也就是那个我一直很喜欢听的播客的主播。这本书是古希腊哲学家普鲁塔克的《道德论丛》选集。 +关于这本书的内容留到读完之后,在书评里再讲。读书的时候,能窥见一些古希腊社会文化的影子,比如这里提到的古希腊人对理性和语言的理解。 + +在我的理解中,语言的确能够表达情感,但并非是直接的情感表达,而是通过理智认知情感后,用理性的语言描述感性的存在所得到的结果。我想,情绪崩溃时可以通过写日记、写文章来缓解,是因为写字是通过语言强行调动理性解释情绪,用理性的态度面对情绪的方式。 ## ∬ · 切片 - 周六骑车上班的时候,有点想死在路上;周日晚上骑车下班也是。 -- 我在中文互联网上能在任何话题下看到「在 AI 时代……」这种表述,在英文互联网上更是如此,任何话题、任何文章下,几乎都有人写「In the age of AI, ...」。我一直不认为大语言模型发展的这几年足够被称作一个「时代」,这个用词并不准确,**人人都在用着炒作者的语言**。此外,这些凡事都要扯到 AI 上的人,只是在展示他们的情绪和对这一技术的理解之匮乏。 +- 我在中文互联网上能在任何话题下看到「在 AI 时代……」这种表述,在英文互联网上更是如此,任何话题、任何文章下,几乎都有人写「In the age of AI, ...」。我一直不认为大语言模型发展的这几年足够被称作一个「时代」,这个用词并不准确,**人人都在用着炒作者的语言**。 - 头发留长了,不太想烫头也没时间打理,于是扎了个小辫,意外地还不错。 - 想养一只美西螈,但想到一个月之后可能又要搬家(一方面想找人合租降低花销,另一方面确实对现在的环境不太满意),不想让另一个生命和我一起折腾,就先放了放。最近买书也克制了很多,断断续续地在多抓鱼上卖了一些,因为搬家时最重的就是我的书了。一想到搬家的压力,就不免想要一个稳定的住所,可能这也是「家」的意义之一吧。 - 休息日出门买菜,回来的时候在楼下电梯口遇到一只萨摩耶,看到我就笑着吐着舌头小跑过来,然后闻了闻我袋子里有什么。不过他好像不太聪明,因为他嗅的是西兰花,没嗅到另一个袋子里的鸡胸肉和鸡腿肉。嗅完就开开心心地从我身后走掉了,可爱呢~ - 当我想要找一些华语专辑来听的时候,为什么会在歌名里和歌词里听到这么多英语呢?(当然他们的英语也不差啦!) +- 一个自律的大学生终于明白为什么有的人会天天熬夜吃夜宵了:**上班上的**。 ### 关于工作的碎碎念 @@ -130,3 +159,7 @@ CapCut(剪映)的开源替代品,目前还在 waitlist 阶段,除了 Git [^3]: 不过这对我来说无足轻重 [^4]: 暑假刚开始的时候我为什么要想着给自己找个班上呢 😓 + +[^5]: 我不知道怎么翻译这个词,大概的意思是:过度地想要做出更多成就的人。 + +[^6]: 这个 interests diff --git a/layouts/_partials/posts/action-menu.html b/layouts/_partials/posts/action-menu.html index 1a7c0c56..c1d4cd55 100644 --- a/layouts/_partials/posts/action-menu.html +++ b/layouts/_partials/posts/action-menu.html @@ -54,128 +54,114 @@ } </style> -<script> -// 评论展开/收起功能 -document.addEventListener('DOMContentLoaded', function() { +<script defer> +// 初始化所有功能 +function initializeFeatures() { + const pageId = "{{ .File.UniqueID | urlize }}"; + if (!pageId) return; + + // 评论展开/收起功能 + initializeComments(); + // 点赞功能 + initializeLikes(pageId); + // 评论数量获取 + initializeCommentCount(); +} + +// 评论展开/收起功能初始化 +function initializeComments() { const commentsToggle = document.getElementById('comments-toggle'); const commentsSection = document.getElementById('comments-section'); if (commentsToggle && commentsSection) { commentsToggle.addEventListener('click', function() { - if (commentsSection.style.display === 'none') { - commentsSection.style.display = 'block'; - this.style.background = 'rgba(0, 0, 0, 0.1)'; - } else { - commentsSection.style.display = 'none'; - this.style.background = 'transparent'; - } + const isHidden = commentsSection.style.display === 'none'; + commentsSection.style.display = isHidden ? 'block' : 'none'; + this.style.background = isHidden ? 'rgba(0, 0, 0, 0.1)' : 'transparent'; }); } -}); +} -// 获取 Giscus 评论数量 -function fetchGiscusCommentCount() { +// 评论数量功能初始化 +function initializeCommentCount() { const commentCountEl = document.getElementById('comment-count'); if (!commentCountEl) return; - // 设置初始值 commentCountEl.textContent = '0'; - // 监听 Giscus 的消息事件 window.addEventListener('message', function(event) { if (event.origin !== 'https://giscus.app') return; const giscusData = event.data; - - // 检查是否为 IMetadataMessage - 数据结构是 {giscus: {discussion: {...}}} - if (giscusData.giscus && giscusData.giscus.discussion) { + if (giscusData.giscus?.discussion) { const discussion = giscusData.giscus.discussion; - - // 计算总评论数:主评论数 + 回复数 const totalComments = (discussion.totalCommentCount || 0) + (discussion.totalReplyCount || 0); commentCountEl.textContent = totalComments.toString(); } }); } -// 点赞功能 -(function() { - const pageId = "{{ .File.UniqueID | urlize }}"; - if (!pageId) { - return; - } - - const countEl = document.getElementById("like-count-" + pageId); - const btnEl = document.getElementById("like-btn-" + pageId); - const containerEl = document.getElementById("like-container-" + pageId); - - if (!countEl || !btnEl || !containerEl) { - return; - } +// 点赞功能初始化 +function initializeLikes(pageId) { + const elements = { + count: document.getElementById("like-count-" + pageId), + btn: document.getElementById("like-btn-" + pageId), + container: document.getElementById("like-container-" + pageId), + icon: document.getElementById("like-icon-" + pageId) + }; - const likeIconEl = document.getElementById("like-icon-" + pageId); + if (!elements.count || !elements.btn || !elements.container) return; function updateTooltip() { - if (containerEl.classList.contains('liked')) { - btnEl.setAttribute('title', btnEl.getAttribute('data-liked-title')); - } else { - btnEl.setAttribute('title', '为这篇文章献上心脏'); - } + elements.btn.setAttribute('title', + elements.container.classList.contains('liked') + ? elements.btn.getAttribute('data-liked-title') + : '为这篇文章献上心脏' + ); } function setLikedState() { - if (likeIconEl) { - likeIconEl.classList.add('liked-heart', 'heartbeat'); - } - if (countEl) { - countEl.classList.add('liked-count'); - } - btnEl.disabled = true; - containerEl.classList.add('liked'); + elements.icon?.classList.add('liked-heart', 'heartbeat'); + elements.count?.classList.add('liked-count'); + elements.btn.disabled = true; + elements.container.classList.add('liked'); updateTooltip(); } - function fetchLikes() { - fetch("https://like.guhub.cn/like/" + pageId) - .then(resp => resp.json()) - .then(data => { - countEl.innerText = data.likes ?? 0; - if (localStorage.getItem("liked_" + pageId)) { - setLikedState(); - } - }) - .catch(() => { - countEl.innerText = "❌"; - }); + async function fetchLikes() { + try { + const response = await fetch("https://like.guhub.cn/like/" + pageId); + const data = await response.json(); + elements.count.innerText = data.likes ?? 0; + if (localStorage.getItem("liked_" + pageId)) { + setLikedState(); + } + } catch { + elements.count.innerText = "❌"; + } } - window.sendLike = function(pageId) { + window.sendLike = async function(pageId) { if (localStorage.getItem("liked_" + pageId)) return; - if (window.location.hostname !== 'localhost') { - if (typeof umami !== 'undefined') { - umami.track('👍 Hit Like Button'); - } + if (window.location.hostname !== 'localhost' && typeof umami !== 'undefined') { + umami.track('👍 Hit Like Button'); } - fetch("https://like.guhub.cn/like/" + pageId, { method: "POST" }) - .then(resp => resp.json()) - .then(data => { - localStorage.setItem("liked_" + pageId, "1"); - countEl.innerText = data.likes ?? 1; - setLikedState(); - }) - .catch(() => { - alert("点赞失败,请稍后再试"); - }); + try { + const response = await fetch("https://like.guhub.cn/like/" + pageId, { method: "POST" }); + const data = await response.json(); + localStorage.setItem("liked_" + pageId, "1"); + elements.count.innerText = data.likes ?? 1; + setLikedState(); + } catch { + alert("点赞失败,请稍后再试"); + } }; - // 初始化 fetchLikes(); -})(); +} -// 初始化评论数量获取 -document.addEventListener('DOMContentLoaded', function() { - fetchGiscusCommentCount(); -}); +// 在 DOM 加载完成后初始化所有功能 +document.addEventListener('DOMContentLoaded', initializeFeatures); </script> |
