① 程序員不喜歡什麼,在廣州藍景做開發的朋友說,他不喜歡加班改別人的bug,你們呢
程序員最討厭不確定性。
Debug的時候,在怪異再棘手的問題,只要可以穩定重現,都遲早可以解決。「穩定重現」的意思是只要按一定的步驟做下來,問題就可以重演。
最討厭的就是那種時有時沒有,不知道什麼時候出現的bug。改了代碼不知道有沒有效,也不知道是否引入了新問題。可以把碼農逼瘋。
引入到生活中對人對物的態度也是一個道理。無緣無故發脾氣又不說為什麼的女朋友,言而無信說到做不到的人,約好的事情被放鴿子... 這些都是不確定性。
程序員對不可控的不確定性因素也是有解決方案的。在代碼里頭把異常try-catch-finally一下,做好補救收尾,在加上幾行注釋警醒後來人這里別亂動。對隨機發生的問題,對應方案就是假設這里永遠都會有問題,把隨機的行為轉化為降格的確定行為。就比如隨機發脾氣的女朋友吧,就會放棄研究發脾氣的原因,不求治本,而是假設她永遠會發脾氣,專注「哄」的工作也就是catch裡面的內容。
② 為什麼程序員最討厭BUG呢
bug對程序員來說就是無休止的代碼和加班,還有無數的測試和改進,是牽一發而動全身的一種狀況
③ 為防被程序員「砍」,產品經理需要注意這些場景
互聯網行業中,眾人熱衷於討論「程序員砍產品經理」。雖然,「砍」更多是調侃的意思,一種消遣工作的方式;但是,這不是一個飯後笑話,側面反應了產品經理和程序員間的對立關系。很多時候,產品經理和程序員間就像對手,產品研發過程就像打仗,總要爭個你死我亡。「砍」的本質,是程序員表達對產品經理的不滿,也是一種情緒的宣洩。
在產品研發的過程中,產品經理與程序員對立關系,會嚴重影響項目的推進。一旦產品經理和程序員對立關系公開化,很容易導致團隊人心渙散。這種對立關系,經常滋生出一些極端的事情,罵娘、打架已屢見不鮮。
下文就列舉一些程序員想砍產品經理的場景。這些場景都是我過去和很多程序員朋友交流時,他們遇到的對產品不滿的場景。這些場景,都會以產品經理的溝通話語表現出來。通過這些場景,去解析這種對立關系產生的原因。以及,作為對照,產品經理應該如何規避和處理這種對立關系。
這樣說法是程序員們最不喜歡的,最容易惹毛程序員的。這句話,在程序員們看來就是削減工時、加班的代名詞,他們當然不喜歡。而且他們也非常討厭,一個非技術人員為技術人員做技術難度的定論。簡不簡單,都需要技術人員做了技術評估,才能下結論。
這種言語,會讓程序員們覺得產品經理不靠譜。大家通常都是比較排斥借鑒。借鑒你也得有合理明確的理由。以我某程序員朋友的話來說:微信怎麼做的,你就怎麼做,那你不如去微信做產品算了。
每個產品,在表面的UI下,都有其背後的復雜的業務邏輯。如果產品經理只是叫程序員照著某個產品做,很多時候技術們是很難實現的,因為他們也需要弄懂背後的邏輯和流程。當然,這應該是產品經理的工作。
這就是抬杠。產品經理雖然名字裡面有「經理」二字,但並沒有經理的權利,當然不能命令合作的技術們。這句話,言下之意也是拒絕了商量和討論。而程序員也需要參與感和團隊感。
這就是質疑他人能力,是人都不會喜歡。如果產品經理提出的方案,程序員們沒有理解。那就說明產品經理的解釋說明和文檔,做的不夠優秀,不夠簡潔易懂。讓程序員們理解需求,是產品經理的基本工作內容。
在互聯網產品開發中,修改需求和插入新需求都是挺常見的。對於程序員們來說,這是非常不爽的事情。這種操作通常會打斷程序員的思路,思路被打斷是非常痛苦的。當然,這樣也會影響他們的開發效率。更可怕的是,反復的修改需求,會使他們有種勞動成果不被尊重的感受,同時也會對項目的未來抱有懷疑的態度。反復的更改方案,也說明產品經理設計是未經過嚴密的論證,或對細節的把控是不夠。
程序員都比較討厭反復的催促。當項目的節點確定後,技術們會嚴格遵守節點,產品應該信任他們。當然,時間比較緊湊時,反復催促也會加大程序員們的壓力,使他們變得非常煩躁。在這種時候,催促就是添麻煩。
甩鍋會導致團隊分崩離析,人心不齊。不管任何問題,都是團隊的責任,不要將責任指定給某人。特別是在項目復盤時,如果心態不好同事,這是非常難堪的。所以,我們要盡量以原因和結果為導向,而不是責任為導向。
程序員也是也是團隊的一份子,有權利知道知道需求的背景。同時,了解需求背景也利於程序員們更好的開發程序。
產品經理給程序員們畫餅是最不切實際的,只會引起大家的反感。程序員都是喜歡偏實際的東西,虛的東西只會招致白眼。
任何傳遞給程序員的需求,都是需要有計劃和規范的。如果口頭傳達一個需求,很容易導致開發出的功能與需求不匹配。同時,因為缺乏相關的記錄和文檔,可能會造成需求流失。這對於程序員們來說,可能就是延遲、加班、返工、擔責等等風險。這是團隊合作的大忌,也是項目管理不專業的體現。
以上的這些場景,可能出現一次,程序員們都會順著我們的想法做。但是,這會漸漸改變程序員們的心態,最終會使產品經理與程序員間產生隔閡和矛盾。如果出現這些場景,作為產品經理都需要小心的處理好,以免影響項目的正常推進。當然,最好是不要出現這些場景。作為產品經理,我們的最終目標,都是要保證我們的產品,准時、保質、保量的落地。
產品經理在與程序員們合作時,產品經理需要講究合作共贏、互相體諒。在產品經理的相關工作中,最要避免的就是抬杠。抬杠是一切矛盾的根源。很多時候,產品經理要站在程序員的角度考慮問題。比如,對於產品來說可能就是改改需求,但對於程序員,他們更在意的可能是因為改需求而導致的加班。
產品經理在工作中,經常會追求產品上的極致。追求極致本身是好事,但是切忌過分偏執。我們也需要考慮團隊的現狀和資源,在極致和現實間尋找均衡。畢竟,如果沒有喬布斯的團隊,要像喬布斯一樣做產品,只會拖垮團隊。
在產品開發的過程,改需求、改方案等項目異常,都是不可避免的。這是項目管理的第一部分。如何進行項目異常的處理,考驗的是產品經理的溝通能力和項目管理能力。產品經理需要在保持技術們高效工作的情況下,完成項目異常的處理。
當然,在產品經理工作中,矛盾的根源也並不總是產品經理。有時候,也可能是某些程序員的性格或者對該工作的態度導致的。這時候,產品經理要明確,作為團隊的潤滑劑,有責任推動和協調大家的工作。如果,矛盾不可調和,我們需要盡早提出問題、控制風險,避免「勉強」行事。
有時候,程序員在私下評價一起工作的產品經理時,總是會補加一句「我感覺我也能做產品經理」。這句話的背後,是產品經理沒有讓程序員們感受到產品工作的價值。在這種背景下,產品經理是很難獲取程序員們的注重,也會為很多爭論埋下誘因。那如何感受到我們工作的價值那?其實很簡單,就是保持工作信息的透明。將我們針對需求和產品做的相關工作,體現在我們的溝通或者文檔中。
導致程序員想「砍」產品經理,本質是產品經理工作方式的問題,也有情商的問題。在我的產品經理工作經驗中,我總結下了以下四點,我們需要注意和避免的。這四點,都可以和上文的場景相對應,是最容易慢慢改變程序員的心態的。
④ 作為程序員你在工作中最討厭聽到的話是什麼
布置任務,理解需求,團隊協作等相關的工作中,良好的溝通和信息同步有利於減少甚至消除團隊成員理解差異。
然而有些項目經理/產品經理/業務,喜歡說「這個需求很簡單的,我只講一次」,在他們眼裡一些「簡單的功能「無需多講或者討論,其實領任務的程序員沒有context,很難做需求分解、評估開發工作量,比如某個web應用要做個許可權管理模塊,初看起來這個需求很常見且簡單啊,基於RBAC來設計開發唄,還可以用這些現成的框架技術(例如shiro)。
但是對於程序員來講這個看起來常見的功能需求,context很重要,比如:用戶數據哪裡來?以什麼方式登錄?怎麼校驗登錄基本信息?怎麼維護用戶信息(例如OA同步過來的數據之後有些賬號凍結了,不同的數據源之間咋同步?同步頻率?),登錄跨應用嗎?這個許可權管理功能給誰用?(不同角色使用對功能的要求不同,基於shiro等框架開發的許可權管理模塊受限於框架技術,如果想要有個完整的操作界面或者做更細節/復雜的許可權配置,那麼類似shiro的框架往往不適用)。
仔細想想,自己有時候接了任務,評估工作量進入詳細設計、開發狀態後往往需要中後期增加溝通、協調資源、加班趕進度,很多次是因為當初需求未做充分溝通了解清楚,致使需求拆解不夠清晰(小),導致評估量化很不準確,要靠加班來趕進度
⑤ 大部分程序員都討厭人事嗎
一般是不會的。
一,請不要人為的給某個群體打上某種標簽,你遇到的不論讓你喜歡禪銷的還是討厭的,都只是一個群體里的少數個體。他們可能有某種共性,但這種共性可枝襲高能並不普遍適用,這種喜歡或者討厭的感覺也應該是歸屬於某個個體而不是這個群體。
二,同在一個公司里,分工不相同,隔行如隔山,但猛尺是都是給老闆打工的,沒有本質的不同,沒有天然的對立,大家都很忙。
⑥ 產品經理在工作中的哪些不足最容易引起程序員的反感
1.自以為是
2.沒有很好的把產品的理念和規劃傳遞給程序員,讓程序員感覺不到其存在的價值
3.需求不明確
4.溝通主觀性太強,總是以客戶就是這么說的為借口,忽悠程序員
5.前後不一致
⑦ 者調查告訴你:程序員最討厭什麼編程語言
作為一個多面手的程序員來說,也許他最討厭匯編語言。因為匯編語言畢竟是僅僅高於機器語言(即:使用真正的二進制機器代碼編寫程序)的編程語言,然後通過匯編語言的編譯器,將程序員編寫的匯編語言源程序,翻譯成機器可執行的二進制代碼(機器語言)。
但是由於匯編語言從整體結構、以及程序語句上來講,它畢竟還是不如其它高級程序設計語言(例如:C、C++、JAVA、Python等)來得容易閱讀和編寫、它還是畢竟比較抽象的。故程序員最討厭的還是匯編語言編程。但是如果從和計算機硬體底層打交道、或者是確實需要提高計算機軟體的性能的角度上來講,確實又離不開匯編語言的功勞。