Re: [閒聊] AI時代如何保持對軟體的熱情
※ 引述《gigayaya (gigayaya)》之銘言:
: 3.多去學習知識,不論是經典的CS知識或是最新和AI有關的知識
這幾天想到一個例子表達我的觀點,想分享給大家或許能更好理解我想表達的XD
(ps.這只是一個展示概念的例子,希望大家不要對內容太認真)
---
想像一個場景:今天你去一家公司應徵軟體工程師,你坐在會議室中
對面面試官給你一台筆電請你現場做live coding面試,你看到畫面中的文字題目如下:
Q:
目標為生產一個function解決以下問題->
有一串數字,規則是「後面的數 = 前面兩個相加」:
第1個: 0
第2個: 1
第3個: 0+1 = 1
第4個: 1+1 = 2
第5個: 1+2 = 3
第6個: 2+3 = 5
第7個: 3+5 = 8
其中第1個數字固定為0,第2個數字固定為1
給予你一個input數字,請你回傳那個位置的數字是多少
約束/規則:
1. 給你的數字範圍為2~1000正整數
2. 你只能寫prompt給AI,AI的輸出即為你的答案,你不能手動修改AI回答的內容
3. 使用的prompt文字越少分數越高
4. 跟AI溝通的次數越少分數越高
5. 程式語言為python (其實這不重要,舉例而已)
6. 只能使用我們提供的AI
7. 我們保證我們的AI沒有任何的隨機性 (意思就是保證存在方法拿到滿分)
8. 我們已經測試過我們的AI可以產生出最好的答案 (跟上一則同意思)
9. AI只會回傳程式碼不會聊天
---
然後面試官手上的正確答案是這樣:
```
def fib(n: int):
a, b = 0, 1
for _ in range(n-1):
a, b = b, a + b
return a
```
我們先假設這就是這世界上最好的答案,忽略一下變數名稱,錯誤處理之類的小問題
面試官會將你的答案跟他手上的黃金答案對比,跟答案長的越相同分數越高
---
那在這個情況中你要如何獲得高分,意思就是你要如何達成只用最少的prompt就能
產生出面試官手上的正確答案呢?
要能達成這件事情,我覺得你至少需要掌握以下幾點:
1.你知道這是一個費式數列問題,所以你跟AI溝通的時候不需要把完整的題目複製貼上,
可以只用四個文字表達你的需求
2.你知道用for loop實作費式數列問題比遞迴好,因為時間複雜度比較低
3.你知道用兩個變數而不是一個list儲存內容比較好,因為佔用的空間更少
4.你知道如何用最少的字告訴AI你的需求以及設定邊界等等的技巧高品質地完成任務
我們先假設2,3點AI還沒有被訓練這些資料,所以如果AI能寫出這樣的code的話一定是
你prompt要求的
如果你的答案被判定為高分的話,看來你至少有CS以及prompt engineering知識
(舉例結束)
---
所以我想表達的意思是:
有了AI之後工程師的任務從『自己用手將腦袋中的code敲到檔案裡面』變為->
『告訴AI你腦袋中的code生產出來』
並且通常來說,在同樣完成任務的前提下,後者花的物理時間會比前者少很多
所以工程師舊時代的知識還是有用的,因為你至少要知道你要產生什麼,你頭腦中還是
有一個roadmap
於是你從實作function開始外包給AI去完成並且review,之後是一個class,然後是
一個component,一個module,一個library,一個framework,最後是一個產品
但你都知道你在幹嘛
至於這樣子要幹麻?為什麼要這樣做?這樣做對工程師有什麼好處?
我會在之後的下一篇文章中比較詳細的闡述我的想法(如果沒拖稿的話XD
---
最後AI會不會可能想得比我還好?這的確是有可能,所以在正式工作中你可以在決定
內容之前先跟AI多討論,確定好後再實作
但你說會不會連一開始第一個問題,第一個方向,人類給出來就是錯的比AI差?
哈哈哈我覺得這好像就上升到哲學問題了,我暫時也沒有完全肯定答案
但我目前的信念是:
如果要設計給人用的產品,那最後只有人類懂得人類的需求能夠滿足人類
--
噓
07/26 01:40,
07/26 01:40
→
07/26 01:42,
07/26 01:42
→
07/26 01:43,
07/26 01:43
→
07/26 01:51,
07/26 01:51
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.163.108.32 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1777132390.A.B7F.html
推
04/26 00:02,
1小時前
, 1F
04/26 00:02, 1F
→
04/26 00:02,
1小時前
, 2F
04/26 00:02, 2F
→
04/26 00:02,
1小時前
, 3F
04/26 00:02, 3F
有道理 但我覺得每個人對 想法/code 的邊界可能都不太一樣
我覺得單純只有很high level的想法(例如:幫我實作一個Facebook)就跟我想表達的不太
一樣,這樣好像變單純的許願
我覺得作為軟體工程師你還是必須對你的prompt有一個具體的形狀,然後這個形狀是因
為你是人或是軟體工程師,你了解你們產品的需求,你了解有什麼trade off,所以你的
想法是這樣子
這也是我覺得目前junior跟senior在使用AI的方式上會有不同的地方
但這不是我文章想要著重的地方
先寫code是希望能夠先避免這種情況,先把條件寫嚴格一點
→
04/26 00:04,
1小時前
, 4F
04/26 00:04, 4F
※ 編輯: gigayaya (1.163.108.32 臺灣), 04/26/2026 00:13:11
推
04/26 00:30,
42分鐘前
, 5F
04/26 00:30, 5F
→
04/26 00:31,
41分鐘前
, 6F
04/26 00:31, 6F
→
04/26 00:32,
40分鐘前
, 7F
04/26 00:32, 7F
→
04/26 00:33,
39分鐘前
, 8F
04/26 00:33, 8F
所以說先不要糾結在那個答案上啦XD
我的意思是:
你知道code怎麼寫(或是大概),你要用AI去寫出來而不是你手動敲
這樣可以省時間,省下來的時間可以去用在更多需要思考的地方
至於你要怎麼達成這件事情,除了本來就要有的CS知識以外還需要使用AI的知識
※ 編輯: gigayaya (1.163.108.32 臺灣), 04/26/2026 00:41:57
推
04/26 00:40,
32分鐘前
, 9F
04/26 00:40, 9F
推
04/26 00:52,
20分鐘前
, 10F
04/26 00:52, 10F
→
04/26 00:54,
18分鐘前
, 11F
04/26 00:54, 11F
→
04/26 00:58,
14分鐘前
, 12F
04/26 00:58, 12F
→
04/26 00:59,
13分鐘前
, 13F
04/26 00:59, 13F
→
04/26 00:59,
13分鐘前
, 14F
04/26 00:59, 14F
推
04/26 00:59,
13分鐘前
, 15F
04/26 00:59, 15F
Soft_Job 近期熱門文章
PTT職涯區 即時熱門文章