-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.json
1 lines (1 loc) · 613 KB
/
index.json
1
[{"categories":["实操记录"],"content":" 在 Mac(M2) 上,使用 UTM 安装 Windows11 虚拟机,大致步骤还是按照Windows 11 | UTM Documentation走,中间会遇到一些卡壳的步骤需要克服一下。 ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:0:0","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"挂载 IOS 文件,配置 UTM ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:1:0","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"CrystalFetch 获取 IOS 文件 在 macOS 上获取 Windows 安装 ISO 的最简单方法是使用 CrystalFetch,这是一款基于 UUP dump 的免费工具。 您可以在 App Store 下载,也可以 Download from GitHub。 默认情况下,CrystalFetch 会选择与主机架构对应的最新正式版或发布预览版。您可以更改筛选条件,以包括预发布版本以及服务器版本。 ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:1:1","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"配置 UTM 打开 UTM,并点击“+”按钮进入虚拟机创建向导。 选择“Virtualize”。 选择“Windows”。 确保“Import VHDX Image”未选中,并勾选“Install Windows 10 or higher”。同时确保“Install drivers and SPICE tools”已勾选。点击“Browse”按钮并选择下载好的 ISO 文件。 选择要分配给虚拟机的 RAM 和 CPU 核心数量。点击“Next”继续。 指定要分配的最大磁盘空间。点击“Next”继续。 如果有要在虚拟机中挂载的目录,可以在此选择。或者可以跳过此步骤,稍后在虚拟机窗口工具栏中选择要共享的目录。在安装 SPICE 工具后(见下文),该共享目录将可用。点击“Next”继续。 点击“Save”保存并创建虚拟机。等待来宾工具下载完成,然后点击“Run”按钮启动虚拟机。 ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:1:2","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"装机(Setup)过程 从 ISO 启动后,我们进入 Windows Setup 过程。Setup 过程可能会遇到一些问题,下面是常见问题的解答。 ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:2:0","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"进入 EFI Shell 而非 Windows 安装程序 首先,确保在启动时按下了任意键以进入安装程序,并确认生成的 ISO 文件与架构匹配。请注意,arm64 是针对 Apple Silicon 芯片的,而 amd64 是针对 Intel 芯片的。 ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:2:1","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"安装程序崩溃并出现蓝屏错误 SYSTEM_THREAD_EXCEPTION_NOT_HANDLED 这是由于 Windows 版本过旧。构建版本号应为 21390 或更高。 ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:2:2","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"解决\"This PC doesn’t currently meet the minimum system requirements to run Windows 11\" 如果不是默认 RAM、CPU、磁盘空间等配置,可能会出现上述提示,可以参考Windows 11 Specs and System Requirements调整配置。 ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:2:3","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"解决“This PC can’t run Windows 11” 如果出现“This PC can’t run Windows 11”,怎么解决? 解决方案是,绕过“This PC can’t run Windows 11”提示。 要绕过提示,可以在注册表编辑器中添加三个 DWORD 值来跳过检查。以下是分步骤的具体操作方法: 步骤 1:返回 Windows 设置上一步 点击左上角的“上一步”按钮。 步骤 2:打开命令提示符 按下键盘上的 Shift + F10 打开命令提示符窗口。 步骤 3:打开注册表编辑器 在命令提示符窗口中输入 regedit,打开注册表编辑器。 步骤 4:创建注册表键值 进入 HKEY_LOCAL_MACHINE\\SYSTEM\\Setup 路径。在该路径下创建一个名为 LabConfig 的新键。然后添加以下五个 DWORD(32 位)值,并将每个值的数据设置为 1. BypassCPUCheck BypassRAMCheck BypassSecureBootCheck BypassStorageCheck BypassTPMCheck 步骤 5:关闭窗口 点击关闭按钮关闭注册表编辑器和命令提示符窗口,返回 Windows 设置屏幕,开始安装 Windows 11。 完成以上步骤后,可以继续安装 Windows 11,不会再出现“This PC can’t run Windows 11”的提示。 ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:2:4","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"SPICE Guest Tools 未自动安装 手动下载 SPICE Guest Tools IOS,将其挂在到 USB。 重新启动 Windows11,进入刚刚挂载的 Drive,双击 spice-guest-tools-xxx.exe 文件安装 SPICE Guest Tools。 ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:2:5","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"如何配置网络 确保安装了 SPICE Guest Tools,它包含网络驱动程序。 如果由于缺少网络连接,Windows 11 安装程序卡住,请按以下步骤操作: 返回语言选择屏幕(如果已经跳过该屏幕,可能需要重新启动安装程序)。 按 Shift + F10 启动命令提示符。 输入 OOBE\\BYPASSNRO 并按 Enter。 虚拟机将重新启动,在设置屏幕上应显示“I don’t have internet.”的选项。 完成 Windows 安装后,确保安装 SPICE Guest Tools 以获取网络驱动。 ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:2:6","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"Ref Windows 11 | UTM Documentation This PC can’t run Windows 11 - Bypass/Fix - ALI TAJRAN Turn off Windows Defender in Windows 11 permanently - ALI TAJRAN Windows 11 Specs and System Requirements | Microsoft Windows | UTM Documentation ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:3:0","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":["实操记录"],"content":"ChangeLog 2024-10-30 初稿 ","date":"2024-10-30","objectID":"/2024-10-30-install-window11-in-utm/:4:0","tags":["虚拟机"],"title":"在 Mac(M2)上,使用 UTM 安装 Windows11 虚拟机","uri":"/2024-10-30-install-window11-in-utm/"},{"categories":null,"content":" http://arxiv.org/abs/2312.10997 ","date":"2024-08-24","objectID":"/talks/2024-08-24-rag/:0:0","tags":null,"title":"rag 流程和优化点","uri":"/talks/2024-08-24-rag/"},{"categories":["成长记录"],"content":"7 月末和 XH 约了八月底见面,没想到她还记得。之前聊天的印象是「自律、自由、洒脱的人,帮我坚定了坚持锻炼的决心。XH 是我以前不敢接触的那类人,很独立,让我内心很深处燃起了动力,保持自律,持续做有意义的事,把大目标一步步做成了。」 这次见面聊了好久,从 7 点 10 点,又进一步认识了她(我聊天的时候很跳跃,还好她没怎么在意),也收获了许多感悟。 她的经历大概是从高中开始就是学校的“风云人物”,交际很广的那种,然后开始做代购赚钱;然后在杭州读的大学,大学期间应该去过好多城市,各种疯玩;工作后,做的是自媒体运营(教客户做自媒体)。整体上感受最深的是她的成熟,毕竟十六七岁开始独立赚钱(而我可能快 30 了才开始思考),而且读过一些书(比如林徽因),有自己的思考;其次是对抗孤独的能力,她关注自己的生活,可以一整周慢悠悠地生活不用和人讲话(健身、捯饬自己、工作、看剧);然后是很酷,有纹身、抽烟、喝酒,身材打扮都很潮,有国际范,毫不掩饰的物质追求(喜欢奢侈品和精致的生活);还有就是很擅长聊天,兼容性很强,能跟不同风格的人聊天,人际关系很广。这段经历的记忆可能有错误,但上面描写呈现出来的感觉应该跟我心中的人物形象还比较一致。 这样一个跟我风格差异极大、分化程度相近的人,确实触发了我好多思考。第一次面聊 XH 确实很大方,我私底下怀着两个目的(想了解她的经历,以及如何对抗孤独)去找她面聊的,她竟然也很坦诚地告诉了我。 她对我的评价是不够勇敢,其实我一开始理解不了,觉得在自己所处的群体里面,已经算是比较勇敢的了。但是跟她的经历一比较,才明白“不够勇敢”的含义是什么。被身边的人、环境、价值共识束缚住,不敢放开手脚去尝试自己的想法,确实就是不够勇敢。不够勇敢带来的后果也很明显,实践少了,或成功或失败的经历少了,人生体验上的经验少了,对人生的感受不够深刻,对人性的理解不够透彻。 另一个话题——对抗孤独,聊的时候有点不够礼貌了,好多次追问了,试图比较出自己跟她的不同。她是享受孤独的那类人,合群外向但又没有太多跟人相处的需求,可以自娱自乐。而我,比较忽视自己开不开心,比较在意自己做的事情是否有意义,追求知识密度,追求大理想,追求人生复杂度。所以,常常要克服新知识的不适,常常要求自己高强度工作,常常计划排的很满以至于难以执行,而且简化了衣食住行,认知过载和效率都带来了深深的“孤独感”,饥渴又乏味。写到这里,发现了两种孤独的区别,我的“孤独”更多是认知过载,学习新知识或者做有挑战的工作,动机容易受损,想去做更容易的事情,或者找人交流,寻求支持。 还有一个话题是自然发生的,大概关于事业、爱情和人生的关系。她曾经有很重的事业心(虽然现在有点佛系),竟然也把投资作为人生的终极形态,能赚钱,又有生活。事业\u003e爱情,这一点要我时刻提醒自己。在上一段感情中,我把爱情看的太重了(毕竟人生第一段真正意义上的爱情),以至于个性、习惯、事业都受到影响,自己也慢慢变成不喜欢的自己,最后也导致了无数争吵,没法继续在一起。爱情只能作为人生的一部分(唯一的人,不完全的精力),人生还是要坚持自己为核心,不能丢失了个性、偏好、事业,不能变成自己也不喜欢的样子。从后果考虑,丢失自己,可能会幽怨、无措、患得患失、念头混沌,要么积压伤害自己,要么爆发伤害爱人。 最后是没聊到,但是自己在聊天之后产生了一点感受,一点对自己现有状态的认识。简单讲就是学习太多,实践太少。目前专业或者准专业的领域还挺多的:编程、经济学、财会、法律、写作、阅读、心理学、设计、创新。不是说要我的技能去匹配想做的事情,而是遇到想做的事情,我应该要更自信一点,自信自己的认知和技能已经很大程度上达到任务的要求了,剩下部分也完全可以通过学习或者找人合作去解决。 夜已深,庆幸自己复盘了,记录了聊天感悟,也生发了新的认识。 ","date":"2024-08-08","objectID":"/2024-08-08-friend-xh/:0:0","tags":["朋友","聊天"],"title":"和一个跟自己很不一样的人,吃饭聊天","uri":"/2024-08-08-friend-xh/"},{"categories":null,"content":"原来的生活圈待久了,大家很容易达成很多共识,习惯彼此的行为。而新朋友比较容易看见双方的差异,反思自己的状态。 下面是最近认识的三位朋友和收获: A 一起约玩飞盘,教会我正手直线飞,那天玩得很开心,天气、环境都恰到好处,彻底放松了。朋友在一起就是应该很放松,并好好对在在一起的时光。 B 工作很用心,让我深刻反思了自己的状态。之前受 X 影响,把时间切的很碎。现在觉得一定要回到以前熟悉的状态,关闭社交软件,长时间专心工作,把一项项工作都好好完成掉。 C 自律、自由、洒脱的人,帮我坚定了坚持锻炼的决心。C 是我以前不敢接触的那类人,很独立,让我内心很深处燃起了动力,保持自律,持续做有意义的事,把大目标一步步做成了。 感谢各位朋友,谢谢你们给我行动的力量! ","date":"2024-08-01","objectID":"/talks/2024-08-01-%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E6%97%B6%E4%B8%8D%E6%97%B6%E8%AE%A4%E8%AF%86%E4%BA%9B%E6%96%B0%E6%9C%8B%E5%8F%8B/:0:0","tags":null,"title":"为什么要时不时认识些新朋友?","uri":"/talks/2024-08-01-%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E6%97%B6%E4%B8%8D%E6%97%B6%E8%AE%A4%E8%AF%86%E4%BA%9B%E6%96%B0%E6%9C%8B%E5%8F%8B/"},{"categories":null,"content":" 你不必是天才 过程比结果更重要 每天分享一点点 打开你的百宝箱 第一点讲的是,把你正在学习、热爱、想法,及时分享出来,及时跟别人碰撞思想💥。不用等到满意了再分享,也不用觉得分享“平淡”会丢脸。 第二点讲的是,数字时代,创作者分享创作过程非常便利,只要内容真实,情感真挚,大家都喜欢看,不挑主题。而且这些日常记录,也可以在没有成果产出的时候,帮助你渡过难关。 第三点讲的是,你要建立日更制度,只要你觉得有趣或者有用的工作内容,都可以分享。众多日常发布中,总会有10%是精彩的。最后也可以把这些日常发布收集起来,整理成精美的小册子,或者书中章节,就像这本书一样。 第四点讲的是,好东西一定要分享,偷偷喜欢算什么。你可以大方、诚恳地表达品味,而不用一味附和主流。当然,分享他人的作品一定要说明出处,让同好者也能找到创造源头,出处不明不分享。 ","date":"2024-07-30","objectID":"/talks/2024-07-30-%E7%A7%80%E5%87%BA%E4%BD%A0%E7%9A%84%E5%B7%A5%E4%BD%9C%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0/:0:0","tags":null,"title":"《秀出你的工作》读书笔记","uri":"/talks/2024-07-30-%E7%A7%80%E5%87%BA%E4%BD%A0%E7%9A%84%E5%B7%A5%E4%BD%9C%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0/"},{"categories":null,"content":"最近密集跟踪了一位优秀诉讼律师的办案过程,发现诉讼过程中似乎可以归于三件事情,构建证据树、调查取证、寻找法律依据。 证据树,它以客观事实和法律事实为节点,以法律关系和论证关系为边,以最终欲达成的违法犯罪结果为根节点。它也是原被告和法官在证据面前,谈论是否构成违法犯罪的前提共识。 调查取证是在证据树上创建客观事实(节点)和论证关系(边)的过程。寻找法律关系是在证据树上创建法律事实(节点)和法律关系(边)的过程。 理论上,原告、被告、法官三者都需要构建一颗证据树,这样大家才能就一个问题进行沟通。 程序上,原告需要构建证据树,来论证出被告违法犯罪的事实;被告针对证据树本身进行逻辑上的质疑,以及针对证据节点质证,以破坏证据树的合理性和完整性;法官则审查证据树的合理性和完整性。 调查取证,从原告、被告和法官三种身份出发,他们分别在调查取证、调查质证和调查评审证据,或者说将支持的客观事实(节点)加入证据树、将反驳的客观事实(节点)加入证据树、审查客观事实(节点)的三性和支持力度(边的权重)。调查取证涉及两个要素,客观事实和论证关系,其中论证关系从基本逻辑、行业知识中来。 寻找法律依据,是指原告、被告、法官,从法律法规、指导意见、类案等中挖掘出相关的法律关系。三者的目的不同,他们分别做的是寻找法律依据、寻找相反的法律依据、审查法律依据的合理性和支持力度。仅由法律依据构建的证据树可称为证据树雏形,从它延伸成完整证据树。 现在来思考一下法律服务业务,如果能够事先通过知识工程构建出证据树雏形和证据树,那是否就可以把办案流程拆分的更细一些,更容易标准化一些呢? ","date":"2024-04-18","objectID":"/talks/2024-04-18-%E8%AF%89%E8%AE%BC%E8%BF%87%E7%A8%8B%E5%88%B0%E5%BA%95%E9%81%B5%E5%BE%AA%E4%BB%80%E4%B9%88%E9%80%BB%E8%BE%91/:0:0","tags":null,"title":"诉讼过程到底遵循什么逻辑","uri":"/talks/2024-04-18-%E8%AF%89%E8%AE%BC%E8%BF%87%E7%A8%8B%E5%88%B0%E5%BA%95%E9%81%B5%E5%BE%AA%E4%BB%80%E4%B9%88%E9%80%BB%E8%BE%91/"},{"categories":null,"content":" max_tokens: 最大输出标记数 temperature: 输出随机性 frequency_penalty: 频率惩罚,[-2, 2],奖励或者惩罚训练集中出现频率高的 token,负数表示模型倾向出现频率较高的词。 presence_penalty: 存在惩罚,[-2, 2],奖励或者惩罚新出现的 token,即话题新鲜度,负数表示模型倾向已经在文本中出现较高的词。 ","date":"2024-04-01","objectID":"/talks/2024-04-01-openai-args/:0:0","tags":null,"title":"Open AI Args","uri":"/talks/2024-04-01-openai-args/"},{"categories":null,"content":" 采购市面上开箱即用的产品,这种情况只需要付一个咨询费【千把来块】,然后按月支付给软件厂商几百到一千多的月租费用;之前有一个客户,是做心理咨询的,他的预算是 50 万,也是要开发一套销售管理系统,侧重的是客户后续跟踪和内容管理这一块的需求,最后我给他配了一套市面上的产品,他只要每月交 1000 块左右的软件使用费用就可以了。 带有少量定制的产品,【几千到小几万】,这种大概类似向工厂下单有模具的产品,生产出来之后再在产品上增加一些定制化的装饰,然后包装好交给客户;一般向专⻔的 CRM 厂商或者独立开发者采购,交付周期一般在两三个月以内;基于标准模板开发,费用 3-5K;独立开发 3-5W; 大量定制的产品,比如需要自己的 OA 或者 ERP,类似需要将许多模具生产出来的产品,经过较多加工之后组装在一起;一般向专⻔的 CRM 厂商或者独立开发者采购,交付周期一般在半年左右;定制开发 6-10W。 完全定制的产品,比如需要符合自身业务特点的管理,比如我的第一个东家,是家央企,做建筑工程的,它的销售系统涉及到按工程进度汇款这种比较特殊的需求,这种一般自己研发或者让外包团队驻在公司开发,有点手工制造 的性质,当时整个软件包括需求梳理、开发、实施,一共花了三百多万。 ","date":"2024-03-16","objectID":"/talks/2024-03-16-crm%E8%BD%AF%E4%BB%B6%E5%90%84%E4%B8%AA%E4%BB%B7%E6%A0%BC%E6%AE%B5%E7%9A%84%E4%BA%A7%E5%93%81%E9%83%BD%E6%9C%89%E5%93%AA%E4%BA%9B/:0:0","tags":null,"title":"CRM软件各个价格段的产品都有哪些?","uri":"/talks/2024-03-16-crm%E8%BD%AF%E4%BB%B6%E5%90%84%E4%B8%AA%E4%BB%B7%E6%A0%BC%E6%AE%B5%E7%9A%84%E4%BA%A7%E5%93%81%E9%83%BD%E6%9C%89%E5%93%AA%E4%BA%9B/"},{"categories":null,"content":"两者在费用上差不多,差别是专业厂商的产品是经过验证的,用起来比较稳定,对需求也比较了解。 缺点是来服务的人只是公司员工,服务会差一些;如果涉及到它们比较陌生的定制化需求,费用会比较高;后续的产品升级迭代,也没有独立开发者灵活。 我们从商家的成本⻆度考虑一下也清楚,厂商的整体供应能力是强一点(说白了就是模具会更多一点),但他分给员工的钱大概只是你付的 30%,相当于只 有 30% 左右的钱变成了服务;但给独立开发者基本上每一块钱都能变成服务, 而且基本上独立开发者的个人能力会比厂商的员工强一些。 ","date":"2024-03-16","objectID":"/talks/2024-03-16-%E7%8B%AC%E7%AB%8B%E5%BC%80%E5%8F%91%E8%80%85%E5%92%8C%E4%B8%93%E4%B8%9A%E5%8E%82%E5%95%86%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB/:0:0","tags":null,"title":"独立开发者和专业厂商有什么区别?","uri":"/talks/2024-03-16-%E7%8B%AC%E7%AB%8B%E5%BC%80%E5%8F%91%E8%80%85%E5%92%8C%E4%B8%93%E4%B8%9A%E5%8E%82%E5%95%86%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB/"},{"categories":null,"content":"认清谈判中的让步 不要轻易亮底牌,让步要选择好时机和方法。如何把握时机?让步前要问自己两个问题,这个阶段适合让步吗?自己对对方有价值吗?如果对方已经有了成交的意愿,仅仅因为价格不合适,这个时候才可以谈让步。否则,善意只会让对方看到你的虚弱和底牌。 无事献殷勤非奸即盗,让步有哪些方法呢? 让步一定要找一个理由,如年底优惠; 寸步不让,除非交换。让步的时候一定也要从对方那里得到东西,比如说今天付钱可以打八折。 ","date":"2024-02-20","objectID":"/talks/2024-02-20-%E8%B0%88%E5%88%A4%E5%B0%8F%E6%8A%80%E5%B7%A7/:1:0","tags":null,"title":"谈判小技巧","uri":"/talks/2024-02-20-%E8%B0%88%E5%88%A4%E5%B0%8F%E6%8A%80%E5%B7%A7/"},{"categories":null,"content":"弱势对强势如何谈判 24 字方针,三个步骤:表明态度,曝光筹码;丑话在前,恐怖故事;留有余地,憧憬未来。 表明态度:不因强势而欺凌,不因弱势而自卑。 曝光筹码:弱势没有多少筹码,若一开始曝光筹码,后续对方不好以此拿捏。 丑话在前:越是弱小,越要敢于说出应该说的话,迟早都要说的。 恐怖故事:基于最开始的丑话,逐层放大恐怖,直到能威胁到对方。 留有余地:威胁不是为了赶跑对方,把话兜回来,说前面只是想象。 憧憬未来:拉客户一起憧憬共同的美好未来。 总结起来,就是对人不对事。对事要刚,坚定目标,坚决寻求出路,迫使双方共同解决问题;对人要柔,留有余地,创造人际关系,加速解决问题。 ","date":"2024-02-20","objectID":"/talks/2024-02-20-%E8%B0%88%E5%88%A4%E5%B0%8F%E6%8A%80%E5%B7%A7/:2:0","tags":null,"title":"谈判小技巧","uri":"/talks/2024-02-20-%E8%B0%88%E5%88%A4%E5%B0%8F%E6%8A%80%E5%B7%A7/"},{"categories":null,"content":"谈判要自信 自信是谈判的必要条件,需要充分准备。保持不卑不亢,自信者常沉着,骄傲者常浮扬。 谈判前要建立信心,保持不卑不亢。这说起来容易做起来难,自信,首先前提是需要充分的准备,这又牵扯到另外的话题。但还是要记住,自信者常沉着,而骄傲者常浮扬。 ","date":"2024-02-20","objectID":"/talks/2024-02-20-%E8%B0%88%E5%88%A4%E5%B0%8F%E6%8A%80%E5%B7%A7/:3:0","tags":null,"title":"谈判小技巧","uri":"/talks/2024-02-20-%E8%B0%88%E5%88%A4%E5%B0%8F%E6%8A%80%E5%B7%A7/"},{"categories":null,"content":"《毛泽东传》读书笔记。 身在农村长在农村,让他对农村有了切身理解,中国革命的主力军应该是农民。 在带着起义军上井冈山之前,毛主要扮演了共产党员和农民工人教师这两个角色,实践让他对中国革命路径有了深刻且经过反馈的认识。 36 岁重新掌权红军之后,毛作为领导者带领红军实践他的融军于民战略和迂回战术,完成长征到达延安。 之后,率先发起抗日反击战争,继续执行融军于民的战略,在敌占区开展游击站,逐渐发展壮大队伍。 国共二次合作期间,第一次让国际社会知道了中国有两个选择。 日本投降之后,从农村包围城市,解放广大土地,继续壮大队伍,以压倒之势战胜国民党军队。 从战略的形成,验证反馈,再到实践,从半知识分子,一步步带领共产党解放全中国,精彩至极! “一切反动派都是纸老虎”,第一次理解了战略上藐视的含义。一股势力,如果战略错误,再强力的动作都可能多余,不用去害怕。 ","date":"2024-02-19","objectID":"/talks/2024-02-29-mao/:0:0","tags":null,"title":"毛真是一个战略大家","uri":"/talks/2024-02-29-mao/"},{"categories":null,"content":"《卓有成效的管理者》这本书已经摆放在书架上很久了。今天,终于开始阅读它。 先翻开目录部分,第一个推荐序是海尔的创始人张瑞敏所写。他在海尔创立初期就已经阅读过此书。可以说,这些商业领袖确实有值得我们学习和追随的地方。 在第一章“卓有成效的管理是可以学会的”,书中介绍了管理和卓有成效这两个概念,并对全书的主旨进行了阐述。第二章讲述如何掌握自己的时间,第三章讨论我能贡献什么,第四章则是如何发挥人的长处,按照从内到外的顺序一步步讲解实现有效管理。 第五章“要事优先”可能是对第二章的补充,第六章和第七章则关注于有效决策。最后一章是全书的结论,在书的最后还附有一篇关于德鲁克的小传。 接下来的阅读顺序应该是先阅读两篇推荐序,一篇来自实业界大佬,另一篇则是赵教授所写,他在中国对德鲁克的研究颇有建树。然后阅读德鲁克的小传,了解他的生平。接着是第八章的结论,从中可能得到关于如何阅读这本书的建议。在了解这些建议之前,我认为可以优先阅读第二章、第三章和第四章。 关于德鲁克的小传部分,介绍了他于 1909 年出生于奥地利首都维也纳的一个贵族家庭。1929 年,20 岁时,他在伦敦担任新闻记者和国际银行的经济学家。22 岁时获得法兰克福大学法学博士学位。1945 年,大约 36 岁时,他创立了德鲁克管理咨询公司。在美国任教和经营公司期间,他一直在积累管理方面的经验,也出了许多著作。最后在 2002 年,93 岁高龄时,他还出版了一本书。我们可以看到,德鲁克的一生是多么充实而精彩。 ","date":"2024-01-23","objectID":"/talks/2024-01-23/:0:0","tags":null,"title":"","uri":"/talks/2024-01-23/"},{"categories":null,"content":"“诗人在某种意义上与精神病患者类似,大脑中会同时浮现无数个意向,但是诗人与精神病患者的区别在于,诗人将纷杂的意象约束在同一套时空系统中。” 读到第四章文本细读的美感型文本的篇章结构理解,作者提示我们要重点关注篇章呈现的意象或形象。 结合海子的《雨鞋》,似乎有点理解如何去感受诗歌的美感了。 “我的双脚在你之中/就像火走在柴中”,诗人呈现了生动又温暖的空间结构。 再到“我自己被塞进相框,挂在故乡”,诗人在这里做了一个空间压缩和穿越,激起大脑的强烈快感。 后面“我把撕碎的书稿和被雨打湿/…/把这些信塞进一双小雨鞋”,诗人描述了一连串的细腻动作,这些动作均在柴火边的一方空间内完成。 紧接着“让他们沉睡千年/梦见洪水和大雨”,诗人把时间瞬间拉长到千年,把空间迅速放大到天地间,带读者体验失重的刺激。 诗歌的美感可能就是,用文字构造意象,用意象创建一套时空系统,再带读者在时空中一番遨游,领略风光,体验心跳吧。真妙! ","date":"2024-01-21","objectID":"/talks/2024-01-21-%E8%AF%97%E4%BA%BA%E4%B8%8E%E7%B2%BE%E7%A5%9E%E7%97%85%E6%82%A3%E8%80%85/:0:0","tags":null,"title":"诗人与精神病患者","uri":"/talks/2024-01-21-%E8%AF%97%E4%BA%BA%E4%B8%8E%E7%B2%BE%E7%A5%9E%E7%97%85%E6%82%A3%E8%80%85/"},{"categories":null,"content":"通常卖给客户的东西可以分为产品和服务,产品通常跟设备、物品等商品挂钩,服务跟人绑定。客户跟人更多的是建立信任的链路,客户信赖这个人,所以找这个人去购买服务,特别是流程复杂一点、周期更长的服务。客户通常依靠信息,或者是信任的人的推荐去购买商品,客户跟商品之间建立的是信息的链路。 而信任渗入了人的情感,信任的持久行远胜于信息。 因此,从卖家的角度看,一个商品,如果很受欢迎,那么短期能带来利润,但难逃经济学和竞争的无情法则,别人会模仿,然后抢走利润。这里就牵扯出了许多利润模式,差异化、护城河等,卖家一定要思考赚钱的同时怎么让客户被抢走,不然容易陷入恶性竞争,亏钱赚吆喝。具体的,作为软件开发者,目前能想到的是差异化竞争,选择一个比较小众的领域,做到最好,小众意味着竞争少,比较容易做到最好。下期再想想还有什么别的利润模式。 再看看如果卖家卖的是服务,相比商品,服务更有黏度,客户不太容易切换卖家。但这里也引入了新的问题,就是卖家精力有限,在服务的过程中要花很大精力维护客户关系。如果把服务产品化,那也意味着黏度下降。那服务行业的怎么提高利润呢?通常有,提高客单价,客户总量不变的情况下,增加总收入;筛选优质客户,淘汰服务过程中需要付出很多精力的客户;内容创作,通过文字、视频等,批量建立和客户的链接,提供更多共同语境,减少获取信任的成本和沟通成本。 写着想到了两本书,后面梳理下《发现利润区》《利润模式》里面的知识点。 ","date":"2023-11-30","objectID":"/talks/2023-11-30-%E5%AE%A2%E6%88%B7%E7%B2%98%E5%BA%A6%E6%80%9D%E8%80%83/:0:0","tags":null,"title":"客户粘度思考","uri":"/talks/2023-11-30-%E5%AE%A2%E6%88%B7%E7%B2%98%E5%BA%A6%E6%80%9D%E8%80%83/"},{"categories":null,"content":" 从身边的朋友出发,看看大家都有什么需求 在这些需求中,针对 3-10 个需求,埋头苦干,马上做出一版 从 3-10 个需求测试出其中相对广泛一点相对没那么激烈的需求 针对这些需求,做出一些更正式的产品,不用管公司、发票 注册公司,产品朝相关领域泛化,设定不同价格 测试出一个最优价位,所有宣传中心都集中在最优利润的产品形态 —阳老师 ","date":"2023-11-02","objectID":"/talks/2023-11-02-%E7%8B%AC%E7%AB%8B%E5%BC%80%E5%8F%91%E8%80%85%E6%9C%80%E7%AE%80%E6%B4%81%E7%9A%84%E8%B5%9A%E9%92%B1%E8%B7%AF%E5%BE%84%E6%98%AF%E4%BB%80%E4%B9%88/:0:0","tags":null,"title":"独立开发者最简洁的赚钱路径是什么?","uri":"/talks/2023-11-02-%E7%8B%AC%E7%AB%8B%E5%BC%80%E5%8F%91%E8%80%85%E6%9C%80%E7%AE%80%E6%B4%81%E7%9A%84%E8%B5%9A%E9%92%B1%E8%B7%AF%E5%BE%84%E6%98%AF%E4%BB%80%E4%B9%88/"},{"categories":["知识整理"],"content":"学习 Git 需要自顶向下学习,先了解数据模型,再去学习命令行,思考命令行对数据模型做了哪些操作。 ","date":"2023-09-10","objectID":"/2023-09-10-git/:0:0","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"概览 版本控制系统 (VCSs) 是一类用于追踪源代码(或其他文件、文件夹)改动的工具。顾名思义,这些工具可以帮助我们管理代码的修改历史;不仅如此,它还可以让协作编码变得更方便。VCS通过一系列的快照将某个文件夹及其内容保存了起来,每个快照都包含了文件或文件夹的完整状态。同时它还维护了快照创建者的信息以及每个快照的相关信息等等。 尽管版本控制系统有很多, 其事实上的标准则是 Git 。 但因为 Git 接口的抽象泄漏(leaky abstraction)问题,通过自顶向下的方式(从命令行接口开始)学习 Git 可能会让人感到非常困惑。 尽管 Git 的接口有些丑陋,但是它的底层设计和思想却是非常优雅的。因此,我们将通过一种自底向上的方式向您介绍 Git,从数据模型开始,最后再学习它的接口。 ","date":"2023-09-10","objectID":"/2023-09-10-git/:1:0","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"Git 的数据模型 进行版本控制的方法很多。Git 拥有一个经过精心设计的模型,这使其能够支持版本控制所需的所有特性,例如维护历史记录、支持分支和促进协作。 ","date":"2023-09-10","objectID":"/2023-09-10-git/:2:0","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"快照 Git 将顶级目录中的文件和文件夹作为集合,并通过一系列快照来管理其历史记录。在Git的术语里,文件被称作Blob对象(数据对象),也就是一组数据。目录则被称之为“树”,它将名字与 Blob 对象或树对象进行映射(使得目录中可以包含其他目录)。快照则是被追踪的最顶层的树。例如,一个树看起来可能是这样的: \u003croot\u003e (tree) | +- foo (tree) | | | + bar.txt (blob, contents = \"hello world\") | +- baz.txt (blob, contents = \"git is wonderful\") ","date":"2023-09-10","objectID":"/2023-09-10-git/:2:1","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"历史记录建模:关联快照 在 Git 中,历史记录是一个由快照组成的有向无环图。 下面是一个 ASCII 码构成的简图,其中的 o 表示一次提交(快照)。 箭头指向了当前提交的父辈(这是一种“在…之前”,而不是“在…之后”的关系)。在第三次提交之后,历史记录分岔成了两条独立的分支。这可能因为此时需要同时开发两个不同的特性,它们之间是相互独立的。开发完成后,这些分支可能会被合并并创建一个新的提交,这个新的提交会同时包含这些特性。新的提交会创建一个新的历史记录,看上去像这样(最新的合并提交用粗体标记): `o \u003c-- o \u003c-- o \u003c-- o \u003c---- o ^ / \\ v --- o \u003c-- o` Git 中的提交是不可改变的。但这并不代表错误不能被修改,只不过这种“修改”实际上是创建了一个全新的提交记录。而引用(参见下文)则被更新为指向这些新的提交。 ","date":"2023-09-10","objectID":"/2023-09-10-git/:2:2","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"数据模型及其伪代码表示 以伪代码的形式来学习 Git 的数据模型,可能更加清晰: // 文件就是一组数据 type blob = array\u003cbyte\u003e // 一个包含文件和目录的目录 type tree = map\u003cstring, tree | blob\u003e // 每个提交都包含一个父辈,元数据和顶层树 type commit = struct { parent: array\u003ccommit\u003e author: string message: string snapshot: tree } 这是一种简洁的历史模型。 ","date":"2023-09-10","objectID":"/2023-09-10-git/:2:3","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"对象和内存寻址 Git 中的对象可以是 blob、树或提交: type object = blob | tree | commit Git 在储存数据时,所有的对象都会基于它们的 SHA-1 哈希 进行寻址。 objects = map\u003cstring, object\u003e def store(object): id = sha1(object) objects[id] = object def load(id): return objects[id] Blobs、树和提交都一样,它们都是对象。当它们引用其他对象时,它们并没有真正的在硬盘上保存这些对象,而是仅仅保存了它们的哈希值作为引用。 例如,上面例子中的树(可以通过 git cat-file -p 698281bc680d1995c5f4caaf3359721a5a58d48d 来进行可视化),看上去是这样的: 100644 blob 4448adbf7ecd394f42ae135bbeed9676e894af85 baz.txt 040000 tree c68d233a33c5c06e0340e4c224f0afca87c8ce87 foo 树本身会包含一些指向其他内容的指针,例如 baz.txt (blob) 和 foo (树)。如果我们用 git cat-file -p 4448adbf7ecd394f42ae135bbeed9676e894af85,即通过哈希值查看 baz.txt 的内容,会得到以下信息: git is wonderful ","date":"2023-09-10","objectID":"/2023-09-10-git/:2:4","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"引用 现在,所有的快照都可以通过它们的 SHA-1 哈希值来标记了。但这也太不方便了,谁也记不住一串 40 位的十六进制字符。 针对这一问题,Git 的解决方法是给这些哈希值赋予人类可读的名字,也就是引用(references)。引用是指向提交的指针。与对象不同的是,它是可变的(引用可以被更新,指向新的提交)。例如,master 引用通常会指向主分支的最新一次提交。 references = map\u003cstring, string\u003e def update_reference(name, id): references[name] = id def read_reference(name): return references[name] def load_reference(name_or_id): if name_or_id in references: return load(references[name_or_id]) else: return load(name_or_id) 这样,Git 就可以使用诸如 “master” 这样人类可读的名称来表示历史记录中某个特定的提交,而不需要在使用一长串十六进制字符了。 有一个细节需要我们注意, 通常情况下,我们会想要知道“我们当前所在位置”,并将其标记下来。这样当我们创建新的快照的时候,我们就可以知道它的相对位置(如何设置它的“父辈”)。在 Git 中,我们当前的位置有一个特殊的索引,它就是 “HEAD”。 ","date":"2023-09-10","objectID":"/2023-09-10-git/:2:5","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"仓库 最后,我们可以粗略地给出 Git 仓库的定义了:对象 和 引用。 在硬盘上,Git 仅存储对象和引用:因为其数据模型仅包含这些东西。所有的 git 命令都对应着对提交树的操作,例如增加对象,增加或删除引用。 当您输入某个指令时,请思考一下这条命令是如何对底层的图数据结构进行操作的。另一方面,如果您希望修改提交树,例如“丢弃未提交的修改和将 ‘master’ 引用指向提交 5d83f9e 时,有什么命令可以完成该操作(针对这个具体问题,您可以使用 git checkout master; git reset --hard 5d83f9e) ","date":"2023-09-10","objectID":"/2023-09-10-git/:2:6","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"暂存区 Git 中还包括一个和数据模型完全不相关的概念,但它确是创建提交的接口的一部分。 就上面介绍的快照系统来说,您也许会期望它的实现里包括一个 “创建快照” 的命令,该命令能够基于当前工作目录的当前状态创建一个全新的快照。 Git 使用一种叫做 “暂存区(staging area)”的机制,它允许您指定下次快照中要包括那些改动。 ","date":"2023-09-10","objectID":"/2023-09-10-git/:3:0","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"Git 的命令行接口 为了避免重复信息,我们将不会详细解释以下命令行。强烈推荐您阅读 Pro Git 中文版,同时完成Learn Git Branching练习。 ","date":"2023-09-10","objectID":"/2023-09-10-git/:4:0","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"基础 git help \u003ccommand\u003e: 获取 git 命令的帮助信息 git init: 创建一个新的 git 仓库,其数据会存放在一个名为 .git 的目录下 git status: 显示当前的仓库状态 git add \u003cfilename\u003e: 添加文件到暂存区 git commit: 创建一个新的提交 如何编写 良好的提交信息! 为何要 编写良好的提交信息 git log: 显示历史日志 git log --all --graph --decorate: 可视化历史记录(有向无环图) git diff \u003cfilename\u003e: 显示与暂存区文件的差异 git diff \u003crevision\u003e \u003cfilename\u003e: 显示某个文件两个版本之间的差异 git checkout \u003crevision\u003e: 更新 HEAD 和目前的分支 ","date":"2023-09-10","objectID":"/2023-09-10-git/:4:1","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"分支和合并 git branch: 显示分支 git branch \u003cname\u003e: 创建分支 git checkout -b \u003cname\u003e: 创建分支并切换到该分支 相当于 git branch \u003cname\u003e; git checkout \u003cname\u003e git merge \u003crevision\u003e: 合并到当前分支 git mergetool: 使用工具来处理合并冲突 git rebase \u003cbasebranch\u003e \u003ctopicbranch\u003e: 将一系列提交按照原有次序依次应用到另一分支上 ","date":"2023-09-10","objectID":"/2023-09-10-git/:4:2","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"远端操作 git remote: 列出远端 git remote add \u003cname\u003e \u003curl\u003e: 添加一个远端 git push \u003cremote\u003e \u003clocal branch\u003e:\u003cremote branch\u003e: 将对象传送至远端并更新远端引用 git branch --set-upstream-to=\u003cremote\u003e/\u003cremote branch\u003e: 创建本地和远端分支的关联关系 git fetch: 从远端获取对象/索引 git pull: 相当于 git fetch; git merge git clone: 从远端下载仓库 ","date":"2023-09-10","objectID":"/2023-09-10-git/:4:3","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"撤销 git commit --amend: 编辑提交的内容或信息,常用来追加修改到上次提交 git reset HEAD \u003cfile\u003e: 恢复暂存的文件,将文件从暂存区(staging)移到工作区(working) git checkout -- \u003cfile\u003e: 丢弃工作区(working)修改, git restore: git2.32版本后取代git reset 进行许多撤销操作 ","date":"2023-09-10","objectID":"/2023-09-10-git/:4:4","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"Git 高级操作 git config: Git 是一个 高度可定制的 工具 git clone --depth=1: 浅克隆(shallow clone),不包括完整的版本历史信息 git add -i /git add -p: 交互式暂存、文件部分暂存,输入 ? 显示所有可以使用的命令列表 git rebase -i: 交互式变基 git blame -L 33,17 \u003cref/hash\u003e: 查看最后修改某行的人 git stash branch \u003cbranch\u003e: 贮藏工作目录下的修改内容 git clean :清理工作目录 git bisect: 通过二分查找搜索历史记录 .gitignore: 指定 故意不追踪的文件 git log origin/master..HEAD ,查看当前分支不在远程的提交 --patch -p :可以使用 git reset --patch 命令的补丁模式来部分重置文件, 通过 git checkout --patch 命令来部分检出文件, git stash save --patch 命令来部分暂存文件。 git grep :查找工作目录的文件 git log -S \u003cstring\u003e :查找日志 git reset [--soft,--mixed,--hard] HEAD~ :撤销修改 git ls-files -o : 列出没有被 git 追踪的文件 ","date":"2023-09-10","objectID":"/2023-09-10-git/:4:5","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"杂项 ","date":"2023-09-10","objectID":"/2023-09-10-git/:5:0","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"图形用户界面 Git 的 图形用户界面客户端 有很多,但是我们自己并不使用这些图形用户界面的客户端,我们选择使用命令行接口 ","date":"2023-09-10","objectID":"/2023-09-10-git/:5:1","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"集成 Shell 集成: 将 Git 状态集成到您的 shell 中会非常方便。(zsh, bash)。Oh My Zsh这样的框架中一般以及集成了这一功能 编辑器集成: 和上面一条类似,将 Git 集成到编辑器中好处多多。fugitive.vim 是 Vim 中集成 GIt 的常用插件 ","date":"2023-09-10","objectID":"/2023-09-10-git/:5:2","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"工作流 有一个创建优质提交信息的习惯会使 Git 的使用与协作容易的多。 一般情况下,信息应当以少于 50 个字符(25个汉字)的单行开始且简要地描述变更,接着是一个空白行,再接着是一个更详细的解释。 Git 项目要求一个更详细的解释,包括做改动的动机和它的实现与之前行为的对比——这是一个值得遵循的好规则。 使用指令式的语气来编写提交信息,比如使用“Fix bug”而非“Fixed bug”或“Fixes bug”。 这里是一份最初由 Tim Pope 写的模板: 首字母大写的摘要(不多于 50 个字符或 25 个中文字符) 如果必要的话,加入更详细的解释文字。在大概 72 个字符的时候换行。在某些情形下,第一行被当作一封电子邮件的标题,剩下的文本作为正文。分隔摘要与正文的空行是必须的(除非你完全省略正文),如果你将两者混在一起,那么类似变基等工具无法正常工作。 使用指令式的语气来编写提交信息:使用“Fix bug”而非“Fixed bug”或“Fixes bug”。 此约定与 git merge 和 git revert 命令生成提交说明相同。 空行接着更进一步的段落。 - 标号也是可以的。 - 项目符号可以使用典型的连字符或星号,后跟一个空格,行之间用空行隔开,但是可以依据不同的惯例有所不同。 - 使用悬挂式缩进 如果你所有的提交信息都遵循此模版,那么对你和与你协作的其他开发者来说事情会变得非常容易。 Git 项目有一个良好格式化的提交信息——尝试在那儿运行 git log –no-merges 来看看漂亮的格式化的项目提交历史像什么样。 进行大型项目时的一些惯例 ( 有很多 不同的 处理方法) ","date":"2023-09-10","objectID":"/2023-09-10-git/:5:3","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"Git 提供商 GitHub: Git 并不等同于 GitHub。 在 GitHub 中您需要使用一个被称作拉取请求(pull request)的方法来向其他项目贡献代码 其他 Git 提供商: GitHub 并不是唯一的。还有像 GitLab 和 BitBucket 这样的平台。 ","date":"2023-09-10","objectID":"/2023-09-10-git/:5:4","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"More Pro Git ,强烈推荐!学习前五章的内容可以教会您流畅使用 Git 的绝大多数技巧,因为您已经理解了 Git 的数据模型。后面的章节提供了很多有趣的高级主题。(Pro Git 中文版); Oh Shit, Git!?! ,简短的介绍了如何从 Git 错误中恢复; Git for Computer Scientists ,简短的介绍了 Git 的数据模型,与本文相比包含较少量的伪代码以及大量的精美图片; Git from the Bottom Up详细的介绍了 Git 的实现细节,而不仅仅局限于数据模型。好奇的同学可以看看; How to explain git in simple words; Learn Git Branching 通过基于浏览器的游戏来学习 Git ; ","date":"2023-09-10","objectID":"/2023-09-10-git/:6:0","tags":["Git"],"title":"Git 数据模型与命令行","uri":"/2023-09-10-git/"},{"categories":["知识整理"],"content":"散列函数 密码散列函数 (Cryptographic hash function) 可以将任意大小的数据映射为一个固定大小的输出。除此之外,还有一些其他特性。 一个散列函数的大概规范如下: hash(value: array\u003cbyte\u003e) -\u003e vector\u003cbyte, N\u003e (N对于该函数固定) 下面我们用sha3sum命令来测试SHA1对几个字符串的输出: echo 'xianxian' | sha3sum e6d649cf2c1ff81dbfd2650af677ee0acf9bb716fb8b3b1405260e42 - 抽象地讲,散列函数可以被认为是一个不可逆,且看上去随机(但具确定性)的函数 (这就是散列函数的理想模型)。 一个散列函数拥有以下特性: 确定性:对于不变的输入永远有相同的输出。 不可逆性:对于hash(m) = h,难以通过已知的输出h来计算出原始输入m。 目标碰撞抵抗性/弱无碰撞:对于一个给定输入m_1,难以找到m_2 != m_1且hash(m_1) = hash(m_2)。 碰撞抵抗性/强无碰撞:难以找到一组满足hash(m_1) = hash(m_2)的输入m_1, m_2(该性质严格强于目标碰撞抵抗性)。 密码散列函数的生命周期列举了一些散列函数是何时被发现弱点及破解的。 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:1:0","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"密码散列函数的应用 Git中的内容寻址存储(Content addressed storage) 文件的信息摘要(Message digest) 像Linux ISO这样的软件可以从非官方的(有时不太可信的)镜像站下载,所以需要设法确认下载的软件和官方一致。 官方网站一般会在(指向镜像站的)下载链接旁边备注安装文件的哈希值。 用户从镜像站下载安装文件后可以对照公布的哈希值来确定安装文件没有被篡改。 例如验证 ubuntu 镜像,HowToSHA256SUM - Community Help Wiki # 获取本地镜像的哈希值 $ shasum -a 256 ~/Downloads/ubuntu-22.04.1-live-server-arm64.iso bc5a8015651c6f8699ab262d333375d3930b824f03d14ae51e551d89d9bb571c /Users/nv/Downloads/ubuntu-22.04.1-live-server-arm64.iso # 下载远程官方公布的哈希值 $ curl http://cdimage.ubuntu.com/releases/22.04/release/SHA256SUMS --output ~/Downloads/SHA256SUMS # 比较两者 $ diff ~/Downloads/SHA256SUMS \u003c(shasum -a 256 ~/Downloads/ubuntu-22.04.1-live-server-arm64.iso) 承诺机制 承诺机制(Commitment scheme): 假设我希望承诺一个值,但之后再透露它—— 比如在没有一个可信的、双方可见的硬币的情况下在我的脑海中公平的“扔一次硬币”。 我可以选择一个值r = random(),并和你分享它的哈希值h = sha256(r)。 这时你可以开始猜硬币的正反:我们一致同意偶数r代表正面,奇数r代表反面。 你猜完了以后,我告诉你值r的内容,得出胜负。同时你可以使用sha256(r)来检查我分享的哈希值h以确认我没有作弊。 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:1:1","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"密钥生成函数 密钥生成函数 (Key Derivation Functions) 作为密码散列函数的相关概念,被应用于包括生成固定长度,可以使用在其他密码算法中的密钥等方面。 为了对抗穷举法攻击,密钥生成函数通常较慢。 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:2:0","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"密钥生成函数的应用 从密码生成可以在其他加密算法中使用的密钥,比如对称加密算法。 存储登录凭证时不可直接存储明文密码。 正确的方法是针对每个用户随机生成一个盐 salt = random(), 并存储盐,以及密钥生成函数对连接了盐的明文密码生成的哈希值KDF(password + salt)。 在验证登录请求时,使用输入的密码连接存储的盐重新计算哈希值KDF(input + salt),并与存储的哈希值对比。 例如,使用 OpenSSL的AES模式加密一个文件 $ echo \"hello world\" \u003e afile #创建一个文件 $ openssl aes-256-cbc -salt -in afile -out secfile #加密文件 enter aes-256-cbc encryption password:*** Verifying - enter aes-256-cbc encryption password:*** #解密 $ openssl aes-256-cbc -d -in secfile -out notsafefile ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:2:1","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"对称加密 说到加密,可能你会首先想到隐藏明文信息。对称加密使用以下几个方法来实现这个功能: keygen() -\u003e key (这是一个随机方法) encrypt(plaintext: array\u003cbyte\u003e, key) -\u003e array\u003cbyte\u003e (输出密文) decrypt(ciphertext: array\u003cbyte\u003e, key) -\u003e array\u003cbyte\u003e (输出明文) 加密方法encrypt()输出的密文ciphertext很难在不知道key的情况下得出明文plaintext。 解密方法decrypt()有明显的正确性。因为功能要求给定密文及其密钥,解密方法必须输出明文:decrypt(encrypt(m, k), k) = m。 AES 是现在常用的一种对称加密系统。 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:3:0","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"对称加密的应用 加密云服务上存储的文件 加密不信任的云服务上存储的文件。对称加密和密钥生成函数配合起来,就可以使用密码加密文件: 将密码输入密钥生成函数生成密钥 key = KDF(passphrase),然后存储encrypt(file, key)。 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:3:1","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"非对称加密 非对称加密的“非对称”代表在其环境中,使用两个具有不同功能的密钥: 一个是私钥(private key),不向外公布;另一个是公钥(public key),公布公钥不像公布对称加密的共享密钥那样可能影响加密体系的安全性。 非对称加密使用以下几个方法来实现加密/解密(encrypt/decrypt),以及签名/验证(sign/verify): keygen() -\u003e (public key, private key) (这是一个随机方法) encrypt(plaintext: array\u003cbyte\u003e, public key) -\u003e array\u003cbyte\u003e (输出密文) decrypt(ciphertext: array\u003cbyte\u003e, private key) -\u003e array\u003cbyte\u003e (输出明文) sign(message: array\u003cbyte\u003e, private key) -\u003e array\u003cbyte\u003e (生成签名) verify(message: array\u003cbyte\u003e, signature: array\u003cbyte\u003e, public key) -\u003e bool (验证签名是否是由和这个公钥相关的私钥生成的) 信息在非对称加密中使用 公钥 加密, 且输出的密文很难在不知道 私钥 的情况下得出明文。 解密方法decrypt()有明显的正确性。 给定密文及私钥,解密方法一定会输出明文: decrypt(encrypt(m, public key), private key) = m。 签名/验证方法具有和书面签名类似的特征。 在不知道 私钥 的情况下,不管需要签名的信息为何,很难计算出一个可以使 verify(message, signature, public key) 返回为真的签名。 对于使用私钥签名的信息,验证方法验证和私钥相对应的公钥时一定返回为真: verify(message, sign(message, private key), public key) = true。 例如,使用ED25519算法生成一组SSH 密钥对。为了确保私钥不使用时的安全,一定使用密码加密你的私钥。 $ ssh-keygen -t ed25519 Generating public/private ed25519 key pair. Enter file in which to save the key (/Users/nv/.ssh/id_ed25519): ./key Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in ./key Your public key has been saved in ./key.pub ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:4:0","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"非对称加密的应用 电子邮件加密 PGP电子邮件加密:用户可以将所使用的公钥在线发布,比如:PGP密钥服务器或 Keybase。任何人都可以向他们发送加密的电子邮件。 聊天加密 像 Signal 和 Keybase 使用非对称密钥来建立私密聊天。 软件签名 Git 支持用户对提交(commit)和标签(tag)进行 GPG(GNU Privacy Guard) 签名。任何人都可以使用软件开发者公布的签名公钥验证下载的已签名软件。 Linux 配置 GPG 可参考配置 GPG 可参考,下面是 Mac 下的操作 $ gpg --gen-key # 导入 [anish](https://keybase.io/anish) pgp 共钥 $ curl https://keybase.io/anish/pgp_keys.asc | gpg --import # 加密文件 $ gpg --encrypt --sign --armor -r [email protected] hi 使用git commit -S命令签名一个Git提交,并使用git show --show-signature命令验证这个提交的签名。或者,使用git tag -s命令签名一个Git标签,并使用git tag -v命令验证标签的签名。 $ git commit -S -m \"sign a commit\" error: gpg failed to sign the data fatal: failed to write commit object 这个问题网上有一些解决方案可供参考: gnupg - Git error - gpg failed to sign data - Stack Overflow pstadler/keybase-gpg-github: Step-by-step guide on how to create a GPG key on keybase.io, adding it to a local GPG setup and using it with Git and GitHub. # 如果遇到 $ echo \"test\" | gpg --clearsign gpg: [stdin]: clear-sign failed: Inappropriate ioctl for device # 则执行 $ export GPG_TTY=$(tty) # 要注意~/.gitconfig里面的 name,email 要和生成秘钥时使用的一样,签名算法也是一样 $ gpg -K --keyid-format SHORT /Users/nv/.gnupg/pubring.kbx ---------------------------- sec ed25519/5491C890 2023-02-19 [SC] [expires: 2025-02-18] 1774700098943C0579420DD2726DAF385491C890 uid [ultimate] xieting \[email protected]\u003e ssb cv25519/77194118 2023-02-19 [E] [expires: 2025-02-18] $ vim ~/.gitconfig [user] name = xieting email = [email protected] signingKey = 77194118 $ git commit -S -m \"scripts\" [master 0c77ec5] scripts 12 files changed, 144 insertions(+) ... ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:4:1","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"密钥分发 非对称加密面对的主要挑战是,如何分发公钥并对应现实世界中存在的人或组织。 Signal的信任模型是,信任用户第一次使用时给出的身份(trust on first use),同时支持用户线下(out-of-band)、面对面交换公钥(Signal里的safety number)。 PGP使用的是信任网络。简单来说,如果我想加入一个信任网络,则必须让已经在信任网络中的成员对我进行线下验证,比如对比证件。验证无误后,信任网络的成员使用私钥对我的公钥进行签名。这样我就成为了信任网络的一部分。只要我使用签名过的公钥所对应的私钥就可以证明“我是我”。 Keybase主要使用社交网络证明 (social proof),和一些别的精巧设计。 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:4:2","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"案例分析 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:5:0","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"密码管理器 每个人都应该尝试使用密码管理器,比如KeePassXC、pass 和 1Password)。 密码管理器会帮助你对每个网站生成随机且复杂(表现为高熵)的密码,并使用你指定的主密码配合密钥生成函数来对称加密它们。 你只需要记住一个复杂的主密码,密码管理器就可以生成很多复杂度高且不会重复使用的密码。密码管理器通过这种方式降低密码被猜出的可能,并减少网站信息泄露后对其他网站密码的威胁。 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:5:1","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"两步验证(双因子验证) 两步验证(2FA)要求用户同时使用密码(“你知道的信息”)和一个身份验证器(“你拥有的物品”,比如YubiKey)来消除密码泄露或者钓鱼攻击的威胁。 最简单的情形是可以通过接收手机的 SMS 来实现(尽管 SMS 2FA 存在 已知问题)。我们推荐使用YubiKey之类的U2F方案。 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:5:2","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"全盘加密 对笔记本电脑的硬盘进行全盘加密是防止因设备丢失而信息泄露的简单且有效方法。 Linux的cryptsetup + LUKS, Windows的BitLocker,或者macOS的FileVault都使用一个由密码保护的对称密钥来加密盘上的所有信息。 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:5:3","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"聊天加密 Signal和Keybase使用非对称加密对用户提供端到端(End-to-end)安全性。 获取联系人的公钥非常关键。为了保证安全性,应使用线下方式验证Signal或者Keybase的用户公钥,或者信任Keybase用户提供的社交网络证明。 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:5:4","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":"SSH 当你运行ssh-keygen命令,它会生成一个非对称密钥对:公钥和私钥(public_key, private_key)。 生成过程中使用的随机数由系统提供的熵决定。这些熵可以来源于硬件事件(hardware events)等。 公钥最终会被分发,它可以直接明文存储。 但是为了防止泄露,私钥必须加密存储。ssh-keygen命令会提示用户输入一个密码,并将它输入密钥生成函数 产生一个密钥。最终,ssh-keygen使用对称加密算法和这个密钥加密私钥。 在实际运用中,当服务器已知用户的公钥(存储在.ssh/authorized_keys文件中,一般在用户HOME目录下),尝试连接的客户端可以使用非对称签名来证明用户的身份——这便是挑战应答方式。 简单来说,服务器选择一个随机数字发送给客户端。客户端使用用户私钥对这个数字信息签名后返回服务器。 服务器随后使用.ssh/authorized_keys文件中存储的用户公钥来验证返回的信息是否由所对应的私钥所签名。这种验证方式可以有效证明试图登录的用户持有所需的私钥。 ","date":"2023-09-09","objectID":"/2023-09-09-encrypt/:5:5","tags":["密码学"],"title":"密码学入门","uri":"/2023-09-09-encrypt/"},{"categories":["知识整理"],"content":" Vim 是一个能跟上你思维速度的编辑器。 Vim 编辑器学习的步骤为: 理解编辑器的设计理念和基本原理; 学习命令,浏览教程,完成 vimtutor; 情景练习; 将编辑器替换成 Vim,持续使用; 优化使用,自定义,安装扩展插件。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:0:0","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"概况 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:1:0","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"Vim 的哲学 在编程的时候,你会把大量时间花在阅读/编辑而不是在写代码上。所以,Vim 是一个多模态编辑 器:它对于插入文字和操纵文字有不同的模式。Vim 是可编程的(可以使用 Vimscript 或者像 Python 一样的其他程序语言),Vim 的接口本身也是一个程序语言:键入操作(以及其助记名) 是命令,这些命令也是可组合的。Vim 避免了使用鼠标,因为那样太慢了;Vim 甚至避免用 上下左右键因为那样需要太多的手指移动。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:1:1","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"编辑模式 Vim 的设计以大多数时间都花在阅读、浏览和进行少量编辑改动为基础,因此它具有多种操作模式: 正常模式:在文件中四处移动光标进行修改 插入模式:插入文本 替换模式:替换文本 可视化模式(一般,行,块):选中文本块 命令模式:用于执行命令 在正常模式,键入 i 进入插入模式,R 进入替换模式,v 进入可视(一般)模式,V 进入可视(行)模式,\u003cC-v\u003e (Ctrl-V, 有时也写作 ^V)进入可视(块)模式,: 进入命令模式。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:1:2","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"缓存, 标签页, 窗口 Vim 会维护一系列打开的文件,称为“缓存”。一个 Vim 会话包含一系列标签页,每个标签页包含 一系列窗口(分隔面板)。每个窗口显示一个缓存。缓存和窗口不是一一对应的关系,窗口只是视角,一个缓存可以在多个窗口打开,比如在查看同一个文件的不同部分的时候。 Vim 默认打开一个标签页,这个标签也包含一个窗口。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:1:3","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"Vim 的接口其实是一种编程语言 Vim 最重要的设计思想是 Vim 的界面本身是一个程序语言。键入操作(以及他们的助记名) 本身是命令,这些命令可以组合使用。这使得移动和编辑更加高效,特别是一旦形成肌肉记忆。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:2:0","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"移动 多数时候你会在正常模式下,使用移动命令在缓存中导航。在 Vim 里面移动也被称为 “名词”, 因为它们指向文字块。 基本移动: hjkl (左, 下, 上, 右) 词: w (下一个词), b (词初), e (词尾) 行: 0 (行初), ^ (第一个非空格字符), $ (行尾) 屏幕: H (屏幕首行), M (屏幕中间), L (屏幕底部) 翻页: Ctrl-u (上翻), Ctrl-d (下翻) 文件: gg (文件头), G (文件尾) 行数: :{行数}\u003cCR\u003e 或者 {行数}G ({行数}为行数) 括号匹配: % (找到配对,比如括号或者 /* */ 之类的注释对) 查找: f{字符}, t{字符}, F{字符}, T{字符} 查找/到 向前/向后 在本行的{字符} , / ; 用于导航匹配 搜索: /{正则表达式}, n / N 用于导航匹配 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:2:1","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"选择 可视化模式: 可视化:v 可视化行: V 可视化块:Ctrl+v 可以用移动命令来选中。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:2:2","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"编辑 所有你需要用鼠标做的事, 你现在都可以用键盘:采用编辑命令和移动命令的组合来完成。 这就是 Vim 的界面开始看起来像一个程序语言的时候。Vim 的编辑命令也被称为 “动词”, 因为动词可以施动于名词。 i 进入插入模式 但是对于操纵/编辑文本,不单想用退格键完成 O / o 在之上/之下插入行 d{移动命令} 删除 {移动命令} 例如,dw 删除词, d$ 删除到行尾, d0 删除到行头。 c{移动命令} 改变 {移动命令} 例如,cw 改变词 比如 d{移动命令} 再 i x 删除字符(等同于 dl) s 替换字符(等同于 xi) 可视化模式 + 操作 选中文字, d 删除 或者 c 改变 u 撤销, \u003cC-r\u003e 重做 y 复制 / “yank” (其他一些命令比如 d 也会复制) p 粘贴 更多值得学习的: 比如 ~ 改变字符的大小写 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:2:3","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"计数 你可以用一个计数来结合“名词”和“动词”,这会执行指定操作若干次。 3w 向前移动三个词 5j 向下移动 5 行 7dw 删除 7 个词 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:2:4","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"修饰语 你可以用修饰语改变“名词”的意义。修饰语有 i,表示“内部”或者“在内“,和 a, 表示”周围“。 ci( 改变当前括号内的内容 ci[ 改变当前方括号内的内容 da' 删除一个单引号字符串, 包括周围的单引号 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:2:5","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"命令行 :q 退出(关闭窗口) :w 保存(写) :wq 保存然后退出 :e {文件名} 打开要编辑的文件 :ls 显示打开的缓存 :help {标题} 打开帮助文档 :help :w 打开 :w 命令的帮助文档 :help w 打开 w 移动的帮助文档 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:2:6","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"搜索和替换 :s (替换)命令(文档)。 %s/foo/bar/g 在整个文件中将 foo 全局替换成 bar %s/\\[.*\\](https://missing-semester-cn.github.io/2020/editors/\\(.*\\))/\\1/g 将有命名的 Markdown 链接替换成简单 URLs ","date":"2023-07-22","objectID":"/2023-07-22-vim/:2:7","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"多窗口 用 :sp / :vsp 来分割窗口 同一个缓存可以在多个窗口中显示。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:2:8","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"宏 q{字符} 来开始在寄存器{字符}中录制宏 q停止录制 @{字符} 重放宏 宏的执行遇错误会停止 {计数}@{字符}执行一个宏{计数}次 宏可以递归 首先用q{字符}q清除宏 录制该宏,用 @{字符} 来递归调用该宏 (在录制完成之前不会有任何操作) ","date":"2023-07-22","objectID":"/2023-07-22-vim/:2:9","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"自定义 Vim Vim 由一个位于 ~/.vimrc 的文本配置文件(包含 Vim 脚本命令)。你可能会启用很多基本 设置。 我们提供一个文档详细的基本设置,你可以用它当作你的初始设置。我们推荐使用这个设置因为 它修复了一些 Vim 默认设置奇怪行为。 在这儿 下载我们的设置,然后将它保存成 ~/.vimrc. Vim 能够被重度自定义,花时间探索自定义选项是值得的。你可以参考其他人的在 GitHub 上共享的设置文件,比如,你的授课人的 Vim 设置 (Anish, Jon (uses neovim), Jose)。 有很多好的博客文章也聊到了这个话题。尽量不要复制粘贴别人的整个设置文件, 而是阅读和理解它,然后采用对你有用的部分。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:3:0","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"还有更多的 Vim 小窍门吗? 插件 - 花时间去探索插件。有很多不错的插件修复了 vim 的缺陷或者增加了能够与现有 vim 工作流结合的新功能。关于这部分内容,资源是VimAwesome 和其他程序员的 dotfiles。 标记 - 在 vim 里你可以使用 m\u003cX\u003e 为字母 X 做标记,之后你可以通过 '\u003cX\u003e 回到标记位置。这可以让你快速定位到文件内或文件间的特定位置。 导航 - Ctrl+O 和 Ctrl+I 命令可以使你在最近访问位置前后移动。 撤销树 - vim 有不错的更改跟踪机制,不同于其他的编辑器,vim 存储变更树,因此即使你撤销后做了一些修改,你仍然可以通过撤销树的导航回到初始状态。一些插件比如 gundo.vim 和 undotree 通过图形化来展示撤销树。 时间撤销 - :earlier 和 :later 命令使得你可以用时间而非某一时刻的更改来定位文件。 持续撤销 - 是一个默认未被开启的 vim 的内置功能,它在 vim 启动之间保存撤销历史,需要配置在 .vimrc 目录下的undofile 和 undodir,vim 会保存每个文件的修改历史。 热键(Leader Key) - 热键是一个用于用户自定义配置命令的特殊按键。这种模式通常是按下后释放这个按键(通常是空格键)并与其他的按键组合去实现一个特殊的命令。插件也会用这些按键增加它们的功能,例如,插件 UndoTree 使用 \u003cLeader\u003e U 去打开撤销树。 高级文本对象 - 文本对象比如搜索也可以用 vim 命令构成。例如,d/\u003cpattern\u003e 会删除下一处匹配 pattern 的字符串,cgn 可以用于更改上次搜索的关键字。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:4:0","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"扩展 Vim Vim 有很多扩展插件。跟很多互联网上已经过时的建议相反,你不需要在 Vim 使用一个插件 管理器(从 Vim 8.0 开始)。你可以使用内置的插件管理系统。只需要创建一个 ~/.vim/pack/vendor/start/ 的文件夹,然后把插件放到这里(比如通过 git clone)。 以下是一些推荐的插件: ctrlp.vim: 模糊文件查找 ack.vim: 代码搜索 nerdtree: 文件浏览器 vim-easymotion: 魔术操作 我们尽量避免在这里提供一份冗长的插件列表。你可以查看讲师们的开源的配置文件 (Anish, Jon, Jose) 来看看我们使用的其他插件。 浏览 Vim Awesome 来了解一些很棒的插件。 这个话题也有很多博客文章:搜索 “best Vim plugins”。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:5:0","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"其他程序的 Vim 模式 很多工具提供了 Vim 模式。这些 Vim 模式的质量参差不齐;取决于具体工具,有的提供了 很多酷炫的 Vim 功能,但是大多数对基本功能支持的很好。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:6:0","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"Shell 如果你是一个 Bash 用户,用 set -o vi。如果你用 Zsh:bindkey -v,或者用插件zsh-vi-mode。Fish 用 fish_vi_key_bindings。另外,不管利用什么 shell,你可以 export EDITOR=vim。 这是一个用来决定当一个程序需要启动编辑时启动哪个的环境变量。 例如,git 会使用这个编辑器来编辑 commit 信息。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:6:1","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"Readline 很多程序使用 GNU Readline 库来作为 它们的命令控制行界面。Readline 也支持基本的 Vim 模式, 可以通过在 ~/.inputrc 添加如下行开启: set editing-mode vi 比如,在这个设置下,Python REPL 会支持 Vim 快捷键。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:6:2","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"其他 甚至有 Vim 的网页浏览快捷键 browsers, 受欢迎的有 用于 Google Chrome 的 Vimium 和用于 Firefox 的 Tridactyl。 你甚至可以在 Jupyter notebooks 中用 Vim 快捷键。 这个列表 中列举了支持类 vim 键位绑定的软件。 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:6:3","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"例子 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:7:0","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"fizz_buzz 这里是一个有问题的 fizz buzz 实现: def fizz_buzz(limit): for i in range(limit): if i % 3 == 0: print('fizz') if i % 5 == 0: print('fizz') if i % 3 and i % 5: print(i) def main(): fizz_buzz(10) 我们会修复以下问题: 主函数没有被调用 从 0 而不是 1 开始 在 15 的整数倍的时候在不用行打印 “fizz” 和 “buzz” 在 5 的整数倍的时候打印 “fizz” 采用硬编码的参数 10 而不是从命令控制行读取参数 主函数没有被调用 G 文件尾 o 向下打开一个新行 输入 “if name …” 从 0 而不是 1 开始 搜索 /range ww 向前移动两个词 i 插入文字, “1, “ ea 在 limit 后插入, “+1” 在新的一行 “fizzbuzz” jj$i 插入文字到行尾 加入 “, end=’’” jj. 重复第二个打印 jjo 在 if 打开一行 加入 “else: print()” fizz fizz ci' 变到 fizz 命令控制行参数 ggO 向上打开 “import sys” /10 ci( to “int(sys.argv[1])” ","date":"2023-07-22","objectID":"/2023-07-22-vim/:7:1","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"xml 转成 json 将 xml 转成 json (file) 一个有 “name” / “email” 键对象的数组 用一个 Python 程序? 用 sed / 正则表达式 g/people/d %s/\u003cperson\u003e/{/g %s/\u003cname\u003e\\(.*\\)\u003c\\/name\u003e/\"name\": \"\\1\",/g … Vim 命令 / 宏 Gdd, ggdd 删除第一行和最后一行 格式化最后一个元素的宏 (寄存器 e) 跳转到有 \u003cname\u003e 的行 qe^r\"f\u003es\": \"\u003cESC\u003ef\u003cC\"\u003cESC\u003eq 格式化一个的宏 跳转到有 \u003cperson\u003e 的行 qpS{\u003cESC\u003ej@eA,\u003cESC\u003ej@ejS},\u003cESC\u003eq 格式化一个标签然后转到另外一个的宏 跳转到有 \u003cperson\u003e 的行 qq@pjq 执行宏到文件尾 999@q 手动移除最后的 , 然后加上 [ 和 ] 分隔符 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:7:2","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"More ","date":"2023-07-22","objectID":"/2023-07-22-vim/:8:0","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"TODO 持续使用,遇到麻烦的时候,去探索优化一下。 整理技巧、拓展和配置等 ","date":"2023-07-22","objectID":"/2023-07-22-vim/:8:1","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"Ref vimtutor 是一个 Vim 安装时自带的教程,80 列,24 行) 终端窗口看起来效果最好 Vim Adventures 是一个学习使用 Vim 的游戏 Vim Tips Wiki Vim Advent Calendar 有很多 Vim 小技巧 Vim Golf 是用 Vim 的用户界面作为程序语言的 code golf Vi/Vim Stack Exchange Vim Screencasts Practical Vim(书籍) welcome home : vim online ","date":"2023-07-22","objectID":"/2023-07-22-vim/:8:2","tags":["Vim"],"title":"Vim 学习指南","uri":"/2023-07-22-vim/"},{"categories":["知识整理"],"content":"调试代码的学习,需要了解它的构成,有静态代码、打印、日志、第三方日志、调试器和专用工具,然后利用合适的工具和方法去实践。 ","date":"2023-06-13","objectID":"/2023-06-13-debug/:0:0","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"打印调试法与日志 最有效的 debug 工具就是细致的分析,配合恰当位置的打印语句。 — Brian Kernighan, Unix 新手入门。 调试代码的第一种方法往往是在您发现问题的地方添加一些打印语句,然后不断重复此过程直到您获取了足够的信息并找到问题的根本原因。 另外一个方法是使用日志,而不是临时添加打印语句。日志较普通的打印语句有如下的一些优势: 您可以将日志写入文件、socket 或者甚至是发送到远端服务器而不仅仅是标准输出; 日志可以支持严重等级(例如 INFO, DEBUG, WARN, ERROR 等),这使您可以根据需要过滤日志; 对于新发现的问题,很可能您的日志中已经包含了可以帮助您定位问题的足够的信息。 有很多技巧可以使日志的可读性变得更好,我最喜欢的一个是技巧是对其进行着色。到目前为止,您应该已经知道,以彩色文本显示终端信息时可读性更好。但是应该如何设置呢? ls 和 grep 这样的程序会使用 ANSI escape codes,它是一系列的特殊字符,可以使您的 shell 改变输出结果的颜色。例如,执行 echo -e \"\\e[38;2;255;0;0mThis is red\\e[0m\" 会打印红色的字符串:This is red 。只要您的终端支持真彩色。如果您的终端不支持真彩色(例如 MacOS 的 Terminal.app),您可以使用支持更加广泛的 16 色,例如:”\\e[31;1mThis is red\\e[0m”。 下面这个脚本向您展示了如何在终端中打印多种颜色(只要您的终端支持真彩色) #!/usr/bin/env bash for R in $(seq 0 20 255); do for G in $(seq 0 20 255); do for B in $(seq 0 20 255); do printf \"\\e[38;2;${R};${G};${B}m█\\e[0m\"; done done done ","date":"2023-06-13","objectID":"/2023-06-13-debug/:1:0","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"第三方日志系统 如果您正在构建大型软件系统,您很可能会使用到一些依赖,有些依赖会作为程序单独运行。如 Web 服务器、数据库或消息代理都是此类常见的第三方依赖。 和这些系统交互的时候,阅读它们的日志是非常必要的,因为仅靠客户端侧的错误信息可能并不足以定位问题。 幸运的是,大多数的程序都会将日志保存在您的系统中的某个地方。对于 UNIX 系统来说,程序的日志通常存放在 /var/log。例如, NGINX web 服务器就将其日志存放于/var/log/nginx。 目前,系统开始使用 system log,您所有的日志都会保存在这里。大多数(但不是全部的)Linux 系统都会使用 systemd,这是一个系统守护进程,它会控制您系统中的很多东西,例如哪些服务应该启动并运行。systemd 会将日志以某种特殊格式存放于/var/log/journal,您可以使用 journalctl 命令显示这些消息。 类似地,在 macOS 系统中是 /var/log/system.log,但是有更多的工具会使用系统日志,它的内容可以使用 log show 显示。 对于大多数的 UNIX 系统,您也可以使用dmesg 命令来读取内核的日志。 如果您希望将日志加入到系统日志中,您可以使用 logger 这个 shell 程序。下面这个例子显示了如何使用 logger并且如何找到能够将其存入系统日志的条目。 不仅如此,大多数的编程语言都支持向系统日志中写日志。 logger \"Hello Logs\" # On macOS log show --last 1m | grep Hello # On Linux journalctl --since \"1m ago\" | grep Hello 正如我们在数据整理那节课上看到的那样,日志的内容可以非常的多,我们需要对其进行处理和过滤才能得到我们想要的信息。 如果您发现您需要对 journalctl 和 log show 的结果进行大量的过滤,那么此时可以考虑使用它们自带的选项对其结果先过滤一遍再输出。还有一些像 lnav 这样的工具,它为日志文件提供了更好的展现和浏览方式。 ","date":"2023-06-13","objectID":"/2023-06-13-debug/:2:0","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"调试器 当通过打印已经不能满足您的调试需求时,您应该使用调试器。 调试器是一种可以允许我们和正在执行的程序进行交互的程序,它可以做到: 当到达某一行时将程序暂停; 一次一条指令地逐步执行程序; 程序崩溃后查看变量的值; 满足特定条件时暂停程序; 其他高级功能。 ","date":"2023-06-13","objectID":"/2023-06-13-debug/:3:0","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"python 很多编程语言都有自己的调试器。Python 的调试器是pdb. 下面对pdb 支持的命令进行简单的介绍: l(ist) - 显示当前行附近的 11 行或继续执行之前的显示; s(tep) - 执行当前行,并在第一个可能的地方停止; n(ext) - 继续执行直到当前函数的下一条语句或者 return 语句; b(reak) - 设置断点(基于传入的参数); p(rint) - 在当前上下文对表达式求值并打印结果。还有一个命令是pp ,它使用 pprint 打印; r(eturn) - 继续执行直到当前函数返回; q(uit) - 退出调试器。 让我们使用pdb 来修复下面的 Python 代码(参考讲座视频) def bubble_sort(arr): n = len(arr) for i in range(n): for j in range(n): if arr[j] \u003e arr[j+1]: arr[j] = arr[j+1] arr[j+1] = arr[j] return arr print(bubble_sort([4, 2, 1, 8, 7, 6])) 注意,因为 Python 是一种解释型语言,所以我们可以通过 pdb shell 执行命令。 ipdb 是一种增强型的 pdb ,它使用IPython 作为 REPL 并开启了 tab 补全、语法高亮、更好的回溯和更好的内省,同时还保留了pdb 模块相同的接口。 更多可以学习 这份 pdb 实践教程并熟悉相关的命令。更深入的信息您可以参考这份教程。 ","date":"2023-06-13","objectID":"/2023-06-13-debug/:3:1","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"C 对于更底层的编程语言,您可能需要了解一下 gdb ( 以及它的改进版 pwndbg) 和 lldb。 它们都对类 C 语言的调试进行了优化,它允许您探索任意进程及其机器状态:寄存器、堆栈、程序计数器等。 ","date":"2023-06-13","objectID":"/2023-06-13-debug/:3:2","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"可逆调试 这篇文章可了解 可逆调试 C 可以使用 rr ,它基于 gdb. Python 可以使用pytrace ","date":"2023-06-13","objectID":"/2023-06-13-debug/:3:3","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"专门工具 ","date":"2023-06-13","objectID":"/2023-06-13-debug/:4:0","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"操作系统内核 即使您需要调试的程序是一个二进制的黑盒程序,仍然有一些工具可以帮助到您。当您的程序需要执行一些只有操作系统内核才能完成的操作时,它需要使用 系统调用。有一些命令可以帮助您追踪您的程序执行的系统调用。在 Linux 中可以使用strace ,在 macOS 和 BSD 中可以使用 dtrace。dtrace 用起来可能有些别扭,因为它使用的是它自有的 D 语言,但是我们可以使用一个叫做 dtruss 的封装使其具有和 strace (更多信息参考 这里)类似的接口 下面的例子展现来如何使用 strace 或 dtruss 来显示ls 执行时,对stat 系统调用进行追踪对结果。若需要深入了解 strace,这篇文章 值得一读。 # On Linux sudo strace -e lstat ls -l \u003e /dev/null 4 # On macOS sudo dtruss -t lstat64_extended ls -l \u003e /dev/null ","date":"2023-06-13","objectID":"/2023-06-13-debug/:4:1","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"网络数据包 有些情况下,我们需要查看网络数据包才能定位问题。像 tcpdump 和 Wireshark 这样的网络数据包分析工具可以帮助您获取网络数据包的内容并基于不同的条件进行过滤。 ","date":"2023-06-13","objectID":"/2023-06-13-debug/:4:2","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"web 开发 对于 web 开发, Chrome/Firefox 的开发者工具非常方便,功能也很强大: 源码 -查看任意站点的 HTML/CSS/JS 源码; 实时地修改 HTML, CSS, JS 代码 - 修改网站的内容、样式和行为用于测试(从这一点您也能看出来,网页截图是不可靠的); Javascript shell - 在 JS REPL 中执行命令; 网络 - 分析请求的时间线; 存储 - 查看 Cookies 和本地应用存储。 ","date":"2023-06-13","objectID":"/2023-06-13-debug/:4:3","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"静态分析 有些问题是您不需要执行代码就能发现的。例如,仔细观察一段代码,您就能发现某个循环变量覆盖了某个已经存在的变量或函数名;或是有个变量在被读取之前并没有被定义。 这种情况下 静态分析 工具就可以帮我们找到问题。静态分析会将程序的源码作为输入然后基于编码规则对其进行分析并对代码的正确性进行推理。 ","date":"2023-06-13","objectID":"/2023-06-13-debug/:5:0","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"python 下面这段 Python 代码中存在几个问题。 首先,我们的循环变量foo 覆盖了之前定义的函数foo。最后一行,我们还把 bar 错写成了baz,因此当程序完成sleep (一分钟)后,执行到这一行的时候便会崩溃。 import time def foo(): return 42 for foo in range(5): print(foo) bar = 1 bar *= 0.2 time.sleep(60) print(baz) 静态分析工具可以发现此类的问题。当我们使用pyflakes 分析代码的时候,我们会得到与这两处 bug 相关的错误信息。mypy 则是另外一个工具,它可以对代码进行类型检查。这里,mypy 会经过我们bar 起初是一个 int ,然后变成了 float。这些问题都可以在不运行代码的情况下被发现。 $ pyflakes foobar.py foobar.py:6: redefinition of unused 'foo' from line 3 foobar.py:11: undefined name 'baz' $ mypy foobar.py foobar.py:6: error: Incompatible types in assignment (expression has type \"int\", variable has type \"Callable[[], Any]\") foobar.py:9: error: Incompatible types in assignment (expression has type \"float\", variable has type \"int\") foobar.py:11: error: Name 'baz' is not defined Found 3 errors in 1 file (checked 1 source file) ","date":"2023-06-13","objectID":"/2023-06-13-debug/:5:1","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"shell 在 shell 工具那一节课的时候,我们介绍了 shellcheck,这是一个类似的工具,但它是应用于 shell 脚本的。 #!/bin/sh # Exampl#e: a typical script with several problems for f in $(ls *.m3u) do grep -qi hq.*mp3 $f \\ \u0026\u0026 echo -e 'Playlist $f contains a HQ file in mp3 format' done 也可以在 Vim 中可以通过 neomake 插件来集成 shellcheck git clone xxx.git ~/.vim/pack/vendor/start/xxx ","date":"2023-06-13","objectID":"/2023-06-13-debug/:5:2","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"工具集成 大多数的编辑器和 IDE 都支持在编辑界面显示这些工具的分析结果、高亮有警告和错误的位置。 这个过程通常称为 code linting 。风格检查或安全检查的结果同样也可以进行相应的显示。 在 vim 中,有 ale 或 syntastic 可以帮助您做同样的事情。 在 Python 中, pylint 和 pep8 是两种用于进行风格检查的工具,而 bandit 工具则用于检查安全相关的问题。 对于其他语言的开发者来说,静态分析工具可以参考这个列表:Awesome Static Analysis (您也许会对 Writing 一节感兴趣) 。对于 linters 则可以参考这个列表: Awesome Linters。 对于风格检查和代码格式化,还有以下一些工具可以作为补充:用于 Python 的 black、用于 Go 语言的 gofmt、用于 Rust 的 rustfmt 或是用于 JavaScript, HTML 和 CSS 的 prettier 。这些工具可以自动格式化您的代码,这样代码风格就可以与常见的风格保持一致。 尽管您可能并不想对代码进行风格控制,标准的代码风格有助于方便别人阅读您的代码,也可以方便您阅读它的代码。 ","date":"2023-06-13","objectID":"/2023-06-13-debug/:5:3","tags":["debug"],"title":"调试代码常用方法","uri":"/2023-06-13-debug/"},{"categories":["知识整理"],"content":"构建工具通常需要定义依赖、目标和规则。 make 是最常用的构建系统之一,您会发现它通常被安装到了几乎所有基于 UNIX 的系统中。make并不完美,但是对于中小型项目来说,它已经足够好了。当您执行 make 时,它会去参考当前目录下名为 Makefile 的文件。所有构建目标、相关依赖和规则都需要在该文件中定义,它看上去是这样的: paper.pdf: paper.tex plot-data.png pdflatex paper.tex plot-%.png: %.dat plot.py ./plot.py -i $*.dat -o $@ .PHONY: clean clean: rm *.pdf *.aux *.log *.png #git ls-files -o | xargs rm -f 这个文件中的指令,即如何使用右侧文件构建左侧文件的规则。或者,换句话说,冒号左侧的是构建目标,冒号右侧的是构建它所需的依赖。缩进的部分是从依赖构建目标时需要用到的一段程序。在 make 中,第一条指令还指明了构建的目的,如果您使用不带参数的 make,这便是我们最终的构建结果。或者,您可以使用这样的命令来构建其他目标:make plot-data.png。 规则中的 % 是一种模式,它会匹配其左右两侧相同的字符串。例如,如果目标是 plot-foo.png, make 会去寻找 foo.dat 和 plot.py 作为依赖。现在,让我们看看如果在一个空的源码目录中执行make 会发生什么? $make make: *** No rule to make target 'paper.tex', needed by 'paper.pdf'. Stop. make 会告诉我们,为了构建出paper.pdf,它需要 paper.tex,但是并没有一条规则能够告诉它如何构建该文件。让我们构建它吧! $touch paper.tex $make make: *** No rule to make target 'plot-data.png', needed by 'paper.pdf'. Stop. 哟,有意思,我们是有构建 plot-data.png 的规则的,但是这是一条模式规则。因为源文件data.dat 并不存在,因此 make 就会告诉您它不能构建 plot-data.png,让我们创建这些文件: $cat paper.tex \\documentclass{article} \\usepackage{graphicx} \\begin{document} \\includegraphics[scale=0.65]{plot-data.png} \\end{document} $cat plot.py #!/usr/bin/env python import matplotlib import matplotlib.pyplot as plt import numpy as np import argparse parser = argparse.ArgumentParser() parser.add_argument('-i', type=argparse.FileType('r')) parser.add_argument('-o') args = parser.parse_args() data = np.loadtxt(args.i) plt.plot(data[:, 0], data[:, 1]) plt.savefig(args.o) $cat data.dat 1 1 2 2 3 3 4 4 5 8 当我们执行 make 时会发生什么? $make ./plot.py -i data.dat -o plot-data.png pdflatex paper.tex ... lots of output ... 看!PDF ! 如果再次执行 make 会怎样? $make make: 'paper.pdf' is up to date. 什么事情都没做!为什么?好吧,因为它什么都不需要做。**make 回去检查之前的构建是因其依赖改变而需要被更新。**让我们试试修改 paper.tex 在重新执行 make: $vim paper.tex # edit $make pdflatex paper.tex ... 注意 make 并没有重新构建 plot.py,因为没必要;plot-data.png 的所有依赖都没有发生改变。 更多用 make 构建目标参考 Standard Targets (GNU make)。 大多数的 makefiles 都提供了 一个名为 clean 的构建目标,这并不是说我们会生成一个名为clean的文件,而是我们可以使用它清理文件,让 make 重新构建。您可以理解为它的作用是“撤销”所有构建步骤。在上面的 makefile 中为paper.pdf实现一个clean 目标。您需要将构建目标设置为phony。您也许会发现 git ls-files 子命令很有用。其他一些有用的 make 构建目标可以在这里找到; 指定版本要求的方法很多,让我们学习一下 Rust 的构建系统的依赖管理。大多数的包管理仓库都支持类似的语法。对于每种语法(尖号、波浪号、通配符、比较、乘积),构建一种场景使其具有实际意义; Git 可以作为一个简单的 CI 系统来使用,在任何 git 仓库中的 .git/hooks 目录中,您可以找到一些文件(当前处于未激活状态),它们的作用和脚本一样,当某些事件发生时便可以自动执行。请编写一个pre-commit 钩子,它会在提交前执行 make paper.pdf并在出现构建失败的情况拒绝您的提交。这样做可以避免产生包含不可构建版本的提交信息; 基于 GitHub Pages 创建任意一个可以自动发布的页面。添加一个GitHub Action 到该仓库,对仓库中的所有 shell 文件执行 shellcheck(方法之一); 构建属于您的 GitHub action,对仓库中所有的.md文件执行proselint 或 write-good,在您的仓库中开启这一功能,提交一个包含错误的文件看看该功能是否生效。 ","date":"2023-05-31","objectID":"/2023-05-31-make/:0:0","tags":["make"],"title":"make 构建工具介绍","uri":"/2023-05-31-make/"},{"categories":["知识整理"],"content":" 无界面情况下的唯一选择 命令行环境的学习主要包括 任务控制:Shell 操作和进程的关系-\u003e需要了解进程信号 终端多路复用:如何在终端完成多面板、多窗口的任务-\u003e需要会使用相关工具 dotfiles 管理-\u003e需要管理起来dotfiles ssh 应用:命令行工具和 ssh 工具的使用-\u003e需要掌握一套高效的操作远端设备的流程 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:0:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"任务控制 Shell 会使用 UNIX 提供的信号机制执行进程间通信。当一个进程接收到信号时,它会停止执行、处理该信号并基于信号传递的信息来改变其执行。就这一点而言,信号是一种软件中断。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:1:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"结束进程 当我们输入 Ctrl-C 时,shell 会发送一个SIGINT 信号到进程。 下面这个 Python 程序向您展示了捕获信号SIGINT 并忽略它的基本操作,它并不会让程序停止。为了停止这个程序,我们需要使用SIGQUIT 信号,通过输入Ctrl-\\可以发送该信号。 #!/usr/bin/env python import signal, time def handler(signum, time): print(\"\\nI got a SIGINT, but I am not stopping\") signal.signal(signal.SIGINT, handler) i = 0 while True: time.sleep(.1) print(\"\\r{}\".format(i), end=\"\") i += 1 如果我们向这个程序发送两次 SIGINT ,然后再发送一次 SIGQUIT,程序会有什么反应?注意 ^ 是我们在终端输入Ctrl 时的表示形式: $ python sigint.py 24^C I got a SIGINT, but I am not stopping 26^C I got a SIGINT, but I am not stopping 30^\\[1] 39913 quit python sigint.pyƒ 尽管 SIGINT 和 SIGQUIT 都常常用来发出和终止程序相关的请求。SIGTERM 则是一个更加通用的、也更加优雅地退出信号。为了发出这个信号我们需要使用 kill 命令, 它的语法是: kill -TERM \u003cPID\u003e。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:2:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"暂停和后台执行进程 信号可以让进程做其他的事情,而不仅仅是终止它们。例如,SIGSTOP 会让进程暂停。在终端中,键入 Ctrl-Z 会让 shell 发送 SIGTSTP 信号,SIGTSTP是 Terminal Stop 的缩写(即terminal版本的SIGSTOP)。 我们可以使用 fg 或 bg 命令恢复暂停的工作。它们分别表示在前台继续或在后台继续。 jobs 命令会列出当前终端会话中尚未完成的全部任务。您可以使用 pid 引用这些任务(也可以用 pgrep 找出 pid)。更加符合直觉的操作是您可以使用百分号 + 任务编号(jobs 会打印任务编号)来选取该任务。如果要选择最近的一个任务,可以使用 $! 这一特殊参数。 还有一件事情需要掌握,那就是命令中的 \u0026 后缀可以让命令在直接在后台运行,这使得您可以直接在 shell 中继续做其他操作,不过它此时还是会使用 shell 的标准输出,这一点有时会比较恼人(这种情况可以使用 shell 重定向处理)。 后台的进程仍然是您的终端进程的子进程,一旦您关闭终端(会发送另外一个信号SIGHUP),这些后台的进程也会终止。您可以使用 nohup (一个用来忽略 SIGHUP 的封装) 来运行程序防止终端关闭的时候连同子进程一起关闭。 针对已经运行的程序,可以使用disown 。 除此之外,您可以使用终端多路复用器来实现,下一章节我们会进行详细地探讨。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:3:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"例子 下面这个简单的会话中展示来了些概念的应用。 $ sleep 1000 # 让已经在运行的进程转到后台运行,您可以键入`Ctrl-Z` ^Z [1] + 18653 suspended sleep 1000 # 在后台运行,且终端关闭不受影响 $ nohup sleep 2000 \u0026 [2] 18745 appending output to nohup.out # 列出当前终端会话中尚未完成的全部任务 $ jobs [1] + suspended sleep 1000 [2] - running nohup sleep 2000 # 继续执行子进程1 $ bg %1 [1] - 18653 continued sleep 1000 $ jobs [1] - running sleep 1000 [2] + running nohup sleep 2000 # 停止进程1 $ kill -STOP %1 [1] + 18653 suspended (signal) sleep 1000 $ jobs [1] + suspended (signal) sleep 1000 [2] - running nohup sleep 2000 # 终止进程1 $ kill -SIGHUP %1 [1] + 18653 hangup sleep 1000 $ jobs [2] + running nohup sleep 2000 # 终止进程2,不受影响 $ kill -SIGHUP %2 $ jobs [2] + running nohup sleep 2000 # kill -SIGTERM $ kill %2 [2] + 18745 terminated nohup sleep 2000 $ jobs ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:3:1","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"信号 SIGKILL 是一个特殊的信号,它不能被进程捕获并且它会马上结束该进程。不过这样做会有一些副作用,例如留下孤儿进程。 wiki-Signal man signal kill -l 来获取更多关于信号的信息。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:4:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"终端多路复用 当您在使用命令行时,您通常会希望同时执行多个任务。举例来说,您可以想要同时运行您的编辑器,并在终端的另外一侧执行程序。尽管再打开一个新的终端窗口也能达到目的,使用终端多路复用器则是一种更好的办法。 像 tmux 这类的终端多路复用器可以允许我们基于面板和标签分割出多个终端窗口,这样您便可以同时与多个 shell 会话进行交互。 不仅如此,终端多路复用使我们可以分离当前终端会话并在将来重新连接。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:5:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"tmux 现在最流行的终端多路器是 tmux。tmux 是一个高度可定制的工具,您可以使用相关快捷键创建多个标签页并在它们间导航。 tmux 的快捷键需要我们掌握,它们都是类似 \u003cC-b\u003e x 这样的组合,即需要先按下Ctrl+b,松开后再按下 x。tmux 中对象的继承结构如下: 会话 - 每个会话都是一个独立的工作区,其中包含一个或多个窗口 tmux 开始一个新的会话 tmux new -s NAME 以指定名称开始一个新的会话 tmux ls 列出当前所有会话 在 tmux 中输入 \u003cC-b\u003e d ,将当前会话分离 tmux a 重新连接最后一个会话。您也可以通过 -t 来指定具体的会话 窗口 - 相当于编辑器或是浏览器中的标签页,从视觉上将一个会话分割为多个部分 \u003cC-b\u003e c 创建一个新的窗口,使用 \u003cC-d\u003e关闭 \u003cC-b\u003e N 跳转到第 N 个窗口,注意每个窗口都是有编号的 \u003cC-b\u003e p 切换到前一个窗口 \u003cC-b\u003e n 切换到下一个窗口 \u003cC-b\u003e , 重命名当前窗口 \u003cC-b\u003e w 列出当前所有窗口 面板 - 像 vim 中的分屏一样,面板使我们可以在一个屏幕里显示多个 shell \u003cC-b\u003e \" 水平分割 \u003cC-b\u003e % 垂直分割 \u003cC-b\u003e \u003c方向\u003e 切换到指定方向的面板,\u003c方向\u003e 指的是键盘上的方向键 \u003cC-b\u003e z 切换当前面板的缩放 \u003cC-b\u003e [ 开始往回卷动屏幕。您可以按下空格键来开始选择,回车键复制选中的部分 \u003cC-b\u003e \u003c空格\u003e 在不同的面板排布间切换 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:6:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"扩展阅读 tmux 快速入门教程 是一份 tmux 快速入门教程 自定义 tmux advance tmux 文章则更加详细,它包含了 screen 命令 screen 大多数 UNIX 系统中都默认安装有screen。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:7:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"配置文件(Dotfiles) 很多程序的配置都是通过纯文本格式的被称作点文件的配置文件来完成的。 实际上,很多程序都要求您在 shell 的配置文件中包含一行类似 export PATH=\"$PATH:/path/to/program/bin\" 的命令,这样才能确保这些程序能够被 shell 找到。 还有一些其他的工具也可以通过点文件进行配置: bash - ~/.bashrc, ~/.bash_profile git - ~/.gitconfig vim - ~/.vimrc 和 ~/.vim 目录 ssh - ~/.ssh/config tmux - ~/.tmux.conf 我们应该如何管理这些配置文件呢,它们应该在它们的文件夹下,并使用版本控制系统进行管理,然后通过脚本将其 符号链接 到需要的地方。 配置文件中需要放些什么? 您可以通过在线文档和帮助手册了解所使用工具的设置项。 另一个方法是在网上搜索有关特定程序的文章,作者们在文章中会分享他们的配置。 还有一种方法就是直接浏览其他人的配置文件:您可以在这里找到无数的dotfiles 仓库 —— 其中最受欢迎的那些可以在这里找到(我们建议您不要直接复制别人的配置)。这里 也有一些非常有用的资源。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:8:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"可移植性 配置文件的一个常见的痛点是它可能并不能在多种设备、多种Shell上生效。一下一些技巧可以轻松达成这些目的。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:9:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"配置文件 if 语句 if [[ \"$(uname)\" == \"Linux\" ]]; then {do_something}; fi # 使用和 shell 相关的配置时先检查当前 shell 类型 if [[ \"$SHELL\" == \"zsh\" ]]; then {do_something}; fi # 您也可以针对特定的设备进行配置 if [[ \"$(hostname)\" == \"myServer\" ]]; then {do_something}; fi ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:9:1","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"配置文件支持 include 功能 。例如:~/.gitconfig 可以这样编写: [include] path = ~/.gitconfig_local 然后我们可以在日常使用的设备上创建配置文件 ~/.gitconfig_local 来包含与该设备相关的特定配置。 在不同的程序之间共享某些配置。例如,在 bash 和 zsh 中同时启用一些别名,您可以把它们写在 .aliases 里,然后在这两个 shell 里应用: # Test if ~/.aliases exists and source it if [ -f ~/.aliases ]; then source ~/.aliases fi ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:9:2","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"别名 输入一长串包含许多选项的命令会非常麻烦。因此,大多数 shell 都支持设置别名。shell 的别名相当于一个长命令的缩写,shell 会自动将其替换成原本的命令。例如,bash 中的别名语法如下: alias alias_name=\"command_to_alias arg1 arg2\" 注意, =两边是没有空格的,因为 alias 是一个 shell 命令,它只接受一个参数。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:10:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"例子 # 创建常用命令的缩写 alias ll=\"ls -lh\" # 能够少输入很多 alias gs=\"git status\" alias gc=\"git commit\" alias v=\"vim\" # 手误打错命令也没关系 alias sl=ls # 重新定义一些命令行的默认行为 alias mv=\"mv -i\" # -i prompts before overwrite alias mkdir=\"mkdir -p\" # -p make parent dirs as needed alias df=\"df -h\" # -h prints human readable format # 别名可以组合使用 alias la=\"ls -A\" alias lla=\"la -l\" # 在忽略某个别名 \\ls # 或者禁用别名 unalias la # 获取别名的定义 alias ll # 会打印 ll='ls -lh' 值得注意的是,在默认情况下 shell 并不会保存别名。为了让别名持续生效,您需要将配置放进 shell 的启动文件里,像是.bashrc 或 .zshrc。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:10:1","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"远端设备 对于程序员来说,在他们的日常工作中通过安全 shell(SSH)使用远程服务器已经非常普遍了。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:11:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"执行命令 ssh 的一个经常被忽视的特性是它可以直接远程执行命令。 ssh foobar@server ls 可以直接在用foobar的命令下执行 ls 命令。 想要配合管道来使用也可以, ssh foobar@server ls | grep PATTERN 会在本地查询远端 ls 的输出而 ls | ssh foobar@server grep PATTERN 会在远端对本地 ls 输出的结果进行查询。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:12:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"SSH 密钥 基于密钥的验证机制使用了密码学中的公钥,我们只需要向服务器证明客户端持有对应的私钥,而不需要公开其私钥。这样您就可以避免每次登录都输入密码的麻烦了秘密就可以登录。不过,私钥(通常是 ~/.ssh/id_rsa 或者 ~/.ssh/id_ed25519) 等效于您的密码,所以一定要好好保存它。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:13:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"密钥生成 使用 ssh-keygen 命令可以生成一对密钥: ssh-keygen -o -a 100 -t ed25519 -f ~/.ssh/id_ed25519 如果您曾经配置过使用 SSH 密钥推送到 GitHub,那么可能您已经完成了这里 介绍的这些步骤,并且已经有了一个可用的密钥对。要检查您是否持有密码并验证它,您可以运行 ssh-keygen -y -f /path/to/key. ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:13:1","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"基于密钥的认证机制 ssh 会查询 .ssh/authorized_keys 来确认那些用户可以被允许登录。您可以通过下面的命令将一个公钥拷贝到这里: cat .ssh/id_ed25519 | ssh foobar@remote 'cat \u003e\u003e ~/.ssh/authorized_keys' 如果支持 ssh-copy-id 的话,可以使用下面这种更简单的解决方案: ssh-copy-id -i .ssh/id_ed25519.pub foobar@remote ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:13:2","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"通过 SSH 复制文件 使用 ssh 复制文件有很多方法: ssh+tee, 最简单的方法是执行 ssh 命令,然后通过这样的方法利用标准输入实现 cat localfile | ssh remote_server tee serverfile。回忆一下,tee 命令会将标准输出写入到一个文件; scp :当需要拷贝大量的文件或目录时,使用scp 命令则更加方便,因为它可以方便的遍历相关路径。语法如下:scp path/to/local_file remote_host:path/to/remote_file; rsync 对 scp 进行了改进,它可以检测本地和远端的文件以防止重复拷贝。它还可以提供一些诸如符号连接、权限管理等精心打磨的功能。甚至还可以基于 --partial标记实现断点续传。rsync 的语法和scp类似; ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:14:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"端口转发 很多情况下我们都会遇到软件需要监听特定设备的端口。如果是在您的本机,可以使用 localhost:PORT 或 127.0.0.1:PORT。但是如果需要监听远程服务器的端口该如何操作呢?这种情况下远端的端口并不会直接通过网络暴露给您。 此时就需要进行 端口转发。端口转发有两种,一种是本地端口转发和远程端口转发(参见下图,该图片引用自这篇StackOverflow 文章)中的图片。 本地端口转发 远程端口转发 常见的情景是使用本地端口转发,即远端设备上的服务监听一个端口,而您希望在本地设备上的一个端口建立连接并转发到远程端口上。例如,我们在远端服务器上运行 Jupyter notebook 并监听 8888 端口。 然后,建立从本地端口 9999 的转发,使用 ssh -L 9999:localhost:8888 foobar@remote_server 。这样只需要访问本地的 localhost:9999 即可。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:15:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"SSH 配置 我们已经介绍了很多参数。为它们创建一个别名是个好想法,我们可以这样做: alias my_server=\"ssh -i ~/.id_ed25519 --port 2222 -L 9999:localhost:8888 foobar@remote_server 不过,更好的方法是使用 ~/.ssh/config. Host vm User foobar HostName 172.16.174.141 Port 2222 IdentityFile ~/.ssh/id_ed25519 LocalForward 9999 localhost:8888 ## 在配置文件中也可以使用通配符 Host *.mit.edu User foobaz 这么做的好处是,使用 ~/.ssh/config 文件来创建别名,类似 scp、rsync和mosh的这些命令都可以读取这个配置并将设置转换为对应的命令行选项。 注意,~/.ssh/config 文件也可以被当作配置文件,而且一般情况下也是可以被导入其他配置文件的。不过,如果您将其公开到互联网上,那么其他人都将会看到您的服务器地址、用户名、开放端口等等。这些信息可能会帮助到那些企图攻击您系统的黑客,所以请务必三思。 服务器侧的配置通常放在 /etc/ssh/sshd_config。您可以在这里配置免密认证、修改 ssh 端口、开启 X11 转发等等。 您也可以为每个用户单独指定配置。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:16:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"杂项 连接远程服务器的一个常见痛点是遇到由关机、休眠或网络环境变化导致的掉线。如果连接的延迟很高也很让人讨厌。Mosh(即 mobile shell )对 ssh 进行了改进,它允许连接漫游、间歇连接及智能本地回显。 有时将一个远端文件夹挂载到本地会比较方便, sshfs 可以将远端服务器上的一个文件夹挂载到本地,然后您就可以使用本地的编辑器了。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:17:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"Shell \u0026 框架 \u0026 模拟器 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:18:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"Shell 在 shell 工具和脚本那节课中我们已经介绍了 bash shell,因为它是目前最通用的 shell,大多数的系统都将其作为默认 shell。但是,它并不是唯一的选项。 例如,zsh shell 是 bash 的超集并提供了一些方便的功能: 智能替换, ** 行内替换/通配符扩展 拼写纠错 更好的 tab 补全和选择 路径展开 (cd /u/lo/b 会被展开为 /usr/local/bin) ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:19:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"框架 框架 也可以改进您的 shell。比较流行的通用框架包括prezto 或 oh-my-zsh。还有一些更精简的框架,它们往往专注于某一个特定功能,例如zsh 语法高亮 或 zsh 历史子串查询。 像 fish 这样的 shell 包含了很多用户友好的功能,其中一些特性包括: 向右对齐 命令语法高亮 历史子串查询 基于手册页面的选项补全 更智能的自动补全 提示符主题 需要注意的是,使用这些框架可能会降低您 shell 的性能,尤其是如果这些框架的代码没有优化或者代码过多。您随时可以测试其性能或禁用某些不常用的功能来实现速度与功能的平衡。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:20:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"终端模拟器 和自定义 shell 一样,花点时间选择适合您的 终端模拟器并进行设置是很有必要的。有许多终端模拟器(例如iTerm2)可供您选择(这里有一些关于它们之间比较的信息) 您会花上很多时间在使用终端上,因此研究一下终端的设置是很有必要的,您可以从下面这些方面来配置您的终端: 字体选择 彩色主题 快捷键 标签页/面板支持 回退配置 性能(像 Alacritty 或者 kitty 这种比较新的终端,它们支持GPU加速)。 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:21:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"More ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:22:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":["知识整理"],"content":"TODO 开始使用多路复用 继续维护dotfiles 总结一套操作远端设备的流程,并不断优化升级 ","date":"2023-05-27","objectID":"/2023-05-27-cmd-env/:23:0","tags":["命令行"],"title":"命令行环境使用指南","uri":"/2023-05-27-cmd-env/"},{"categories":null,"content":" 利己可以,损人不行。 跟人谈事情之前,需要想清楚自己的决心。 有了钱和底气,念头才会更加通达,手脚展开。 不想和人打交道的时候,也不能敷衍,也要集中精力对付。 ","date":"2023-02-08","objectID":"/talks/2023-02-08/:0:0","tags":null,"title":"红顶商人胡雪岩的交际之道","uri":"/talks/2023-02-08/"},{"categories":["知识整理"],"content":"Shell 命令行数据处理是在 Unix 系统处理大数据绕不过去的技能。 学习需要和场景相结合,在熟悉 awk、paste 等工具的基础上,根据实际需求迭代工具集,并且记录例子。 ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:0:0","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"数据整理 ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:1:0","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"sed sed 的正则表达式有些时候是比较奇怪的,它需要你在这些模式前添加\\才能使其具有特殊含义。或者,您也可以添加-E选项来支持这些匹配。 查找碰撞服务器的用户 ssh myserver journalctl | grep sshd | grep \"Disconnected from\" | sed -E 's/.*Disconnected from (invalid |authenticating )?user (.*) [^ ]+ port [0-9]+( \\[preauth\\])?$/\\2/' | sort | uniq -c | sort -nk1,1 | tail -n10 | awk '{print $2}' | paste -sd, sort 会对其输入数据进行排序,默认情况下是按照字典序排序 uniq -c 会把连续出现的行折叠为一行并使用出现次数作为前缀 sort -k1,1 则表示“仅基于以空格分割的第一列进行排序”。,n 部分表示“仅排序到第 n 个部分”,默认情况是到行尾 awk '{print $2}' 对于每一行文本,打印其第二个部分,也就是用户名 paste命令来合并行(-s),并指定一个分隔符进行分割 (-d) ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:1:1","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"awk awk 其实是一种编程语言,只不过它碰巧非常善于处理文本。 awk 程序接受一个模式串(可选),以及一个代码块,指定当模式匹配时应该做何种操作。默认当模式串即匹配所有行(上面命令中当用法)。 在代码块中,$0 表示整行的内容,$1 到 $n 为一行中的 n 个区域,区域的分割基于 awk 的域分隔符(默认是空格,可以通过-F来修改)。 既然 awk 是一种编程语言,那么则可以这样: BEGIN { rows = 0 } $1 == 1 \u0026\u0026 $2 ~ /^c[^ ]*e$/ { rows += $1 } END { print rows } BEGIN 也是一种模式,它会匹配输入的开头( END 则匹配结尾)。然后,对每一行第一个部分进行累加,最后将结果输出。事实上,我们完全可以抛弃 grep 和 sed ,因为 awk 就可以解决所有问题。 ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:1:2","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"数据分析 ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:2:0","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"计算 paste 将每行的数字加起来,bc -l 计算公式 | paste -sd+ | bc -l ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:2:1","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"统计 R 也是一种编程语言,它非常适合被用来进行数据分析和绘制图表。这里我们不会讲的特别详细, 您只需要知道summary 可以打印某个向量的统计结果。我们将输入的一系列数据存放在一个向量后,利用 R 语言就可以得到我们想要的统计数据。 ssh myserver journalctl | grep sshd | grep \"Disconnected from\" | sed -E 's/.*Disconnected from (invalid |authenticating )?user (.*) [^ ]+ port [0-9]+( \\[preauth\\])?$/\\2/' | sort | uniq -c | awk '{print $1}' | R --slave -e 'x \u003c- scan(file=\"stdin\", quiet=TRUE); summary(x)' ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:2:2","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"绘图 ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:2:3","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"整理二进制数据 虽然到目前为止我们的讨论都是基于文本数据,但对于二进制文件其实同样有用。例如我们可以用 ffmpeg 从相机中捕获一张图片,将其转换成灰度图后通过 SSH 将压缩后的文件发送到远端服务器,并在那里解压、存档并显示。 ffmpeg -loglevel panic -i /dev/video0 -frames 1 -f image2 - | convert - -colorspace gray - | gzip | ssh mymachine 'gzip -d | tee copy.jpg | env DISPLAY=:0 feh -' ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:2:4","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"其他类型文件处理 如果获取的是 HTML 数据,那么pup可能会有帮助。 对于 JSON 类型的数据,可以试试jq。 ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:2:5","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"Tip ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:3:0","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"在远端处理大数据 先在远端机器上过滤文本内容,然后再将结果传输到本机。 # 分页器 ssh myserver 'journalctl | grep sshd | grep \"Disconnected from\"' | less # 重定向 ssh myserver 'journalctl | grep sshd | grep \"Disconnected from\"' \u003e ssh.log ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:3:1","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"利用数据整理来确定参数 有时候您要利用数据整理技术从一长串列表里找出你所需要安装或移除的东西。我们之前讨论的相关技术配合 xargs 即可实现: rustup toolchain list | grep nightly | grep -vE \"nightly-x86\" | sed 's/-x86.*//' | xargs rustup toolchain uninstall ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:3:2","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"原地替换 原地替换听上去很有诱惑力,例如: sed s/REGEX/SUBSTITUTION/ input.txt \u003e input.txt。但是这并不是一个明智的做法,为什么呢?还是说只有 sed是这样的? 查看 man sed 来完成这个问题。 # 表达式中后一个 input.txt会首先被清空,而且是发生在前的。所以前面一个input.txt在还没有被 sed 处理时已经为空了。 # 先备份文件 sed -i.bak s/REGEX/SUBSTITUTION/ input.txt ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:3:3","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"例子 ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:4:0","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"统计字典 统计 words 文件 (/usr/share/dict/words) 中包含至少三个a 且不以's 结尾的单词个数。这些单词中,出现频率前三的末尾两个字母是什么? sed的 y命令,或者 tr 程序也许可以帮你解决大小写的问题。共存在多少种词尾两字母组合?还有一个很 有挑战性的问题:哪个组合从未出现过? # 共存在多少种字母组合 cat /usr/share/dict/words | grep -v \"'s$\" | grep -iE \"^([^a]*a){3}.*$\" | wc -l # 哪些组合未出现过 diff \u003c(cat occurance.txt) \u003c(cat all.txt) --unchanged-group-format='' | wc -l ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:4:1","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"More ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:5:0","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"TODO 在实际场景中多使用多思考,熟悉并扩充工具 记录实践策略 ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:5:1","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"Ref RegexOne - Learn Regular Expressions - Lesson 1: An Introduction, and the ABCs regex101: build, test, and debug regex How to Find or Validate an Email Address In search of the perfect URL validation regex ","date":"2023-01-11","objectID":"/2023-01-11-data-analysis/:5:2","tags":["Shell","数据处理"],"title":"Shell 命令行数据处理","uri":"/2023-01-11-data-analysis/"},{"categories":["知识整理"],"content":"学习性能分析,最开始是查看执行时间,然后用工具帮助排查问题,用资源监控辅助。 即使您的代码能够像您期望的一样运行,但是如果它消耗了您全部的 CPU 和内存,那么它显然也不是个好程序。算法课上我们通常会介绍大 O 标记法,但却没教给我们如何找到程序中的热点。 鉴于 过早的优化是万恶之源,您需要学习性能分析和监控工具,它们会帮助您找到程序中最耗时、最耗资源的部分,这样您就可以有针对性的进行性能优化。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:0:0","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"计时 和调试代码类似,大多数情况下我们只需要打印两处代码之间的时间即可发现问题。 通常来说,用户时间+系统时间代表了您的进程所消耗的实际 CPU (更详细的解释可以参照这篇文章)。 真实时间 - 从程序开始到结束流失掉的真实时间,包括其他进程的执行时间以及阻塞消耗的时间(例如等待 I/O 或网络); User - CPU 执行用户代码所花费的时间; Sys - CPU 执行系统内核代码所花费的时间。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:1:0","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"Python 下面这个例子中,我们使用了 Python 的 time模块。 import time, random n = random.randint(1, 10) * 100 # 获取当前时间 start = time.time() # 执行一些操作 print(\"Sleeping for {} ms\".format(n)) time.sleep(n/1000) # 比较当前时间和起始时间 print(time.time() - start) # Output # Sleeping for 500 ms # 0.5713930130004883 也可以用 [timeit](timeit — 测量小代码片段的执行时间 — Python 3.11.2 文档) 计算一小段 Python 代码的耗时,它有 命令行接口以及一个 可调用方法。 python -m timeit -r 10 -vp -n 1000 -s 'flag=\"-\"' 'l=[str(i) for i in range(100)]' 'flag.join(l)' def test(): \"\"\"Stupid test function\"\"\" L = [i for i in range(100)] if __name__ == '__main__': import timeit print(timeit.timeit(\"test()\", setup=\"from __main__ import test\")) shell 例如,试着执行一个用于发起 HTTP 请求的命令并在其前面添加 time 前缀。网络不好的情况下您可能会看到下面的输出结果。请求花费了 2s 才完成,但是进程仅花费了 15ms 的 CPU 用户时间和 12ms 的 CPU 内核时间。 $ time curl https://missing.csail.mit.edu \u0026\u003e /dev/null real 0m2.561s user 0m0.015s sys 0m0.012s ","date":"2022-12-10","objectID":"/2022-12-10-profile/:1:1","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"性能分析工具(profilers) ","date":"2022-12-10","objectID":"/2022-12-10-profile/:2:0","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"CPU 大多数情况下,当人们提及性能分析工具的时候,通常指的是 CPU 性能分析工具。 CPU 性能分析工具有两种: 追踪分析器(tracing)及采样分析器(sampling)。 追踪分析器 会记录程序的每一次函数调用,而采样分析器则只会周期性的监测(通常为每毫秒)您的程序并记录程序堆栈。它们使用这些记录来生成统计信息,显示程序在哪些事情上花费了最多的时间。 另外还有,Valgrind 的 Callgrind可让你运行程序并计算所有的时间花费以及所有调用堆栈(即哪个函数调用了另一个函数)。然后,它会生成带注释的代码版本,其中包含每行花费的时间。但是,它会使程序运行速度降低一个数量级,并且不支持线程。 还有,用于用户程序内核跟踪的eBPF 。如果需要低级的性能分析, bpftrace 值得一试。 Python 按函数分析 在 Python 中,我们使用 cProfile 模块来分析每次函数调用所消耗的时间。 在下面的例子中,我们实现了一个基础的 grep 命令: #!/usr/bin/env python import sys, re def grep(pattern, file): with open(file, 'r') as f: print(file) for i, line in enumerate(f.readlines()): pattern = re.compile(pattern) match = pattern.search(line) if match is not None: print(\"{}: {}\".format(i, line), end=\"\") if __name__ == '__main__': times = int(sys.argv[1]) pattern = sys.argv[2] for i in range(times): for file in sys.argv[3:]: grep(pattern, file) 我们可以使用下面的命令来对这段代码进行分析。通过它的输出我们可以知道,IO 消耗了大量的时间,编译正则表达式也比较耗费时间。因为正则表达式只需要编译一次,我们可以将其移动到 for 循环外面来改进性能。 $ python -m cProfile -s tottime grep.py 1000 '^(import|\\s*def)[^,]*$' *.py [omitted program output] ncalls tottime percall cumtime percall filename:lineno(function) 8000 0.266 0.000 0.292 0.000 {built-in method io.open} 8000 0.153 0.000 0.894 0.000 grep.py:5(grep) 17000 0.101 0.000 0.101 0.000 {built-in method builtins.print} 8000 0.100 0.000 0.129 0.000 {method 'readlines' of '_io._IOBase' objects} 93000 0.097 0.000 0.111 0.000 re.py:286(_compile) 93000 0.069 0.000 0.069 0.000 {method 'search' of '_sre.SRE_Pattern' objects} 93000 0.030 0.000 0.141 0.000 re.py:231(compile) 17000 0.019 0.000 0.029 0.000 codecs.py:318(decode) 1 0.017 0.017 0.911 0.911 grep.py:3(\u003cmodule\u003e) [omitted lines] 关于 Python 的 cProfile 分析器(以及其他一些类似的分析器),需要注意的是它显示的是每次函数调用的时间。看上去可能快到反直觉,尤其是如果您在代码里面使用了第三方的函数库,因为内部函数调用也会被看作函数调用。 按行分析 #!/usr/bin/env python import requests from bs4 import BeautifulSoup # 这个装饰器会告诉行分析器 # 我们想要分析这个函数 @profile def get_urls(): response = requests.get('https://missing.csail.mit.edu') s = BeautifulSoup(response.content, 'lxml') urls = [] for url in s.find_all('a'): urls.append(url['href']) if __name__ == '__main__': get_urls() 如果我们使用 Python 的 cProfile 分析器,我们会得到超过 2500 行的输出结果,即使对其进行排序,我仍然搞不懂时间到底都花在哪了。如果我们使用 line_profiler,它会基于行来显示时间: $ kernprof -l -v a.py Wrote profile results to urls.py.lprof Timer unit: 1e-06 s Total time: 0.636188 s File: a.py Function: get_urls at line 5 Line # Hits Time Per Hit % Time Line Contents ============================================================== 5 @profile 6 def get_urls(): 7 1 613909.0 613909.0 96.5 response = requests.get('https://missing.csail.mit.edu') 8 1 21559.0 21559.0 3.4 s = BeautifulSoup(response.content, 'lxml') 9 1 2.0 2.0 0.0 urls = [] 10 25 685.0 27.4 0.1 for url in s.find_all('a'): 11 24 33.0 1.4 0.0 urls.append(url['href']) 如果您希望了解更多相关信息,可以参考这篇 介绍性的文章。 profilehooks 是一个性能测试装饰器集合。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:2:1","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"内存 C 像 C 或者 C++ 这样的语言,内存泄漏会导致您的程序在使用完内存后不去释放它。为了应对内存类的 Bug,我们可以使用类似 Valgrind 这样的工具来检查内存泄漏问题。 Python 对于 Python 这类具有垃圾回收机制的语言,内存分析器也是很有用的,因为对于某个对象来说,只要有指针还指向它,那它就不会被回收。 下面这个例子及其输出,展示了 memory-profiler 是如何工作的(注意装饰器和 line-profiler 类似)。 @profile def my_func(): a = [1] * (10 ** 6) b = [2] * (2 * 10 ** 7) del b return a if __name__ == '__main__': my_func() $ python -m memory_profiler example.py Line # Mem usage Increment Line Contents ============================================== 3 @profile 4 5.97 MB 0.00 MB def my_func(): 5 13.61 MB 7.64 MB a = [1] * (10 ** 6) 6 166.20 MB 152.59 MB b = [2] * (2 * 10 ** 7) 7 13.61 MB -152.59 MB del b 8 13.61 MB 0.00 MB return a ","date":"2022-12-10","objectID":"/2022-12-10-profile/:2:2","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"事件分析 在我们使用strace调试代码的时候,您可能会希望忽略一些特殊的代码并希望在分析时将其当作黑盒处理。perf 命令将 CPU 的区别进行了抽象,它不会报告时间和内存的消耗,而是报告与您的程序相关的系统事件。 例如,perf 可以报告不佳的缓存局部性(poor cache locality)、大量的页错误(page faults)或活锁(livelocks)。下面是关于常见命令的简介: perf list - 列出可以被 pref 追踪的事件; perf stat COMMAND ARG1 ARG2 - 收集与某个进程或指令相关的事件; perf record COMMAND ARG1 ARG2 - 记录命令执行的采样信息并将统计数据储存在perf.data中; perf report - 格式化并打印 perf.data 中的数据。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:2:3","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"可视化 采样分析器 对于采样分析器来说,常见的显示 CPU 分析数据的形式是 火焰图,火焰图会在 Y 轴显示函数调用关系,并在 X 轴显示其耗时的比例。火焰图同时还是可交互的,您可以深入程序的某一具体部分,并查看其栈追踪(您可以尝试点击下面的图片)。 Flamegraphs 是对采样分析器结果的可视化工具。 [ 调用图 调用图和控制流图可以显示子程序之间的关系,它将函数作为节点并把函数调用作为边。将它们和分析器的信息(例如调用次数、耗时等)放在一起使用时,调用图会变得非常有用,它可以帮助我们分析程序的流程。 在 Python 中您可以使用 pycallgraph 来生成这些图片。 计算斐波那契数列 Python 代码,它为计算每个数字都定义了一个函数: #!/usr/bin/env python def fib0(): return 0 def fib1(): return 1 s = \"\"\"def fib{}(): return fib{}() + fib{}()\"\"\" if __name__ == '__main__': for n in range(2, 10): exec(s.format(n, n-1, n-2)) # from functools import lru_cache # for n in range(10): # exec(\"fib{} = lru_cache(1)(fib{})\".format(n, n)) print(eval(\"fib9()\")) 安装graphviz,brew install graphviz ,(如果您能够执行dot, 则说明已经安装了 GraphViz.) 安装 pycallgraph,pip install pycallgraph 使用 pycallgraph graphviz -- ./fib.py 来执行代码并查看pycallgraph.png 这个文件。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:2:4","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"资源监控 有时候,分析程序性能的第一步是搞清楚它所消耗的资源。程序变慢通常是因为它所需要的资源不够了。例如,没有足够的内存或者网络连接变慢的时候。 有很多很多的工具可以被用来显示不同的系统资源,例如 CPU 占用、内存使用、网络、磁盘使用等。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:3:0","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"通用监控 最流行的工具要数 htop,了,它是 top的改进版。htop 可以显示当前运行进程的多种统计信息。htop 有很多选项和快捷键,常见的有:\u003cF6\u003e 进程排序、 t 显示树状结构和 h 打开或折叠线程。 还可以留意一下 glances ,它的实现类似但是用户界面更好。 如果需要合并测量全部的进程, dstat 是也是一个非常好用的工具,它可以实时地计算不同子系统资源的度量数据,例如 I/O、网络、 CPU 利用率、上下文切换等等; ","date":"2022-12-10","objectID":"/2022-12-10-profile/:3:1","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"I/O 操作 iotop 可以显示实时 I/O 占用信息而且可以非常方便地检查某个进程是否正在执行大量的磁盘读写操作; ","date":"2022-12-10","objectID":"/2022-12-10-profile/:3:2","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"磁盘使用 df 可以显示每个分区的信息,而 du 则可以显示当前目录下每个文件的磁盘使用情况( disk usage)。-h 选项可以使命令以对人类(human)更加友好的格式显示数据;ncdu是一个交互性更好的 du ,它可以让您在不同目录下导航、删除文件和文件夹; ","date":"2022-12-10","objectID":"/2022-12-10-profile/:3:3","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"内存使用 free 可以显示系统当前空闲的内存。内存也可以使用 htop 这样的工具来显示; ","date":"2022-12-10","objectID":"/2022-12-10-profile/:3:4","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"打开文件 lsof 可以列出被进程打开的文件信息。 当我们需要查看某个文件是被哪个进程打开的时候,这个命令非常有用; 例如,执行 lsof | grep LISTEN 打印出所有监听端口的进程及相应的端口。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:3:5","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"网络连接和配置 ss 能帮助我们监控网络包的收发情况以及网络接口的显示信息。ss 常见的一个使用场景是找到端口被进程占用的信息。 如果要显示路由、网络设备和接口信息,您可以使用 ip 命令。注意,netstat 和 ifconfig 这两个命令已经被前面那些工具所代替了。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:3:6","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"网络使用 nethogs 和 iftop 是非常好的用于对网络占用进行监控的交互式命令行工具。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:3:7","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"专用工具 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:4:0","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"增加负载 如果您希望测试资源监控工具,您可以使用 stress 命令来为系统人为地增加负载。 执行 stress -c 3 并使用htop 对 CPU 消耗进行可视化。 执行taskset --cpu-list 0,2 stress -c 3 并可视化,会发现限制了 CPU 负载增加的数量。 阅读man taskset获取更多。 cgroups 也是一个控制系统资源的工具。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:4:1","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"基准测试 有时候,您只需要对黑盒程序进行基准测试,并依此对软件选择进行评估。 类似 hyperfine 这样的命令行可以帮您快速进行基准测试。例如,我们在 shell 工具和脚本那一节课中我们推荐使用 fd 来代替 find。我们这里可以用hyperfine来比较一下它们。 例如,下面的例子中,我们可以看到fd 比 find 要快 20 倍。 $ hyperfine --warmup 3 'fd -e jpg' 'find . -iname \"*.jpg\"' Benchmark #1: fd -e jpg Time (mean ± σ): 51.4 ms ± 2.9 ms [User: 121.0 ms, System: 160.5 ms] Range (min … max): 44.2 ms … 60.1 ms 56 runs Benchmark #2: find . -iname \"*.jpg\" Time (mean ± σ): 1.126 s ± 0.101 s [User: 141.1 ms, System: 956.1 ms] Range (min … max): 0.975 s … 1.287 s 10 runs Summary 'fd -e jpg' ran 21.89 ± 2.33 times faster than 'find . -iname \"*.jpg\"' ","date":"2022-12-10","objectID":"/2022-12-10-profile/:4:2","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"浏览器 和 debug 一样,浏览器也包含了很多不错的性能分析工具,可以用来分析页面加载,让我们可以搞清楚时间都消耗在什么地方(加载、渲染、脚本等等)。 更多关于 Firefox 和 Chrome的信息可以点击链接。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:4:3","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":"抓包工具 Wireshark 让 Wireshark 解密以 RSA 为密钥交换算法的 ssl 流量,需要给 wireshark 设置 ssl 证书私钥。 RSA 交换算法已经普遍被禁用了, 对于主流的 DH 或者 ECDH 交换算法, wireshark 无法解密。但是, 工业上的一个实际标准可以使 wireshark 解密这些 ssl 链接。 设置 SSLKEYLOGFILE 环境变量解密 HTTPS 流量 # 设置环境变量 touch ~/.sslkey.log sudo chmod 777 ~/.sslkey.log echo \"export SSLKEYLOGFILE=~/.sslkey.log\" \u003e\u003e ~/.zshrc source ~/.zshrc # 保存私钥,运行curl会检测这个环境变量SSLKEYLOGFILE, 它指向一个文件, curl会把 DH 交换的私钥保存到这个文件里面 curl --resolve www.baidu.com:443:183.232.231.174 https://www.baidu.com cat ~/.sslkey.log 配置 wireshark,打开 perferences -\u003e Protocols -\u003e TSL。配置 (Pre)-Master-Secret log filename,路径为上述 .sslkey.log 的全路径。 ","date":"2022-12-10","objectID":"/2022-12-10-profile/:4:4","tags":["性能分析"],"title":"常用性能分析工具","uri":"/2022-12-10-profile/"},{"categories":["知识整理"],"content":" 计算机的文字接口 Shell 处理 GUI 接口无法应对的剩下 20% 使用场景。 Shell 工具和脚本的学习,其实是三块内容,Shell 语言编程、Shell 场景\u0026工具,以及脚本编写。 Shell 语言编程,主要是词法、语法和应用,可以通过教程系统学习; Shell 场景\u0026工具,按照日常使用需要,积累在不同场景的工具和使用技巧,可以通过文档、man、tldr 等了解工具使用; 脚本编写,主要是掌握流程,以及持续实践。 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:0:0","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"Shell 语言 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:1:0","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"词法 \\ 转义字符,例如传递的参数包含空格的场景,\\ 引号:' 包裹纯字符串,\" 包裹命令 变量:$PATH ,变量赋值 foo=bar $0 : 脚本名 $1 $9 脚本的参数。 $1 是第一个参数,依此类推。 $@ : 所有参数 $# : 参数个数 $? : 前一个命令的返回值 $$ : 当前脚本的进程识别码 !! : 完整的上一条命令,包括参数。常见应用:当你因为权限不足执行命令失败时,可以使用 sudo !!再尝试一次。 $_ : 上一条命令的最后一个参数。如果你正在使用的是交互式 shell,你可以通过按下 Esc 之后键入 . 来获取这个值。 \u0026\u0026(与操作符)和 ||(或操作符):命令通常使用 STDOUT 来返回输出值,使用 STDERR 来返回错误及错误码,返回值 0 表示正常执行,其他所有非 0 的返回值都表示有错误发生。程序 true 的返回码永远是 0,false 的返回码永远是 1。false || echo \"Oops, fail\" ; :分隔同一行的多个命令 命令替换 $( CMD ) :被 CMD 输出结果替换掉 进程替换 \u003c( CMD ) :执行 CMD 并将结果输出到一个临时文件中,并将 \u003c( CMD ) 替换成临时文件名。例如,diff \u003c(ls foo) \u003c(ls bar) 会显示文件夹 foo 和 bar 中文件的区别。 通配符: ? 和 * 来匹配一个或任意个字符 花括号{} - 当你有一系列的指令,其中包含一段公共子串时,可以用花括号来自动展开这些命令。例如,{foo,bar}/{a..h} 创建 foo/a, foo/b, … foo/h, bar/a, bar/b, … bar/h 这些文件 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:1:1","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"语法 FOR-IF for file in \"$@\"; do grep foobar \"$file\" \u003e /dev/null 2\u003e /dev/null # 如果模式没有找到,则grep退出状态为 1 # 我们将标准输出流和标准错误流重定向到Null,因为我们并不关心这些信息 if [[ $? -ne 0 ]]; then echo \"File $file does not have any foobar, adding one\" echo \"# foobar\" \u003e\u003e \"$file\" fi done ","date":"2022-11-12","objectID":"/2022-11-12-shell/:1:2","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"Debug koalaman/shellcheck: ShellCheck, a static analysis tool for shell scripts 定位 sh/bash 脚本中的错误。 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:1:3","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"Tips 常见命令行标志参数及模式 命令行工具的用法千差万别,阅读 man 页面可以帮助你理解每种工具的用法。即便如此,下面我们将介绍一下命令行工具一些常见的共同功能。 大部分工具支持 --help 或者类似的标志参数(flag)来显示它们的简略用法。 会造成不可撤回操作的工具一般会提供“空运行”(dry run)标志参数,这样用户可以确认工具真实运行时会进行的操作。这些工具通常也会有“交互式”(interactive)标志参数,在执行每个不可撤回的操作前提示用户确认。 --version 或者 -V 标志参数可以让工具显示它的版本信息(对于提交软件问题报告非常重要)。 基本所有的工具支持使用 --verbose 或者 -v 标志参数来输出详细的运行信息。多次使用这个标志参数,比如 -vvv,可以让工具输出更详细的信息(经常用于调试)。同样,很多工具支持 --quiet 标志参数来抑制除错误提示之外的其他输出。 大多数工具中,使用 - 代替输入或者输出文件名意味着工具将从标准输入(standard input)获取所需内容,或者向标准输出(standard output)输出结果。 会造成破坏性结果的工具一般默认进行非递归的操作,但是支持使用“递归”(recursive)标志函数(通常是 -r)。 有的时候你可能需要向工具传入一个 看上去 像标志参数的普通参数,比如: 使用 rm 删除一个叫 -r 的文件; 在通过一个程序运行另一个程序的时候(ssh machine foo),向内层的程序(foo)传递一个标志参数。 这时候你可以使用特殊参数 -- 让某个程序 停止处理 -- 后面出现的标志参数以及选项(以 - 开头的内容): rm -- -r 会让 rm 将 -r 当作文件名; ssh machine --for-ssh -- foo --for-foo 的 -- 会让 ssh 知道 --for-foo 不是 ssh 的标志参数。 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:1:4","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"Shell 场景\u0026工具 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:2:0","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"查看命令行如何使用 --help tldr:tldr pages man ","date":"2022-11-12","objectID":"/2022-11-12-shell/:2:1","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"在 Shell 中导航 命令 cd ls pwd mv(用于重命名或移动文件) cp(拷贝文件) mkdir(新建文件夹) autojump/fasd: 查找最常用或最近使用的文件和目录 tree/broot/nnn/ranger: 概览目录结构 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:2:2","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"程序间创建链接 重定向: \u003c file 从文件输入, \u003e file 输出到文件, \u003e\u003e file 来向文件追加内容 管道 a | b :将 a 程序的输出作为 b 程序的输入 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:2:3","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"权限 ls -lht 的第一列 drwxr-xr-x nv staff 200B Feb 8 10:48 info.json 一共有 10 个位置。 第一个表示是否是目录,d 表示目录,-表示文件。 后续每三个字符构成一组(rwx), 文件所有者(nv),用户组(staff) 以及其他所有人具有的权限,其中 - 表示该用户不具备相应的权限。 命令 chmod ","date":"2022-11-12","objectID":"/2022-11-12-shell/:2:4","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"查找文件 find # 查找所有名称为src的文件夹 find . -name src -type d # 查找所有文件夹路径中包含test的python文件 find . -path '*/test/*.py' -type f # 查找前一天修改的所有文件 find . -mtime -1 # 查找所有大小在500k至10M的tar.gz文件 find . -size +500k -size -10M -name '*.tar.gz' # 删除全部扩展名为.tmp 的文件 find . -name '*.tmp' -exec rm {} \\; # 查找全部的 PNG 文件并将其转换为 JPG find . -name '*.png' -exec convert {} {}.jpg \\; fd 以模式 PATTERN 搜索的语法是 fd PATTERN。 locate locate 使用一个由 updatedb 负责更新的数据库,在大多数系统中 updatedb 都会通过 cron 每日更新。 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:2:5","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"查找代码 grep -C:获取查找结果的上下文(Context),grep -C5 会输出匹配结果前后五行 -v 将对结果进行反选 -R 会递归地进入子目录并搜索所有的文本文件 rg: ripgrep # 查找所有使用了 requests 库的文件 rg -t py 'import requests' # 查找所有没有写 shebang 的文件(包含隐藏文件) rg -u --files-without-match \"^#!\" # 查找所有的foo字符串,并打印其之后的5行 rg foo -A 5 # 打印匹配的统计信息(匹配的行和文件的数量) rg --stats PATTERN 类似还有:ack、ag ","date":"2022-11-12","objectID":"/2022-11-12-shell/:2:6","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"查找 Shell 命令 Ctrl+R 对命令历史记录进行回溯搜索 fzf 通用对模糊查找工具,多场景通用! ","date":"2022-11-12","objectID":"/2022-11-12-shell/:2:7","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"脚本 脚本应该指的是能够在开发环境下单独调用的程序,可以用 Shell 写,也可以用其他语言写。 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:3:0","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"Tips env 命令,利用环境变量中的程序来解析该脚本。 #!/usr/bin/env python 使用 Python VS Bash 脚本 VS 其他语言? 通常来说,Bash 脚本对于简短的一次性脚本有效,比如当你想要运行一系列的命令的时候。但是 Bash 脚本有一些比较奇怪的地方,这使得大型程序或脚本难以用 Bash 实现: Bash 对于简单的使用情形没什么问题,但是很难对于所有可能的输入都正确。例如,脚本参数中的空格会导致 Bash 脚本出错。 Bash 对于代码重用并不友好。因此,重用你先前已经写好的代码很困难。通常 Bash 中没有软件库的概念。 Bash 依赖于一些像 $? 或 $@ 的特殊字符指代特殊的值。其他的语言却会显式地引用,比如 exitCode 或 sys.args。 因此,对于大型或者更加复杂的脚本我们推荐使用更加成熟的脚本语言例如 Python 和 Ruby。 你可以找到很多用这些语言编写的,用来解决常见问题的在线库。 如果你发现某种语言实现了你所需要的特定功能库,最好的方式就是直接去使用那种语言。 source script.sh 和 ./script.sh 有什么区别? 这两种情况 script.sh 都会在 bash 会话中被读取和执行,不同点在于哪个会话执行这个命令。 对于 source 命令来说,命令是在当前的 bash 会话中执行的,因此当 source 执行完毕,对当前环境的任何更改(例如更改目录或是定义函数)都会留存在当前会话中。 单独运行 ./script.sh 时,当前的 bash 会话将启动新的 bash 会话(实例),并在新实例中运行命令 script.sh。 因此,如果 script.sh 更改目录,新的 bash 会话(实例)会更改目录,但是一旦退出并将控制权返回给父 bash 会话,父会话仍然留在先前的位置(不会有目录的更改)。 同样,如果 script.sh 定义了要在终端中访问的函数,需要用 source 命令在当前 bash 会话中定义这个函数。否则,如果你运行 ./script.sh,只有新的 bash 会话(进程)才能执行定义的函数,而当前的 shell 不能。 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:3:1","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"应用例子 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:4:0","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"对偶然出错的脚本调试 假设您有一个命令,它很少出错。因此为了在出错时能够对其进行调试,需要花费大量的时间重现错误并捕获输出。 编写一段 bash 脚本,运行如下的脚本直到它出错,将它的标准输出和标准错误流记录到文件,并在最后输出所有内容,以及在失败前共运行了多少次。 #!/bin/bash count=1 while true do ./run.sh \u003e\u003e run.log 2\u003e\u00261 if [[ $? -ne 0 ]]; then cat get42.log echo \"fail after $count times\" break fi ((count++)) done ","date":"2022-11-12","objectID":"/2022-11-12-shell/:4:1","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"查找文件并压缩 编写一个命令,它可以递归地查找文件夹中所有的 HTML 文件,并将它们压缩成 zip 文件。注意,即使文件名中包含空格,您的命令也应该能够正确执行(提示:查看 xargs 的参数-d,译注:MacOS 上的 xargs 没有-d,查看这个sharkdp/fd: A simple, fast and user-friendly alternative to ‘find’) # generate html files mkdir a b c touch {a,b,c}/{a..d}.{tmp,html} {a,b,c}/\"x Y\".html x.html y.html z.tmp # action find . -name '*.html' -print0 | xargs -0 tar vcf html.zip ","date":"2022-11-12","objectID":"/2022-11-12-shell/:4:2","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"最近使用的文件 编写一个命令或脚本递归的查找文件夹中最近使用的文件,按照最近的使用时间列出。 find . -type f -print0 | xargs -0 ls -lt | head -5 # 当文件数量较多时,上面的解答会得出错误结果,解决办法是增加 -mmin 条件 find . -type f -mmin -60 -print0 | xargs -0 ls -lt | head -5 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:4:3","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"简易数据库 #!/bin/bash db_set () { echo \"$1,$2\" \u003e\u003e database } db_get () { grep \"^$1,\" database | sed -e \"s/^$1,//\" | tail -n 1 } ","date":"2022-11-12","objectID":"/2022-11-12-shell/:4:4","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"More ","date":"2022-11-12","objectID":"/2022-11-12-shell/:5:0","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"TODO 系统学习 Shell 语言:set 命令,shopt 命令 - Bash 脚本教程 - 网道 思考 Shell 使用场景,把自己高频需求用新掌握的工具自动化 掌握脚本使用最佳实践 ","date":"2022-11-12","objectID":"/2022-11-12-shell/:5:1","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"Ref Top (Bash Reference Manual) ","date":"2022-11-12","objectID":"/2022-11-12-shell/:5:2","tags":["Shell"],"title":"Shell 工具和脚本入门","uri":"/2022-11-12-shell/"},{"categories":["知识整理"],"content":"人体肌肉=大肌群+小肌群。大肌群:胸、背、臀、腿;小肌群:肩、胳膊、腹、小腿。塑形健身以大肌群练习为主,搭配小肌群(包括核心肌群)练习。 ","date":"2022-09-13","objectID":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/:0:0","tags":["健身"],"title":"硬派健身要点","uri":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/"},{"categories":["知识整理"],"content":"简易 HIIT 燃脂大法:爬楼梯(背挺直+膝盖不超过脚尖+步子尽量大),发力部位:臀部。 翘臀大法:侧弓步(热身)+沙发深蹲跳(臀大肌)+臀桥(髋关节、臀大肌) 超速减脂大法:跳跃拍手(热身)+直膝前踢(热身)+俯卧登山(核心肌群) 胸大腰细大法:俯卧撑(胸肌、肱二头肌)+俯卧撑跳+平板支撑(核心肌群) 美好身姿大法:十字挺身(腰椎)+俯卧撑跳+平板支撑 全面与细节:直膝前踢(大腿)+哑铃深蹲推举(臀、肩)+卷腹(腹) ","date":"2022-09-13","objectID":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/:1:0","tags":["健身"],"title":"硬派健身要点","uri":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/"},{"categories":["知识整理"],"content":"抗阻训练(塑形进阶) ","date":"2022-09-13","objectID":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/:2:0","tags":["健身"],"title":"硬派健身要点","uri":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/"},{"categories":["知识整理"],"content":"胸肌 俯卧撑:发力方式为夹胸+身体绷成直线+快起缓落 宽距更多练胸肌,窄距更多练肱三头肌 练上胸:下斜窄距俯卧撑 练下胸:上斜宽距俯卧撑 哑铃卧推(上身倾斜度不超过 60 度、沉肩夹胸) 龙门架拉索夹胸 ","date":"2022-09-13","objectID":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/:2:1","tags":["健身"],"title":"硬派健身要点","uri":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/"},{"categories":["知识整理"],"content":"臀肌 热身(半蹲激活臀大肌、侧向行走激活臀中肌) 深蹲(大腿前部酸,练到了股四头肌;大腿后部酸,练到了股二头肌;屁股酸,练到了臀大肌) 初级:沙发深蹲——中级:拉力深蹲——高级:面壁深蹲 臀桥(只移动髋关节,快起缓降) 罗马尼亚硬拉/俯身提拉(练臀大肌、臀中肌、下背部肌群、预防闪腰、腿后部肌群) ","date":"2022-09-13","objectID":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/:2:2","tags":["健身"],"title":"硬派健身要点","uri":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/"},{"categories":["知识整理"],"content":"腹肌(力量传递轴、对抗腰痛、保护脊柱和骨盆) 平板支撑(核心肌群) 卷腹(手放耳侧,背阔肌协助——收放胸前,单独腹肌发力) 十字挺身(下背部核心肌群) 反向卷腹(腹肌带动下身躯干,预防骨盆前倾) ","date":"2022-09-13","objectID":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/:2:3","tags":["健身"],"title":"硬派健身要点","uri":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/"},{"categories":["知识整理"],"content":"肩肌 侧平举(三角肌中束,力量不要太大,缓起缓落) 热身(本体感觉训练):举一臂,另一臂做 5 次侧平举起;交换。 俯身侧平举(俯身飞鸟,三角肌后束,改善圆肩、驼背) L 侧平举(肩袖四肌) 颈后臂屈伸(肱三头肌,须先空手做以热身) ","date":"2022-09-13","objectID":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/:2:4","tags":["健身"],"title":"硬派健身要点","uri":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/"},{"categories":["知识整理"],"content":"小腿三头肌 坐姿提踵 Ref:《硬派健身》 ","date":"2022-09-13","objectID":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/:2:5","tags":["健身"],"title":"硬派健身要点","uri":"/2022-09-13-%E7%A1%AC%E6%B4%BE%E5%81%A5%E8%BA%AB%E8%A6%81%E7%82%B9/"},{"categories":["读书笔记"],"content":" 跨境电商与国际物流读后感。 ","date":"2022-07-30","objectID":"/2022-07-30-cross-border-e-commerce/:0:0","tags":["电商"],"title":"从四个问题理解跨境电商","uri":"/2022-07-30-cross-border-e-commerce/"},{"categories":["读书笔记"],"content":"跨境电商的含义和诞生? 跨境电商,英文通常翻译为 Cross-border eCommerce(跨境网络零售)。广义上的跨境电商包括跨境贸易在线交易(B2C 和 B2B)和相关服务(供应链、物流、通关、支付、结汇、运营等)。 跨境电商的前身是人肉代购,2004 年起海外购物平台陆续上线,期间又有「毒奶粉」事件催化,2012 年开始城市试点,开启保税进口模式,2014 年政府密集出台跨境政策,跨境电商大规模出海,之后基础设施逐步增强,跨境电商趋于成熟多样。 ","date":"2022-07-30","objectID":"/2022-07-30-cross-border-e-commerce/:0:1","tags":["电商"],"title":"从四个问题理解跨境电商","uri":"/2022-07-30-cross-border-e-commerce/"},{"categories":["读书笔记"],"content":"跨境电商的运行机制如何? ","date":"2022-07-30","objectID":"/2022-07-30-cross-border-e-commerce/:0:2","tags":["电商"],"title":"从四个问题理解跨境电商","uri":"/2022-07-30-cross-border-e-commerce/"},{"categories":["读书笔记"],"content":"当下跨境电商的业态如何? 2015 年跨境电商占外贸进出口的 17%,其中 90% 都是 B2B 模式。出口方面,地域上占比最大的是以深圳为核心的珠三角地区,制造业集中,外贸人才储备丰富,电商意识超前;其次是轻工业发达的长三角,具有产业集群效应;之后是产业带跨境电商专区,例如温州皮靴、成都女鞋、石狮服装、许昌假发、平乡童车等。 品类分布如图: 而进口品类主要集中在服饰箱包、母婴、美妆、食品等注重品质的品类,以及存在差价和发行时差的 3C 电子产品。而海淘价格差异主要是关税,因此人肉海淘是价格敏感消费者的主要海淘模式。 网络营销方式分布如图: ","date":"2022-07-30","objectID":"/2022-07-30-cross-border-e-commerce/:0:3","tags":["电商"],"title":"从四个问题理解跨境电商","uri":"/2022-07-30-cross-border-e-commerce/"},{"categories":["读书笔记"],"content":"跨境电商目前还存在哪些障碍? 个人对跨境电商在互联网和外贸两个维度的障碍程度,绘制了分布图,如图。 最主要的障碍可归结为 知识产权引起的诉讼、假冒品引起的海关扣押; 征信系统和金融系统不完善引起的欺诈、退货、支付; 语言、文化、法制多样化引起的新兴市场开拓困难、本地化运营和多平台运营的困难。 ","date":"2022-07-30","objectID":"/2022-07-30-cross-border-e-commerce/:0:4","tags":["电商"],"title":"从四个问题理解跨境电商","uri":"/2022-07-30-cross-border-e-commerce/"},{"categories":null,"content":" Ref Strategyzer | Corporate Innovation Strategy, Tools \u0026 Training Business Model Canvas - Wikipedia ","date":"2022-07-05","objectID":"/talks/2022-07-05-%E5%95%86%E4%B8%9A%E6%A8%A1%E5%BC%8F%E7%94%BB%E5%B8%83/:0:0","tags":null,"title":"商业模式画布","uri":"/talks/2022-07-05-%E5%95%86%E4%B8%9A%E6%A8%A1%E5%BC%8F%E7%94%BB%E5%B8%83/"},{"categories":null,"content":"RPA 解决的问题是,企业已有软件可能没有数据接口、应用接口来跟其他系统集成,重新开发接口又任务量太大,RPA 能够以低成本的方式做到自动化跨系统沟通。 最流行的框架是 UiPath,2018 年进入中国,它还提供了完整的习题教程和认证考试。 国内随着需求的激发,也成长出一些本土 RPA 企业,例如艺赛旗、影刀 RPA、来也科技等。 国内 RPA 年复合增长率高达 64%,发展很快,先进入先占据生态位。 目前国内 RPA 市场,按照公司基因可以分为 5 类:一是纯 RPA 公司,如影刀 RPA、Cyclone 弘玑、云扩科技、九科信息、慧流科技,二是有丰富 to B 经验的软件行业老玩家,如艺赛旗。三是大公司孵化,阿里云、平安科技、兴业数金、用友网络、金蝶国际等相继推出 RPA 产品。四是其他行业切入 RPA,如英诺森、达观数据、来也科技、阿博茨科技。五是国外 RPA 厂商,Uipath、AutomationAnywhere、Blue Prism 等。 UiPath 教程示范:【RPA 之家】UiPath 基于状态机的流程实战案例_哔哩哔哩_bilibili ","date":"2022-06-13","objectID":"/talks/2022-06-13-rpa/:0:0","tags":null,"title":"RPA 机器人流程自动化","uri":"/talks/2022-06-13-rpa/"},{"categories":null,"content":"毕业后,总感觉时间过得很快,像似从指缝间流逝。直到遇见你,这一载,仿佛是一生一世。 ","date":"2022-05-16","objectID":"/talks/2022-05-16/:0:0","tags":null,"title":"","uri":"/talks/2022-05-16/"},{"categories":null,"content":"美国法律行业有许多潜在客户获得(Lead Generation),例如Attention Required! | Cloudflare。 这类网站主要策略有Q\u0026A、法律内容、新媒体、特殊定价、法律自助产品、及时响应(参考:10 Best Lead Generation Services for Lawyers | Clio)。 国内这类网站并不成熟,主要采用问答的策略吸引潜在客户,做的最好的是律图。 试想,可不可以,采用关系图的方式(类似学者关系图),展现律师基本信息、经手的案件信息、和律所关系、律师间合作关系等(这些数据在裁判文书网和律协都可以找到)。 ","date":"2022-05-12","objectID":"/talks/2022-05-12-usa-lawyer/:0:0","tags":null,"title":"","uri":"/talks/2022-05-12-usa-lawyer/"},{"categories":["知识整理"],"content":"tcp/udp的区别?tcp粘包是怎么回事,如何处理?udp有粘包吗? ","date":"2022-03-23","objectID":"/2022-03-23-tcp-udp/:0:0","tags":["计算机网络"],"title":"TCP 和 UDP 的区别?","uri":"/2022-03-23-tcp-udp/"},{"categories":["知识整理"],"content":"什么是 TCP? 全称 Transmission Control Protocol,是一种传输层协议(为两个主机中进程之间的通信提供服务)。 TCP 是面向连接接的协议,发送数据前先建立连接,在发送方和接收方完成数据交换之前,连接会一直保持着。 面向连接的服务有一下几个特征: 建立一条虚拟信道(比如 3 次握手) 使用排序 使用确认 使用流量控制(比如缓冲、窗口机制和拥堵避免) TCP 工作流程简单讲是,发送方从应用层收集数据,拆分成多个数据包,为每个数据包分配一个编号,然后将这些数据包发送到接收方;同样,在数据包发送到接收方应用层之前,会重新组合数据包。接收方会给发送方提供一条数据包的确认消息(是或否),同时有错误检查和恢复体系保证数据包顺序一致。 TCP 支持全双工服务器,即当接收者,又当发送者。 ","date":"2022-03-23","objectID":"/2022-03-23-tcp-udp/:1:0","tags":["计算机网络"],"title":"TCP 和 UDP 的区别?","uri":"/2022-03-23-tcp-udp/"},{"categories":["知识整理"],"content":"TCP 的报文格式 源/目标端口(Source/Destination Port):用于多路复用或者分解来自(送到)上层的数据。 序列号(Sequence Number):在连接建立时由计算机计算出的初始值,通过 SYN 包传给对端主机,每发送一次新的数据包,就累加一次该序列号的大小。用来解决网络包乱序问题。 确认号(Acknowledgement Number):指下次期望收到的序列号,发送端收到这个确认应答以后可以确认确认应答号-1的数据包已经被正常接收。 首部长度(即数据偏移量):给出报文头中 32 bit(位)的数目,4 位可表示 15 个数字,32bit(字)=4B(字节),所有 TCP 首部最多 15*4=60 字节 控制标志,6 位,每个一位,0 或 1 URG:为 1 表示紧急指针有效,为 0 则忽略紧急指针值 ACK:为 1 表示确认号有效,为 0 表示报文中不包含确认信息,忽略确认号字段 PSH:为 1 表示是带有 PUSH 标志的数据,指示接收方应该尽快将这个报文段交给应用层而不用等待缓冲区装满 RST:用于复位由于主机崩溃或其他原因而出现错误的连接。它还可以用于拒绝非法的报文段和拒绝连接请求。一般情况下,如果收到一个 RST 为 1 的报文,那么一定发生了某些问题 SYN:同步序号,为 1 表示连接请求,用于建立连接和使顺序号同步( synchronize ) FIN:用于释放连接,为 1 表示发送方已经没有数据发送了,即关闭本方数据流 ","date":"2022-03-23","objectID":"/2022-03-23-tcp-udp/:1:1","tags":["计算机网络"],"title":"TCP 和 UDP 的区别?","uri":"/2022-03-23-tcp-udp/"},{"categories":["知识整理"],"content":"TCP 建立连接(三次握手) 简单讲: 客户端告诉服务端它可以发送 服务端告诉客户端它能收到信息 客户端告诉服务端它能收到反馈 ","date":"2022-03-23","objectID":"/2022-03-23-tcp-udp/:1:2","tags":["计算机网络"],"title":"TCP 和 UDP 的区别?","uri":"/2022-03-23-tcp-udp/"},{"categories":["知识整理"],"content":"什么是 UDP? 全称 User Datagram Protocol,用户数据报协议,提供一种尽力而为的数据传输,接收方不生成数据包的确认。 UDP 不保证数据包的有序传递。它是无状态的,不提供任何拥塞控制机制,到达一个网络节点不会缓存,直接发送到下一个网络节点。 ","date":"2022-03-23","objectID":"/2022-03-23-tcp-udp/:2:0","tags":["计算机网络"],"title":"TCP 和 UDP 的区别?","uri":"/2022-03-23-tcp-udp/"},{"categories":["知识整理"],"content":"TCP 与 UDP 区别? UDP 是一种无连接协议,而 TCP 是一种面向连接的协议,具体是 4 个特征的区别(连接、有序、确认和流量控制)。 错误检查:TCP 中有广泛的错误检查规则,而 UDP 中只有基本的错误检查技术,例如校验和。 边界性区别:TCP 属于无边界的字节流协议,发送方连续发送数据包,是有边界的,接收方在缓存允许的大小接收;而 UDP 是有边界的报文协议,数据在添加首部后就交付给 IP 层,在到达接收方时验证其完整性。 广播:TCP 不支持广播,UDP 支持。 总的来说,UDP 是一种更快、更简单、开销更小的协议。但不一定,比如 TCP 的缓存机制会将数据填充到整个网段,最大利用带宽;而 UDP 沿路发送,可能会堵塞网络。 用例:TCP 被用于 HTTPS(安全超文本传输协议)、HTTP(超文本传输协议)、SMTP(简单邮件传输协议)、FTP(文件传输协议)等等。UDP 用于视频流、视频电话、IP 语音服务(互联网呼叫)、DNS(域名系统)等。 ","date":"2022-03-23","objectID":"/2022-03-23-tcp-udp/:3:0","tags":["计算机网络"],"title":"TCP 和 UDP 的区别?","uri":"/2022-03-23-tcp-udp/"},{"categories":["知识整理"],"content":"Ref 【TCP/IP】TCP 协议的流程图解 - 周二鸭 - 博客园 TCP vs UDP——哪个协议更快? (14 条消息) TCP 头的 offset data - CSDN ","date":"2022-03-23","objectID":"/2022-03-23-tcp-udp/:4:0","tags":["计算机网络"],"title":"TCP 和 UDP 的区别?","uri":"/2022-03-23-tcp-udp/"},{"categories":["分析报告"],"content":"单一机构分析 ","date":"2022-02-16","objectID":"/2022-02-16-13f/:1:0","tags":["金融"],"title":"13F 数据分析","uri":"/2022-02-16-13f/"},{"categories":["分析报告"],"content":"一个公司在一个投资机构的持仓历史变化 以 SOROS FUND MANAGEMENT LLC 持有 LIBERTY_BROADBAND_CORP 为例 ","date":"2022-02-16","objectID":"/2022-02-16-13f/:1:1","tags":["金融"],"title":"13F 数据分析","uri":"/2022-02-16-13f/"},{"categories":["分析报告"],"content":"一个机构持仓总市值和总标的数 新浪财经有现成的统计 ","date":"2022-02-16","objectID":"/2022-02-16-13f/:1:2","tags":["金融"],"title":"13F 数据分析","uri":"/2022-02-16-13f/"},{"categories":["分析报告"],"content":"个股被机构持仓的总市值和机构数 新浪财经有现成的统计 ","date":"2022-02-16","objectID":"/2022-02-16-13f/:1:3","tags":["金融"],"title":"13F 数据分析","uri":"/2022-02-16-13f/"},{"categories":["分析报告"],"content":"一类公司在一个投资机构的持仓历史变化 whalewisdom 有现成统计 以 SOROS FUND MANAGEMENT LLC 为例 ","date":"2022-02-16","objectID":"/2022-02-16-13f/:1:4","tags":["金融"],"title":"13F 数据分析","uri":"/2022-02-16-13f/"},{"categories":["分析报告"],"content":"机构聚类分析 ","date":"2022-02-16","objectID":"/2022-02-16-13f/:2:0","tags":["金融"],"title":"13F 数据分析","uri":"/2022-02-16-13f/"},{"categories":["分析报告"],"content":"一组机构的持仓股票总价值的历史变化 以样本集里面多年累计加总持仓市值最高的 5 家机构为例 ","date":"2022-02-16","objectID":"/2022-02-16-13f/:2:1","tags":["金融"],"title":"13F 数据分析","uri":"/2022-02-16-13f/"},{"categories":["分析报告"],"content":"一组机构对一家上市公司的持仓历史变化 以样本集里面多年累计加总持仓 Apple 市值最高的 5 家机构为例 ","date":"2022-02-16","objectID":"/2022-02-16-13f/:2:2","tags":["金融"],"title":"13F 数据分析","uri":"/2022-02-16-13f/"},{"categories":["分析报告"],"content":"发现投资标的 ","date":"2022-02-16","objectID":"/2022-02-16-13f/:3:0","tags":["金融"],"title":"13F 数据分析","uri":"/2022-02-16-13f/"},{"categories":["分析报告"],"content":"机构开始加仓某个新出现的标的 whalewisdom 有现成统计 以 20210331 全行业重新被机构持仓数量排名前 5%的公司为例 ","date":"2022-02-16","objectID":"/2022-02-16-13f/:3:1","tags":["金融"],"title":"13F 数据分析","uri":"/2022-02-16-13f/"},{"categories":["分析报告"],"content":"后续工作 获取公司的行业分类,以及机构的投资偏好,做属性相关分析 影响力分析 ","date":"2022-02-16","objectID":"/2022-02-16-13f/:4:0","tags":["金融"],"title":"13F 数据分析","uri":"/2022-02-16-13f/"},{"categories":null,"content":"设计思维能够应对日常很多问题,但是对于全局的、商业的、品牌整体问题,设计思维在体系性、框架性和有效性上会遭遇挑战。 问题的复杂来源于人与人以人与周围环境的交互的复杂,人的需求多层次多场景且动态变化。设计在解决不同问题时往往难以定义视角,需要引入更底层的心理学人类学,将意义需求与具体需求、痒点与痛点等区分剖析,进而解决不同问题;还需要整合相应的方法和思路去面对具体问题,例如快速试验迭代的互联网公司需要产品思维和设计思维相融合。 ","date":"2021-12-30","objectID":"/talks/2021-12-30-design/:0:0","tags":null,"title":"","uri":"/talks/2021-12-30-design/"},{"categories":null,"content":"套用冯·奥西茨基的话:一个民族到底要在精神上堕落到何种程度,才能从这些文盲的身上看出一个偶像的模子,看到令人追随的人格魅力。 ","date":"2021-11-16","objectID":"/talks/2021-11-16/:0:0","tags":null,"title":"","uri":"/talks/2021-11-16/"},{"categories":null,"content":" 审计意见 资产负债表,转换成百分比 存款结构和付息率,获取资金能力的情况 净利息差和净利息收益率 分析贷款质量,包括历史同行对比、贷款垫款构成、拨备,主要关注指标不良贷款率、拨备覆盖率、拨贷比、当年计提/贷款余额、拨备前利润、(逾期+重组)/贷款余额、当期新增逾期\u0026重组、当期新增不良(报表新增不良+当期核销转出)、当期新增关注、90天以上逾期/不良贷款、公司贷个人贷占比变化、公司贷行业地区分布。 利润表,把「营业利润」之前的会计科目转换成百分比 财报开头「财务概要」里的相关监管指标,重点是总资产回报率、资本充足率、风险加权资产/总资产 拷问思考 估值,银行经营状况和未来预期与当初买入时相比如何 Ref: 《手把手教你读财报2》 ","date":"2021-11-16","objectID":"/talks/2021-11-16-finacial-report/:0:0","tags":null,"title":"银行财报阅读流程","uri":"/talks/2021-11-16-finacial-report/"},{"categories":null,"content":"预测一个趋势,找到一个预测指标很重要。 例如,前东方证券银行业首席分析师王剑曾提出的,从银行利润/产业利润变化的角度预测银行股价走向(反向关系)。 背后逻辑大概是,宏观经济好的时候,市场需求旺盛,企业需要资本去扩大生产,企业会积极讨好银行获取贷款。供应超过需求时,进入经济下滑周期,企业盈利下降,而银行利息是刚性的,导致银行盈利之后企业盈利变化,银行会有一个短暂的按时收回利息的时期,指标变大。紧接着,企业经营状况继续下降,无法还利息,指标下降。经济萧条之后,大量企业减产破产,过剩产能被消灭重组,活下来的企业进入下一轮经济复苏的周期,指标即将结束下降。 由于产业利润数据获取不易,也用 GDP(包括银行业的所有产业)代替。 ","date":"2021-11-16","objectID":"/talks/2021-11-16-predict/:0:0","tags":null,"title":"预测指标:银行利润/产业利润","uri":"/talks/2021-11-16-predict/"},{"categories":["分析报告"],"content":"背景 非形式逻辑是“一种发展能够用于评估、分析和改进非形式推理的逻辑尝试,这些非形式推理不仅出现于人际交流、广告、政治辩论、法律论证之中,而且存在于报纸、电视、因特网和别的大众媒体所刊载的社会评论中。 请你任选一篇文章,可自行选择,可从以下挑选: Boris Groysberg:谈心造就领导力 Deborah Tannen:他说他的,她说她的 提交说明: 使用课程介绍的软件 rationale 、或其他做图软件,借助图尔敏模型框架,绘制论证图示。 基于图尔敏模型,对文章论证进行评价。(小提示:D 合理且真实;D 充分无遗漏;W 被证明合理;充分考虑了 R ) 选《他说他的,她说她的》 ","date":"2021-09-11","objectID":"/2021-09-11-%E8%AE%BA%E8%AF%81%E5%88%86%E6%9E%90-ch4-%E8%BF%9B%E9%98%B6%E4%BD%9C%E4%B8%9A/:1:0","tags":["图尔敏模型"],"title":"图尔敏模型分析两性沟通异同","uri":"/2021-09-11-%E8%AE%BA%E8%AF%81%E5%88%86%E6%9E%90-ch4-%E8%BF%9B%E9%98%B6%E4%BD%9C%E4%B8%9A/"},{"categories":["分析报告"],"content":"分析 ","date":"2021-09-11","objectID":"/2021-09-11-%E8%AE%BA%E8%AF%81%E5%88%86%E6%9E%90-ch4-%E8%BF%9B%E9%98%B6%E4%BD%9C%E4%B8%9A/:2:0","tags":["图尔敏模型"],"title":"图尔敏模型分析两性沟通异同","uri":"/2021-09-11-%E8%AE%BA%E8%AF%81%E5%88%86%E6%9E%90-ch4-%E8%BF%9B%E9%98%B6%E4%BD%9C%E4%B8%9A/"},{"categories":["分析报告"],"content":"评论 D 合理且真实,符合生活中的观察。 D 充分无遗漏,举例儿童、成人和工作三个场景,比较充分。 W 被证明合理,层级和关系都是沟通的目的。 未充分考虑了 R,可能非典型的例子还有不少,需要更详尽的讨论。 ","date":"2021-09-11","objectID":"/2021-09-11-%E8%AE%BA%E8%AF%81%E5%88%86%E6%9E%90-ch4-%E8%BF%9B%E9%98%B6%E4%BD%9C%E4%B8%9A/:3:0","tags":["图尔敏模型"],"title":"图尔敏模型分析两性沟通异同","uri":"/2021-09-11-%E8%AE%BA%E8%AF%81%E5%88%86%E6%9E%90-ch4-%E8%BF%9B%E9%98%B6%E4%BD%9C%E4%B8%9A/"},{"categories":["分析报告"],"content":"ChangeLog 20210911 初稿 ","date":"2021-09-11","objectID":"/2021-09-11-%E8%AE%BA%E8%AF%81%E5%88%86%E6%9E%90-ch4-%E8%BF%9B%E9%98%B6%E4%BD%9C%E4%B8%9A/:4:0","tags":["图尔敏模型"],"title":"图尔敏模型分析两性沟通异同","uri":"/2021-09-11-%E8%AE%BA%E8%AF%81%E5%88%86%E6%9E%90-ch4-%E8%BF%9B%E9%98%B6%E4%BD%9C%E4%B8%9A/"},{"categories":null,"content":"测验的效度 效度指测验的正确性和有效性,即测验能够测到被测量对象的真实水平的程度。 ","date":"2021-09-10","objectID":"/talks/2021-09-10-%E6%B5%8B%E9%87%8F%E7%9A%84%E4%BF%A1%E6%95%88%E5%BA%A6/:0:1","tags":null,"title":"测量的信效度","uri":"/talks/2021-09-10-%E6%B5%8B%E9%87%8F%E7%9A%84%E4%BF%A1%E6%95%88%E5%BA%A6/"},{"categories":null,"content":"测验的信度 信度指测验的可靠性和多次测量结果的一致性程度。 Ref:《教育心理学》 ","date":"2021-09-10","objectID":"/talks/2021-09-10-%E6%B5%8B%E9%87%8F%E7%9A%84%E4%BF%A1%E6%95%88%E5%BA%A6/:0:2","tags":null,"title":"测量的信效度","uri":"/talks/2021-09-10-%E6%B5%8B%E9%87%8F%E7%9A%84%E4%BF%A1%E6%95%88%E5%BA%A6/"},{"categories":null,"content":"《天之下》,一个武侠世界,这种写法还真是经济,跟之前看过的九州志、银河帝国、指环王一样,学习学习! ","date":"2021-09-08","objectID":"/talks/2021-09-08-fiction/:0:0","tags":null,"title":"","uri":"/talks/2021-09-08-fiction/"},{"categories":["分析报告"],"content":"原文分析 原文:婚姻制度正在走向消亡?这一代人的围城 按照推理树中序遍历的顺序依次列举不好的论证。 论点 A-\u003eO,相关因果混淆。适婚人群总数减少不能说明中国婚姻制度正在消亡;正如印度、非洲适婚人口正在增加不能说明两地婚姻制度正在建立。 H 论点错误,抽样错误,只抽取中产阶级的数据。 C 比较适合作为 B 的分论点。 婚前协议推论 H 错误,H 是结婚条件下的事件。 ","date":"2021-08-14","objectID":"/2021-08-14-%E5%A9%9A%E5%A7%BB%E5%88%B6%E5%BA%A6%E4%BC%9A%E6%B6%88%E4%BA%A1%E5%90%97/:1:0","tags":["论证分析","推理树"],"title":"《婚姻制度会消亡吗》推理树分析","uri":"/2021-08-14-%E5%A9%9A%E5%A7%BB%E5%88%B6%E5%BA%A6%E4%BC%9A%E6%B6%88%E4%BA%A1%E5%90%97/"},{"categories":["分析报告"],"content":"我的论证 我的论证过程如下 ","date":"2021-08-14","objectID":"/2021-08-14-%E5%A9%9A%E5%A7%BB%E5%88%B6%E5%BA%A6%E4%BC%9A%E6%B6%88%E4%BA%A1%E5%90%97/:2:0","tags":["论证分析","推理树"],"title":"《婚姻制度会消亡吗》推理树分析","uri":"/2021-08-14-%E5%A9%9A%E5%A7%BB%E5%88%B6%E5%BA%A6%E4%BC%9A%E6%B6%88%E4%BA%A1%E5%90%97/"},{"categories":["分析报告"],"content":"ChangeLog 20210814 初稿 ","date":"2021-08-14","objectID":"/2021-08-14-%E5%A9%9A%E5%A7%BB%E5%88%B6%E5%BA%A6%E4%BC%9A%E6%B6%88%E4%BA%A1%E5%90%97/:3:0","tags":["论证分析","推理树"],"title":"《婚姻制度会消亡吗》推理树分析","uri":"/2021-08-14-%E5%A9%9A%E5%A7%BB%E5%88%B6%E5%BA%A6%E4%BC%9A%E6%B6%88%E4%BA%A1%E5%90%97/"},{"categories":["分析报告"],"content":"资料 1993 年国际大专辩论赛决赛:人性本善还是本恶? 视频 文字稿 我方立场是:人性本恶。 第一 ,人性是由社会属性和自然属性组成的,自然属性指的就是无节制的本能和欲望,这是人的天性是与生俱来的;而社会属性则是通过社会生活、社会教化所获得的,它是后天属性。我们说人性本恶当然指的是人性本来的、先天的就是恶的。 第二,提到善恶,正如一千个观点会有一千个“哈姆雷特”,一千个人心目当中也许会有一千个善恶标准。但是,归根到底恶指的就是本能和欲望的无节制地扩张,而善则是对本能的合理节制。 我们说人性本恶正是基于人的自然倾向的无限扩张的趋势。那个曹操不是说过二“宁可我负天下人,不可天下人负我吗?那个路易十五不是也说过:“在我死后哪怕洪水滔天”。还有一个英国男孩,他为了得到一辆自行车竟然卖掉自己三岁的妹妹。这些对方还能说人性本善吗? 第三,虽然人性生本恶,但是我们这个世界并没有在人欲横流中毁灭掉,这是因为人有理性(时间警示)。人性可以通过后天教化加以改造。当人的自然倾向无限向外扩张的时候,如果社会属性按照同一方面推波助澜,那么人性就会更加堕落;相反,如果我们整个社会倡导扬善避恶,那么人性就有可能向善的方向发展,这一点也不正说明了儒家思想所倡导的修齐、治平、内圣、外王是何等重要吗!对方辩友,如果真的是人性本善的话,那么孔老夫子何必还诲人不倦呢? 今天,对方辩友所犯的错误就在于以理想代替现实,以价值评判代替了事实评判。从感情上讲我 们同所有善良的人一样也是希望人性是善的。但是历史、现实和理性都告诉我们,人性是恶的! 这是一个事实,我们只有正视这个事实,才有可能扬善避恶。(时间到)。谢谢各位!(掌声) ","date":"2021-08-10","objectID":"/2021-08-10-1993%E5%B9%B4%E5%9B%BD%E9%99%85%E5%A4%A7%E4%B8%93%E8%BE%A9%E8%AE%BA%E8%B5%9B%E5%86%B3%E8%B5%9B/:1:0","tags":["论证分析"],"title":"《1993 年国际大专辩论赛决赛》论证分析","uri":"/2021-08-10-1993%E5%B9%B4%E5%9B%BD%E9%99%85%E5%A4%A7%E4%B8%93%E8%BE%A9%E8%AE%BA%E8%B5%9B%E5%86%B3%E8%B5%9B/"},{"categories":["分析报告"],"content":"分析报告 用 Rationale 可视化论证如下。 辩方最显著的优点是将人性分解成社会属性和自然属性,抓住自然属性是恶的,是天生的,推论出人性本恶。 薄弱点有 举例说明「人的本能和欲望具有无节制扩张的倾向」,比较没什么说服力。 没讲清楚后天教化如何约束人类的本恶。 补充论证如下。 ","date":"2021-08-10","objectID":"/2021-08-10-1993%E5%B9%B4%E5%9B%BD%E9%99%85%E5%A4%A7%E4%B8%93%E8%BE%A9%E8%AE%BA%E8%B5%9B%E5%86%B3%E8%B5%9B/:2:0","tags":["论证分析"],"title":"《1993 年国际大专辩论赛决赛》论证分析","uri":"/2021-08-10-1993%E5%B9%B4%E5%9B%BD%E9%99%85%E5%A4%A7%E4%B8%93%E8%BE%A9%E8%AE%BA%E8%B5%9B%E5%86%B3%E8%B5%9B/"},{"categories":["分析报告"],"content":"感悟 再精彩的辩论过程,经过论证分析,论证的逻辑也会很清晰,论证的薄弱点也很容易找出来。 ","date":"2021-08-10","objectID":"/2021-08-10-1993%E5%B9%B4%E5%9B%BD%E9%99%85%E5%A4%A7%E4%B8%93%E8%BE%A9%E8%AE%BA%E8%B5%9B%E5%86%B3%E8%B5%9B/:3:0","tags":["论证分析"],"title":"《1993 年国际大专辩论赛决赛》论证分析","uri":"/2021-08-10-1993%E5%B9%B4%E5%9B%BD%E9%99%85%E5%A4%A7%E4%B8%93%E8%BE%A9%E8%AE%BA%E8%B5%9B%E5%86%B3%E8%B5%9B/"},{"categories":["分析报告"],"content":"ChangeLog 20210810 写分析报告 20210809 找资料 ","date":"2021-08-10","objectID":"/2021-08-10-1993%E5%B9%B4%E5%9B%BD%E9%99%85%E5%A4%A7%E4%B8%93%E8%BE%A9%E8%AE%BA%E8%B5%9B%E5%86%B3%E8%B5%9B/:4:0","tags":["论证分析"],"title":"《1993 年国际大专辩论赛决赛》论证分析","uri":"/2021-08-10-1993%E5%B9%B4%E5%9B%BD%E9%99%85%E5%A4%A7%E4%B8%93%E8%BE%A9%E8%AE%BA%E8%B5%9B%E5%86%B3%E8%B5%9B/"},{"categories":["分析报告"],"content":"零、背景 分析识别两方候选人在说服选民过程中,哪些地方运用了认知偏差的把戏?分别属于哪一类认知偏差呢? 2012 年奥巴马 VS 罗姆尼:讨论男女薪酬不平等现象 视频:从 34:38 到 42:43 文字稿 参考资料:一张图识别所有认知偏差 by 钟慰教练 ","date":"2021-08-10","objectID":"/2021-08-10-2012%E8%AE%A8%E8%AE%BA%E7%94%B7%E5%A5%B3%E8%96%AA%E9%85%AC%E4%B8%8D%E5%B9%B3%E7%AD%89%E7%8E%B0%E8%B1%A1/:1:0","tags":["认知偏差"],"title":"《2012 讨论男女薪酬不平等现象》认知偏差","uri":"/2021-08-10-2012%E8%AE%A8%E8%AE%BA%E7%94%B7%E5%A5%B3%E8%96%AA%E9%85%AC%E4%B8%8D%E5%B9%B3%E7%AD%89%E7%8E%B0%E8%B1%A1/"},{"categories":["分析报告"],"content":"一、分析主要观点 问题:您将采取什么方法来纠正男女薪酬不平等现象? 奥巴马:丽丽法案;佩尔奖学金;医疗法案对女性的支持,批评罗姆尼忽视女性需求。 罗姆尼:招聘努力;弹性工作;振兴经济,同时抨击奥巴马政府没处理好就业。 ","date":"2021-08-10","objectID":"/2021-08-10-2012%E8%AE%A8%E8%AE%BA%E7%94%B7%E5%A5%B3%E8%96%AA%E9%85%AC%E4%B8%8D%E5%B9%B3%E7%AD%89%E7%8E%B0%E8%B1%A1/:2:0","tags":["认知偏差"],"title":"《2012 讨论男女薪酬不平等现象》认知偏差","uri":"/2021-08-10-2012%E8%AE%A8%E8%AE%BA%E7%94%B7%E5%A5%B3%E8%96%AA%E9%85%AC%E4%B8%8D%E5%B9%B3%E7%AD%89%E7%8E%B0%E8%B1%A1/"},{"categories":["分析报告"],"content":"二、分析认知偏差 认知偏差检查表 一级分类 二级分类 三级分类 奥巴马 罗姆尼 认知吝啬鬼 属性替换 6-将女性薪酬受歧视问题转换为家庭、中产问题; 10-用上大学替换竞争力 18-高级领导职位替换整个招聘; 将女性薪酬受歧视问题替换失业问题 代表性启发式 忽略基率 小数法则 结合效应 可得性启发式 事件搜索便利 6-丽丽法案故事 16-女性内阁成员 事件想象容易 5-妈妈和祖母的故事 框架和锚定 锚定效应 不充分的调试 24-反复提及失业率 高估合取 低估析取 框架效应 损失/收益框架 9-原本给银行和贷款中间商的 600 亿美元 22-新经济; 23-7.8%失业率,2300 万人找工作 生存框架 心理账户 双曲线贴现 短视行为 时间估计错误 22-模糊振兴经济的时间表 齐当别模型 ","date":"2021-08-10","objectID":"/2021-08-10-2012%E8%AE%A8%E8%AE%BA%E7%94%B7%E5%A5%B3%E8%96%AA%E9%85%AC%E4%B8%8D%E5%B9%B3%E7%AD%89%E7%8E%B0%E8%B1%A1/:3:0","tags":["认知偏差"],"title":"《2012 讨论男女薪酬不平等现象》认知偏差","uri":"/2021-08-10-2012%E8%AE%A8%E8%AE%BA%E7%94%B7%E5%A5%B3%E8%96%AA%E9%85%AC%E4%B8%8D%E5%B9%B3%E7%AD%89%E7%8E%B0%E8%B1%A1/"},{"categories":["分析报告"],"content":"Changelog 20210810 初稿 ","date":"2021-08-10","objectID":"/2021-08-10-2012%E8%AE%A8%E8%AE%BA%E7%94%B7%E5%A5%B3%E8%96%AA%E9%85%AC%E4%B8%8D%E5%B9%B3%E7%AD%89%E7%8E%B0%E8%B1%A1/:4:0","tags":["认知偏差"],"title":"《2012 讨论男女薪酬不平等现象》认知偏差","uri":"/2021-08-10-2012%E8%AE%A8%E8%AE%BA%E7%94%B7%E5%A5%B3%E8%96%AA%E9%85%AC%E4%B8%8D%E5%B9%B3%E7%AD%89%E7%8E%B0%E8%B1%A1/"},{"categories":["分析报告"],"content":"此调研旨在发掘法律检索领域的现状及其入场可能性,包括法律行业发展分布状况、现有法律工具状况、法律检索相关技术,最后探讨法律检索入场的可能性和切入点。 ","date":"2021-06-23","objectID":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/:0:0","tags":["法律","产品"],"title":"法律检索调研","uri":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/"},{"categories":["分析报告"],"content":"法律行业概括 法律业务通常分为诉讼业务和非诉业务,我国现阶段仍然是诉讼业务的营业额大于非诉业务(大概是 7:3),一线城市大概五五开。 法律行业市场规模逐年增加,大概情况如下图所示。结构上,非诉业务增长更快。 根据 2018 年司法部发布的数据划分,律师数量在 100 人及以上的律师事务所为第一梯队,共有 260 家,占比为 0.9%;律师数量在 30 至 100 人的律师事务所为第二梯队,共有 1770 家,占比 6.0%;律师数量在 30 人以下的律师事务所为第三梯队,共有 28300 家,占比 93.1%。——头豹 律所的规模分布大致呈金字塔结构,规模越大,数量越少,而且个人所占到总体的两成多。 ","date":"2021-06-23","objectID":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/:1:0","tags":["法律","产品"],"title":"法律检索调研","uri":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/"},{"categories":["分析报告"],"content":"现有法律检索工具分析 先说说三款官方背景检索软件(通病就是用户体验不好,专业方面数据比较全) 中国裁判文书网,官方判决书下载,案例最全 法信,人民法院和司法大数据研究中心开发的,司法观点,法规都挺全的 北大法宝,律协会给每个持证律师都没费申请一个账号,判决书、法规和法条释义都挺丰富,有合同模版功能 产品 数据源 聚合数据可视化 标签 附加功能 缺点 费用 聚法案例 裁判文书、检查文书、法规 裁判结果聚合 案件结果标签 合同模板、计算器 不支持行政处罚的检索 绝大部分基础功能免费,但检索次数受限 alpha 裁判文书、检查文书、行政处罚、法规、标准、最高院出版物、部门规章 多维度分析,聚合功能强大 案件分类标签、案件结果标签 检索报告;管理功能;社区;同步检索知网、微博、微信、商标、专利、工商等信息 尽职调查模块实用性差 收费体验 威科先行 裁判文书、检查文书、行政处罚、法规、国际条约、标准 多维度分析 无标签 文书模板、计算器 界面繁杂 不支持免费使用 其他的如无讼案例、openlaw、把手案例、元典智库、秘塔都是功能比较单一的法律检索工具。 ","date":"2021-06-23","objectID":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/:2:0","tags":["法律","产品"],"title":"法律检索调研","uri":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/"},{"categories":["分析报告"],"content":"技术关键点 数据源获取:法条法规的爬取(国家法条法规数据库、国务院政策文件库等,包括历史沿革),裁判文书、检查文书、行政处罚的爬取;人民法院出版物录入;庭审直播爬取; 法条映射:法条法规的条款项解析和特殊格式解析,案例的法条提取,案例和法条的双向映射; 语义分析:案例关键词提取,案情描述智能解析; 聚合分析:法条案例等的多维度聚合分析; 第三方集成:集成国家标准、公司主体、专利、商标、执行信息、期刊论文等板块; 用户体验:检索报告生成;聚类可视化;尽职调查指引;案件协作,律所管理,社区分享;计算器; 文书工具:合同模版,审查;可视化工具(processon);写作辅助工具; 前四项是核心,后三项是拓展。 ","date":"2021-06-23","objectID":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/:3:0","tags":["法律","产品"],"title":"法律检索调研","uri":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/"},{"categories":["分析报告"],"content":"结论 ","date":"2021-06-23","objectID":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/:4:0","tags":["法律","产品"],"title":"法律检索调研","uri":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/"},{"categories":["分析报告"],"content":"行业调研结论 此调研的法律行业调研仅局限在律所调研,未设计会计事务所、咨询、企业法务等领域。 从规模和营收看,可以粗略的区分成两条差异化竞争领域: 大律所、会计事务所等大客户的定制化服务 中小律所等小客户的平均化服务(例如 Alpha) ","date":"2021-06-23","objectID":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/:4:1","tags":["法律","产品"],"title":"法律检索调研","uri":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/"},{"categories":["分析报告"],"content":"竞品调研结论 法律检索业务已经较为成熟,先后有威科先行、Alpha 和聚法案例等业务深入且全面的产品,也有秘塔、元典智库、无颂案例等各具特色的产品,几乎没有业务创新的空间了。 如果想进入法律检索领域,必须要选择一个相关的领域,然后通过业务拓展的方式加入法律检索模块。相关领域可能有: 尽职调查 文书写作 合同审查 工商信息检索 ","date":"2021-06-23","objectID":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/:5:0","tags":["法律","产品"],"title":"法律检索调研","uri":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/"},{"categories":["分析报告"],"content":"技术调研结论 法律检索的核心技术可以概括为:数据源的爬取和整理;ES;关键词模型(基于分词和 TF-IDF);少量的 NLP。这些技术都是非常成熟的,而且能够满足需求。 法律检索相关的业务,理论和技术都不够成熟,有研发空间。例如: 法律可视化工具:通过梳理法律业务,做为法律定制的可视化工具 合同核查:目前仅在借贷合同等领域实现,通过 NLP 识别合同要素还有不少研发空间 尽职调查工具:涉及流程引擎、底稿管理等技术,比较繁杂,做容易,做好难 文书写作工具:目前还未有围绕文书写作布局功能的工具,需要集成法律知识管理系统、写作辅助工具、文档协作等能力 甚至还能做。。。 以 App 为载体,将非形式逻辑引入诉讼 通过开庭录像和大数据分析法官性格、动机、价值画像 ","date":"2021-06-23","objectID":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/:5:1","tags":["法律","产品"],"title":"法律检索调研","uri":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/"},{"categories":["分析报告"],"content":"Ref 超强测评| 九款法律检索工具,好不好用? Alpha 法律数据库使用指南 2.0 版 | iCourt (2019 年中国律师事务所行业概览.Pdf, n.d.;) 白凤波, 常林, 王世凡, 李彬, 王颖洁, 周红, \u0026 刘耀. (n.d.). 裁判文书关键词提取的改进方法研究. 计算机工程与应用, 1–10. ","date":"2021-06-23","objectID":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/:6:0","tags":["法律","产品"],"title":"法律检索调研","uri":"/2021-06-23-%E6%B3%95%E5%BE%8B%E6%A3%80%E7%B4%A2%E5%B7%A5%E5%85%B7%E5%88%86%E6%9E%90/"},{"categories":["分析报告"],"content":"背景 从自身职业发展的角度出发,想了解一下算法工程师和前端工程师的薪酬分布情况,包括工作年限、学历、公司融资情况、公司规模、城市,以及工作岗位在地理上的分布情况。 本次报告只是在拉勾网爬取近几天的 JD,只能简单做一个玩具版的分析,后期可定期爬取数据,复用相同的预处理方式和代码做完整的求职分析。 ","date":"2021-05-23","objectID":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/:1:0","tags":["求职"],"title":"算法工程师和前端工程师的社招求职分析","uri":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/"},{"categories":["分析报告"],"content":"假设 招聘岗位的薪酬会随工作年限增长而增加,增加速度趋缓,且会出现两极分化。 学历上,大专和本科差距较大,本科和硕士没有明显区别。 公司融资的轮次越多,提供的薪酬越高。 公司规模对薪酬影响不大。 薪酬/岗位数量,北京\u003e上海\u003e杭州; 工作机会会聚集在城市的几个聚集区。 ","date":"2021-05-23","objectID":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/:2:0","tags":["求职"],"title":"算法工程师和前端工程师的社招求职分析","uri":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/"},{"categories":["分析报告"],"content":"过程和结论 ","date":"2021-05-23","objectID":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/:3:0","tags":["求职"],"title":"算法工程师和前端工程师的社招求职分析","uri":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/"},{"categories":["分析报告"],"content":"采集数据 用后羿采集器采集拉勾网的招聘数据,根据需求对数据做一些限定。 需要找社招的招聘信息:把工作经验限制在 1-10 年 只想了解北上杭的招聘:限制城市 排除占比较的的质量较差的招聘:限制融资情况 智能爬取模式对网页元素的定位可能会有问题,例如将拉勾网招聘条目的标签分开。在后羿采集器中合并标签,并在数据处理功能中删除换行。 后羿采集器支持批量爬取,最后爬取了北京/上海/杭州三地的「前端」和「算法」两个岗位的招聘信息。如果直接用「算法工程师」筛选,会遗漏一些招聘,用「算法」筛选会把类似「算法讲师」包含进来,所幸无关数据不多,可预处理的时候删除。 ","date":"2021-05-23","objectID":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/:3:1","tags":["求职"],"title":"算法工程师和前端工程师的社招求职分析","uri":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/"},{"categories":["分析报告"],"content":"数据预处理 导出数据,再把 Excel 文件里面的「,」换成「、」,之后导出 CSV 格式。 去重之后只有 1844 条记录,可以直接用 VSCode 打开,用正则表达式来清洗数据。主要是将工作经验、学历、薪酬、融资情况、公司规模和行业这些字段拆分出来,把薪酬变成数字的格式。处理后的部分结果如下。 ","date":"2021-05-23","objectID":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/:3:2","tags":["求职"],"title":"算法工程师和前端工程师的社招求职分析","uri":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/"},{"categories":["分析报告"],"content":"预览数据 用 pandas 读取 csv 文件,数据很完整,只有标签字段有数据缺失,影响分析。 对数据进行分组统计,计算每组数据的个数,个数太少的分组可以剔除。 过滤掉工作经验「1 年以下」和公司规模「少于 15 人」的记录。再去掉「不限」学历。 ","date":"2021-05-23","objectID":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/:3:3","tags":["求职"],"title":"算法工程师和前端工程师的社招求职分析","uri":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/"},{"categories":["分析报告"],"content":"薪酬分析 工作机会分布情况 不同城市的工作机会分布 前端工程师:北京\u003e杭州\u003e上海 算法工程师:上海\u003e北京\u003e杭州 3-5 年经验是拉勾网社招的招聘热门。 算法工程师的学历起点是本科,前端工程师大部分招聘也都要求本科。 上市公司释放的岗位较多,猜测互联网以外的行业也开始大量招聘程序员了。 规模越大的公司释放的岗位越大,小公司的数量不足以弥补规模上的差距。 薪酬按工作年限分布 相同工作经验,相同城市,算法工程师的薪酬大约比前端工程师高 60%,猜测其中可能的原因除了岗位本身的差异,还有两种岗位的学历要求不一样,还需要限定学历条件来分析。 前端工程师,相同工作年限,不同城市的薪酬存在差异 最低和最高薪酬方面,1-3 年,均是北京\u003e上海\u003e=杭州 最低和最高薪酬方面,3-10 年,均是北京\u003e上海=杭州 算法工程师,相同工作年限,不同城市的薪酬也出现差异 最低和最高薪酬方面,1-10 年,均是上海\u003e=北京\u003e杭州,出乎意料上海的薪酬比北京略高,背后原因有待挖掘。 随着工作年限的增长,薪酬有所增长,但 1-3 年到 5-10 年的涨幅不到一倍,且薪酬上限平均值全场最高的上海 5-10 年算法工程师也只有不到 60K。猜测资深工程师(P6+)及以上级别的招聘渠道可能主要走其他招聘渠道。 前端工程师和算法工程师确实存在工种之间的薪酬差异,之前猜测的有学历成分不同的影响甚微。 薪酬按学历分布 前端工程师的薪酬受学历影响,本科\u003e大专。 算法工程师的薪酬在本科和硕士之间没有明显差异,博士的薪酬略高于本科和硕士。 薪酬按公司融资情况分布 由之前的分析发现,拉勾网更适合分析 1-5 年的社招情况,不太适合分析 5-10 年的社招情况,这里不再关注 5-10 年的情况。 1-3 年工作经验,D 轮及以上的公司薪酬明显高于其他类型的公司。 上市公司比较看重工作经验。 天使轮的公司也较看重工作经验。 薪酬按公司规模分布 2000 人以上的公司薪酬明显高于其他规模的公司。 ","date":"2021-05-23","objectID":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/:3:4","tags":["求职"],"title":"算法工程师和前端工程师的社招求职分析","uri":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/"},{"categories":["分析报告"],"content":"分析岗位在地理上的分布 前端和算法工程师的工作地点主要集中在余杭区、西湖区和滨江区。 下一步取例如「西溪」、「西兴」这类区域名称的前五个,查询具体坐标,按统计数量作为半径权重在地图上表示。 在地图上可以看出,西溪、古荡一带高校较密集的区域工作机会较多,其次是滨江区和阿里总部所在的仓前街道。 这一块之后可以取更详细的地址,用大的数据样本绘制。 ","date":"2021-05-23","objectID":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/:3:5","tags":["求职"],"title":"算法工程师和前端工程师的社招求职分析","uri":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/"},{"categories":["分析报告"],"content":"词云分析标签的福利 公司福利词云 对算法工程师 JD 中的福利生成词云,可以明显看出六险一金、五险一金、股票期权、发展空间等是常见福利。 标签词云 行业词云 主要的行业是咨询、短视频、软件服务、内容资讯、人工智能服务等。 ","date":"2021-05-23","objectID":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/:3:6","tags":["求职"],"title":"算法工程师和前端工程师的社招求职分析","uri":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/"},{"categories":["分析报告"],"content":"思考 本篇社招求职分析报告最大的问题是数据量只抓取了拉勾网近期的 JD,数据量不足导致分组统计时每组的数据量太少,容易受极端值影响,例如字节跳动发布的大量 JD 可能会影响 D 轮及以上公司和 2000 人及以上公司的统计值。其他的问题和疑惑如下: 由于数据源问题,较高端的 JD 质量不好,需要通过其他途径补充数据。 薪酬只是从 JD 获取,是一个区间,与入职的具体薪酬还是有差别,而且现金津贴和奖金两块的金额无法获取。 JD 中对于工作经验的要求是以工作年限的方式呈现,如果有咨询公司发布的薪酬报告里通常采用的职级(初级、高级、专家等)会更好,也容易和正规薪酬报告比较。 工作机会分布图可以进一步优化。 本篇社招求职分析报告的优点是整个分析流程清晰且可以用批量处理或代码实现。因此后期如果定期爬取拉勾网数据,可以较快的更新报告,也方面迭代更精确的结果。 ","date":"2021-05-23","objectID":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/:4:0","tags":["求职"],"title":"算法工程师和前端工程师的社招求职分析","uri":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/"},{"categories":["分析报告"],"content":"Changelog 2021-05-23 重新考虑统计偏差问题,添加地理分布和词云 2021-05-22 初稿 ","date":"2021-05-23","objectID":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/:5:0","tags":["求职"],"title":"算法工程师和前端工程师的社招求职分析","uri":"/2021-05-23-%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%E5%92%8C%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%88%E7%9A%84%E6%B1%82%E8%81%8C%E5%88%86%E6%9E%90%E7%8E%A9%E5%85%B7%E7%89%88/"},{"categories":null,"content":" 注重提取:测试效应;PQ4R;用自己话表述;写卡片;输出文章 必要难度:时间必要难度(间隔学习);场景必要难度(换地点记笔记、穿插练习、多主题并行) 增细加工:和已知知识关联;主动获取更详细的拓展知识(出处、作者、他人对该知识的评价等);社交媒体分享(赋予社交意义);记忆技巧(联想记忆、记忆宫殿) 复盘迭代(不断记录和迭代自己的学习方法) Ref: 认知天性 ","date":"2021-05-19","objectID":"/talks/2021-05-19-%E5%AD%A6%E4%B9%A0%E7%9A%84%E5%AE%9E%E7%94%A8%E7%AD%96%E7%95%A5/:0:0","tags":null,"title":"认知心理学中,关于学习的实用策略就只有这几条","uri":"/talks/2021-05-19-%E5%AD%A6%E4%B9%A0%E7%9A%84%E5%AE%9E%E7%94%A8%E7%AD%96%E7%95%A5/"},{"categories":null,"content":" 假设数据没有噪声:分析前要检查数据是否有效、实用 忘记归一化:例如要考虑基础概率的影响 排除异常点:需要先讨论 包括异常点:异常点可能不适合用于普世模型中 忽视季节性:考虑变化背后的周期变化 抛开基数奢谈增长 数据呕吐:找到重要数据 谎报军情的指标:数据指标预警不可过于敏感 「不是在这收集的」综合症:参考不同数据源可能会带来独到的见解 关注噪音:人类容易从噪音中无中生有出模式 Ref:数据科学家 Monica Rogati ","date":"2021-05-09","objectID":"/talks/2021-05-09-10%E6%9D%A1%E5%88%9B%E4%B8%9A%E8%80%85%E9%9C%80%E8%A6%81%E9%81%BF%E5%85%8D%E7%9A%84%E6%95%B0%E6%8D%AE%E5%9C%88%E5%A5%97/:0:0","tags":null,"title":"10 条创业者需要避免的数据圈套","uri":"/talks/2021-05-09-10%E6%9D%A1%E5%88%9B%E4%B8%9A%E8%80%85%E9%9C%80%E8%A6%81%E9%81%BF%E5%85%8D%E7%9A%84%E6%95%B0%E6%8D%AE%E5%9C%88%E5%A5%97/"},{"categories":["分析报告"],"content":"检索:30 分钟 整理:44 分钟 开智信息分析九期 CH0 必修作业,要求在 30 分钟内获取任意话题的优质信息源,刚好公司最近有开展区块链技术的动向,花 30 分钟查一下,看自己能做到什么程度。 按照信分三范式的框架组织思路,大概列举了七八个模块,后来有补充了三四个。 定义:定义、创建、相关学者、社群 因变量:相关学科有哪些、优质学习资源、有哪些事故 自变量:世界范围内有哪些相关应用和企业、我国有哪些相关应用和企业、长时间会造成什么社会重大影响 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/:0:0","tags":["区块链"],"title":"「区块链」30 分钟检索报告","uri":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/"},{"categories":["分析报告"],"content":"定义和创建 思路,去 Wikipedia 找应该有。 区块链(英语:blockchain[1][2][3]或block chain[4][5])是借由密码学[1][6]串接并保护内容的串连文字记录(又称区块)。 每一个区块包含了前一个区块的加密散列、相应时间戳记以及交易资料(通常用默克尔树(Merkle tree)算法计算的散列值表示)[7],这样的设计使得区块内容具有难以篡改的特性。用区块链技术所串接的分布式账本能让两方有效记录交易,且可永久查验此交易。 在 2008 年于《比特币白皮书》[9]中提出“区块链”概念,并在2009年创立了比特币网络,开发出第一个区块,即“创世区块”。 Ref 区块链 - 维基百科,自由的百科全书 Blockchain - Wikipedia 中本聪 - 维基百科,自由的百科全书 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/:1:0","tags":["区块链"],"title":"「区块链」30 分钟检索报告","uri":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/"},{"categories":["分析报告"],"content":"相关学者 思路,在 Google Scholar Citations 搜「blockchain」 获取前 5 页和「blockchain」直接相关的关键词,构造新的检索式:「label:blockchain OR label:blockchain_technology OR label:blockchain_economics」 Ref Google Scholar Citations 1 Google Scholar Citations 2 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/:2:0","tags":["区块链"],"title":"「区块链」30 分钟检索报告","uri":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/"},{"categories":["分析报告"],"content":"社群 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/:3:0","tags":["区块链"],"title":"「区块链」30 分钟检索报告","uri":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/"},{"categories":["分析报告"],"content":"相关学科 思路,查看区块链相关的培养方案和硕士项目,搜索「「blockchain master program」,之后改进为「blockchain master (program or curriculum) site:.edu」和「“区块链” AND “培养方案” filetype:pdf」。 Block I. Fundamentals of Blockchain Module 1. Cryptography and cybersecurity BLOCK II. Blockchain platforms Module 2. Ethereum and Ethereum for business use (Quorum and Hyperledger Besu) Module 3. Hyperledger Fabric Module 4. R3 Corda BLOCK III. Economic-business applications of the Blockchain Module 5. IT project management Module 6. Blockchain architecture design Module 7. Sovereign Identity based on Blockchain Module 8. Blockchain applied to transport and logistics Module 9. Tokenization of the economy Module 10. Blockchain applied to banking and finance 以上可以初步得出区块链相关的学科有密码学、离散数学、信息安全、博弈论、分布式系统、计算机网络、数据存储等。 Ref Master’s degree Blockchain Technologies | UPC School - Barcelona Master in Blockchain and its Business Applications, Barcelona, Spain. Online Master! 2021 20200724171348636.pdf ","date":"2021-04-23","objectID":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/:4:0","tags":["区块链"],"title":"「区块链」30 分钟检索报告","uri":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/"},{"categories":["分析报告"],"content":"学习资源 Ref 前 Blockchain 门课程 - 在线学习 Blockchain | Coursera ","date":"2021-04-23","objectID":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/:5:0","tags":["区块链"],"title":"「区块链」30 分钟检索报告","uri":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/"},{"categories":["分析报告"],"content":"事故 黑客攻击 Ref 区块链 - 维基百科,自由的百科全书 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/:6:0","tags":["区块链"],"title":"「区块链」30 分钟检索报告","uri":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/"},{"categories":["分析报告"],"content":"有哪些应用 区块链 1.0:数字货币 区块链 2.0:智能合约 区块链 3.0:各行各业的应用(包括资产代币化共享经济、区块链国家等) Ref 重要:区块链底层技术与研究概况 blockchain · GitHub Topics awesome-blockchain · GitHub Topics chaozh/awesome-blockchain-cn: 收集所有区块链(BlockChain)技术开发相关资料,包括 Fabric 和 Ethereum 开发资料 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/:7:0","tags":["区块链"],"title":"「区块链」30 分钟检索报告","uri":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/"},{"categories":["分析报告"],"content":"有哪些企业 Ref 重要:区块链底层技术与研究概况 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/:8:0","tags":["区块链"],"title":"「区块链」30 分钟检索报告","uri":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/"},{"categories":["分析报告"],"content":"下一步检索 私有链为什么不能用分布式技术取代? 由知网「区块链」相关硕博论文的「主题」分布,进一步可以看一下区块链在物联网、供应链、共识机制、身份认证、法律、金融、电网等领域的应用。 智能合约如何构造? 零知识证明、同态加密、拜占庭容错、代理重加密、Hyperledger Fabric、超级账本这些概念是怎么回事? ","date":"2021-04-23","objectID":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/:9:0","tags":["区块链"],"title":"「区块链」30 分钟检索报告","uri":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/"},{"categories":["分析报告"],"content":"changelog 2021-04-23 初稿 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/:10:0","tags":["区块链"],"title":"「区块链」30 分钟检索报告","uri":"/2021-04-23-%E5%8C%BA%E5%9D%97%E9%93%BE30%E5%88%86%E9%92%9F%E6%A3%80%E7%B4%A2%E6%8A%A5%E5%91%8A/"},{"categories":["分析报告"],"content":"0. 摘要 Google 检索 American top 30 university map ,在地图上筛选出波士顿,并用照片交叉验证;接着 Google Boston buildings ,用照片确定蓝色建筑,进而得出建筑师贝聿铭,Google贝聿铭 AND 成名作 ,并于地图交叉验证;再 Google 贝聿铭 AND 交响乐 与 Siri 听歌识曲交叉验证,得出贝多芬及其音乐。 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/:1:0","tags":["信息检索"],"title":"信息检索:寻找建筑师","uri":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/"},{"categories":["分析报告"],"content":"1. 背景 根据三段线索,查找出其中的关键人物、地点等。 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/:2:0","tags":["信息检索"],"title":"信息检索:寻找建筑师","uri":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/"},{"categories":["分析报告"],"content":"2. 分析过程 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/:3:0","tags":["信息检索"],"title":"信息检索:寻找建筑师","uri":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/"},{"categories":["分析报告"],"content":"2.1 思路 线索一:城市 根据「美国港口城市」、「河流自西南向东北流过」和「大西洋的海风」,可大致判断城市 A 是阿巴拉契亚山脉以东的大西洋沿岸城市; 「世界著名的高等学府」,可根据检索美国 top 高校筛选出候选城市; 「河的南岸。。。」,可猜测河的南岸是城市的发源地和中心地带; 照片可以图搜图,精确定位 线索二:乐曲 音乐可以用听歌识曲辨别 线索三:建筑 若城市 A 已知,可利用地图 APP 找到蓝色高楼 F 和设计师 E 「座黑白分明、线条明朗的建筑」的「成名作」G,可交叉验证城市 A 建筑师 E 与 C 乐曲的关系,可交叉验证 C ","date":"2021-04-23","objectID":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/:3:1","tags":["信息检索"],"title":"信息检索:寻找建筑师","uri":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/"},{"categories":["分析报告"],"content":"2.2 具体步骤 2.2.1 检索美国 top 高校筛选出候选城市,照片交叉验证 Google: American top 30 university map ,点进第一条如下,放大几个可能的城市查看一下。 其中同时满足「河流自西南向东北流过」、「学府在河北,城市花园和市中心在河南」的城市只有波士顿。 Google: Boston skyline,看到了众多照片与题目中照片相似。 因此,A:波士顿;B:查尔斯河; 2.2.2 在地图上查找地理信息 Google: Boston buildings ,得出 F:约翰·汉考克大厦。 Google: 约翰·汉考克大厦,设计师有贝聿铭和亨利·N.柯布。Google:贝聿铭 AND 成名作 并交叉验证地图上约翰·汉考克大厦东南五公里(用刻度尺比划),得出,E:贝聿铭;G:肯尼迪图书馆;H:42.3°N,71.0°W。 2.2.3 建筑师与音乐家 Google: 贝聿铭 AND 交响乐 ,查到访谈集《贝聿铭谈贝聿铭》的一段话 贝:年轻时我在中国对西方音乐了解很少。我第一次听到西方音乐是在波士顿交响乐厅,那是美国最优秀的交响乐厅之一,当时我被贝多芬的交响乐深深地打动了。从此我就经常光顾唱片店并开始收集唱片,后来我把这些唱片都送给了收集古董的朋友。 Siri 听歌识曲交叉验证,得出,C:贝多芬;D:symphony no. 6 in f major op. 68; ","date":"2021-04-23","objectID":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/:3:2","tags":["信息检索"],"title":"信息检索:寻找建筑师","uri":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/"},{"categories":["分析报告"],"content":"3. 结论 A:波士顿;B:查尔斯河;C:贝多芬;D:symphony no. 6 in f major op. 68;E:贝聿铭;F:约翰·汉考克大厦;G:肯尼迪图书馆;H:42.3°N,71.0°W。 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/:4:0","tags":["信息检索"],"title":"信息检索:寻找建筑师","uri":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/"},{"categories":["分析报告"],"content":"ChangeLog 2021-04-23 更新图床 2019-12-02 初稿 ","date":"2021-04-23","objectID":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/:5:0","tags":["信息检索"],"title":"信息检索:寻找建筑师","uri":"/2021-04-23-%E5%AF%BB%E6%89%BE%E5%BB%BA%E7%AD%91%E5%B8%88/"},{"categories":null,"content":"社会学是研究社会结构与社会制度的一门实证性学科。 ","date":"2021-04-21","objectID":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/:0:0","tags":null,"title":"《牛津通识读本:社会学的意识》笔记","uri":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/"},{"categories":null,"content":"第二章:社会结构 ","date":"2021-04-21","objectID":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/:1:0","tags":null,"title":"《牛津通识读本:社会学的意识》笔记","uri":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/"},{"categories":null,"content":"社会学的中心线 社会学的中心线由三部分构成,现实是在社会中构建的、我们的行为具有隐蔽的社会原因、大部分的社会生活具有深刻的讽刺意味(不曾预料的后果),在中心线之外悬挂着许多主题,诸如阶级结构、家庭、教育等。 ","date":"2021-04-21","objectID":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/:1:1","tags":null,"title":"《牛津通识读本:社会学的意识》笔记","uri":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/"},{"categories":null,"content":"违规者 尽管我们可以把社会理解为受大量规则支配、由互相关联的角色构成的不同群体,但我们也必须意识到社会秩序是不断流动的,其中还有偌大空间供某些角色即兴表演。 ","date":"2021-04-21","objectID":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/:1:2","tags":null,"title":"《牛津通识读本:社会学的意识》笔记","uri":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/"},{"categories":null,"content":"第三章:原因与结果 专业社会学不同于非专业社会学。首先,它注重公平,社会学家对健康、财富、幸福的兴趣不亚于对疾病、贫困、抑郁的兴趣;其次,它注重证据引导。第三,它关注一般和典型,而非个体。 ","date":"2021-04-21","objectID":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/:2:0","tags":null,"title":"《牛津通识读本:社会学的意识》笔记","uri":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/"},{"categories":null,"content":"意想不到的结果 米歇尔斯给出的解释是这样的:任何团体活动都需要有组织。然而,一旦某个团体开始组织,他们就在这个运动内部引起了被组织者和组织者之间、普通成员与官员之间的分裂。后者很快获得知识和专门技能,这些知识和专门技能将他们与普通成员区分开来,并赋予他们凌驾于普通成员之上的权力。 人拥有反身意识,能够思考他们所做的一切。这并不意味着他们总能主宰自己或环境,但的确意味着他们能从自身和别人的错误中吸取教训。 ","date":"2021-04-21","objectID":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/:2:1","tags":null,"title":"《牛津通识读本:社会学的意识》笔记","uri":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/"},{"categories":null,"content":"现代性 现代化的一个特征是理性官僚制的大量增加。 现代生活与其说是有社区还不如说是由民族国家组织安排的,这使社会与文化之间的联系自相矛盾。一方面,民族国家需要某种程度的内部同质性,通过一种共享语言和一部民族史(最好是一部英雄史)来促进一种共享的身份。它要求对祖国的忠诚。但与此同时,现代民族国家必须容忍其境内极为多样的文化。 ","date":"2021-04-21","objectID":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/:2:2","tags":null,"title":"《牛津通识读本:社会学的意识》笔记","uri":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/"},{"categories":null,"content":"失范与社会秩序 默顿的具体论点是,我们可以把社会理解为两个相对独立的领域:文化和社会结构。文化告诉我们两件事:我们应向往什么和我们应如何表现。结构描述着权利、财富和地位的分配。 ","date":"2021-04-21","objectID":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/:2:3","tags":null,"title":"《牛津通识读本:社会学的意识》笔记","uri":"/talks/2021-04-21-%E7%89%9B%E6%B4%A5%E9%80%9A%E8%AF%86%E8%AF%BB%E6%9C%AC%E7%A4%BE%E4%BC%9A%E5%AD%A6%E7%9A%84%E6%84%8F%E8%AF%86/"},{"categories":["读书笔记"],"content":"《社会学的邀请》读书笔记","date":"2021-04-21","objectID":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/","tags":["社会学"],"title":"初识社会学","uri":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/"},{"categories":["读书笔记"],"content":"什么是社会学 默顿的具体论点是,我们可以把社会理解为两个相对独立的领域:文化和社会结构。文化告诉我们两件事:我们应向往什么和我们应如何表现。结构描述着权利、财富和地位的分配。 从结果视角看,社会学是研究社会结构与社会制度的一门实证性学科,社会制度是社会总体结构的主要要素。 从另一个过程视角看,社会学有四个基本部分:个人、社会、个人与社会、差异性的后果,社会学是对个体与社会之间的关系以及差异性后果的系统研究。 个人是怎么实现社会建构的,我们如何理解自己和世界,如何让生活富有意义,如何选择未来的道路。 社会分为结构(包括关系与社会网络)、文化(包括物质文化、认知文化、规范文化)、互动(包括我们的结构地位内部文化资源的交换)。 个体与社会相互影响,社会影响个体的自我建构,同时个体具有能动性,能在与社会的互动中影响社会。 差异性后果是指经济、社会与文化资源是如何分配的,它们为个体所创造的怎样的机会和障碍。 社会学研究有两个立场,客观分析的科学社会学立场,以及积极投入的改革社会学立场,后者在和平年代比较沉寂。 社会学的中心线由三部分构成,现实是在社会中构建的、我们的行为具有隐蔽的社会原因、大部分的社会生活具有深刻的讽刺意味(不曾预料的后果),在中心线之外悬挂着许多主题,诸如阶级结构、家庭、教育等。 ","date":"2021-04-21","objectID":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/:1:0","tags":["社会学"],"title":"初识社会学","uri":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/"},{"categories":["读书笔记"],"content":"不可绕过的三巨头 涂尔干、马克思和韦伯。 涂尔干,证明了社会学可以用科学演绎法获得研究结果。在涂尔干之前,自杀被人们视作一种个体的选择,涂尔干比较了部不同性别、婚姻状况、社会经济地位对自杀行为的影响,证明了社会力量能够影响像自杀这样极端的个人选择的行为。从而涂尔干证明了社会塑造个人。 涂尔干关注工业革命到社会的影响,关注集体意识(一个集体共享的一套观念、信仰和价值)、劳动分工(生产的专门化程度)、社会团结(社会各部分相互联系和稳定程度)。 马克思关注的是工业革命对生产的影响,他与涂尔干最大的分歧在于,涂尔干强调相互依赖的有机团结(一个汉堡生产中体现的社会合作)是社会进步的必然,而马克思把革命(彻底推翻既有的社会关系)看作实现美好社会的唯一途径。涂尔干关注工业革命对社会的影响,马克思更进一步,他认为这种影响威胁到了人类本身。 马克思做的主要工作是分析资本主义,预言资本主义必将灭亡,社会主义必将到来。马克思做了五个预设:人类必须生产,生产使我们成为独一无二的人类,我们把自己投入到产品之中,经济基础决定社会(上层建筑),短缺和分配是现实美好社会的障碍。 前三个预设体现了马克思的劳动力概念,经济基础决定上层建筑的隐含意义是社会关系制度是为统治精英利益服务的,资源的稀缺性和分配的不均衡会让资本主义社会阶级冲突逐渐严重至难以为继。 韦伯,认为马克思的唯物主义的经济决定社会的观点过于简单,他认为思想和信仰也会影响我们的行动。首先,韦伯在其《新教伦理与资本主义精神》一书中提出了以工作伦理为核心的新教(人类要在上帝安排的职业、天职中努力工作,资本主义精神)促进了现代资本主义的产生。进一步,韦伯建立了更一般的权力(即使他人反对依然能够实现自己意愿的机会)理论,他将合法权利分为三种类型:传统型权威(父母对子女)、人格品质型权威(领袖的影响)和法理型(科层制)权威。 马克思认为经济资源是唯一的资源,韦伯提出了阶级、地位和党派的多维权利观,现在社会学在此更近一步,提出了更高明的社会资本理论。 ","date":"2021-04-21","objectID":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/:2:0","tags":["社会学"],"title":"初识社会学","uri":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/"},{"categories":["读书笔记"],"content":"学习社会学的两个收获 ","date":"2021-04-21","objectID":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/:3:0","tags":["社会学"],"title":"初识社会学","uri":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/"},{"categories":["读书笔记"],"content":"如何了解社会文化和社会结构? 我们可以通过分析不同群体的消费选择、流行传闻、娱乐偏好等等社会生活方式,来了解社会文化和社会结构。 举例来说,通过分析不同群体的消费选择,我们可以发现消费行为如何反映社会地位和身份认同。例如,高收入群体可能倾向于选择奢侈品,象征财富和地位,而年轻群体更可能偏好个性化商品,以展示独特的自我表达。这些消费偏好揭示了群体的价值观和身份构建。 流行传闻也是一种反映社会文化的窗口,比如,关于健康和生活方式的传闻往往与公众的健康焦虑和社交需求相关。这种传闻背后往往隐藏着对科技进步、医药知识的信任与质疑,展示了社会对生活质量的重视和对不确定性的集体反应。 在娱乐偏好方面,不同群体的选择如电影、电视节目或运动偏好等,也常常与社会背景密切相关。比如,喜爱历史剧的观众可能关注文化认同和国家历史,而年轻人偏爱的科幻电影则可能代表着对未来技术和社会变革的好奇与期待。娱乐选择既反映了人们的兴趣,也揭示了他们对未来的渴望和对当下的集体想象。这些都为我们理解社会文化和结构提供了生动的切入点。 ","date":"2021-04-21","objectID":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/:3:1","tags":["社会学"],"title":"初识社会学","uri":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/"},{"categories":["读书笔记"],"content":"社会学的想象力 通过社会学的想象力,我们可以看清个人生活与社会结构的联系。比如,马斯克的影响力并非仅源于个人成就,而是得益于现代科技、资本市场的全球化等复杂的社会力量。我们是否能与这样的人物产生交集,反映的不只是个人能力或机遇,而是我们所处的社会地位、职业网络和文化背景如何塑造了我们的交往圈层。 类似地,决定我们是否周一去公司上班的,不只是个体的意愿,而与工作制度、劳动文化和社会规范息息相关。在现代社会,按周上班的结构是工业化进程的产物,折射出社会对生产效率和时间安排的期望。如果能意识到这些制度并非自然而然,我们就更容易理解为什么有些人倡导弹性工作制、远程办公等新型模式。 社会学的想象力赋予我们“跳出日常”的视角:它提醒我们,个人的选择往往被更大的历史、经济、政治因素所塑造,让我们不仅关注自身的处境,更审视我们所身处的社会结构。这种思维方式帮助我们理解自我,同时发现个人与社会的深层联系。 ","date":"2021-04-21","objectID":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/:3:2","tags":["社会学"],"title":"初识社会学","uri":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/"},{"categories":["读书笔记"],"content":"Ref 《社会学的邀请》 《牛津通识读本:社会学的意识》 ","date":"2021-04-21","objectID":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/:4:0","tags":["社会学"],"title":"初识社会学","uri":"/2021-04-21-%E5%88%9D%E8%AF%86%E7%A4%BE%E4%BC%9A%E5%AD%A6/"},{"categories":null,"content":"反常识 1 常识:之前只是觉得桥很重要,它决定了最大连通图的节点数量。 反常识: 个体越靠近网络中的桥梁,他们在工具性行动中获取的社会资本越好。 书中还强调了 对于工具性行动、位置(靠近桥梁)强度由桥梁所连接的不同资源而定。 也就是说,A 圈子里面的人,想获取 B 圈子的资源,单单连接 B 圈子还不够,最好是连接 B 圈子里面掌握较多资源的节点。 ","date":"2021-04-05","objectID":"/talks/2021-04-05-%E7%A4%BE%E4%BC%9A%E8%B5%84%E6%9C%AC%E7%90%86%E8%AE%BA%E6%A8%A1%E5%9E%8B/:0:1","tags":null,"title":"社会资本理论模型","uri":"/talks/2021-04-05-%E7%A4%BE%E4%BC%9A%E8%B5%84%E6%9C%AC%E7%90%86%E8%AE%BA%E6%A8%A1%E5%9E%8B/"},{"categories":null,"content":"反常识 2 常识:通常教育会教学生,人生而平等,潜意识里面会觉得不同阶级的人可以互相连接上。 反常识: 对位于等级制顶部及附近和底部及附近的行动者而言,网络运作(关系和位置)效应受到等级结构的限制。 也就是说,上层的人联系其他阶级的人的动机不足,同时下层的人的互动对象往往都被同个阶级的人所占据,因此不同阶级之间存在着阻隔。如何主动的去打破这种阻隔呢?可以尝试连接异质网络,例如读书会、汉服社、同性恋团体等。 ","date":"2021-04-05","objectID":"/talks/2021-04-05-%E7%A4%BE%E4%BC%9A%E8%B5%84%E6%9C%AC%E7%90%86%E8%AE%BA%E6%A8%A1%E5%9E%8B/:0:2","tags":null,"title":"社会资本理论模型","uri":"/talks/2021-04-05-%E7%A4%BE%E4%BC%9A%E8%B5%84%E6%9C%AC%E7%90%86%E8%AE%BA%E6%A8%A1%E5%9E%8B/"},{"categories":null,"content":"ChangeLog 2021-04-05 初稿 ","date":"2021-04-05","objectID":"/talks/2021-04-05-%E7%A4%BE%E4%BC%9A%E8%B5%84%E6%9C%AC%E7%90%86%E8%AE%BA%E6%A8%A1%E5%9E%8B/:0:3","tags":null,"title":"社会资本理论模型","uri":"/talks/2021-04-05-%E7%A4%BE%E4%BC%9A%E8%B5%84%E6%9C%AC%E7%90%86%E8%AE%BA%E6%A8%A1%E5%9E%8B/"},{"categories":null,"content":"1931 年,亨利•贝克改进了伦敦地铁线路图(图二)。那时,伦敦地铁发达程度已经跟 2021 年深圳(图一)差不多了,太可怕了,跟发达国家的差距太大了。 ","date":"2021-02-05","objectID":"/talks/2021-02-05-subway/:0:0","tags":null,"title":"","uri":"/talks/2021-02-05-subway/"},{"categories":null,"content":"2121 年,污水沟边上,一女孩一边觅食,一边吸着人造蛋白液,发现了一条松花蛇。 2071 年,CO2 浓度超过 1200ppm。西伯利亚泥土吞噬了欧亚铁路,大西洋湿气吹绿了中亚大草原,密西西比河、长江、恒河、刚果河洪水泛滥,人类栖息地重新洗牌。 2121 年,日记本第一页,男人写下今日卡路里记录: 摄入(1730) 早餐(230):豆奶(100),菜包(130) 中餐(800):虾(200),米饭(350),玉米(150),食用油(50),青菜(50) 晚餐(700):轻食套餐(600),坚果(100) 消耗(2100) 基础代谢(1500) 日常活动(300) 间歇跑(300) 总计减少 370 千卡路里。 ","date":"2021-01-28","objectID":"/talks/2021-01-28-earth-story/:0:0","tags":null,"title":"地球往事","uri":"/talks/2021-01-28-earth-story/"},{"categories":null,"content":" 避免过度节食,控制在 1200 千卡的热量摄入,营养均衡搭配。 适量运动,单词中高强度有氧运动不超过 2 小时,减肥控制在 1 小时左右,保健控制在 30 分钟。力量训练单次不超过 35 组。 锻炼时放轻松,不要有心理压力。 不要饿肚子运动,持续 1 小时的中高强度运动后适量补糖,运动后正常饮食。 ","date":"2021-01-28","objectID":"/talks/2021-01-28-fat-heat/:0:0","tags":null,"title":"如何预防减肥过程中导致的身体损伤?","uri":"/talks/2021-01-28-fat-heat/"},{"categories":null,"content":"人体一公斤脂肪什么概念,7700千卡,慢跑26小时(配速7,300千卡每小时)。 减脂运动如何选择?每个人都可按自己的需求配比持续性有氧运动、HIIT和力量训练。之前断断续续有过慢跑的尝试,现在想来似乎不太适合我,耗时长,不易坚持,两个缺点都很致命,看来我需要尝试一下更有趣的其他两项了。 ","date":"2021-01-27","objectID":"/talks/2021-01-27-fat/:0:0","tags":null,"title":"","uri":"/talks/2021-01-27-fat/"},{"categories":null,"content":" Tim Berners-Lee:万维网发明者 Brendan Eich:Javascript 作者 Bjarne Stroustrup:C++ 之父 Alan Kay:面向对象编程和窗口式用户界面的开创者 Anders Hejlsberg:Delphi、C#、.NET 和 TypeScript 之父 ","date":"2020-11-20","objectID":"/talks/2020-11-20-%E4%BC%9F%E5%A4%A7%E7%A8%8B%E5%BA%8F%E5%91%98/:0:0","tags":null,"title":"伟大程序员","uri":"/talks/2020-11-20-%E4%BC%9F%E5%A4%A7%E7%A8%8B%E5%BA%8F%E5%91%98/"},{"categories":null,"content":"策略类 文明 6 卡卡颂 塌方 Bad North ","date":"2020-11-18","objectID":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/:0:1","tags":null,"title":"iPad 游戏精选","uri":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/"},{"categories":null,"content":"RPG 晶体管 设备 6 在弗雷迪家住五晚 框架 超光速航行:拼图和叙事胜 她的故事 隐藏的人 ","date":"2020-11-18","objectID":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/:0:2","tags":null,"title":"iPad 游戏精选","uri":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/"},{"categories":null,"content":"推理类 Ghost Trick ","date":"2020-11-18","objectID":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/:0:3","tags":null,"title":"iPad 游戏精选","uri":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/"},{"categories":null,"content":"动作类 GTA ","date":"2020-11-18","objectID":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/:0:4","tags":null,"title":"iPad 游戏精选","uri":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/"},{"categories":null,"content":"独立游戏 INSIDE ","date":"2020-11-18","objectID":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/:0:5","tags":null,"title":"iPad 游戏精选","uri":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/"},{"categories":null,"content":"新类型游戏 隐形守护者:互动电影游戏 ","date":"2020-11-18","objectID":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/:0:6","tags":null,"title":"iPad 游戏精选","uri":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/"},{"categories":null,"content":"Ref http://www.marstranslator.com/f/zh-CN/5327/the-50-best-ipad-games ","date":"2020-11-18","objectID":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/:0:7","tags":null,"title":"iPad 游戏精选","uri":"/talks/2020-11-18-ipad-%E6%B8%B8%E6%88%8F%E7%B2%BE%E9%80%89/"},{"categories":null,"content":"国际贸易标准分类(SITC) 国际贸易标准分类(Standard International Trade Classification,简称:SITC)为用于国际贸易商品的统计和对比的标准分类方法。 该分类法将商品分为为 10 大类: 初级产品 0 类:食品和活畜 1 类:饮料及烟类 2 类:非食用原料(燃料除外) 3 类:矿物燃料,润滑油及有关原料 4 类:动植物油,脂及蜡 工业制品 5 类:化学成品及相关产品 6 类:按原料分类的制成品 7 类:机械及运输设备 8 类:杂项制品 9 类:未分类商品 ","date":"2020-11-17","objectID":"/talks/2020-11-17-%E5%A4%96%E8%B4%B8%E8%B4%A7%E7%89%A9%E7%BC%96%E7%A0%81/:1:0","tags":null,"title":"外贸货物编码","uri":"/talks/2020-11-17-%E5%A4%96%E8%B4%B8%E8%B4%A7%E7%89%A9%E7%BC%96%E7%A0%81/"},{"categories":null,"content":"协调制度(HS) 协调制度(Harmonized Commodity Description and Coding System,一般称为 Harmonized System,简称 HS),即商品名称及编码的协调制度,是世界海关组织编制的关于国际贸易商品分类的标准目录,用以统一各国海关对商品分类的界定标准。 通过按照协调制度进行商品归类,海关得以决定对于不同的商品征收相应的关税及采取相应的管理措施。现已有 200 多个国家或者经济联合体采用协调制度,其中 133 个参加了协调制度公约,覆盖了超过 98% 的国际贸易。协调制度除政府部门外,还被贸易业、物流业、商业等业界广泛使用,被称为“国际贸易的语言”。 协调制度的前身是海关合作理事会制定的《海关合作理事会商品分类目录》(CCCN)和联合国制定的《国际贸易标准分类》(SITC)。 2017 年标准:SH_EN_2017.pdf 国内外贸货物查询服务: 公共查询 外贸实务 HS 四位编码查询_海关四位编码 ","date":"2020-11-17","objectID":"/talks/2020-11-17-%E5%A4%96%E8%B4%B8%E8%B4%A7%E7%89%A9%E7%BC%96%E7%A0%81/:2:0","tags":null,"title":"外贸货物编码","uri":"/talks/2020-11-17-%E5%A4%96%E8%B4%B8%E8%B4%A7%E7%89%A9%E7%BC%96%E7%A0%81/"},{"categories":null,"content":"Ref 国际贸易标准分类 - 维基百科,自由的百科全书 协调制度 - 维基百科,自由的百科全书 ","date":"2020-11-17","objectID":"/talks/2020-11-17-%E5%A4%96%E8%B4%B8%E8%B4%A7%E7%89%A9%E7%BC%96%E7%A0%81/:3:0","tags":null,"title":"外贸货物编码","uri":"/talks/2020-11-17-%E5%A4%96%E8%B4%B8%E8%B4%A7%E7%89%A9%E7%BC%96%E7%A0%81/"},{"categories":null,"content":"之前读过《城市的胜利》,该书论证了大城市更节约能源、对生态影响更小。城市和乡村、大城市和小城市、不同城市都在竞争人口,人口在不同人为条件限制下,逐渐向经济效率更高的地方流动。 而这本书则讲述了大城市扩张这一极化的反面——乡村和小城市的收缩,而这一极化现象受到的关注远远小于前者。中国在改革开发四十年中,城市化一直在进行。在过去的大部分时间里,政府一直在推行城镇化,同时限制大城市的扩张,限制人口的自由流动,大力在西部建设开发区,这些政策都与人口自然流动相悖。而近几年,政府开始关注大都市圈的建设,逐步放开户口限制,人口除了从原来绝大多数中国人居住的农村出来,也会从能源枯竭的矿业城市、北方经济活力不足的城市、过去特殊时期由于特殊功能建立的城市、小城市,逐渐移民到经济效益更好的大都市圈。与此同时,老龄化也会加剧城市收缩的进程,年轻人向大都市移民,老人则留在家乡。 从 2020 年开始,在未来的几十年的时间,当下的中国年轻人将会和我一样,一同在余生里见证中国大部分城市的收缩和大都市的扩张。 此时,收缩城市的功能转型将会是中国大部分城市的主题。底特律的惨状大家已经有所目睹,曼切斯特的转型其实我也是持保守观点,并不长期看好。 西方国家和前苏联阵营国家率先面对城市收缩的挑战,目前看来还是无解,唯一的差别就是城市收缩过程发生人间悲剧的多少,而这不能光靠收缩城市本身,而是需要引导人口往大都市流动,同时财政转移来帮助无法帮走的人。 Ref: 收缩的城市 (豆瓣) 收缩、扩张、极化(收缩的城市)书评 在豆瓣看到一篇很深刻的书评,原来出自脉策数据创始人、城市数据团创始人高路拓,学习了。 ","date":"2020-10-12","objectID":"/talks/2020-10-12-reduce-city/:0:0","tags":null,"title":"《收缩的城市》读书笔记","uri":"/talks/2020-10-12-reduce-city/"},{"categories":["读书笔记"],"content":"本书最精彩的地方就是书里面提供的案例,循序渐进的一步步优化一个杂乱的图表。","date":"2020-09-20","objectID":"/2020-09-20-data-for-story/","tags":["数据","故事"],"title":"《用数据讲故事》读书笔记","uri":"/2020-09-20-data-for-story/"},{"categories":["读书笔记"],"content":" 本书最精彩的地方就是书里面提供的案例,循序渐进的一步步优化一个杂乱的图表:除去杂乱的图示,将次要的信息融入背景,突出重点关注的数据,顺着视觉移动,将需要传递的信息展现给受众。 数据沟通是从准备到展示的整个过程,其上下文通常包括需要解释的对象、内容和方式。 ","date":"2020-09-20","objectID":"/2020-09-20-data-for-story/:0:0","tags":["数据","故事"],"title":"《用数据讲故事》读书笔记","uri":"/2020-09-20-data-for-story/"},{"categories":["读书笔记"],"content":"对象 你在跟谁沟通?沟通的第一步是明确沟通对象,细分清楚人群,再分析该群体对你的信任程度。在此基础上,你才能确定沟通目标、信息量。在《Resonate: Present Visual Stories That Transform Audiences》这本书中推荐了将受众视为主人公,并针对了解受众、划分受众、建立共识提出了具体的策略,关于沟通对象分析具体可参考该书。 ","date":"2020-09-20","objectID":"/2020-09-20-data-for-story/:1:0","tags":["数据","故事"],"title":"《用数据讲故事》读书笔记","uri":"/2020-09-20-data-for-story/"},{"categories":["读书笔记"],"content":"内容 你需要受众了解或者做什么?在沟通过程中,你每时每刻都需要有个目标,并希望受众了解或者完成它。反过来,对受众来说,沟通要对他有意义。此时,需要你是最了解这个主题和这些数据的专家,需要从一开始就提出建设性建议,明确希望受众采取的行动,而不是让受众一看即过。如果不适合针对行为提出明确的建议,可以发起讨论。 ","date":"2020-09-20","objectID":"/2020-09-20-data-for-story/:2:0","tags":["数据","故事"],"title":"《用数据讲故事》读书笔记","uri":"/2020-09-20-data-for-story/"},{"categories":["读书笔记"],"content":"方式 明确了沟通的对象和内容,那解释数据这件事就被约束在一个有明确边界的题解之中,迭代次数大大减小。此时,我们可以像做题一样去解决它,这个问题可能是:有什么数据可以用来表达观点? 沟通方式需要同时有数据和故事,故事展现具体的情境,能让受众更容易产生共鸣,而数据使得故事更加真实可信。 ","date":"2020-09-20","objectID":"/2020-09-20-data-for-story/:3:0","tags":["数据","故事"],"title":"《用数据讲故事》读书笔记","uri":"/2020-09-20-data-for-story/"},{"categories":["读书笔记"],"content":"图表选择 常用数据可视化图表: 简单文本:只有一两项数据 表格:需要展示多个兴趣点(不同受众),采用不同计量单位的情况使用 热力图:表格的特例 散点图:常用于科学领域,探索性分析 折线图:绘制连续数据 斜率图:折线图的特例,用于两组或两个时段数据的对比 竖直条形图:用于比较大小,人们会自觉去对齐条形图末端;水平条形图比竖直条形图更易阅读 堆叠竖直条形图:展示不同类别间整体或者子成分的比较;堆叠水平条形图比堆叠竖直条形图更易阅读 瀑布图:用于抽离出堆叠条形图中的一部分进行重点关注,或者展示起点和结果以及其中的升降变化 方形面积图:一般避免使用,人眼不擅长在二维空间进行定量度量,除非相差极大的数值的比较 3D图表:永远别用,比例失真 饼图:不建议使用,人眼不易度量 双Y轴:重点不容易突出,可用变体替代 ","date":"2020-09-20","objectID":"/2020-09-20-data-for-story/:3:1","tags":["数据","故事"],"title":"《用数据讲故事》读书笔记","uri":"/2020-09-20-data-for-story/"},{"categories":["读书笔记"],"content":"设计原则:突出焦点,一致风格,层次清晰 利用格式塔原则建立秩序 临近原则:物理上临近的个体属于一个群体 相似原则:颜色、形状、大小、方向相关的个体被视为一个群体 包围原则:物理上被包围在一起的个体属于同一个群体 闭合原则:分散的个体容易被大脑中已有的模式识别为一个群体 连续原则:人眼倾向于寻找平稳的路径并自然创造出连续性 连接原则:物理上连接在一起的个人被视为一个群体 利用布局和格式划分层次 对齐:建立横向和纵向的界限 留白:利用停顿增加回味的时间 简约:减少展示的图示,减少信息量,减少信息加工,例如将标签直接标记在图形上 层次感:将无用的边框、网格、节点去掉,将不重要的坐标轴、次要数据融于背景 利用前注意(形象记忆)属性聚焦重点 之字顺序:按「之」字的阅读顺序排列内容 独特标示:任何字体、颜色、边框、位移的变化都会吸引更多的注意 绑定解释:针对前注意属性聚焦的数据,在标题或者下一个注意的位置展示解释文字 无障碍:考虑8%男性红绿色盲和黑白打印的情形 ","date":"2020-09-20","objectID":"/2020-09-20-data-for-story/:3:2","tags":["数据","故事"],"title":"《用数据讲故事》读书笔记","uri":"/2020-09-20-data-for-story/"},{"categories":["读书笔记"],"content":"其他资源 eagereyes – Visualization and Visual Communication 包含关于数据可视化和图表讲故事的深刻思考 FlowingData 数据可视化示例 Junk Charts 关注如何绘制图表和改进 Home - Visualising Data 每月「网络最佳图表」资源列表 VizWiz 数据可视化最佳实践、改进现有作品的方法 WTF Visualizations 数据可视化的反例 ","date":"2020-09-20","objectID":"/2020-09-20-data-for-story/:4:0","tags":["数据","故事"],"title":"《用数据讲故事》读书笔记","uri":"/2020-09-20-data-for-story/"},{"categories":["读书笔记"],"content":"加缪一开始明确了论证起点——世界是荒诞的,人生本没有意义。其中的论述是通过一层层的逻辑推理,不过在 21 世纪的今天,我们已经有了更好的证据,而且不用刻意去顾及宗教。 人类历史上曾经历过四次沉重的打击:第一次来自哥白尼,他揭示了地球不是太阳系的中心;第二次来自达尔文,他论述了人类也是由低等生物进化而来;第三次来自弗洛伊德,他论证了人类的行为也受本能控制,人类不是完全理性的;第四次则来自前几年的 AlphaGo,他打击了人类引以为傲的智慧。 除此之外,还有数不清的证据揭露世界的荒诞,例如薛定谔的猫、大尺度时空视野、基因载体等等。 既然如此,那人需要以何种态度去面对人生?加缪归纳了三种,生理自杀、哲学自杀和西西弗式反抗。 生理自杀是一种消极应对,自认无法摆脱荒谬世界这一阴影,而选择逃避。哲学自杀则是精神上的逃避,在精神世界中造出一个神,在虚幻中逃避孤独。而第三种态度是坚持反抗,永不气馁,依靠自由、平等、博爱等等人类美德去构建人生的意义。 加缪推崇的无疑是反抗的态度。那么,人如何做出反抗,如何获得生命的意义和尊严? 在下非常喜欢《死亡诗社》里面的一段话: 我们读诗,写诗并不是因为它们好玩,而是因为我们是人类的一分子,而人类是充满激情的。 没错,医学、法律,商业,工程,这些都是崇高的追求,足以支撑人的一生,但诗歌,美丽,浪漫,爱情……这些才是我们活着的意义。 人类有美德、有良知、有情感,还有好奇心和激情,这些便是人类生命的意义和尊严所在。 当我们不再只像工具一样去追求一个理性的目的,当我们因好奇拐进林荫小道,或是因烦恼茶不思饭不响,此时我们活得真像个人。这也是管理大师马奇老爷子说过的,“如果只在不被辜负时去信任,只在有所回报时去爱,只在学有所用时去学习,那么就放弃了人之为人的特征”。 至此,以上就是加缪可能想表达的,或者在下窃窃误读的。 在此之后,我们可能还需要考虑,作为个体,我认为最大的荒谬是什么?我又该如何去反抗? 。。。来,让我们一起哼一下《阿珍爱上了阿强》,“虽然说人生并没有什么意义,但是爱情确实让生活更加美丽”。 ","date":"2020-09-20","objectID":"/2021-03-14-the-myth-of-sisyphus/:0:0","tags":["人性"],"title":"你认为最大的荒谬是什么","uri":"/2021-03-14-the-myth-of-sisyphus/"},{"categories":null,"content":"开发说白了就四件事情 知识(理论):范围很广,但特定场景下用到的不到,或者说能落地的不多。一般学一些基本的,遇到了再补习一下。 编码:内隐的能力,程序员核心能力,影响开发速度和解决问题的能力。提升比较,需要刻意练习,例如参加算法比赛。 工程:用于解决规模、效率、质量问题,公司做大必须要解决的问题,也是程序员最常拿来晋升的工具。靠经验积累,容易提升,但需要环境去经历。 业务:行业知识、业务知识、精益管理啥的,是程序员的弱项。容易入门,难以精通,通常需要在全局认识的基础上,深入调研,才能知道别人不知道的密码。 明白了这点,如何提升就一目了然了。 ","date":"2020-09-03","objectID":"/talks/2020-09-03-dev/:0:0","tags":null,"title":"开发四件事情","uri":"/talks/2020-09-03-dev/"},{"categories":null,"content":"今天是到深圳的第一个周末,刚好住在华强北旁边,就顺便逛了一下。其中一个数码市场,一楼是回收旧手机和以旧换新,二楼是手机的批发和电商,三楼是手机配件、钢化膜的批发和电商。按照一楼到三楼店铺租金逐次下降的规律,回收旧手机的利润率应该很高,而且一楼交易规模明显小于楼上,因此需要的利润率更高。 翻新机市场中的信息不对称造成了巨大的利润空间,这其中应该可以出现几家强势的商家,提供更规范的流程,使得信息更透明,从而挤占其他商家的市场份额。 之前看跨境电商的书了解到深圳在跨境电商市场上一骑绝尘,今天来华强北一逛,确实不无道理。 对比义乌小商品市场,华强北市场的产品明显更有科技含量,对比其他的例如成都女鞋、海宁皮革也是如此。 在制造业领域,长三角落后珠三角十年,内陆省份落后长三角十年的说法不无道理。 ","date":"2020-08-22","objectID":"/talks/2020-08-22-huaqiangbei/:0:0","tags":null,"title":"华强北游记","uri":"/talks/2020-08-22-huaqiangbei/"},{"categories":null,"content":"今天大致翻完了周轶君(此类女性太有吸引力了)这本中东记者笔记,副标题是全球民主浪潮的见证与省思。为何看这本书觉得特别混乱,可能是因为被民主浪潮席卷的中东就是如此混乱,最典型的例子就是土耳其一家子人,政治见解分歧巨大。 另外收获一个反常识的点:专业记者并没有比旅行者能够接触到更多的信息,关键还是出发前做的功课,发现自己的困惑并追踪下去。因此客居者写的关于中东的书可以不用在读了,需要读的是历史书籍和定居者对近二三十年社会面貌的描写,之后需要做的是踏上这篇土地去见证。 ","date":"2020-08-08","objectID":"/talks/2020-08-08-zhouyijun/:0:0","tags":null,"title":"《走出中东》读后感","uri":"/talks/2020-08-08-zhouyijun/"},{"categories":null,"content":"温老是我国著名的三农问题专家,是一位干部出身的学者,实地考察几十个国家,在国内多个地方试点实验。让人印象最深刻的是,共产主义阵营分裂时,温老背起包就去东欧走访,颇具传奇色彩,让人羡慕。 今天看了三个温老的演讲,主要内容是新中国以往几次经济危机、东亚欧美文明的比较、国家资本主义、成本转嫁、乡村建设等。温老说他的理论可以概括为「成本转嫁」四个字,之前是经济危机、文明比较、国家资本主义等基本事实,之后是「乡村建设」这一实践策略(当然他也支持一带一路、基建、自由市场等策略)。 不知道之后会不会去看温老的书和论文,但从几个主要演讲应该可以初步了解温老的想法,就在这层粗浅的理解之下记录几个困惑,以备日后深入学习之时按图索骥。 成本转嫁理论如何解决可持续的问题,就是强势国家向弱势国家转移产业(将来钱慢、辛苦的行业转移出去,留下金融、好莱坞这些来钱快的)时,如何防止弱势国家的制造、科技和军事能力的增强(例如中美的例子)? 一国之内,强势人群向弱势人群转嫁成本时,如何防止贫富差距扩大之后的不稳定? 乡村建设在资金上与新基建、基础科研等是否会存在冲突,各自的效益如何(在下是农村人,也不希望乡村在被剥削一次,但也害怕在产业升级方面的投入不足)? 乡村建设目前来看似乎实践经验远远不够,人才极度缺乏,导致之前大量的无效/负效建设(例如在下家乡的美丽乡村建设,六七百亿投入之后,只得到过度的水泥硬化,和生态破坏),别说农村,就连三四线城市都缺人才。如何更有效的实践乡村建设? ","date":"2020-07-30","objectID":"/talks/2020-07-30-wen/:0:0","tags":null,"title":"《温铁军:中国要如何克服当下的全球化危机》观后感","uri":"/talks/2020-07-30-wen/"},{"categories":null,"content":" 游记、旅行指南:《孤独星球:伊朗》、《伊朗零距离》 伊朗人讲述伊朗:《我在伊朗长大》、《在德黑兰读洛丽塔》、《The Cypress Trees: A Love Letter to Iran》、《欲望德黑兰》、《纳瑟·阿里先生的最后八天》、《大巴扎》、《一个心碎的伊朗女人》 西方人讲述的伊斯兰革命后的伊朗:《Neither East Nor West》、《Persian Mirrors》和《Honeymoon in Purdah》 伊朗史:美国人和伊朗人各写了本《波斯帝国史》,补充李零老师的《波斯笔记》 诗歌和电影:《樱桃的滋味》、《一只狼在放哨》、《蔷薇园》、《随风而行》 Ref: 豆瓣图书标签: 伊朗 ","date":"2020-07-28","objectID":"/talks/2020-07-28-know-iran/:0:0","tags":null,"title":"了解伊朗的一个书单","uri":"/talks/2020-07-28-know-iran/"},{"categories":null,"content":"给外国朋友写了一个学习中文的路书。 ","date":"2020-07-12","objectID":"/talks/2020-07-12-learn-chinese/:0:0","tags":null,"title":"","uri":"/talks/2020-07-12-learn-chinese/"},{"categories":null,"content":"阅读非虚构类的读物,不管是论文、书,还是微博上的文章,其目的都是获取信息。当然,阅读过程中,除了信息还会获取到其他很多东西,例如愉悦、解惑等等,但这些都源自信息,源自对信息对理解和思考。 既然目的是为了获取信息,那么我们大可不必像阅读虚构类读物一样兼顾文本的美感,此时很多简单粗暴的手段都可以用上了。 首先,可以剔除很多不必要读的部分,例如作者不擅长的领域、没诚意的领域等。当下知识大爆炸,缺的不是知识,而是获取知识、消化知识的精力。某一篇文章、某一本书在其所处的领域中都是九牛一毛,我们只需在茫茫沙海中挑选其中的宝石来观赏。没有识别宝石的慧眼也没有关系,每个人起码可以做到筛选手头的知识,先读最有价值的,读完这些你可能会发现周边的其他资源,再重新评估,读最有价值的部分,如此反复。那些积攒在手里的一直没机会读到的,就让它继续呆在那里就好。 对待在同等有价值的读物时,也可以再次区别对待,优先读文本更优美的,可读性更强的,篇幅更短小的。这一步评价可以主观一些,毕竟是为了提升阅读体验,标准只能是自己的。但是,人们的审美往往共性大于差异,这里也可以总结出几条共性。例如,语句短小的比语句冗长的清晰、好读;文章结构清晰,结尾有总结#读书# 的文本更好读;配合图表帮助理解的文章更好读等等。 筛选完读物,开始阅读,此时可以采用抓文本结构、找中心论点和找分论点和证据等方式,把文章的轮廓描绘出来。如果你是个领域新手,很可能会读不懂轮廓里面的细节,你可以选择不读,获取到结论就好。如果你是个领域熟手,可以逐个去分析那些「填充块」,看是否有逻辑漏洞,然后再在文章的层级分析逻辑是否合理。 获取信息时,不需要给不同价值的信息分配相同的权重,重点的重点读,不重要的可以不读。选读和精读相结合,反而可以助你跳出文字的沙漠,从更高的视角去审视文本,抓住文本的核心。 ","date":"2020-07-03","objectID":"/talks/2020-07-03-no-fiction/:0:0","tags":null,"title":"非虚构类读物的阅读方法","uri":"/talks/2020-07-03-no-fiction/"},{"categories":null,"content":"大部分人可能认为,幸福是快乐、满足、舒适的感觉,即包含当下的积极情绪,也包含生活美满,幸福是一个很难说清的概念。 相比于上述对幸福的抽象描述,积极心理学家更喜欢用具体的语言定义它,以便研究。《打开积极心理学之门》第四章中,塞利格曼和罗兹曼(2003)区分了三种传统的幸福理论,每种理论都有对测量幸福的测量方法。 享乐主义 幸福就是人在一生中所有这些具体感受的总和。 测量方法:经验取样法 渴望理论 幸福是得到你想要的东西,不管这个东西是不是会带来快乐。 测量法:直接询问 客观清单理论 世界上有一些具有真正价值的事物,而获得幸福就必学要实现其中的一些。 测量方法:自我报告测量 而研究中经常使用诸如「生活质量」、「主观幸福感」和「生活满意度」这些具体的指标作为研究对象。 在《持续的幸福》中,塞利格曼提出了 PERMA 幸福模型,如下物种元素构成了幸福。 积极的情绪 (postive emotion) 投入(engagement) 人际关系(relationship) 意义(meaning) 成就(accomplishment) 此时,幸福的颗粒度更细致,想要获得幸福,可以通过以上五个方面分别评估,优先改善边际回报更突出的方面。 ","date":"2020-06-17","objectID":"/talks/2020-06-17-happiness/:0:0","tags":null,"title":"什么是幸福","uri":"/talks/2020-06-17-happiness/"},{"categories":null,"content":"周末在 tandem 找了一个伊朗小姐姐聊天,小姐姐是医学院的大一学生,英语跟我这个过六级的差不多。聊天中发现国产智能手机在伊朗普及的同时,外卖在伊朗也普及开来了。 2010 年以来(2015 年除外),伊朗人均 GDP 都高于 5000 美元,推测有较大的人口比例消费的起例如红米这种中低端国产手机。加上伊朗有悠久的历史,文化繁荣,人均受教育水平与中国相当,且伊斯兰革命后政府及其重视教育。尽管政府限制境外网站,但 whatapp, Instagram, google 一些常见的 APP 都能访问。因此互联网生活在伊朗(至少在伊朗的大中城市)流行起来不难理解。 ","date":"2020-06-16","objectID":"/talks/2020-06-16-iran/:0:0","tags":null,"title":"","uri":"/talks/2020-06-16-iran/"},{"categories":null,"content":" 上课听讲重在理解,不同科目要融会贯通。 读书先快读,读大意;再慢读,读懂不明白的地方;最后选读,选出重点。 例子比数学更能帮助推理进行下去,举例子一要简单贴切,需要包含全部重要特征而忽略枝节;二要分真假,实例最佳;三要新奇,容易引起新的启发;四要一般化,使理论更一般化。 学习要从假设大师是对的入手。 读书要一堆一堆读,同类的一堆书,相互比较,选出最好的读。 对于一流之作,要细读,反复读,在精不在多。 不管中英文,文章都讲文气,文气最容易从经典中习得。英文坚持背经典,中文多背《古诗源》。 不把思想写出来,不可能清楚自己想的是什么,这就是写作的重大公用之一。 读书可以不读就不要读,要去读那些非读不可的书。 天才三步走:把有关的技术和只是搞的融会贯通;在思想上能够走进四顾无人的原野;来无影、去无踪的创意层出不穷(不可强求)。 ","date":"2020-05-12","objectID":"/talks/2020-05-12/:0:0","tags":null,"title":"","uri":"/talks/2020-05-12/"},{"categories":null,"content":" 观察,客观陈述具体我/你的行为,例如「我/你看到/听到/想到。。。」的句式 感受,我/你对这事有什么感受(而不是有什么想法),例如「我感到。。。」、「你感到。。吗?」的句式 需求,是什么样的需求/价值(而不是偏好或某种具体行为)导致我/你的感受,例如「因为我/你需要/看重。。。」的句式 请求,清楚地请求(而不是命令)/关切倾听那些有帮助的具体行为,例如「你是否愿意。。。」、「所以你想。。。」的句式 Ref:《非暴力沟通》 ","date":"2020-05-12","objectID":"/talks/2020-05-12-%E9%9D%9E%E6%9A%B4%E5%8A%9B%E6%B2%9F%E9%80%9A%E5%9B%9B%E8%A6%81%E7%B4%A0/:0:0","tags":null,"title":"非暴力沟通四要素","uri":"/talks/2020-05-12-%E9%9D%9E%E6%9A%B4%E5%8A%9B%E6%B2%9F%E9%80%9A%E5%9B%9B%E8%A6%81%E7%B4%A0/"},{"categories":null,"content":"实操上有几点值得借鉴: 通过饱满对睡眠、低血糖饮食、加入社群、WOOP等策略,提高整体意志力; 利用冥想、运动(离开原有对状态就算)、小睡、洗澡、有创意的爱好等放松大脑等方法,调节意志力; 想象长远目标、原谅自己,挽救崩溃后等恶循环; 认识无效的减压方式,「真正缓解压力的不是释放多巴胺或依赖奖励的承诺,而是增加大脑中改善情绪的化学物质」,所以玩游戏、上网、喝酒无法减压,瑜伽、散步、听歌才是减压的正确姿势。 ","date":"2020-05-11","objectID":"/talks/2020-05-11-%E8%87%AA%E6%8E%A7%E5%8A%9B%E8%AF%BB%E5%90%8E%E6%84%9F/:0:0","tags":null,"title":"《自控力》实操技巧","uri":"/talks/2020-05-11-%E8%87%AA%E6%8E%A7%E5%8A%9B%E8%AF%BB%E5%90%8E%E6%84%9F/"},{"categories":null,"content":"黑天鹅事件的三个特点:稀有性、极大的冲击性和事后可预测性。 如何应对黑天鹅事件呢? 拆分事件的颗粒度,区分事件的影响是正面的还是负面的,事件影响的量级。 不要尝试去预测。 抓住一切可能的机会,让自己成为黑天鹅事件。 允许勇于存在,追求广义理性,而非工具理性。 出处:《黑天鹅》 ","date":"2020-05-10","objectID":"/talks/2020-05-10-%E5%A6%82%E4%BD%95%E5%BA%94%E5%AF%B9%E9%BB%91%E5%A4%A9%E9%B9%85%E4%BA%8B%E4%BB%B6/:0:0","tags":null,"title":"如何应对黑天鹅事件","uri":"/talks/2020-05-10-%E5%A6%82%E4%BD%95%E5%BA%94%E5%AF%B9%E9%BB%91%E5%A4%A9%E9%B9%85%E4%BA%8B%E4%BB%B6/"},{"categories":["读书笔记"],"content":"本书 1905 次引用,核心章节 5、6","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"积极心理学是一门怎样的学科,主要研究的是哪些问题? ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:1:0","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"定义 积极心理学是研究人的优势与幸福的一门心理学学科。积极心理学通过快乐、参与和意义来帮助人们通往幸福和快乐。 积极心理学(positive psychology)是一门研究如何正确把握人生的科学,关注从生到死亡的所有人生阶段,关注那些可以提升生命价值的事件。 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:1:1","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"诞生 积极心理学在 1998 年被塞利格曼正式命名,2000 年塞利格曼和契克森米哈赖在《美国心理学家》发表论文《Positive psychology:An introduction》标志着积极心理学的诞生。积极心理学目的是纠正二战后心理学更多关注并致力于纠正人类心理偏差,忽视如何使人们做正确的事的研究。 心理学的一个最重要的假设是,人类善良美好的一面与病态的一面同样真实存在着。 当下的积极心理学关注的是独立于已经有研究和理论的学术性范畴,希望通过关于自我意识的争论使生活更有意义,从而在心理学领域中获得自身价值。 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:1:2","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"分类 积极心理学主要的三个研究领域: 积极的主观体验,包括愉悦、满意、欢乐、实现感; 积极的个人特质,包括性格优势、价值观、兴趣、天赋; 积极的社会关系,包括家庭、学校、单位、社交圈、社会圈等。 积极心理学的分类框架: 积极的情绪 过去的积极情绪体验(幸福、满意) 现在的积极情绪体验(心流、品味) 未来的积极情绪体验(希望、乐观) 积极的个人特质 个人优势测验 自我效能、自我决定论、同理心 积极的组织 心理资本 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:1:3","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"主要资源 积极心理学的代表人物是塞利格曼(习得性无助)、契克森米哈赖(心流)和彼得森(VIA 性格优势)。 专门发表积极心理学的核心期刊有 Journal of Happiness Studies, The Journal of Positive Psychology, Applied Positive Psychology. ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:1:4","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"争议 当然,积极心理学研究的价值也受到其他领域的质疑。社会学家认为人类天性有缺陷且脆弱,对美好生活的真实性存在怀疑,因此怀疑积极心理学存在的价值。 积极心理学只受到少部分心理学家的认可,更像是一种思潮,而不是一个学科。发展心理学家杰罗姆做了如下批评: 定义含糊不清,例如行动心理学加上「积极」是不是积极心理学 积极心理学的干预技巧效果短暂且有限 道德悖论:部分人的快乐来自欺骗他人以及犯罪 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:1:5","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"积极心理学如何说「幸福」? 不看书之前,你认为幸福是什么? 大部分人可能认为,幸福是快乐、满足、舒适的感觉,即包含当下的积极情绪, 也包含生活美满,幸福是一个很难说清的概念。 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:2:0","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"心理学家如何定义幸福?与你想象的定义差别在哪里?为什么会有不同呢? 相比于上述对幸福的抽象描述,积极心理学家更喜欢用具体的语言定义它,以便研究。塞利格曼和罗兹曼(2003)区分了三种传统的幸福理论,每种理论都有对测量幸福的测量方法。 享乐主义 幸福就是人在一生中所有这些具体感受的总和。 测量方法:经验取样法 渴望理论 幸福是得到你想要的东西,不管这个东西是不是会带来快乐。 测量法:直接询问 客观清单理论 世界上有一些具有真正价值的事物,而获得幸福就必学要实现其中的一些。 测量方法:自我报告测量 而研究中经常使用诸如「生活质量」、「主观幸福感」和「生活满意度」这些具体的指标作为研究对象。 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:2:1","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"幸福的分类和变量有哪些? 在《持续的幸福》中,塞利格曼提出了 PERMA 幸福模型,如下物种元素构成了幸福。 积极的情绪 (postive emotion) 投入(engagement) 人际关系(relationship) 意义(meaning) 成就(accomplishment) 此时,幸福的颗粒度更细致,想要获得幸福,可以通过以上五个方面分别评估,优先改善边际回报更突出的方面。 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:2:2","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"如何提升幸福? 本书 P107 页的量表测量的是快乐、投入、意义和胜利四个获得幸福途径上的取向,而Questionnaire Center | Authentic Happiness中的前两个量表分别测量真正的幸福和持久的快乐。从我个人的测量结果来看,幸福和快乐已经是根据幸福途径取向优化过的结果。 幸福取向测量完毕的时候,本来想打算根据幸福取向制定提升幸福的方法,但是既然自己已经不自觉地根据幸福取向调整过了追求幸福的策略,那么还有什么增加幸福的方法吗? 回到书中 P103 页,决定幸福的基本因素是什么,作者给出了一个公式:幸福=界点+生活情境+意志活动。其中界点对于特定的个人来讲,是个常量,能改变的是剩下两个变量。 生活情境就是自己的工作场景、社会关系、健康状况、家庭情况等状态,增加幸福的方法可以是工作上寻找更容易投入的职业、通过锻炼改善健康、去体验快乐的事等。 第三个是意志活动,作者提到感恩拜访、记录三件好事、全力以赴做一件事和用全新的方法来使用性格力量,它们对幸福影响的持久性都好于安慰剂,但只有持续做这些意志活动才能保持长期效应。 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:2:3","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"积极心理学又如何说「性格优势和美德」? 性格优势和美德都是人类优良性格的组成部分。美德是对优良性格的抽象描述,例如智慧、正义;性格优势是对优良性格较具体的描述,也是人们自发描述优良性格的「自然概念」,例如好奇、勇敢、公平。 积极心理学家在 VIA 项目中提出了他们对「优良性格」的理解。 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:3:0","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"如何界定优良性格? 优良性格是一整套的积极特点,既包含人格特质客观实体,也包含具有道德意义的特质。为了表达出优良性格的多元性,他们将它的组成部分称为性格优势(character strengths),并提出假设 各种性格优势在原则上有所区别,一个人可能具有几种水平不同的优势。 性格优势一一种具有一定稳定性和普遍性的个体差异。 性格优势是基于人们的实际行动。 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:3:1","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"性格优势是否存在文化界限? 一些例如智慧、勇气、人道、正义、节制和超越的核心美德在不同文化中普遍存在,但也存在细微差别。 是否将 VIA 性格优势分类于心理学或哲学中的某个优良性格的理论相联系? 以往的理论都无法通过硬证据来完整评估,因此不采取任何已有理论作为外在框架。 分类的条目应该细致到什么程度? 分为六个核心美德种类和 24 种性格优势。 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:3:2","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"VIA 性格优势是什么? 如何才能帮助青年发挥他们的潜力?为了回答这个问题,迈克尔基金会于 2000 年创建了「行动价值」协会(The Values i n Action Institute,VIA),以提供一套通用的描述积极青年发展的概念与经验方法。在 VIA 项目下,积极心理学家联合社会学家,发展出了 VIA 性格优势分类。此分类只是尝试划分优良性格,描述其中的性格优势,并没有基于一个解释性格优势关系的理论。 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:4:0","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"识别性格优势 识别性格优势过程中,积极心理学家回顾了优良性格相关文献,考察了文化产品中直接提到的性格优势,合并后得出如下标准(为了方便记忆,我将其分为三类) 分类 标准 客观性 普适的:在不同文化中被广泛认可 类特质的:是一种个体差异,表现出了普适性与稳定性 可测量的:能够成功地被研究者作为个体差异来测量 有区别的:不与其他性格优势在概念上或经验上重复 积极性 令人满足的:对于个人满足、满意度和一般意义上的幸福感有所贡献 道德上有价值的:这种价值基于其本身,而非其可能产生的实际结果 不贬低他人:使得见证者受到鼓舞,产生钦佩而非嫉妒 有鼓励性的机制:存在一些社会实践或者仪式,将培养它作为目标 差异性 具有一个不良的对立面:有明显“消极”的反面 楷模:在一些个体身上令人惊叹地存在 神童:在一些儿童和青年身上出现早慧现象 可以选择性地缺失:在一些个体身上缺乏 注:详细说明可见彼得森和塞利格曼(2004)的研究 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:4:1","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"VIA 性格优势分类 核心美德 性格优势 智慧与知识优势(strengths of wisdom and knowledge)包括与获取和使用信息为美好生活服务有关的积极特质,属于心理学中的认知优势。 创造力:想出新颖和多样的方式来做事;包括艺术成就,但不限于此 好奇心:对于全部经验保持兴趣;发现所有的话题和主题吸引人;探索和发现 热爱学习:掌握新的技术、主题和知识,不管是自学还是正式学习;很明显与好奇心有关,但除此之外还描述了一种系统性扩充自己知识的倾向 开放头脑:彻底地考虑事物,从各个角度来检验它;不急于下结论;面对证据能够改变观点;公平地对待全部证据 洞察力:能够为他人提供有智慧的忠告;具有对于自己和他人都有意义的看待世界方式 勇气优势(strengths of courage)包括面对内外阻力努力时达成目标的意志,是一种积极行动。 真实性:说出事实,以诚恳的方式呈现自己;不加矫饰地生存;对自己的感觉和行动负责 勇敢:不在威胁、挑战、困难或痛苦面前退缩;为正确的事物辩护,即使存在反对意见;依信念行动,即使不被大多数人支持;包括生理上的勇敢,但不限于此 恒心:有始有终;不顾险阻坚持行动;在完成任务中获得愉悦 热忱:饱含激情和能量地面对生活;不三心二意或半途而废;将生活视为一场冒险;感到有活力有生气 人道优势(strengths of humanity)包括涉及关心和与他人关系的那些积极特质,是一种人际间特质。 友善:为别人提供帮助、做好事;帮助他人;关心他人 爱:珍视与他人的亲密关系,特别是那些相互分享和关心的对象;与他人亲密 社会智力:能够意识到自己和他人的动机和感受;知道如何做才能适应不同的社会情境 正义优势(strengths of justice)具有广泛的社会性,与个人和群体或社区之间的最优互动有关,是一种社会性特质。 公平:基于正义和公平的观念,对别人一视同仁;不让个人感受干扰到他人的决策;给每个人一个公平的机会 领导力:鼓励所处的群体,使其达成目标,并在这一过程中培养出良好的组内关系;组织群体活动并保证它们的实现 团队合作:作为群体或团队中的一员工作良好;忠于群体;完成自己分内的工作 节制优势(strengths of temperance)是那些保护我们免于过度的积极特质,是一种对抗诱惑的特质。 宽容/怜悯:宽容那些犯错误的人;给他人第二次机会;报复心不重 谦虚/谦卑:让成就自己说话;不寻求成为他人关注的焦点;不认为自己比实际上的更特殊 审慎:小心地做出选择;不承担不必要的风险;不做可能后悔的事,不说可能后悔的话 自我调适:调试一个人的感受和行动;有纪律;控制一个人的欲望和情绪 超越优势(strengths of transcendence)第一眼看上去可能比较庞杂,但共通的主题是允许一个人与更庞大的宇宙形成联系,从而为他们的生活提供意义。 对于美和优秀的欣赏:注意并欣赏生活中各个领域的美、优秀以及有技巧的表现,从自然到艺术到数学到科学再到日常经验 感激:意识到美好的事物并心怀感谢;花时间表达自己的感谢 希望:期望未来最好的结果,并努力去达成;相信美好的未来可以实现 幽默:喜欢笑与戏弄;为他人带来微笑;看到光明面;能够开玩笑(不一定讲出来) 宗教性/灵性:对于宇宙的更高目的和意义有着一致的信念;知道一个人在人类全景中的位置;具有关于生活意义的信念,这种信念能够塑造一个人的行为,提供慰藉 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:4:2","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"性格优势测评 性格优势的测评主要采用自我报告,通过行为指标测量来不易描述的性格,和降低测试者传达自己积极印象的倾向。受益于网络传播,VIA-IS 问卷在 2006 年之前就已收到 35 万份,来自 200 多个国家。此外,积极心理学家还开展了结构化访谈,有助于判断一种优势是不是被一个人有意识地拥有。 VIA-IS 与 VIA-Youth 均表现出了一定的信度(项目聚合)、效度(性格优势的自我报告与他人报告相一致)以及至少跨越 6 个月的稳定性。 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:4:3","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":"ChangeLog 2019-08-05 整理成文 2019-08-04 初稿 ","date":"2020-04-11","objectID":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/:5:0","tags":["积极心理学"],"title":"初识积极心理学","uri":"/2020-04-11-%E5%88%9D%E8%AF%86%E7%A7%AF%E6%9E%81%E5%BF%83%E7%90%86%E5%AD%A6/"},{"categories":["读书笔记"],"content":" 情报分析心理学 如何做情报分析?要点是什么? 情报分析有特定的步骤,其中竞争性假设分析法(ACH)最为关键。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:0:0","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"情报分析四步走 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:1:0","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"界定问题提出假设 分析质量和时间两者不可兼得,与其分析一个质量较低的大问题,不如缩小命题,获得一个质量更高的信息分析。 在分析之前,我们需要确定所有需要考虑且具有一定合理性的假设。我们可以先通过手头已有的信息、咨询专家、头脑风暴列出尽可能多的观点清单,再从中筛选出合适的数量,深入分析,这些假设并不排除欺骗的可能。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:1:1","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"搜集信息 搜集信息时不要夹带自己已有的认知成见,尽可能从不同角度出发去搜寻素材,摈弃偏见可能会有意外的收获。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:1:2","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"分析信息评估假设 同样的证据可能符合多个假设,可能我们原先认为最可能的假设并没有明显的胜出优势。因此我们会需要尽力反驳假设,反驳的威力比支持更大。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:1:3","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"撰写报告持续监控 撰写信息分析报告时信息分析的必要步骤,即帮助理清思路和逻辑,也明确自己的判断。 此外,我们的分析结论只是当下的,会随着更多信息的披露而发生变化,需要事实补充证据,重新评估假设。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:1:4","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"竞争性假设分析法(ACH) 有些认知局限会使我们很难做出预见性的信息分析,而竞争性假设分析法仔细衡量了不同的假设,能够帮助最大限度减小认知局限的影响。 竞争性假设分析法的关键是,要求分析人员切实提出所有合理的可能答案,通过相互展开竞争性比较来完成分析,而不是逐一分析可能性。 通过一下八个步骤,我们可以更轻松地完成竞争性假设分析。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:2:0","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"一、确定需要考虑的可能假设 组织一队拥有不同观点的分析人员对各种可能性开展头脑风暴。 通常情况下,个人很难考虑到所有可能性,有必要让不同背景的人进行头脑风暴,从而想出尽可能多的可能性。然后我们需要剔除那些已被证伪的假设,保留所有被别证实也未被证伪的假设。对于这些假设,我们最好约束在 4 个以内,超过 4 个要进行分组。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:2:1","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"二、列出支持或反对各种假设的重要证据和论据 我们需要列举影响假设判断的所以因素,既包括可靠证据,也包括其他分析人员对分析对象的假定和逻辑推论(这种论据可能会产生先入之见会影响到最终判断,因此需要考虑进去)。具体遵循如下步骤: 列出适用于所有假设的通用性证据 单独考虑每个假设,列出正反面证据 对于每个假设,自问若假设成立,什么事件可能会发生,找出缺失证据 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:2:2","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"三、建立以假设为横行、证据为竖列的矩阵(横向考察,关键) 对各种证据和论据的诊断价值进行分析,即确定哪些在判断假设的相对可能性时最为有用。 从步骤一拿来假设,从步骤二拿来证据和论据,建立矩阵 分析各项证据于各个假设之间的联系,每次抽取一个证据,思考它究竟在多大程度上与各个假设相符。我们需要在每个空格回答一个问题——「如果这个假设正确,那么见到这个证据的概率有多大」。我们可用+-?等符号表示可能程度。进一步,我们也可以分成证据的重要程度和对各项证据被隐藏、操纵、伪造的难易程度两个指标。 判断各个证据的诊断价值,越能影响判断各个假设的相对可能性的证据越有价值 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:2:3","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"四、精简矩阵 重新思考假设,剔除那些不具有任何诊断价值的证据和论据。 如果此时我们发现证据与假设不相符,那么就需要重新考虑和表述各个假设。为了涵盖所有关键选项,是否需要添加新假设,或者进一步明确假设间的区别?如果区分两个假设的证据很少,或者根本没有,是不是应该把它们合为一个假设? 同样,我们也需要重新考虑证据。在考虑哪些假设最可能或最不可能时,我们有没有受到尚未被列入清单的证据影响?从矩阵中剔除的证据,我们需要列清单记录。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:2:4","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"五、就各个假设的相对可能性得出暂时结论(竖向考察) 尝试用证伪而非证实假设。 评估不同假设的相对可能性时,首先应当寻找那些能够否定或至少认定某假设可能性极小的证据或逻辑推论。我们可以按照\"-“多少来排序,然后重新思考证据与假设之间的本质。此时我们常常会发现,判断的依据实际上是很少几个因素,而不是原先认为的可能影响到观点的大量信息。 这里需要注意一点,矩阵只是工具,不应支配最终结论,而应清晰反映我们的判断——哪些要素重要,这些要素与各个假设可能性之间的联系,结论仍然由我们来决定。如果矩阵显示的结果不被我们认可,那应该是矩阵中遗漏了能对我们思维产生重要影响的要素,我们应当把这些要素重新列入矩阵。如此,我们被迫在那些起初被认为不太可能的假设上花费更多时间来分析,被迫去探索新的领域,被迫去更公平对待所有选项。 完成了本步骤,这个矩阵就成了我们整个思维过程的简要记录,今后也可以用它来审查当初得出结论的过程。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:2:5","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"六、分析结论对于少数关键证据的敏感程度 思考关键证据出现错位、误导或适用于不同解释时会对分析产生什么后果。 步骤三我们已经确定了诊断价值最高的证据和论据,并在步骤五运用它们对各种假设做出了暂时判断。现在我们要回过头,重新审视那些会对我们的分析结果产生方向性影响的关键假定条件或证据:理解和解释前提假定条件是否有问题?是否存在其他解释或理解?这些证据会不会不完整并有误导作用?证据来源是否可靠? 例如,我们参考一些榜单时,可以质疑这些榜单可能被分析对象公关。我们可以站在分析对象的立场上评估他们采取欺诈行为的动机、成本、机会、收益等。 我们分析出错,通常是因为我们并未质疑的关键假定条件被证明无效。分析人员应该确定并质疑自己的假定条件,但说起来容易做起来难。不过竞争性假设分析能帮助我们快速定位需要重新审视的关键假定。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:2:6","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"七、报告结论 讨论所有假设的相对可能性,而不仅仅是最有可能的那个假设。 如果有多个假设不能够被证伪,那么我们应当在报告中把它们全部包括进去。 在描述可能性时,应该使用概率值,「可能」、「多半」等描述性的词汇会向读者和过段时间阅读的自己传递模糊的信息。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:2:7","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":["读书笔记"],"content":"八、明确未来观察中应该注意的标志性信息 它们可能预示事件正朝预料之外的方向发展。 我们分析得出的报告只是暂时的,形势会变,新信息也可能会被不断披露出来,我们有必要提前明确哪些事情值得注意或警惕,以便之后修正我们的结论。 ","date":"2020-04-04","objectID":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/:2:8","tags":["情报分析"],"title":"如何做情报分析?","uri":"/2020-04-04-%E5%A6%82%E4%BD%95%E5%81%9A%E6%83%85%E6%8A%A5%E5%88%86%E6%9E%90/"},{"categories":null,"content":"为什么有些人记单词总是记不住?为什么记住了又很快忘记? 这里涉及到一个认知心理学概念——增细加工(elaborative processing),即补充和拓展相关的信息,无论补充的信息是否帮助理解所需记忆的事物,都有助于记忆。 我们通常会碰到两种类型的信息,一种是像化学式、物理公式、生物概念、积分公式这些有大量背景知识的信息,另一种是单词、生僻字、清单这些背景信息很少的信息。对于前者,记忆的关键是把背景信息理解吃透,记忆是顺其自然的事;对于后者,则需要增细加工,人为补充相关信息来帮助记忆。 以记单词为例,有词根记忆、联想记忆、词组搭配、例句等记忆方法。例如,miracle(奇事、奇迹),可采用词根记忆,mir(惊奇)+acle(表物)-\u003e奇事;plateau(高原),可采用联想记忆,plat(平的)+eau-\u003e高出平地的地-\u003e高原;tragedy(惨事;悲剧),可借助词组搭配记忆,Greek tragedy 希腊悲剧。以上帮助记忆单词的补充信息,是自己想出来的,或是单词书上看到的,都不重要,重要的是帮助记忆的提示信息能否起到提示作用。 另外再举几个本身没有意义的助记例子,元素周期表、二十四节气歌、横戌点戍戊中空,朗朗上口,至今也没忘记。 ","date":"2020-02-07","objectID":"/talks/2020-02-07-elaborative-processing/:0:0","tags":null,"title":"增细加工","uri":"/talks/2020-02-07-elaborative-processing/"},{"categories":null,"content":" Preview(预习)——Question(提问)——Read(阅读)——Reflect(反思)——Recite(复述)——Review(复习) PQ4R 行动上强调读前提问 + 读后总结,提问是为了获得注意力,总结是为了信息加工和记忆;结构上区分章和小节,先整体把握整章,再用提问 + 小节的方式遍历每小节,最后闭卷整理串起每小节要点,回答读前和读时的问题。按照读书习惯,可将行动拆解为读前、读时和读后,方面记忆。 读前,扫一遍,写出问题。 每章读之前先浏览一遍章标题、开头和结尾,整体把握该章; 每小节写一个问题。 读时,提问和检验。带着问题去读,用口语报告不断提问和寻找答案。 读后,整理要点,理清逻辑。 读完一节,归纳要点,试回答小节问题; 读完一章,合上书,把每小节的要点串起来,用问题理清逻辑关系。 Ref:《认知心理学及其启示》P5 ","date":"2020-01-27","objectID":"/talks/2020-01-27-pq4r%E5%AD%A6%E4%B9%A0%E6%B3%95/:0:0","tags":null,"title":"PQ4R 学习法","uri":"/talks/2020-01-27-pq4r%E5%AD%A6%E4%B9%A0%E6%B3%95/"},{"categories":["读书笔记"],"content":"克里斯·阿吉里斯(Chris Argyris)曾在 1991 年的《哈佛商业评论》上发表了《如何教聪明人学会学习?》,原标题为《Teaching Smart People How to Learn》。 阿吉里斯生于 1923 年,是希腊裔美国人,美国心理学家和管理学大师,组织心理学与行为科学的先驱,当代管理理论大师,哈佛大学荣誉退休教授。曾担任过多家公司的管理顾问,并开发出一系列反思工具。阿吉里斯教授发表文章 300 篇,并著有专著 30 本。1994 年,阿吉里斯教授荣获管理科学院授予的「管理学科终身贡献者」称号。 阿吉里斯发现聚集着聪明人的组织并不会学习,原因是误解了学习的概念和实现⽅法。 ","date":"2019-12-23","objectID":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/:0:0","tags":["学习"],"title":"《如何教聪明人学会学习?》笔记","uri":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/"},{"categories":["读书笔记"],"content":"是什么阻碍了组织学习? 阿吉里斯认为,「有效的学习不是⼀个态度或激励问题,⽽是⼈们对⾃身⾏为进⾏判断的⽅式问题。」 学习是积累知识、经验,改进达成目标的方法的一个过程。当你处在一个组织中,并希望改进组织达成目标的手段时,学习便不再是一个人的事。此时,要求个人反省自己欠缺的地方是一件很难的事,相当于要他亲自承认自己不能胜任这项工作,戒备心随之而来。另外,解决问题、改正外部环境是人们熟悉的学习方式,可在这里改进的地方并不多。因此,组织学习最大的壁垒就是人们需要反省自身行为,并将自己作为一个环节去改进。 换句话说,组织里的聪明人擅长单环学习,而不擅长双环学习。 阿吉里斯在《阻遏学习的交流方式》区分了两类学习。 单环型学习提出的问题是单维度的,解答也是单维度的。双环型学习增加了一个或更多的步骤。它把问题又返回给发问者,要求对问题的跟进。双环型学习所考虑的不仅是事实本身,而且也涉及这些事实背后的原因和动机。 例如,CEO 得知公司对每个新想法要进行 275 种各项检查,抑制了创新,他迅速取消了 200 项检查,结果创新率有所提高。这听起来像一个成功的管理干预,但是是单环学习,忽视了更深层的问题。双环学习的诊断,应该进一步询问诸如「这个情况出现了多久」的问题,而人际问题在此中阻碍了 CEO 的询问,询问会让人难堪、戒备。 ","date":"2019-12-23","objectID":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/:0:1","tags":["学习"],"title":"《如何教聪明人学会学习?》笔记","uri":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/"},{"categories":["读书笔记"],"content":"为何组织学习中容易出现戒备心理? 实际上,人们对环境作出的反应,并不是他们认为的那样。人的行为实际上有如下四种倾向: 保持单线控制。 「盈利」最⼤;「损失」最⼩。 压制消极的感觉。 尽可能保持「理性」,清楚地界定⽬标,并根据是否实现了⽬标来评估⾃⼰的⾏为。 而人们会从口中表述出另一套行为准则,而具有戒备性并不包含其中,因此组织学习中人们即使产生了戒备心理也不能马上发现。 一个人若是一路都很成功,很风光,他很可能会非常害怕失败而破坏一贯的人设,甚至害怕这种害怕的感觉。在失败面前,他极度脆弱,容易陷入失落、内疚、绝望的情绪之中,最后选择逃避自己的过失,将过失转移到他人身上。这种现称作厄运之环。 ","date":"2019-12-23","objectID":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/:0:2","tags":["学习"],"title":"《如何教聪明人学会学习?》笔记","uri":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/"},{"categories":["读书笔记"],"content":"如何减少组织戒备? 组织想要有效学习,需要重新塑造组织成员的行为模式,具体操作要点如下: 教组织成员去认识他们认为的行为准则和实际上的行为模式的区别,注重用事实和数据说服组织成员。 变革从管理层开始。 用个人绩效和组织绩效的实际变化,来评判变革。 用组织绩效提升的事实,让员工认识到组织是真的在寻求变革。 实际操作中,组织里有些涉及成员情绪的问题,不好拿出来讨论。 此时,管理者可以设计一个案例研究练习,让组织成员以一同研究案例的形式参与进来。管理者需要事前写好案例中事项的进程、参与人(包括管理者和组织成员)的反应,要求能够真实模拟实际情况。在讨论案例时,管理者和组织中其他成员都能更容易指出案例中各个环节的不足之处,而不会有很强的戒备心。 例如,⼀个专攻组织发展业务的⼤咨询公司,其⾸席执⾏官被职能部⻔激烈竞争所造成的问题搅得⼼烦意乱。该⾸席执⾏官⾸先⽤⼀段篇幅,声明他想同直接下属举⾏⼀次会议来强调上述问题。接着,他把纸分成两半,在右边写了⼀个会议计划书(就像电影和戏剧的脚本),描述了他要讲的内容和下属可能的反应;在左半⻚则写下了在会议过程中他可能会有的想法和感觉,这些想法和感觉在开会时都不能表露出来,否则有可能使谈论偏离主题。 但是,⾸席执⾏官并没有召开会议,⽽是同直接下属讨论了这个计划书。在讨论过程中,他认识到领导群体中存在⼀些问题。 ","date":"2019-12-23","objectID":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/:0:3","tags":["学习"],"title":"《如何教聪明人学会学习?》笔记","uri":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/"},{"categories":["读书笔记"],"content":"小结 解决问题不只是解决问题本身,而需要反躬自省,审视问题解决者自身行为是否有纰漏。如此,组织不仅能促进学习,对成员的理解也将更加深刻、细致。 ","date":"2019-12-23","objectID":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/:0:4","tags":["学习"],"title":"《如何教聪明人学会学习?》笔记","uri":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/"},{"categories":["读书笔记"],"content":"Changelog 2019-12-22 草稿,为了赶 deadline,赶紧凑了一篇 2019-12-23 修改,水平有限,就这样先 ","date":"2019-12-23","objectID":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/:1:0","tags":["学习"],"title":"《如何教聪明人学会学习?》笔记","uri":"/2019-12-22-%E5%A6%82%E4%BD%95%E6%95%99%E8%81%AA%E6%98%8E%E4%BA%BA%E5%AD%A6%E4%BC%9A%E5%AD%A6%E4%B9%A0/"},{"categories":["方法技巧"],"content":"卡片就是对单一事件的完整记录,一卡一事,包括标题、来源引用、自己的理解和日期。卡片可供任意组织,不断生发,创造作品。 ","date":"2019-12-23","objectID":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/:0:0","tags":["卡片","写作"],"title":"卡片大法","uri":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/"},{"categories":["方法技巧"],"content":"为何卡片是知识积累和创造的神器? 卡片改变了大脑注意、储存、提取和加工的全过程。 写一张卡片,只需专注于一张巴掌大的卡片,一件事,三四百字,要比写一篇文章容易太多。由于人的记忆,储存与提取的难度呈负相关,此时需要增加卡片储存的必要难度。时间上,可以在学习结束的几个小时后再写卡片;空间上,可以换一个场景写卡片;成本上,可以用自己的方式转述,例如将知识要点改写成一段优美的文字、配图、检索深挖知识点等。 当卡片积累到十张、一百张、上万张,此时可以将卡片拼接成千字文、小论文、一本书或乐曲设计管理等其他形式的作品。由于卡片只记录单一事件,且记录完整,很容易在一堆卡片中挑出几张,用逻辑拼接成一篇文章大小的作品,再将文章拼接成一本书。其中缺少哪些要点或证据,需要增补哪些卡片,可根据卡片记录的引用源去寻找。 卡片不同的组合方式,会产生不同的联系,这种联系有时会穿透我们一贯的认知,产生一个新奇的认识。借助卡片的各种组合,创意不断,创造不再遥远。 ","date":"2019-12-23","objectID":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/:0:1","tags":["卡片","写作"],"title":"卡片大法","uri":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/"},{"categories":["方法技巧"],"content":"借助模板记录关键信息 新手写卡片常常会不知道怎么下手,也不容易提取出关键信息,以下几种卡片模式可以帮助可充当脚手架。 一 术语卡用于记录学术术语或特定黑话,需要找到原始出处。一旦养成了写术语卡的习惯,便可增强辨识理论可靠性的能力,独立思考。 卡片由定义、理解、例子和出处构成。定义,最好是操作性定义,能够明晰概念的边界;理解,写自己的见解,是为了加深理解、加深印象,提高信息储存的必要难度;例子,实际上是运用该术语,作用如理解;出处,提供引用源,便于回顾和发展卡片。 二 反常识卡用于记录反常识的鲜活证据。常识固然能降低认知负荷,维持我们日常,但我们也需要反常识的鲜活证据来拓展认知边界。 反常识卡片需要包括常识、反常识、例子、出处,常识和反常识好理解,举例子在应用反常识,加深理解,出处除了记录引用源,还可以记录发现的过程。 三 行动卡用于记录能够指导行动的事物。 行动卡包括原理、行动和出处。原理需要讲清楚行动启发是什么,有什么好处,和注意事项;行动一定要具体,时间、地点、事件都必不可少,最好能用执行意图的方式写。 四 用于摘抄优美、犀利、深刻的句子。 写卡片时,除了摘抄和说明出处,写一段赏析也很重要要,一是方便日后引用,而是加深理解。 其他卡片 图示卡用于记录以图示方式展示的信息或可用图示表征的信息。阳志平老师说他 36 岁后工作忙,没多少时间写金句卡、术语卡等卡片,多是写图示卡。常听人说,一图胜千言,能用图示表征的信息用图示卡记录,直观、好记。图示卡包含图示、理解和出处,一般理解和出处写在正面,图示可写在背面。 人名卡,就是用来记录人的,可以是阅读时遇到的作者,也可以是生活中的朋友。人名卡包括出生年代、印象、出处。 技巧卡用来记录阅读、演讲中遇见的行动技巧。技巧卡包括技巧、原理和出处。 ","date":"2019-12-23","objectID":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/:0:2","tags":["卡片","写作"],"title":"卡片大法","uri":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/"},{"categories":["方法技巧"],"content":"拼接成文 组块与远距离联想,是卡片拼接文章的一对重要矛盾。文章逻辑要求相关联的卡片按树形结构组合在一起,而文章的美感、惊奇,需要看似不相关的卡片发生关联,产生一个创意。 拼接卡片时,可以先关注组块,完成文章大体框架;再尝试不同的拼接结构和思路,力求美感。 卡片组合需要遵从以下原则: 立体大于扁平 空间大于时间 时间大于行动者 立体大于扁平,旨在丰富结构,避免单调。 例如: 这里 - 那里 - 这里,这时 - 那时 - 这时,我们 - 他们 - 我们。 空间大于时间,是因为空间更加底层,人类是先有了空间感知才有了时间感知。例如,「前天」、「上午」、「时间轴」等词汇都是用空间表征时间。 时间大于行动者。我们很容易从行动者的角度写作,例如「我怎怎样」,而不容易想到时间结构。「这时 - 那时 - 这时」比「我 - 他们 - 我」的信息结构更容易产生远距离联想。 完成文章后还需要修改,突出主题,润色文字。 ","date":"2019-12-23","objectID":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/:0:3","tags":["卡片","写作"],"title":"卡片大法","uri":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/"},{"categories":["方法技巧"],"content":"几点注意事项 除了以上文中提到的「一卡一事」、「标注出处」、「必要难度」等注意点之外,还需特别注意以下几个容易误解的点。 一 卡片数量远比质量重要。写卡片是为了将日常信息转化为个人记忆。 写卡片就好比小时候写日记,只是小时候的日记很简单,今天和谁谁谁干了什么。成人日常接收的信息太多,不能像小时候写日记一样把琐碎的事情都记上,只能记录重点,而卡片是一种理想的记录形式。卡片也如日记一般,是写给自己看的,不需要太讲究写的如何。若每次都考虑写的如何,那么会增加写卡片的难度,很可能坚持不下去。没有坚持,没有积累,没有三百张、五千张的量,你的知识结构还是头脑里的一团浆糊,很多知识点也会被时间埋没。 二 卡片要时不时翻阅,把精华内容找出来,尝试拼接为一张文章,提高知识层级。 写卡片是为了忘记,重要的是输入时的必要难度。好的知识点会反复出现,见多了自然会记住。其中写的好的、重要的卡片,可以用输出文章的形式记忆;对行动有启发的卡片,可以在行动中加深理解。 如果有些卡片记录的是考试知识点,则情况不同,可借助 Anki 记忆。 三 卡片不要做任何分类、标签、命名和复杂操作,但要标记是哪一天写的。可以按月整理还是按周整理。 卡片分类,一旦卡片多了,分类会出现矛盾,前后不一致,分类不统一,其他复杂的操作也会有此问题。写卡片时,若是纠结卡片的分类、命名,容易放弃,不能坚持。 ","date":"2019-12-23","objectID":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/:0:4","tags":["卡片","写作"],"title":"卡片大法","uri":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/"},{"categories":["方法技巧"],"content":"小结 作为记录载体,卡片足够小,三四百字,可以拿在手上把玩;卡片同时也足够完整,记录信息中的关键,又注明出处。 作为创造工具,卡片极易拼接出一个个组块,结构明显,可复用性强;卡片同时也能用来触发远距离联想,产生创意、美感和惊奇。 卡片还有各种变体,一条微博、一段录像、一段旋律。明白了如何记录关键信息,如何用这些积累的东西拼接成作品,那么生活中出处都能生成一张卡片,卡片能拼成各种作品,生活也因此有趣、丰富。 ","date":"2019-12-23","objectID":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/:0:5","tags":["卡片","写作"],"title":"卡片大法","uri":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/"},{"categories":["方法技巧"],"content":"ChangeLog 2019-12-23 增补拼接卡片这块内容的卡片,拼接成文 2019-12-23 开智学堂卡片大法快闪课复盘,组装已有的卡片,发现拼接卡片这块竟然没什么笔记 ","date":"2019-12-23","objectID":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/:0:6","tags":["卡片","写作"],"title":"卡片大法","uri":"/2019-12-23-%E5%8D%A1%E7%89%87%E5%AD%A6%E4%B9%A0%E5%BF%83%E5%BE%97/"},{"categories":["阅读"],"content":" 检查样本是否有偏差 检查样本分布是否合理(包括是否采用分层随机抽样、每层内部的样本分布情况如何):例如是否刻意挑选容易与其他层区分开来的群体而忽略处在模糊地带的群体 检查被调查者是否是特殊群体(包括接受调查和拒绝调查群体是否有偏差、调查人员是否特意挑选被调查对象):例如调查人员是否会挑选回答意愿更强烈的群体 检查数据是否反映真实情况(包括调查人员是否影响被调查者的回答、调查问题是否会导致被调查者谎报):例如被调查者回答有关「性」的问题时是否隐瞒 检查样本是否足够大或者刻意挑选期望的数据:例如牙膏广告中的「效果提升 23%」,其数据来源可能是多组实验中数据最好看的那一组; 判断表述是否误导 检查平均数(均值、中位数和众数)是否合适:例如公司统计人均工资时,用均值作为平均数掩盖蕴含更多信息的中位数; 检查结果是否对极端数据敏感:例如某地区今年降雨量比去年增加了 20%,农业收成有望提高,事实上农业易受极端天气(例如暴雨和干旱)影响,降雨量这个指标意义不大 用另一种语言表述:例如西藏九年义务教育普及率为 75%,换一种说法是,西藏还有 25% 的人未享有九年义务教育 检查图形是否夸大(包括坐标轴的尺度和起始点、以地图上行政区面积大小偷换人口比例、图形比例是否与数值比例一致):例如某地区八月平均气温逐年升高,配以一张起始点为 35°,而实际上气温是稳定的 避免推理陷阱 避免被偷换概念(包括统计结果的不合理推演、认为扩大数据有效范围、用权威机构混淆权威资料):例如中国人均年收入为 8000 美元,不能推论出中国四口家庭年均收入为 3 万 2 千美元 区分相关性与因果性(包括相关性强的两者都是受第三因素影响的结果、样本数过少的机缘巧合、两因素的联动变化):例如富有的人持有更多的股票,持有更多股票的人也更富有,因果关系依具体情境而定;又如随着工业发展,癌症发病率提高了,其中的原因可能是寿命延长增加了每个个体患癌症的概率,也可能是癌症确诊记录更加详尽 避免不合理外推:过去数据只是表示过去的趋势,未来只有在相同条件下才会延续这一趋势,而环境条件会一直变化 检查结果是否有意义(包括是否考虑了误差、精度是否有意义、结果是否显著):例如两人 IQ 测试分别为 98 和 101,而测试的误差为 3,比较两个人的智商是没有意义的 ","date":"2019-08-04","objectID":"/2019-08-04-%E8%A7%A3%E8%AF%BB%E7%BB%9F%E8%AE%A1%E6%95%B0%E5%AD%97%E5%9B%9B%E6%AD%A5%E9%AA%A4/:0:0","tags":["速查","统计"],"title":"解读统计数字的行动清单","uri":"/2019-08-04-%E8%A7%A3%E8%AF%BB%E7%BB%9F%E8%AE%A1%E6%95%B0%E5%AD%97%E5%9B%9B%E6%AD%A5%E9%AA%A4/"},{"categories":["读书笔记"],"content":"这篇文章是《人格解码》的读书笔记,讲述了一种形成人格全景的实践策略。可能有部分读者跟在下一样,容易在闲言碎语的公共场合感到尴尬,无所适从,该书提供的一个可供诸位在聚会上消磨时光的游戏--捕捉酒杯后面众生的人格全景。","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"作者塞缪尔·巴伦德斯(Samuel Barondes),生于 1933 年,是美国神经病专家、神经科学家,加州大学(旧金山)心理学教授,美国科学院医学院士、美国艺术与科学研究院院士。巴伦德斯主要研究分子神经病学(molecular psychiatry),曾发表过 200 多篇论文,H 指数高达 80+。著有通俗读物《人格解码》、《分子和心理疾病》、《情绪基因》、《胜过百忧解》等。 巴伦德斯学术功底深厚,轻而易举把大五人格整合到日常实践中,通俗好懂易操作。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:0:0","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"大五人格特质 上世纪八十年代,美国人格心理学家刘易斯·格登伯格(Lewis R. Goldberg),曾极力公开支持词汇假设(lexical hypothesis),即任何重要文化人格特质都将以该文化的语言表达出来。格登伯格将八十年代早期心理学家归纳,描述人格的词汇的五个大类,称为「大五人格特质(Big Five personality traits)」。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:1:0","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"一 大五人格特质,又称大五性格模型(The Five Model,FFM),是现代心理学中描述最高组织层次的五个方面的人格特质。五类人格特质包括外向性(extraversion,E)、宜人性(agreeableness,A)、责任心(conscientiousness,C)、神经质(neuroticism,N)和开放性(openness,O),简称 OCEAN。从个人性格发展角度上来说,「大五人格」在进入职场后大约四年趋于稳定,即使经历重大人生事件,成人的性格特质也不会发生太大变化。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:1:1","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"二 在最初 1985 年设计的 NEO PI 人格量表基础上,美国人格心理学家罗伯特·麦克雷(Robert McCrae)与保罗·考斯塔(Paul Costa)一同研发出了 NEO PI-R(Revised NEO Personality Inventory)人格量表。该问卷采用短句,从而消除了单个词汇所隐含的歧义;问卷对大五人格中的每个维度进行测量,把每个维度(domain)分为六个层面(facet),深入到具体的性格差异。NEO PI-R 在跨年龄、跨文化,以及采用不同测量方法都是有效的。 结合不同版本 NEO PI-R 的表述方式,大五人格的六个层面可以归纳为: 外向性 热心、友谊(容易交朋友) 爱交际(喜欢与其他人为伴) 自信心(喜欢担当) 有活力(喜欢忙碌) 寻求刺激(喜欢刺激) 积极的情绪、愉悦感(很容易感到开心) 宜人性 信任(认为人们都是好心的) 坦率、道德感(直率,避免欺骗) 利他性(觉得帮助他人很有价值,不剥削他人) 顺从、合作(喜欢协商而不是对立) 谦虚(不吹嘘) 温和、同情心(善良,富有同情心) 责任心 胜任感、自我效能(能做出成就) 秩序感、规矩(很有条理,制定计划) 责任感(十分可靠) 努力追求成就(为卓越而努力工作) 自律(有意志力) 深思熟虑、谨慎(花时间做决策) 神经质 焦虑(容易感到害怕) 充满敌意(容易怨恨) 抑郁(容易沮丧、悲观) 忸怩不自然(因为害怕被拒绝而害羞) 冲动、缺乏思考(不易抑制冲动) 脆弱(因压力而失去平衡) 开放性 幻想、想象力(竭力想创造一个更为有趣的世界) 审美、艺术兴趣(喜欢艺术和自然的美) 情感、情绪(能意识到自己的情感) 行动、冒险性(渴望尝试新活动) 思想、智力(喜欢思考) 价值观、自由主义(常常挑战传统) 五个维度更易察觉,而三十个层面更有质感,可以从上到下,先凭直观感受判断维度值高低,再进入层面捕捉突出的特点,并以事例佐证,形成更精确的判断;反之五个维度更简洁抽象,可以从下往上,将层面的得分累加到各维度,形成一个简化版的人格图景。 这里有一个免费的 IPIP NEO-PI 测试,包括 300 题完整测试和 60 题简易测试,由宾夕法尼亚大学的 John Johnson 教授维护。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:1:2","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"十大人格类型 日常生活中,人们会用一些词汇方便地总结了某些显著的人格特点,例如交际花形容擅长交际性格外向的人。心理治疗师意识到这些富有感染力的词汇非常有用,于是总结出了十个特别有用的词汇,即十大人格类型(Top Ten Personality Type)。 《美国心理治疗协会诊断和统计分析手册》(DSM-IV)简述十大人格类型如下: 反社会型:不尊重他人且侵犯他人权益 回避型:社交回避,有自卑感,对负面评价高度敏感 边缘型:人际关系、自我形象及情绪都不稳定,非常易冲动 强迫症:过分追求条理、完美主义和控制感 依赖型:过分需要被照顾,顺从和依附他人 表演型:过分寻求情感和关注 自恋型:夸夸其谈,需要他人赞赏,缺乏同理心 妄想型:不信任、怀疑,恶意曲解他人目的 分裂样型:远离任何社交关系,情绪表达受限 分裂型:对亲密关系感到非常不舒服,认知或观念扭曲,行为乖张 分析他人的人格时,先凭直觉将其归为十大人格类型之一,或者根据其外号和对其的评价判断可能人格特质,再由此思考大五人格特质,这样比没有假设单纯对照大五人格的三十六个层面更有效。 例如,一些只想做自己,对社交不感兴趣,不在乎别人怎么想,缺乏性欲,唯一想的是实现梦想,外向性低可能属于分裂样型或分裂型,但根据其不厌恶别人、不会焦虑的特点,可判断他属于分裂样型。基于分裂样型假设,可找到观察的重心,例如分裂样型的人容易患抑郁症,可能难以获得积极情绪。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:2:0","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"性格形成 性格多样性有其深层根源,既受限于基因,又受后天环境影响。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:3:0","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"一 性格不是通常认为的,有些性格是好的,有些性格是坏的,例如高宜人性是好的,高神经质是坏的。 环境随进化过程不断变化,人类彼此竞争,相同竞争策略在不同环境下有得有失。这一过程会选择适应不同条件的基因变异(其中包含影响人格的基因变异),决定不同人格的基因在环境变迁中积累,达成一个个稳态。 例如,在外向性上得分高的人喜欢和他人密切交往,喜欢有机会担任要职,容易获得性伴侣;但太过密切的关系会带来相应的风险,担当要职会招致嫉妒和反叛,高刺激寻求会更容易发生事故,牵扯进犯罪。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:3:1","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"二 既然人格受限于基因,许多人格特质与生俱来,成年后也很难改变。 例如,属于分裂样型的人,情绪表达受限,在他家族中通常能找到相似人格特质的人。 又如,杰洛米·卡根的系列研究发现,儿童 2 岁和 7 岁时不愿意与不熟悉的人接触,成年后大部分仍然不愿意与不熟悉的人接触。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:3:2","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"三 即使基因一模一样的同卵双胞胎,基因表达也不同。例如,大脑神经网络就有巨大差异。 人类大脑不像其他组织一样,每个细胞在组织内有确定的位置。受精卵分裂时,会产生很多原始的神经元,他们通过启动和关闭特定的基因,选择性的对一些化学信号作出反应,在化学信号的指引下,游移到指定的地方。这些神经元到达目的地后,就开始与其他神经元建立联结,形成神经回路和神经网络。神经回路的成熟,并不是靠形成新的联结,而是用进废退,这一情况大多发生在胎儿期和出生后最初几年,少数发生在成年之前。 人格虽源于基因,但仍能够做有限的改变,尤其是成年前的经历对一个人的人格有很大的影响。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:3:3","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"美德 由克里斯托弗·皮特森和马丁·塞利格曼为首的一小群心理学家,反对高登·奥尔波特坚持用一种完全描述性的方式去使用人格(无视品质好坏),在一项针对东西方主要宗教和哲学传统进行的研究中发现,人们对很多优秀品格存在普遍的认同和赞许,所有文化都高度认同的优点可归纳为六大类: 节制,诸如自我控制和节俭的优点 勇气,勇敢和坚持的优点,面对内外阻碍时有助于实现目标 人道,善良和爱的优点,关爱他人,友善待人 正义,公正和公民意识,有助于集体生活 智慧,开放的心态,热爱学习,有助于知识的获取和运用 超越,敬畏和精神力量,有助于与宇宙相连,提供生命意义 心理医生罗伯特·克洛宁格对此有自己的分类: 自我指向性:指对自我的控制,使自己成为一个有目的、有责任、有很多资源的人,与节制和勇气相重叠 合作性:指有同理心、怜悯心和原则性,有助于和他人建立互惠关系,与人道和正义相重叠 自我超越性:指意识到你是宇宙的一部分,是精神、智慧和理想的综合体,与智慧和超越相重叠 人类往往不满足于「真」,喜欢把他人绑上善恶的标签。为避免自身偏见影响评价他人品质,可以对照六大美德判断他人的品质。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:4:0","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"个人神话 虽然借助大五人格模型、十大人格类型、六大美德等工具,可以获得他人格特征,但是这些只是数据,记不住,用不上。此时,便需要故事来充实他的人格全景。 心理学家丹·麦克亚,给「人们所构建的关于自己是谁的个人神话」一个术语,即人格同一性(identity),包括关于过去的想法和对未来的希望等。关注他人的同一性,聆听他人讲述自己的故事,容易产生同理心,会促使你思考在他的境况下自己会成为怎样的人,有助于澄清对其品格所做的判断。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:5:0","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"人格全景 巴伦德斯在全书的末尾梳理了一套形成人格全景的实践策略: 记住人类共同的人性和人格发展的共同方式 形成一个大五人格轮廓,并注意那些明显的特质 寻找潜在的人格问题类型 运用普适标准和文化标准进行道德评价 聆听他人的故事,并将此与你所观察到的现象联系起来 整合你发现的所有信息 最后,希望这个实践策略能够为你添加社交佐料,让你不再厌恶社交聚会,在人世间遇见更多精彩的个体。 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:6:0","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"参考 人格解码 (豆瓣) Samuel Barondes | UCSF Profiles Samuel Barondes - Google Scholar Citations 五大性格特质 - 维基百科,自由的百科全书 Revised NEO Personality Inventory - Wikipedia ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:7:0","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"ChangeLog 2019-07-27 初稿 ","date":"2019-07-27","objectID":"/2019-07-27-decoding-personality-mysteries/:8:0","tags":["人格心理学"],"title":"如何形成人格全景?","uri":"/2019-07-27-decoding-personality-mysteries/"},{"categories":["读书笔记"],"content":"这篇文章是《众病之王—癌症传》的读书笔记,讲述癌症往事、治疗与预防。","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":" 你是谁,你来自何方? 我来自于你,我是另一个你。 我是我,你怎么会是我? 我是你的突变体,你们称之为「扭曲态」。 你为何会出现? 一切事物都有偏差,我是你犯下的错误。 难道没办法避免错误吗? 除了死亡,任何人都逃不脱这一宿命。 那你的宿命呢? 我的宿命是你,你活下来是我唯一的希望。 会有一天,我能一直活下去吗? 不排除可能,但那一天,你已不再是你,可能是我,可能是其他,也可能成了神。 — By 夜航星 本书作者悉达多·穆克吉(Siddhartha Mukherjee),是印度裔美籍肿瘤医生、生物学家,主要研究癌细胞的生理机制、白血病的免疫疗法和骨骼 - 软组织形成干细胞。此外,他还是科普作家,著有《众病之王》、《基因传》等,其中《众病之王》获得 2011 年非虚构类普利策奖。 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:0:0","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"癌症往事 医学行业知道癌症已经 3000 多年,直到近两个世纪,随着孟德尔、沃森、克里克等人逐步揭开基因秘密,人类才知晓癌症起于何处,有了治疗特定癌症的方法。《众病之王》讲述了癌症千百年的历史,从引发人类恐惧并被赋予其邪恶隐喻的黑胆汁,到二十一世纪作为人类日常生活一部分的癌症。 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:1:0","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"不明所由 中世纪,约翰尼斯·史卡尔提特斯(Johannes Scultetus),记述了一种乳房切除术—用火、酸和皮革绑缚来做外科乳腺癌移除。这一类最原始的攻击癌症方法,在二十世纪之前,一直是治疗癌症的唯一选择,只是器材变先进,手法变高超,切除范围变得更肆无忌惮而已。 直到 1947 年,西德尼·法伯发现了一种叶酸类似物氨基蝶呤,能够(通过阻断细胞代谢)杀死骨髓中快速增殖的细胞。他利用氨基蝶呤实现了急性淋巴细胞白血病的短暂缓解,开启了化疗在癌症治疗中的应用。在此基础上,埃米尔·弗雷、埃米尔·弗雷瑞克等人开创了细胞毒性药物组合化疗,结合使用 6-巯基嘌呤和甲氨蝶呤部分或者全面地缓解症状,并且延长急性白血病患者的寿命。 之后,放疗作为一种能够替代外科手术的治疗手段出现,用于消灭局部癌症。亨利·卡普兰(Henry Kaplan)率先用放疗治愈了霍奇金氏病,将放疗引入到淋巴癌治疗。 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:1:1","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"扭曲的基因 随着生物学家逐步揭开基因真相,癌症理论开始形成。哈罗德·瓦缪斯(Harold Elliot Varmus)和迈克尔·毕晓普(Harold Elliot Varmus)共同发现癌症不由外源性病毒引起,而通过激活(所有正常细胞都含有的)内源性前体基因而引起,一同获得 1989 年诺贝尔生理学或医学奖。该发现为癌症的早期检测改进,疗效预测,以及靶标疗法的发展等提供了全新的策略。 正如,牛顿以对万有引力的理解,预言了 1758 年哈雷彗星的返回。瓦缪斯和毕晓普提出的癌变学说(即致癌基因的前体(原癌基因)存在于所有的正常细胞中,并在劳斯肉瘤病毒里找到了 src 原癌基因),也做了一次冒险性预测(risky prediction)— 原癌基因的突变体一定存在于癌细胞中。罗伯特·温伯格等人分别从癌细胞中发现了 Ras(Ras subfamily)基因(正常细胞都有)的突变体,正如瓦缪斯和毕晓普所预测,Ras 基因在癌细胞中发生突变,尔后编码出的突变体蛋白,不可遏制地产生一种信号促使细胞持续分裂。之后,罗伯特等人又发现了肿瘤抑制基因 Rb1(Retinoblastoma gene)。 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:1:2","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"世纪之交 罗伯特·温伯格和道格拉斯·哈纳汉,于 2000 年 1 月发表了《癌症的标志》,标志着癌症研究在二十世纪一整个世纪的发展之后,峰回路转,回到「单一病因」的观念。该文将上百种不同类型和亚类型肿瘤的核心行为,归纳为以下六种核心机能的不同组合变换形式: 生长信号的自给自足:由于致癌基因,例如 ras 或 myc 的活化,导致癌细胞获得了自主增殖(病理性有丝分裂)的能力。 对抑制生长(抗增长)信号的不敏感性:癌细胞可以使肿瘤抑制基因失活,如成视网膜细胞瘤(Rb),通常能抑制生长。 逃避细胞程序性死亡(细胞凋亡):癌细胞能抑制和灭活引起细胞正常死亡的基因和通路。 无限的复制潜力:癌细胞能激活特异性的基因通路,使它们代代增长永远不死。 持续的血管新生:癌细胞通过肿瘤血管新生获得了从血液和血管里自给自足的能力。 组织浸润和转移:癌细胞具有转移到其他器官、侵入其他组织并占据这些器官的能力,因此它们可以蔓延到身体各处。 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:1:3","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"带着癌症老去 农业生产力提升减少了饥饿和营养不良,疫苗发明让天花退出了历史,抗生素迎头痛击细菌,癌症在人类杀手排行榜上一路向前冲。全球每年约 800 万人死于癌症,我国居民医生罹患癌症概率为 22%,癌症成了许多人生活的一部分。 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:2:0","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"癌症治疗 根据癌细胞的弱点和癌症病例,主要疗法可归纳为六类。 两类传统疗法 大多数癌症在系统性扩散之前源于局部性疾病,外科手术和放疗可将癌细胞彻底消灭,激素可使发病器官萎缩。 某些癌细胞快速增长,药物可以此为标靶。 例如,叶酸拮抗剂(如法伯的氨基喋呤)干扰叶酸代谢,剥夺所有细胞分裂所需的某种重要营养;氮芥、顺铂与 DNA 发生化学反应,致使 DNA 受损的细胞不能复制自己的基因,从而不能分裂;长春新碱(长春花毒)阻挠细胞分裂所需的架构「分子脚手架」的能力。 缺点是细胞毒素同样会攻击正常细胞,负作用难以承受。 四类新疗法 原癌基因和肿瘤抑制基因通常位于细胞信号通路的中枢。癌细胞之所以分裂和生长,是因为它们受驱于这些关键通路发出的「高度活跃」或「不活跃」的信号。这些通路在正常细胞中也存在,但是被严格地管控,潜在的肿瘤细胞依赖于这种永久激活的通路。 例如,赫赛丁(Herceptin)作为 Her-2 的抗体,能够结合癌细胞表面的 Her-2,从而清除致癌基因过度活跃的信号,阻碍癌细胞生长,适用于 Her-2 阳性的癌症患者。 另外,通过癌细胞基因测序,发现许多癌症中突变的核心通路有 13 条,可针对这些核心通路开发药物,而不去管「乘客」突变。 突变、选择和生存不断地循环,创造出在生长失控之外又获得了其他额外特征的癌细胞。这些特征包括抗拒死亡的信号、全身性转移以及刺激血管生长。这些「癌症标志」并不是癌细胞的发明创造,而是由与身体正常生理类似的败坏过程衍生而来的,癌细胞征用并依赖这些过程。 例如,格列卫能够滑入 Bcr-ab1 蛋白分子中央的一个窄小的楔形裂隙中,从而阻止癌细胞生殖。 利用免疫系统在特定种类癌症中的作用。 例如,治疗晚期黑素瘤的药物 Pembrolizumab,这种单克隆抗体可以阻断免疫细胞上 PD1 蛋白的活性,增强了针对于癌症的免疫活性。 癌细胞微环境的作用,特定的癌细胞只入侵特定的组织。通过破坏癌细胞「避风港」,可减弱癌细胞的抗药能力。 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:2:1","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"治与不治 一些有明显弱点的癌症,如乳腺癌、慢性粒细胞白血病、霍奇金病和多数早期局部癌症,已经有了有效疗法。但晚期转移癌症,如转移性 Her-2 阴性乳腺癌和转移性胰腺癌,或者无法进行外科手术的癌症,如胆囊癌,目前疗效与 3000 年前没多少差别,癌症依旧是人类心口的刺。 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:2:2","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"提防死神 患有癌症,即使疗效好的癌症,也是可怕的经历。其一,治疗期也长达好几个月,甚至一辈子;其二,治愈后,病人还要多次复查;其三,未必那么幸运能够治愈。因此,即便逃不脱统计学概率,即便终究会因老而死,仍然有必要预防以降低非系统性风险。 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:3:0","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"致癌物清单 中国食品药品检定研究院安全评价研究所,根据世界卫生组织国际癌症研究机构 2017 年 10 月 27 日公布的致癌物清单进行的初步整理,将致癌物分为四个等级: 1 类致癌物:对人为确定致癌物。 2 类致癌物 2A 类致癌物:对人很可能致癌,此类致癌物对人致癌性证据有限,对实验动物致癌性证据充分。 2B 类致癌物:对人可能致癌,此类致癌物对人致癌性证据有限,对实验动物致癌性证据并不充分;或对人类致癌性证据不足,对实验动物致癌性证据充分。 3 类致癌物:对人类致癌性可疑,尚无充分的人体或动物数据。 4 类致癌物:对人类很可能不致癌。 其中 1 类致癌物清单(共 120 种): 序号 英文名称 中文名称 时间(年) 1 Acetaldehyde associated with consumption of alcoholic beverages 与酒精饮料摄入有关的乙醛 2012 2 “Acheson process, occupational exposure associated with” 与职业暴露有关的艾其逊法(用电弧炉制碳化矽) 2017 3 “Acid mists, strong inorganic” 强无机酸雾 2012 4 Aflatoxins 黄曲霉毒素 2012 5 Alcoholic beverages 含酒精饮料 2012 6 Aluminium production 铝生产 2012 7 4-Aminobiphenyl 4-氨基联苯 2012 8 Areca nut 槟榔果 2012 9 Aristolochic acid 马兜铃酸 2012 10 “Aristolochic acid, plants containing” 含马兜铃酸的植物 2012 11 Arsenic and inorganic arsenic compounds 砷和无机砷化合物 2012 12 “Asbestos (all forms, including actinolite, amosite, anthophyllite, chrysotile, crocidolite, tremolite)” 石棉(各种形式,包括阳起石、铁石绵、直闪石、温石棉、青石棉、透闪石) 2012 13 Auramine production 金胺生产 2012 14 Azathioprine 硫唑嘌呤 2012 15 Benzene 苯 In prep. 16 Benzidine 联苯胺 2012 17 “Benzidine, dyes metabolized to” 染料代谢产生的联苯胺 2012 18 Benzo[ a ]pyrene 苯并[a]芘 2012 19 Beryllium and beryllium compounds 铍和铍化合物 2012 20 Betel quid with tobacco 含烟草的槟榔嚼块 2012 21 Betel quid without tobacco 不含烟草的槟榔嚼块 2012 22 Bis(chloromethyl)ether; chloromethyl methyl ether (technical-grade) 双(氯甲基)醚;氯甲基甲基醚(工业级) 2012 23 Busulfan 白消安 2012 24 “1,3-Butadiene” “1,3-丁二烯” 2012 25 Cadmium and cadmium compounds 镉及镉化合物 2012 26 Chlorambucil 苯丁酸氮芥 2012 27 Chlornaphazine 萘氮芥 2012 28 Chromium (VI) compounds 铬 (6 价) 化合物 2012 29 Clonorchis sinensis (infection with) 华支睾吸虫(感染) 2012 30 Coal gasification 煤炭气化 2012 31 “Coal, indoor emissions from household combustion of” 家庭烧煤室内排放 2012 32 Coal-tar distillation 煤焦油蒸馏 2012 33 Coal-tar pitch 煤焦油沥青 2012 34 Coke production 焦炭生产 2012 35 Cyclophosphamide 环磷酰胺 2012 36 Cyclosporine 环孢菌素 2012 37 “1,2-Dichloropropane” “1,2-二氯丙烷” 2017 38 Diethylstilbestrol 己烯雌酚 2012 39 “Engine exhaust, diesel” 柴油发动机排气 2014 40 Epstein-Barr virus 爱泼斯坦 - 巴尔病毒 2012 41 Erionite 毛沸石 2012 42 “Estrogen therapy, postmenopausal” 绝经后雌激素治疗 2012 43 Estrogen-progestogen menopausal therapy (combined) 雌激素 - 孕激素更年期治疗(合用) 2012 44 Estrogen-progestogen oral contraceptives (combined) 雌激素 - 孕激素口服避孕药(合用) 2012 45 Ethanol in alcoholic beverages 含酒精饮料中的乙醇 2012 46 Ethylene oxide 环氧乙烷 2012 47 Etoposide 依托泊苷 2012 48 Etoposide in combination with cisplatin and bleomycin 依托泊苷与顺铂和博来霉素合用 2012 49 “Fission products, including strontium-90” 裂变产物,包括锶 - 90 2012 50 Fluoro-edenite fibrous amphibole 氟代 - 浅闪石纤维状角闪石 2017 51 Formaldehyde 甲醛 2012 52 Haematite mining (underground) 赤铁矿开采(地下) 2012 53 Helicobacter pylori(infection with) 幽门螺杆菌(感染) 2012 54 Hepatitis B virus (chronic infection with) 乙型肝炎病毒(慢性感染) 2012 55 Hepatitis C virus (chronic infection with) 丙型肝炎病毒(慢性感染) 2012 56 Human immunodeficiency virus type 1 (infection with) 人免疫缺陷病毒 I 型(感染) 2012 57 “Human papillomavirus types 16,18,31,33,35,39,45,51,52,56,58,59” 人乳头瘤病毒 16,18,31,33,35,39,45,51,52,56,58,59 型 2012 58 Human T-cell lymphotropic virus type I 人嗜 T 淋巴细胞病毒 I 型 2012 59 Ionizing radiation (all types) 电离辐射(所有类型) 2012 60 Iron and steel founding (occupational exposure during) 钢铁铸造(职业暴露) 2012 61 Isopropyl alcohol manufacture using strong acids 使用强酸生产异丙醇 2012 62 Kaposi sarcoma herpesvirus 卡波氏肉瘤疱疹病毒 2012 63 Leather dust 皮革粉末 2012 64 Lindane (see also Hexachlorocyclohexanes) 林丹(参见六氯环己烷) In prep. 65 Magenta production 品红生产 2012 66 Melphalan 美法仑 2012 67 Methoxsalen (8-methoxypsoralen) plus ultraviolet A radiation 花椒毒素(8-甲氧基补骨脂素)伴紫外线 A 辐射 2012 68 “4,4’-Methylenebis(2-chloroaniline) (MOCA)” “4,4’-亚甲基二(2-氯苯胺)(MOCA)” 2012 69 “Mineral oils, untreated or mildly treated” 未经处理或轻度处理矿物油 2012 70 MOPP and other combined chemotherapy including alkylating agents MOPP(氮芥、长春新碱、甲基苄肼、强的松)及其他含烷化剂的联合化疗 2012 71 2-Naphthylamine 2-萘胺 2012 72 Neutron radiation 中子辐射 2012 73 Nickel compounds 镍化合物 2012 74 N’-Nitrosonornicotine (NNN) and 4-(N-Nitrosomethylamino)-1-(3-pyridyl)-1-butanone (NNK) N’-亚硝基降烟碱(NNN)和","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:3:1","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"防癌最小行动 针对日常容易遇见的致癌物,例如,酒精饮料、槟榔、加工过的肉类、中式咸鱼、烧煤、吸烟、汽车尾气、室外空气污染、含颗粒物的室外空气污染、二手烟草烟雾、焊接烟尘、木尘、太阳辐射,制定以下几项最小行动。 饮食 如果去超市、小店买零食,那么不要把啤酒、RIO、槟榔、酱肉、香肠、牛肉干带出来。 如果和朋友去聚会,那么要坚决少喝酒,以 300 ml 啤酒为上限,且不喝其他酒精度更高的酒。 如果去食堂、快餐店或者其他餐饮店吃饭,那么不要点香肠、培根、咸鱼,而是点新鲜的鱼肉蛋奶作为蛋白质来源。 燃料、烟与尘 如果回家路上遇见烧烤摊,或者出去吃饭,那么不要去买烧烤,真想吃,就买个榴莲过瘾。 如果路上遇见烟尘很大的地方或者有人吸烟的地方,那么快速离开这个地方。 如果上下班路上经过汽车拥堵的大马路或者空气污染严重,那么买一个能减轻汽车尾气和空污影响的口罩,带上口罩走路。 辐射 如果太阳很大的天要出门,那么带上鸭舌帽。 如果遇见辐射标志,那么快速离开附近。 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:3:2","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"参考 众病之王 (豆瓣) 世界卫生组织国际癌症研究机构致癌物清单 250 年抗击癌症中的里程碑式进展 - 北京大学肿瘤医院 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:4:0","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":["读书笔记"],"content":"ChangeLog 2019-07-17 补充开头的诗 2019-07-15 初稿 ","date":"2019-07-15","objectID":"/2019-07-15-cancer-history/:5:0","tags":["疾病"],"title":"一窥癌症:人类扭曲态","uri":"/2019-07-15-cancer-history/"},{"categories":null,"content":"如何站直 站直:把头、肩、臀和脚后跟都紧贴墙壁站立 加紧肩胛骨:在腰部扣一把雨伞 ","date":"2019-06-28","objectID":"/talks/2019-06-28-%E6%AD%A3%E7%A1%AE%E7%AB%99%E7%AB%8B%E5%92%8C%E8%B5%B0%E8%B7%AF/:1:0","tags":null,"title":"正确站立和走路","uri":"/talks/2019-06-28-%E6%AD%A3%E7%A1%AE%E7%AB%99%E7%AB%8B%E5%92%8C%E8%B5%B0%E8%B7%AF/"},{"categories":null,"content":"如何用躯干站立 夹紧肩胛骨:容易实现上下半身的联动 肩部放松站立 举起胜利欢呼的双臂 肘部弯曲,打开胸部是同时迅速放下双臂,有意识的用背部肌肉使肩胛骨夹紧 保持肩胛骨夹紧的状态,手臂自然下垂 使盆骨前倾:使盆骨活动充分,实现上下半身联动 自然笔直站立,脚肩同宽,肩部放松 盆骨使劲向前倾,臀部向后牵引,腹部不要突出,将双手放在腰部更容易做到 将重心置于丹田:使轴心处于稳定状态 自然笔直站立,感知胸口存在 感知下移,感知丹田(肚脐下 4CM),在丹田处稍用力,用手触摸更容易做到 ","date":"2019-06-28","objectID":"/talks/2019-06-28-%E6%AD%A3%E7%A1%AE%E7%AB%99%E7%AB%8B%E5%92%8C%E8%B5%B0%E8%B7%AF/:2:0","tags":null,"title":"正确站立和走路","uri":"/talks/2019-06-28-%E6%AD%A3%E7%A1%AE%E7%AB%99%E7%AB%8B%E5%92%8C%E8%B5%B0%E8%B7%AF/"},{"categories":null,"content":"躯干走路 走路前的躯干唤醒 松弛肩部的拉伸运动 背部伸直,笔直站立,左手放在右肩上 左手下压,右肩隆起,将左手顶起保持五秒 忽然放松肩部,使肩部下落 两边各重复十次 ","date":"2019-06-28","objectID":"/talks/2019-06-28-%E6%AD%A3%E7%A1%AE%E7%AB%99%E7%AB%8B%E5%92%8C%E8%B5%B0%E8%B7%AF/:3:0","tags":null,"title":"正确站立和走路","uri":"/talks/2019-06-28-%E6%AD%A3%E7%A1%AE%E7%AB%99%E7%AB%8B%E5%92%8C%E8%B5%B0%E8%B7%AF/"},{"categories":null,"content":"一般来说,法律判定「合理引用」与「抄袭」的规范是: 没有对外公开发表的内容,没有经过作者同意,不能引用且对外公开。 引用对外公开发表的内容,按照法律规定与业界通用规范,需要符合以下标准: 引用非诗词类作品不得超过 2500 字或是被引用作品的 1/10,如果多次引用同一部长篇非诗词类作品,总字数不得超过 1 万字; 引用诗词类作品不超过 40 行或全诗的 1/4,古体诗除外; 凡引用一人或数人的作品,所引用的总量不得超过本人创作作品总量的 1/10,专题评论文章除外; 1991 年我国国际版权局发布《著作权法实施条例》规定:「所引用的部分不能构成引用人作品的主要部分或实质部分」。也就是说把别人作品的实质部分引来作为自己作品的实质部分,尽管引用的量可能不到他人作品的 1/10,也不属于适当引用,而属于侵权。 出处:阳老总结 ","date":"2019-05-19","objectID":"/talks/2019-05-19-%E5%90%88%E7%90%86%E5%BC%95%E7%94%A8%E4%B8%8E%E6%8A%84%E8%A2%AD%E7%9A%84%E5%8C%BA%E5%88%AB/:0:0","tags":null,"title":"合理引用的规范","uri":"/talks/2019-05-19-%E5%90%88%E7%90%86%E5%BC%95%E7%94%A8%E4%B8%8E%E6%8A%84%E8%A2%AD%E7%9A%84%E5%8C%BA%E5%88%AB/"},{"categories":null,"content":"Title:简要描述你的问题 ","date":"2019-05-19","objectID":"/talks/2019-05-19-%E6%8F%90%E9%97%AE%E6%A8%A1%E6%9D%BF/:0:0","tags":null,"title":"提问模板","uri":"/talks/2019-05-19-%E6%8F%90%E9%97%AE%E6%A8%A1%E6%9D%BF/"},{"categories":null,"content":"背景 我期待实现的效果/欲达成的目的是: 我的系统、版本等环境配置是:(非技术问题请删掉这行) ","date":"2019-05-19","objectID":"/talks/2019-05-19-%E6%8F%90%E9%97%AE%E6%A8%A1%E6%9D%BF/:1:0","tags":null,"title":"提问模板","uri":"/talks/2019-05-19-%E6%8F%90%E9%97%AE%E6%A8%A1%E6%9D%BF/"},{"categories":null,"content":"现象 我想实现上述效果/目的时,遇到了这样的情况: 输入:……(我做了什么) 触发:……(得到什么,最好能附图说明) 问题:……(我的困惑) ","date":"2019-05-19","objectID":"/talks/2019-05-19-%E6%8F%90%E9%97%AE%E6%A8%A1%E6%9D%BF/:2:0","tags":null,"title":"提问模板","uri":"/talks/2019-05-19-%E6%8F%90%E9%97%AE%E6%A8%A1%E6%9D%BF/"},{"categories":null,"content":"分析 我已经做了以下尝试: 尝试 0: 参考:(请给出检索到的参考文档链接) 判断: 实验: 结论: 尝试1: …… ","date":"2019-05-19","objectID":"/talks/2019-05-19-%E6%8F%90%E9%97%AE%E6%A8%A1%E6%9D%BF/:3:0","tags":null,"title":"提问模板","uri":"/talks/2019-05-19-%E6%8F%90%E9%97%AE%E6%A8%A1%E6%9D%BF/"},{"categories":null,"content":"方案 我推测可以有以下几种解决方案,请问大家哪种思路正确,或有其它思路建议? 解决思路 0: 参考:(请给出检索到的参考文档链接) 设想: 解决思路 1: …… 注意:问题解决后 你需更新可用的解决方案在首个 comment 中,以便后来的同伴参考 顺手点击 Issue 下方右下角 close issue ,归档 ","date":"2019-05-19","objectID":"/talks/2019-05-19-%E6%8F%90%E9%97%AE%E6%A8%A1%E6%9D%BF/:4:0","tags":null,"title":"提问模板","uri":"/talks/2019-05-19-%E6%8F%90%E9%97%AE%E6%A8%A1%E6%9D%BF/"},{"categories":["知识整理"],"content":" Git 是目前世界上最先进的分布式文本文件版本控制系统 ","date":"2019-04-06","objectID":"/2019-03-26-git/:0:0","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"Git 快速上手 Cheat Sheet:workspace :: Git Cheatsheet 、常用 Git 命令清单 - 阮一峰的网络日志 Git 使用流程:Git 使用规范流程 - 阮一峰的网络日志 ","date":"2019-04-06","objectID":"/2019-03-26-git/:1:0","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"Git 基本概念 工作区(Working Directory),即电脑里能看到的目录 版本库/本地仓库(Repository),即工作区的隐藏目录 .git ,包含暂存区、分支、HEAD 等 暂存区(stage/index),存在于版本库之中 分支(branch),Git 创建版本库时,会自动创建第一个分支 master ,以及指向 master 的一个指针 HEAD 远程仓库(remote repository) 上图来自:Git 常用命令 - Gityuan 博客 | 袁辉辉的 Android 博客 ","date":"2019-04-06","objectID":"/2019-03-26-git/:1:1","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"安装 Git Linux 可以用 git 在终端测试系统是否安装了 Git,安装方法是 sudo apt-get install git macOS 一是安装 homebrew,然后通过 homebrew 安装 Git,具体方法请参考 homebrew 的文档:The missing package manager for macOS (or Linux)。 二是直接从 AppStore 安装 Xcode,更简单,也更推荐。Xcode 集成了 Git,不过默认没有安装,你需要运行 Xcode,选择菜单 Xcode-\u003ePreferences ,在弹出窗口中找到 Downloads ,选择 Command Line Tools,点 Install就可以完成安装了。 ","date":"2019-04-06","objectID":"/2019-03-26-git/:1:2","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"全局配置 安装完成后,还需要最后一步设置,在命令行输入: $ git config --global user.name \"Your Name\" $ git config --global user.email \"[email protected]\" 因为 Git 是分布式版本控制系统,所以要表明各自的身份。 ","date":"2019-04-06","objectID":"/2019-03-26-git/:1:3","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"创建版本库 (repository,仓库) 和提交修改 版本库可以简单理解成一个目录,这个目录里面的所有文件都可以被 Git 管理起来,每个文件的修改、删除,Git 都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以还原。 创建版本库 进入到一个目录,通过 git init 命令把这个目录变成 Git 可以管理的仓库,此时输入 ls -ah 命令,发现当前目录下多了一个 .git 的目录 把工作区(目录)的修改添加到暂存区 若新建了 README.md ,用命令 git add README.md 把文件添加到仓库暂存区,git add . 可将所有的修改添加到暂存区 查看仓库当前状态 用命令 git status 可以查看仓库当前状态 On branch master No commits yet Changes to be committed: (use \"git rm --cached \u003cfile\u003e...\" to unstage) new file: README.md 提交到当前分支 用命令 git commit -m \"commit message\" 把本次修改提交到当前分支,此时工作区变为 nothing to commit, working tree clean 一步将工作区的修改提交到分支 用命令 git commit -am \"commit message\" 可以提交工作区所有 tracked 的修改到当前分支。 ","date":"2019-04-06","objectID":"/2019-03-26-git/:1:4","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"撤销修改和版本回滚 万事都有失,Git 挽回失误的操作有撤销「添加到暂存区」、撤销「本次提交到当前分支」、回滚到「之前的某一次提交」。 查看工作区的修改 git diff 查看上次对工作区的修改,显示工作区与暂存区的比较(优先)或工作区与当前分支比较,显示的格式正是 Unix 通用的 diff 格式。 撤销工作区修改 用 git status 查看当前仓库状态时,Changes not staged for commit: 下面会提示如何撤销工作区修改, use \"git checkout -- \u003cfile\u003e...\" to discard changes in working directory ,即用 git checkout -- \u003cfile\u003e 将文件在工作区的修改恢复到上一次添加到暂存区后的状态(优先)或当前分支的状态。 撤销添加到暂存区 用 git status 查看当前仓库状态时,Changes to be committed: 下面会提示如何撤销暂存区的修改, use \"git reset HEAD \u003cfile\u003e...\" to unstage ,即用 git reset HEAD \u003cfile\u003e 把暂存区的修改撤销掉,重新放回工作区。若再用 git checkout -- \u003cfile\u003e 可以把文件恢复与版本库中当前版本一致。 版本回退 用 git log 命令查看提交日志(从最近到最远),加上 --pretty=oneline 参数,仅显示版本号(commit id)、commit message 和 HEAD 指针的指向当前版本。 使用 git reset 命令可退回以前版本,原理是改变 HEAD 指针的指向,其间提交的版本不可在 git log 命令下显示。 使用 git reset --hard HEAD^ 命令退回到上一个版本 或用 git reset --hard HEAD~n 往前退回 n 版本 或用 git reset -- hard \u003c前五位 commit id\u003e 回退到一特定版本 Git 提供了一个命令 git reflog 来记录每一次提交,包括 HEAD 指针之后的版本,用 git reset -- hard \u003c前五位 commit id\u003e 依旧可以回退到一特定版本。 删除文件 从版本库中删除文件可用命令 git rm \u003cfile\u003e ,参数 —cached 保存工作区的文件, -f 删除工作区和版本库的文件。 ","date":"2019-04-06","objectID":"/2019-03-26-git/:1:5","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"远程仓库 远程仓库以 GitHub 为例。 建立本地 SSH Key 密钥对 本地 Git 仓库和 GitHub 仓库之间的传输是通过 SSH 加密的,需要创建 SSH Key。 在用户主目录下,看看有没有 .ssh/ 目录,若有,再看看这个目录下有没有 id_rsa 和 id_rsa.pub 文件,若有,可直接跳过这一步。若没有,打开 Shell 创建 SSH Key,ssh-keygen -t rsa -C \"[email protected]\" ,为了方便无需设置密码。 一路回车后,在用户主目录里找到 .ssh 目录,里面有 id_rsa 和 id_rsa.pub 两个文件,即 SSH Key 的密钥对, id_rsa 是私钥,不能泄露出去, id_rsa.pub 是公钥。 把公钥给 GitHub 登陆 GitHub,打开 Account settings ,进入 SSH Keys 页面,点 Add SSH Key ,填上任意 Title,在 Key 文本框里粘贴 id_rsa.pub 文件的内容。 关联远程仓库 在 GitHub 新建一个空仓库,根据 GitHub 提示,在本地仓库下运行 git remote add origin [email protected]:\u003cGitHub Username\u003e/\u003crepository name\u003e.git 命令。 origin 就是远程仓库的名字,是 Git 的默认叫法。 下一步把本地库的所有内容推送到远程库上,运行 git push -u origin master 可以把当前分支 master 推送到 origin 。参数 -u 会把本地的 master 分支与远程的 master 分支关联,以后推送或拉取时就可以简化为 git push 和 git pull 。 从远程库克隆 运行 git clone [email protected]:\u003cGitHub Username\u003e/\u003crepository name\u003e.git 可以将远程仓库克隆到本地,会在当前目录下生成一个 repository name 文件。 Git 支持多种协议,包括 https ,但通过 ssh 支持的原生 git 协议速度最快。 SSH 警告 第一次使用 Git 的 clone 或者 push 命令连接 GitHub 时,会得到一个警告: The authenticity of host 'github.com (xx.xx.xx.xx)' can't be established. RSA key fingerprint is xx.xx.xx.xx.xx. Are you sure you want to continue connecting (yes/no)? 这是因为 Git 使用 SSH 连接,而 SSH 连接在第一次验证 GitHub 服务器的 Key 时,需要你确认 GitHub 的 Key 的指纹信息是否真的来自 GitHub 的服务器,输入yes 回车即可。此时 ~/.ssh/konwn_host 文件里会多一个 github.com host. 忽略特殊文件 在 Git 工作区的根目录下创建一个特殊的 .gitignore 文件,然后把要忽略的文件名填进去,Git 就会自动忽略这些文件。GitHub 已经为我们准备了各种配置文件:github/gitignore: A collection of useful .gitignore templates ,再把 .gitignore 也提交到 Git。 忽略文件的原则是: 忽略操作系统自动生成的文件,比如缩略图等; 忽略编译生成的中间文件、可执行文件等,也就是若一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库,比如 Python 编译产生的 .pyc 文件、 .pyo 文件和 dist 目录; 忽略你自己的带有敏感信息的配置文件,比如存放口令的配置文件。 若确实想添加被忽略的文件,可以用 -f 强制添加到 Git,git add -f test.pyc 。 git check-ignore 命令检查被忽略的文件来自哪条规则 $ git check-ignore -v test.pyc .gitignore:2:__pycache__/ test.pyc .gitignore 的第 2 行规则忽略了该文件。 ","date":"2019-04-06","objectID":"/2019-03-26-git/:1:6","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"分支管理 分支管理可以让开发者从容地写一个新功能,而不用担心代码无处提交。 ","date":"2019-04-06","objectID":"/2019-03-26-git/:2:0","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"创建与合并分支 截止到目前,在 Git 里只有一个分支,叫主分支,即master分支。master 指向提交,HEAD 指向当前分支,每次提交,master 分支都会向前移动一步。 创建分支 运行 git checkout -b dev 创建新的分支,并切换到 dev 分支。 git checkout 加上 -b参数表示创建并切换,相当于创建新的分支 git branch dev 加上切换分支 git checkout dev . 创建新的分支时,例如 dev ,Git 会新建了一个指针叫 dev ,指向 master 相同的提交,再把 HEAD 指向 dev ,就表示当前分支在 dev 上。现在开始,对工作区的修改和提交就是针对 dev 分支,比如新提交一次后,dev 指针往前移动一步,而 master 指针不变。 master ↓ ○---○---○---○---○ ↑ dev ← HEAD 合并分支 假如在 dev 上的工作完成了,就可以把 dev 合并到 master 上,最简单的方法,就是直接把 master 指向 dev 的当前提交。 命令是运行 git checkout master 把 HEAD 指针指向 master 分支,然后运行 git merge dev 把 dev 分支的工作成果合并到 master 分支上。终端返回 Fast-forward 信息表示这次合并是「快进模式」,即直接把 master 指向 dev 的当前提交。 master ← HEAD ↓ ○---○---○---○---○ ↑ dev 但不是每次合并都能 Fast-forward ,后面会讲其他方式的合并。 合并完分支后,可以删除 dev 分支, git branch -d dev ,即删除dev 指针。删除后,查看 branch , git branch ,只剩下 master 分支。 解决分支合并冲突 若在新建的分支 dev 修改了 README.md 并提交,又切换回 master 分支,修改了 README.md 并提交,则此时的 master 和 dev 处在不同的提交时间轴上。 master ← HEAD ↓ ○---○---○---○---○ \\---○ ↑ dev 此时运行 git merge dev ,会报错( git status 也会提示冲突的文件) Auto-merging README.md CONFLICT (content): Merge conflict in README.md Automatic merge failed; fix conflicts and then commit the result. README.md 文件存在冲突,必须手动解决冲突后再提交。查看 README.md \u003c\u003c\u003c\u003c\u003c\u003c\u003c HEAD Creating a new branch is quick \u0026 simple. ======= Creating a new branch is quick AND simple. \u003e\u003e\u003e\u003e\u003e\u003e\u003e dev Git 用 \u003c\u003c\u003c\u003c\u003c\u003c\u003c , ======= , \u003e\u003e\u003e\u003e\u003e\u003e\u003e 标记出不同分支的内容,假如修改 README.md 为 Creating a new branch is quick and simple. 再提交 git add README.md git commit -m \"conflict fixed\" 现在 master 分支和 dev 成了下图所示 master ← HEAD ↓ ○---○---○---○---○---○ \\--○--/ ↑ dev git log --graph --pretty=oneline --abbrev-commit 可以看到分支的合并情况。 —graph 参数可查看分支合并图,--abbrev-commit 参数可缩写 commit 信息。 * b75b466 (HEAD -\u003e master) conflict fixed |\\ | * 3d0eb40 (feature1) using And * | 42c89d0 using \u0026 |/ * 01c11b4 branch test ... 删除 dev 分支。 ","date":"2019-04-06","objectID":"/2019-03-26-git/:2:1","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"分支管理策略 通常,合并分支时,若可能,Git 会用 Fast forward 模式,但这种模式下,删除分支后会丢掉分支信息。 若要强制禁用 Fast forward 模式,Git 就会在 merge 时生成一个新的 commit,这样,从分支历史上就可以看出分支信息。可以在 merge 时添加 --no-ff 参数在分支历史上呈现合并分支信息,--no-ff 参数表示禁用 Fast forward 。 仍然创建并切换 dev 分支,修改 README.md 文件,并提交一个新的 commit,再切换回 master 。此时运行 git merge --no-ff -m \"merge with no-ff\" dev ,终端返回 Merge made by the 'recursive' strategy. README.md | 1 + 1 file changed, 1 insertion(+) 合并后,用 git log 查看分支历史 $ git log --graph --pretty=oneline --abbrev-commit * 3481f74 (HEAD -\u003e master) merge with no-ff |\\ | * 3a86b6c (dev) add merge |/ * b75b466 conflict fixed ... 在实际开发中,应该按照几个基本原则进行分支管理: master 分支应该非常稳定,仅用来发布新版本,平时不能在上面干活; 干活都在 dev 分支上,版本发布时,再把 dev 分支合并到 master 上,在 master 分支发布版本; 团队合作时,每个人都在 dev 分支上干活,每个人都有自己的分支,时不时地往 dev 分支上合并。 Bug 分支 每个 bug 都可以通过一个新的临时分支来修复,修复后合并分支,然后将临时分支删除。 Git 提供了一个 stash 功能,可以把当前工作现场「储藏」起来,等以后恢复现场后继续工作。 在 dev 分支修改 README.md 后, $ git stash Saved working directory and index state WIP on dev: 3a86b6c test hard merge 现在用 git status 查看工作区,是干净的,因此可以放心地创建分支来修复 bug。 若需要在 master 分支上修复 bug,则从 master 创建临时分支。 $ git checkout master $ git checkout -b issue-101 修改 bug,这里修改了 README.md ,然后提交 $ git commit -am \"fix bug 101\" [issue-101 4d97816] fix bug 101 1 file changed, 1 insertion(+), 1 deletion(-) 修复完成后,切换到 master 分支,并完成合并,最后删除 issue-101 分支 $ git checkout master $ git merge --no-ff -m \"merged bug fix 101\" issue-101 Merge made by the 'recursive' strategy. readme.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) $ git branch -d issue-101 重新回到 dev 分支干活 $ git checkout dev $ git status On branch dev nothing to commit, working tree clean 工作区是干净的,用 git stash list 命令工作现场 $ git stash list stash@{0}: WIP on dev: 3a86b6c add merge 恢复工作现场有两个办法 用 git stash apply 恢复,但是恢复后,stash 内容并不删除,需要用 git stash drop 来删除 用 git stash pop ,恢复的同时把 stash 内容也删了 $ git stash pop On branch dev Changes not staged for commit: (use \"git add \u003cfile\u003e...\" to update what will be committed) (use \"git checkout -- \u003cfile\u003e...\" to discard changes in working directory) modified: README.md no changes added to commit (use \"git add\" and/or \"git commit -a\") Dropped refs/stash@{0} (e8f4328c3334144570f3c6d38641fc971aa460a2) 此外,还可以多次 stash,恢复的时候,先用 git stash list 查看,然后恢复指定的 stash,用命令 git stash apply stash@{0} 。 Feature 分支 软件开发中,总有无穷无尽的新的功能要不断添加进来。每添加一个新功能,最好在新建分支 feature 上面开发(以免污染 dev ),完成后合并删除 feature 分支。 若新功能突然不需要了,git branch -d feature-name 命令会报错 error: The branch 'feature-name' is not fully merged. If you are sure you want to delete it, run 'git branch -D feature-name'. 可以运行 git branch -D feature-name 强行删除。 Git 工作流程 Git 工作流程 - 阮一峰的网络日志 Git 分支管理策略 - 阮一峰的网络日志 ","date":"2019-04-06","objectID":"/2019-03-26-git/:2:2","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"多人协作开发 要查看远程库的信息,用 git remote ,或者用 git remote -v 显示更详细的信息 $ git remote -v origin [email protected]:michaelliao/learngit.git (fetch) origin [email protected]:michaelliao/learngit.git (push) 上面显示了可以抓取和推送的 origin 的地址,若没有推送权限,就看不到 push 的地址。 推送分支 推送分支,就是把该分支上的所有本地提交推送到远程库。推送时,要指定本地分支,这样 Git 就会把该分支推送到远程库对应的远程分支上,例如 git push origin dev 。 有些本地分支不需要往远程推送,有些本地分支需要往远程推送 master 分支是主分支,要时刻与远程同步; dev 分支是开发分支,团队所有成员都需要在上面工作,所以也需要与远程同步; bug 分支只用于在本地修复 bug,就没必要推到远程了; feature 分支是否推到远程,取决于是否和小伙伴合作在上面开发。 抓取分支 多人协作时,大家都会往 master 和 dev 分支上推送各自的修改。 假设有小伙伴要在 dev 分支上开发,就必须创建远程 origin 的 dev 分支到本地,于是他用命令 git checkout -b dev origin/dev 创建本地 dev 分支。接着他修改了 README.md ,并提交到本地仓库的 dev 分支,然后 git push origin dev 推送到远程仓库。 碰巧你也修改了 README.md ,并提交到本地仓库的 dev 分支。 $ git push origin dev To github.com:\u003cgithub username\u003e/\u003crepository\u003e.git ! [rejected] dev -\u003e dev (non-fast-forward) error: failed to push some refs to '[email protected]:\u003cgithub username\u003e/\u003crepository\u003e.git' hint: Updates were rejected because the tip of your current branch is behind hint: its remote counterpart. Integrate the remote changes (e.g. hint: 'git pull ...') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details. 因为有小伙伴的最新提交和你试图推送的提交有冲突,所以推送失败。解决办法 Git 已经提示我们,先用 git pull 把最新的提交从 origin/dev 抓下来,然后在本地合并,解决冲突,再推送。 $ git pull There is no tracking information for the current branch. Please specify which branch you want to merge with. See git-pull(1) for details. git pull \u003cremote\u003e \u003cbranch\u003e If you wish to set tracking information for this branch you can do so with: git branch --set-upstream-to=origin/\u003cbranch\u003e dev git pull 也失败了,原因是没有指定本地 dev 分支与远程 origin/dev 分支的链接,根据提示设置 dev 和 origin/dev 的链接,再 pull $ git branch --set-upstream-to=origin/dev dev Branch 'dev' set up to track remote branch 'dev' from 'origin'. $ git pull Auto-merging README.md CONFLICT (add/add): Merge conflict in README.md Automatic merge failed; fix conflicts and then commit the result. git pull 成功,但是合并有冲突,需要手动解决,见前文「解决分支合并冲突」,再 git push origin dev 。 Rebase 多人在同一个分支上协作时,很容易出现冲突。即使没有冲突,后 push 的小伙伴也不得不先 pull,在本地合并,然后才能 push 成功。 每次合并再 push 后,分支变成了这样 $ git log --graph --pretty=oneline --abbrev-commit * d1be385 (HEAD -\u003e master, origin/master) init hello * e5e69f1 Merge branch 'dev' |\\ | * 57c53ab (origin/dev, dev) fix env conflict | |\\ | | * 7a5e5dd add env | * | 7bd91f1 add new env | |/ * | 12a631b merged bug fix 101 |\\ \\ | * | 4c805e2 fix bug 101 |/ / * | e1e9c68 merge with no-ff |\\ \\ | |/ | * f52c633 add merge |/ * cf810e4 conflict fixed ... Git 有一种称为 rebase(变基) 的操作,能把分叉的提交变成直线,使查看历史提交的变化更容易。 在和远程分支同步后,对 hello.py 做了两次提交。用 git log 命令查看 $ git log --graph --pretty=oneline --abbrev-commit * 582d922 (HEAD -\u003e master) add author * 8875536 add comment * d1be385 (origin/master) init hello * e5e69f1 Merge branch 'dev' |\\ | * 57c53ab (origin/dev, dev) fix env conflict | |\\ | | * 7a5e5dd add env | * | 7bd91f1 add new env ... 注意到 Git 用 (HEAD -\u003e master) 和 (origin/master) 标识出当前分支的 HEAD 和远程 origin 的位置分别是 582d922 add author 和 d1be385 init hello ,本地分支比远程分支快两个提交。 现在尝试推送本地分支 $ git push origin master To github.com:\u003cgithub username\u003e/\u003crepository\u003e.git ! [rejected] master -\u003e master (fetch first) error: failed to push some refs to '[email protected]:\u003cgithub username\u003e/\u003crepository\u003e.git' hint: Updates were rejected because the remote contains work that you do hint: not have locally. This is usually caused by another repository pushing hint: to the same ref. You may want to first integrate the remote changes hint: (e.g., 'git pull ...') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details. 说明有小伙伴抢先推送了远程分支,按照提示先 pull $ git pull remote: Counting objects: 3, done. remote: Compressing objects: 100% (1/1), done. remote: Total 3 (delta 1), reused 3 (delta 1), pack-reused 0 Unpacking objects: 100% (3/3), done. From github.com:\u003cgithub username\u003e/\u003crepository\u003e d1be385..f005ed4 master -\u003e origin/master * [new tag] v1.0 -\u003e v1.0 Auto-merging hello.py Merge made by the 'recursive' strategy. hello.py | 1 + 1 file changed, ","date":"2019-04-06","objectID":"/2019-03-26-git/:2:3","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"Git 远程操作 git remote 不带选项的时候, git remote 命令列出所有远程主机 $ git remote origin 使用-v选项,可以参看远程主机的网址。 克隆版本库的时候,所使用的远程主机自动被 Git 命名为 origin 。若想用其他的主机名,需要用 git clone 命令的 -o 选项指定 $ git clone -o jQuery https://github.com/jquery/jquery.git $ git remote jQuery 查看该主机的详细信息 $ git remote show \u003c主机名\u003e 添加远程主机 $ git remote add \u003c主机名\u003e \u003c网址/SSH\u003e 删除远程主机 $ git remote rm \u003c主机名\u003e 远程主机改名 $ git remote rename \u003c原主机名\u003e \u003c新主机名\u003e git fetch 默认情况下, git fetch 取回所有分支(branch)的更新。若只想取回特定分支的更新,可以指定分支名。 $ git fetch \u003c远程主机名\u003e \u003c分支名\u003e git branch 命令的 -r 选项,可以用来查看远程分支, -a 选项查看所有分支。 所取回的更新,在本地主机上要用「远程主机名/分支名」的形式读取。取回远程主机的更新以后,可以在它的基础上,使用 git checkout 命令创建一个新的分支。 $ git checkout -b newBrach origin/master 此外,也可以使用 git merge 命令或者 git rebase 命令,在本地分支上合并远程分支。 $ git merge origin/master # 或者 $ git rebase origin/master git pull git pull 命令的作用是,取回远程主机某个分支的更新,再与本地的指定分支合并。 $ git pull \u003c远程主机名\u003e \u003c远程分支名\u003e:\u003c本地分支名\u003e # 同于 $ git fetch \u003c远程主机名\u003e $ git merge \u003c远程主机名\u003e/\u003c远程分支名\u003e 如果远程分支是与当前分支合并,则冒号后面的部分可以省略。 如果合并需要采用 rebase 模式,可以使用 --rebase 选项。 $ git pull --rebase \u003c远程主机名\u003e \u003c远程分支名\u003e:\u003c本地分支名\u003e 如果远程主机删除了某个分支,默认情况下,git pull 不会在拉取远程分支的时候删除对应的本地分支。这是为了防止,由于其他人操作了远程主机,导致 git pull 不知不觉删除了本地分支。加上参数 -p 就会在本地删除远程已经删除的分支。 $ git pull -p # 等同于 $ git fetch --prune origin $ git fetch -p git push git push 命令用于将本地分支的更新,推送到远程主机。它的格式与 git pull 命令相仿。 $ git push \u003c远程主机名\u003e \u003c本地分支名\u003e:\u003c远程分支名\u003e git push \u003c远程主机名\u003e \u003c本地分支名\u003e ,将 \u003c本地分支名\u003e 本地分支推送到 \u003c远程主机名\u003e 主机的 \u003c本地分支名\u003e 分支。如果后者不存在,则会被新建。 如果省略本地分支名,则表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支。 $ git push origin :master # 等同于 $ git push origin --delete master 不带任何参数的 git push ,默认只推送当前分支,这叫做 simple 方式。此外,还有一种 matching 方式,会推送所有有对应的远程分支的本地分支。如果要修改这个设置,可以采用git config命令。 $ git config --global push.default matching 还有一种情况,就是不管是否存在对应的远程分支,将本地的所有分支都推送到远程主机,这时需要使用 --all 选项。 $ git push --all origin 上面命令表示,将所有本地分支都推送到 origin 主机。 如果远程主机的版本比本地版本更新,推送时 Git 会报错,要求先在本地做 git pull 合并差异,然后再推送到远程主机。这时,如果你一定要推送,可以使用 --force 选项。 $ git push --force origin 上面命令使用 --force 选项,结果导致远程主机上更新的版本被覆盖。除非你很确定要这样做,否则应该尽量避免使用 --force 选项。 ","date":"2019-04-06","objectID":"/2019-03-26-git/:2:4","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"标签管理 发布一个版本时,通常先在版本库中打一个标签(tag)(指向某个 commit 的指针),这样就唯一确定了打标签时刻的版本,即标签是版本库的一个快照。 ","date":"2019-04-06","objectID":"/2019-03-26-git/:3:0","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"创建标签 切换到需要打标签的分支上,再打标签 $ git tag v1.0 默认标签是打在最新提交的 commit 上,但有时也会忘记,方法是找到历史提交的 commit id,然后打上标签 $ git tag v0.9 f1e08 再用命令 git tag 查看标签,标签按字母排序 $ git tag v0.9 v1.0 可以用 git show \u003ctagname\u003e 查看标签信息 $ git show v0.9 commit f1e08437318d1e871680120c95bdcecb05a56b68 (tag: v0.9) Author: \u003cuser.name\u003e \u003c\u003cuser.emali\u003e\u003e Date: Sat Apr 6 16:14:10 2019 +0800 add merge diff --git a/README.md b/README.md ... 还可以创建带有说明的标签,用 -a 指定标签名, -m 指定说明文字 git tag -a v0.1 -m \"version 0.1 released\" 45f6a 标签总是和某个 commit 挂钩。若这个 commit 既出现在 master 分支,又出现在 dev 分支,那么在这两个分支上都会看到这个标签。 ","date":"2019-04-06","objectID":"/2019-03-26-git/:3:1","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"操作标签 若标签打错了,也可以删除 $ git tag -d v0.1 Deleted tag 'v0.1' (was 45f6ab3) 若要推送某个标签到远程,使用命令 git push origin \u003ctagname\u003e $ git push origin v1.0 Total 0 (delta 0), reused 0 (delta 0) To github.com:\u003cgithub username\u003e/\u003crepository\u003e.git * [new tag] v1.0 -\u003e v1.0 也可以一次性推送全部尚未推送到远程的本地标签, git push origin --tags 若标签已经推送到远程,要删除远程标签就要删除, git tag -d v0.9 ,再从远程删除, git push origin :refs/tags/v0.9 。 ","date":"2019-04-06","objectID":"/2019-03-26-git/:3:2","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"其他 Git 技巧 ","date":"2019-04-06","objectID":"/2019-03-26-git/:4:0","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"配置别名 若用 st 表示 status ,可以为 status 配置别名, git config --global alias.st status 。 git config --global alias.unstage 'reset HEAD' ,自定义撤销暂存区的修改操作。 更有甚者,git config --global alias.lg \"log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)\u003c%an\u003e%Creset' --abbrev-commit\" 。 每个仓库的 Git 配置文件都放在 .git/config 文件中,当前用户的 Git 配置文件放在用户主目录下 .gitconfig 文件中,删除配置别名可以直接删除在 Git 配置文件对应的行 [alias] st = status unstage = reset HEAD 此外 # 显示当前的Git配置 $ git config --list # 编辑Git配置文件 $ git config -e [--global] ","date":"2019-04-06","objectID":"/2019-03-26-git/:4:1","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"搭建 Git 服务器 远程仓库实际上和本地仓库没啥不同,只是一直保持开机并供小伙伴交换修改。 搭建 Git 服务器需要准备一台运行 Linux 的机器,强烈推荐用 Ubuntu 或 Debian,这样通过几条简单的 apt 命令就可以完成安装。 安装 git : sudo apt-get install git 创建一个 git 用户,用来运行 git 服务: sudo adduser git 创建证书登录:收集所有需要登录的用户的公钥,即 id_rsa.pub 文件,把所有公钥导入到 /home/git/.ssh/authorized_keys 文件里,一行一个 初始化 Git 仓库:先选定一个目录作为 Git 仓库(服务器上的 Git 仓 库通常都以 .git 结尾),输入 sudo git init --bare sample.git ,Git 会创建一个裸仓库,没有工作区 把 owner 改为 git : sudo chown -R git:git sample.git 禁用 shell 登录:出于安全考虑,第二步创建的 git 用户不允许登录 shell,可以通过编辑 /etc/passwd 文件完成,找到类似下面的一行: git❌1001:1001:,,,:/home/git:/bin/bash 改为 git❌1001:1001:,,,:/home/git:/usr/bin/git-shell 这样,git 用户可以正常通过 ssh 使用 git,但无法登录 shell,因为 git 用户指定的 git-shell 每次一登录就自动退出。 克隆远程仓库:现在可以通过 git clone 命令克隆远程仓库, git clone git@server:.../sample.git 另: 要管理公钥,用 Gitosis 要控制权限,用 Gitolite ","date":"2019-04-06","objectID":"/2019-03-26-git/:4:2","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"Ref Git Git 教程 - 廖雪峰的官方网站 Git 远程操作详解 - 阮一峰的网络日志 Git 常用命令 - Gityuan 博客 | 袁辉辉的 Android 博客 ","date":"2019-04-06","objectID":"/2019-03-26-git/:5:0","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["知识整理"],"content":"ChangeLog 2019.04.07 贴上阮一峰关于 Git 博客链接,供下次学习 2019.04.06 学习廖雪峰 Git 教程的笔记 ","date":"2019-04-06","objectID":"/2019-03-26-git/:6:0","tags":["Git"],"title":"Git 使用指南","uri":"/2019-03-26-git/"},{"categories":["实操记录"],"content":"阿里云快捷登录 在阿里云的控制台中复制服务器的公网 IP,我的是 47.102.121.213 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:1:0","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"免密登录 在本地执行命令(按提示输入密码),向服务器发送自己的公钥文件 ssh-copy-id -i 公钥文件 root@服务器ip 此时阿里云上的 ~/.ssh/authorized_keys 与本地 ~/.ssh/id_rsa.pub 一致,即可免密登录阿里云 ssh root@服务器ip 若重新格式化磁盘,则需要在目录 ~/.ssh 下的 known_hosts 中的 47.102.121.213 ,才能登录阿里云。 此外,也可将自己的私钥加入 ssh-agent,ssh 代理,它会帮你自动输入密码短语 passphrase # 加入代理,输入你的密码短语 ssh-add ~/.ssh/id_rsa # 查看ssh代理的内容 ssh-add -l ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:1:1","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"配置服务器 Host 在本地 ~/.ssh 目录下新建 config ,输入以下内容 Host aliyun HostName 47.102.121.213 User root IdentitiesOnly yes 保存退出后即可用 ssh aliyun 登录。 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:1:2","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"修改 hostname 登录服务器后会发现,服务器实例名称是一串冗长的字母和数字,可在阿里云服务器上修改 etc/hostname ,例如 aliyun ,并 reboot 使之生效。此时终端命令行的开头变成 root@aliyun: ,更美观。 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:1:3","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"安装相关软件 服务器系统是 Ubuntu 16.04.6 LTS 部署 Django 需要用到 Git、Pytohn3、pip3、virtualenv、Nginx ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:2:0","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"安装 Git apt-get update apt-get upgrade apt-get install git 生成公钥、密钥,并且在 github 上配置 ssh-keygen -t rsa -C \"your email\" cat ~/.ssh/id_rsa.pub 将输出的公钥添加到 GitHub,settings -\u003e SSH and GPG keys -\u003e New SSH key ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:2:1","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"安装 Pytohn3、pip3、virtualenv apt-get install python3 python3-pip pip3 install virtualenv 安装 virtualenv 时,报错 Traceback (most recent call last): File \"/usr/bin/pip3\", line 11, in \u003cmodule\u003e sys.exit(main()) File \"/usr/lib/python3/dist-packages/pip/__init__.py\", line 215, in main locale.setlocale(locale.LC_ALL, '') File \"/usr/lib/python3.5/locale.py\", line 594, in setlocale return _setlocale(category, locale) locale.Error: unsupported locale setting 终端执行 export LC_ALL=C 可暂时解决该问题。 可在 .bashrc 中添加 # locale export LC_ALL=C 并运行 source .bashrc 重新安装 virtualenv pip3 install virtualenv 切入到目录 /root/sites/stanine.top/ ,输入一下命令建立虚拟环境,取名为 env virtualenv --python=python3 env 这里使用 –python=python3 来指定克隆 Python3 的环境,如果不特别指定的话 Virtualenv 默认克隆的是 Python2 的环境。 使用虚拟环境,在终端输入source env/bin/activate ,退出虚拟环境,输入deactivate 。如果项目开发完成后想删除虚拟环境,直接删除虚拟环境目录即可。 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:2:2","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"安装 Nginx apt-get install nginx ubantu 安装完 Nginx 后,文件结构大致为: 所有的配置文件都在 /etc/nginx下; 启动程序文件在 /usr/sbin/nginx下; 日志文件在 /var/log/nginx/下,分别是access.log和error.log; 并且在 /etc/init.d下创建了启动脚本nginx。 在阿里云 -\u003e ECS -\u003e 安全组 -\u003e 配置规则,添加 80 端口以通过 HTTP 服务访问网站,通过 netstat -ant |grep 80 可查看 80 端口的监听状况。 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:2:3","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"启动 Ngnix 服务 Nginx 是用来处理静态文件请求的,比如当我们访问一个博客文章详情页面时,服务器会接收到下面两种请求: 显示文章的详情信息,这些信息通常保存在数据库里,因此需要调用数据库获取数据 图片、css、js 等存在服务器某个文件夹下的静态文件 对于前一种请求,博客文章的数据需要借助 Django 从数据库中获取,Nginx 处理不了,它就会把这个请求转发给 Django,让 Django 去处理。而对于后一种静态文件的请求,只需要去这些静态文件所在的文件夹获取,Nginx 就会代为处理,不再麻烦 Django。 用 Django 去获取静态文件是很耗时的,但 Nginx 可以很高效地处理,这就是我们要使用 Nginx 的原因(当然其功能远不止这些)。 Nginx 启动、停止和重启 /etc/init.d/nginx start # 启动 /etc/init.d/nginx stop # 停止 /etc/init.d/nginx restart # 重启 或 service nginx start service nginx stop service nginx restart 启动后,在浏览器输入 IP 地址 47.102.121.213,看到如下页面说明 Nginx 启动成功了。 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:2:4","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"本地建立 Django 项目 先在本地建立 Django 并测试,在同步到阿里云。 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:3:0","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"建立 Django 项目 建立 Django 项目,django-admin startproject stanine ,目录结构为 stanine\\ manage.py # Django 为我们生成的管理这个项目的 Python 脚本文件 stanine\\ __init__.py settings.py urls.py wsgi.py 运行 python manage.py runserver 命令就可以在本机上开启一个 Web 服务器 修改 settings.py 文件 # 把英文改为中文 LANGUAGE_CODE = 'zh-hans' # 把国际时区改为中国时区 TIME_ZONE = 'Asia/Shanghai' 添加 Django APP,python manage.py startapp stanineapi ,目录结构为 stanineapi\\ __init__.py admin.py apps.py migrations\\ __init__.py models.py tests.py views.py 修改 settings.py 文件,在 INSTALLED_APPS 数组添加 stanineapi ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:3:1","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"创建 Django 项目数据库模型 编写博客模型代码,修改 stanineapi/models.py # coding: utf-8 from django.db import models # Create your models here. class Category(models.Model): # Django 要求模型必须继承 models.Model 类 zhname = models.CharField(max_length=100) enname = models.CharField(max_length=100) class Tag(models.Model): zhname = models.CharField(max_length=100) enname = models.CharField(max_length=100) class Sagebio(models.Model): \"\"\" CharField 指定了分类名 name 的数据类型,CharField 是字符型, CharField 的 max_length 参数指定其最大长度,超过这个长度的分类名就不能被存入数据库。 指定 CharField 的 blank=True 参数值后就可以允许空值 \"\"\" zhname = models.CharField(max_length=100, blank=True) enname = models.CharField(max_length=100, blank=True) # 文章正文,我们使用了 TextField。 # 存储比较短的字符串可以使用 CharField,但对于文章的正文来说可能会是一大段文本,因此使用 TextField 来存储大段文本。 bio = models.CharField() # 这两个列分别表示文章的创建时间和最后一次修改时间,存储时间的字段用 DateTimeField 类型。 created_time = models.DateTimeField() modified_time = models.DateTimeField() # sage 只属于一个分类,使用的是 ForeignKey,即一对多的关联关系 # 可以有多个或没有标签,使用的是 ForeignKey,即多对多的关联关系 category = models.ForeignKey(Category) tags = models.ManyToManyField(Tag, blank=True) 运行 python manage.py createsuperuser 命令并根据提示创建用户。 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:3:2","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"迁移数据库 选择数据库版本,这里选择自带的 sqlite3 切换到 manage.py 文件所在的目录下,分别运行 python manage.py makemigrations 和 python manage.py migrate 命令 查看数据库表创建语句,python manage.py sqlmigrate stanineapi 0001 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:3:3","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"用 Django 的方式操作数据库 存数据 在 manage.py 所在目录下运行 python manage.py shell 命令 from stanineapi.models import Sagebio, Category, Tag c = Category(enname='action \u0026 philosophy') c.zhname = '行动与哲学' c.save() t = Tag(enname='like', zhname='喜欢') t.save() 取数据 objects 是我们的模型管理器,它为我们提供一系列从数据库中取数据方法。 all 方法,表示把对应的数据全部取出来,是一个类似于列表的数据结构(QuerySet); get 返回一条记录数据,如有多条记录或者没有记录,get 方法均会抛出相应异常。 from stanineapi.models import Sagebio, Category, Tag c = Category.objects.get(zhname='行动与哲学') c # \u003cCategory: action \u0026 philosophy\u003e Category.objects.all() # \u003cQuerySet [\u003cCategory: action \u0026 philosophy\u003e]\u003e 删数据 p = Tag.objects.get(enname='test') p # \u003cTag: test\u003e p.delete() Tag.objects.all() # \u003cQuerySet []\u003e 重置 migration 若不需要原有的数据库数据 删除数据库所有表 删除项目的 migration 模块中的所有文件,除了 init.py 执行脚本 python manage.py makemigrations 和 python manage.py migrate 若不想删除现有的数据库,只想重新建立 migration 文件 保证目前的 migration 文件与数据库同步,通过执行 python manage.py makemigrations ,若提示 No changes detected ,则可以继续 通过执行 python manage.py showmigrations 查看所有 app 及对应的已生效的 migration 文件 通过执行 python manage.py migrate --fake stanineapi zero 删除 stanineapi 这个 app 下的 migrations 模块中除了 init.py 的所有文件 (程序会再次生成 0001_intial.py 之类的文件) 执行 python manage.py migrate --fake-initial ,在数据库中的 migrations 表中记录当前这个 app 执行到 0001_initial.py ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:3:4","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"视图 绑定 URL 与视图函数 首先 Django 需要知道当用户访问不同的网址时,应该如何处理这些不同的网址(即所说的路由)。Django 的做法是把不同的网址对应的处理函数写在一个 urls.py 文件里,当用户访问某个网址时,Django 就去会这个文件里找,如果找到这个网址,就会调用和它绑定在一起的处理函数(叫做视图函数)。 在 stanineapi 目录下新建 urls.py ,写入 from django.conf.urls import url from . import views urlpatterns = [ ''' 网址是用正则表达式写的,Django 会用这个正则表达式去匹配用户实际输入的网址,如果匹配成功,就会调用其后面的视图函数做相应的处理 比如说我们本地开发服务器的域名是 http://127.0.0.1:8000,那么当用户输入网址 http://127.0.0.1:8000 后, Django 首先会把协议 http、域名 127.0.0.1 和端口号 8000 去掉,此时只剩下一个空字符串,而 r'^$' 的模式正是匹配一个空字符串 于是二者匹配,Django 便会调用其对应的 views.index 函数 name,这个参数的值将作为处理函数 index 的别名 ''' url(r'^$', views.index, name='index'), ] 编写视图函数 Web 服务器的作用就是接收来自用户的 HTTP 请求,根据请求内容作出相应的处理,并把处理结果包装成 HTTP 响应返回给用户 修改 stanineapi/views.py from django.http import HttpResponse def index(request): ''' 首先接受了一个名为 request 的参数,这个 request 就是 Django 为我们封装好的 HTTP 请求, 它是类 HttpRequest 的一个实例。然后我们便直接返回了一个 HTTP 响应给用户, 这个 HTTP 响应也是 Django 帮我们封装好的,它是类 HttpResponse 的一个实例,只是我们给它传了一个自定义的字符串参数 ''' return HttpResponse(\"欢迎访问我的博客首页!\") 配置项目 URL 之前绑定了 URL 和视图函数 index,但是 Django 并不知道。Django 匹配 URL 模式是在 stanine\\ 目录的 urls.py 下的,所以我们要把 stanineapi 应用下的 urls.py 文件包含到 stanine\\urls.py 里去。 from django.contrib import admin from django.urls import path from django.conf.urls import url, include #+ urlpatterns = [ path('admin/', admin.site.urls), url(r'', include('stanineapi.urls')), #+ ] 运行 python manage.py runserver ,打开浏览器查看效果。 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:3:5","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"部署 Django ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:4:0","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"部署前的项目配置 Django 项目中会有一些 CSS、JavaScript 等静态文件,为了能够方便地让 Nginx 处理这些静态文件的请求,可以把项目中的全部静态文件收集到一个统一的目录下。在 settings.py 添加如下配置 STATIC_URL = '/static/' # 加入下面的配置 STATIC_ROOT = os.path.join(BASE_DIR, 'static') STATIC_ROOT 指明了静态文件的收集目录,即项目根目录(BASE_DIR)下的 static 文件夹。 为了安全起见,在生产环境下需要关闭 DEBUG 选项以及设置允许访问的域名。打开 settings.py 文件,找到 DEBUG 和 ALLOWED_HOSTS 这两个选项,将它们设置成如下的值: DEBUG = False ALLOWED_HOSTS = ['127.0.0.1', 'localhost ', '47.102.121.213'] ALLOWED_HOSTS 是允许访问的域名列表,127.0.0.1 和 localhost 是本地访问的域名。 项目还会依赖一些第三方 Python 库,为了方便在服务器上一次性安装,将全部依赖写入一个叫 requirements.txt 的文本文件中。激活本地的虚拟环境,并进入项目的根目录,运行 pip3 freeze \u003e requirements.txt 命令。这时项目根目录下会生成了一个 requirements.txt 的文本文件,其内容记录了项目的全部依赖。 最后,将代码上传到 GitHub 等代码托管平台。 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:4:1","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"拉取代码并安装项目依赖 进入到 ~/sites/stanine.top/ 目录下,激活虚拟环境,接着从代码仓库把项目代码拉取到 stanine.backend/ 路径下。 进入到项目根目录,即 requirements.txt 所在的目录,安装项目的全部依赖 pip install -r requirements.txt ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:4:2","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"收集静态文件 虚拟环境下继续运行 python manage.py collectstatic 命令收集静态文件到 static 目录下 python manage.py collectstatic ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:4:3","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"配置 Nginx 并启动服务 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:5:0","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"配置 Nginx 先在服务器的 /etc/nginx/sites-available/ 目录下新建一个配置文件,文件名一般就设置为域名,api.stanine.top。写上配置内容 server { charset utf-8; listen 80; server_name 47.102.121.213; # 服务的域名 location /static { # 所有 URL 带有 /static 的请求均由 Nginx 处理,alias 指明了静态文件的存放目录 alias /root/sites/stanine.top/stanine-backend/static; } location / { # 其它请求转发给 Django 处理 proxy_set_header Host $host; proxy_pass http://127.0.0.1:8000; # proxy_pass 后面使用了 unix 套接字,其作用是防止端口冲突 #proxy_pass http://unix:/tmp/api.stanine.top.socket; #index test.html index.htm index.nginx-debian.html; } } 在 /etc/nginx/sites-available/ 放置了配置文件,而被启用网站的目录在 /etc/nginx/sites-enabled/,需要建立软链 sudo ln -s /etc/nginx/sites-available/api.stanine.top /etc/nginx/sites-enabled/api.stanine.top PS:软链中目标路径必须是绝对路径 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:5:1","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"启动服务 在项目根目录下,运行 python manage.py runserver ,打开浏览器查看效果,47.102.121.213/admin 可登陆后台。 但是阿里云下线时,服务也会停止。一下命令可在下线情况下,仍然提供服务 nohub python manage.py runserver \u0026 nohup 命令可在注销后运行后台中的程序,\u0026 可以把一个程序放在后台运行。 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:5:2","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"参考 使用 Nginx 和 Gunicorn 部署 Django 博客_追梦人物的博客 阿里云服务器从零开始部署博客 | 无趣的小帕 linux 的 nohup \u0026 和 daemon 总结 (转) - 平和的心 - 博客园 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:6:0","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["实操记录"],"content":"ChangLog 2019-04-06 初稿 ","date":"2019-04-06","objectID":"/2019-04-06-deploy-django/:7:0","tags":["服务器","Python"],"title":"阿里云从零部署 Django","uri":"/2019-04-06-deploy-django/"},{"categories":["知识整理"],"content":"速查表 字符 描述 \\ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,’n’匹配字符“n”。’\\n’匹配一个换行符。序列‘\\’匹配“\\”而“(”则匹配“(“。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配‘\\n’或‘\\r’之后的位置。 $ 匹配输入字符串的结束位置。如果设置了 RegExp 对象的 Multiline 属性,$ 也匹配‘\\n’或‘\\r’之前的位置。 * 匹配前面的子表达式零次或多次。例如,zo*能匹配 z 以及 zoo。*等价于{0,}。 + 匹配前面的子表达式一次或多次。例如,’zo+’能匹配 zo 以及 zoo,但不能匹配 z。+ 等价于 {1,}。 ? 匹配前面的子表达式零次或一次。例如,do(es)?可以匹配 do 或 does 中的 do。? 等价于 {0,1}。 {n} n 是一个非负整数。匹配确定的 n 次。例如,’o{2}’不能匹配 Bob 中的 o,但是能匹配 food 中的两个 o。 {n,} n 是一个非负整数。至少匹配 n 次。例如,’o{2,}’不能匹配“Bob”中的‘o’,但能匹配“foooood”中的所有 o。’o{1,}’等价于‘o+’。’o{0,}’则等价于‘o*’。 {n,m} m 和 n 均为非负整数,其中 n\u003c=m。最少匹配 n 次且最多匹配 m 次。例如,o{1,3}将匹配 fooooood 中的前三个 o。’o{0,1}’等价于‘o?’。请注意在逗号和两个数之间不能有空格。 ? 当该字符紧跟在任何一个其他限制符后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串 oooo,’o+?’将匹配单个 o,而 o+ 将匹配所有 o。.匹配除\\n 之外的任何单个字符。要匹配包括\\n 在内的任何字符,请使用像 (.|\\n) 的模式。 (pattern) 匹配 pattern 并获取这一匹配。所获取的匹配可以从产生的 Matches 集合得到,在 VBScript 中使用 SubMatches 集合,在 JScript 中则使用 $0…$9 属性。要匹配圆括号字符,请使用‘(’或‘)’。 (?:pattern) 匹配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用“或”字符 (|) 来组合一个模式的各个部分是很有用。例如, ‘industr(?:y|ies) 就是一个比‘industry|industries’更简略的表达式。 (?=pattern) 正向预查,在任何匹配 pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如,’Windows (?=95|98|NT|2000)’能匹配“Windows 2000”中的“Windows” ,但不能匹配“Windows 3.1”中的“Windows”。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。 (?!pattern) 负向预查,在任何不匹配 pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如’Windows (?!95|98|NT|2000)’能匹配“Windows 3.1”中的“Windows”,但不能匹配“Windows 2000”中的“Windows”。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。 x|y 匹配 x 或 y。例如,’z|food’能匹配“z”或“food”。’(z|f)ood’则匹配“zood”或“food”。 [xyz] 字符集合。匹配所包含的任意一个字符。例如, ‘[abc]’可以匹配“plain”中的‘a’。 [^xyz] 负值字符集合。匹配未包含的任意字符。例如, ‘[^abc]’可以匹配“plain”中的’p’、’l’、’i’、’n’。 [a-z] 字符范围。匹配指定范围内的任意字符。例如,’[a-z]’可以匹配‘a’到‘z’范围内的任意小写字母字符。 [^a-z] 负值字符范围。匹配任何不在指定范围内的任意字符。例如,’[^a-z]’可以匹配任何不在‘a’到‘z’范围内的任意字符。 \\b 匹配一个单词边界,也就是指单词和空格间的位置。例如, ‘er\\b’可以匹配”never”中的‘er’,但不能匹配“verb”中的‘er’。 \\B 匹配非单词边界。’er\\B’能匹配“verb”中的‘er’,但不能匹配“never”中的‘er’。 \\cx 匹配由 x 指明的控制字符。例如, \\cM 匹配一个 Control-M 或回车符。x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的‘c’字符。 \\d 匹配一个数字字符。等价于 [0-9]。 \\D 匹配一个非数字字符。等价于 [^0-9]。 \\f 匹配一个换页符。等价于 \\x0c 和 \\cL。 \\n 匹配一个换行符。等价于 \\x0a 和 \\cJ。 \\r 匹配一个回车符。等价于 \\x0d 和 \\cM。 \\s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \\f\\n\\r\\t\\v]。 \\S 匹配任何非空白字符。等价于 [^ \\f\\n\\r\\t\\v]。 \\t 匹配一个制表符。等价于 \\x09 和 \\cI。 \\v 匹配一个垂直制表符。等价于 \\x0b 和 \\cK。 \\w 匹配包括下划线的任何单词字符。等价于’[A-Za-z0-9_]’。 \\W 匹配任何非单词字符。等价于‘[^A-Za-z0-9_]’。 \\xn 匹配 n,其中 n 为十六进制转义值。十六进制转义值必须为确定的两个数字长。例如,’\\x41′ 匹配“A”。’\\x041′ 则等价于‘\\x04’ \u0026 “1”。正则表达式中可以使用 ASCII 编码。 \\num 匹配 num,其中 num 是一个正整数。对所获取的匹配的引用。例如,’(.)\\1′ 匹配两个连续的相同字符。 \\n 标识一个八进制转义值或一个向后引用。如果 \\n 之前至少 n 个获取的子表达式,则 n 为向后引用。否则,如果 n 为八进制数字 (0-7),则 n 为一个八进制转义值。 \\nm 标识一个八进制转义值或一个向后引用。如果 \\nm 之前至少有 nm 个获得子表达式,则 nm 为向后引用。如果 \\nm 之前至少有 n 个获取,则 n 为一个后跟文字 m 的向后引用。如果前面的条件都不满足,若 n 和 m 均为八进制数字 (0-7),则 \\nm 将匹配八进制转义值 nm。 \\nml 如果 n 为八进制数字 (0-3),且 m 和 l 均为八进制数字 (0-7),则匹配八进制转义值 nml。 \\un 匹配 n,其中 n 是一个用四个十六进制数字表示的 Unicode 字符。例如, \\u00A9 匹配版权符号 (?)。 中文字符 [\\u4e00-\\u9fa5] 双字节字符 [^\\x00-\\xff] email \\w+([-+.]\\w+)@\\w+([-.]\\w+).\\w+([-.]\\w+)* ","date":"2019-03-10","objectID":"/2019-03-10-regular-expressions-quicklook/:1:0","tags":["正则表达式","速查"],"title":"正则表达式常用速查","uri":"/2019-03-10-regular-expressions-quicklook/"},{"categories":["知识整理"],"content":"JavaScript replace() 语法:str.replace(regexp|substr, newSubStr|function) 例子 function styleHyphenFormat(propertyName) { function upperToHyphenLower(match) { return \"-\" + match.toLowerCase(); } return propertyName.replace(/[A-Z]/g, upperToHyphenLower); } ","date":"2019-03-10","objectID":"/2019-03-10-regular-expressions-quicklook/:2:0","tags":["正则表达式","速查"],"title":"正则表达式常用速查","uri":"/2019-03-10-regular-expressions-quicklook/"},{"categories":["知识整理"],"content":"参考 正则表达式速查表 – Shadow Walker 正则表达式在线测试 | 菜鸟工具 String.prototype.replace() - JavaScript | MDN ","date":"2019-03-10","objectID":"/2019-03-10-regular-expressions-quicklook/:3:0","tags":["正则表达式","速查"],"title":"正则表达式常用速查","uri":"/2019-03-10-regular-expressions-quicklook/"},{"categories":["知识整理"],"content":"ChangeLog 2019-05-12 添加 replace() 2019-04-20 添加中文字符 2019-03-10 初稿 ","date":"2019-03-10","objectID":"/2019-03-10-regular-expressions-quicklook/:4:0","tags":["正则表达式","速查"],"title":"正则表达式常用速查","uri":"/2019-03-10-regular-expressions-quicklook/"},{"categories":null,"content":" 自私不是个体道德意义上的自私,而是一种盲目的、无意识的行为本身。 基因是进化的单位,生物个体(生存机器)是承载基因复制子的载体。 减数分裂可解释为,基因之间相互拷贝有利的基因。 分析亮点是,用博弈论解释自然界中各种稳态的生存策略。 人类是承载基因和模因的机器人,人类需要用理性维护人类自身的利益(即便与基因和模因的利益有出入),人类也可根据自己的意愿创造基因和模因。 ","date":"2019-01-06","objectID":"/talks/2019-01-06-the-selfish-gene/:0:0","tags":null,"title":"《自私的基因》主要内容","uri":"/talks/2019-01-06-the-selfish-gene/"},{"categories":null,"content":" 进行实验性的尝试:在确定转型的主要方向之前,先小范围尝试新职业的工作和新的职业角色。 建立新的人际关系:认识可以为我们提供帮助的人,找到新的职业角色的榜样和新的同行作为标杆,指导我们进步。 找出转型的意义:找出或创造出让你改变职业的诱因,讲一个好故事作为转型的果,并以此为理由推动新职业的发展。 ","date":"2018-12-27","objectID":"/talks/2018-12-27-%E9%87%8D%E5%A1%91%E8%81%8C%E4%B8%9A%E8%BA%AB%E4%BB%BD%E7%9A%84%E7%AD%96%E7%95%A5/:0:0","tags":null,"title":"重塑职业身份的策略","uri":"/talks/2018-12-27-%E9%87%8D%E5%A1%91%E8%81%8C%E4%B8%9A%E8%BA%AB%E4%BB%BD%E7%9A%84%E7%AD%96%E7%95%A5/"},{"categories":null,"content":"1959 年霍兰德开始提出他的生涯理论,之后不断发展,并在 1973 年提出经典的霍兰德六角形模型(Hexagonal model)。 值得注意的是,霍兰德早期只提出 6 种类型论,之后才借助《职业自我探索量表》(Self-Directed Search;简称 SDS)将六种类型与相应职业关联在一起,试图解答个人心理特质如何与职业因素更好地匹配(有时这个问题被简称为「人职匹配」)。 类型 特征 特征关键词 工作场合特征 实际型(Realistic) 喜爱具体明确、需要动手操作的工作环境。他们通常情绪稳定、忍耐力强,给人的印象是诚实、谦和、节俭、脚踏实地。喜欢用实际行动代替言语表达,重视现在胜于重视未来。对于操作机械、修理仪器等需要技术、体力的活动表现出浓厚的兴趣。喜欢从事机械、电子、建筑、农事等方面的工作,较不喜欢需要社交、与人接触的活动。 重视物质 顺从 温和 实际 自然 坦白 害羞 谦虚 有恒心 诚实 稳定 节俭 实际型的工作场合较多运用到身体的实际操作。通常需要运用到某些特殊的技术,以便进行机器的修理、电子器材的维护、汽车的驾驶或动物的畜养等。在这类工作环境中,处理与物接触的问题比处理人际问题还重要。实际型的工作环境比其他的工作环境容易造成生理伤害或意外事件,例如高楼建筑工地、管线装设、户外油漆等。 研究型(Investigative) 擅长运用心智能力去观察、分析、推理,喜欢与符号、概念、文字、抽象思考有关的活动。他们个性独立、温和、谨慎、保守、内向,头脑聪明,思考理性、有逻辑。在工作上,表现出优异的科学能力,能提出新的想法和策略。喜欢从事理化、生物、医药、程序设计等需要动脑的研究工作,较不喜欢领导、竞争等需要企业能力的工作。 重视方法 分析 独立 温和 谨慎 智慧 精细 好奇 批判 内向 理性 保守 研究型的工作场合通常需要运用复杂抽象的思考能力。在这些工作环境的人常常采用数学或科学的知识,寻求问题的解决。例如:计算机程序设计师、医师、数学家、生物学家等。在大型企业,研究发展部门(R&D)也属于这类的工作场所。这类环境不太需要处理复杂的人际关系,大多数情况下,必须独立解决工作上的问题。 艺术型(Artistic) 喜欢自由自在、富有创意的工作环境。他们喜欢借助文字、声音、动作或色彩来表达内心想法和对美的感受。个性热情、冲动,有丰富的想象力和创造力。在工作上,乐于独立思考、创作,不喜欢受人支配。他们对美的事物有敏锐的直觉,喜欢从事音乐、文学、戏剧、舞蹈、美术等艺术气息浓厚的工作,较不喜欢从事文书处理等方面的传统性工作。 崇尚理想 不从众 有创意 复杂 无条理 富幻想 善表达 直觉 情绪化 不实际 独立 冲动 艺术型的工作场合非常鼓励创意以及个人的表现能力。这个类型的环境提供了开发新产品与创造性解答的自由空间。例如:艺术家、音乐家、自由文字工作者等。这些人可以无拘无束地进行创作,没有上、下班时间的束缚,来去自如。工作环境鼓励感性与情绪的充分表达,不要求逻辑形式;经常使用到的工具也是为了传达内心的情绪或创意,如琴棋书画等。 社会型(Social) 喜欢从事与人接触的活动。他们个性温暖、友善,乐于助人,容易与人相处。对人慷慨、仁慈,喜欢倾听和关心别人,能敏锐察觉别人的感受。在团体中,乐于与人合作,有责任感,喜欢和大家一起完成工作,不爱竞争。他们关心人胜于关心与物接触,喜欢从事教师、辅导、护理、宗教等与帮助他人有关的工作,较不喜欢从事需要技术、体力等机械操作方面的工作。 令人信服 社会化 助人 敏感 善解人意 能同理 宽宏 合作 有责任心 仁慈 友善 温暖 社会型的工作场合鼓励人和人之间的和谐相待、互相帮助、和睦相处。工作场所中充满了有教无类的经验指导与交流、心理的沟通、灵性的扶持等。例如:各级学校的教师、婚姻咨询师、咨询心理学家、牧师、精神科医师等。社会型的工作氛围强调人类的核心价值,如理想、仁慈、友善和慷慨等。 企业型(Enterprising) 喜爱冒险、竞争,通常精力充沛、生活紧凑,个性积极、有冲劲。他们的社交能力强,是沟通协调的高手。在工作上表现出强烈的野心,希望拥有权力、受人注意并成为团体中的领导者。做事有组织、有计划,喜欢立刻采取行动,领导人们达成工作目标、赚取利益。喜欢销售、管理、法律、政治方面的活动,不喜欢花太多时间做科学研究。 精力充沛 冒险 武断 外向 善于表达 野心 冲动 自信 引人注意 乐观 社交 热情 企业型的工作场合经常管理与鼓舞其他的人,力图达成组织或个人的目标。工作场所中充满了权力、金融或经济的议题,甚至为了达成预期的绩效,不惜冒点风险。例如:企业经营、保险业务、政治活动、证券市场、公关部门、营销部门、房地产销售等等。企业型的工作氛围重视升迁、绩效、权力、说服力与推销能力;非常强调自信、社交手腕与当机立断。 传统型(Conventional) 个性保守谨慎,注意细节,有责任感。做事按部就班、精打细算、清清楚楚。他们喜欢安定,奉公守法,不喜欢改变、创新和冒险。在工作上,表现出有秩序、做事仔细、有效率、尽本分、值得信赖。他们喜欢在别人的领导下工作,乐于配合和服从。喜欢从事会计、秘书、银行等数字计算、文书数据处理方面的工作,较不喜欢从事艺术活动。 缺乏弹性 守本分 顺从 抑制 缺乏想象力 有良知 节俭 保守 有条理 谨慎 有恒心 有责任感 传统型的工作场合注重组织与规划。大多数传统型的工作场所包括了办公室的基本工作,如档案管理、数据记录、进度管控等;此外,也需要运用到数字与人事行政的能力,典型部门包括秘书处、人事部门、会计部门、总务部门等。 霍兰德六大类型按照固定顺序 —— RIASEC 排列。这样排列的原因是类型在六边型上的距离,指示了其内部一致性。一致性程度越高,其内在兴趣范围同质性愈高。 适配性(congruence)是指个人类型与环境特性配合适当与否的程度。人与工作配合得当,如 R 型的人在 R 型的工作环境,其适配性就高;反之,R 型的人选择了 S 型的工作环境,则适配程度最低。根据霍兰德的假设,适配性高低可以预测个人的职业满意程度、职业稳定性以及职业成就。 人们发现在霍兰德六角模型下,潜藏着两个双极维度:一个维度是「事务处理」(data)与「心智思考」(ideas),另一个维度是「与物接触」(things)和「与人接触」(people)。 ","date":"2018-10-28","objectID":"/talks/2018-10-28-%E9%9C%8D%E5%85%B0%E5%BE%B7%E8%81%8C%E4%B8%9A%E5%85%B4%E8%B6%A3%E7%90%86%E8%AE%BA/:0:0","tags":null,"title":"霍兰德职业兴趣理论","uri":"/talks/2018-10-28-%E9%9C%8D%E5%85%B0%E5%BE%B7%E8%81%8C%E4%B8%9A%E5%85%B4%E8%B6%A3%E7%90%86%E8%AE%BA/"},{"categories":null,"content":"Google ngram Viewer 在 Google Books Ngram Viewer 里输入 ability, capacity, capability, genius, talent, competence, faculty, gift, aptitude 六个表示人的“能力,才能”之意的英文单词,得到如下结果 其中 genius 呈下降趋势;ability,capacity,competence,capability 呈上升趋势;gift,faculty 由于一词多义,变化不明显。由此可以提出一个猜测:人们越来越关注后天习得的能力而不是天赋。 ","date":"2018-05-29","objectID":"/draft/2018-05-29-infomation-analysis-toolbox/:1:0","tags":null,"title":"「实践策略」信息分析工具箱","uri":"/draft/2018-05-29-infomation-analysis-toolbox/"},{"categories":null,"content":"ChangLog 2018-05-29 初稿 ","date":"2018-05-29","objectID":"/draft/2018-05-29-infomation-analysis-toolbox/:2:0","tags":null,"title":"「实践策略」信息分析工具箱","uri":"/draft/2018-05-29-infomation-analysis-toolbox/"},{"categories":null,"content":"Trello Google Drive:自动生成 Google slides Introducing Trello for Google Slides 一个 board 生成一个投影片 二级目录是 list card 是一张投影片,标题为 card 标题,左边文字是 description,右边图片是封面图片 快捷键 Keyboard Shortcuts | Trello ","date":"2018-05-29","objectID":"/draft/2018-05-29-smart-gadget/:1:0","tags":null,"title":"「实践策略」效率工具箱","uri":"/draft/2018-05-29-smart-gadget/"},{"categories":null,"content":"ChangeLog 2018-05-29 初稿 ","date":"2018-05-29","objectID":"/draft/2018-05-29-smart-gadget/:2:0","tags":null,"title":"「实践策略」效率工具箱","uri":"/draft/2018-05-29-smart-gadget/"},{"categories":["读书笔记"],"content":" 《翻译乃大道》读书笔记 中文常态:措辞简洁,语法对称,句式灵活,声调铿锵。 中文病态:引入大量的英文表达,繁琐生硬。 ","date":"2018-03-15","objectID":"/2018-03-15-good-chinese-bad-chinese/:0:0","tags":["写作","速查"],"title":"中文的常态与病态","uri":"/2018-03-15-good-chinese-bad-chinese/"},{"categories":["读书笔记"],"content":"中文最常见的常态和病态 项目 坏例子 好例子 避免英式抽象名词作主语 他的收入的减少改变了他的生活方式 他收入减少,于是改变生活方式 中文主语可以是一件事情 国语的推行,要靠大家努力 推行国语,要靠大家努力 避免文字义肢,动词变为万能动词 + 抽象名词,对「作出」、「进行」滥用 听众对访问教授作出了十分热烈的反应 听众对访问教授反应十分热烈 避免学术术语滥用,「性、型、度」 这本书可读性颇高。他是热情型的人。前瞻性等等 这本书引人入胜。他是个热情的人。 避免……之一 李广乃汉朝名将之一 李广乃汉朝名将。 避免「与、及、和、而」过多使用 台北显然比曼谷起步更早及迈步更快 台北显然比曼谷起步更早、迈步更快。 避免介词乱用,「关于、有关、中间、由于、使得」 由于他家境贫寒,使得他只好休学。 他家境贫寒,只好休学。 避免动词降副词 他苦心孤诣地想出一套好办法来。 他苦心孤诣,想出一套好办法。 避免过多使用「的」 参差的斑驳的黑影。 参差而斑驳的黑影。 中文可以后置形容词,避免前修饰太长。 我看见一个长得像你兄弟的男人 我看见一个男人,长得像你兄弟。 避免被动,中文多主动语气 他这意见不被大家接受。他不被获准入学。糖都被吃完了。 他这意见大家都不接受。他未获准入学。糖都吃完了。 ","date":"2018-03-15","objectID":"/2018-03-15-good-chinese-bad-chinese/:1:0","tags":["写作","速查"],"title":"中文的常态与病态","uri":"/2018-03-15-good-chinese-bad-chinese/"},{"categories":["读书笔记"],"content":"词性被带偏 下面按照词性,分别介绍中文中各种词的用法被英文带偏的情况。 ","date":"2018-03-15","objectID":"/2018-03-15-good-chinese-bad-chinese/:2:0","tags":["写作","速查"],"title":"中文的常态与病态","uri":"/2018-03-15-good-chinese-bad-chinese/"},{"categories":["读书笔记"],"content":"名词 主语 英文喜欢用抽象名词,「他的收入的减少改变了他的生活方式」,中文的说法是以具体名词,尤其是人做主词:「他因为收入减少而改变生活方式」,或者「他收入减少,乃改变生活方式」。 中文常用一件事情 (一个短句) 做主词,英文则常用一个名词 (或名词词组)。「横贯公路再度坍方,是今日的头条新闻」,是中文的说法。「横贯公路的再度坍方,是今日的头条新闻」,英文好用抽象名词,其结果是软化了动词,也可以说是架空了动词。 中文 英文 具体名词 抽象名词 一个短句(一件事) 名词或名词片语 宾语 英语好用抽象动词,架空了动词。科学、社会学和公文的用语侵入生活,迫使许多动词变成了万能动词加抽象名词的片语,中文也呈现这种病态。 动词+抽象名词: 本校的校友对社会作出了重大的贡献。 昨晚的听众对访问教授作出了十分热烈的反应。 原本应有的样子: 本校的校友对社会贡献很大。 昨晚的听众对访问教授反应十分热烈。 单复数数量词 区分单复数是欧洲语文的惯例,而中文的名词没有复数的变化。在中文中,可以使用「众」、「们」来表示多数,但是很多时候并不需要复数尾。西化的弊病表现在用「人们」取代「人人」、「大家」等词,而「听众们」,「观众们」这样众们并用,既显累赘,又语句不通。 中文词不分数量,中文原无「……之一」的句法,现在我们说「观众之一」实在是不得已。至于这样的句子:「作为竹林七贤之一的刘伶」,不但「作为」二字纯然多余,「之一的」也文白来杂,读来破碎,把主词「刘伶」压在底下,更是扭捏作态。 ","date":"2018-03-15","objectID":"/2018-03-15-good-chinese-bad-chinese/:2:1","tags":["写作","速查"],"title":"中文的常态与病态","uri":"/2018-03-15-good-chinese-bad-chinese/"},{"categories":["读书笔记"],"content":"辅助词 连接词 英文用\"and\"连接词性相同的词,中文往往有相应的词,或者任其并列。例如「夫妻」、「你我」,「东南西北」。 在连接词使用的不良趋势有两条: 不用连接词的地方用上连接词 「和」,「与」,「及」,「以及」包办了所有连接词,「而」,「并」,「而且」等几乎绝迹 介词 介词在英文里的用途远比中文里重要,简直成了英文的润滑剂。英文的不及物动词加上介词,往往变成了及物动词,英文简直离不了介词。中文则不尽然。「有关」、「关于」、「由于」之类,大概是用得最滥的介词了:由于好奇心的驱使,我向窗内看了一眼。英文在形式上重逻辑,喜欢交代事物物的因果关系。中文则不尽然。「清风徐来,水波不兴」,其中当然有因果关系,但是中文只用上下文作不言之喻。 ","date":"2018-03-15","objectID":"/2018-03-15-good-chinese-bad-chinese/:2:2","tags":["写作","速查"],"title":"中文的常态与病态","uri":"/2018-03-15-good-chinese-bad-chinese/"},{"categories":["读书笔记"],"content":"修饰词 副词 英文的副词形式对中文为害尚不显著,但也已经开始了。例如这样的句子:「大家苦中作乐地竟然大唱其民谣」。「苦中作乐」本是动词,套上副词语尾的「地」就降为副词了。这么一来,文章仍然清楚,文法上却主客分明,太讲从属的关系,有点呆板。若把「地」一律删去,代以逗点,不但可以摆脱这主客的关系,语气也会灵活一些。 滥用「成功地」在日常生活中很常见。例如,国父孙中山先生成功地推翻了满清。「成功地」在这句话中毫无意义,和「推翻」的意思重复了。 形容词 在白话文里,这「的」字成了形容词除不掉的尾巴:「灰暗的凄冷的天空」改成「灰暗而凄冷的天空」,「夜色来袭」何等有力,「夜色的来袭」就松软下来了。 形容词或修饰语 (modifier) 可以放在名词之前,谓之前饰,也可以跟在名词之后,谓之后饰。目前的白话文,不知何故,几乎一律前饰,似乎不懂后饰之道。其实文言文的句子往往是后饰的,例如司马迁写项羽:*籍长八尺余,力能扛鼎,才气过人。*在当代白话文里,很可能变成:「项籍是一个身高八尺,力能扛鼎,同时才气过人的汉子」。后饰句可以一路加下去,虽长而不失自然,富于弹性。前饰句以名词压底,一长了,就显得累赘,紧张,不胜负担。所以前饰句是关闭句,后饰句是开放句。 白话文中的形容词主要有一下弊病: 形容词用太多的「的」来组织,导致啰嗦而软弱。 用抽象名词+「的」来组成形容词。 形容词可以前饰或后饰,现在的白话文几乎一律前饰。 后饰句是开放句可以一路加下去,虽长而不失自然,富于弹性。 前饰句是关闭句,太长就显得累赘。 ","date":"2018-03-15","objectID":"/2018-03-15-good-chinese-bad-chinese/:2:3","tags":["写作","速查"],"title":"中文的常态与病态","uri":"/2018-03-15-good-chinese-bad-chinese/"},{"categories":["读书笔记"],"content":"动词 动词西化的危机另有两端:一是单纯动词分解为「弱动词 + 抽象名词」的复合动词。不说「一架客机失事,死了九十八人」,却说「一架客机失事,造成九十八人死亡」,实在是迂回作态。另一端是采用被动词语气。目前西化的趋势,是在原来可以用主动语气的场合改用被动语气。「他被选为议长」不如「他当选为议长」。「他被指出许多错误」也不如「有人指出他许多错误」。 以下三种句式在英文中都很常见,而中文中只有第一种最常见,第三种更多使用主动语气,如「糖都吃完了」。 哥伦布发现了新大陆。 新大陆被哥伦布发现了。 新大陆被发现了 在可以使用主动语气的场合,改用被动语气,往往失之生硬。使用主动语气更佳。另一个毛病就是被动语气和「被」字绑定使用,忽视了其他的字。 中文的西化有重有轻,有暗有明,但其范围愈益扩大,其现象愈益昭彰,颇有加速之势。以上仅就名词、连接词、介词、副词、形容词、动词等西化之病稍加分析,希望读者能举一反三,知所防范。中文发展了好几千年,从清通到高妙,自有千锤百炼的一套常态。谁要是不知常态为何物而贸然自诩为求变,其结果也许只是献拙,而非生巧。变化之妙,要有常态衬托才显得出来。一旦常态不存,余下的只是乱,不是变了。 ","date":"2018-03-15","objectID":"/2018-03-15-good-chinese-bad-chinese/:2:4","tags":["写作","速查"],"title":"中文的常态与病态","uri":"/2018-03-15-good-chinese-bad-chinese/"},{"categories":["读书笔记"],"content":"中文常态、变态对比 中文常态 中文变态 措辞简洁 措辞繁琐 句式灵活 句式生硬 声调铿锵 邋遢冗余 ","date":"2018-03-15","objectID":"/2018-03-15-good-chinese-bad-chinese/:3:0","tags":["写作","速查"],"title":"中文的常态与病态","uri":"/2018-03-15-good-chinese-bad-chinese/"},{"categories":["读书笔记"],"content":"中文危机:西化 成语普及度低 西化太快,非取长补短,破坏了中文自然生态 中文使用习惯 中文西化使用习惯 例子 具体名词,尤其是人,做主词 喜用抽象名词 「他的收入的减少改变了他的生活方式」vs「他因为收入减少而改变生活方式」 用一件事情(一个短句)做主词 常用一个名词(或名词词组) 「推行的国语,要靠大家的努力」vs「推行国语,要靠大家努力」 无弱动词现象 弱动词现象 (喜欢把简单明了的动词分解成「万能动词+抽象名词」的片词) 例子 1:press vs apply pressure 例子 2:昨晚的听众对访问教授反应十分热烈。 vs昨晚的听众对访问教授作出了十分热烈的反应。 被传染 名词成灾、伪学术化、伪术语(pseudo-jargon) first step vs initial phase「这本传记引人入胜」vs「这本传记的可读性颇高」「更有远见」vs「更具前瞻性」 被传染 主义泛滥 爱国精神 vs 爱国主义 无单复数变化,却被传染 单复数变化 「民众」vs「民众们」(滥用“们”)刘伶是竹林七贤的同人 vs 作为竹林七贤之一的刘伶(改写去掉“之一”)李广乃汉朝名将 vs 李广乃汉朝名将之一(“之一”多余) 被传染(原来不用连接词的地方,在 and 意识的教唆下,都装上了连接词;而所谓连接词都由「和」、「与」、「及」、「以及」包办,可是灵活而宛转的「而」、「并」、「而且」等词,几乎要绝迹了) 词性相同的字眼常用 and 来连接 夫妻 vs man and wife 你我 vs you and I 前后 vs back and forth 介词滥用 介词在英文里的用途远比中文里重要,简直成了英文的润滑剂。英文的不及物动词加上介词,往往变成了及物动词,例如 look after, take in 皆是。介词词组(prepositional phrase)又可当作形容词或助词使用,例如 a friend in need, said it in earnest。 隐含逻辑关系 重因果,重逻辑 「清风徐来,水波不兴」vs「因为清风徐来,所以水波不兴」 英文助词滥用,滥用地、的、得,用到形容词,似乎就离不开「的」 助词很重要 他苦心孤诣想出一套好办法来。vs 他苦心孤诣地想出一套好办法来。 被中文 用学术面貌的抽象名词加助词构成形容词 很难 vs 难度很高的 热情的人 vs 热情型的人 白话文形容词过分前置 前置居多 「我见到一个男人,长得像你兄弟。」vs「我见到一个长得像你兄弟的男人。」 被传染 多用被动语气 你这句话吓不倒我。vs 我不会被你这句话吓倒。被打 vs 挨打(即使是被动语气滥用“被”) ","date":"2018-03-15","objectID":"/2018-03-15-good-chinese-bad-chinese/:4:0","tags":["写作","速查"],"title":"中文的常态与病态","uri":"/2018-03-15-good-chinese-bad-chinese/"},{"categories":["读书笔记"],"content":"CHangeLog 2018-03-15 初稿 ","date":"2018-03-15","objectID":"/2018-03-15-good-chinese-bad-chinese/:5:0","tags":["写作","速查"],"title":"中文的常态与病态","uri":"/2018-03-15-good-chinese-bad-chinese/"},{"categories":null,"content":"前者只是客观记录自己的时间花销,以供反馈改进,促使行动更有利于实现理想,而在行动时无需考虑到时间,只管专注于当前工作,根据柳比歇夫的睡眠习惯,时间统计更像是精力管理;后者是更多为经理人处理繁多任务服务。时间统计方法的关键是:每月每年五年的小结、计划;把时间作为容器,去装在导向理想的一次次学习、练习、心流、改进,仅在月以上的时间单位调整日常作息,使得每天无需重新计划任务;用于记录评判登峰造极,甚至实现理想的全过程;检测健康和情绪。 ","date":"2018-03-10","objectID":"/talks/2018-03-10-%E5%A5%87%E7%89%B9%E7%9A%84%E4%B8%80%E7%94%9F%E8%AF%BB%E5%90%8E%E6%84%9F/:0:0","tags":null,"title":"柳比歇夫的时间统计方法与时间管理有本质区别","uri":"/talks/2018-03-10-%E5%A5%87%E7%89%B9%E7%9A%84%E4%B8%80%E7%94%9F%E8%AF%BB%E5%90%8E%E6%84%9F/"},{"categories":["方法技巧"],"content":" 如今社会,信息过载,领域丛生,我们常常需要接触一些陌生的知识,一些闻所未闻的领域。那以使用工具著称的人类,是否能借助软件快速了解一个领域呢?那些每天都需要看论文的学者早已发明了快速进入一个领域的方法,在下学些皮毛,稍作实践,特来分享一下。 ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:0:0","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["方法技巧"],"content":"工具包 ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:1:0","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["方法技巧"],"content":"HistCite 引文分析工具 在下大概一年前从罗昭锋老师博客知道了 HistCite,然后从Tsing 的 HistCite 使用教程获得资源和使用方法。更多实例和教学可见: 快速进入陌生领域:HistCite 使用教程 玩转文献调研 - 网易云课堂 安装好软件后,只需从 WOS 上导出的 txt 文件(一次最多可导出 500 条记录),不用做任何修改,只要把全部的 txt 放到 TXT 文件夹里面,然后双击 main.exe 即可一键完成加载。软件使用过程中主要会遇到以下几个概念: HistCite 使用过程中主要会遇到五个概念——GCS、LCS、LCR、CR,LCS 和 LCR 更重要,它们分别代表了与本领域相关联的被引用数和引用数,LCS 值高的文章一般是重要的新发现或者新解释,LCR 值高的一般是综述类文章。 GCS = global citation score,即总引用频次,它表示这篇文章被整个 WOS 数据库中所有文献引用的次数。 LCS = local citation score,即本地引用次数,它表示这篇文章在当前数据集中被引用的次数。如果一篇文章的 LCS 值高,意味着它是领域内的重要文献。 LCR = local cited references,本地参考文献数,它表示这篇文献的参考文献在当前数据集中的数量,即这篇文献引用别人的情况。如果一篇文章的 LCR 值高,意味着它引用了大量的 领域内文献,极有可能是综述文章。 CR = cited references,参考文献数,它表示这篇文章的参考文献在整个 WOS 数据库中的数量。 通过界面上方的“Cited References” ,我们可以进入被引文献的列表。在这个列表中,我们发现很多文献后面都有个绿色的“+”号,这表明这篇文献并没有被本地数据集收录,也就是说通过关键词搜索并没有检索到的文献。每篇文献最后有个 Recs 值,表示这篇文献在当前数据集中被引频次,通过 Recs 排序,我们很快就可以定位重要的被遗漏的文献。 网络图中:圆圈越大被引次数越多,箭头指向的对象是被引用方 ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:1:1","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["方法技巧"],"content":"Google scholar \u0026 WOF Web of Science 是质量最高的文献索引网站,收录有 SCIE(SCI Expanded)和 SSCI 文献,使用方法前面教程有详细介绍。 Google Scholar 和 ScienceDirect 主要用来下载文献全文,不能翻墙的朋友可用 Sci-Hub 代替 Google scholar。 ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:1:2","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["方法技巧"],"content":"Zotero 或类似知识管理软件 Zotero 是及其强大的知识管理软件,最大的亮点是:可以用 Zotero Connecter 插件在 Chrome 上一键保存网页中所有的文献、书籍、维基百科和对应 PDF。详细教程见阳志平老师的博客。 ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:1:3","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["方法技巧"],"content":"案例:快速了解『财务预警』领域 在下的本科毕设 ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:2:0","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["方法技巧"],"content":"获取文献 下载文献信息 在 Web of Science 核心合集中检索“bankruptcy prediction”、“Business Failure Prediction\"或“financial distress prediction”,时间限定为 1985 年至今,共计 1983 篇文献。下载这些文献信息及参考文献的数据集(作为本地文献集),保存至 TXT 。 手动添加遗漏文献 将这 1903 篇论文所引用的 38000 多篇论文,按照其在本地文献集的被引用次数从低到高排序,发现仍然有重要文献没有被之前搜索的三个关键词所覆盖。接着手动将遗漏的重要文献在 WOF 上逐一标记,一并导出添加到本地文献集中(实际操作中添加了 23 篇文献,多与企业信用评级相关),此时本地文献集覆盖了财务危机预警领域所有重要的文献(包括所有 SCI、IE 和 SSCI 文献)。 分析领域发展趋势 利用 HistCite 软件对本地文献集进行分析,首先查看一下该领域的发展趋势(此处截取了 1985-2016 年的数据)。 上图显示,财务危机预警领域在 2004 年开始蓬勃发展,而且发展热度总体呈上升趋势。由此可猜测,该领域在 2004 年左右发生重大变革,实际去考察文献发现,该项变革是人工智能方法被引入该领域。 ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:2:1","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["方法技巧"],"content":"分析重要文献网络图 由领域总体发展的分析可得出,该领域值得关注的年份缩小到 2004-2017 年共 14 年的时间段里。然后从本地文献集筛选出发表于 2014 年之后的文献,统计这些文献各自被本地论文集引用的次数,对前 50 最高被引的文献,按照引用关系画出网络关系图。其中被引用次数越多的文献,其节点方框越大,节点按照引用文献指向被引用文献的方式连接。 有图可见222 号、319 号、353 号、439 号、442 号、581 号、813 号、868 号、1133 号是重要的综述文献;而 30 号、39 号、68 号、72 号、77 号、87 号、88 号、94 号、95 号、162 号、207 号、222 号、225 号、305 号、314 号、319 号、330 号、436 号、442 号、552 号、548 号是取得重要进展的文献(其中加黑的文献又相对更重要)。 用 Google scholar 搜索重要文献的 DOI,并一键保存至 Zotero。 在 Zotero 显示如下: ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:2:2","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["方法技巧"],"content":"寻找牛人 重要文献太多了怎么办?根据人的记忆生存优势,按照学者来整理文献比较有利于记忆。领域内最靠谱的学者是那些呢?这里整理了领域内前 20 本地高被引的学者以及他们在本地文献集中所拥有的文献数和被本地文献集引用的次数总和。 其中 Sun J 和 Li H 两位学者主要活跃于 2006 年至今,研究内容涉及领域的方方面面,Sun J 更是近 10 年只专注于该领域,而且两位学者的 H 指数也高达 20,因此两位学者是相当靠谱的;排在第三和第五的 Ravi V 和 Kumar PR 则主要活跃在 2006-2012 年,主要研究银行的财务危机预警;排在第四的 Tsai CF 活跃在 2008 年至今,主要研究财务指标等数据特征的选择。 在 Google scholar citation 中搜索 Sun J,按右上角 Zotero Connector 文件图标,一键下载 Sun J 最高引的文献信息和 PDF。 ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:2:3","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["方法技巧"],"content":"近期分析 分析近十年重要文献 以上分析会倾向于夸大 2008 年之前研究的重要性,因此需要在此按年份进行筛选。接下来筛选出 2008 年及以后的论文来分析,做前 40 最多被本地文献集引用的文献网络关系图。 此图涌现出了一个难以回避的信息,912 号(原来的 1133 号,其作者是 Sun J 等人)是及其重要的综述文献,通过它可以快速理清整个领域截止至 2014 年的发展情况。 发现前沿 前辈们做了这么多研究,那还剩什么可以做呢? 结合 2013 年至今的文献网络关系图,可总结为如下几个方向: 构建简单而准确的财务危机预警模型 构建动态财务预警模型 构建基于不平衡数据集的财务预警模型 ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:2:4","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["方法技巧"],"content":"延伸学习 科学网—如何使用 CiteSpace 的一组示范及常见问题解答 - 陈超美的博文 ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:3:0","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["方法技巧"],"content":"ChangeLog 2018-01-07 初稿 ","date":"2018-01-07","objectID":"/2018-01-07-quickenter-new-academic-realm/:4:0","tags":["学术"],"title":"如何快速了解一个学术领域","uri":"/2018-01-07-quickenter-new-academic-realm/"},{"categories":["成长记录"],"content":" 过往三年,迷茫、求索,仍然迷茫、接着求索……如今幡然醒悟,得一曲径,通向深林幽处。过往三年,如在迷宫中抱头鼠窜,有幸遇见些贵人、师友指点迷津,万分感谢! 三年前,一位少年,自己狠狠绊了自己一跤。一直顺风顺水的他,突然不知所措,把人生方向盘交给了别人。于是,一个大转弯直接把他甩晕过去。醒来之后,少年内心无比凌乱,四处寻求安抚心灵的方法。次年夏天,少年上山闭关禅修十日,早晨四点至晚上九点,其间除了两餐,其余时间都在练习禅修的技巧。第八天,少年学会了控制自己的意识,心不再心猿意马,世界有了秩序。第十天,少年觉得内心就跟小时候玩耍白石滩一样洁白光亮。 ","date":"2018-01-01","objectID":"/2018-01-01-reading-history-2/:0:0","tags":["阅读"],"title":"一个人的阅读史(二)","uri":"/2018-01-01-reading-history-2/"},{"categories":["成长记录"],"content":"遇见贵人 下山后,少年开始用学来的技巧应对千变万化的世俗世界。不久,少年厌倦了日复一日的抵御,空明的内心又失去了秩序。所幸的是,少年凭借自己的品味,在信息过载的世界找到了开智正典。书单中有 4 本是少年曾经看过的,那 4 本都是他看过最好的书。 顺着书单,少年找到了开书单的人,略似少林寺的扫地僧,他叫阳志平。少年开始关注他,花了半年时间读完他的博客,然后又参加了他的认知写作课,跟他发生更多的交集。由于根基太浅,学得慢,少年花了整整两年的时间才储备了极少量的基本常识,但这已经改写了他的生命历程。 从黑客与画家中,少年知道了世界上有一群有趣的人,他们热爱自己的职业,创造是他们的日常。其实每个人都可以选择自己喜欢的职业,国家唯一强迫公民的征兵制也好多年不执行了。生命可贵,人只能到人间走一回,一定不能屈就。 接着是青年王阳明:行动中的儒家思想,它让少年明白了,即使是“三不朽”的完人,生命历程也是极其曲折,也是多年在错误的方向上求索,一无所获。唯有坚持内心的追求,才会偶有所得,哪怕仅想明白了一件事,都极为幸运。 ","date":"2018-01-01","objectID":"/2018-01-01-reading-history-2/:1:0","tags":["阅读"],"title":"一个人的阅读史(二)","uri":"/2018-01-01-reading-history-2/"},{"categories":["成长记录"],"content":"远离人群 后来,少年又读了这才是心理学和超越智商,两本以一当百的神书。少年了解了作为科学的心理学、三重加工心智模型、常见的思维谬误。此时,少年学会了如何屏蔽媒体、如何过滤大部分泥沙俱下的信息,如何自主安装优秀心智程序,世界开始以不同的面貌呈现在少年的眼前。 怀着好奇心,少年开始接触复杂科学,读了网络、群体与市场、复杂和失败的逻辑。少年惊喜不已,这书单也太神了吧,复杂系统和网络科学实在太迷人了。芸芸众生,或者说网络中的节点,如何在复杂世界中表演着花式失败、如何通过网络关系与其他节点发生连接、如何利用网络中的弱连接和结构洞实现阶级跃迁…… 同时,少年也读了为什么学生不喜欢上学?、追时间的人、查理·芒格的智慧、穷查理宝典和智识的生产技术,学到了不少学习技巧和增长智慧的方法。结合一些 Zotero、Anki、TextMate 等软件,少年打造了一个从获取知识、管理知识、记忆知识到连接知识、审查连接、输出文章,一套的智识生产系统。这个系统还只是个粗糙的雏形,日后一步步打磨,良性循环,很可能成为少年向往的知识工作室。 至此,少年知道自己已远离了人群,世俗的纷纷扰扰再也不足以击垮少年的精神家园。有了偏离人群的能力,有了偏离人群的动机,但还是不够,少年当时并不知道缺的是什么。 ","date":"2018-01-01","objectID":"/2018-01-01-reading-history-2/:2:0","tags":["阅读"],"title":"一个人的阅读史(二)","uri":"/2018-01-01-reading-history-2/"},{"categories":["成长记录"],"content":"第二序改变 读书之外,少年仍旧在当初别人为他选择的系统里挣扎,依赖原来路径,做些系统内改变。常常学习一整天,回想那些知识点,感慨,“都是些什么破东西”。这些早于计算机科学、认知科学和网络科学,甚至未吸收进化论思想,仅仅构建经典物理均衡理论之上的知识,是如此脆弱,如此偏离实际。少年不肯为自己没有证据支持的感觉,而放弃努力,直到遇见自我决定论、路径依赖、贝叶斯概率,建构了产业整体观雏形。少年意识到,是时候要放弃错误的方向,摆脱路径依赖,跳到成功的基础概率更大的池子里,实现第二序改变。 于是,少年转向了计算机领域,感到久违的舒心,再也不用忧心经济学如何与计算机、网络科学发生交叉的事,再也不用抱怨学习的那些知识只是现代教育的一句谎言。 少年终于赶上了好运,信息简史间接证明了少年的选择是正确的。不同时代,不同学科的重要性有极大的差异,书中提到 20 世纪信息论深刻改造了生物学、心理学、经济学的面貌。而这个世纪,它的主题是建设虚拟世界,最重要的学科是计算机科学、网络科学、认知科学等学科。这些学科的重大突破,均会变革其他学科。少年找到了一条踏实的路,他决定在这个领域精益求精。 ","date":"2018-01-01","objectID":"/2018-01-01-reading-history-2/:3:0","tags":["阅读"],"title":"一个人的阅读史(二)","uri":"/2018-01-01-reading-history-2/"},{"categories":["成长记录"],"content":"去往安珀 好运连连,少年又碰到幸福的真意这本书,了解了如何用一个整体目标串起散落的时间段,使得一个人可以遵照一个统一的秩序,在不同心流活动之间穿梭,创造整个生活的大和谐。内观禅修修习的是一个“空”字,而心流理论则教人如何让生活得到一个“实”字。少年兴奋了好几个白天黑夜,过往习得的知识围绕着“如何过好一生”这个主题联结在一起。 促成行动的要素,除了动机和能力,还缺什么,答案顺其自然涌现出来——归属。少年知道了他为何要偏离人群,只有偏离人群才能获得独特的自己,才能到达别人到不了的地方,然后基于自己的这种偏离,把自己生活的不同主题、不同人的不同主题、自己与历史、自然界还有机器的关系整合在一个和谐的精神世界中。如此,一个人复杂性便能到达一个高度,他所理解的“人”,是一个积极、独特、丰富的存在,生命也由此有了意义。 自此,生活变成了少年的游戏场,生命变成了一场追逐、一次探险。幸福在何方?少年笑而不语,他已在路上。 ","date":"2018-01-01","objectID":"/2018-01-01-reading-history-2/:4:0","tags":["阅读"],"title":"一个人的阅读史(二)","uri":"/2018-01-01-reading-history-2/"},{"categories":["成长记录"],"content":"ChangeLog 2018-01-01 初稿 ","date":"2018-01-01","objectID":"/2018-01-01-reading-history-2/:5:0","tags":["阅读"],"title":"一个人的阅读史(二)","uri":"/2018-01-01-reading-history-2/"},{"categories":["读书笔记"],"content":" 登峰造极是一个过程而不是一个结果,在整个过程中间,过于目标导向只会使你失去长期进步的潜力。一旦选择了登峰造极的道路,你就必须放弃短期的利益,放弃对目标的过于执著,和整个追求速效药的世界作对抗。 2015 年第一次看《寿司之神》时,在下还在自己嫌弃不已的专业里煎熬,所追求的是,如何翘掉所有的课,然后争取考前复习三两天考个八九十分,因此对影片主角小野二郎并没有心生多少敬意。如今,在下已转行一个来月,一股来势凶猛的渴望在体内膨胀——“我想在这个领域精益求精,最终达到登峰造极的境界。” 有幸即使遇见一本小书《Mastery: The Keys to Success and Long-Term Fulfillment》,作者乔治·伦纳德深刻地指出了追求精益求精的关键点,还有期间可能遇到的障碍。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:0:0","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"遇见阻碍的三种人 任何领域,技艺高超的专家都仅占从业者的很小比例,大师更是少之又少,甚至某些领域找不到可以称作大师的人。大多数人都走在以下三种路径上,而达不到登峰造极的境界。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:1:0","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"浅尝辄止者 浅尝辄止者对一切新东西都充满好奇,无论是首次接触的体育项目,还是更好的工作机会,或是一段全新的感情。他们喜欢从零开始,喜欢置办各种装备,喜欢念叨新学的术语,喜欢一切新鲜感。一旦尝到学习曲线中最开始的那段快速成长期的甜头,他们就会被喜悦冲昏头脑,迫不及待地想要宣扬自己的成绩,总是期盼能再学点新花样。然而,接下来短暂的回落期会给他们很大的打击,之后的平台期更是超出他们的想象,难以忍受。此时,新鲜感带来的热情渐渐消退,他们开始缺席,开始找各种借口逃避。然后再重新物色下一个猎物。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:1:1","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"强求突破者 强求突破者往往具有坚定的性格,他们奋勇争先,从不安于第二名。他们重视结果,不管付出什么代价也要完成预定目标。他们总是幻想迅速掌握秘诀,制定详细的规划,平台期也被纳入到规划中。但是一旦到了平台期,他们难以忍耐毫无进步的感觉。于是,开始质疑自己,盲目付出努力,通宵达旦,听不进他人的建议,一根筋走到底,不到目的不罢休。此时,他们感到失望、沮丧,负面情绪传递到周围的人身上,亲友、同事、恋人无一幸免。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:1:2","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"安于现状者 安于现状者的表现又是另一种样子。最初的进步之后,他们可能甘愿一直停留在平台期。只要不耽误事,他们就无所谓进步,无所谓精益求精。 这三种分类并非泾渭分明,同一个人在不同的方面,学习的不同阶段可能表现地不尽相同。但从全局来看,总会有一种心态占据主动,它将决定你的成就。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:1:3","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"登峰造极五大要素 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:2:0","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"好导师 找一位好导师就等于连接上一个优质的信息接口,能够帮助新手快速过滤掉次要信息,抓住主要信息,在新领域内找到自己的坐标和前行的道路。例如,在下在台大八极拳社练拳时,教练是台湾著名武术家刘云樵的弟子,刘师爷又是民国著名武术家李书文的传人;这样一来,在下刚接触八极拳这个领域的时候,就跟整个八极拳圈子搭上关系,也坚信自己学到的东西是正宗的,不用纠结自己练习的东西靠不靠谱。 找导师还要求互相信任,互相喜欢。互相信任,学徒才能心甘情愿地模仿导师,导师也不会私藏干货;人们对待自己喜欢的东西,总会有更浓的兴趣,互相喜欢,学徒才会更想学,更想见导师,导师也才会更喜欢教。 跟从导师学习,能够让你尽快接触该领域从业者的工作情境,在该情境下学习、模仿,习得的知识能够更容易得运用到具体情境中。 导师看待学徒时,导师应该以平和的心态对待学得快的学徒和学得慢的学徒,快学者容易遗漏细节,这些细节会成为快学者在高阶学习阶段的瓶颈;慢学着学初学的时候虽然慢,但稳扎稳打得打磨细节,最后可能反而学得更快。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:2:1","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"坚持练习 对于那些追求精益求精境界的人来说,他们不应仅把练习看成一遍遍重复的动作,更不应把练习当成简单的活动,而是把练习和自身融合起来,让它变成自己生活中必不可少的元素。此时,练习不再为了有所得,而只是为了练习本身。就像有些程序员喜欢写很酷的程序,享受解决问题过程中全神贯注的状态,而不关心他的作品能够带来多大声誉。当然对于顶级程序员等真正的成功者,努力练习的过程可以带来丰厚的回报,但这并不是他们追求精益求精的最终目的。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:2:2","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"保持初学者的心态 真正的成功者会随时保持从零开始的心态,面对新老师如此,对待自己旧有经验时如此,在刚开始学、在不断获得进步的时候也是如此。甘心做一个“愚者”:新接触一个领域时,容易被海量陌生概念淹没,感到入门很吃力也不要放弃,听从老师的教导,放空心态,从零开始;也不要怕闹笑话,初学时难免姿势不够优雅,但谁不是先在硬邦邦的冰面上结结实实摔几个跟头之后才慢慢学会自如地滑行。在学习的不同阶段,想要更进一步,或延伸到相近领域时,也唯有保持初学者的心态,心里才不会时刻端着盛满久有经验、已有成绩的那盆水,放下那盆水,手脚才会更轻盈,才能领会到相似事物的微妙差异。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:2:3","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"胸有成竹 学习时,在脑中复现、预演所学知识颇有助益,特别是有步骤的知识,作者举例的小手回也好,想象演讲过程也罢,在脑中模拟一遍,行动的时候会更有把握。这种想象力还能用在构建一个美好愿景上,当你在心中想象一个目标,并赋予美学上的意义,此时你会更愿意为之穷追不舍。例如,练习书法时,脑中构想着希望写出的字形,每次练习都比较以下,每次缩小的距离都会促使你去不断练习。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:2:4","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"超越极限 在顶尖高手身上,我们会发现一些有悖常理的行为:他们往往痴迷于基本功的练习,用心打磨那些被人忽视的细节;于此同时,他们还不断挑战更高、更快、更强的极限,并为此付出常人难以想象的代价,也就是说高手会同时追求两个不同方向的极致。细看,这两个方向是有联系的,高手挑战极限的行为可以理解为一种压力测试,在这种有难度的测试中,或是心理上的弱点,或是技术上的漏洞,都会暴露无遗,去伪存真。高手获取这些反馈,提升对该技能的理解,之后便逐一面对这些不足,打磨细节。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:2:5","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"若干高效方法 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:3:0","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"如何应对改变的艰难? 当感觉到退步的时候,请挺住!每个人都不喜欢改变,每个人自身的稳态系统会自动抵御改变行为。例如,当我们许久没有跑步,然后跑两圈之后就气喘吁吁,心跳飞快,这是身体在警告我们。我们是否会应该怀疑自己适不适合跑步呢?我们所要学会的是克服久有习惯带来的不适。 对久有习惯时刻保持警惕:改变之后的不适症状首先会出现在自己身上,此时要牢记这是正常现象,视这种不适为改变发生的痕迹就好。然后不适症状会传递到我们周围的人那里,你的亲人、朋友还有同事等,如果有人对此指指点点,请明确这不是你的错,只是别人面对他自己周围环境变化的自然反应。 与自己对话:当我们身体出现不适症状时,把我们的身体想象成一个人,可以是一个小朋友,然后你耐心地跟他讲解出现这种不适的原因,努力去安抚他。例如,集中注意力看几个小时论文之后,会很想做点不费脑子的事,可以对自己说“嘿,你快要打破自己的记录了,再发一波力看看!” 养成规律练习的好习惯:面对改变,养成按时练习的好习惯,注重练习本身的乐趣,能够减轻改变的不适感。 终身学习:学习不仅仅是看几本书的事,学习意味着变革。应对变革的经验越丰富,再次面对改变时就会越从容。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:3:1","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"如何激发潜能? 你还记得情窦初开,不顾一切去爱的感觉吗?你还记得慢跑五圈后,一个人能打三个人的底气吗?必要的休息对身体固然有好处,但我们只有在实践中才能激发更多的潜能。心理学格式塔学派的创始人佛雷德里克·皮尔斯说过:“不要指望积攒能带来力量,力量是越用越多。”可是,真若如此,我们为什么还时常感到力不从心呢? 因为我们出生之后就不断受到压抑,家长限制孩子的行为,学校要求学生遵守纪律。以至于绝大多数人陷入这样的误区:责任和压力能够取代乐趣和激情。虽然我们生存的环境有毒,但对于获取更多能量,我们还是有进步的余地: 保持身体健康,健康是开展一切活动的基础,再怎么强调都不为过。 释放积极的力量,经常给自己和身边的人正面的反馈,同时又不浮夸。学会克服消极情绪的影响,多给自己一些肯定。面对生活中的琐事,不要浮躁,深呼吸,观察自己当下的感受。 保持诚实,对自己诚实,能减少抉择时的犹豫,对他人诚实,能够降低交流的成本。 掌控负面情绪,看见不爽的事情,不要只是一味的抱怨,你大可以动手去改变它。 分清事情的轻重缓急,人的能量是有限的,重要的事情优先处理,这些重要的事情才是撑起生命的构件。设定最后期限,倒逼自己的行动;在学习时关注输出,用输出倒逼输入。 最后,再次明确潜能不是积攒出来的,而是激发出来的。在一生的学习中,不断迎接挑战,激发潜能,你会越来越深谙此道。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:3:2","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"如何避免掉入陷阱? 迈向精益求精的第一步还算容易的话,那么真正的困难是如何走好接下来的每一步,以下几点能够减轻困难的负面影响。 巧妙解决生活中的冲突:大多数人都没能幸运地在一开始就将练习节奏和生活节奏协调一致,更多的人需要在生活和工作的压力之外,再挤出时间练习。 提高专注力:不要把短期目标当作最终的追求,精益求精是终身之旅,需要专注地练习。 对自己负责:自己给自己把关,保证学习质量;不要偷懒:偷懒会影响你的自信,给你带来焦虑。 坦然面对失败和出丑:全身心投入竞争带来的动力,不仅能提高效率,也能带来凝聚力;竞争中偶尔出丑,偶尔“二”一下,能够调节节奏。 切记过犹不及:竞争固然重要,但更重要的是你一直以来养成的练习习惯,不要让外在的奖赏阻碍你练习过程中获得的乐趣,不苛求完美。 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:3:3","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"起风了,扬帆可好? 读到这里,可能跟在下一样还有不少困惑。如何专注于练习?如何跟从导师学习?如何掌控情绪……不妨从这些知识点延伸出去学习并实践:自我决定论、心流理论、情景学习、刻意练习、压力测试、积极心理学、行动科学等等。 假如你也有幸遇见渴望精益求精的领域,假如你也向往小野一郎精致的寿司,或者 50 行区块链 Python 代码,亦或冲在浪头的帆板。在下想问,起风了,一起杨帆可好? ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:4:0","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["读书笔记"],"content":"ChangeLog 2017-12-14 初稿 ","date":"2017-12-14","objectID":"/2017-12-14-mastery/:5:0","tags":["达尔文信徒","专业主义"],"title":"登峰造极之路","uri":"/2017-12-14-mastery/"},{"categories":["知识整理"],"content":"查 LaTeX 常用数学符号的时候,一开始去官网:LaTeX - A document preparation system找官方文档:LaTeX Documentation,然后又找了 CTEX 的在线文档:LATEX2e 插图指南,内容都太丰富了。 在网上看了几个博客,发现了一份不太简短的 LATEX2ε 介绍 ,git clone到本地,再用终端切换到scr所在的目录,依次在终端输入命令行即可。再从几个博客粘贴一些,整理了一份常用数学符号。 ","date":"2017-11-30","objectID":"/2017-11-30-latex-math/:0:0","tags":["LaTeX","速查"],"title":"LaTeX 常用数学符号","uri":"/2017-11-30-latex-math/"},{"categories":["知识整理"],"content":"函数 一般函数名称,要么前面加 \\ ,要么加 \\operatorname{} 。 函数 LaTeX 函数 LaTeX $$\\sin\\theta$$ \\sin\\theta $$\\cos\\theta$$ \\cos\\theta $$\\frac{L}{r}$$ \\frac{L}{r} $$\\pmod{m}$$ \\pmod{m} $$\\operatorname{sh} j$$ \\operatorname{sh} j $$\\operatorname{argsh} k$$ \\operatorname{argsh} k $$\\lim_{\\Delta x\\to 0}$$ \\lim_{\\Delta x\\to 0} $$\\limsup S$$ \\limsup S $$\\pmod{m}$$ \\pmod{m} $$a \\bmod b$$ a \\bmod b $$\\sqrt{3}$$ \\sqrt{3} $$\\sqrt[n]{n}$$ \\sqrt[n]{n} 行内公式有些下标会出现在右边 ","date":"2017-11-30","objectID":"/2017-11-30-latex-math/:1:0","tags":["LaTeX","速查"],"title":"LaTeX 常用数学符号","uri":"/2017-11-30-latex-math/"},{"categories":["知识整理"],"content":"复杂表达式 功能 效果 语法 小型分数 $$\\tfrac{2}{4} = 0.5$$ \\tfrac{2}{4} = 0.5 大型分数 $$\\dfrac{2}{4} = 0.5 \\qquad \\dfrac{2}{c + \\dfrac{2}{d +\\dfrac{2}{4}}} = a$$ \\dfrac{2}{4} = 0.5 \\qquad \\dfrac{2}{c + \\dfrac{2}{d +\\dfrac{2}{4}}} = a 二项式系数 $$\\dbinom{n}{r}=\\binom{n}{n-r}=C^n_r=C^n_{n-r}$$ \\dbinom{n}{r}=\\binom{n}{n-r}=C^nr=C^n{n-r} 矩阵 $$\\begin{matrix} x \u0026 y \\ z \u0026 v \\end{matrix}$$ \\begin{matrix} x \u0026 y \\\\ z \u0026 v \\end{matrix} $$\\begin{vmatrix} x \u0026 y \\ z \u0026 v \\end{vmatrix}$$ \\begin{vmatrix} x \u0026 y \\\\ z \u0026 v \\end{vmatrix} $$\\begin{Vmatrix} x \u0026 y \\ z \u0026 v \\end{Vmatrix}$$ \\begin{Vmatrix} x \u0026 y \\\\ z \u0026 v \\end{Vmatrix} $$\\begin{bmatrix} 0 \u0026 \\cdots \u0026 0 \\ \\vdots \u0026 \\ddots \u0026 \\vdots \\ 0 \u0026 \\cdots \u0026 0 \\end{bmatrix}$$ \\begin{bmatrix} 0 \u0026 \\cdots \u0026 0 \\\\ \\vdots \u0026 \\ddots \u0026 \\vdots \\\\ 0 \u0026 \\cdots \u0026 0 \\end{bmatrix} $$\\begin{Bmatrix} x \u0026 y \\ z \u0026 v \\end{Bmatrix}$$ \\begin{Bmatrix} x \u0026 y \\\\ z \u0026 v \\end{Bmatrix} $$\\begin{pmatrix} x \u0026 y \\ z \u0026 v \\end{pmatrix}$$ \\begin{pmatrix} x \u0026 y \\\\ z \u0026 v \\end{pmatrix} 条件定义 $$f(n) = \\begin{cases} n/2, \u0026 \\mbox{if }n\\mbox{ is even} \\ 3n+1, \u0026 \\mbox{if }n\\mbox{ is odd} \\end{cases}$$ f(n) = \\begin{cases} n/2, \u0026 \\mbox{if }n\\mbox{ is even} \\\\ 3n+1, \u0026 \\mbox{if }n\\mbox{ is odd} \\end{cases} 多行等式 $$\\begin{align} f(x) \u0026 = (m+n)^2 \\ \u0026 = m^2+2mn+n^2 \\ \\end{align}$$ \\begin{align} f(x) \u0026 = (m+n)^2 \\\\ \u0026 = m^2+2mn+n^2 \\\\ \\end{align} $$\\begin{alignat}{2} f(x) \u0026 = (m-n)^2 \\ f(x) \u0026 = (-m+n)^2 \\ \u0026 = m^2-2mn+n^2 \\ \\end{alignat}$$ \\begin{alignat}{2} f(x) \u0026 = (m-n)^2 \\\\ f(x) \u0026 = (-m+n)^2 \\\\ \u0026 = m^2-2mn+n^2 \\\\ \\end{alignat} 方程组 $$\\begin{cases} 3x + 5y + z \\ 7x - 2y + 4z \\ -6x + 3y + 2z \\end{cases}$$ \\begin{cases} 3x + 5y + z \\\\ 7x - 2y + 4z \\\\ -6x + 3y + 2z \\end{cases} 数组 $$\\begin{array}{|c|c||c|} a \u0026 b \u0026 S \\ \\hline 0\u00260\u00261\\ 0\u00261\u00261\\ 1\u00260\u00261\\ 1\u00261\u00260\\ \\end{array}$$ \\begin{array}{|c|c||c|} a \u0026 b \u0026 S \\\\ \\hline 0\u00260\u00261\\\\ 0\u00261\u00261\\\\ 1\u00260\u00261\\\\ 1\u00261\u00260\\\\ \\end{array} ","date":"2017-11-30","objectID":"/2017-11-30-latex-math/:2:0","tags":["LaTeX","速查"],"title":"LaTeX 常用数学符号","uri":"/2017-11-30-latex-math/"},{"categories":["知识整理"],"content":"希腊字母 字母 LaTeX 字母 LaTeX $$\\alpha$$ \\alpha $$\\beta $$ \\beta $$\\gamma $$ \\gamma $$\\delta $$ \\delta $$\\epsilon $$ \\epsilon $$\\varepsilon $$ \\varepsilon $$\\zeta $$ \\zeta $$\\eta $$ \\eta $$\\theta $$ \\theta $$\\kappa $$ \\kappa $$\\lambda $$ \\lambda $$\\mu $$ \\mu $$\\nu $$ \\nu $$\\xi $$ \\xi $$o $$ o $$\\pi $$ \\pi $$\\rho $$ \\rho $$\\sigma $$ \\sigma $$\\tau $$ \\tau $$\\phi $$ \\phi $$\\varphi $$ \\varphi $$\\chi $$ \\chi $$\\psi $$ \\psi $$\\omega $$ \\omega $$\\Gamma $$ \\Gamma $$\\Sigma $$ \\Sigma $$\\Lambda $$ \\Lambda $$\\Psi $$ \\Psi $$\\Delta $$ \\Delta $$\\Omega $$ \\Omega $$\\Theta $$ \\Theta $$\\Pi $$ \\Pi $$\\Phi $$ \\Phi ","date":"2017-11-30","objectID":"/2017-11-30-latex-math/:3:0","tags":["LaTeX","速查"],"title":"LaTeX 常用数学符号","uri":"/2017-11-30-latex-math/"},{"categories":["知识整理"],"content":"符号 ","date":"2017-11-30","objectID":"/2017-11-30-latex-math/:4:0","tags":["LaTeX","速查"],"title":"LaTeX 常用数学符号","uri":"/2017-11-30-latex-math/"},{"categories":["知识整理"],"content":"二元关系和二元运算 符号 LaTeX 符号 LaTeX $$\\leq $$ \\leq $$\\geq $$ \\geq $$\\equiv $$ \\equiv $$\\gg $$ \\gg $$\\simeq $$ \\simeq $$\\sim $$ \\sim $$\\subset $$ \\subset $$\\supset $$ \\supset $$\\subseteq $$ \\subseteq $$\\approx $$ \\approx $$\\in $$ \\ni $$\\sim $$ \\sim $$\\ni $$ \\ni $$\\propto $$ \\propto $$\\parallel $$ \\parallel $$\\perp $$ \\perp $$\\notin $$ \\notin $$\\neq $$ \\neq $$\\pm $$ \\pm $$\\mp $$ \\mp $$\\cdot $$ \\cdot $$\\div $$ \\div $$\\cap $$ \\cap $$\\cup $$ \\cup $$\\times $$ \\times $$\\otimes$$ \\otimes $$\\land$$ \\land $$\\lor $$ \\lor $$\\rightarrow $$ \\rightarrow $$\\longrightarrow $$ \\longrightarrow $$\\Rightarrow $$ \\Rightarrow $$\\leftrightarrow $$ \\leftrightarrow ","date":"2017-11-30","objectID":"/2017-11-30-latex-math/:4:1","tags":["LaTeX","速查"],"title":"LaTeX 常用数学符号","uri":"/2017-11-30-latex-math/"},{"categories":["知识整理"],"content":"巨算符 符号 LaTeX 符号 LaTeX $$\\sum $$ \\sum $$\\prod $$ \\prod $$\\int $$ \\int $$\\iint $$ \\iint ","date":"2017-11-30","objectID":"/2017-11-30-latex-math/:4:2","tags":["LaTeX","速查"],"title":"LaTeX 常用数学符号","uri":"/2017-11-30-latex-math/"},{"categories":["知识整理"],"content":"数学头标符号、底标符号、字体 符号 LaTeX 符号 LaTeX $$\\hat{a} $$ \\hat{a} $$\\bar{a} $$ \\bar{a} $$\\dot{a} $$ \\dot{a} $$\\vec{a} $$ \\vec{a} $$\\tilde{a} $$ \\tilde{a} $$\\widehat{AAA} $$ \\widehat{AAA} $$\\overbrace{1+2+\\cdots+100}$$ \\overbrace{1+2+\\cdots+100} $$\\begin{matrix} 5050 \\ \\overbrace{ 1+2+\\cdots+100 }\\end{matrix}$$ \\begin{matrix} 5050 \\\\ \\overbrace{ 1+2+\\cdots+100 }\\end{matrix} $$\\overrightarrow{AB} $$ \\overrightarrow $$ \\triangleq $$ \\triangleq $$\\underline A$$ \\underline A $$\\iint \\limits_{x+y=1}$$ \\iint \\limits_{x+y=1} $$\\underrightarrow{\\text{你的文字}}$$ \\underrightarrow{\\text{你的文字}} $$B \\xrightarrow[T]{n\u003e0} C$$ B \\xrightarrow[T]{n\u003e0} C $$\\underset{0\\leq j \\leq k-1}{\\arg\\min} $$ \\underset{0\\leq j \\leq k-1}{\\arg\\min} $$\\overset{?}=$$ \\overset{?}= $$\\sum_{\\substack{0\u003ci\u003cn \\ 0\u003cj\u003cn}} $$ \\sum_{\\substack{0\u003ci\u003cn \\ 0\u003cj\u003cn}} $$\\overset{\\frown} {AB}$$ \\overset{\\frown} {AB} 加粗 $$\\bf a$$ \\bf a, \\textbf a, \\mathbf a $$\\big|{x = x_0}$$、$$\\bigg|{x = x_0}$$ `\\big _{x = x_0}、\\bigg _{x = x_0}` $$a^{\\circ}$$ a^{\\circ} ","date":"2017-11-30","objectID":"/2017-11-30-latex-math/:4:3","tags":["LaTeX","速查"],"title":"LaTeX 常用数学符号","uri":"/2017-11-30-latex-math/"},{"categories":["知识整理"],"content":"其他符号 符号 LaTeX 符号 LaTeX $$\\dots $$ \\dots $$\\cdots $$ \\cdots $$\\vdots $$ \\vdots $$\\ddots $$ \\ddots $$\\forall $$ \\forall $$\\exists $$ \\exists $$\\partial $$ \\partial $$\\infty $$ \\infty $$\\bot $$ \\bot $$\\angle $$ \\angle $$\\lnot $$ \\lnot $$\\mathrm{d}x$$ \\mathrm{d}x $$\\triangle$$ \\triangle $${}_1^2!X_3^4$$ {}_1^2!X_3^4 $$\\alpha\\quad\\beta$$ \\alpha\\quad\\beta $$\\alpha\\qquad\\beta$$ \\alpha\\qquad\\beta $$\\alpha \\ \\beta$$ \\alpha \\ \\beta $$ \\left( \\frac{a}{b} \\right) $$ \\left( \\frac{a}{b} \\right) $$\\lfloor a \\rfloor$$ \\lfloor a \\rfloor $$\\lceil a \\rceil$$ \\lceil a \\rceil ","date":"2017-11-30","objectID":"/2017-11-30-latex-math/:4:4","tags":["LaTeX","速查"],"title":"LaTeX 常用数学符号","uri":"/2017-11-30-latex-math/"},{"categories":["知识整理"],"content":"ChangeLog 2018-08-09 添加 \\limits_{}、符号头标和底标 2017-11-30 初稿 ","date":"2017-11-30","objectID":"/2017-11-30-latex-math/:5:0","tags":["LaTeX","速查"],"title":"LaTeX 常用数学符号","uri":"/2017-11-30-latex-math/"},{"categories":null,"content":"并非按部就班,只是大体按此顺序进行,不能拘泥于这种顺序。 获取 ── 通过感官获取信息。 理解 ── 明白信息的表面意思。 拓展 ── 与其他信息建立联系,拓展有三种主要方式。 深度拓展 ── 探究知识的背景。怎么来的 横向拓展 ── 探究知识的关系。类似的知识,同一作者的其他知识 纵向拓展 ── 与其他结构联系后,从其他结构的角度探究知识。远距离联想 纠错 ── 剔除错误联系。 应用 ── 将知识应用到各种情境中去,包括现实生活。 具体怎么做,还得具体学习。 ","date":"2017-07-30","objectID":"/talks/2017-07-30-%E5%A6%82%E4%BD%95%E9%AB%98%E6%95%88%E5%AD%A6%E4%B9%A0%E8%AF%BB%E5%90%8E%E6%84%9F/:0:0","tags":null,"title":"整体性学习有 5 个步骤","uri":"/talks/2017-07-30-%E5%A6%82%E4%BD%95%E9%AB%98%E6%95%88%E5%AD%A6%E4%B9%A0%E8%AF%BB%E5%90%8E%E6%84%9F/"},{"categories":["读书笔记"],"content":"一、聪明人也会做傻事 前两章,作者从“智力”中分离出理性这一概念,认知科学家把理性分成工具理性和知识理性。工具理性被定义为以最优化的方式实现个人目标;知识理性关注的是个体信念与真实世界的一致程度。 ","date":"2017-07-25","objectID":"/2017-07-25-what-intelligence-tests-miss/:1:0","tags":["认知心理学"],"title":"《超越智商》读书笔记","uri":"/2017-07-25-what-intelligence-tests-miss/"},{"categories":["读书笔记"],"content":"二、心智模型 该书引入了更广为人知的类型一和类型二,它们在《思考,快与慢》中被提到过。类型一加工是自动化加工,包括情绪对行为的控制(情绪反应)、为解决特定适应性问题的封闭性心理模块(怕蛇)、内隐学习的加工过程(语言学习)、过度训练产生的自动化行为(运动)等。类型二加工是控制加工,主要由压制类型一和假设性推理\u0026认知模拟(初级表征——去耦操作——次级表征)两种能力构成。 斯坦诺维奇提出自主心智属于类型一,算法心智和反省心智属于类型二。算法心智就是可被智力测试测量的智力,是与一般流体智力相关的认知操作过程,如记忆力,处理速度、逻辑推理。反省心智是对人类心智过程进行监控、帮助执行决策与判断的人类心智加工过程。流体智力的个体差异导致算法心智的差异,理性思维定势的个体差异导致反省心智差异。 我把书中概念关系图结合到一张图里,并用例子简要得说明了各个心智过程。 A,类型二制止类型一加工即将触发个体反应,并以更优化的反应取而代之(例如:吃中药) B,反省心智的倾向性认知功能(例如:自律) C,由算法心智的反省心智下达启动模拟的命令 D 共同执行,是计算备择反应和源于反省心智的模拟过程,与流体智力有关(例如:数学建模) D,与理性的思维倾向有关(例如:建模时选择忽略的变量) E,另一类速度较慢的类型二加工,是对没有备择假设的模拟世界的全面搜索,在认知吝啬鬼规则下类型二加工默认采用(例如:书中的 KA85 选择 A8 的情况) F,中断 E,(可能会使连续性认知全部中断以启动 C;通过改变临时焦点开启新的 E) G,自主心智向算法心智输入信息 ","date":"2017-07-25","objectID":"/2017-07-25-what-intelligence-tests-miss/:2:0","tags":["认知心理学"],"title":"《超越智商》读书笔记","uri":"/2017-07-25-what-intelligence-tests-miss/"},{"categories":["读书笔记"],"content":"三、思维谬误的基本分类 作者在书的第十二章总结了思维谬误的基本分类,我结合书中六至十二章的内容进行了简要的说明。 我们都知道,大脑喜欢偷懒,能不思考就不思考,书中称这种惰性为“认知吝啬鬼”。认知吝啬鬼有三个层次,依据认知卷入排列前后顺序如下: 自主心智加工,没有类型二的参与,是最肤浅的信息加工方式。 带有焦点偏差的连续性联结认知,是指类型二加工时的过度节省倾向,懒于启动备择世界模拟或完全析取推理。 压制失败,虽有去耦化的参与,但是类型二取代类型一失败(熟练的飞行员失事)。 我们不管过去还是以后,都会不断地和“认知吝啬鬼”较量,我们多了解它一分,就多一分胜算。每次遇见它,我们可以和它说一声:嘿,我认识你,你这懒鬼,我这回一定要打败你! 除了“认知吝啬鬼”这个心智活动空间,作者还提到了一个知识理性的心智空间——心智程序问题。在这个空间里,我们能通过学习知识来避免心智程序缺陷,通过安转好的心智程序来避免心智程序被污化。首先我们要知道心智程序缺陷主要有哪些?污化心智程序的大魔头都是谁? 心智程序缺陷 缺少概率知识 贝叶斯思维: 变形:焦点假设的后验概率=相似率*先验概率 不知备择假设的重要性 特定领域的知识结构(引起思维定式) 通俗心理理论(自己了解自己的心智) 污化的心智程序 评估失效策略(宗教的割阴蒂) 鼓励自利思维的“自我”(种族、信仰歧视) 特定领域的知识结构(通俗心理学告诉我们的自己了解自己的心智) 图中可发现,压制失败和心智程序缺陷双箭头,我对这点也疑惑了好久,现在的理解是: 相关心智程序没有习得导致压制失败,则认为是心智缺陷 已习得但仍压制失败,则认为是压制失败(飞行员遇难) 书的第十二章补充了斯波克先生问题,斯波克先生做完脑部手术之后,生活变得一片混乱。原因是,手术破坏了他的自主心智功能,无法接受自主心智的输入,不能反馈他人的情绪变化。 最后用一个表格说明基本思维谬误和心智的关系:(X 为相关,在原书 P184 的基础上匹配对应案例) 任务、效应和处理方式 认知吝啬鬼 认知吝啬鬼 认知吝啬鬼 心智程序偏差 心智程序偏差 MG\u0026CG 污化的心智程序 污化的心智程序 任务、效应和处理方式 默认自主心智 过度依赖带有焦点偏差的连续性认知 压制失败 概率知识 备择思维 通俗心理理论 评估失效策略 自我和自利信息加工 生动性效应(慈善捐赠中,照片与统计数据) X 情感替代(属性替换;股票) X 冲动性联结思维(球拍、不知安妮婚否) X 框架效应(框架即焦点) X 信念偏差(玫瑰是生物) X 忽略分母(红白橡皮糖) X 自我控制难题(延迟满足) X 联结谬误(琳达是女权主义银行出纳) X 非因果基础概率使用 X 偏差盲点(认为通过有意识的内省可以觉察到思维偏差) X 四卡选择任务 X X 我方立场信息加工 X X(首要) 情感预测谬误(预测某事让我们高兴的能力) X(关注的焦点并没有想象中那么重要) X 确信偏差(伪科学) X X X ","date":"2017-07-25","objectID":"/2017-07-25-what-intelligence-tests-miss/:3:0","tags":["认知心理学"],"title":"《超越智商》读书笔记","uri":"/2017-07-25-what-intelligence-tests-miss/"},{"categories":["读书笔记"],"content":"四、小结 此书搭建了一个三重心智模型,介绍了主要理性思维问题的基本分类,虽然没有给出具体的变得理性的方法,但指出了理性之路主要的坑。如果仅仅把这本书中的内容当做知识,而不把它运用到生活中,那就太可惜了。 书中提到了三个我们可以变得理性的活动空间——与认知吝啬鬼较量、避免心智程序缺陷和自主安装优秀心智程序。我们很多思考都会和认知吝啬鬼较量,每次较量都要清楚地知道它的存在。避免心智缺陷貌似在三种里最容易做到,我们可以通过学习概率知识、备择假设和跨学科知识等知识来纠正心智程序偏差。至于安装心智程序,作者提出了四个规则:避免安装可能对你产生心理伤害的心智程序、确保它不妨碍你目标选择的多样性、安装真实反映世界的心智程序和避免拒绝对自身进行评估的心智程序。 ","date":"2017-07-25","objectID":"/2017-07-25-what-intelligence-tests-miss/:4:0","tags":["认知心理学"],"title":"《超越智商》读书笔记","uri":"/2017-07-25-what-intelligence-tests-miss/"},{"categories":["知识整理"],"content":"飞跃 5000 词\u0026形容词 这部分还在摸索 ","date":"2017-06-14","objectID":"/2017-06-11-learning-words-4/:1:0","tags":["英语","学习"],"title":"单词(四)","uri":"/2017-06-11-learning-words-4/"},{"categories":["知识整理"],"content":"形容词的分类 结构(单个、复合) 功能(普通、定语、表语) 词义(静态、动态、等级、非等级) 这些分类中,有些能够帮助我们学习形容词。 定语形容词又分为前置定语形容词(描述所修饰词的持久特征或属性)和后置定语形容词(描述短暂或特定的特征)。例如: the president elect 当选总统(尚未就职);the elected president 民选总统(已经就职) rivers navigable 有时可通航的河流;navigable rivers 可通航的河流 表语形容词,就是只能接在 be 动词后面的形容词。例如,She is alone.√;She is an alone girl.× 静态形容词与动态形容词可以用 being 测试。例如,She is being attractive.√ attractive 是动态形容词;She is being beautiful.× beautiful 是静态形容词 非等级形容词,就是没有比较级和最高级的形容词。它有由名词转化的形容词(例如,daily,wooden 等表示形状、处所时间等,很明显)、极限形容词(例如,perfect,infinite)和表状态的形容词(大多前面有 a,例如 alive,awake) 还有主观意义和客观意义的形容词。例如,historic 有历史意义的——主观,historical 历史的,有关历史的——可观;efficient——主观,efficiency——可观 ","date":"2017-06-14","objectID":"/2017-06-11-learning-words-4/:1:1","tags":["英语","学习"],"title":"单词(四)","uri":"/2017-06-11-learning-words-4/"},{"categories":["知识整理"],"content":"形容词一语的负迁移 汉语三大坑:词性模糊、用抽象的高频词代替精确词和语义韵 用抽象的高频词代替精确词,例如很大的月亮,汉语用“大”代替精确词,英语里一般用 full moon 而不是 big moon 语义韵包括积极、消极和中性,例如 sophisticated 有个意思是老于世故的,精明老练的,并没有消极意义 ","date":"2017-06-14","objectID":"/2017-06-11-learning-words-4/:1:2","tags":["英语","学习"],"title":"单词(四)","uri":"/2017-06-11-learning-words-4/"},{"categories":["知识整理"],"content":"认知视角 主语+be+adj+to+v 的结构,换一下形容词,句子的解读就完全不一样了。例如 John is hard to teach. John 很难被教;John is happy to teach. John 很高兴去上课,换一下形容词,主语的身份就变了。 实体形容词,例如,He(实体)is willing(状态)to clean(动作)the classroom. 事件形容词,例如,Emma 实体 is quick(特性)to find(动作)the mistake. ","date":"2017-06-14","objectID":"/2017-06-11-learning-words-4/:1:3","tags":["英语","学习"],"title":"单词(四)","uri":"/2017-06-11-learning-words-4/"},{"categories":["知识整理"],"content":"形容词的记法 简单形容词: 注意同义词辨析、注意搭配,多看例句,在语境中记忆 注意一些以前没注意到的地方,扩充语义立方体 复杂形容词:记住两到三个意思 ","date":"2017-06-14","objectID":"/2017-06-11-learning-words-4/:1:4","tags":["英语","学习"],"title":"单词(四)","uri":"/2017-06-11-learning-words-4/"},{"categories":["知识整理"],"content":"名词、动词和形容词的活用 大脑喜欢惊奇,作文里面用上个别“活用”的词会很讨喜。下面举两个例子: Investigation fathered the baby on him. 调查显示他是孩子的亲生父亲。father 的名词是高频词,动词是低频次,这样一用感觉很地道。 brave the winter 顶着严冬 brave 的形容词是高频词,“活用”它的低频词——动词。 我们看到“活用”的单词可以顺带记下。 ","date":"2017-06-14","objectID":"/2017-06-11-learning-words-4/:1:5","tags":["英语","学习"],"title":"单词(四)","uri":"/2017-06-11-learning-words-4/"},{"categories":["知识整理"],"content":"语法的进阶方法 1 分钟英语学习:英语单句的 5 大句型: 主语+谓语动词 e.g. it never rains in desert. 主语+谓语动词+宾语 e.g. i love apples. 主语+谓语动词+补语 e.g.the small company has gone bankrupt. 主语+谓语动词+间接宾语+直接宾语 e.g. the child asks his father a thousand questions a day. 主语+谓语动词+宾语+补语 e.g. the police found the profile missing. 语法书:英语魔法师之语法俱乐部 (豆瓣) ","date":"2017-06-14","objectID":"/2017-06-11-learning-words-4/:2:0","tags":["英语","学习"],"title":"单词(四)","uri":"/2017-06-11-learning-words-4/"},{"categories":["知识整理"],"content":"用听力来打通音和义的任督二脉 方法只有多听、精听(音频 + 视频) 一、3000 词汇/5000 词汇 + 语音(内语)不够好 看:动画片 听:慢速英语 各种听力 app 中的简单音频和视频(有中英对照):每日听力、沪江听力酷、朗易思听 二、5000 词汇 + 语音(内语)或者 8000 词汇 + 语音(内语)一般 看:TED 有字幕、美国电影美剧 听:各种听力 app 中的音频和视频(有英文字幕):每日听力、沪江听力酷、朗易思听 三、8000 词汇 + 语音(内语)不错 看:TED 无字幕、英国电影 + 英剧 听:各种听力 app 中的音频和视频(可以无字幕):每日听力、沪江听力酷、朗易思听 听写的迷思:效率太低,不如做多样化练习 ","date":"2017-06-14","objectID":"/2017-06-11-learning-words-4/:3:0","tags":["英语","学习"],"title":"单词(四)","uri":"/2017-06-11-learning-words-4/"},{"categories":["知识整理"],"content":"参考 《词行天下》 《找对英语学习方法的第一本书》 何老师「认知英语课」 ","date":"2017-06-14","objectID":"/2017-06-11-learning-words-4/:4:0","tags":["英语","学习"],"title":"单词(四)","uri":"/2017-06-11-learning-words-4/"},{"categories":["知识整理"],"content":"ChangeLog 2017-06-11 初稿 ","date":"2017-06-14","objectID":"/2017-06-11-learning-words-4/:5:0","tags":["英语","学习"],"title":"单词(四)","uri":"/2017-06-11-learning-words-4/"},{"categories":["知识整理"],"content":"5000 词\u0026名词 从单词频率覆盖率来说,你听到别人正常讲话中几乎有 90% 会在 2000 以内的词汇,但剩下的 10% 足以令你完全不理解对方表达的意思。词汇学专家 Nation 博士认为,只要语言中有 5% 的词汇不理解,就会对理解整句或者整段话造成非常严重的影响(后来他还把这个数字进一步调整为 2%,但这个跟阅读的舒适区有点不一致)。 2000 词和 5000 词共有的学习方法是: 第一阶段:观察图像,视频、动作、多听(从慢速听力开始)、手势 第二阶段:学会无穷变幻,学会搭配、同义词辨析 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:1:0","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"名词最早习得 名词最早习得 Hatch\u0026Brown(1985),儿童最早习得的是名词,然后习得动词。在名词本身的习得顺序上,根据 Lyons(1977)的理论,距语义核越近的名词,就越容就越容易习得。Lyons 认为,所有的词性都有一个语义核(Semantic core)离核心最近的名词为第一级名词(first-order nouns),包括人名、物名与有时间和空间存在的实体名;其次是第二级名词(second-order nouns,包括现实时间中发生的可以观察到的情况的名词,如状态名词(Sleep)过程词(weaving)、事件名词(a crash)等;接着是第三级名词,包括那些无时空联系的抽象事物的名词,如 democracy 那么,理论上说,第一级名词先习得,然后是第二级名词,最后是第三级名词。从儿童习得词汇的情况看,儿童通常是先习得具体名词,然后习得抽象名词。 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:1:1","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"名词的分类 辨析名词的类别有助于加深记忆 名词可以分为专有名词(Proper Nouns)和普通名词 (Common Nouns) 专有名词是某个(些)人,地方,机构等专有的名称,如 Beijing,China 等 普通名词是一类人或东西或是一个抽象概念的名词,如:book,sadness 等 个体名词(Individual Nouns):表示某类人或东西中的个体,如:gun 集体名词(Collective Nouns):表示若干个个体组成的集合体,如:family,the Beings 物质名词(Material Nouns):表示无法分为个体的实物,如:air 抽象名词(Abstract Nouns):表示动作、状态、品质、感情等抽象概念,如:work 动名词(gerund):smoking 个体名词和集体名词可以用数目来计算,称为可数名词(Countable Nouns),物质名词和抽象名词和动名词一般无法用数目计算,称为不可数名词(Uncountable Nouns)。但这是很主观的,对词义的理解不同,可不可数的情形也不同。例如,coffee 一般来说是不可数的,但咖啡店里也常用“two coffees” ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:1:2","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"深度学习单词 怎样才算掌握一个单词,语言学家 J.Richard 在 1976 年给出一个比较权威的定义: 近年有关单词领域的研究成果导出了这样的结论:单词的学习乃至语言学习本身,主要通过了解单词与其他单词的搭配使用方式,以及结合背景内容来学习实现的,而不是通过先学单词的独立含义,然后再去了解与其搭配使用的词汇。 那掌握词汇搭配最好的途经又是什么呢?当然是从英语的原文中,从可理解性输入的文字背景中来学习,就算只学习独立的单词含义,也应该是从英语原文的词汇搭配使用中获得。 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:2:0","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"“预估”和“猜测” 在“N400”实验中,当当听到或读到跟预估非常不符合的词汇时,母语者会立即“拒绝”接受这个词,发生 N400 现象。这种对语言中即将出现的词汇的“预估”和“猜测”能力,正是是对自然语言理解过程的核心。对语言中即将出现的词汇的“预估”和“猜测”能力差,也是造成语言理解速度慢的主要原因。 母语者以前的语言认知经历,使得他们脑中有大量的词汇“联用和搭配关系”。那么这种“联用和搭配”是如何实现的呢?大脑对语言输入的处理过程,更偏向于“统计”而不是“分析”。当接受大量的自然语言输入后,大脑中包括“听觉短期记忆”系统在内的各个认知系统,会下意识地寻找语言输入的各种“声音规律”和“重复模式”,自动地对出现的规律进行统计处理,将频繁在一起出现的词汇搭配和句法模式当做整单元的语块来处理。这些被统计提取的语块,再与其他相关的语块进行有机连接后,在大脑中进行“存储”,逐渐转化为大脑的长期记忆语块网络,并随时预备与以后听到的语言中相同的语块相对应。 简单讲,就是头脑中数量众多的语块,主要通过对交流语言和整段文字的大量接触自然获得的,并非主要来源于这些词汇组合单独拿出来分析或背诵,语言的“统计 - 组块 - 储存”过程是一种隐性学习。充分发挥这种隐性学习的能力,可以显著提高外语的能力。 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:2:1","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"集体引个体 我们应该用含有某个生词的词汇搭配来学这个生词,而不是先学单词然后再去学词汇搭配。主要有两步; 通过词汇搭配引导和推测词义(隐性学习):通过搭配使用的其他单词,特别是离得近的词,来确认生词的词性;通过与生词相关的关键词来猜测生词的大致含义。e.g. He tried to the pieces of the broken box back together with glue. 通过 with…可判断 glue 是个名词;它可以把 pieces 给 put back together,可尝试用自己已知的词来替换 glue,比如 nails。 通过查字典来确认词义和引申用途(显性学习):查阅字典,确认词义;重点看一下当前含义的例句,进一步熟悉该单词的使用方式。 不管生词能否猜出词义,都应该查一下词典。另外,当查阅汉英词典获得准确的词义之后,再看一下英语解释,加深理解,同时减少对汉语翻译的依赖,这里用欧陆词典非常合适。 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:2:2","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"主题领内容 在扩展单词学习阶段,什么类型的材料有利于学习词汇的相关词汇搭配呢?这时需要做到两点,限制难度和规范内容 限制难度,就是找“可理解性输入 i+1”的材料,同一难度的材料需要大量输入直到进入下一难度 规范内容,就是内容避免散乱的,最好是词汇关联性高的,紧密围绕一个概念或主题展开的内容,可以从《美国之音》里选取主题相关的文章。 对大量具有鲜明主题的内容进行学习,有助于我们了解某个单词在各种背景下出现的概率高地,还有助于提高我们对词义理解的速度和准确性。人在头脑中对词汇的理解是根据前面文字的背景含义“实时更新”的,而这一能力的培养也正是依靠对这个词汇的全方位输入,即其在不同背景下以不同的含义出现在多种句式中的情况。 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:2:3","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"联络导语义 语义联络是通过绘制表达不同功能与类别的单词之间联系的示意图,来发现某段文字中关键单词与其他单词之间的有机联系,从而把单词按照语义、类别、功能等进行分组和衔接。比如一段对旅客到机场乘机的流程说明文章中关联词汇的语义联络: 这会导致同类单词的混淆吗?单词通过文字背景中的事件、流程、动作或逻辑串联起来的,同类单词的记忆互不干扰,而是相互支持。 语义联络只是一个辅助工具,熟悉了这种形式之后就可以不画图了,因为在读或听的过程中自然会形成词义间的有机联系,久而久之大脑中会逐渐形成一系列相关词汇概念的有机连接,跟语义联络非常相似。 随着接触更多的原文内容,大脑中会形成一个立体的分级词汇概念搭配连接网络。随着网络中外语词汇间的连接越来越强,网络中一个或一组单词的激活,会令最相关的一系列词汇都处在被激活的状态,此时对内容的理解会更深刻,也更快。 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:2:4","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"背单词与深度学习的比较 相比于背单词,深度学习可能要花好几倍的时间和额外的精力,但是从对单词的理解和掌握方面来讲,特别是长期效果上,深度学习才是真正意义上的掌握单词,且记忆长久而牢固。词汇学专家 Paul Meara 表明,在外语学习的初期,词汇量大小对外语能力的影响非常大;但当基本词汇学会之后,词汇对外语能力的影响就变小了,而这时最重要的是通过发掘词汇的连接结构来提高外语能力。 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:2:5","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"一语的作用 这是一张二语学习层级模式图,L1 为一语,L2 为二语,词汇概念和一语的双向连接通道很坚固,一语和二语的连接只是将二语翻译成一语的那条单向通道坚固。我们学习二语的目的是使 L2 和 Concepts 建立快速的通道,但是这一过程困难又缓慢。因此要善于借用一语来过渡,先用大量的输入建立二语到一语再到概念的通道,再用输出练习强化其他通道。此外,还有一部分的英语学习是不需要强化虚线部分的,比如需要深加工的数学(读懂意思后便可用一语来思考,思考完后再用二语表达)和比较不常见的青蒿素这种词汇,明白这些可以大大减轻学习量。 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:2:6","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"示意表用途 抽象词汇一般需要借助具象词汇的解释,或者借助词汇搭配来引导才能理解其含义。但有时引导会相当麻烦,汉语又很难准确表达时,可以尝试用示意图来辅助理解。以 over 为例: 静态基本空间含义:在…之上,e.g. The clock is over the couch. 静态:在…另一侧,e.g. His father lives over the river. 动态:越过…,e.g. He jumped over the fence. 动态:完成,e.g. Game over. 动态:超过,e.g. His spending is over the budget 动态:控制、覆盖,e.g. He oversees this department. 动态:翻转、倒下,e.g. He knocked a chair over in the meeting room. over 的学习,既不是一个一个含义分别记,也不是结合文字记忆,而是 可理解性输入,这里“over”是使用听的手段 带“over”’的句子接触多了以后,大脑会逐渐发现其中的规律,一方面是搭配形式,另一方面是这些含义的共同点和差异 在利用隐形学习的同时,结合显性学习,包括讲解、归纳总结来深化理解和提高效率 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:2:7","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"参考 《词行天下》 《找对英语学习方法的第一本书》 何老师「认知英语课」 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:3:0","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"ChangeLog 2017-06-11 初稿 ","date":"2017-06-13","objectID":"/2017-06-11-learning-words-3/:4:0","tags":["英语","学习"],"title":"学单词(三)","uri":"/2017-06-11-learning-words-3/"},{"categories":["知识整理"],"content":"第二阶段:2000 词\u0026动词 英语对话中基本上只有 2000 个常用单词,用好这 2000 个单词要建立它们与概念的直接联系。方法是多听,先从慢速、标准音听起,再反复听,各种听。VOA - Voice of America English News ","date":"2017-06-12","objectID":"/2017-06-11-learning-words-2/:1:0","tags":["英语","学习"],"title":"学单词(二)","uri":"/2017-06-11-learning-words-2/"},{"categories":["知识整理"],"content":"动词的分类 动词的空间分类 动词的表达是个运动事件,包含 Mary(图形)move(运动)to(路径)the car(背景)by running(方式)by her leg(工具) 动词的时间分类 状态类(持续、静止):know the answer,be tall,own the house 活动类(持续、没完):walk,swim,ride a bike;e.g. John walked in an hour.× 因为 walk 没完,不能接 in 完成类(持续、有完):build a house,eat an apple, run to the school 达成类(不持续):die,arrive,reach the top 及物和不及物 及物动词有单宾及物(e.g. push the car)和双宾及物(e.g. give a dish to Fred; give Fred a dish) 不及物动词有非宾格(状态的变化,没有被动语态:arrive,disappear,fall)和非作格(活动:smile,talk,sleep,cough,snore,yawn) 动词语义在很大程度上对句法形态有决定作用,单句内的语法由动词来管。 不规则是有原因的 朗文英语词库中,不规则动词虽然只占全部动词的 3.6%,缺占到动词频数的 58%。名词复数和形容词比较级也有此规律,不规则的词汇是为了经常使用的方便,有发音简单、拼写简短的特点。 记高频词汇是要把不规则变化当做主流,每种形式都当做一个新单词来记。 动词词汇的参数 运动 + 方式:除罗曼语外的印欧语和汉语,e.g. float 漂、run 跑、walk 走(英语中有 124 个,只能以不及物形式出现)。其他语言还有别的参数形式,如运动 + 路径(日语,少量英语,e.g. enter) White 假设 汉语中的保守部分,在英语输出时很少犯错,例如汉语中不允许词汇的使役形式 英语心里动词:e.g. John disappointed Mary.但没有张三失望了李四 非宾格动词:The sun melted the snow.但没有太阳融化了雪 汉语中也有大胆的部分:例如容器处所动词 没有 John covered the blanket onto the bed.但有张三往床上盖了毯子 ","date":"2017-06-12","objectID":"/2017-06-11-learning-words-2/:1:1","tags":["英语","学习"],"title":"学单词(二)","uri":"/2017-06-11-learning-words-2/"},{"categories":["知识整理"],"content":"记忆方式 第二阶段 2000 核心词的学习,要建立英语单词与概念的直接联系,在能够使用图像、动作、视频,慢速听力和手势等手段来学习单词的情况下,就需要尽量减少对汉语翻译和汉语解释的依赖(但没有必要完全回避汉语)。 ","date":"2017-06-12","objectID":"/2017-06-11-learning-words-2/:2:0","tags":["英语","学习"],"title":"学单词(二)","uri":"/2017-06-11-learning-words-2/"},{"categories":["知识整理"],"content":"机械记忆 尽管机械记忆存在许多局限性和负面评价,但从外语单词学习的实践角度来说,机械记忆是一个非常重要和不可获缺的手段。首先,它很操作方便,对简单容易记的单词效率并不低;其次,对缺乏联系、出现概率低的单词,它比较合适;最后,初学阶段记高频词也合适。但机械记忆也有方法上的差异,有些要点能够帮助记忆: 听声音:边听声音边看单词的效果好于边听边抄,听写是拿来检查准确性的,不要试图拿来增强记忆。 重复次数:重复五次以上,多项研究表明,对于 100 个单词量的生词表,大多数学生在重复 7 次后能记住大部分单词。 闪卡:卡片一面单词一面意思,目的是迫使你去提取记忆,并且能避免词表顺序的影响。 人为提高新词在阅读中出现的概率 词除了数字,不能以类记,新学时以类记(同时记)容易混,应该在不同的时间放在语境里记,熟悉后可以归类比较巩固。 艾宾浩斯遗忘曲线 一天对应的 33.7% 不是指还能想起 33.7% 的内容,而是还有 33.7% 的记忆保留,是一天后复习到掌握比第一次学习到掌握的学习量,即学习节省量。 至今被公认的遗忘曲线统计式:$b=100k/((logt)^c+k)$, 其中 k=1.48, c=1.25 间隔学习 VS 分散学习 按照艾宾浩斯曲线的误解,延展间隔学习,前几次的密集学习基本是白费的。 记忆保持期(retention interval) 集中记忆,在短期上效果和间隔记忆差不多,但长期明显差于间隔学习。想记住一年,间隔时间为 14 天,两年以上间隔 56 天为宜。但通常为了便于执行,以天、周、月为时间间隔效果更好。 如果 R.I.需求短,比如一天和几个小时以内,则最佳学习间隔约等于 R.I.*1.0 如果 R.I.需求长,比如几天及以上学习间隔约等于 R.I.*0.1 为了避免学习战线拉太长,可以一周复习一次单词,保持听说读写,让单词在更多的情境中碰到,编码多样化记得会更牢。 重复记忆次数 6 次以上。1 次接触就习得的概率为 5%-15%。听说读写都算重复,但大量的机械简单重复未必能带来期待的学习结果。重复次数之间有个反常识的规律,1 次和 3 次没有明显差异,而达到5 次就会不一样。 ","date":"2017-06-12","objectID":"/2017-06-11-learning-words-2/:2:1","tags":["英语","学习"],"title":"学单词(二)","uri":"/2017-06-11-learning-words-2/"},{"categories":["知识整理"],"content":"感官记忆 借助图像记忆单词,不但可以实现声音和图像的联系,而且记忆深刻。图像要指代明确,名词图像先于声音,动词声音快于图像。此外听声音做动作,观察口型,使用手势都有帮助。 五到口诀 “五到”口诀:眼到、嘴到、耳到、手到、心到 眼到,就是要看单词,看他的形状。快速的通过识别单词的大概样子,达到成块成段的识别句子和段落,对于提高我们提高阅读速度是很有帮助的。 嘴到,就是你需要读出这个单词。我们会因为音标不好,看着单词的音标也不能很好的拼读出来,所以在记忆单词时就很回避这个环节。因此需要把音标好好学一下,如果读错单词真的会妨碍记忆。读的时候不一定要读出声,做口型也是可以的。如果实在不方便,也可以在心里默念,镜像神经元会帮助我们达到类似念出声的效果。 耳到,就是说你的耳朵要听到这个单词的物理声音,可以是自己读,也可以听标准音,虽然这两种声音的传递原理不一样,但这个声音都打通了听力通道,把这种声音记忆储存在听觉脑里,这就足够了。一个单词的发音在不同的 context 下听多了,就好像在不同的环境下看到同一个人的脸一样,重复次数多了,会更容易在 unexpected 的环境下识别这个单词的发音。 手到,就是写,如果环境允许可以在记的时候把单词写出来。书写单词可以帮助我们更好地记单词,提高语言本身的准确性。 心到,就是说,记单词要用心。曾经有个著名小提琴家说过,如果是练习手指,可以练一整天;可是如果是练习脑子,每天能练两个小时就不错了。高手的练习每次最多 1 到 1.5 小时,每天最多 4 到 5 小时,没人受得了更多。这就是说,记忆单词,本来就应该是一件费脑子的事情,把它限定在1 小时内就很不错了。 背单词其实应该是一个单词的多维度的认知加工。它不像汉字,汉字是拼义文字,大脑会特意做一个图像加工处理,而英语没有,英语拼音文字,想要记得这个单词,必须要记住它的发音、音节数,以及重音等超音段特征。 可是我们为什么需要这样费时费力的对一个单词做这些认知加工呢?原理很简单,我们大脑在储存记忆单位时,都是分布式分散式储存的。所以,如果你想更深刻的记忆这个单词,那最好在各个脑区都留下痕迹。所以,我们除了是视觉脑区留下单词痕迹之外,我们还在听觉脑区留下痕迹,配合口腔和手写的运动,在体觉感区最好做一个刺激,然后用自己的大脑再做一些深层次的认知加工,就是通常我们所说的“走心”,比如联想记忆。这个单词,在各大脑区留下的痕迹越多,那么这个单词就在记忆里消退的越慢,只要你坚持不断的学习,坚持不断的暴露(exposed)在英文环境下,相信它总有一天可以 hold 到你再次遇到这个相同的单词的时候,这个时候,你的大脑就开始了新一轮的反复提取,心理学上有一个专有名词:retrieval,此时这个单词的生命,又因为你的再一次提取,而又获得了重生。 编织场景 粘贴习惯 给自己记单词设定一个学习场景,形成一个习惯,减少心理能量的消耗。 ","date":"2017-06-12","objectID":"/2017-06-11-learning-words-2/:2:2","tags":["英语","学习"],"title":"学单词(二)","uri":"/2017-06-11-learning-words-2/"},{"categories":["知识整理"],"content":"联想法和关键词法 联想法(通过想象图像来实现联系)除非某些单词很适合,否则慎用;关键词法(通过语言来实现联系)不要用。 ","date":"2017-06-12","objectID":"/2017-06-11-learning-words-2/:2:3","tags":["英语","学习"],"title":"学单词(二)","uri":"/2017-06-11-learning-words-2/"},{"categories":["知识整理"],"content":"参考 《词行天下》 《找对英语学习方法的第一本书》 何老师「认知英语课」 ","date":"2017-06-12","objectID":"/2017-06-11-learning-words-2/:3:0","tags":["英语","学习"],"title":"学单词(二)","uri":"/2017-06-11-learning-words-2/"},{"categories":["知识整理"],"content":"ChangeLog 2017-06-11 初稿 ","date":"2017-06-12","objectID":"/2017-06-11-learning-words-2/:4:0","tags":["英语","学习"],"title":"学单词(二)","uri":"/2017-06-11-learning-words-2/"},{"categories":["知识整理"],"content":"如果要评选一个「我的人生最大的干扰项」,目前为止,非英语莫属。初高中一直赖在班级倒数前五的位子上,每回英语考试前夕都心慌不已,考前一定要拿一个下午背作文,不然很难凑齐字数;到了大学虽然不再倒数,但绝对拉低了浙江学生的平均分,心态依旧,几回六级考试都如临大敌,考前怯场。于是,去年开始就将英语列为最高优先级的待解决问题。可是一朝被蛇咬,一生都怕草绳,因此常常弃英语而寻他欢。究其原因,大概是我学习英语的整个思路都是错的,急需一场脱胎换骨的大手术。 近期,读了漏屋老师的《词行天下》和《找对英语学习方法的第一本书》,并且参加了何老师的「认知英语课」,收获颇丰。接下来,我将按照词汇学习阶段的顺序,分享学习笔记。 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:0:0","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"词汇概览 词汇的本质是“概念”与“声音印象”二者的结合 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:1:0","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"词汇广度 非英语母语的人大致是以 5000 为峰值的长尾分布,英语是母语的人词汇量会有两三万,但实际 8000-10000 便基本能应付日常会碰到的英语。那么为什么词汇量高达一万多的人会觉得词汇量不够呢? 原因是非英语母语的人,大概只有 40% 的主动词汇,而英语是母语的人有 90% 的词汇是主动词汇。那么词汇量只有 5000 的人仅有 2000 的主动词汇量,相当于 3 岁儿童的词汇量。 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:1:1","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"词汇深度 英语中,一个单词通常有好几个意思。例如,spring,一般想到的是春天,然后是泉水、发条,其实还有动词的意思,跳跃。词汇的这种不同词频的含义就是词汇的深度。 最常用的 250 个单词,覆盖了口语中 60% 的词汇,其他数据以此类推,因此只需少量词汇就能应付生活中大部分口语。高频词最常用,它的意思也更多,橙色圆圈中表示平均的意思个数,因此记高频词要多记几个意思。 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:1:2","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"单词覆盖率\u0026词频 扩展词汇主要在四六级、考研英语、TOEFL 和 SAT 的阅读部分出现 词频查询:Wordcount · Tracking the Way We Use Language ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:1:3","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"第一阶段:250 词\u0026介词 不同意或不同音的分开学,一次只学一个音或一个意 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:2:0","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"居一二三维 格式塔心理学:人对空间事物的视觉认识,不是平面和等同的,而是立体和认识归类的,主要的区分为“前景”F 和“背景”G。F 一般尺寸较小,运动较快;G 一般尺寸较大,运动慢或静止。 正是对 F 和 G 空间关系的认知,介词的功能被扩展到表达抽象概念上;又因为介词与其他词汇连用,介词在人的心理上是描述F 和 G 位置、尺寸及运动的立体空间认知。 at 的 F 和 G 是零维关系,即 F 对应的 G 是一个点 on 的 F 和 G 可以是一维关系,即 F 对应的 G 是一条线 on 的 F 和 G 可以是二维关系,即 F 对应的 G 是一个平面 in 的 F 和 G 可以是三维关系,即 F 对应的 G 是一个三维容器 例子: at/in hospital 前者表在医院,把医院看成一个点,你在医院的任何地方包括周围都算在医院 后者表进了医院,把医院当作一个容器 He in on/in the work market 前者 F 对 G 的控制度高,表示主动自信地去找工作。 后者 F 对 G 的控制度低,表示艰难地找工作。 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:2:1","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"于刻天年里 人是先有了空间观才有了时间观,因此人是以思考空间的方式来思考时间,例如:前年,之后。有关的介词取决于说话人如何看待所说事件与其发生背景时间的关系。 如果事件的发生对应于背景时间的一个精确的点,就形成了零维关系,用 at 如果表述事件的发生对应于背景时间的一个特定时间段,我们想表示该时间段发生了什么,此时类似于表达位于哪一街道段,是二维关系,用 on 如果表述事件的发生在一个时间段内的任意一个时间点都可以,此时时间背景具有三维容器的特点,用 in 区分: in the morning、on Tuesday morning:两者都是表示时间段,但前者是要你去找那一时间段里的位置,而后者是要你去找那个时间段的位置 on time、in time:准时、及时,前者强调某一小段时间内,而后者强调在某个时间界限之前的任何时间都可以 at risk、at steak、on target、in trouble:这些用法可以类比空间尺度,小、中、大,at risk 处于某一点的状态,on target 按计划接近实现目标(中尺度),in trouble 延伸到过去和将来的大尺度时间 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:2:2","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"意象图式 意象图式是感知互动及感觉运动活动中不断再现的动态结构,如垂直、容器、路径等,这种结构给我们的经验以连贯和结构。 人类经验是无数的,但是意象图式是极少量的,它是大量经验的概括。因此我们可以用有限的意象图式来组织和理解无限经验。一项图式主要由动体(trajector,TR)、界标(landmark,LM)和路径(PATH)三部分组成,体现的是 TR 和 LM 某种不对称的关系。 意象图式对于我们抽象思维的重要性:意象图式不仅构建了我们的空间域,也构建了存在于我们抽象的域中的很多概念。 意象图式可以帮助更好地理解介词,之后还会介绍意象图式在用示意图学习抽象词汇中的应用。 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:2:3","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"概念迁移 语言是相互联系的,学习二语的时候注意语言迁移和意义迁移能更好地理解一语和二语。 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:2:4","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"造做使成赚 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:2:5","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"参考 《词行天下》 《找对英语学习方法的第一本书》 何老师「认知英语课」 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:3:0","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"ChangeLog 2017-06-11 初稿 ","date":"2017-06-11","objectID":"/2017-06-11-learning-words-1/:4:0","tags":["英语","学习"],"title":"学单词(一)","uri":"/2017-06-11-learning-words-1/"},{"categories":["知识整理"],"content":"数据在当下可谓越来越重要了,工作中老板谈要注意数据思维,买书的时候网站会利用大数据给你推荐可能喜欢的书,新闻里会用帅帅的图表来和你解释究竟发生了什么……数据已经深入我们生活的方方面面,已掌握大量数据的我们应该如何面对这些数据呢?","date":"2017-05-20","objectID":"/2017-05-20-network-data-analysis-introduction/","tags":["网络科学","讲座"],"title":"讲座记录:零基础网络数据分析入门","uri":"/2017-05-20-network-data-analysis-introduction/"},{"categories":["知识整理"],"content":"讲师介绍 刘勇,Gephi 官方认证讲师,数据可视化实践者,《网络数据可视化与分析利器:Gephi 中文教程》作者。 ","date":"2017-05-20","objectID":"/2017-05-20-network-data-analysis-introduction/:1:0","tags":["网络科学","讲座"],"title":"讲座记录:零基础网络数据分析入门","uri":"/2017-05-20-network-data-analysis-introduction/"},{"categories":["知识整理"],"content":"什么是网络数据 我们先来了解一下研究网络的学科——网络科学是什么。美国国家科研委员会(National Research Council)将网络科学定义为“研究物理,生物,和社会现象的网络化表达,建立针对这些象限具有预测效果的模型”的学科。网络数据则是对网络进行一种数字化的记录。网络科学的研究是以图论 (数学的分支) 为基础,在数据的记录上,也是以图论中图的数字化记录方式记录的。顶点和边是图论中最重要的两种元素,顶点的集合称作点集,边的集合称作边集,我们可以用点集和边集对图进行数字化记录。讲座介绍的 Gephi 也是基于这种方式,用节点表和边表来记录网络数据。 ","date":"2017-05-20","objectID":"/2017-05-20-network-data-analysis-introduction/:2:0","tags":["网络科学","讲座"],"title":"讲座记录:零基础网络数据分析入门","uri":"/2017-05-20-network-data-analysis-introduction/"},{"categories":["知识整理"],"content":"Gephi 的基本介绍及基本操作 Gephi 是一款由法国工程师开发的用于探索与分析网络的开源工具软件,它是免费的而且支持多平台。 打开 Gephi,界面上会出现三个图窗来供我们选择。最常用的两个图窗是概览和数据资料,概览是 Gephi 数据可视化处理的主要环境,中间的图窗是是数据可视化的图形显示区域,左侧是用来改变图形的工具;数据资料图窗是用来查看、编辑和修改网络数据,该窗口与 Excel 类似。网络图可视化完成后,可以切换到预览图窗来导出图形文件。 ","date":"2017-05-20","objectID":"/2017-05-20-network-data-analysis-introduction/:3:0","tags":["网络科学","讲座"],"title":"讲座记录:零基础网络数据分析入门","uri":"/2017-05-20-network-data-analysis-introduction/"},{"categories":["知识整理"],"content":"案例:“16 国 32 媒”数据操作 该案例以 16 国的 32 家日报(每个国家选两家最重要的日报)为节点,以一家日报在五年时间内对两家日报的引用次数为有向边的权值,来生成一个网络。数据导入后,Gephi 的界面中间会出现一个难以辨析的初始网络图。接下来可以调整网络图的布局和外观,得到一个清晰以观察的网络图,也可以对数据进行统计计算。 调整后便可得到一个清晰的网络图,可以看到最重要的节点是纽约时报、华盛顿邮报、卫报和泰晤士报,它们恰好也是全球最重要的四家日报。此外,我们还可以深入思考,引用关系究竟表明了什么含义,是贬义的还是褒义的?是正向的还是负向的影响?以及,这些媒体是不是有足够的代表性? ","date":"2017-05-20","objectID":"/2017-05-20-network-data-analysis-introduction/:4:0","tags":["网络科学","讲座"],"title":"讲座记录:零基础网络数据分析入门","uri":"/2017-05-20-network-data-analysis-introduction/"},{"categories":["知识整理"],"content":"互动问答 Q1:网络数据分析在我们日常生活中有哪些应用? 我们可以用 Gephi 来分析 Twitter 中好友和粉丝间的关系,看看哪些人是自己和一些朋友的共同好友,哪些人是自己的粉丝。 Q2:Gephi 处理的最大数据量是多少,数据较多时有没有可视化的技巧? Gephi 最大的数据处理量跟边的数量有很大的关系,官方公布的数据是 100,000 个节点和 1,000,000 条边。当数据较多时,可以用 Gephi 中的聚类算法将功能相近的节点聚合,这样网络图就会变得清晰一些。 ","date":"2017-05-20","objectID":"/2017-05-20-network-data-analysis-introduction/:5:0","tags":["网络科学","讲座"],"title":"讲座记录:零基础网络数据分析入门","uri":"/2017-05-20-network-data-analysis-introduction/"},{"categories":["知识整理"],"content":"ChangeLog 2017-04-03 初稿 ","date":"2017-05-20","objectID":"/2017-05-20-network-data-analysis-introduction/:6:0","tags":["网络科学","讲座"],"title":"讲座记录:零基础网络数据分析入门","uri":"/2017-05-20-network-data-analysis-introduction/"},{"categories":["知识整理"],"content":"音乐的音 唱的比说的好听 学音标的音面对的是固定的 44 个音标;学语块的音要去寻找零星散落的发音要点;但从音乐的音开始,要学的内容变成了一个面,一个句子,一段文字,到处都是发音要点,需要慢慢积累。这个阶段不便集中学习,日常中听到喜欢的歌兴起而学,或是放松的时候学首歌更为合适。 ","date":"2017-04-05","objectID":"/2017-04-03-learning-american-english-3/:1:0","tags":["英语","学习"],"title":"学美语(三):进阶","uri":"/2017-04-03-learning-american-english-3/"},{"categories":["知识整理"],"content":"语言和音乐的关系 在学术界,语言和音乐到底哪个先产生,现在还存在争议。 一方面,我们通常认为先有语言再有音乐,音乐是人类的一种较语言激烈的表达方式。正如《诗·大序》所云:“诗者,志之所之也。在心为志,发言为诗,情动于中而形于言。言之不足,故嗟叹之。嗟叹之不足,故咏歌之。咏歌之不足,不知手之舞之足之蹈之也。“ 另一方面,人类学家发现 3000 万年前的小型皮毛树栖灵长目动物(人类的祖先)已经具有了音乐识别能力。同时,我们也可以看到一些南半球的一些语言落后的土著部落有着神秘而复杂的打击乐。这些证据都在支持音乐先与语言的说法。 不管怎样,语言和音乐是紧密联系在一起的,学习语言可以借鉴许多音乐当中的技巧。 ","date":"2017-04-05","objectID":"/2017-04-03-learning-american-english-3/:1:1","tags":["英语","学习"],"title":"学美语(三):进阶","uri":"/2017-04-03-learning-american-english-3/"},{"categories":["知识整理"],"content":"音乐如何帮助我们学习语言 很多歌曲都会押韵,副歌也会重复好多遍,这样就不用自己亲自去找单词来练习某些音标了,而且还能辨析易混淆的音(比如/l/和/r/)和长短音(比如 sit 和 seat)和练习双元音(歌曲里有些双元音的前半个元音会拉的很长)。 歌曲更重要的是用来练习连读、弱读、省略以及声调韵律。我们听英文歌常会听到很长、很明显的连读,通常我们读句子的时候不敢连读太长,歌曲恰好击中软肋,逼着我们去适应连读。练习连读的时候也能发现弱读和省略的规律,弱读是指元音向央元音弱化或爆破音失爆,例如,Far Away From Home 这首歌里的“I count on you“,on /ɔ:n/就弱读成/ən/,”cause love can find it time\"中 it 的/t/就是弱读,只塞气不发音,但要留有发音的时间间隔;省略和弱读是有差别的,弱读的爆破音是塞气再在下一个辅音发音的时候释放出来,而省略是整个音省略了,例如,The Climb 的“Keep climbing\"中的省略就很明显。相对于语言,音乐更加绵延起伏,抑扬顿挫,非常适合用来练习声调和韵律。 听老师说,歌曲还能练习气息,但我还没找到大规模练习的方法。 ","date":"2017-04-05","objectID":"/2017-04-03-learning-american-english-3/:1:2","tags":["英语","学习"],"title":"学美语(三):进阶","uri":"/2017-04-03-learning-american-english-3/"},{"categories":["知识整理"],"content":"篇章的音 配音大法好 篇章的音,其练习方法不是让你去读文章,而是去配音,从最小单位的句子,再到一段文字。配音可以锻炼口型、内语,更好得感受镜像神经元的模仿学习作用,更好得理解肌动说(自己声腔大小的信息和自己发音运动特性对外来语音的分析和解码至关重要,语言感知和语言发音密切关系,通俗地讲,听力和发音关系密切),提高语音环(一串的语音,它揭示了语音存储容量和复述速度及复述过程在语音信息处理过程中起决定性作用,通俗讲,听力的理解和语音环关系密切)。 ","date":"2017-04-05","objectID":"/2017-04-03-learning-american-english-3/:2:0","tags":["英语","学习"],"title":"学美语(三):进阶","uri":"/2017-04-03-learning-american-english-3/"},{"categories":["知识整理"],"content":"配音 选择什么材料: 原版的声音和自己的声音比较像 有清晰的口型,便于模仿 最好先从白人的发音开始 难度、长短合适且自己喜欢的 配音五步法 听熟读顺,理解语音、语义、重音。 只对口型不作声,让大脑产生自己在读的错觉。 只哼节奏不去读,注意气息变换(呼吸的轻重缓急、换气),可尝试画曲线。 mute 掉视频,想象自己的声音(先去熟悉自己录下的声音)。 发生模仿,嘴皮子越磨越薄。check 并修正自己和原声的差异。 ","date":"2017-04-05","objectID":"/2017-04-03-learning-american-english-3/:2:1","tags":["英语","学习"],"title":"学美语(三):进阶","uri":"/2017-04-03-learning-american-english-3/"},{"categories":["知识整理"],"content":"读文章 英语的文章多抑扬顿挫,读文章的时候可以虚拟分段,标出重音、弱读、省略等等,刚开始的时候最好用有原声的材料(可模仿,可校正)。 ","date":"2017-04-05","objectID":"/2017-04-03-learning-american-english-3/:2:2","tags":["英语","学习"],"title":"学美语(三):进阶","uri":"/2017-04-03-learning-american-english-3/"},{"categories":["知识整理"],"content":"语音闭环 到这里,学习路径走完了一遍:音标、语块、音乐、篇章,实则开了个头,以后的练习积累才是关键。 ","date":"2017-04-05","objectID":"/2017-04-03-learning-american-english-3/:3:0","tags":["英语","学习"],"title":"学美语(三):进阶","uri":"/2017-04-03-learning-american-english-3/"},{"categories":["知识整理"],"content":"复盘 音标:/l/ /r/ /ə:r/ 语块:A Course in Phonetics: Home和 American Accent Training APP,完善清单 ","date":"2017-04-05","objectID":"/2017-04-03-learning-american-english-3/:4:0","tags":["英语","学习"],"title":"学美语(三):进阶","uri":"/2017-04-03-learning-american-english-3/"},{"categories":["知识整理"],"content":"ChangeLog 2017-04-13 补充遗漏的知识点 2017-04-05 初稿 ","date":"2017-04-05","objectID":"/2017-04-03-learning-american-english-3/:5:0","tags":["英语","学习"],"title":"学美语(三):进阶","uri":"/2017-04-03-learning-american-english-3/"},{"categories":["知识整理"],"content":" 音标在此组装成语言 音标练习到自我感觉良好的程度便转向语块练习,大概花了十天的时间,一边听何老师的课,一边学习 Lisa 的视频、读 coca 词表,A Course in Phonetics: Home 和 American Accent Training APP(太贵)还没开始使用,等下一轮的学习再用,毕竟这段时间的学习只是美语学习的一个开始。 ","date":"2017-04-04","objectID":"/2017-04-03-learning-american-english-2/:0:0","tags":["英语","学习"],"title":"学美语(二):语块的音","uri":"/2017-04-03-learning-american-english-2/"},{"categories":["知识整理"],"content":"超音段特征 超音段特征又叫韵律特征,指的是除了元音、辅音的音色特征外的,包括音高、音强、音长及其相互关系的一切特征,与句法、语篇结构、信息结构等语言学结构密切相关。 从音位层次上看,音长的变化可以构成有区别意义作用的“长短音” 从音节层次上看,音高的变化可以构成“声调” 从音节组合层次上看,音强等因素的变化可以构成轻重音 从语句层次上看,音高、音强、音长等因素的变化可以构成语调 ","date":"2017-04-04","objectID":"/2017-04-03-learning-american-english-2/:0:1","tags":["英语","学习"],"title":"学美语(二):语块的音","uri":"/2017-04-03-learning-american-english-2/"},{"categories":["知识整理"],"content":"音节 音节是用听觉可以区分清楚的语音基本单位。英语中词汇有单音节、双音节和多音节,如 take 是单音节,ta-ble 是双音节,con-tri-bu-tion 是多音节。 音节是按音标来划分的,不要被单词的拼写干扰,规律如下: 一般一个元音一个音节,几个元音就有几个音节。例如,take 只有一个元音,它就只有一个音节。 响辅音也可以构成音节,辅音中 /m/、/n/、/ŋ/、/l/ 四个是响辅音,它们和辅音音素结合也可以构成音节,一般出现在词尾,非重读。 辅音是音节的分界线,两元音音素之间只有一个辅音时,辅音音素归后一个音节,例如,stu’dent,fa‘ther。有两个辅音音素相连时,前一个归前,后一个归后,例如,win’ter,sis‘ter(此处 t 不浊化,因为 /tə:r/ 是一个独立音节,前面一个音素 /s/ 为清辅音,根据同化原则此处是不浊化的)。 开音节与闭音节 绝对开音节:以发音的元音字母结尾的音节。e.g. we three hello 相对开音节:(辅音+)元音字母 + 辅音字母 + 不发音的 e 字母(\u003e=1 个)构成的音节。e.g. take due plane bee 在开音节中,发音的元音字母发字母本身的音,e.g. use /ju:z/ 闭音节:以一个或几个辅音字母(r 除外)结尾而中间只有一个元音字母的音节。闭音节中,元音字母不发字母的本音。 辅音 + 元音 + 辅音:bad let 元音 + 辅音:it out ant 重读闭音节是指符合(重读音节、最后只有一个辅音字母、元音字母发短音)三要素的音节,重读闭音节动词的分词要双写。 ","date":"2017-04-04","objectID":"/2017-04-03-learning-american-english-2/:0:2","tags":["英语","学习"],"title":"学美语(二):语块的音","uri":"/2017-04-03-learning-american-english-2/"},{"categories":["知识整理"],"content":"同化原则 通过“复制”序列中音位的特征来使一个语音同化为另一个,从而使两个音素相似。例如,多数拼写中的 n 被同化为 m,inpossible \u003e impossible(/m/和/p/更相似)。 ","date":"2017-04-04","objectID":"/2017-04-03-learning-american-english-2/:0:3","tags":["英语","学习"],"title":"学美语(二):语块的音","uri":"/2017-04-03-learning-american-english-2/"},{"categories":["知识整理"],"content":"发音要点清单 一下清单总结了 Lisa 和何老师录音里补充的,以后还要增加 A Course in Phonetics 和 American Accent Training 的语块发音要点。 轻重音 对象 要点 基本音节重读 重读音节更长,更响亮 非重读音节 非重读音节向央元音弱化,e.g. o’clock pho’tography /ə/ 动词和名词的音节 名词,90% 的情况下,第一个音节重读;动词,60-70% 的情况下,第二个音节重读,e.g. object record 动词短语的重读规则 一般重读介词,短语之间有代词或名词也是如此;若动词短语=名词时,重读动词 名 + 名、形 + 名 一般分别重读前者和后者,e.g. ‘lunch time,blue‘eyes.;若名词前有两个形容词,第一个形容词也要重读,e.g. Big black Dog -ate 结尾的单词 若是动词,读/eɪt/,e.g. graduate;若是形容词或名词,发音就要减弱,听起来像 /ɪt/ 或 /et/,具体视情况而定,e.g. articulate 后缀的重读 ese eer ique 结尾,重读后缀,e.g. Chinese pioneer technique;ic 结尾,重读 ic 前一个音节,e.g. rea‘listic e’lectric;从名词变成形容词,名词普遍第一个音节重读,而形容词则是第二个,e.g. ’origin o‘riginal(o 弱化) 地名和人名 两、三个单词组成时,重读最后一个; 缩写词和数字 重读最后一个字母 句子中单词重读 一般重读实义词,即名、动、形、副,e.g. Who stole the‘money from me?;多个连在一起时,一般重读最后一个,e.g. Did you get the‘job? 焦点词和虚拟分组 读一个较长的句子时可以将其划分成若干个虚拟的分组,一般焦点词在每个分组的后面部分,通常是名词或动词 特殊重读 特殊情况下,依感情色彩重读,一般出现在口语中 声调 对象 要点 陈述句 降调,升调会让人觉得你说话紧张 提问句 用 yes/no 回答的升调;WH 疑问句降调 列举多个物品、给别人选择、条件从句、复合句 最后一个(短句)降调,其余升调;e.g. I think it’s gonna RAIN,but… 引导性的文字 升调,e.g. However,On the other hand… 高阶技巧 对象 要点(以上斜黑体为省略音节 ) 单词轻读 代词、介词、冠词和助动词常轻读,e.g. as on at to for or out our \u003e /ə/,and \u003e /n/ PS: or … that,清楚知道接下来说什么,则削弱元音,还在思考,没想到说什么,可以发原音。 省略音节 完全不发音,e.g. /a/ basic**ally actsally,vegetable different,chocolate comfo**rtable(rt 变成 tr) 常见错误发音 b clim**b** de**bt, ch yacht,d adjust adjective,,l walk half,t ballet** bouque**t,th clothes,p receipt,s island debris,w answ**er 辅音丛 不能省略,e.g. maths months s 音后的清辅音浊化 e.g. sport sky star 辅、元连读 前一单词辅音结尾接后一单词元音开头,连读并不意味着语速快,而是平滑的,原来重读的地方还是要重读,分组间不连读,切记不要急着去学连读e.g. what if \u003e whadif 两辅连续 两个辅音一样或有相同的发音点时,只发一个音,e.g. likes swimming,five friends 两元连续 前一单词结尾是/i/ /oɪ/ /aɪ/ /eɪ/,则后接单词前加一个轻轻的/j/,e.g. see it /’sijɪt/;前一单词结尾是/u:/ /oʊ/,则后接单词前加一个轻轻的/w/,e.g. no answer /noʊ‘wʌnsə:r/ 代词的轻读 e.g. did **h**e,call **hi**m,drive her \u003e driver,them \u003e em 当在句首或强调时,则不能省略 缩写 强调的时候,不会用缩写,e.g. it’ll \u003e id’ll,I would \u003e I’d,they are \u003e they’re /ə:r/,we have \u003e we’ve 难懂的缩写 could have \u003e couldəve,could not have \u003e couldnəv,would you have \u003e wouldjuəv 非正式场合 kind of a \u003e kind a,let me \u003e lemme,give me \u003e gimme ","date":"2017-04-04","objectID":"/2017-04-03-learning-american-english-2/:0:4","tags":["英语","学习"],"title":"学美语(二):语块的音","uri":"/2017-04-03-learning-american-english-2/"},{"categories":["知识整理"],"content":"ChangeLog 2017-04-13 补充遗漏的知识点 2017-04-05 初稿 ","date":"2017-04-04","objectID":"/2017-04-03-learning-american-english-2/:1:0","tags":["英语","学习"],"title":"学美语(二):语块的音","uri":"/2017-04-03-learning-american-english-2/"},{"categories":["知识整理"],"content":"回想初学英语那会儿,老师用方言版的英语领着读“Good morning”,我就在课本上记下“gu de mo ning”,还暗自庆幸找到了一个好方法。这个记发音的方法一直沿用到去宁波上高中,期间上千单词的发音得到了巩固,也形成了错误的英语内语。上高中后,英语课上经常被老师纠音,却总改不过来,有时听不出自己的发音哪里不对劲,有时就算听出来了也不知道正确的音要怎么发。老师反复强调“背新概念或课文要先听磁带”,那时当英语是夜叉,心里一百个不情愿,就想着赶紧背完了事。就这样错过了最好的英语老师和最好的英语学习机会,后来偶尔说英语,因为不确定音到底怎么发,都不敢说出口。 去年在开智有幸遇到了何老师,加入了她的认知英语课,但一直拖到上个月才学。一个月坚持下来,效果还是很明显的,学习英语的信念也改变了,没想到学英语能如此轻松愉快。接下来,便按何老师的授课顺序跟你分享这段时间的学习经历吧。 ","date":"2017-04-03","objectID":"/2017-04-03-learning-american-english-1/:0:0","tags":["英语","学习"],"title":"学美语(一):音标的音","uri":"/2017-04-03-learning-american-english-1/"},{"categories":["知识整理"],"content":"音标的音 子曰:取乎其上,得乎其中;取乎其中,得乎其下;取乎其下,则无所得矣。 你可能会问,有必要从音标开始学吗?在我看来,这是很有必要的,而且这一块还占了一半的时间。就拿我的情况来说,美语里一半以上的音真的是不知道怎么发,以前都是想怎么发就怎么发。音标看似简单,但不会的舌位、唇形、走位、形变都是要练几十遍上百遍才能做到位,在做对的那一下的欣喜之前也是要有耐心去重复练习、录音、录像、矫正。好在大多音多能在一两天内学会,给自己一个及时的反馈,不然我可能也会半途而废。 一开始,我是用两个 APP 练习,sound of speech 和 IPA phonetics,前者友好一点,但有些口型图片表达的不够清楚,后者需要自己去页面上找到美语的音标。我大概花了一周的时间按照 APP 里的描述模仿发音视频练习,还是感到自己发的不对,有些地方没有领会到,愁云未展。接着又找来 Rachel 和 Lisa 的视频来模仿练习,又是录音,又是照镜子,练多了,舌头便会不经意在认为正确的舌位做出正确的移动;唇形和口腔的开合程度可以照镜子或看录像来跟教学视频比较,嘴唇有没有噘,下巴是不是张太开,都能观察到。 下面来介绍一下音标,记音标最简单科学的方法是记 underhill 音标表(英语 44 个,美语 43 个,没有 ɒ)。 辅音第一行和第二行分别是爆破音和摩擦音,从左往右舌头位置逐渐向口腔后部移动;左上角的单元音是按照舌头的上下前后位置排的,右上角的双元音发音基本上是从前一个单元音的舌位滑到后一个单元音的舌位。 ","date":"2017-04-03","objectID":"/2017-04-03-learning-american-english-1/:1:0","tags":["英语","学习"],"title":"学美语(一):音标的音","uri":"/2017-04-03-learning-american-english-1/"},{"categories":["知识整理"],"content":"辅音 每个辅音的发音都有需要注意的地方,尤其是 /ʃ/、/ʒ/、/tʃ/、/dʒ/、/l/、/r/。 辅音 发音要点 清:p;浊:b 注意不送气的情形(stop):/p|/和/b|/,e.g. napkin /’næp|kɪn/ 清:t;浊:d stop 音:e.g. cut /kʌt|/;轻拍音(flap):t 和 d 都发清 d,不塞气,舌前轻触上颚发音,发音后舌头又恢复放松状态 e.g. better /‘bedə:r/ 清:k;浊:g stop 音:e.g. back to work /bæk| tə wεək/ 清:f;浊:v 后接辅音的舌位可同时做出 清:s;浊:z 两种舌位:舌尖贴于上齿后和下齿后 清:θ;浊:ð 舌尖微露出齿缝,发音快的时候,舌尖可贴在齿后发音 e.g. the /ðə/ 清:ʃ;浊:ʒ;清:tʃ;浊:dʒ 嘴唇打开(有些 native speaker 牙龈都会露出来),牙齿并拢 鼻音:m;n;ŋ 舌头要张开堵住气流,让气流从鼻腔过,在单词中稍微延长发音时间 声门音:h 是由收窄声门产生的,用力要适中 舌侧音:l light 音:舌尖顶住上颚或上排门牙底部,让气流从舌侧经过;dark:舌头拉回或舌后下压(完整的发音还需第二步,即把舌尖移至上颚,但一般可省) 最难的音:r 介于普通话 r 和 l 之间的卷舌音,或者舌前和舌中抬起,两种方式都需要嘴唇收成圆形向前微伸,下巴不要太下;但/r/在结尾时嘴唇仅向外微开,而无需收紧 较好发的音:w 舌后向软腭伸展,舌前下倾,嘴收紧向外移动,像吹气球 滑音:j 舌中抬起并向前推,舌尖向下 ","date":"2017-04-03","objectID":"/2017-04-03-learning-american-english-1/:1:1","tags":["英语","学习"],"title":"学美语(一):音标的音","uri":"/2017-04-03-learning-american-english-1/"},{"categories":["知识整理"],"content":"元音 在我看来,元音比辅音要难一些,因为元音之间的差别较小,容易混淆。下面按由易到难的顺序来讲: 五个极限元音 所谓的极限元音,指的是舌头位置在口腔的五个极端位置。这五个元音重读的时候会有一个升调和降调的过程,弱读的时候是一个向央元音弱化的短促的音。 极限元音 发音要点 æ 后跟 /m/ 或 /n/ 时,发音到一半放松舌头和嘴角,向 /ə/ 变化;后跟 /ŋ/ 时,发音变成 /eɪ/ a: 舌尖轻触门牙背 ɔ: 舌尖向后缩,不触碰任何东西。嘴唇微张开;后跟 /r/ 时,两音会融合在一起变成 /ɔr/,嘴张得小一些,舌前抬起 e.g. core /kɔr/ u: 舌后朝软腭伸展,舌前保持向下,嘴唇由松变圆 i: 舌中、舌前向上颚伸展,嘴角向后下方拉 五个松短元音 五个松短元音,顾名思义,口腔比较放松,发音比较短,舌位比较接近,较难区分。 松短元音 发音要点 ə 央元音,整个口腔都要放松;所有元音弱化的去处 e.g. aways, unstressed e/ε 介于 /ə/ 与 /æ/ 之间 ɪ 舌前向上颚拱起 ʊ 舌后朝上颚抬起,舌前下倾,嘴唇微张 ʌ 舌前稍下压,舌尖向前 其他单元音 美语里还有一个单元音 /ə:r/,也是最难发的一个元音。舌中朝上颚抬起,舌前下垂稍往回拉,嘴唇稍向外张。 英音则还有两个单元音:/ɒ/和/ə:/ 八个双元音 双元音的发音方法是:前一个单元音滑动到后一个单元音,声音逐渐变小。我们读文章的时候语速会比较快,但双元音滑动的过程不能省,省了发音就不够饱满,不够好听。这样说会很累吗?是的,一开始会比较累,要知道 native speaker 说英语是用肩部以上的一大块部位来发音的,而不是仅仅口腔和声带。 ","date":"2017-04-03","objectID":"/2017-04-03-learning-american-english-1/:1:2","tags":["英语","学习"],"title":"学美语(一):音标的音","uri":"/2017-04-03-learning-american-english-1/"},{"categories":["知识整理"],"content":"几个帮助发音的技巧 McGurk Effect McGurk Effect,一个感性的认知现象,表现在语音的感知过程中听觉和视觉的相互作用,有时人类的听觉会过多受到视觉的影响,产生误听。当视觉察觉到的一种声音与耳朵听到的另一种声音相匹配时,会让人神秘的察觉到第三种声音。例如看 /i:/ 的口型,听 /e/ 的发音,会听到 /ɪ/。因此我们在发音的时候一定要注意自己的口型,不然会干扰到听众的接收。 标准音的真相 上文说了这么多发音规范,可能会误导你以为会有标准的美语,下图便可以到诉你真相。 如果有些音分辨不出来,听不同的口音的发音,听力会变得敏感,原来听不出的差异也能分辨出来了。 镜像神经元 镜像神经元,位于大脑前额叶,它的作用是:当你看到别人在做一个动作的时候,该神经元会产生一个和你自己做该动作一样的电信号(其实你并没有做动作)。那么你可能会问,“不对啊,为什么我没有这种体验?”,因为我们的动觉器官产生信号来告诉我们,“嗨,别慌,那个被打的人不是你。”但是,倘若你被扒了皮,将会跟别人感同身受,所见即所感。发音其实也是一项运动,它是舌头、嘴唇和声带的精确协调运动,发正确的音是视觉、听觉和动觉互相协调验证的结果。镜像神经元告诉我们,模仿别人发音(多调用一些感官)是一个很好的方法。 ref:【TED】一探神经元何以筑文明 内语 内语是语言内化的产物,不是凭空而来的,而是发音器官对应的脑区创造出来的。当我们想着一个声音,不发生只做口型,也能做到和发声一样的口型,这就是运用内语的结果。看视频练习模仿,不断地重复,都是为了创造内语,当重复听一个音频或看一个视频到喉咙瘙痒,很想跟读的时候,内语就被强化了。此外,如果熟悉自己的声音的话,在心里练习也是有效的。 ","date":"2017-04-03","objectID":"/2017-04-03-learning-american-english-1/:1:3","tags":["英语","学习"],"title":"学美语(一):音标的音","uri":"/2017-04-03-learning-american-english-1/"},{"categories":["知识整理"],"content":"ChangeLog 2017-04-13 补充遗漏的知识点 2017-04-05 初稿 ","date":"2017-04-03","objectID":"/2017-04-03-learning-american-english-1/:2:0","tags":["英语","学习"],"title":"学美语(一):音标的音","uri":"/2017-04-03-learning-american-english-1/"},{"categories":["旅行游记"],"content":"台大的这一学期,总的来说过得很充实。学期初的前四分之一,放了两回假,功课不太紧张,花点时间收尾暑假的学习,去了趟花莲。之后一直到期末都是不变的作息,不分节假日:八点多起床,要么去上课要么去图书馆做作业、看论文、看书,下午接着上课、做作业、看论文、看书(有时会去周边逛逛吃点美食或坐捷运去逛逛台北),晚上要么练拳、和社友聊天要么还是老四项,十一点至十二点吃个夜宵,回公寓后看会儿 YouTube 便去睡。 可能最初来台大的目的就是想学点经济学、看看经济学研究的样子,所以后来选了七门课(两门没上过先修课,一门是硕博班的课),还旁听了好几次课,也导致学期的后四分之三几乎在学校里度过。因此接下来能聊的也只有课程、老师、社团、台湾朋友这些话题了。 ","date":"2017-03-06","objectID":"/2017-03-06-half-year-in-ntu/:0:0","tags":["台湾"],"title":"台大半年","uri":"/2017-03-06-half-year-in-ntu/"},{"categories":["旅行游记"],"content":"做学术的老师更有魅力 台大老师让我印象最深刻的是他们讲自己研究领域的那个画面,微微抬起头,双眼放空,思绪飘到自己做研究的漫长岁月,脸上浮起意味深长的喜爱和满足。我暗自羡慕他们,有自己专研的领域,就像自家的小菜园,里面的小番茄已经火红可餐。 短短一学期,感动我的老师还不少:古妈讲课特别有带入感,张森林老师对金融领域的热爱溢于言表,陈圣贤老师知识体系特别清晰,江淳芳老师很在意学生的好奇心…… ","date":"2017-03-06","objectID":"/2017-03-06-half-year-in-ntu/:1:0","tags":["台湾"],"title":"台大半年","uri":"/2017-03-06-half-year-in-ntu/"},{"categories":["旅行游记"],"content":"古妈 老师里面最喜欢的是古妈,她的“经济组织”是给大学部高年级和硕士班的学生开的小课,全班只有十几个人。古妈是一个心思单纯的人,比学生还要有好奇心,大概做学术研究久了才会有这种素养。上古妈的课之前,我还在纠结到底选“经济组织”还是“经济发展理论”,听课没十分钟我就决定了,讲的实在太精彩了,还合我口味。 当时古妈分享一篇论文《Masterpieces and Markets》,论文比较了二战前巴黎周围的印象派画家和二战后纽约周围的抽象表现主义画家的作品以及展示作品的形式和时代背景,两个时代作品的展现方式给了画家迥异的激励,以至于两个时代的作品在尺寸和耗时上有极大的差异。古妈还拿出了论文里提到的画家和作品来解读,当场开了眼界,没想到经济学研究的范围如此广阔,艺术作品的形式也可以是一个经济学问题。 期中前,古妈的课以讲论文为主,作业里也有论文要看,但这里的“论文”并不枯燥。有一周的作业还特别有趣,读一篇论文《The Law and Economics of Pirate Organization》。四十几页的论文就像海盗故事,我在图书馆的落地窗前花了五六个小时读完,原来历史上的海盗组织和《加勒比海盗》里的及其相似,有民主的选举制度、明确的合作分工、融洽的船员氛围等等,相比于当时正规的商船先进太多。 古妈有时候也会讲自己的论文,她研究了很多台湾的问题,比如日治时期茶贩的作用、台湾的祭祖组织、台湾土地制度,古妈发表的几十篇论文大多都关于台湾,大概她对那片土地爱的很深吧。 上古妈的课是一种享受,古妈讲,我在底下自己跟着推理,理顺逻辑,时常产生心流;有时同学们也会一起讨论,喜欢学术的同学都有自己的特质,很可爱;下课了再和古妈讨论细节和疑点,古妈总能捕捉到我的疑惑点。 有一回下课后和古妈聊多了,被古妈问起了个人,特别感动。古妈夸我微观经济学学的不错,后来我们还聊了温州人现象的经济学原因、我的个人规划,古妈热心地给了很多建议。两个人,饿着肚子聊了快一个小时,最后一点钟了,我要赶去上课才依依不舍得离开教室。离开的时候,古妈还问我对围棋有没有兴趣,想不想加入她的围棋聚会,我怕再聊下去会忍不住流眼泪,婉言拒绝后便先行离开了。 期中之后,“经济组织”的同学开始一起读《Why Nations Fall》,用一节课分享讨论。这本书讲的是政治制度和经济制度的差异导致不同国家不同的发达程度,因此中国大陆这颗闪亮的明星不可避免会在书里和讨论里出现。讨论的时候,古妈经常问我关于大陆的问题,热情和好奇心让人心生喜爱,但和绝大多数台大老师和同学一样对新中国成立后的大陆很陌生,让我有些心酸。 期末考试太密集,考完了还有些事,就没跟古妈去档案馆看契约,也没有跟她告别,希望未来还有机会再相遇。 ","date":"2017-03-06","objectID":"/2017-03-06-half-year-in-ntu/:1:1","tags":["台湾"],"title":"台大半年","uri":"/2017-03-06-half-year-in-ntu/"},{"categories":["旅行游记"],"content":"其他老师 其他课人都比较多,不能频繁地和老师接触,但有些时刻还是挺感动的。 “期货和选择权”的授课老师,张森林老师,是一个很喜欢金融的教授。我之前对金融有偏见,认为金融是靠独占一些有价值的信息来牟利的,做学术研究的意义不大,学金融的人都是太想挣钱了,没有个性。有一次课上,被老师说服了,那天课本上到了理论的部分,仅凭市场无套利和二叉树假设,就推出了符合理性人的理想世界的结果,简洁而优美。如果没有老师努力地强调,估计很容易像参加金融培训的人一样,把它看成建立在理性人假设的前提下。 江淳芳老师是 08 年毕业的 PhD,教“计量经济学”。期中前,讲完理论,期中后便是方法,老师用论文作为例子来讲计量方法,再让学生读论文,完成设计精妙的作业。有一次作业整整做了十几个小时,做完后理解的很透,能闭着眼把知识点串起来,大呼过瘾。此外,年轻的老师似乎更懂学生,江老师课上每每讲到高级的知识点都会延伸出去,满足同学的好奇心。 “财政学”的老师李显峰,对学生特别友好,有点把学生惯坏了的嫌疑。上交第一次课堂小测验的时候,他竟然双手接过还说谢谢,那是我第一次接触台大老师,被这小细节感动的不行。学期末,入冬了,老师还充当天气预报,提醒学生穿衣服,甚至亲自去关心感冒的同学,我在一旁看着心里暖暖的。 其他课都比较硬,根本无暇顾及老师的言行举止,记得最多的是,做一整天还做不完的周末作业。 ","date":"2017-03-06","objectID":"/2017-03-06-half-year-in-ntu/:1:2","tags":["台湾"],"title":"台大半年","uri":"/2017-03-06-half-year-in-ntu/"},{"categories":["旅行游记"],"content":"八极拳研习社 台大的社团很多,也很开放,在大陆没见过的法轮功社、SM 社、女同社都有。纳新那个周末,踩着尾巴去转了一圈,本打算加入一个国术社,结果到现场发现光国术社就有十来个,八步螳螂拳社、合气太极拳社、咏春拳社等等,最后拿了国术社团宣传单合集,晚上回公寓一个一个扫码筛选。国术不是花拳绣腿,不勤练的话是出不了成果的,所以选了一个社课较多的八极拳研习社。 八极拳社一周三次社课,一次两个小时的团练,先半小时揉功,再半小时活桩,然后分组练习拳或兵器。我平时功课紧张,常泡在图书馆,把身体坐僵,所以练拳对我来说是一件特别舒服、放松的事(其实也挺累的)。 社员多数是研究生或博士生,入社都有三五年了,相处起来很随和。周一教练会来指导一下,其余时间都是跟着学长练习。练了几年的学长跟我这种新手比,果真是有差别的。上百次练习让他们的身体开始有了变化,有的在一次两个钟头的站桩后整个后背变松了,有的能让身上的某些迟钝的关节动起来,有的能把手掌的受力传导到脚底,他们的身体都慢慢活了起来,越来越多的部位能感知到,很羡慕。教练讲过,国术不是要练肌肉,而是要练一个连贯的感觉,重新找回最自然的发力方式,我直到快学期末了才有点明白。 一开始,练完拳,请教一些技术问题后就回公寓了。后来一次和社员逛夜市聊到,社团最有趣的活动是,练完拳后大家一起聊天(经常聊到十一点)。之后试着留下来,果然有趣。教练在的时候,听教练聊国术,聊中国传统文化,聊台湾同性恋立法(当时正热);教练不在的时候,跟中文系、历史系的学长还有人类学系的学姐一起瞎聊。社员很多都读过上百本课外书,有自己的兴趣爱好,每每讲到一个节点都有人能延伸出去,席地而坐,说的爽快听的舒服。 离开台大,最不舍的就是这些一起练拳聊天的社员了,那个圈子,现在回母校偶尔会自己一个人练拳,希望练习的成果能保持住,有机会回去参加一次集训。 ","date":"2017-03-06","objectID":"/2017-03-06-half-year-in-ntu/:2:0","tags":["台湾"],"title":"台大半年","uri":"/2017-03-06-half-year-in-ntu/"},{"categories":["旅行游记"],"content":"自由之风 台湾与大陆虽然都继承了中华文化,但长期的地理隔离,两岸文化出现了细微的漂移。台湾早在八十年代便完成了经济的高速增长,四五十岁的的长者,不乏受过良好教育的,整个社会普遍普遍文明友好。在台大的一学期,几乎每天都会和台湾的朋友聊天,被自由民主的风吹一吹,难免引起一些反应。 在大陆这边,大学里师生多少有一点上下级的关系,特别是大一使加入的学生会组织,几十个部员围着几个主席和老师转。身处其中的时候可能觉得理所应当,当在台大见到不一样的可能性,一种师生极为平等的状态,顿时觉得,苹果吃到最后吃到了烂芯。 大陆的很多大学相比于台大更像一座“工厂”,特别是继承苏联体制的母校。固定的课表、标准的考试、流水线般的课程、层级明确的行政体系等等,都跟工厂一样生产着会背书的学生。而台大选课很灵活,对学生的考核全面,老师只负责科研和教学,学生事务、行政事务大多由线上系统管理。在母校,学生是绝对不敢反抗老师和领导的(大家都知道后果很严重),在台大看到不少学生自发监督校长,拉横幅抗议校领导的不良行为。 ","date":"2017-03-06","objectID":"/2017-03-06-half-year-in-ntu/:3:0","tags":["台湾"],"title":"台大半年","uri":"/2017-03-06-half-year-in-ntu/"},{"categories":["旅行游记"],"content":"附录 ","date":"2017-03-06","objectID":"/2017-03-06-half-year-in-ntu/:4:0","tags":["台湾"],"title":"台大半年","uri":"/2017-03-06-half-year-in-ntu/"},{"categories":["旅行游记"],"content":"ChangeLog 2017-03-06 初稿 ","date":"2017-03-06","objectID":"/2017-03-06-half-year-in-ntu/:5:0","tags":["台湾"],"title":"台大半年","uri":"/2017-03-06-half-year-in-ntu/"},{"categories":["成长记录"],"content":"小学到大二的阅读记录","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":" 史之为用,其利甚博,乃生人之急务,为国家之要到。——刘知几《史通》 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:0:0","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":"从泥塘里起步 小学六年级搬到新教学楼,教室刚好跟图书室同一层,我的阅读便是从这个契机开始。这是小学的第一个图书室,学校里的图书馆不允许小学生借书,有时候周末无聊会和小伙伴去逛一下,只是翻翻书,没有真的去读。寄宿生总有一大把的时间要打发,新图书室恰巧又近,自然会常去逛逛。 当时老师、同学总是提到《钢铁是怎样炼成的》,一部不能更经典的名著,到现在还能从嘴里蹦出作者名字,“奥斯特洛夫斯基”,我正经读过的第一本便是它。读的时候不了解小说背景,只是从故事中读出了“生命宝贵,人应该为此努力奋斗”,挺振奋人心。 小学阶段,另外两本正经读过的书是《牛虻》和《复活》,其他的都是用来打发时间,比如“马小跳系列”。《牛虻》很精彩,跟《钢》一样激励读者“在困境中要坚强”,我读后燃起了不少学习动力,以致于后来有段时间,每晚都会做一些数学竞赛题。六年级也是少年对爱情懵懂又开始萌动的时期,但《复活》绝不是一本好的爱情启蒙读物,少年如我读后无端地背上了罪名,走了三年的救赎路。以上三本书便是我小学阶段的阅读全传了,三本黑泥一样厚重的书抹在了最青涩的岁月上,不管怎样总算翻开了书卷。 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:1:0","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":"科技的蓝天下 初中期间上的是奥赛班,其宗旨是让乡下和小镇的学生在两年半的时间内赶上城市一流学生,紧张的学业和频繁的提前招生模拟考榨干了课余时间,阅读更是被挤到狭缝里。不过初中仅有的一些阅读,让我翻开不一样的人生篇章,弥足珍贵。 几年前,正值 IT 业的浪潮冲到一个高峰,年少的我也被“卷入”其中。初中三年搬过几次教室,好在每次都没有远离过图书室。初一有段时间特别着迷《电脑爱好者》,大概花三四个月的时间看完了二十几期,还用心爱的小笔记本做摘抄。后来又看了些《电脑报》,相比于新闻报道,我更喜欢《电脑爱好者》讲解的软件应用。正是那时候接触到“黑客”,心里尖叫着“简直酷毙了”,恨不得马上去学黑客技术。 有个周末更是心血来潮,让出校的同学去新华书店帮忙带一本关于黑客技术的书,记得书名叫《黑客攻防大师》,同学结账的时候还被店主从上到下审视了一番。假期回家后开始捣鼓《黑》,看了五分之一左右,又翻了一遍附赠光盘,纵使我已经按教程的步骤操作,结果要么卡在某一步上,要么哪里错了,反复几次之后热情便褪去了。想来可惜,一簇小火苗就这样熄灭了,要是被稍微添点油,结局可能会大有不同。 初一末了,电子产品开始流行,最流行的是用来看小说的 MP4,我也买了一个。同学看的最多的是玄幻小说,而我不甘堕落,又耐不住无聊,于是看一些无伤大雅的小说。假期回家还念念不忘 IT,往 MP4 里存了李彦宏的传记《相信中国》和李开复的传记《世界因你而不同》,这两本书都是晚上闷在被窝里看完的。书里大洋彼岸的硅谷被描述成气候宜人的科技城,上演着一个个动人的逐梦故事,让我心驰神往。我还把这种向往写在了周记本里,结果语文老师点评道,“不要想那些不可能的事”。之后,这个梦想就压在心底了,再没跟任何人提起。 初中的那些阅读本已随岁月一起流逝,无意中发现的一叠杂志勾起了一串回忆。 去年暑假回家,在放旧书的房间里发现厚厚一叠的《环球科学》杂志,有 24 本。订阅的那两年,寒暑假回家都能攒到五六本,然后一本本,从封面到背面一页页地读,假期结束之前还会再翻一翻。杂志侧面订书钉旁都裂开了,露出白色纹理,看着挺欣慰的。我是碰上了多大的好运,竟然给了自己如此光辉灿烂的科学启蒙教育。要知道《环球科学》是《Scientific American》独家授权的科普杂志,报道全球最新科学成果以及科技对人类未来商业、文化、伦理和政治等方面的深刻影响。 我翻了几本,心里五味杂陈,这些杂志被冷落的日子,也是科学梦渐渐淡去的日子,面对少年时那颗快要跳出来的好奇心,无比惭愧。几天的失眠紧随而来,那些渴望在枕头里藏了几年又重新跑了出来,一见如故,此刻两个时间结点打通了一条时空隧道。 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:2:0","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":"顺着气息去寻你 上高中之后,一路上也遇到了不少喜欢读书的小伙伴,先是同桌,受他影响养成了买书读书的习惯,后来又在他的推荐下读了《第三种猩猩》、《自私的基因》等等,把阅读往上提了一个水准;然后是女神,跟着她的脚步看了《看见》、龙应台的三本和《送你一颗子弹》;还有在读了一位同学的作文之后开始喜欢上荷西,于是读了三毛的四本散文。那是时常读到一本感兴趣的书便会顺着这股气息去寻找更多的同类。所谓的气息,总是淡淡的,随风飘荡,几年后再去捕捉,只能找到那些较独特的(还好在豆瓣记录了一些)。 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:3:0","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":"毛姆的月亮 初中除了种下科技的种子,也埋了一颗文学的种子。尽管初中课多,老师管得严,一些休闲杂志总能从天罗地网的缝隙间穿进来。像《意林》、《读者》、《格言》等杂志,一篇大概两三页,论其篇幅、价格都适合课上和课间放松娱乐,同学间互相传阅也方便。这种杂志读了不下 30 本,唯独有一篇到现在还记得大概: 一位医学生得到导师推荐去留学,上学途中为了挣船费便在船上当随船医生。船到站,少年没有下船,而是留下来继续做医生。十几年后,曾经不如他的同学都已事业有成,中年的他还是小地方的医生,但奇怪的是他生活虽拮据,目光却清澈无比。 上高中后无意中发现了故事的出处,毛姆的《月亮与六便士》,随着这股气味,还找到很多类似的故事: 毛姆: 刀锋 毛姆短篇小说精选集 其他:德米安 消失的地平线 悉达多 世俗生活,充斥着虚假与谎言,日复一日地束缚着你我,直到把我们送到死亡的那一刻。生命的意义是什么?作为这个星球唯一有智慧的生命,人类,我们如何活出人类的价值而不辜负大自然的恩赐?这些鲜活的故事告诉我,去追求心声,不管选择了什么都努力去实现,不要被世俗的目光击退,勇敢地去追求,只求一个心安。可惜高中的我,刚从乡下来到城里,只觉得世界真大,哪晓得自己喜欢什么。 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:3:1","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":"野性的呼唤 大草原上,天地苍茫,牛羊如星点遍布,狼王藏在山头后面,亮出钢锥般的牙,一场围剿和杀戮即将开始。《狼图腾》里的画面依旧能在脑海里重现,紧张激烈的情节,大草原的神秘,颠覆观念的狼故事,作者让我一点点地爱上了狼,爱上了狼的品性,勇敢、强悍、智慧、狡猾、凶残、贪婪、狂妄、野心、雄心、耐性、机敏、警觉、体力、耐力。狼不同于狗,千万年来都未能被人类驯服,狼追求自由,有自己的尊严,为了自由、生存顽强斗争到底。喜欢就想去了解更多,后来又看了三本关于狼的书。 重返狼群 :现实生活中养狼的纪实 野性的呼唤 :心在呼唤自由 白牙 :狼收起獠牙 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:3:2","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":"听他讲故事 高中时期一反常态的轻松,一周上五天,五天上白天。作为住宿生,无数个周末,没有特别的活动就会读读书。散文是很好的选择,轻松又有趣味,不同人的不同生活都记录在文字里,等待着你去发现。有时候也可以用学写作的借口去读,像汪曾祺、林清玄、季羡林的散文文笔都挺好的。这些书多是从图书馆借的,只找到当时有在豆瓣记录的一些: 龙应台:目送 亲爱的安德烈 孩子你慢慢来 三毛:撒哈拉的故事 送你一匹马 温柔的夜 梦里花落知多少 其他:文化苦旅 季羡林散文精选 送你一颗子弹 幸福的七种颜色 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:3:3","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":"懂一点事 像很多青少年一样,我也会去寻找自己在这颗星球上的位置,去了解我的国家,我生长的土地。可能很小就一个人在语言文化都跟家乡有差异的地方上学的缘故,成长中除了遇到身心问题,还多了一个归属问题。这些问题就像数学竞赛题,有时候挤破头脑也没有半点思路,不得不去书中翻解答,即便有些不能解决,但至少知道了此题超纲。 了解自身: 孤独六讲 生活十讲 蒙田随笔精选 了解周围:城市的胜利 公正 激荡三十年(上) 许倬云说历史:台湾四百年 常识 看见 国家竞争力 浪潮之巅 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:3:4","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":"从小说认识社会 了解周围世界另一个途经是读关于它的小说,了解来源于现实的虚拟小说人物。印象最深刻的一本是《国家干部》,暑假在家花了两天半的时间才读完,一是因为它太厚,再是常被主人公感动得两眼汪汪,影响视线。我可能是一个比较反常的 90 后,还有着为人民服务的理想,脑子里还经常构想着区域建设,唉,估计是看过的那些地图集惹的祸。 活着 边城 蛙 穆斯林的葬礼 国家干部 1988:我想和这个世界谈谈 平凡的世界(全三册) 散文中国 黄金时代 围城 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:3:5","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":"其他 最后就用一个“其他”来收纳那些零散在历史长河里,扫一眼还能看得见,而且看见了想捡起来瞧瞧的书。 西方小说:因为不喜欢西方贵族生活,所以对很多西方小说提不起兴趣。 老人与海 麦田里的守望者 等待野蛮人 质数的孤独 世界十大文豪 源泉 日本小说:含蓄又色情,不过还是蛮喜欢课本里的《清兵卫与葫芦》 挪威的森林 雪国 历史: 全球通史(第 7 版 上册) 中国近代史 中国大历史 万历十五年 科幻:只记得最经典的了 三体:I II Ⅲ 基地三部曲:基地 第二基地 基地与帝国 一些标示理科生身份的书: 万物简史 上帝掷骰子吗? 数学之美 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:3:6","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":"终身学习 通过贪婪地阅读成为一个终身学习者,培养自己的好奇心,争取每天都变得更聪明一点。——查理·芒格 以上叨叨叨讲了这么多,时间跨度从小学五六年级到大二上(作者现在大三),真要问对我有什么用,我会回答,“这段阅读史让我养成了阅读的习惯,成为一个潜在的终身学习者”。终身学习,不断提高自己,在我们这个充满不确定的时代显得格外重要。未来我们除了跟人类抢饭碗,还要跟机器人抢饭碗,如果不想被机器人追着前进,那最好就是自己养成阅读的习惯,习惯地学习一些分外的知识来充实自己。 怎样养成阅读的习惯,我的建议是先阅读一些自己喜欢的领域,不管跟自己的专业或者工作相不相关。等到当你休息时,也会选择去看本书而不是打游戏或刷剧,你可能会发现阅读是一件一举多得、力量无穷的事情;你之后还会发现一些更高级的阅读方法,像主题阅读、全局认识、卡片笔记等等,你说不定会兴奋地对自己说,“嘿,人生终于要走上正轨了”。 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:4:0","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["成长记录"],"content":"ChangeLog 2018-05-25 拆分过长段落、删除多余的“的” 2017-04-30 删除主题阅读、增加结尾 2017-04-05 增加 统计学、如何学习 2017-02-06 初稿 ","date":"2017-02-06","objectID":"/2017-02-06-reading-history-1/:5:0","tags":["阅读"],"title":"一个人的阅读史(一)","uri":"/2017-02-06-reading-history-1/"},{"categories":["开心一刻"],"content":"《3 Idiots》的大陆版翻译是《三傻大闹宝莱坞》,这个俗了点的译名破坏了影片的良好形象(小小吐槽一下,但确实让大陆的很多观众错过了它)。《3 idiots》看了五遍,是该写一篇影评。","date":"2016-12-28","objectID":"/2016-12-28-3-idiots/","tags":["电影"],"title":"看了五遍 3 Idiots","uri":"/2016-12-28-3-idiots/"},{"categories":["开心一刻"],"content":"喜剧表色 《3 Idiots》首先是一部出色的喜剧,理想与现实相交错,还带有一点辛酸。影片在法汉挑起右眼的一刻一扫之前的沉闷和紧张,正式进入喜剧的主调。 手写告状信和被迫履行诺言刮掉胡子埋下伏笔。 台词更是经典,还体现了理工科的特色。 兰乔电击学长后的画外音,“盐水具有极强的导电性,初二物理知识,我们都学过,只有他会应用。” 法汉看完考试成绩后的画外音,“人类行为学第一课:朋友没及格,你觉得悲伤;朋友考第一,你觉得更悲伤。” 病毒的开学演讲,“噪鹃从来不自己筑巢,他只在别人的巢里下蛋,要孵蛋的时候他们会怎样?他们会把其他的蛋从巢里挤出去,竞争结束了,他们的生命从谋杀开始,这就是大自然——要么竞争,要么死……” 兰乔教病毒怎么上课时,“你们都陷入比赛中,就算你是第一,这种方式又有什么用?你的知识会增长吗?不会,增长的只有压力。这里是大学,不是高压锅……” 法汉在拉杜醒后的独白,“1000 克秋葵,500 克免费奶油就能叫醒他,为什么牺牲我?” 演员的演技也是一大亮点,挑这部影片比较独特的层出不穷的模仿片段说一说。严肃的教授模仿兰乔说的 machine 定义,“up down, up down”;兰乔提起裤子翻起眼睛模仿病毒,“生活是一场赛跑,你跑不快就会是被打破的蛋”。 ","date":"2016-12-28","objectID":"/2016-12-28-3-idiots/:1:0","tags":["电影"],"title":"看了五遍 3 Idiots","uri":"/2016-12-28-3-idiots/"},{"categories":["开心一刻"],"content":"拍摄手法 镜头和背景音乐的应用也是花样百出。台灯跳动的画面很好的掩盖了拉杜跳楼的血腥场面,还有黑白劣质画面让贫富差距这个社会现象不太刺眼。随着剧情频繁切换的背景音乐加剧观众内心的跌宕起伏,欢快的歌舞插入的恰到好处,大大削减了教育制度等多种社会问题的沉重感。 ","date":"2016-12-28","objectID":"/2016-12-28-3-idiots/:2:0","tags":["电影"],"title":"看了五遍 3 Idiots","uri":"/2016-12-28-3-idiots/"},{"categories":["开心一刻"],"content":"但在下每看每哭 不得不对这部电影折服,在整场欢声不断的观影中,在下竟然不经意蹦出了好几滴眼泪。 第一滴眼泪落在了凄美的歌声中,同样热爱机械的乔伊因未能按时完成新奇的毕业设计而毕不了业,个人的激情、创造力受到教育体制的打压,个人只能向体制屈服,不能为自己而活,哪怕一次。 影片中的背景音和人物的哭泣最是催情,拉杜在跳楼前内心的挣扎又让在下眼眶一湿。背叛最好的朋友还是让家人绝望,两难之下,拉杜选择了逃避,自杀。普通人在生活的重压下,稍微犯一个错就可能会带来灾难,在下很是同情这个被当做棋子的受害者。 让在下彻底放声哭泣的是法汉父子的对白。一个儿子努力地请求父亲让自己做一次选择,去学自己热爱的摄影,每一句都讲到在下的心底里,鼻子一阵一阵的酸。慈爱的母亲在一旁看着自己最爱的两个男人,自己作为妻子只能服从丈夫合理的决定,但也不想看到儿子不快乐,只能为儿子无奈地哭泣。 ","date":"2016-12-28","objectID":"/2016-12-28-3-idiots/:3:0","tags":["电影"],"title":"看了五遍 3 Idiots","uri":"/2016-12-28-3-idiots/"},{"categories":["开心一刻"],"content":"阿米尔汗特色——揭露社会问题 ","date":"2016-12-28","objectID":"/2016-12-28-3-idiots/:4:0","tags":["电影"],"title":"看了五遍 3 Idiots","uri":"/2016-12-28-3-idiots/"},{"categories":["开心一刻"],"content":"教育制度问题 影片利用夸张的手法和丑化了的“消音器”形象讽刺了填鸭式的大学教育方式,其实中国也是如此,大学里的许多考试都是靠记忆,甚至老师会给学生发一套考试题库。相反,追求个性发展的乔伊只能落个毕不了业的下场,最后在绝望中结束了生命。 ","date":"2016-12-28","objectID":"/2016-12-28-3-idiots/:4:1","tags":["电影"],"title":"看了五遍 3 Idiots","uri":"/2016-12-28-3-idiots/"},{"categories":["开心一刻"],"content":"贫富差距问题 影片中的角色以大学生为主,大学时期的一个特点就是阶级间交流频繁,各个阶级的人群汇集在一起,同时酝酿着阶级的跃迁。如果将影片中的人物在中国社会的九大阶级(呈金字塔形)中对号入座会得到以下结果: 阶级 人物 1 级:在任委员、退休常委 2 级:实权省部级干部 3 级:行业或地区体制精英中的精英 病毒、大科学家兰乔、假兰乔 4 级:行业或地区体制精英 消音器、苏哈斯 5 级:行业或地区体制中的优秀者 法汉、拉杜 6 级:行业或地区体制中的普通人物,名牌大学生研究生毕业生 7 级:普通企业工人、富农 法汉、消音器、乡村教师兰乔 8 级:农民工、普通农民 乔伊、兰乔 9 级:没有独立生存能力 拉杜 PS:加黑为十年后;123 为上层阶级,456 为中产阶级,789 为草根阶级 现实生活中真兰乔基本是碰不到的,假兰乔则是世代富贵的地区贵族。现实生活更多的是没有被丑化的消音器、法汉、拉杜、乔伊和乡村教师版的兰乔。 如果把大学当作病毒所说的竞争来分析的话,那么未被丑化的消音器就是获胜的普通人代表,法汉是迫于父亲压力的误入者,拉杜是背负整个家庭存亡责任的劣势选手(法汉和拉杜都是在伟大的兰乔帮助下才没被淘汰的幸运儿),乔伊是竞争中壮烈牺牲的勇士,乡村教师兰乔是不遵守竞争规则——金钱逻辑,自有一套理想逻辑的局外人。观众大可比较一下自己更像谁,尽力做到属于自己的比赛中优雅的胜利者,至少不被淘汰。 此外,被影片欢快的气氛抹淡的还有高校自杀率、拜金主义、医疗问题等等社会症结。 ","date":"2016-12-28","objectID":"/2016-12-28-3-idiots/:4:2","tags":["电影"],"title":"看了五遍 3 Idiots","uri":"/2016-12-28-3-idiots/"},{"categories":["开心一刻"],"content":"ChangeLog 2016-12-28 初稿 ","date":"2016-12-28","objectID":"/2016-12-28-3-idiots/:5:0","tags":["电影"],"title":"看了五遍 3 Idiots","uri":"/2016-12-28-3-idiots/"},{"categories":["读书笔记"],"content":"此书全名是《金字塔原理,思考、写作和解决问题的逻辑》,书名看似高大上,小编也是被它忽悠了。正如书名 XXX 原理一样,书的内容也很枯燥无味,小编强打着精神把前三篇看完了,希望能在这本极负盛名的书中能再发现一点金子(最后一篇是讲形式上的金字塔结构,不如一般的设计书介绍的好)。虽然书中的例子需要背景知识,方法需要不断的练习,但全书的内容可以分为思维、写作和解决问题三块,用一张纸就可以讲明白。 ","date":"2016-09-11","objectID":"/2016-09-11-minto-pyramid-principle/:0:0","tags":["笛卡尔信徒"],"title":"明托金字塔原理","uri":"/2016-09-11-minto-pyramid-principle/"},{"categories":["读书笔记"],"content":"思维 书中介绍的在金字塔原理下形成的思维方式,实际上就是小编认为在自然情况下最容易形成的一种思维方式,也是最容易接受的一种思维方式,说白了就是总分结构的思维方式。可能有些人已经养成了这种思维习惯,那无需再阅读了;有些人有时候会无意识地运用这种思维方式但有时又懒于归纳整理,需要明确一下遵从金字塔原理的思维方式。 小编阅读之后最先意识到的是这种思维方式有助于记忆。书中提到人类记忆平行条目的极限为 7±2,也就是说一般人很难记住接连六七条的内容。利用金字塔原理可以将过于繁多的条目进行归纳分类,使得每一母条目下的子条目不超过四到五个,且平行条目之间按照一定的顺序排列。 母条目和子条目之间具有逻辑关系,子条目或是通过演绎(子条目为一系列推理)得出母条目,或是通过归纳(将相似的思维观点或相关的行动组织在一起)得出母条目,通常来说归纳比演绎更利于读者理解。平行条目之间需要按照一定的顺序排列,一般有时间流程顺序、结构关系顺序和重要性顺序。 ","date":"2016-09-11","objectID":"/2016-09-11-minto-pyramid-principle/:1:0","tags":["笛卡尔信徒"],"title":"明托金字塔原理","uri":"/2016-09-11-minto-pyramid-principle/"},{"categories":["读书笔记"],"content":"写作 本书写作部分的原理与思维部分大同小异。为了让读者理解,最好先告诉读者一个概括性的结论,然后再有规律地分条详细说明,既金字塔结构。 值得一提的是写作部分的序言,本书介绍了一种包含情境、冲突、问题和答案四部分的写法。在序言部分,作者需要说明有关主题的情境,将读者的注意力吸引到文章中来,冲突由情境发展而来,让读者自然而然地提出问题,然后给出作者自己的答案,吸引读者继续阅读。当然这四部分可以根据个人的习惯组合。 而文章的主体部分,即分条详细说明的部分,需要作者独到的见解,让读者眼前一亮。 ","date":"2016-09-11","objectID":"/2016-09-11-minto-pyramid-principle/:2:0","tags":["笛卡尔信徒"],"title":"明托金字塔原理","uri":"/2016-09-11-minto-pyramid-principle/"},{"categories":["读书笔记"],"content":"解决问题 解决问题首先要界定问题,也就是问题是什么。可以根据以下界定问题的框架确定问题 非期望结果是什么? 期望结果是什么? 解决方案是什么?如何执行? 解决方案不可行要怎么做? 可行的解决方案中最优的方案是什么? 至于如何解决问题需要具体问题具体分析,书中提到了结构化分析的方法。结构化分析方法给出一组帮助系统分析人员产生功能规约的原理与技术。它一般利用图形表达用户需求,使用的手段主要有数据流图、数据字典、结构化语言、判定表以及判定树等,读者可以自行查阅。 ","date":"2016-09-11","objectID":"/2016-09-11-minto-pyramid-principle/:3:0","tags":["笛卡尔信徒"],"title":"明托金字塔原理","uri":"/2016-09-11-minto-pyramid-principle/"},{"categories":["读书笔记"],"content":"ChangeLog 2016-09-11 初稿 ","date":"2016-09-11","objectID":"/2016-09-11-minto-pyramid-principle/:4:0","tags":["笛卡尔信徒"],"title":"明托金字塔原理","uri":"/2016-09-11-minto-pyramid-principle/"},{"categories":["读书笔记"],"content":"万历十五年,平平淡淡,毫不起眼的一年,却为最后一个汉人统治王朝的衰败拉开了序幕。 本书共七章,大致可以分为三部分:皇帝、首辅和突出人物。 ","date":"2016-02-16","objectID":"/2016-02-16-1587/:0:0","tags":["历史"],"title":"制度的得利益者","uri":"/2016-02-16-1587/"},{"categories":["读书笔记"],"content":"万历皇帝 从小接受正规的太学教育,以冯保和张居正为主要老师,学习经史、礼仪。九岁登基,可以说是完全在文官体制中长大。成年后,万历皇帝励精图治,想有一番作为,但几次与文官对抗之后,失望不已,自己家事被臣子们粗暴干预,也厌倦了在各种典礼上充当木偶,于是怠政三十多年,使明王朝再无可能复兴。 ","date":"2016-02-16","objectID":"/2016-02-16-1587/:1:0","tags":["历史"],"title":"制度的得利益者","uri":"/2016-02-16-1587/"},{"categories":["读书笔记"],"content":"首辅 万历皇帝的第一任首辅是他的老师张居正。张居正一心想重整赋税,丈量全国田地。虽反对者众多,但以他的名望和权利,也许可能改革成功。天不随人愿,改革刚开始,他便抱恨终天了。 后一位首辅是申时行,善于调和君臣矛盾,使君臣相妥协。他深知帝国有一个特点:一项政策能否付诸实施及成败,全靠看它与所有文官共同的习惯是否相安勿扰,否则理论上再完美也不过是空中楼阁,国家最大的问题就是文官。 ","date":"2016-02-16","objectID":"/2016-02-16-1587/:2:0","tags":["历史"],"title":"制度的得利益者","uri":"/2016-02-16-1587/"},{"categories":["读书笔记"],"content":"文官 为文官者,通常是父祖节衣缩食,寡母自我牺牲,贤妻茹苦含辛,外加个人的聪明和努力而来。 根据家族背景和个人财富欲望,分别可以分为两种:家境贫寒和富裕、用贪和不用贪。按照向揽财致富的社会风气投降程度可分为:大多数在似合法又似非法的灰色地带取得部分额外收入,即保持生活水平又无损于情操;有相当数量的文官搜刮自肥,声名狼藉;有一部分则极端清高自负,一介不苟取于人。 文官如此划归,造成了文官之间的不能和谐,“乡谊”、“年谊”、“姻谊”等小团体又加剧了这种不和谐。文官虽自称公仆,实系主人,又阴又阳。帝国不是以法律治理天下臣民,而是以“四书”中的伦理道德作为主宰,即便贵为皇帝,其全部言行也都要符合道德规范,而解释权却分属文官。 治国关键不是去解决繁琐问题,而是防止坏事发生。有时文官会以正直作为商品,骗取声望。技术上的争端,一经发展,就可以升级扩大为道德问题,胜利者及失败者也就相应被认为至善或极恶。张居正自信过度,不肯对事实做必要的让步,太理想,不理会官场的阴,死后惨招文官讨伐。张一案结束之后,张欣赏的官员下贬,张不喜欢的官员升迁。 ","date":"2016-02-16","objectID":"/2016-02-16-1587/:3:0","tags":["历史"],"title":"制度的得利益者","uri":"/2016-02-16-1587/"},{"categories":["读书笔记"],"content":"突出人物 ","date":"2016-02-16","objectID":"/2016-02-16-1587/:4:0","tags":["历史"],"title":"制度的得利益者","uri":"/2016-02-16-1587/"},{"categories":["读书笔记"],"content":"古怪模范官僚——海瑞 海瑞奉行传统儒家道德,是当时全国模范官员,但终没看透官场的阴阳之道,履任现职,一身抱负无法施展。文官个体在文官群体中的力量微不足道,不能改变整个体制。海瑞不认为治国的根本大计,是在上层悬挂一个抽象的至善至美的道德标准,而责成下面的人在可能范围内照办,行不通就打折扣。海瑞尊重法律,按照规定的最高限度执行,体现了有教养的读书人,服务于公众而牺牲自我的精神。君子何以有志于做官:无非出于恻隐和义愤。 ","date":"2016-02-16","objectID":"/2016-02-16-1587/:4:1","tags":["历史"],"title":"制度的得利益者","uri":"/2016-02-16-1587/"},{"categories":["读书笔记"],"content":"孤独将领——戚继光 将领在明朝地位极低。其着眼于取得实效而不避极端:冲锋陷阵,要求集中全力,对敌人的重点作猛烈打击;退守防御,考虑的是地形险要和工事完善,如不可守就断然放弃;战斗胜利,就一心扩张战果,不为其他问题犹豫。他们把自己和部下的生命视为赌场筹码,必要时孤注一掷。而大多数文官则以中庸之道为处世原则,标榜稳健和平。 武人退役后又会与社会格格不入,人们重视安详的仪表,华丽的文辞,口若悬河的辩才,以及圆通无碍的机智,武人所培养的是严格和精确,在和平社会无用武之地。 戚继光和谭纶、张居正的关系密切,使他有机会施展才华,在蓟州任总兵十五年间,初步形成自己的战术——鸳鸯阵。但由于张居正一案,他只能告老还乡,从此明王朝错过了强兵抵御外敌的最后机会。 ","date":"2016-02-16","objectID":"/2016-02-16-1587/:4:2","tags":["历史"],"title":"制度的得利益者","uri":"/2016-02-16-1587/"},{"categories":["读书笔记"],"content":"自相冲突哲学家——李贽 李贽继承心学主张,试图改革儒家学说,如成功可以为我中华点亮一丝人性解放的光芒。可惜他终不敌保守的腐朽众儒,被捕入狱,自尽而亡。李贽一生承受着家族责任带来的压力,仕途不顺,有段时间还靠救济度日,可悲可叹。 ","date":"2016-02-16","objectID":"/2016-02-16-1587/:4:3","tags":["历史"],"title":"制度的得利益者","uri":"/2016-02-16-1587/"},{"categories":["读书笔记"],"content":"制度的得利益者 明王朝以「仁」治天下的立国精神已耗尽了生命力,作者认为,单纯以意识形态约束子民,用道德代替法律的制度,不但将庞大帝国拽入深渊,还使改革者身败名裂、壮志未酬。而在下认为,以当时生产力水平,法律即使完备,其效果未必胜过约法三章。而意识形态的强化,是既得利益者,即文官群体,逐渐巩固自身利益的结果。 每个制度都会有其得利群体,明朝的得利群体是文官群体。文官群体会为了维护自身和家族利益出卖国家和皇家利益,少数逆潮流者改变不了时局。拥有至高个体权利的皇帝,也只能搬出太监去与文官抗衡,能打破这一系统的却是清兵入关。 ","date":"2016-02-16","objectID":"/2016-02-16-1587/:5:0","tags":["历史"],"title":"制度的得利益者","uri":"/2016-02-16-1587/"},{"categories":["读书笔记"],"content":"ChangeLog 2016-02-16 初稿 2019-07-13 润笔 ","date":"2016-02-16","objectID":"/2016-02-16-1587/:6:0","tags":["历史"],"title":"制度的得利益者","uri":"/2016-02-16-1587/"}]