發表文章

人件 (Productive Projects and Teams)

圖片
  軟體公司是靠優秀工程師大腦來生產,所以要讓員工開心安靜地工作,才能有最高產能,真實世界卻反其道而行。   大衛艾克蜥蜴人傳說,世界由蜥蜴人統治,蜥蜴人需要靠吸食人類的恐懼過活,所以牠們很喜歡製造恐懼。聽起來鬼扯蛋,但最近閱讀嚴肅的職場管理書,卻愈來愈覺得恐懼管理是沒必要且惡意製造出來的。  比如生產供應鏈管理要賺錢,大家總覺得要任由客戶提出不合理要求,吃下庫存,並對供應商威脅苛扣,搞得大家都非常恐懼又不愉快,但"決戰庫存"這本書卻告訴我們,先要善待供應商,讓他們樂於配合,也要說服客戶需求平穩,等做到精準出貨後,大家都得利庫存減少財務改善,就會愈來愈願意合作;那些惡質手法反而對公司長久賺錢有害,最後惡化只有倒閉一途。  而這本講管理工程師的"人件",也談到反恐懼對公司有利。  傳統管理,就是要讓每一個工程師恐懼、活得痛苦不堪。給一個不合理的期限,要求程式能動就好,品質不重要等等,以壓榨為績效。  書中有位專案主管,答應高層說一個月可以把專案做完,高層立刻改口說要三周內做完,毫無理由僅為殺價而殺價,這不就是"決戰庫存"裡面講的沒信用工作夥伴?應要扭頭就走,因為貪得無厭又沒信用的人,絕對會把每個案子都搞爛掉。  還有員工工作環境,書中舉行編碼戰爭遊戲 (Coding War Game),參賽者在自已辦公司寫規定程式,看花多少時間。比賽結果最強與最差的人差了10倍,調查影響工作效率最主要因素,就是落後者的環境吵雜,不停地有人打斷他,而非能力較差。  但現在資本主義老闆,以給員工最狹小、吵雜的環境為榮,最好同時肩負十個專案,而且要隨叫隨到,不然就是不禮貌態度惡劣等等。完全沒察覺員工表現不好,就是自己管理造成的。  對員工摳門到極致,如果能幫公司賺錢也就罷,但實際上員工在惡劣環境、常加班短期限的管理之下,只能程式隨便寫寫,造成品質低落。  管理者總認為,苛扣員工是公司賺錢之道。現在股市看財報,股友注重短期利潤,更加重短視近利的風氣。但日本車企的故事,告訴我們實際上高品質與低成本可兼顧。正因高品質,客戶都願意買,量大之後,製造成本自然低了。近期德系汽車連連爆財務危機,也正是有一票管理者緊盯財報要求降低成本,當消費者發現花大錢買了要頻頻維修的劣質產品後,逐漸不買單了。...

軟體建構之道 2Code Complete 2

圖片
  你是資深員工,是同樣的事做十幾年呢?還是讀書精進了十幾年?不想做前者,這本書聽說當年很有名,網路上有電子版,但我習慣看紙本書,還是從圖書館借來看。  厚厚的一本,看了頗費腦力,進度很慢,前面大多談寫程式的原則與技巧,太過枯燥就跳過。  複雜程式簡化 比較有趣的是,他說人腦容量有限,所以程式寫得過於龐大複雜,這樣大家都看不懂。解決的方法就是寫成功能,有需要就呼叫那個功能,不用去理解功能內複雜邏輯,這樣就可把程式控制在可以看得懂的範圍。如果程式過於複雜難解,就是這個系統腐爛的警訊。  書中提議如下:  ■將整個系統在建築架構的層級劃分為多個子系統'好讓你可以   一次專注系統的一小部分。  ■謹慎地定義類別介面,如此才可以忽略類別內部的連作。  ■將由類別介面表達的抽象概念保存下來,這樣你不用去記關連的細節。  ■避免使用全域資料'因為全域資料會使你在任何一個時間點需要考慮的程式碼大為增加。  ■避免使用深度的繼承層級,因為那需要智力。  ■避免使用深層的迴圈和條件陳述式’因為它可以被較簡讯且不  傷腦力的控制結構所取代。  ■避免使用goto,這個跳躍式的語法會令人摸不清頭緒。  ■謹慎地制定處理錯誤的方法,不要隨恵製造使用各式各樣不同的錯誤處理技術。  ■系統化地使用內建的例外處裡機制,否則它會成為非線性的控 制結構,變得跟goto—樣容易造成混淆。 ■不要讓單一類別太過於龐大,鹿大到將整個程式的功用都集 中在它裡面。  ■保持常式簡短。  ■使用淸楚並能充分表示其功用的變數名稱,這棣就可以省F腦  力去記如「i是帳戶索引,j是顧客索引,還是反過來?」之類  細節。  ■盡量滅少傅給曲式參數的數目,或更重要的足,只傅輸為保持常式介面抽象概念必要的參數。              ■迪用慣例以避免浪費腦力去記憶程式碼不同部分無關聯的隨機 的不同。  ■ 一般而言,隨處只耍可能,應攻克第五篇所談的程式碼改善問題。  AI是否會消滅工程師 最近很紅的AI取代軟體工程師問題,沒...

堆肥製作

圖片
 本來不想介紹,因為堆肥製作看起來總是髒兮兮地,但因為用自製堆肥生產的水果超級好吃,很多人都在問,所以介紹一下 1.收集蔬果皮或生肉,依照政府規定,只能用生的,不可煮過,更不能調味,農作物很怕鹽。 蔬果皮有屬性,香蕉皮是鉀肥,蘿蔔皮是硼肥,雞蛋殼與海鮮是磷肥,看到都優先考慮做堆肥。 一台老舊果汁機專門用來打碎,增加發酵速度。肉占比約1/20,肉太多會很臭。 2.打碎後丟入堆肥桶,保持半乾略濕狀態,太乾不會發酵,太濕會臭。發酵到變黑,有很多小蹣爬行,就已腐熟成功,可以拿去施肥了。 3.底下有盆子接腐化的水 4.黑水收集起來,分多個玻璃罐,愈往左時間愈久,放久了臭味消失,變成青草茶的氣味,也就是充分腐熟,可拿去當水肥用。 我是每次澆花時都加一點水肥。

關於mRNA疫苗 (Inside mRNA Vaccines )

圖片
  影片詳細介紹mRNA疫苗原理,有動畫容易理解,勸大家都要看。 簡而言之,就是把一段程式碼放進你體內,到處複製產生相同的病毒棘蛋白,引發免疫系統反應。這跟電腦病毒不是很像嗎!當初想解釋給IT同仁聽,沒人聽得進去全去打疫苗,如果早點有這影片就好了,就可跟他們解釋就像寫一段會到處感染亂寫的程式碼,你敢放進系統裡嗎?這系統還是你自己的身體 這mRNA到處亂跑,被感染的細胞都會產生棘蛋白,引起免疫系統到處消滅被感染的細胞,才導致嚴重後遺症。 老套路,沒有測試,藉口疫情到處施打,施打後就算做過實驗測試了,以後還有許多mRNA基改產品蓄勢待發,大家要提高警覺。 影片連結如下,記得打開中文字幕 關於mRNA疫苗 追加推薦影片 突然死亡

如何用原始鍋具讓巧克力結晶

圖片
  在costco看了半天巧克力,發現裡面都有不少不良添加物,如棕梠油、香精、色素等等,所以極力推薦自己做。我現在都不買市售巧克力了。 ************* 發現大家都覺得做巧克力很難,因為控制結晶溫度要謹慎,但買專業器材又嫌燒錢佔空間,所以我發明土法煉鋼法介紹一下。 我這次做了三種巧克力,分別是金桔、酒漬櫻桃與麥盧卡蜂蜜。。 封裝大抵是外鍋用60度水把巧克力融化後,把內餡封起來後,敲100下去除氣泡。 我喜歡用台灣本土的邱氏可可膏,新鮮度高香氣十足。模具喜歡用透明硬塑膠模,不會有塑化劑的味道,但結晶就十分重要,不然巧克力會無法脫模。 封裝好了以後,燒一大鍋熱水,溫度到攝氏40度 水要浸泡到最底層的模具 把三層都放上去蓋起來,讓巧克力慢慢升溫後再降溫,等徹底冷卻後,再拿到冰箱冷藏一天,就可脫模了。結晶順利的話,應該一敲就掉下來,巧克力是全黑的。 以前做過的成品供參考

無瑕的程式碼 番外篇

圖片
無瑕的程式碼本已是軟體工程師必讀作品,作者還出了本番外篇,專講職場做人處事,翻來看受益頗多。  看這本書感覺就像有個親切的老前輩,教導你職場要注意那些事情,想想自己大學畢業投入職場,不懂事硬碰硬,弄得自己一身傷,這樣的老前輩人人必須。  作品有些像懺悔錄,自己年輕時做得蠢事毫不猶豫寫出來,清楚寫出從屁孩走向成人之路,可讀性甚高。比如自恃功力高就不把公司規定當一回事,結果被開除。  還有一次作者在一家明知無望的公司當高層,燒光了第一輪投資,正在找第二三輪投資,每天高壓鞭策屬下、開除無法達到進度的員工,其實他自己都厭惡這樣做。直到有天妻子要他照照鏡子,他看到一個面目可憎的人,突然醒悟不能再繼續,於是辭職,開始做起顧問工作。  書中教很多有用的技巧,比如上級逼問你幾天可以交出程式時,作者建議保守估計,不能做出來就坦誠以告,讓主管能去找備援方案,這才是最負責任的作法。隨便說一個樂觀的日期,最後卻無法達成,是最糟糕的。這一點幾乎馬上就在我現實工作中用到了。  作者也質疑,醫師要經過多年訓練才能主掌開刀,為何大家會覺得工程師剛大學畢業就可以動手做大案子,覺得不可思議。  年輕時看到寫得很爛的程式會開罵,但職場滾久了,現在都覺得很可憐,因為職場願意培訓新人的意願不高,就像作者寫得那樣,所以這些新人就只好土法煉鋼亂寫一通,當然會給後續維護帶來困擾,造成很多不定時炸彈。  作者建議應該讓老人手把手帶新人,老人的身教,經驗與各種寫作習慣,對年輕人都非常重要。作者還推薦結隊寫程式,就是兩個人一起寫程式,雖然不符合工程師孤僻的習性,但結隊會指出彼此的缺點、建議,確實學得特別快。  作者建議應該把多人固定組成一團隊,一次完成一個案子,長久下來培養默契就會有驚人的效率。但常見公司的習慣都是一人塞多件案子,不同案子彼此干擾,打斷專一思考,造成效能低下,作者認為這很荒唐。 但通常這時公司高層會歸咎這名員工素質低劣,不會檢討自己管理問題,然後員工憤而辭職跳槽到別家公司,沒有這種畸形管理,又搖身一變成為高效員工,可見原因根本不在員工本身。 強力推薦這本書給每一位工程師。 作者  Robert C. Martin 出版社 博碩文化

創新之後

圖片
創新之後這本書,主要是講現代社會怪象,大家都在談創新,談新產品,沒人談維護,甚至維護薪水還偏低。而實際上買了產品後,仔細維護讓他能順利運作非常重要,為何會這樣呢? 現在後遺症愈來愈嚴重,你以為歐美很先進,實際上飽受建設沒人維護之苦,火車破爛班次不准,橋會垮,連清潔飲水都有問題。 政府要選舉,大家都想聽政客做啥新建設,沒人想聽政客說把舊建設維護得很好;上市公司要發表新產品,股價才高,沒人想聽舊產品很穩定好用,久而久之就造成貶低維護人員的風氣。 書中覺得是長久教育觀念制度造成,但我覺得這也是人性缺陷,不注意珍惜天天在身邊的事物。 最典型的例子如家庭主婦,把家裡打掃乾淨、衣服洗乾淨並熨燙摺好,煮上熱騰騰充滿愛心的菜,照顧好公婆教育好孩子,但往往男人會對她評價很低,認為沒收入靠自己吃飯,表現出鄙夷態度。 什麼時候會發現維護很重要呢?當太太鬧離婚遠走高飛,男人才發覺過去妻子幫自己做了那麼多事,但這時已經無法挽回。 IT界傳說,有時要讓公司小當機一下,但自己還是能挽回,不然公司運作良好,老闆會想"我養你幹啥!",態度愈發惡劣。 遇到同事說某IT人員很閒,我解釋好的IT人員會預先規畫良好讓公司運作順暢,所以他很閒,爛的IT人員才讓公司頻頻出狀況要花時間解問題,但外行的同仁很難聽進去。 《黃帝內經》說「上醫治未病,中醫治欲病,下醫治已病」,但多年職場經驗,發覺上醫最惹人厭,跟人家說你不處理一下將來會怎樣,別人會覺得你在貶低他、詛咒他、恐嚇他、想騙錢等等。摳門老闆非得要東西壞了,讓他生意沒法做,才願意痛下決心花錢處理,這時營業額損失就大了。 把維護貶低後,薪水低又沒形象,大家就開始轉行,學歷通膨加劇這個問題,明明社會需要大量專科生維護機械、環境,學校卻製造出大量講理論不動手的大學生,浪費年輕人四年,畢業後又眼高手低缺乏就業市場。慢慢既有的建設就逐漸損壞,生活品質愈來愈差。美國就遇到這個問題,作者說安全的道路、橋梁,清潔飲水,應該是基本人權,但現在似乎愈來愈難求。 說創新還有個好處,就是大家都不懂,容易騙錢。比如傳染病,媒體總是喜歡說有種新病毒,然後死了幾個人,很可怕!然後媒體就幾個人幾個人地報導,製造恐慌,然後開始要政府買疫苗新藥等等,藥商大筆賺錢。但老的法定傳染病如肺結核,查一下2023年每10萬人28例,比新冠多得多,為何不報導?因為治療法已確定,藥物專利過期...