惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

SecWiki News
SecWiki News
I
InfoQ
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
博客园 - Franky
T
Tailwind CSS Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
量子位
博客园_首页
罗磊的独立博客
V
V2EX
李成银的技术随笔
大猫的无限游戏
大猫的无限游戏
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
True Tiger Recordings
Vercel News
Vercel News
Cyberwarzone
Cyberwarzone
Cisco Talos Blog
Cisco Talos Blog
F
Fox-IT International blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
M
Microsoft Research Blog - Microsoft Research
Know Your Adversary
Know Your Adversary
爱范儿
爱范儿
The Register - Security
The Register - Security
G
Google Developers Blog
The Hacker News
The Hacker News
Malwarebytes
Malwarebytes
S
Securelist
博客园 - 三生石上(FineUI控件)
Jina AI
Jina AI
T
Threat Research - Cisco Blogs
T
The Exploit Database - CXSecurity.com
S
SegmentFault 最新的问题
博客园 - 叶小钗
F
Fortinet All Blogs
Apple Machine Learning Research
Apple Machine Learning Research
宝玉的分享
宝玉的分享
博客园 - 聂微东
T
Threatpost
博客园 - 【当耐特】
D
Docker
P
Privacy & Cybersecurity Law Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
G
GRAHAM CLULEY
V
Visual Studio Blog
C
Cisco Blogs
IT之家
IT之家
S
Security Archives - TechRepublic
Latest news
Latest news
阮一峰的网络日志
阮一峰的网络日志

jdhao's digital space

Manage uv.lock file with Renovate Set up Python Provider for Neovim Ripgrep Config to Search Hidden Files Pre-commit Setup for Your Project I read the nvim v0.12 release note so you don't have to Return Different Values for Each Call of A Mock Migrate Python Project from Pip to Uv 德语常用不规则动词 葱油鸡腿制作 Check Trailing White Spaces in Your Project 菜谱:茄子肉丁 object vs nested type in data mapping in Elasticsearch Node, Index, Shard in Elasticsearch Logging setup for Pytest Select fields in Elasticsearch: _source, fields and stored_fields 中式葱花饼制作 菜谱: 凉拌苤蓝(卜留克/kohlrabi) 我也有高考 PTSD Garmin Course Syncing Not Working? Prevent Accidental Index Delete in Elasticsearch How to Import GPX File into Garmin Watch Python system PATH issues When We Use Pytest 菜谱:泰式打抛牛肉 菜谱:烤箱羊肉串 How to Filter Warnings in Python/pytest 家常烤箱烤鸡腿 Comparison between Several Desktop Speakers How to Use LuaRocks Package in Neovim Macbook 外接显示器 家常萝卜炖羊排 Run the Job Immediately after Starting Scheduler in Python APScheduler Retry for Google Cloud Client 菜谱:土豆金枪鱼沙拉 菜谱:椰香咖喱鸡 凉拌绿豆宽粉制作 Make Python logging Work in GCP Liveness and Readiness Check in Kubernetes Notes on Using GCP Logging 西班牙土豆饼制作 Elasticsearch Version Conflict Error How to Use the Elasticsearch task API Speed up document indexing in Elasticsearch via bulk indexing Index refresh issue in Elasticsearch Google Cloud Storage Usage 家常煎羊排制作 凉拌茄子制作 Configure Python logging with dictConfig Debugging Wezterm Issues Black Formatter Setup for Python Project Git line ending config Garmin Forerunner 965 Essential Tips and Setups How to Download Files from Google Cloud Storage in the Databricks Workspace Notebook Databricks Cli Usage Working with Databricks Workspace Files 手抓羊肉饭制作 Databricks Init Scripts Using Virutal Environment in Python with venv File Systems in Databricks LATERAL VIEW EXPLODE in Spark 菜谱:麻婆豆腐 在德国做台湾卤肉饭 FastAPI testing and OpenAPI doc generation Change Timezone in Databricks Spark How to Profile Your Python Script/Module 菜谱:茄子肉沫 Migrating from Packer.nvim to Lazy.nvim How to Extract PDF file on macOS How to Deploy Fastapi Application with Docker Nerdfont Icon Missing after Wezterm Upgrade Pylsp setup for Neovim in 2023 How to Parse Query Param With Multiple Values in FastAPI 菜谱:土豆胡萝卜烧牛肉 Zsh Startup Files in macOS PATH Variable Changed inside Tmux on macOS? Work with JSON File in Neovim Running/importing Python code/module in Databricks Agile and Scrum 菜谱:凉拌牛肉 Awesome Command Line Tools Written in Rust How to get or set Databricks spark configuration Set Up German Version macOS Add A Custom Search Engine for Vimium 中国大陆小米手机如何使用 Google Pay 春节回乡记 滇西之行 2023 贵阳行 2023 程序员海外工作---语言篇 2023 长沙行 2023 西安行 德国工签申请指南 2022 年博客回顾 感染 omicron 记录 How to Override Default Options in Neovim Variadic Arguments in Lua How to Enable Method Autocompletion for OpenCV How to Read Local CSV File to Table in MySQL I read the nvim v0.8 release note so you do not have to Creating A Trigger in PostgreSQL Cost of Living in Shenzhen You Do Not Need a Plugin for This Feature
如何高效使用搜索引擎解决技术问题
2020-05-08 · via jdhao's digital space

之前感叹过使用中文搜索经常找不到想要的结果,这篇文章总结我对于如何有效搜索的一些想法。

使用英文搜索#

之所以使用英文搜索,一方面因为中文互联网世界的信息很多都是复制粘贴别处的文章,或者虽然是原创,写的语焉不详,没有自己的总结和分析,有价值的信息太少。另外,由于谷歌退出了中国,目前谷歌对中文搜索服务的质量似乎已经不太关注了,使用中文在谷歌搜索,经常会看到很多 SEO 网站 (这种网站也被称为“内容农场”,content farm),像什么 hotbak,兰州养生网,谷歌也没有采取任何行动打击这种辣鸡网站,所以现在谷歌的中文搜索体验也不是很好了。

使用长句子搜索还是关键词搜索?#

有的人用中文搜索问题,喜欢用自然语言描述自己的问题,全部输入到搜索框,以“禁止 vscode 按下点自动补全”为例,有的人可能会直接输入下面的查询语句

怎么禁止在 vscode 里面按下键盘上的点自动补全?

一般来说,输入一句话相对于输入关键词查找,得到的相关结果会更少,因为一句话一般会包含一些没有信息含量的词语。虽然谷歌如何使用这句话中的词语很难有一个确定的答案,但是搜索引擎在匹配的时候肯定会考虑这些无用的词语,这样其实暗中降低了找到有用信息的概率。最好使用比较简短的关键词,或者关键词再加简短的不完整语句,例如,要给一个 Python list 的每个元素加上 index 转为 tuple,可以用下面的查询

python turn list item to indexed tuple

没必要使用完整但冗长语句查询

how do I turn a list item to an indexed tuple in Python?

另外,保证自己的关键词比较通用(也就是遇到问题大家都会用的一些词语),例如右键菜单相关的问题,context menu 就是一个必要的词语。如果想要精确匹配,就用比较多的关键词缩小候选范围,反之就可以用较少的关键词。

这里有一个例外,就是搜索错误,例如运行 python 代码,出现一个错误,程序打印了许多 stacktrace。这时候可以直接把异常复制过来搜索相关问题,找到解决方案。但是也不能复制过多无用的信息,例如,如果是自己的写的代码模块报错,文件名,第几行等信息,就不用复制,这些信息不是通用的,如果加入搜索查询中,反而会导致匹配的网页减少,降低找到答案的可能性。

如何确定搜索关键词?#

不经常使用英语的人,在搜索的时候遇到的很大的一个挑战,就是面对一个想要解决的问题,不知道用什么英语关键词来搜索,思维还是中式的。好的关键词很重要,如果关键词不对,就可能错过要找的东西。

我认为比较好的方式,是先想清楚我们到底想要问什么问题,特别是对于技术问题,问题发生的地方,现象是什么,例如我之前遇到的鼠标右键菜单卡顿的问题,右键菜单,发生的地方是文件管理器,系统是 windows,现象是卡顿,有了这些关键信息,很容易提出搜索词: windowsfile explorercontext menuhangs。根据这些检索词,从返回的结果中就能够找到满意的答案,如果少了关键词,结果差别很大。

另外,有时候一个检索词可能有近义词,如果这个检索词搜出来的结果不理想,可以换一个近义词试试。例如想要表达「无响应」,你可以说 hangs,也可以说 freezes。再比如,你想要禁止某个东西,可以说 prevent something from doing something,也可以说 disable something。换一个检索词或者说法可能就柳暗花明了!

积累专业相关英语词汇#

使用英语搜索,一个需要长期培养的能力是熟练掌握中文和英文的对应关系,例如,文件浏览器无响应,那么我们要知道,“文件浏览器"用英语怎么说,“无响应"怎么表达,无响应可以说 “hangs” 或 “freezes”,右键菜单,我们要知道它的英文是 “context menu”;再比如我们想配置 Vim 的自动补全 (Auto completion)功能,那么我们得知道"自动补全"用英语怎么来说。这些词语有的是没办法从字面翻译的,或者从字面翻译比较蹩脚,我们必须知道固定的说法,不能用 chinglish 或者机翻,否则搜索出来的结果也不好。平时注意积累本领域常用的中文词汇对应的英语词汇,搜索的时候就不会写不出检索词。

递进式检索–从搜索结果中寻找蛛丝马迹#

有的时候,我们遇到了一个问题,如果对这个领域比较陌生,我们甚至不知道用什么关键词来搜索,不知道关键词,就搜不到有用的内容,搜不到有用的内容,就学不到相关的关键词,陷入了一种死循环。

这个时候可以先尽量写出自己认为正确的检索词,或者可能找到相关答案的检索词,采用旁敲侧击的方式来解决,大量翻阅返回的结果,这些返回的网页中,可能就包含我们需要的概念对应的专业词汇。对于复杂的问题,可能需要根据搜索返回的结果以及自己的理解,一步步优化自己的检索词,经过多个来回,才能找到自己想要的答案。

例如,我们看到别人在视频中使用 Vim 的命令行模式时,可以使用 Tab 来补全命令的参数或者补全命令,这个需要进行设置才能生效或者达到自己需要的效果,但是我们不知道应该设置哪个选项,可以使用初步的检索词

vim Tab Completion Command line

然后从返回结果找到这个页面,进而知道有两个选项控制 vim 在命令行的自动补全功能,分别是 wildmenu 和 wildmode,知道这个以后,就可以比较轻松的找到相关的设置了。