The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

考證照真的沒用嗎?一個從業 20 年的 IT 主管告訴你他怎麼看!

其實無論在哪個國家都有推行證照制度,且行之有年,台灣當然也不例外,這件事一開始的立意都是好的,就是希望透過一套公平的考試制度,評估一個人的技術能力是否達到一定程度水準,不但能當成一個人的能力指標,也可以讓大家有個明確目標朝專業之路邁進。其他的行業我不清楚,但就我本身熟悉的 IT 產業來說,不知何年何月開始,大家開始對證照制度嗤之以鼻、不屑一顧,甚至覺得是一個人能力的負指標 (也就是能力不好的人才需要靠證照證明自己)。你說這現象是何等的詭異?是什麼樣的天時、地利、人和,可以讓一個原本立意良善的制度,變成人人喊打的落水狗,可能連有張證照都還不敢承認的地步。今天,就來談談我的個人見解。

... 繼續閱讀 ...

ASP.NET MVC 開發心得分享 (28):深入了解 ModelState 內部細節

在 ASP.NET MVC 的 模型繫結 (Model Binding) 完成之後,我們可以在 Controller / Action 中取得 ModelState 物件,一般來說我們都會用 ModelState.IsValid 來檢查在「模型繫結」的過程中所做的 輸入驗證 (Input Validation) 與 模型驗證 (Model Validation) 是否成功。不過,這個 ModelState 物件的用途很廣,裡面存有非常多模型繫結過程的狀態資訊,不但在 Controller 中能用,在 View 裡面也能使用,用的好的話,可以讓你的 Controller 更輕、View 也更乾淨,本篇文章將分享幾個 ModelState 的使用技巧。

... 繼續閱讀 ...

ASP.NET MVC 5.2.3 的 View 使用 Roslyn (C# 6.0) 編譯時的問題

最近發現目前的 ASP.NET MVC 5 最新版 (v5.2.3) 在搭配 Visual Studio 2015 進行開發時,在 View 頁面中使用 @Html.IdFor() 或 @Html.NameFor() 在搭配使用特定 Lambda 語法時會輸出奇怪的字元,由於所有強型別的 HtmlHeper 表單欄位輸出的內部都會用到 IdFor() 與 Namefor() 這兩個 API,所以這個問題將會導致這些表單欄位 HTML 輸出的時候產生錯誤的 id 與 name 屬性,當表單 POST 回 Controller 時將無法正確執行模型繫結 (Model Binding),所以會有接不到資料的情況,本篇文章將詳加說明發生的原因與暫時的解決方案。

... 繼續閱讀 ...

介紹好用工具:Win 10 內建的 PackageManagement 套件管理器 (OneGet)

OneGet 是微軟新一代 Windows 套件管理器 ( 類似 Ubuntu Linux 底下的 apt-get 工具 ),這名字還蠻漂亮的,不過前陣子卻把名稱改為 PackageManagement,但無論如何,我覺得 OneGet 比較好聽,你只要知道這兩個是一樣的東西就好了。 目前這套工具已經內建於 Windows 10 作業系統中,透過 PowerShell 的 Cmdlet 就可以呼叫使用,這個鮮為人知的全新工具試圖解決未來所有軟體安裝的問題,本篇文章將詳細介紹 OneGet 的基本概念與使用方式。

... 繼續閱讀 ...

我要成為前端工程師!給 JavaScript 新手的建議與學習資源整理

今年有越來越多企業開始跟我們接洽企業內訓的事,想請我幫他們培訓前端工程師,但你知道一個好的前端工程師絕對不是兩三個月可以養成的,需要多年的努力與磨練才會有點成績。而這幾年可謂前端正夯,有為數不少的人開始大規模的往前端開發移動,而我被問到最多的問題就是「請問 JavaScript 要怎麼學?」或「請問 JavaScript 該怎樣入門?」諸如此類的問題。大家都知道,對於一門程式技術來說,「會寫」與「會教」是兩個截然不同的領域,會寫 JavaScript 的人到處都是,但是會教的人就相對少很多了。我這幾年教授 JavaScript 開發實戰課程已經超過 15 梯次,在將近 500 位學員裡面,我所看到的大部分學員都是對 JavaScript 不勝理解,普遍處於一種一知半解、模糊不清的狀態。另一方面,我在公司內部也帶過不少工程師,總是有人會想學習 JavaScript 但不知道如何入門的情況,這讓我陷入深思,該如何幫助一個人學習 JavaScript 從入門到精通呢?本篇文章將說說我個人的一些想法與建議。

... 繼續閱讀 ...

介紹好用工具:Git Credential Manager for Windows (記憶 Git 常用密碼)

我在兩年前曾經分享過【透過 HTTP 與 HTTPS 連接 Git 儲存庫時如何記憶常用密碼】文章,當時該篇文章所提到的 Windows Credential Store for Git 專案已經不再維護了,取而代之的則是由微軟官方支援Git Credential Manager for Windows 版本。本篇文章主要用來介紹這個工具的使用方式與注意事項。

... 繼續閱讀 ...

如何將已經設定為 A3 紙張大小的 Word 文件縮小列印到 A4 紙張

最近收到一份電子報,由於內容還蠻不錯的,我想印出來放包包裡,隨時可以拿起來看。為什麼要印出來呢?因為他把內容版面都寫死了,由於版面很寬,要用桌上型電腦來看才會比較舒適,用手機看就很累了。另外,也因為版面很寬,就算印出來,輸出的版面也是大亂,所以只好將內容另存到 Word 文件中另行排版。但由於內容還不短,版面配置也有點複雜,所以重新排版內容也太浪費時間了。因此,我覺得將文件調整為 A3 大小,讓版面看起來至少是舒適的 (我好龜毛),所以我最後得到一份 A3 大小的 Word 文件。但是我手邊目前卻只有 A4 大小的紙張可以印,所以就找了一下 Word 2013 要如何設定,結果找了好久才找到,決定還是寫篇文章備查好了,以免日後再遇到相同的需求遇到找不到功能的情況。

... 繼續閱讀 ...

Jenkins on Windows 心得分享 (04):如何整合 GitHub, Bitbucket, Visual Studio Team Services 自動觸發建置動作

若要在 Jenkins 設定整合 GitHub / Bitbucket / Visual Studio Team Services  其實很簡單,有許多現成的外掛套件 (Plugin) 可以簡化設定的過程,有些方法則完全不用依賴外掛,Jenkins 內建就有一些整合的方式,只是在設定上還是有些注意事項。

... 繼續閱讀 ...

如何將 Open Live Writer 的草稿文章自動同步到 Dropbox 雲端硬碟

我原本已經把 Windows Live Writer (WLW) 編輯中的草稿文章設定自動與 Dropbox 同步,讓我在多台電腦之間都能同步撰寫到一半的文章,可惜的是 Open Live Writer (OLW) 將機碼路徑都改了,害我找不到新的機碼在哪,感謝開源的 Open Live Writer 讓我在短時間內就從原始碼中找到機碼的確切位置,不但能正確設定,甚至還能讓 Windows Live Writer 與 Open Live Writer 兩套軟體之間都能無縫接軌,因為這兩套軟體所支援的設定格式完全相容,以下就看我如何設定吧!

... 繼續閱讀 ...