作者: Jerry Lin

  • WordPress Debug Journey – 後台無法開啟編輯器為例

    WordPress Debug Journey – 後台無法開啟編輯器為例

    最近開啟部落格新增文章時,發現新增文章編輯器變成一個空白畫面,於是開啟了 wordpress debug 之旅,記錄一下也分享難得的大型錯誤經歷。

    首先先看一下錯誤內容:

    This feature is only for JavaScript modules shipped with WordPress core. Please do not use it in plugins and themes as the unstable APIs will be removed without a warning. If you ignore this error and depend on unstable features, your product will inevitably break on one of the next WordPress releases.

    看起來是一個外掛程式和主題 hack 了一個內部 API 導致警告 or 錯誤。

    首先我們先做統一的預處理:使用無痕開網頁和清除快取。 快取部分除了 wordpress 的快取外掛之外,還有 Cloudflare 上的快取功能,清除確認一下是否問題還是存在。這裡必須特別提醒,通常產品上會有測試環境,更成熟的產品會有 DEV, UAT, 甚至本地的開發環境以及各層級的備份和版本控制機制,如果非必要,請不要再正式環境上搞。

    小提醒,如果有需要更新外掛的動作,請別忘記做備份。

    在這個案例中,清除完快取問題還是存在的,於是衡量一下機會成本,先鎖定外掛的部分,框列幾個可能的外掛,先停用看看,然後後台刷新編輯頁面。

    在我們外掛的開開停停測試中,發現是「Meta Generator and Version Info Remover」這個外掛造成的問題,把他停用以後後台就開啟正常,關閉後台有問題。於是我們繼續確認是否是設定的問題,同樣也是開開關關操作測試,於是發現是其中一個「Remove version from script (JS files)」選項設定有問題。把他停用即可。

    當然問題還沒完,首先關於開關停用的動作,這個案例中操作了 2 次,分別是外掛的開關操作以及外掛內設定的開關操作。自己的經驗是建議將需要開關的選項來分組,就這次的案例來看,錯誤訊息中可以看出編輯器的 js 有問題,於是我會先將分組為後台編輯器相關的外掛來測試,不會先動像是安全設定、核心功能、前台功能等外掛。這就很吃你的經驗和眼光,雖然有些運氣成分,也不是全然靠猜,而通常這類操作也是很好透過自動化和 AI 來取代的,不過 It’s Not Today,我們還是得靠自己努力先。

    再來是需要根除這個問題,於是我登入 wordpress.org 的這個外掛頁面打算抱怨一下,發現已經有人提出類似的問題,作者的意思大概是說這個鍋我不背,請檢查是否和其他外掛衝突。這樣,恩,我也在下面留言回報一下,當然要改外掛也是可以的,得考量維護成本以及後續更新的操作成本,對於一個不賺錢的小部落格是否值得修改?歡迎來到 wordpress 的外掛地獄。

    最後提供一個關於這個功能的實作解法,如果單就 js 來說,把 ver 的 query string 替換掉就是了。 請於佈景主題 function.php 中實作。另外提醒一點,建議修改操作都在 child 的佈景主題中動作會比較保險,如果不知道這是什麼請參考這裡

    // remove wp version number from scripts and styles
    function remove_css_js_version($src)
    {
        if (strpos($src, '?ver=')) {
            $src = remove_query_arg('ver', $src);
        }
        $src = add_query_arg('ver', 'hello-world', $src);
    
        return $src;
    }
    // add_filter('style_loader_src', 'remove_css_js_version', 9999); // 修改 css
    add_filter('script_loader_src', 'remove_css_js_version', 9999); // 修改 js

    對了,修改 query string 會影響快取,尤其如果 cloudflare 是設定用 query string 辨別快取檔案的話。這塊常常被遺忘了,愛注意。

  • 《What If? 如果這樣,會怎樣?》第一部份讀書心得

    《What If? 如果這樣,會怎樣?》第一部份讀書心得

    這本書在博客來網站上的中文書名叫做《如果這樣,會怎樣?:胡思亂想的搞怪趣問 正經認真的科學妙答》,真的是有夠長的。是由 xkcd.com 網路漫畫網站的作者 蘭德爾‧門羅 所推出的屠文書籍,作者在 2006 年離開 NASA 之後,專職網絡漫畫,後來甚至國際天文學協會將小行星4942以他的名字命名是一位被科學耽誤的漫畫家。

    這次的閱讀進度分四次,預計是今年的最後一本,為了電子書操作方便(目錄實在很亂),我把標記的問題 hashtag 當作章節開頭,自行稍微調整了一下進度:

    1. 開頭到標記的問題#2 結束
    2. 問題#3 到 問題 #6 結束
    3. 問題#7 到 問題#9 結束
    4. 問題#10 到結束

    以我目前的職業來說,這可以看做是一本小品故事書,基本上每個章節可以獨立來看。對我來說似乎不太能作為一本「工具書」,畢竟裡面講述的內容十分、難以、不太可能,會有機會需要用到。我認為這很推薦給對科學有興趣的小朋友,如果他們吵著要去科博館但是沒時間帶他們,可以把這本書丟給他們自己看(?),或是提供給文化創作者,科幻小說甚至喜劇藝術相關類型,需要一些簡單科學背景的話,這會能夠成為一本「工具書」。

    不太喜歡硬是從書裡面挖掘自己能用的體悟和心得,這類的「心得」網路上有滿多的,參考參考:個人覺得很多心得比較像是介紹書本和感嘆,身為理科生而且是問題兒童滿有感的,甚至到長大以後,不管在運動還是工作娛樂,常常遇到別人會覺得「你為什麼問這種問題」的狀況,不過細問之下其實未必是問問題的鍋,有各種各式各樣的原因導致問題無法被解答,被究責的狀況滿多是因為人們鼓勵「要問好問題」的心態導致的。不過得澄清,「要問好問題」以及「喜歡問問題」兩個核心價值並不衝突,我認為這是不同思考模式造成的期待落差,會建議讀者別因為看了這本書(或是別人寫的心得)跑去要求強迫別人一定要回答你的問題,除了可能影響個人形象和觀感之外,也有可能錯失了描述或觀點更深入的機會。可能我們需要做到的是看過這本書之後,理解不同人會有不同的思維,常常是自己想都沒想到的,然後在回答問題之前,先瞭解對方問題的思考方式,也許有需要的話,一起解決問題是很重要的。

    書本的內容其實對於一個許久沒有碰基礎科學的我來說也是滿硬的,主要是因為科學的描述會由許多基於事實和研究結果,組合成的理論,最後再產生推論和回答。在閱讀每個問題的回答時,腦中會先不斷質疑事實和理論是否正確,導致有點超載,而且因為科學有「觀察系統」的限制,所以即便是基於事實,也必須要先固定部分的變因,導致回答可能偏離事實(我覺得這也是會被認為「不要問這種蠢問題」的原因之一),或者是同一件事情可以由不同的理論、技術、甚至觀點切入,尤其是在〈大家一起跳〉的章節中,提到全世界的人從某一個位置上一起跳躍造成的問題,後面提到掏出手機的行為讓我開始感到困惑。 這也許是作者的美式幽默表現之一。

  • 解決 Android Studio 在 Mac 無法輸入中文的問題

    解決 Android Studio 在 Mac 無法輸入中文的問題

    在一次更新 Android Studio 之後發現不能打中文,雖然目前用不上,但是不能打中文註解還是有點嘔阿!再一次下定決心以後決定要來解決這個問題。

    這是目前的安卓版本

    解決方法其實滿簡單的:

    修改鍵盤佈局:在 Android Studio 中選擇「File」>「Settings」>「Keymap」

    Keymap 選一個你喜歡的,記得是 macOS 。

    選好儲存之後,重新開啟專案即可。

    以上,現在可以打中文啦!

    2023-10-23 update:

    keymap 會直接影響到快速鍵,這邊推薦使用 macOS 這個選項,和預設的快速鍵較為不衝突。

  • 記錄一下安卓的 API 版本、名稱、版本代號對應

    記錄一下安卓的 API 版本、名稱、版本代號對應

    — 以下正文—

    開發 Android 有一個小麻煩的地方是 API 版本、名稱和代號的對應,真的是。無論是在 guild 裡面,還是程式碼中,都會遇到需要填寫判斷版本號的問題,偏偏他又有多種格式,連網路上對於版本的稱呼都不太統一。

    於是我找到一個網站,這是給開發人員看的:

    附上網頁翻譯好讀截圖:

    這是網站的 github 原始碼:

  • MacOS 使用 Apache JMester 來做壓力測試

    MacOS 使用 Apache JMester 來做壓力測試

    之前有一篇使用 ApacheBench 來做壓力測試的工具(參考),最近發現一個 GUI 的工具, Mac 和 Windows 都可以用,讚讚。

    照例除了附上操作說明連結,補上自己的注意事項和心得:

    1. 記得要裝 Java 8
    2. 在 MacOS 上,推薦從官網上下載 bin 檔案,用 brew 安裝有點麻煩(我安裝失敗了)
    3. 可以切換繁體中文(從上方 TopBar 點擊 “選項” -> “選擇一種語言” -> “Chinese (Traditional)” ),可是有些專有名詞可能要熟悉一下。
    4. 不得不說,GUI 的缺點就是要點點點,但是不用記住一堆指令,可惜他不是 app 形式製作的,執行檔案要保存好,連結做滿。
    5. 測試模版可以儲存(執行前會詢問),這滿方便的,許多創造一套 API 規則打天下,或是使用 wordpress 這類固定 Web App 的,很適合創建一些模版來用。

    另外補上一些壓力測試要注意的事情,權當壓測前的 check list:

    首先確認測試目標,如果是服務的本身的話,要記得確認流量不會經過服務前方的 CDN 或是防禦工具(e.g. Cloudflare 或是服務商提供的防禦機器)。操作上可以嘗試使用內網、修改 host 指定 IP,或是把防禦工具關閉(例如調整 nginx 或是關閉防火強);而如果是為了要測試防禦工具的話,得先確認是不是要和工具的服務商確認一下,如果是 SaaS 服務,通常會有延伸費用的。

    操作時,務必注意 header 中的操作,像是 token 或是 cookie 驗證,這次簡單測試沒有特別處理,不過通常需要登入的服務都會需要確認調整的。別壓力測試一堆結果都是導向 login 頁面,那就搞笑啦!

    除了內網測試,如果像是 wordpress 這類單體的 web application 外網測試也是需要的,畢竟外網才是正常一般使用者進入的環境。

    補一下程式截圖

    附上連結,這是下載的官網:

    使用 Mac 的安裝說明:

    我們的目標是測試 API ,這是使用說明(使用比較舊的版本,有些操作不太一樣):

    附上 DDos 的防禦策略介紹:

  • 《灰階思考》第四部讀書心得

    《灰階思考》第四部讀書心得

    這次從 14 章到最後的進度,這部分期待是實作的經驗乾貨,裡面有許多舉例說道股市震盪和崩盤的狀況,以及數字思維的重要性,最後一章回到感性章節,作者透過分享自身簡歷,講到人生氣運難料,很難有好運連連也不太會有一直有壞運不斷,算是寬慰了像我這類的投資小白,不是只有我慘(笑)。

    這幾個章節中,我一直在思考「眼光」的重要性,以及如何培養「眼光」的功課,當然我認為最靈驗的是取得內線或是能夠真正學會通靈這種玄學,不過可能資質還不夠,在想也許有機會可以多看不同流派的投資方式,以及學習在財務金融領域相關的實作細節,能夠實作像是如何判斷是市場雜訊,如何數字管理等等,或許雖然未必有機會投入賽道,但是也能學會「賞析」市場也是好的。

    另外關於運氣好壞的部分,看 文森說書整理的《幸運人生的四大心理學法則》,其中講到幸運的人會有一些「幸運的習慣和體驗」,包括「不斷嘗試」、「喜歡接受新的體驗」、「對厄運的解釋不同」等等,這呼應到書中提到「只有願意繼續玩下去的人,才可能擲出豹子、通殺。」我覺得未必是說我們有必要改變自己,每個人有不同的環境和保護自己的方法,但是重要的:我們必須要確保在遇到自己的「不幸通知」響起時,還有足夠的餘裕能夠讓自己維持在場上。

    但就像買股票或挑企業,飆股很難挑中,所以分散投資是關鍵,而人生也是。
    我們通常很難第一次嘗試什麼就大中,大獲全勝,所以關鍵就像擲骰子,只有願意繼續玩下去的人,才可能擲出豹子、通殺。

    〈十八章 炒股前先炒你的人生〉

    在閱讀的時候,自己生成(笑)了幾個不錯的心態值得記錄,大部分和之前分享相同,不妨再提一次:

    1. 不是要成為市場的連勝王,而是要有能力可以一直站在市場上的人。不論是同一個領域的賽道,還是自己的人生都是如此。
    2. 撇除玄學範圍,運氣是我們無法控制的,可以控制的是「準備功課」、「分散風險」,還有「多試試」。再來就是想辦法讓自己壞運的時候不會被擊倒。
    3. 「學這些東西有用嗎?」通常講這句話表示這個人對「這東西」完全不懂。粗淺的學習可能真的未必有用,但是內化成自己的經驗和心得後,將會成為未來某的階段、或是另外某個學習的養分。雖然說上面那段話好像很勵志,但實際上問題不在於有沒有用,而是效益高不高的問題。這衍生兩件事:
      • 台灣人國語文能力低落和邏輯能力低落,已經是歷史共業,有賴於媒體產業和各式各樣的惡意橫行,我們這代得以強壯,必須還要努力。
      • 學習後效益高不高是一個判斷標準,還有學習的效率高不高也是一個很重要的事情。「永遠學不完」,這是近代才出現的問題,我們要面對的是如何加速學習能力,以及透過自己的經驗和學識再加速自己吸收的速度。

    同場加映:

    作者在電子書末端附上的錄音檔文字搞(文字搞部分由 cSubtitle.com 生成)。

    嗨,大家好,我是謝孟恭,謝謝你買了天下文化出版的這一本灰階思考的電子書,那天下文化呢?今天把我壓來,他們的錄音是要我跟大家講一段話,那我就只好跟大家分享一下關於寫這本書,我希望大家可以獲得什麼?那以及,在將來的投資的路上呢?那大家可以注意什麼?那其實會寫這本書最主要的目的呢?只是因為覺得寫書還蠻酷的啊,那我也希望我的書單裡面可以有一本我自己的書在裡面吶。我都在裡面,目前也有提供給大家很多投資界的一些大師或是一些高手的觀念、分享。但有些人覺得說他們寫的東西可能對於新手來講難以入門,所以呢回去思考這本書就是幫助大家入門的一本財經書。那我希望說看完這本書呢,至少你可以在市場裡面閃過一些很明顯的陷阱。或者說啊,比方說像是溢價或者說一些商品他啊,可能是反向,可能是槓桿型的他不適合大家吶,或者說市場裡面有一些所謂的老師,那他可能會收取高額的費用,但是它其實,對大家在投資的路上不一定會有幫助,所以我覺得其實大家只要可以閃過這些很明顯的。所以在市場上的陷阱的話呢?那其實在投資的路上就會走得很順遂啊,其實你只要不要輸太多,你就已經是跟別人,可以拉出一段距離了。那這本書看完你沒有辦法成為一個所謂的投資高手,其實我覺得任何一本書看完都沒有辦法,這樣的能力就讓你成為一個高手,但是呢,我希望它可以幫助大家提供一個新的思考方向,那以及在投資的路上,我們勢必會接觸到很多不同的想法跟不同的派別或者一些不同的方法,那其實每個方法都有他值得借鑒,或者學習的地方。那這邊就祝大家在投資的路上一路順利。

    上述提到運氣的部分,文森說書頻道的其中一個節目。

    論〈科學改運〉。
  • 關於情緒穩定這件事

    關於情緒穩定這件事

    最近在檢討情緒穩定這件事,主要是被伙伴說太緊繃了(還賞了五百元去放鬆XD),我在嘗試覺察到情緒起伏的狀態,不禁想到以前公司前輩一句話:「你就是沒招了,所以才會在那邊『張(台語)』。」 意思就是除了情緒,核心利益的餘裕已經消耗光了,所以情緒就會被帶起來。

    好有道理,雖然很不爽但是無法反駁。所以幾個策略也許可以嘗試看看:

    補足核心利益的餘裕

    就財務上無非就是開源節流;在接案上是要讓機會成本更低一些,或是想辦法看清楚風險適度的提高報價;運動上是要注意飲食、運動頻率;交際上也許嘗試多一些不同的操作,放鬆沒什麼不好,服務別人也不會很難受。貪心不是不對,不要想要凹,不要浪費別人時間,自己也要注意一點就是。

    心態調整

    我認為可能要多利用稀缺的狀態讓自己覺查到危機意識,這能夠成為一種警報的保險拴,同時要注意管窺的 debuff。另外有些時候會覺得富足,我認為感覺到富足的時候不是想著感恩和反哺,這真的是正向思考遺毒XD 而是要讓富足的餘裕拿出來分配給未來,分一分會發現其實很不夠。 反哺和感恩的心不是犧牲奉獻,也絕對不應該是一門生意,可能有些人不能接受,但實打實的確是支出成本,他應該要放在規劃之內。

    原子習慣

    除了制訂策略和原則之外,也要回到大學時候,把「我想成為什麼樣的人」輪廓描述出來,在出社會能力提升之後,可以更細緻。要做一個「服務很細緻、報價公道,而且不只能夠寫程式的的程式設計師」、「有好的控制飲食習慣、懂得自律控制健康、保持代謝正常、懂得運動而且身材不錯的人」、「與人為善,但懂得避開神經病和喜歡貪小便宜的傢伙,不喜歡佔人便宜的好人」等等。

    治療自己的病

    「每個人都有病」,這句話我也不知道是不是對的,但是我有病我知道,尤其是反覆測試過,其實很多訓練和經驗培養出來是對的,但是反覆的、容易被旁人的言語所影響,也很容易被以前的創傷影響。反而我應該去探究的是:為什麼會感受到負罪感?為什麼我會認為這是不道德的?為什麼做這件事情會被討厭?為什麼會有人帶有惡意攻擊我?好像學會放下很難,但也許可以想想怎麼學會課題分離,或是想辦法真的是為了自己好,而不是只是害怕受傷而選擇一個逃避的動作。逃避有用,不過還是回頭要看看機會成本。

    以上,重點是希望我能記得,最怕的不是想不清楚,而是需要實作前忘記,我得提醒我自己常常拿出來看,我的境界還不夠,「身是菩提樹,心如明鏡台,時時勤拂拭,勿使惹塵埃。」 這句話對我還是適用的。

  • 《灰階思考》第三部讀書心得

    《灰階思考》第三部讀書心得

    這次《灰階思考》的進度是 9 到 13 章的內容,9-10 章屬於第二部,提到求證與質疑的投資態度。第 11 章以後,帶我們認識進入市場時會遇到的「風浪」,有點像是營隊工作人員的行前會議,確保活動順利,而在投資的領域,確保輸少贏多。

    因為跨了兩部,切成兩個部分的心得列表,首先是第二部分的最後兩章。

    1. 質疑、求證,以及正視自己的「自信」是否源於學習曲線的開始。我會認為這是「眼光」的問題,要有經驗去看到更遠的東西,如果沒有經驗要有學識,這也是讀書的目的:「我們學習歷史,以看到未來。」
    2. 準備好承擔風險、耐心、投資圈多問問。這是屬於行動的指南,我覺得感受尤其深刻的是在於作者不斷強調投資不是要「大贏」,而是要如同本文開頭說的「輸少贏多」,這樣的核心價值之後延伸出來的,包括準備好承擔風險的心態,造就我們不要 all-in ,投入前要瞭解、求證、評估,不要有賭徒心態、要有耐心,以及要確認好自己的資本要能夠承擔投資失敗的風險。我想應該很多領域會需要有背水一戰、孤注一擲的氣勢,不過就投資這個領域,如同上一篇所寫的一條心得:「目前的資產量級中,我們應當作自己是在海上航行的船,不是操控浪潮的海神。」
    3. 關於「閒錢」的定義,我發現滿重要的。前幾天和朋友在討論薪水和花費,因為接案工作的原因,有一些花費是需要先墊付的,而也有許多「精進」自己的(包括運動、學習和放鬆)的動作也需要花錢,整理下來發現自己花費很大,就書上所提到的「閒錢」幾乎沒有。這的確需要花時間規劃和檢視,更重要的是練習和加深在生活品質和「節儉」(我不喜歡這個詞彙)之間的平衡。

    第三部分是 11 章到 13 章的內容:

    1. 書中有提到要認清楚自己是誰這件事。可能是個性的關係,我認為無論在投資或是工作的領域,把自己當作一家「公司」來經營,這也是從以前社團訓練來的,受用無窮。看到這些內容時,想到「商業模式九宮格」這個圖表工具,用來培養商業思維。我們可以把自己的各項工作、各項投資當作不同的生意來做。找到自己的定義、關鍵資源、成本結構等等,近年來也開始有很多 KOL 鼓勵大家經營個人品牌,把自己當作一家公司來經營不失為好的態度。
    2. 有一個段落可以說是當頭棒喝,就是〈用帳單檢視自己〉。不是說要只是看看帳單自己剩下多少錢,而是如同書中說的:「(帳單)裡面的記錄基本上就像是你本人的說明書。」用最小的成本認識自己,不只在商業上,在投資的領域,對於未來眼光的培養是十分重要的。
    3. 作者也描述了自己偏好投資的企業領域,大致上可以下幾個標籤:有夢想、改變世界、有「價值」的。 這塊滿有趣的,我沒啥經驗,和朋友家人的投資經驗也是大相逕庭,先保留起來。
    4. 關於瘋狗浪這件事,台灣人真的是非常喜愛趕流行和賭一把的群體,配合上媒體喜愛的渲染,這真的是滿多故事的,然而,這當然也造就了台灣人開始更重視關於媒體識讀、觀察和分析的能力(我不知道其他人有沒有啦,但我覺得這很重要。)

    我覺得,用形象一點來說:就像是颱風天的時候,我們都知道,要遠離海邊。不要賭一把跳進去以為自己會被沖的起來。延伸來看,但我們想要觀察,我們也想要沖起來,我們要想準備,怎麼辦? 就得先有能力在海邊蓋一座足以仔細觀浪的高臺、或是買得起一個高倍率望遠鏡。觀察過後充分認識到自己有能力時,保留餘裕,在避免落入貧窮陷阱的條件下,去玩這次的浪,這次沒玩到沒關係,努力準備好下次機會來的時候玩。運氣不能掌握沒關係,多拜拜就好,但是機會來的時候沒準備好,那就不是運氣的問題了。

    同場加映:

    裡面提到準備和運氣的概念,我覺得三觀滿正的。
  • 前端 web worker 筆記

    關於前端的 JS 技術還真的是需要筆記的內容。

    這次把 web worker 記錄起來,這是幾年前就有應用的功能,也是一個古老的技術了,意外的其實滿常使用的。

    先重點整理,首先是 Web Worker 的介紹:

    1. 解決 js 單執行緒的工具(web worker 產生 OS 層級的執行緒),避免被放到 event queue 中排隊,參考參考
    2. 解決 js 中 setInterval() 因瀏覽器節流模式嚴重失準,參考
    3. 應用在大量背景運算、長時間的 I/O運作(例如計時器)、避免分頁長時間閒置導致 js 不運作(例如觸發事件時的通知音效)的問題。
    4. 在多核心 cpu 的 Client 端上,使用 web worker 優勢會比較看得出來(通通跑起來)。

    這裡有一篇幾年前製作的 web worker DMEO,實作計時器功能,如果使用 setTimeout() 或是 setInterval() 方法很容易因為各種原因造成時間失准的問題。這裡也有一份 Mozilla 提供的 DMEO。這裡有份教學

    實作上:

    1. Main Script 和 Worker Script 實作 postMessage() 和 worker onmessage 事件拋接資料,參考
    2. 常用有 Dedicated 和 Shared 兩種,差異在 Shared Web Worker 不會因為在同網站中換頁而消失(e.g. 購物車、聊天室..)。
    3. 有一個不太常用的功能 Embedded workers ,主要是利用了HTML5 的 data block 功能,就是想辦法把 web worker 塞在同一個 html 裡面。
    4. Main Thread 和 Worker Thread 彼此之間拋接資料使用參數,該參數是 call by value 的模式。

    需要注意的部分:

    1. Web Worker 和 Service Worker 是不一樣的東西,參考
    2. 雖然機會不高,在技術規劃時先確認使用的網頁載體是否支援相關技術; Android 設備在使用 webview 技術時,也會有遇到處理 webview 碎片化的問題,使用的替代套件要記得確認一下。
    3. 使用 web worker是做背景運算, UI 操作還是要回 UI Thread 上操作,規劃製作時需要注意維護的成本,除了效能之外,也要確認切分後可讀性。
    4. 需要注意耗能的問題,也就是除了網頁載體(瀏覽器/核心)的層面,可能用戶端也需要考慮一下。
    5. 資料拋接時,如果遇到大的物件參數(例如 20+mb 的 Array/JSON ),資源消耗就偏大,參考使用 Transferable Objects 方式來解決,參考參考參考

    附上參考文章。這篇是目前查到最詳盡的介紹:

    我們可以查到 web worker 支援的瀏覽器(唉)有哪些。目前看來主流瀏覽器包含手機都是支援的,有一個特別紅的是 Opera Mini,不過這個應該市佔率不高:

  • 《灰階思考》第二部讀書心得

    《灰階思考》第二部讀書心得

    這次《灰階思考》的進度是在五到八章,主要是〈備糧 建構判讀的作業系統〉大章節的前半段內容,如同大章標題所敘述,前半段提到的內容是在投資領域,資料「識讀」的重要性。第二大章還有兩個小章節,分別是第九章〈繫上質疑力這條安全帶〉和第十章〈「學」不到的東西〉,提到的是關於「質疑」和「求證」的重要,與真實下場經驗的心法。

    「識讀」這個詞彙是來自於對於新聞媒體的質疑,小時候有遇過類似現在自媒體的「大聲公」同學(後來他還真的跑去政大新聞系),也有淺嚐過媒體影響力的可怕。長大以後在反媒體壟斷的運動中發現「媒體識讀」這個詞彙,之後自媒體興起,當人人都能夠成為媒體,每個人都能夠拿大聲公+喇叭吸引眼球和耳朵時,閱聽人對於「識讀」的能力和門檻又比早年要求更高了。 投資也是一樣的狀況,文中講到許多關於投資領域中要注意的面向,這邊把幾個自己需要注意的提出來:

    1. 3F 和 13F 報告。 軟體圈也有類似的狀況,當程式有問題詢問對方這段 code 來源如何,有時得到的回答是 ChatGPT 寫的,或是 Stackoverflow 的答案來的,甚至最近會聽到從知乎上查到的,雖然比 3F 這樣的來源還可靠一些,但是也是覺得荒唐。 可以在負責的狀況下,應該培養更有效的處理驗證能力,以及想辦法儘量去取得,更有效/優秀/可信的資料。
    2. 要避開思考僵化的盲點。我認為思考僵化是一種不太聰明的行為:這是一種浮動的狀態,不表示否定一個人的價值,但是這種狀態會讓人產能低下,這是一個不好的狀態。書中提到了幾個盲點,像是看「很多 vs. 多元」的差異、在認定時退一步思考(我認為可稱之為「驗證」)等等。當思考僵化時,會造成一意孤行的後果,往往就是跳入深淵的第一步,要引以為戒。
    3. 第二部衝擊我最大的,是第七章的最後一節〈市場怎麼看才是重點〉,裡面提到自己認定的目標價格其實不重要,重要是市場機制底下產生的價格,這才是現實。所以應該「你可以有預期,但是不要過度催眠自己,還是得睜大雙眼。」 如同「一意孤行」一般,軟體製作有一個職業病(?)是會設定好一個規格標準,然後以達到規格標準為主,預期也是要做到規格才對,否則就是例外的 use case,通常即便有共同開發,也不會因為共同開發而導致規格是浮動的(要不搞屁阿),但市場不同,並不會有明確的規格出現,如同第八章提到的贏家特質「樂觀、耐心、承擔風險」一樣,要因應浮動的各種可能的環境下想辦法讓自己儘量久的活在場上。

    閱讀到目前為止,我認為在投資的領域中,應該要有的心態有:

    1. 多元的資料來源,而且儘量找一手資料,當然如果有內線最好。
    2. 大量閱讀產業資訊,觸類旁通也好,熟悉產業也行,避免被劣質的資訊誤導,要瞭解驗證的重要性。
    3. 不要碰不熟悉的產業,要碰就要去研究透徹。
    4. 我們在目前的資產量級中,應該當作自己是在海上航行的船,不是操控浪潮的海神。
    5. 遵守紀律,不能控制市場但是可以控制自己。

    以上,會有幾個新課題,筆記一下:

    1. 保持紀律,養成好習慣以避開誘惑。讓壞習慣更麻煩、好習慣更方便。
      • 社交和自律的平衡要如何掌握?
    2. 覺察到值得懷疑的資訊,大量閱讀、查詢原始資料的重要性。
      • 保持好奇心很好,但是機會成本不會太高嗎?應該如何取捨?
    3. 學英文,即使翻譯很方便,但離真正語言暢通的日子還沒到來,可能近幾年英文還是很重要的。
      • 如何養成喜歡學習的心態和如何保持需要不斷精進的危機感?

    以上。

    同場加映:

    論以人廢言的危機。關於獨立思考、面對立場的態度與「相信專業」的重要性。
    透過習慣「對抗」誘惑