了解這些技術(shù)思維,讓你變成更受程序員歡迎的產(chǎn)品經(jīng)理
懂技術(shù)對于產(chǎn)品經(jīng)理來說有諸多好處,這并不是為了讓產(chǎn)品經(jīng)理變成研發(fā),其主要目的在于降低產(chǎn)品經(jīng)理和開發(fā)的溝通成本。要想了解技術(shù),首先需要知道技術(shù)源頭在哪里,本篇文章分享了相關(guān)的技術(shù)基礎(chǔ)知識,希望能對你有所幫助。
產(chǎn)品經(jīng)理在技術(shù)那人人平等,但如果你懂點技術(shù),你會比其他人更加平等。
懂點技術(shù)的好處毋庸置疑,作為公司中最受技術(shù)歡迎的產(chǎn)品經(jīng)理,現(xiàn)身說法。簡單來說,因為你要和技術(shù)對接,如果你知道他們平時在怎么做事、核心在關(guān)心什么問題,那會讓你們溝通成本大大降低。
所以,明確目的,我們懂技術(shù)是為了降低溝通成本,而不是為了自己變成研發(fā)。當然如果你從此激發(fā)了興趣,那算另一回事。
一、要懂技術(shù),那技術(shù)的源頭在哪里
技術(shù)同學的能力并不是從石頭里蹦出來,一出生就有的。簡單來說,絕大多數(shù)技術(shù)的起點都是因為大學選了計算機專業(yè)而已,大家都是平常人,不存在什么“技術(shù)有不同于常人的思維”。所以想了解技術(shù),我們只需要知道他們大學學了什么就能有個大概輪廓。
那么計算機專業(yè)到底在學什么,又是為了解決什么問題呢?
下面是一些底層知識,雖然沒法直接應用,但能幫助你了解計算機世界的大體輪廓。
想看實際運用的同學,就跳到下一個標題處吧~
那首先,我們來說計算機要解決什么問題,可以這么認為:計算機的發(fā)明就是為了處理數(shù)據(jù)。
我們可以把計算機想象成一個黑盒子,盒子一頭是“輸入”,另一頭就是“輸出”,盒子內(nèi)部就是“處理過程”。比如我們讓小朋友計算“1+3等于幾”,那這個問題就是“輸入”,小朋友比著手指一個個數(shù)的過程,就是數(shù)據(jù)的“處理過程”,最后他說是“4”,那就是“輸出”。
整個計算機專業(yè)的核心原理就可以概括為“輸入”、“處理過程”、“輸出”。
但這種模型還是過于粗糙,為了進一步了解,我們就來看看計算機專業(yè)的四大專業(yè)課吧。這四位天王分別是:《計算機組成原理》、《計算機操作系統(tǒng)》、《數(shù)據(jù)結(jié)構(gòu)與算法》、《計算機網(wǎng)絡(luò)》。
它們共同組成了我們熟知的計算機世界。那它們是怎么配合的呢?
眾所周知,計算機是由硬件和軟件兩部分組成的。
《計算機組成原理》書入其名,講述的是怎么用硬件來組成一臺計算機。
拓展一下:計算機硬件中最核心的就是晶體管。晶體管的本質(zhì)就是一個開關(guān),它有三個種類:與門(and)、或門(or)、非門(not),通過這三種邏輯控制電流的輸入、輸出,人們就在這個基礎(chǔ)上,搭建了無比復雜的計算機世界。
《操作系統(tǒng)》講述的是配置在計算機硬件上的第一層軟件,比如window、Linux等等。
我們把《計算機組成原理》和《操作系統(tǒng)》組合在一起,就得到了一臺PC機。
而無論表現(xiàn)形式多么不同,人們使用計算機的最終目的就是處理數(shù)據(jù)。
比如你玩王者榮耀會看到傷害數(shù)字、刷抖音背后支持你的是推薦算法。你可以把計算機里流動的數(shù)據(jù)想象成一個個Excel表,那游戲和抖音的表格肯定不一樣,研究如何組織、提取這些數(shù)據(jù)的就是《數(shù)據(jù)結(jié)構(gòu)與算法》了。而不同的《數(shù)據(jù)結(jié)構(gòu)與算法》決定了計算機處理數(shù)據(jù)的效率。
上面說的都是單獨的計算機,那研究如何把單獨的計算機組織起來,成為“互聯(lián)網(wǎng)”的就是《計算機網(wǎng)絡(luò)》了。
至此,《計算機組成原理》、《計算機操作系統(tǒng)》、《數(shù)據(jù)結(jié)構(gòu)與算法》、《計算機網(wǎng)絡(luò)》就組成了計算機技術(shù)中最核心最基礎(chǔ)的知識。
在我們實際工作中,產(chǎn)品經(jīng)理用到最多的就是《數(shù)據(jù)結(jié)構(gòu)與算法》、《計算機網(wǎng)絡(luò)》了。
二、了解你需求的數(shù)據(jù)結(jié)構(gòu)
用研發(fā)的語言定義好你需求的數(shù)據(jù)結(jié)構(gòu),就能幫助研發(fā)快速理解你想要啥,極大降低溝通成本。而且,這種方法我親身實踐過,非常簡單。
數(shù)據(jù)結(jié)構(gòu)分兩種,基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)和復合數(shù)據(jù)結(jié)構(gòu)?;A(chǔ)數(shù)據(jù)結(jié)構(gòu)就像不同形狀的磚塊,復合數(shù)據(jù)結(jié)構(gòu)就是用磚塊自由設(shè)計搭好的房子。
基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)和實例
那首先看下基礎(chǔ)數(shù)據(jù)結(jié)構(gòu),比如:
你需要整數(shù),就給研發(fā)說要:int
需要小數(shù),就說要:float,最多保留X位
要文本,就說:str,或者說“字符串”
如果是想表示要么是“true”,要么是“false”,這種二選一的情況的,就說此處是個“布爾值”
比如,像這種需求描述:
練習試次:游戲中的操作次數(shù)
正確率:游戲的正確率
你就可以改為:
練習試次:int,含義是游戲中的操作次數(shù)
正確率:float,最多保留1位小數(shù)。含義是游戲的正確率
還有像這種:
在進度條區(qū)域,根據(jù)單元完成情況配置一條文案描述
單元全部完成:今日訓練已全部完成!
可以改為:
在進度條區(qū)域,if 單元狀態(tài)==已完成
展示一條str,內(nèi)容為:
“今日訓練已全部完成!”
這樣的好處就是改起來很方便,研發(fā)同學也容易找到重點。
不過在基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)中,我日常用的最多的,其實是“變量”這個概念,因為我們需求中的文案可能常會變來變?nèi)サ?,所以用變量提前把它標示出來,給研發(fā)同學一個心理準備,是不錯的選擇。
比如,在開發(fā)一個報告的需求時,我會這么告訴研發(fā):
【】里面是 變量
再生成一個表格,一列title為“內(nèi)容”,比如:
【報告完成日期】,【用戶名稱】完成了【測評報告名稱】
一列title為“數(shù)據(jù)結(jié)構(gòu)”,比如:
【報告完成日期】 實例: 2023年1月21日
【用戶名稱】
If 是后臺生成的隨機id: 則【用戶名稱】==“孩子”
If 是用戶手動改的值: 則【用戶名稱】==【用戶手動改的值】
【測評報告名稱】 值==“暫未確定,待確定后@相關(guān)人員”
說完了應用,我們來嘮嘮為什么有數(shù)據(jù)類型這回事。主要是因為計算機能處理的數(shù)據(jù)太多樣了,如果啥類型都不分,找起來很難找,比如,文本、圖形、音頻、視頻、網(wǎng)頁(就好像最近大家常提的AI的多模態(tài)能力一樣),你可以直觀感覺到它們的類型不太一樣。
人腦處理復雜信息能力有限,而分類,就是為了更好地開發(fā)。
三、復合數(shù)據(jù)結(jié)構(gòu)和實例
你有可能看到研發(fā)在群里發(fā)過類似的東西:
{“name”: “John”,
“age”: 30,
“isStudent”: false }
這種由花括號括起來的玩意就是復合數(shù)據(jù)結(jié)構(gòu),它叫做JSON。你可以把JSON這種格式理解為TXT之于文本格式。
JSON在Web開發(fā)被中廣泛應用于前后端通信、配置文件、數(shù)據(jù)存儲等場景,也就是說它在前端、后端、運維、測試、數(shù)據(jù)分析那都是通用的。
那如果我們會用它寫需求,可就太方便了。
說回到上面的例子,換你用自然語言表達,可能就會寫成:“一個名叫John的用戶,不是學生,現(xiàn)在30歲”,和JSON格式對比,還是JSON清晰一些。
以前,你可能會這么寫:
“展示由當前單元的全部任務串成的進度條,包含任務icon、任務名稱及任務的一級能力名稱”。
現(xiàn)在,你可以這樣寫:
進度條:
{
“任務icon”:png,分辨率待定
“任務名稱”:str,長度不超過4個漢字
“任務一級能力名稱”:str,長度不超過4個漢字
}
四、進一步,定義你的異常
計算機網(wǎng)絡(luò)包含了大量異常判定,比如我們常見的“404”,其實就是在說“客戶端(也就是發(fā)起請求的電腦)請求的東西在服務器上找不到”。
所以,我們看一看計算機網(wǎng)絡(luò)對異常的分類,就能對大部分異常有所了解。
上面說的“404”學名叫:HTTP狀態(tài)碼,它由三位數(shù)字組成,其中第一個數(shù)字定義了響應的類別。
以下是一些常見的HTTP狀態(tài)碼及其含義可供你檢索:
1. 看到4開頭,就是客戶端的問題
4xx(客戶端錯誤狀態(tài)碼):請求包含錯誤語法或無法完成請求。
- 400 Bad Request:服務器無法理解請求的格式。
- 401 Unauthorized:請求要求身份驗證。
- 403 Forbidden:服務器拒絕請求。
- 404 Not Found:服務器找不到請求的資源。
2. 看到5開頭,就是服務器的問題
5xx(服務器錯誤狀態(tài)碼):服務器在處理請求的過程中發(fā)生了錯誤。
- 500 Internal Server Error:服務器遇到錯誤,無法完成請求。
- 501 Not Implemented:服務器不具備完成請求的功能。
- 503 Service Unavailable:服務器暫時無法處理請求(可能是過載或維護)。
五、最后,產(chǎn)品經(jīng)理需要了解技術(shù)到什么程度
要說得出OSI模型的7層結(jié)構(gòu)嗎?要能選擇出哪種技術(shù)實現(xiàn)路線更好嗎?
這都是我在面試時遇到的真實問題,實話說,我一向不理解這種問百度一下或者GPT一下就能出來答案的問題意義何在。
產(chǎn)品經(jīng)理了解技術(shù),目的只是為了和技術(shù)在溝通時更方便而已,如果要選出技術(shù)路線,不如直接去找個研發(fā)。
感謝你看到這里,如果還想了解產(chǎn)品經(jīng)理的技術(shù)學習路徑或者還有什么其他建議,請留言。
作者:探索者,公眾號:探索者的神廟
本文由 @探索者 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自 Unsplash,基于CC0協(xié)議。
該文觀點僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務。
挺簡單易懂的,能夠快速學到 !
博主寫的也太清晰易懂了!完全沒有想到prd可以以這個視角去寫,求繼續(xù)更新!
好嘞~
不錯,總結(jié)的很到位
會excel和函數(shù),就行了。數(shù)據(jù)庫就是表格,函數(shù)就是接口調(diào)用
嗯嗯,是這個意思
接口返參異??偨Y(jié)的好經(jīng)典
有幫助就好~
很受用,期待更新!
好嘞,也推薦下我的公眾號:探索者的神廟,會更新這里不好放的工具類文章,歡迎關(guān)注