Product is a Party, Not Chess
產品是一場派對,而不是棋局
Be smart about introducing programmers to customers, but do it!
要聰明地將程式設計師介紹給客戶,但一定要這樣做!
My blood is boiling. I’ve been researching the CTO role, trying to understand the technical executive responsibilities & the various ways they can bundle together. I was listening to the CTO Insights podcast, when I heard this.
我的血在沸騰。我一直在研究 CTO 的角色,試圖了解技術高管的責任以及他們可以如何組合在一起。我在聽 CTO Insights 播客時,聽到了這個。
“Yeah, I totally agree. I mean, look, the other piece of this is, some engineers aren't customer-facing ready. And I mean, no offense, but the neckbeard types, and there's a few people with ASD in our world, and that's okay.
“是的,我完全同意。我的意思是,看看這個問題的另一面,有些工程師並不適合面對客戶。我的意思是,沒有冒犯的意思,但有些人是頸鬚型的,在我們的世界裡有幾個人有自閉症譜系障礙,這沒問題。”That's great. I mean, it takes all kinds. And it's probably extremely uncomfortable for some of those people to do that.”
那太好了。我的意思是,各種各樣的人都有。而對於其中一些人來說,這樣做可能非常不舒服。From CTO Insights Podcast: Mastering the CTO Role with Drew Falkman, Sep 13, 2024
來自 CTO Insights 播客:與德魯·法克曼一起掌握 CTO 角色,2024 年 9 月 13 日This material may be protected by copyright.
本材料可能受到版權保護。
I had to stop listening. Walk faster. Stop for breakfast. Walk some more.
我必須停止聆聽。走得快一些。停下來吃早餐。再走一會兒。
Of all the arrogant, contemptuous, infantilizing, narrow-minded, self-centered things to say. In 2024.
在 2024 年,所有傲慢、輕蔑、幼稚、狹隘、自私的言論中。
Here’s what I heard: 我聽到的是:
Compassion 同情
Okay, anger is a reminder to defend one’s boundaries. I’ve heard that reminder. I’m about to defend my boundaries, but with compassion & constructive conversation. Contempt is also a reminder, a reminder of self-doubt.
好的,憤怒是捍衛自己界限的提醒。我聽到了這個提醒。我即將捍衛我的界限,但會以同情心和建設性的對話來進行。輕蔑也是一種提醒,提醒著自我懷疑。
I don’t know the folks involved in the podcast personally, so I can only speculate & extrapolate from my own experience. In my experience, product people who try to “protect” customers from programmers (or is it protect programmers from customers, I can never quite tell?) seem insecure about the value they bring to the whole team. If every request doesn’t filter through them, well, then what are they adding? If they don’t make the priority decisions, well, then maybe they are superfluous to the process.
我不認識參與這個播客的人,所以我只能根據自己的經驗進行推測和推斷。根據我的經驗,試圖“保護”客戶免受程序員影響的產品人員(或者說是保護程序員免受客戶影響,我總是搞不清楚?)似乎對自己在整個團隊中所帶來的價值感到不安。如果每個請求都不經過他們,那麼他們到底在增加什麼價值?如果他們不做優先級決策,那麼也許他們對這個過程來說是多餘的。
Hey, product folks, I see you. You’re going to be okay. You have substantial contributions to make to software development. Just not like this.
嘿,產品團隊,我看到了你們。你們會沒事的。你們對軟體開發有重要的貢獻。只是這樣不行。
Programmers Are People 程式設計師是人類
I’m not going to go on & on here. I wanted to be sure to plant my flag on the subject. Here’s the thing—direct contact between programmers & customers of all kinds is a powerful tool:
我不打算在這裡嘮叨。我想確保在這個主題上表明我的立場。事情是這樣的——程序員與各類客戶之間的直接接觸是一個強大的工具:
Programmers understanding the nuances of users needs can make small adjustments that have large outcomes.
理解用戶需求細微差別的程式設計師可以進行小調整,從而產生重大影響。Programmers gain emotional energy from seeing the consequences of their work. This energy turns into better results.
程序員從看到他們工作的結果中獲得情感能量。這種能量轉化為更好的成果。Programmers understanding the cost of features can identify subtle opportunities for features in conversation with customers.
程序員了解功能的成本,可以在與客戶的對話中識別出微妙的功能機會。
I’m not saying it’s a free-for-all, just throw the programmers & customers together (well, actually I am saying that—see also XP—but only after thorough preparation). Help programmers learn customer communication skills, what kinds of things to say & what kinds of things not to say (I’m still learning these lessons).
我不是說這是一個自由競爭的環境,只是把程式設計師和客戶放在一起(其實我是這麼說的——參見 XP——但這僅在充分準備之後)。幫助程式設計師學習客戶溝通技巧,該說什麼和不該說什麼(我仍在學習這些教訓)。
The comment above about autists is both ignorant & condescending. My sense is that while autists are often drawn to programming, the density has diminished over the years as more normies become programmers. And the autists can also learn communication skills, so that’s a dumb excuse.
上述關於自閉症患者的評論既無知又居高臨下。我的感覺是,雖然自閉症患者通常對程式設計感興趣,但隨著更多的正常人變成程式設計師,這種密度在多年中已經減少。而且自閉症患者也可以學習溝通技巧,所以這是一個愚蠢的藉口。
My metaphor for product leadership is less chess player moving helpless pieces & more party host. “You really should talk to so-and-so! I think you’d really get along.” Keep a sense of the mood of the party, where & how to intervene.
我對產品領導的比喻是,與其說是無助地移動棋子的棋手,不如說是派對的主持人。“你真的應該和某某談談!我覺得你們會很合得來。”保持對派對氛圍的感知,知道何時和如何介入。
Responsibility 責任
I’ll finish with a cautionary word to anyone who has a platform. Don’t say stupid shit, discriminatory shit, contemptuous shit. Your platform comes with responsibility. You won’t feel the consequences of your mistakes, so you need to make yourself feel those consequences. Otherwise you’re running open loop & that never ends well.
我想以一個警示的話語結束,對於任何擁有平台的人來說。不要說愚蠢的話、歧視的話、輕蔑的話。你的平台伴隨著責任。你不會感受到自己錯誤的後果,因此你需要讓自己感受到這些後果。否則你就是在運行一個開放的循環,而這永遠不會有好的結局。
Peace. 和平。
Subscribe to Software Design: Tidy First?
訂閱《軟體設計:先整理嗎?》
Software design is an exercise in human relationships. So are all the other techniques we use to develop software. How can we geeks get better at technique as one way of getting better at relationships?
軟體設計是一種人際關係的練習。我們用來開發軟體的所有其他技術也是如此。我們這些極客如何能在技術上變得更好,作為改善人際關係的一種方式?
Also please note that there is at least one other episode of the CTO Insight Podcast that might be worth listening to. ;)
Like you, I have been doing this awhile, and it really depends on the person. When hiring programmers, I look for these skills as I agree that it makes everything go more smoothly. But I haven't always been able to find them. And I coach those who don't, but communication skills are hard to acquire. Sometimes, I can include a developer without the skills in the meeting, but mostly to listen and answer questions, with someone more skilled leading.