Think like google search — 如何有效率的搜尋?

Shanpig
Aiworks
Published in
7 min readNov 30, 2021

身在網路世界,資訊來源比人類還多的時代,對於資訊的獲取、分析、了解,比什麼都還來得重要。龐大的資訊海堆放在網路世界裡,而我們能夠用來從這之中擷取知識的最主要工具,就是一個好的搜尋引擎。

在這裡,我想分享一下我使用搜尋引擎的一些想法。

身為一個工程師,對於搜尋引擎我們並不陌生。在工作中,我們時常會面對許多的問題,有些甚至完全不在我們的知識範圍內,此時我們可能會仰賴同事、主管、或是社群上其他人的力量,來得到解答。

但總有一時找不到人,或其他人無能為力的時候。此時,身為解決問題的人,只好自己透過網路來找尋解答。然而我們的時間有限,面對的問題卻是千奇百怪。在這樣的情況下,怎麼提升搜尋的效率,就會是影響我們工作能力的關鍵。

何謂效率?

效率,對我而言,並不是在最短的時間內,找到某個資訊這麼簡單。

首先,你不一定知道想要的資訊是什麼。

其二,你想找的,或是你找到的資訊,不一定真的適合解決你的問題。

最後,結束搜尋的當下,你已經放棄了延伸探索、觸類旁通的機會。

所以怎麼樣的搜尋方式,才是真正的有效率呢?

用最清楚的方式定義問題,一邊整理思緒,一邊蒐集資訊,

再利用這些資訊,整理出更明確的解決方案或解答。

這個過程也許極快,也許極慢,也許需要花一兩個月,甚至更久的時間,只為了弄懂一個知識點,或是解決一個問題,但在這個過程中,你已經得到了比結果更多的資訊。

How?

就我自己的經驗,大致上可以總結出三個基本思路。這些思考模式並不是步驟,而是協助你在使用搜尋引擎時,可以更加有效率的概念性思維。

  1. 尋找關鍵字
  2. 縮放範圍
  3. 跳躍思考

其實光從文字上應該就很好理解。但我們可以用一個更具體的例子,來展示這些思路為何能夠提升搜尋的效率。

問題

嗨 我想問問在 vue3 環境開發中,dev 和 production 的 image 和 font path 在 server 上會是不同的。

在開發中,我們能怎樣處理這一塊呀?在 image path 我有想到 我能用 NODE_ENV 然後在 html img tag 裡做 condition …

問題參考某臉書社團貼文,內容經過改編,因此跟原本的問題是不一樣的。

思路一:尋找關鍵字

在這句話中,主要的關鍵字有:

  • vue3
  • dev 和 production
  • image path、font path
  • server
  • 不同

那麼我們應該如何用搜尋引擎得到解答呢?一般來說,也許我們可以:

vue3 dev production image path font path server different?

把關鍵字全部一股腦的填上,就可以直接找到答案了。然而,這樣其實並不是最有效率的搜尋方式。每一個填入搜尋框的單詞,都是一個 filter,過濾到一部分的資訊。當加入的關鍵字過多,有時候便會過度收斂,導致搜尋結果過於狹隘。

其實這些關鍵字,經過分析後,可以再細分成幾個部分:

  1. 問題背景:vue 3
  2. 問題核心:dev production 環境不同
  3. 問題對象:image path / font path

真正的問題發生在問題核心,而不一定是背景或是對象身上。因此,再進行搜尋時,可以著重在核心的描述上,而不一定需要其他的部分。

也許,這個問題並不僅限於 vue 3,那麼我們移除 vue 3 關鍵字的結果,就是得到更多其他框架的相同資訊。

也許, 這個問題對於所有的 static assets 都是一樣的,那麼我們使用 static assets 關鍵字取代 image path / font path 的結果,就是得到更泛用的資訊。

  • dev production difference
  • vue3 dev production difference
  • dev production difference static assets path

當然,要能夠做出這些分析,勢必要對關鍵字有足夠的理解。因此,還可以做出這些搜尋:

  • What is vue
  • development v.s. production
  • What is server

思路二:縮放範圍

有時候我們找不到想要的答案,很可能是因為我們看到了答案,卻不知道那就是我們需要的;或是答案根本沒有出現在我們的搜尋結果。

這個現象有可能是因為搜尋範圍過小,導致內容太過精細。內容多了許多特定案例的論述,或是針對某個特殊問題的解法,導致我們想要的資訊參雜在陌生的文字裡,模糊了焦點。

也可能是因為搜尋範圍過大,導致搜尋結果網羅了過多資訊,而真正需要的解答被淹沒在其他的搜尋結果裡面。

無論搜尋範圍過大或過小,都不是好的搜尋結果

如果不堅持在 image path 或 font path 的區別,而是思考 dev production 的總體差異,便可以放大搜尋範圍

  • dev production difference

如果不堅持在 image path 或是 font path 的不同,而是思考 static asset 在 vue 框架下的兩個環境的處理方式,便可以縮小搜尋範圍

  • vue static asset handling

如果退一步思考,或許問題出在我們懂什麼是 vue:

  • vue

或許,是問題出在我們對兩個環境不夠瞭解

  • server v.s. local enviroment

也或許,是我們不知道環境變數的處理方式

  • environment variable handling

從問題根源著手,也許我們能得到更多啟發。

思路三:跳躍思考

如果第一百次不行,那第一次失敗的原因到底在哪裡?

重複的搜尋沒有結果,那是不是應該換個方式了?

當我們照著某個思路,進行一系列的搜尋後,卻一直無法找到想要的資訊,那麼,或許是時候退後一步,重新審視我們的思路了。

在網路上,知識以各種你想像得到的、意想不到的方式串連著,互相連接、纏繞。坐在電腦桌前的我們在做的,其實就是抽絲剝繭,尋找一個對我們有意義的串連方式。透過完全清除既有的想法,你可以跳躍到另一種新的串連方式,重新對問題進行分析與突破。

  • 或許,這個問題根本不存在,根本不需要兩個環境
  • 或許,早就有相關的人、套件、團隊,處理過相同的問題了
  • 或許,有除了使用兩個環境以外的處理方式

那麼,你的搜尋內容,將會是完全不同的範圍,以及完全不同的關鍵字。每跳出框架一次,就有可能找到一種全新的解法,全新的領域,全新的一切。

總結

當我們遇到一個問題,最重要的,是如何利用適當的關鍵字,控制搜尋範圍,以找到適合的資訊。當我們在搜尋資料時,可以把這些思路放在心上,或許在某個時間點,苦苦找不到資料時,能夠幫你一把,解決你的困境。

You can’t connect the dots looking forward; you can only connect them looking backwards. (Steve Jobs)

隱藏思路四:留意過程,沿途的風景比結果重要。

最後,在我們徜徉在網路世界的過程,實際上便一直在接受大量的資訊,即便這些資訊在當下看似無用,但卻很有可能在未來的某個時間點,出現在你靈光一閃的瞬間。這也是為什麼我認為,用最短的時間,找到想要的資料,並不是最有效率的搜尋方式的原因。

本文改寫自 2021/10/21 我在 AppWorks School 校友活動《前端隨意聊》的分享,希望這一篇文章能夠幫助到你,如果有任何問題,歡迎來信詢問!

Appworks School 是一個提供免費的轉職工程師培訓的專業機構,詳情可以>>點我查看<<

--

--

Shanpig
Aiworks
Writer for

不斷挑戰自己可能性的小子,歡迎用各種方式跟我交流!email: shanpigLiao@gmail.com 個人網站:https://www.shanpig.com