Google 的書本掃描服務被認定為「合理使用」

Google 的書本掃描服務被認定為合理使用:「Google's Book-Scanning Project Ruled to Be Legal `Fair Use'」。

“Google’s unauthorized digitizing of copyright-protected works, creation of a search functionality and display of snippets from those works are non-infringing fair uses,” U.S. Circuit Judge Pierre Leval wrote on behalf of the court. “The purpose of the copying is highly transformative, the public display of text is limited and the revelations do not provide a significant market substitute for the protected aspects of the originals.”

看起來是一路打到第二巡迴上訴法院了?(負責紐約地區)

Crypto 101

Crypto 101 是一本近代密碼學的入門書,目前還在寫,原始的 TeX source 可以在 GitHub 的「crypto101/book」這邊看到。

其實內容不淺,講了很多新東西 (看到 Salsa20 出現的時候...),而且也講了很多攻擊方式。高階的東西 (SSL/TLS、PGP 系列) 也拉出來講。

等到完成的時候應該是很不錯的資料 :p

Python Practice Book

Python Practice Book 這份資料對於學過 Python 又不常用而導致常常忘記的人還蠻好用的,算是復健用的書?

裡面的範例都是以 Python 2 為主 (因為我拿 Python 3 測試,發現 print 用法不一樣了),不過還是不錯啦... 大量的範例程式碼可以看。

推薦《Build APIs You Won't Hate》這本書

7/26 就買了,算一算到現在也快四個禮拜,剛剛總算是讀完了,所以可以跟大家推薦《Build APIs You Won't Hate》這本書。

作者 Phil SturgeonPHP 的資深開發者,同時也是 PHP-FIG 的投票成員。

這本書講了很多 API 設計時會遇到的問題。作者不是直接講「用什麼方法是對的」,而是提出每一種方法的缺點,然後再下結論。

尤其是缺點的部份,呼應主題的「You won't hate」,如果你因為總總原因而無法設計出完美的 API,你至少要避免設計出你自己看了就討厭的 API。

裡面也給了很多程式範例 (大多都是 PHP),甚至告訴你寫 API 文件的重點。

推薦這本書給所有需要設計或實做 API 的人。

InnoDB Quick Reference Guide:對於剛接觸 InnoDB 的入門與參考書

在「The InnoDB Quick Reference Guide is now available」這邊看到有人把 MySQLInnoDB 資訊整理成書,電子書版本大約是 NTD$230 (用美金計算是寫這篇文章換算出來最便宜的價錢)。購買後有 PDF、Mobi 以及 ePub 版可以下載。

這本書適合打算要換 InnoDB、剛換 InnoDB,或是換了 InnoDB 但還沒遇過瓶頸的人閱讀。開頭的章節先解釋 InnoDB 有什麼特性,後面的章節會說明有哪些設定可以設,以及測試的工具。而最後面會說明要如何維護,以及要如何處理爛掉的狀況。

先暫時改用手機版的 Zite... (操作與 bug 比 iPad 好不少)

iPad 上的版本在看完文章後要按左上角的叉叉才能離開:

不過在 iPhone 上的版本在看完文章要回到總覽頁時,可以用右手「由左到右劃過」離開:

而且剛剛在 iPad 版上又遇到空白頁了:

其他幾套推薦的軟體也同時在測試中...

John Resig 寫超過三年的 Secrets of the JavaScript Ninja 終於出版了...

寫到從 Mozilla 換到 Khan 了... XD

John ResigjQuery 的建立者,並長期擔任 jQuery 的大頭 (不過目前已經將位置讓給其他人了,不太深入參與 jQuery 的發展了),所以在 John Resig 還在帶領 jQuery 發展時預定所要出版的書「Secrets of the JavaScript Ninja」備受期待。

The cover of Secrets of the JavaScript Ninja

然後這一期待就是三年... 從 2009 年開始寫 (參考「50% Off Secrets of the JavaScript Ninja」這篇),終於在 2012 年結束之前寫完上架了:

嗯,HUNTER×HUNTER 什麼時候會出下一章呢...

推薦《An Introduction to Programming in Go》這本書...

書的資料:

An Introduction to Programming in Go.
Copyright © 2012 by Caleb Doxsey
ISBN: 978-1478355823

以及網站:「An Introduction to Programming in Go」。有平裝實體書版本,也有電子 Kindle 版,網站上有 PDF 可以下載,或是直接 HTML 觀看。我是看完 HTML 版後買了一本 Kindle 版來翻...

這是一本講程式語言 Go 的入門書。看完後,我覺得這不是寫給第一次接觸程式語言而需要自己學習的人。這本書的編排,以及 Go 程式語言的特性,是寫給想要用 C++ 解決 C 問題卻弄的滿頭包的人另外一個方案。語言的特性很明顯可以感覺到 Go 想要找出更自然 (以及「優雅」) 的方式解決問題。

第三章講資料型態提到內建了 uint8uint16uint32uint64int8int16int32 以及 int64,以及 byte == uint8rune == int32。以前需要透過 autotools 的類的程式處理,現在是程式語言直接定義好。

然後支援 float32float64,以及 complex64complex128 直接避免 sqrt(-1) 的問題!內建 boolean (truefalse),把以前的壞習慣 (直接拿數字型態判斷) 處理掉...

第六章講內建 Arrays、Slices、Maps,這時候就可以發現 fmt.Println 可以直接輸出 (以前 C 就沒辦法用 printf 大絕直接對 array 輸出!) !然後很嚴格的不讓你在整數與小數之間亂轉...

而內建 Maps 這件事情超重要,已經是現在程式語言的基本資料型態 XD

第七章描述 Functions,把以前只能傳單變數的問題解決,並且介紹 Closure,然後介紹 Defer!是 Defer 啊!(該死的 fd leak...)

第十章 Concurrency 把以前用 POSIX threading library 的痛給解掉,多個 thread 要怎麼有效的互相傳資料一直都是痛 (超痛),引入 channel 的觀念內建進 Go...

很推薦購買的一本書,天瓏如果有進的話應該會再去拿一本實體...

ppk 的 ppk on JavaScript

星期五晚上去天瓏一趟,把 ppk 寫的《ppk on JavaScript》中文版抱回家看,可以趁著年假沒有網路時翻閱。

英文版是在 2006 年出版的,書評可以參考 othree 寫的「ppk on javascript 書評」,中文版在 2008/8 出版,由 Taobao UED 翻譯。

在講 JavaScript 的歷史時 ppk 提到:

在我寫這本書的時候,Ajax 的熱潮仍然席捲全球。但是我相信他最終會像 DHTML 那樣結束:人們會完全對它失去興趣,而它將會原形畢露,只是少量 JavaScript 和大量的空話,雖然我不知道這會在何時發生。

JavaScript 將回歸瘦時代,那時它的用途將再次被重定義,大型的解決方案將被精巧簡單的腳本所取代。

前面的趨勢似乎不會來臨,Ajax 被大幅證明對於操作介面的幫助,甚至還推動瀏覽器的升級。後面提到的事情,jQuery 這類 JavaScript Library 似乎符合 ppk 的想法。(jQuery UI 是另外一回事了...)

2009 年看 2006 年的人對於未來 (當時的未來) 的猜測還蠻有趣的。

博客來的網站的註冊頁面...

現在要遇到因為 Firefox 而導致「基本功能」不能用的網站其實還真的不多,除了學校與銀行的網站經常是 IE-only (噗),商業性網站通常還是會考慮 Firefox,畢竟網路重度使用者比較不會被網路交易的技術門檻擋到。

博客來從以前就很不 Firefox-friendly。剛剛想要訂「銀河鐵道之夜」,如果你用 Firefox,「加入會員」頁按「同意」是過不去的。

改去金石堂訂就沒這個問題 (然後發現單本就可以免運費到超商拿貨),那... 博客來 byebye... XD

Update:這兩天忙著其他東西所以沒找出原因,我測試的結果是,Firefox 3.1alpha、Firefox 3.0.6pre 點了「同意」都會失效,如果是 Windows 上的標準版本就沒問題。當時用了五分鐘看了 Javascript code 也看不出來 (不是直接判斷 "Firefox" 這個字),等有時間的時候我再找原因看看...