EJS:Client 端嵌入式(Embedded)JavaScript

EJS 是一個 client 端的 JavaScript template library,可以讓整個網頁程式碼結構更清楚、更整潔。


一般的網頁程式設計師在開發網頁時,多多少少都會遇到這樣的 JavaScript 程式:
var html = "<h1>"+data.title+"</h1>"
html += "<ul>"
for(var i=0; i<data.supplies.length; i++) {
    html += "<li><a href='supplies/"+data.supplies[i]+"'>"
    html += data.supplies[i]+"</a></li>"
}
html += "</ul>"
這裡為了動態產生網頁內容,所以使用 JavaScript 來產生 HTML 程式碼,在傳統上如果是要在 client 產生這樣的動態內容都是這樣做的,但這樣的缺點就是程式碼架構比較雜亂,而且這樣的程式在修改上也比較不容易。

Stylus:Node.js 架構下的 CSS 前處理器

Stylus 是一個 Node.js 架構下的 CSS 前處理器,這裡介紹它的基本使用方式。


Stylus 是一種用來產生 CSS 的程式語言,其語法基本上是從傳統的 CSS 簡化而來,所以跟 CSS 的寫法類似,但是更精簡,另外也加入一些函數與運算的功能,讓使用上更彈性。

適合程式設計師編寫程式的免費等寬字型(Monospaced Font)整理

這裡整理了一些容易閱讀的等寬英文字型,適合程式設計師在編寫程式時使用。


一般程式設計師在撰寫程式時,通常都會需要閱讀大量的程式碼,為自己的開發環境選擇一個適合閱讀的字型,是一件很重要的事情。

TeXBook:在 Facebook 中用 TeX 輸入漂亮的數學式子

TeXBook 是一個 Google Chrome 瀏覽器的擴充功能,可以讓你在 facebook 中用 TeX 語法打出漂亮的數學式子。


如果你想要在 facebook 跟朋友聊天或是貼文時,加入一些數學式子,一般的作法都是使用 TeX 語法表示,然後讓閱讀者自己用眼睛與大腦編譯這些 TeX 公式,這種做法閱讀起來其實有點辛苦。

在 Linux 中架設 Git 伺服器教學(使用 SSH 加密傳輸)

這裡簡單說明在 Linux 中如何架設 Git 伺服器,將自己電腦中的 Git 專案放進伺服器中,讓整個團隊進行協同開發。


Git 伺服器所使用的傳輸協定分為好幾種,這裡介紹如何設定 SSH 加密傳輸的 Git 伺服器。

Netcat(Linux nc 指令)網路管理者工具實用範例

Netcat 是 Linux 系統下管理者常用的網路工具,這裡蒐集一些關於 Netcat 實用的範例。

瑞士刀

Netcat 是 Linux 系統中一個多功能的工具程式,雖然它只是一個小程式,但是能夠做的事情很多,就像瑞士刀一樣,幾乎任何使用 TCP 或 UDP 封包的動作都可以用它來達成,是許多系統管理者(包含我自己)最喜愛的網路診斷工具之一。

免費卡通著色圖案,自己列印製作小朋友的塗鴉畫本(著色本、畫冊)

這裡整理一些網路上免費的卡通著色圖案網站,家長們可以自己列印下來,製作成小朋友用的塗鴉畫本(著色本)。


許多父母親都會去書局或大賣場買畫冊或著色本給小朋友畫畫,但是我個人感覺這類的畫冊價格都很貴,其實如果有印表機,可以從網路上直接下載免費的著色畫紙,印下來裝訂一下,就是一本著色本了,成本不用幾塊錢。

Chrome V8 引擎使用 JavaScript 背景編譯技術大幅提升執行效能

Google 將 Chrome 的 JavaScript 編譯動作放在背景執行,改善瀏覽器的整體效能。


一直以來 Chrome 都不斷進行效能的改進,V8 引擎透過編譯 JavaScript 的方式,加速 JavaScript 的執行速度,在以前這個編譯動作是放在主要執行序(main thread)上來處理的,但是這樣的做法會對於 JavaScript 的執行效能有一些影響。

Bugzilla 安裝步驟教學(Ubuntu Linux)

這裡介紹如何在 Ubuntu Linux 中安裝 Bugzilla 這個 bug 追蹤與管理系統。


Bugzilla 是一套由 Mozilla 所開發的軟體缺陷追蹤的網路應用程式,它可以幫助軟體開發團隊搜集 bugs 的回報資料,並且提供一個整合性的追蹤與管理系統。

以下介紹在 Ubuntu Linux 中如何安裝 Bugzilla,安裝方式有兩種,一種是使用 apt 的方式,另外一種是手動安裝。

Node.js 與 Java 在同時性資料處理應用程式上的差異比較

這裡解釋為什麼 Node.js 架構在同時性資料處理應用程式上的效能會比傳統 Java 架構好的原因所在。


在討論 Node.js 與 Java 架構的差異之前,我們要先了解資料處理應用程式是什麼。

DevDocs.io:網頁應用程式開發專用的技術文件查閱工具

DevDocs.io 整合了一般網頁應用程式開發過程中常會用到的各種官方技術文件,可以讓網頁應用程式開發者快速查閱,加速開發流程。


現今的網頁技術琳琅滿目,一般的網頁應用程式都會需要結合各種技術,而程式開發者在開發時就會常常需要查詢各種技術的相關文件,最常見的就是要查詢某個函數的語法或參數如何使用,以及找尋簡單的範例讓自己可以很快的用在自己的程式中,但是一般這種情況如果使用 Google 這樣的搜尋引擎的話,要在搜尋結果中找到自己要的網頁或文件,通常都會浪費很多時間。

youtube-dl:下載 YouTube 影片的指令工具(支援 Windows、Linux 與 Mac OS X)

youtube-dl 是一個可以下載 YouTube、土豆網等數百個網站影片的命令列工具,這裡介紹如何安裝與使用 youtube-dl


youtube-dl 是一個以 Python 所寫成的小工具,適用於各種作業系統,常見的 Windows、Linux 與 Mac OS X 等都可以使用,其原始程式碼亦可從 GitHub 上下載。