跳到主要內容

把事做好,不能只靠能力

 

今年重新整修廚房,遇到了三個問題,都是櫥櫃安裝師傅的錯誤態度造成的。

犯錯不承認

在安裝水槽、水龍頭時,需要先關閉家中水塔的供水,這位師傅關了一次沒成功,又再去關第二次,待他安裝完離開後,我們發現家中水壓變得異常的小。我初步判斷跟師傅關閉水塔管路非常相關,因為在這之前都很正常,但是我們向師傅反應時,他卻說他只有開關管路而已,並沒動到其他部分,並說我們家水壓本來就比較小。言下之意是說跟他沒關係,不是他造成的。但是當天晚上我們反覆測試與確認,認為還是跟開關水塔管路有關。隔天還是知會設計公司派水電師傅來檢查,後來的確發現是櫥櫃師傅關錯水管線路造成。

不懂裝懂

到了安裝洗碗機門片時,櫥櫃師傅告知我們洗碗機額外附上的鐵片是避震用,但沒想到洗碗機原廠師傅來時,卻說那個額外的鐵片是用來安裝門片用的,因此櫥櫃師傅安裝方法不對。這令我們有點生氣,他完全不懂卻說得那麼篤定。

未事先準備

而安裝 IH 爐時,我們聽到他跟同事交談說是第一次安裝。早上裝完後,下午設計公司又派人來重裝,並解釋說原本用接插頭的方式,易造成過熱而插頭熔掉,改成電線連接比較安全。我們都心想還好剛剛只有稍微測試,還好沒真的開始用。

態度才是重點

每個人都有其能力限制,清楚的認識自己能做什麼、不能做什麼,比一昧相信自己都能辦到更好。這位安裝師傅在面對自己不擅長的項目時,如果能事先做更多準備,事後能以謹慎態度面對,我想我們的觀感也不會這麼差。而且看起來他也沒有從第一次犯錯中學習,後面兩次犯錯在我看來都是同樣的態度造成。雖然最終都沒造成什麼嚴重的後果,但誰能保證下次也能這麼幸運呢?

留言

這個網誌中的熱門文章

iframe DOM 被移動造成重新載入

如果用 javascript 去搬動 iframe DOM 的位置, 瀏覽器會將其內容重新載入,這是現有 HTML 規格 > When an iframe element is inserted into a document that has a browsing context, the user agent must create a nested browsing context, and then process the iframe attributes for the "first time". 範例: http://jsfiddle.net/pZ23B/ 測試結果: * Safari 3.1 / Win: reload * Opera 9.5 / Win: reload * IE10: reload * IE7 / IE8: not reload (部份摘自 https://bugzilla.mozilla.org/show_bug.cgi?id=254144 ) 參考: * https://bugzilla.mozilla.org/show_bug.cgi?id=254144

Web Dynpro 前後端資料流動機制 (Dataflow)

在Web Dynpro中提供3種資料流機制[1],只要適當地設定,可以不用寫程式就將畫面、中間層控制器(controller)到後端模型物件的資料自動化地、牢靠地綁在一起,使得不管前後端某一方有資料變動,變動部份都會自動地流動來保持一致性,使得前後端都能存取到同一份資料。 context 關鍵元件是 context,每個controller都有一份屬於自己的context,它扮演MVC架構中的M (model),web dynpro的實做方式比較像是該controller的「資料空間」,它由node(資料節點)與attribute(資料屬性)組成,controller可以透過wdContext這個預先產生好的 shortcut variable(捷徑變數)去取得context的資料內容。 context中必須要建立node才可以儲存資料,一個node代表一個collection(集合物件)裡面仍可以含有node, attribute,node裡面的一份資料實體就是一個element,一個node可以有一個或多個element(這部份可以透過cardinality property設定),其結構就是該node所包含的結構。 data binding 此種機制可以將UI元件的資料跟context中的某個node或attribute綁定在一起,context中的改變會自動 更新到UI元件上,UI元件的改變也會自動寫入到綁定的context node(or attribute)中。通常UI元件所綁定的node(attribute)是由component controller對應過來的。 context mapping 每一個controller都有屬於自己的context(資料空間)如果要達到彼此共享資料,則要透過context mapping機制,一旦mapping設定好,則會在另一個context產生一個同樣的結構的node,兩邊的controller會存取到的是同一分資料,任何一邊的資料更動都會散佈到設定好mapping的node。 不過在web dynpro裡,只允許將custom controller or component controller的node對應到view controller去,不允許從view controller對應回來,主因是嚴格遵守MVC...

JavaScript 關掉瀏覽器頁面

如果你直接呼叫 window.close() 來關掉目前的頁面的話,你應該會在 console 看到以下訊息: Scripts may close only the windows that were opened by it. ( 我在 Chrome, Firefox, IE 11 都試過) 主因就是你並沒有用 JavaScript 開啟這個頁面,所以也不能用 JavaScript 關掉它。這是 HTML window.close() 的規格 規定,各家瀏覽器應該都遵循。 隨著瀏覽器安全性增加,以下方法已經不適用了,可參考 這個討論 。 有個變通的辦法就是: window.open(location, '_self').close();