最近很多人在聊,說 ChatGPT 是不是把 Stack Overflow 給搞垮了。我常常看到這種標題,你知道嗎,就是那種很聳動的,「AI 殺死了開發者社群!」之類的。我自己是覺得,這故事沒這麼簡單。說真的,如果你是寫程式有一段時間的人,你大概也感覺到了,那個地方...嗯...早就開始有點變味了。
重點一句話
老實說,AI 頂多是壓垮駱駝的最後一根稻草,真正讓 Stack Overflow 走向衰退的,是它自己內部有點僵化的社群文化。不過呢,現在他們竟然跟 OpenAI 合作了,這整個故事突然就有趣起來了。
所以,問題到底從哪裡開始的?
大家現在把矛頭指向 ChatGPT,這很正常,因為你看那個數據就知道。從 ChatGPT 在 2022 年底橫空出世之後,Stack Overflow 的每日問題和回答數量,真的是雪崩式下滑。那個曲線陡峭到有點誇張,直接掉回他們 2008 年剛創立時期的水平。
但如果我們把時間拉長一點看,你會發現這不是突然發生的。大概在 2014 年之後,那個平台的活躍度就已經開始緩慢下降了。那時候發生了什麼事?主要是他們調整了內容的審核機制。
出發點是好的啦,他們想提高問答的品質。但結果就是,那個審核變得...嗯,非常嚴格。嚴格到有時候連一些很合理的問題都會被踩、被關閉,然後也沒人跟你解釋為什麼。我自己就遇過,感覺超差的。很多剛入門的新手,想上去問個問題,都要鼓起很大的勇氣,因為很怕被某些資深用戶或管理員用一種...缺乏同理心的態度對待。這就變成一個惡性循環,新人不敢進來,老人嘛,很多都轉去做管理職或不寫第一線 code 了,自然也比較少貢獻。
雖然中間疫情那段時間(大概 2020 年)有回溫一下,因為大家都待在家裡學寫程式,但那比較像曇花一現,疫情一過,趨勢又繼續往下了。
所以,ChatGPT 其實更像一個催化劑。它提供了一個「情緒安全」的替代方案。你在上面問再笨的問題,AI 也不會酸你,它只會給你答案。雖然答案不一定對,但至少你不用擔心被社群公開處刑。說真的,這對很多開發者來說,吸引力太大了。
更有趣的是,他們現在竟然合作了
f本來大家以為這就是一場「你死我活」的戰爭,結果前陣子 Stack Overflow 突然宣布,他們要跟 OpenAI 成為官方合作夥伴。這操作真的蠻酷的。簡單講,OpenAI 會用 Stack Overflow 上面經過授權的、高品質的問答內容來訓練 ChatGPT,讓它的程式碼相關回答更準確。反過來,Stack Overflow 自己網站內部也會開始整合 OpenAI 的大型語言模型。
這代表什麼?代表以後你在 Stack Overflow 上面,可能會看到 AI 幫你總結答案,或是提供一些初步的解決方向。這一步棋,我覺得算是把最大的威脅,直接變成了盟友。這也呼應了像 GitHub 他們的 Copilot 策略,就是把 AI 當成一個輔助工具,而不是取代開發者的敵人。
當然,這也引發一些疑慮。如果網站上充滿了 AI 生成的內容,那它跟一個純 AI 的問答器有什麼差別?人類貢獻的價值會不會被稀釋?這點我覺得還需要觀察。
ChatGPT vs. Stack Overflow:我到底該用哪個?
所以說,現在這兩個工具都擺在眼前,到底什麼時候該用哪個?我自己是覺得,這不是一個二選一的問題,而是看你的需求是什麼。我弄了個簡單的比較表,比較像是我自己心裡的尺啦。
| 當下的情境是... | 我會先問 ChatGPT / AI 助教 | 我會去翻 Stack Overflow |
|---|---|---|
| 想快速拿到一段能跑的程式碼 | 絕對是它。複製貼上改一改,超快,先求有再求好。 | 比較慢,而且可能要從好幾個答案裡拼湊。 |
| 解一個很冷門、很底層的 bug | 它可能會開始「一本正經地胡說八道」,給的答案看起來很專業但根本不能用。 | 這就是它的價值所在!常常能找到某個大神在八年前就踩過的坑跟超神的解法。 |
| 想了解一個問題的「為什麼」 | 可以問,它會解釋。但那個解釋有時候...嗯...有點像教科書,不一定知道實務上的眉角。 | 答案下面的留言區才是精華!可以看到一堆高手在辯論,從各種角度切入,這才能學到東西。 |
| 怕被罵,心臟比較小顆 | 你的好朋友,問再蠢的問題它都秒回,還跟你說「很高興能幫助你」。 | ...可能要先做好心理準備。或者,學會怎麼問一個「好問題」,這本身就是一種技能。 |
| 需要參考最新的 API 或框架用法 | 要看它的資料更新到哪。有時候會給舊的語法,需要自己再查證。 | 比較可靠。只要是活躍的標籤,通常都會有最新的討論和官方文件外的實用範例。 |
但有些東西,AI 真的給不了
就算 AI 再強,Stack Overflow 有些價值是無法被取代的。這也是為什麼我希望它能活下來。
首先,它是一個真實世界問題的資料庫。上面每一個被問出來的問題,背後都是某個開發者在專案中遇到的真實困境。這跟 AI 自己「生成」出來的問題不一樣。這些真實的血淚史,讓我們知道一個技術或工具在實務上的極限和缺陷在哪裡。這點,美國的像是 Reddit 的 r/programming 子版也有一樣的功能,但在台灣,除了像 iThome 的技術問答區,這麼集中且全球性的地方真的很少。
再來,是那個「社群感」。雖然前面說社群文化有點問題,但不可否認,上面還是有很多熱心的大神,無私地花時間去回答問題,幫助陌生人。那種「原來有人跟我一樣卡在這裡」、「哇這個人好強」的感覺,是跟冰冷的 AI 互動得不到的。它提醒我們,寫程式不是一件孤單的事。
還有就是它的年度開發者調查。每年那份報告出來,都可以看到全球幾萬個開發者的技術趨勢、薪資水平、愛用工具等等。這對整個產業來說,是非常有價值的參考資料。如果這個社群沒了,這些洞見也就跟著消失了。
反例與誤解釐清
最後,我想澄清幾個常見的誤解。
誤解一:「AI 的答案又快又好,Stack Overflow 已經沒用了。」
錯。AI 的答案是「快」,但不一定是「好」或「對」。它很會產生「看起來很對」的垃圾。對於那種需要深度、經驗和背景知識才能解決的複雜問題,社群裡經過千錘百鍊的答案,價值還是非常高。
誤解二:「Stack Overflow 的社群文化沒救了。」
我自己是覺得,跟 OpenAI 合作,或許是一個轉機。當一些基礎、重複性的問題可以由 AI 先過濾或回答,社群裡的專家們就可以更專注在那些真正有挑戰性、需要討論的難題上。這或許能慢慢地把社群風氣導向一個更健康、更重質感的方向。當然,這只是我的希望啦。
說到底,工具本身沒有好壞,不管是 Stack Overflow 還是 ChatGPT,它們都是來幫助我們解決問題的。重要的是我們,作為開發者,要怎麼聰明地去運用它們,然後,不要忘了寫程式的初衷,那種解決問題、互相幫助的樂趣。
對了,我還蠻好奇的,你現在寫 code,卡關的時候第一個求救的對象是 ChatGPT 還是 Stack Overflow?可以在下面留言分享一下你的習慣嗎?看看大家是不是都變心了(笑)。
