為什么你的設計團隊中需要一名程序員?
英文原文:Why You Should Include Your Developer In The Design Process
一名優(yōu)秀的設計師應該會編程嗎?有關這個問題的爭論每天都在博客上、Twitter 上,以及公司召開的會議中不斷上演,永無休止。人們更多地關心設計師本身有沒有編程的能力,卻沒有考慮到是否應該在設計團隊中直接引入一名程序員。這真的是讓人遺憾的事,甚至會為他們的爭論感到著急。因為對于一場有關產(chǎn)品設計的討論中,程序員其實能夠起到非常重要的作用。
但令人遺憾的是,許多設計師對于他們的工作來說都有一種「精英主義」,覺得只有他們才能打造出專業(yè)的、符合潮流的設計??墒鞘聦嵣线@并不正確。
事實上,每個人都有能力為一部好的設計作品建言獻策,其中當然包括了程序員。當然,一名經(jīng)驗豐富的設計師也許在設計方案的尋找上顯得更加老練專業(yè),但是設計師們都應該不斷的提醒自己,時刻保持一顆謙虛的心,保持開放的心態(tài)面對所有人提出的建議,尤其是那些來自程序員的建議。以下是程序員為什么要加入設計團隊的若干理由:
設計團隊里面缺失程序員的風險
在 Digg 還特別流行的那段時間里,我記得曾經(jīng)在丹尼爾·博卡(Daniel Burka)(Digg 的***設計師)和喬·思湯普(Digg ***程序員)之間有一場非常著名的爭論。那個時候丹尼爾想要在 Digg 的「按鈕」上做出一次設計上的變動。對于丹尼爾來說,這個變動就是微小的一點;但對于***程序員喬來說,即便設計上微小的一點變動都會對整個網(wǎng)站的響應時間產(chǎn)生巨大的影響。為了適應這一點點的變化 Digg 網(wǎng)站必須提升自己的處理效率,改善服務器的內(nèi)部架構。
這就是程序員沒有融入到設計團隊中的一個典型案例,它由此帶來的結(jié)果有可能是災難性質(zhì)的。設計方案的出爐有可能無法付諸于現(xiàn)實;更有可能大大提高系統(tǒng)的復雜程度。當設計師提出的某種方案在他和程序員之間反復拉鋸爭論的時候,方案一改再改,一拖再拖,所有的時間都浪費在上面。而這一切就源于一個原因:從設計最初就沒有引入一名程序員。
程序員能夠提升設計上的「現(xiàn)實可操作性」
我們不僅需要程序員來消滅那些不切實際的想法,同樣還需要在我們某個忽視掉的環(huán)節(jié)上建言獻策。我們也許由于自己的專業(yè)受限,會將一些可能性給過濾掉,這個時候就需要程序員將這些可能性找回來了。
程序員不僅會在某些時候否決掉我們的想法,更有能力帶著我們的想法去向更遠的地方。曾經(jīng)我就與一些程序員們就具體問題展開討論,他們提出來的東西完全是我之前沒有想到,也覺得不可能成真的事。如果當時場上沒有他們把關并且評估,我們對一個項目的判斷和研究上會缺失很多東西。
程序員的「主人翁意識」更加強烈
***一個重要的原因決定了設計團隊中程序員不可或缺的地位,他們擁有更加強烈的「主人翁意識」。他們在介入到一個項目中的時候,往往更加投入,更加積極。有些時候,他們是決策鏈的***一環(huán),他們的聲音之所以被人忽略,是因為他們太晚才介入到項目中去,很多意見已經(jīng)不符合當時的發(fā)展狀態(tài)。越早地讓他們介入,他們越能積極主動的地去從技術的角度給出最合理化的建議。