2014年7月31日
超輕量化JavaScript除錯工具
“Debugging sucks. Testing rocks!”,如同Google工程師所說,與測試工作比起來,除錯實在是一件很沒效益的事,尤其是當問題已經發生,頭已經抱著燒的狀況下要除錯更是苦不堪言。倒底測試有多重要呢?Google甚至還開始提倡一個馬桶上的測試活動 "Testing on the Toilet"!不過這篇倒不是要跟大家介紹Google如何逼工程師一邊上廁所一邊測試(有點扯遠了),而是就算已經做好妥善的測試,除錯仍是避免不了的工作,經過上一篇IE你別鬧了的經驗後,發現雖然工作上不常用到JavaScript,但是一旦遇到這方面的問題,除錯過程總是非常惱人,尤其我們還需要把各種瀏覽器版本都檢查過一遍才行。當時正好在網路上看到了一個簡單好用的JavaScript除錯工具– Deb.js,雖然說是除錯工具,但更精准地說,Deb.js算是"將function的參數及結果自動地輸出到Console.log的一個小工具"。
2014年7月24日
在網頁上顯示程式碼 - Code Prettify tool
最近開始著手將一些技術相關文章整理至部落格上,由於有些內容是範例程式碼,通常需要在網頁上呈現較易讀的樣式,因此就順手(

利用<pre/> 或是 >code/> 語法
因此我們大多直接下海編輯HTML內容,改用<pre/>或是<code/>的標籤來標記程式碼,另一種方式是採用HTML5的格式,以<pre/><code class=”language-java> …</code></pre> 的這種將兩個標籤搭配使用的方式。
2014年7月19日
輕鬆聊之Hierarchical Clustering
上一次我們介紹了K-means分群演算法,今天來介紹另外一個分群(Clustering)演算法-Hierarchical Clustering,中文好像叫階層分群法。
一般Hierarchical Clustering有兩個方式來產生最後的樹狀結構,
- 聚積(Agglomerative),Bottom-up
- 分裂(Divisive),Top-down
今天介紹的是比較常用的bottom-up的方式,直接來看圖說故事吧。
2014年7月18日
輕鬆聊之K-Means演算法
上次跟大家簡單介紹了一下KNN演算法,今天介紹一下很容易跟KNN搞混的K-means演算法,不過兩個其實差蠻多的,只有名字比較像而已。K-means主要講的就是「物以類聚」,只要中心思想是相近的,就可以歸在同一類。
K-means是一個分群(Clustering)的演算法,不需要有預先標記好的資料(unlabeled data),屬於非監督式學習(Unsupervised learning)。主要是用來做常常被使用在資料分群,簡單的說就是把一堆資料根據你判斷相近的邏輯,把這一堆資料分成k群。
2014年7月13日
輕鬆聊之KNN演算法
今天來簡單介紹一下KNN演算法,全名叫K-nearest neighbors algorithm。KNN可以說是機器學習(Machine Learning)中最簡單的演算法,簡單到我連Sample Code都不想寫給你看(其實是懶),只要記住下面這五個字,「西瓜偎大邊」就可以完全了解這個演算法的奧義。
讓我們來想想一個情況,有一天晚上俊傑騎著機車正在回家的路上,不小心捲進了一群飆車族的械鬥,他環視了一下發現總共有三群飆車族,身上的衣服分別是黃、灰、紅。他已經在車陣之中,而且處境非常的危險,所以俊傑有兩條路可以選
2014年7月7日
[投影片] Regular Expression 101
Regular Expression(正規表示式)或簡寫Regex,是一個滿有趣的東西。一般的程式設計師都聽過,也可能有用過,大部分都是找範例剪剪貼貼湊出式子。實際上我很少遇到自稱熟Regular Expression的人。或許是因為Regular Expression是由一堆符號組成,看起來有點複雜讓人望之卻步,但是其實只要花個兩三天的時間好好的認識它跟稍微練習一下,之後你會感受到百倍的回報。