天天看點

如果你是一個程式員,這篇文章說出了你的心聲

如果你是一個程式員,這篇文章說出了你的心聲

我曾經說過,程式員不是一般的人,是具有某種超能力的人。

但問題是,程式員往往意識不到自己的這種特異功能,在他們的眼裡,會認為自己很普通,跟常人一樣,是以,程式員能做到的事情,其他人 —— 比如他們的客戶/軟體使用者 —— 也應該很容易做到。

但事實上,由于大部分人 —— 絕大部分人(包括軟體開發公司的客戶/購買軟體的使用者) —— 都是電腦小白(對電腦知識/計算機知識/軟體知識知之甚少的人)。一個對于程式員來說很顯而易見的軟體操作,換成讓使用者來操作,就會出現各種各樣奇怪的事情。這讓程式員非常痛苦。

記得有一次,一個客戶打電話給我,說他電腦桌面上的大e找不到了,我沒聽懂,什麼大e找不到了?客戶解釋說:就是那個長的像大個兒的英文字母e的圖示找不到了。我倒。終于明白了他指的是桌面上的IE浏覽器的圖示不見了。

還有一次,有個客戶提出一個需求,要求在頁面上增加一個搜尋功能,我問它,系統裡有搜尋功能,為什麼還要在這個地方新增一個搜尋功能,他說他要的不是那個搜尋,他要的是在這個頁面上搜在某個關鍵詞。經過進一步的溝通,我明白了,他要的是浏覽器上的快捷鍵CTRL+F的功能。

因為使用者的這些特征,導緻了程式員認為完美的程式,到了客戶的手裡,卻變成極其難用的軟體,投訴電話如鄉下罵街的潑婦似的響個不停。而事後分析發現,根本原因都是應為程式員高估了使用者對軟體的掌控能力,低估了自己對軟體的創造能力,于是導緻了他們看這些客戶使用他們開發的軟體時,都是那樣一種可笑的行為,如下圖:

如果你是一個程式員,這篇文章說出了你的心聲

在程式員的眼裡,使用者是這樣使用他們開發的軟體的

如果是脾氣暴躁的程式員,遇到這種情況,難免會對着客戶發一頓牢騷,而且,程式員的脾氣一般都不是很好,是以,通常跟客戶溝通時,項目經理一般都是跟着一起,以免事态激化。

使用者雖然給程式員帶來很多麻煩,但其實程式員的所有榮耀感都來自客戶,因為隻有客戶用得滿意,程式員才會有成就感。比如像下面這幾個客戶在使用一個新款軟體時顯露出來的表情,足夠讓一個處在北京重度霧霾的下午的程式員也能露出笑容:

如果你是一個程式員,這篇文章說出了你的心聲

使用者在使用一款新軟體時的樣子

程式員雖然脾氣不好,但他們都是為工作着想,不帶任何個人恩怨。

當開發軟體有緊急任務時,他們都是任勞任怨的加班加點,當在已經釋出的軟體中出現了重大bug時,他們都會深深在自責,會連夜趕制出緊急修複bug,如果不能在第一時間讓使用者滿意,他們會茶不思、飯不想、覺不睡。

即使在實在沒有短期内完整的補救措施的情況下,他們也會想出一些歪招,但也是行之有效的方案,讓使用者暫時度過難關。比如,下面就是一個緊急修複更新檔:

如果你是一個程式員,這篇文章說出了你的心聲

使用者應該體諒程式員。程式員的生活實際處在一種十分沖突的狀态中。

程式設計不像其它行業,比如泥瓦匠砌磚,砌一層磚,牆就會高一次。但程式設計不一樣,有時候一個程式員寫了一天的代碼,急得滿頭大汗,但開發進度未必就有所進展,有時候甚至還會倒退。

軟體程式設計是一個亦虛亦實的世界,有時候你搞不清一段代碼為什麼好用,有時候也會詫異由那樣的代碼構成的軟體也能跑起來,正如下面這張圖檔中所示:

如果你是一個程式員,這篇文章說出了你的心聲

最後,說一下跟程式員打交道的一些注意事項。

程式員因為整天和程式設計邏輯打交道,是以對因果關系特别敏感。如果你的話語的因果關系不是很明确,這會讓他們感到疑惑,如果你的話語的因果關系不完整,這會讓他們辦錯事。如果你的話中有if,最好後面用then做結束,或者用else給出選擇,主語要明晰。如果不明晰,就會出現下圖中出現的事故:

如果你是一個程式員,這篇文章說出了你的心聲

如果你是一個程式員,你會了解我說的話。讓别人也看看,以後就會少很多誤解。

如果你是一個程式員,這篇文章說出了你的心聲

上面是我收集的一些視訊資源,在這個過程中幫到了我很多。如果你不想再體驗一次自學時找不到資料,沒人解答問題,堅持幾天便放棄的感受的話,可以加入我們扣扣群【313782132 】,裡面有各種軟體測試資源和技術讨論。

如果你是一個程式員,這篇文章說出了你的心聲

更多優質文章分享:

測試人員在靈活團隊中所扮演的角色

一篇對年輕程式員很有幫助的文章

如何做好自動化測試,揭秘阿裡巴巴分層自動化實踐之路

在做自動化測試之前你需要了解

關于軟體測試!你想知道的都在這裡了,小白必看!

10年自動化測試心得

比較而言!軟體測試和測試開發薪酬待遇差别那麼大?

10年軟體測試工程師感悟 — — 寫給還在迷茫中的朋友

軟體測試真的幹到35就幹不動了嗎?

最後: 在這裡我向大家推薦一個架構學習交流群。交流學習扣扣群:313782132 裡面會分享一些資深架構師錄制的視訊錄像:有Spring,MyBatis,Netty源碼分析,高并發、高性能、分布式、微服務架構的原理,JVM性能優化、分布式架構等這些成為架構師必備的知識體系。