2015年4月25日 星期六

npm 在 windows 上安裝新套件的目錄

雖然官網 https://docs.npmjs.com/files/folders 說是安裝在 node.exe 的所在目錄,但根據實測是安裝在執行 npm 時所在的目錄下

滿令人困惑的…留個記錄

另外第一次安裝新套件時會出現錯誤訊息,解決方式在 http://stackoverflow.com/questions/25093276/node-js-windows-error-enoent-stat-c-users-rt-appdata-roaming-npm

client side javascript library 移植到 node.js 時的考量

http://www.codeproject.com/Articles/568136/Porting-and-Extending-PDFJS-to-NodeJS

這篇文章主要是在講如何將 pdf.js 移植到 node.js 上作為伺服端的程式庫。當程式庫在設計時沒有與瀏覽器作適當的 decouple 時,這個移植就會是個大工程,可以參考 pdf2json 專案(是本文作者張先生的作品)。這篇文章講到幾個重點,例如 global 變數要作什麼處理,伺服端沒有的函式、物件要怎麼辦,等等的問題。



在命令提示視窗(Command Prompt)顯示UTF-8內容

方法1:使用 powershell 代替 cmd.exe (推薦)

方法2 :使用 chcp (不推)

http://blog.darkthread.net/post-2011-08-11-command-prompt-codepage.aspx

使用 chcp 65001 指令,但是 python 的互動模式會無法正常工作。切回原來狀態要下達:

chcp 950

由 node.js 重新認識 javascript

node.js 的出現,改變了大家的認知,那就是" javascript 是專為瀏覽器而存在的" 的不正確。事實上,就像 PHP 可以作為腳本語言使用, node.js 的出現也使得 javascript 作為泛用腳本語言成為常態。(這泛用是針對 M$ 的 cscript 而言 XD)

當然, node.js 比起 php 又好上一截,它通吃前後兩端,因此同一個商業邏輯只要寫一次,這是為什麼 TIOBE 網站中這兩個語言互有消長的原因吧。

簡介

對寫程式有概念的人,可以簡單回顧一下 nodejs

使用 docker 安裝 nodejs (XNIX系統限定) http://blog.abhinav.ca/blog/2014/06/17/develop-a-nodejs-app-with-docker/

陳鍾誠老師對 nodejs 的上手教學

以 node.js 撰寫腳本程式


中文

[Node.js] 學習筆記:取得命令列參數、與使用 Numbers() 轉換數字

英文

http://shapeshed.com/command-line-utilities-with-nodejs/

http://justindavis.co/2014/11/24/using-command-line-arguments-in-a-node-script/

http://stackoverflow.com/questions/12398236/one-liner-nix-command-to-pipe-json-object-keys-as-arguments-to-shell-command

使用同步子行程取得額外訊息 https://strongloop.com/strongblog/node-js-v0-12-shell-programming-synchronous-child-process/

同步法枚舉所有子目錄/檔案 http://blog.modulus.io/nodejs-scripts

命令列參數的處理方式

https://github.com/bcoe/yargs

https://github.com/substack/minimist

javascript 教學


用 Node.js 學 JavaScript 語言(1)簡介與安裝
用 Node.js 學 JavaScript 語言(2)基本控制
用 Node.js 學 JavaScript 語言(3)函數、參數與閉包

JavaScript 語言核心(1)重新開始 (系列文十餘篇,可以由頁面所附連結造訪)

2015年4月16日 星期四

網站排名查詢:alexa

http://www.alexa.com/topsites/countries/TW

這是以國家來區分的排名,例如台灣的熱門網站列表

想要做 data mining / metasearch 的話,這是個不錯的參考資料

2015年4月13日 星期一

windows 上手動安裝 perl 模組

其實在 cpan 裏面的模組,不是全部都需要 compile 它的 makefile 才能運作。很多情況下,作者是使用了預設的工具 makemaker 來建立整個 toolchain ,但是其實裏面沒有 c 的原始碼需要編譯,只要把它解壓縮到 perl 安裝目錄的 lib 子目錄就可以正常的使用;甚至更懶一點,解壓在任意位置後,改寫 INC 變數將該位置納入搜尋模組的環境變數;最懶的情況就是解壓後,直接在解壓的目錄引用該模組,這是唯一不需任何設定的情況,因為 perl 的預設搜尋位置是有該 main:: 模組所在目錄的。因此即使沒有人 port 到 ppm ,在 windows 上還是可以使用大部份 cpan 上的模組的。


2015年4月10日 星期五

30秒了解git


這是最常被拿來說明 git 的一張圖,就用它來說明這些名詞。
  1. branch:每一條由上由下由箭頭所組成的直線,圖中還以同樣顏色的小圓點表示分/合
  2. tag :上面說到的小圓點,就是使用者在某個時間點幫某些檔案打上的版本號碼
  3. commit:承上,打版本號碼這個動作就叫做commit
  4. index / stage:承上上,"某些檔案"的列表,稱之
  5. push:兩個branch匯集到同一個小圓點
  6. merge:承上,解決匯集時內容不同的過程
  7. branching:產生一個新的branch這個動作,是push的相反,一個小圓發出兩個箭頭
  8. head:任一個branch中最新的一版(最下面的小圓點);符號參照名稱 (symref)
  9. clone:在另一個資料庫複製某個branch(的某個tag,通常是最新的一版)