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

推荐订阅源

The GitHub Blog
The GitHub Blog
博客园 - 三生石上(FineUI控件)
V
V2EX
博客园 - 司徒正美
小众软件
小众软件
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Tailwind CSS Blog
Last Week in AI
Last Week in AI
雷峰网
雷峰网
月光博客
月光博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Apple Machine Learning Research
Apple Machine Learning Research
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
S
SegmentFault 最新的问题
美团技术团队
Hugging Face - Blog
Hugging Face - Blog
WordPress大学
WordPress大学
宝玉的分享
宝玉的分享
爱范儿
爱范儿
博客园 - 聂微东
量子位
J
Java Code Geeks
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Vercel News
Vercel News

jdhao's digital space

Conversion between base64 and OpenCV or PIL Image 腾讯云对象存储博客图床开启 CDN 加速(不需要购买额外域名) Search and Replace in Multiple Files in Vim/Neovim Change Table Column Width in LaTeX Image or Table Side by Side in LaTeX LaTeX 并排显示图像或表格 Firenvim: Neovim inside Your Browser Content inside HTML tags missing in Latest Hugo? Creating Markdown Front Matter with Ultisnips Labelme JSON 标注格式转 voc XML 格式 Nifty Nvim Techniques That Make My Life Easier -- Series 6 macOS 下如何为视频制作字幕 Running Command Asynchronously inside Neovim Resolving Merge Conflict after Git Stash Pop Pylint: command not found? A Hands-on Experience with Neovim's Built-in LSP Support How to Convert PDF to Images with Imagemagick 互联网上常用缩略语集锦 File Backup in Neovim Converting PDF Pages to Images with Poppler Nifty Nvim Techniques That Make My Life Easier -- Series 5 Neovim Configuration for System-wide Use How to sort a list of tuple or list in Python -- lambda or itemgetter? Building A Vim Statusline from Scratch 人类第一颗原子弹爆炸始末 Distributed Training in PyTorch with Horovod Learning Expect Programming Essential Knowledge about SSH Nifty LaTeX Techniques -- Series 1 更改 Adsense 邮寄地址,重新寄送 PIN
如何高效使用搜索引擎解决技术问题
2020-05-09 · 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,知道这个以后,就可以比较轻松的找到相关的设置了。