Skip to main content

· 7 min read

20132014年都曬過書架,今年繼續獻曝。(今年能紀錄的共讀 115 本,23539 頁),63 本是電子書(54%),比例首次超過實體書。不過這也許是因為更多原本線上的小說也出了實體書,讓我也得以紀錄下來的關係?

來曬一下今年看過的書,順便從中推薦些好書(由近至遠)

今年的開始似乎是從 Remote Work (中國譯做 重來 2) 開始,看看知名團隊如何遠端工作還蠻新鮮的。

團隊之美
讓我觸動最深的一句話是:「好工具的關鍵不是說不再需要人們,而是讓人們更快樂。」

矽谷之火
全本在 kindle 上看完的矽谷歷史書,

「西部人認為自己是一往無前的牛仔,失敗對於他們來說,不過是一種更快速的獲取經驗的途徑罷了。」

看那些媒體沒告訴我們的個人電腦史,看那些湮沒在時間中,對個人電腦發展留下貢獻的人們。相當精彩

之後看的 黑客列傳 也還可以,沒這本驚豔。

食戟之靈
無論是作者或繪者都超認真地構思與呈現符合每個選手風格的料理

萬曆十五年
禁得起時間考驗,已出版經年的書,讀來還是精彩

頂尖業務員都在用的 3T 筆記術

雖然標題聳動,但內容卻意外地紮實。

書中講到業務要做好的兩個要件:
思考:不斷思考「接下來該做什麼?怎麼做會比較好?」

行動:採取確切行動。

 

和小朋友一起讀童書其實很有趣。當一本書翻多遍時,你可以從中找到許多觀察與講述的方法。

 從 0 到 1

「今天的任務是找到獨一無二的方法創造新事物,不只讓未來變得不一樣,而且要更好,所以我們要從 0 到 1。最重要的第一步是自己獨立思考。唯有重新看待世界,像古人首次見到它那樣覺得新鮮古怪,我們才能重新創造,並將更好的未來留給後世。」

我們已經漸漸實現了過去所想像的未來。現在需要的,是從過去的經驗中,尋找出我們對下個未來的想像。

先讓英雄救貓咪

之前看電影類 yy 小說時反覆被提到的編劇聖經

一個人的會議時間
我還是頗愛看個人時間管理相關的書

價值主張年代
Business Canvas 作為經常被提及與使用的工具,這本書其實不太好讀

今年應該會找日本作者寫的「圖解獲利世代」 看看。

失控

1980 年的大部頭舊書,把人與科技合在一起,當作一個有機生物體來觀察它的發展的想法值得思考。我們現在把手機,Siri 或運用網路的能力視為人的一部分,還能看到個體間更大的差異。

河圖洛書前傳
提到中國上古文化裡其實是有數位基因的,不論真實性如何,就算當作小說看,這樣的立論也很有趣。

計時器讀書法
15min 一段專注力的週期 + 3min 最後的跳躍。
保持非整數時間,讓人有強迫繼續補完的動力,不強制休息時間,讓實行起來更不困難。
都是高明的心理技巧。

這本小書一看完,馬上將手機的倒數計時器設成 18 分鐘。

不賣東西,賣體驗
「這名女性真正想要的並不是卡地亞 Tank Francaise 腕錶這項「商品」,她要的是在聖誕夜,男朋友陪她到銀座卡地亞總店,在裝潢華麗的店裡,接受女店員恭敬的服務,買下女店員用戴著白手套的手,從盒子裡取出的 Tank Francaise 腕錶的那份 ' 體驗 '。」

光看這段就有顛覆三觀之效

為什麼聰明人都用方格筆記本?
看了後腦波很弱地馬上去買了方格筆記本來用。目前使用尚稱順暢。

有沒有 XXX 的八卦
書名不正經,但內容出乎意料的充實

SCRUM 
將敏捷開發法用在各行各業。

有人說過「所有的模型都是錯的,但有些比較好用 (All models are wrong; but some are useful)」,這本有詳細地講解目前科技圈最愛說自己有在用的 SCRUM 開發方法。

小結:

21 世紀,書也已經不是唯一獲取知識的方式。也許該綜合一下,若有方便的方法,也應該把看過的電影 / 按贊過的 Youtube 影片 / SlideShare 等也列一列。

· One min read

I got my Dell XPS 13 (9343) for a while and decide to install Ubuntu 15.10 as duel boot.

By following the guide its pretty easy to get a Ubuntu environment. To setup my daily develop environment, I take the foxbox setup script for 14.04 and everything works fine.

So for windows user who want develop FirefoxOS gaia with real device, I recommend you try foxbox first. If you have more commitment, install the Ubuntu. With duel boot you can keep windows and have a more developer friendly environment to develop connecting devices.

· One min read

As the Firefox OS Settings Peer, I still feel its not efficient to toggle everything in Settings, because it needs too many steps such as: 1. Open Settings app, 2. Find proper item, which may located in sub panels, 3. Do the action with that setting.

During hackthon in Taipei last month, Yifan and I made the Quick Settings Enhancement Addon, and now its available on marketplace (within the :debug mode).

How it looks like?

The addon add plenty of Settings switch(NFC, Internet Sharing, Lock Orientation, Battery Saving Mode, Geolocation, Enable USB Storage), Settings shortcut (Developer panel configs), Power menu shortcut (Silence Incomming Calls) and.....the Flashlight to quick settings menu!

We also found it will take a lot of estate of your utility tray, so FYR we'd propose a at most 2 clicks mockup to handle those quick settings.

The codebase is at https://github.com/gasolin/fxos-quick-settings Welcome to contribute.

· 4 min read

Here she is!!

要開始開發 Firefox OS 的 Web 端(Gaia),並不像開發一般網站一樣那麼容易。在開始改網頁之前,通常要把相關的開發文件讀一遍 / 試一遍,才能順利把開發環境設定好。 而把環境設定好可能已經花了半天時間,這時原本想要改程式的精力也所剩不多了。

去年有感於此,花了些時間整合了一套快速設定 Firefox OS 開發環境的工具「FoxBox」,透過 Virtualbox 虛擬機與 vagrant 自動化工具來達成自動部署 Gaia 的開發環境。最近把 FoxBox 基礎作業系統版本升級了一下(使用 Ubuntu 14.04LTS),在 Macbook 或 Ubuntu 桌面電腦上,只需用一個小時左右的時間,就可以自動安裝好整套開發環境。

Vagrant + VM 的優點

使用 Vagrant 搭配虛擬機(VMWare 或免費的 Virtualbox)的好處多多,其一是簡化了開發環境的需求,由於主流的作業系統(Windows,Mac,Ubuntu/RedHat)都支援虛擬機,透過在虛擬機上使用單一的作業系統,可以大幅簡化安裝指令。 其二則是自動化安裝,透過 Vagrantfile 指定要執行的指令 (放在 scripts 資料夾下),最後跑出來的結果只有安裝成功一種。如果失敗了表示自動安裝的指令沒寫好,初級開發者不用在環境安裝時就強迫得學太多細節。 其三是開發環境隔離,命令都跑在 VM 中,在之後開發或升級的過程中出現任何問題,隨時都可以重新建立一個乾淨的開發環境。

使用 FoxBox 這套開發環境設定工具,當其他人碰到問題時,也可以更容易地重現問題。

透過 Vagrant 設定,FoxBox 提供實體機與虛擬機共享檔案夾,並支援 USB 實機偵錯。

雖然開發環境隔離,但是 FoxBox 預設的設定即提供實體機與虛擬機共享檔案夾。裝好開發環境後,你依然可以使用目前作業系統上自己習慣的編輯器來修改程式碼,然後在 VM 中執行命令。

FoxBox 預設也將 USB port 串接到 VM 中,所以在 VM 中也可以直接接收到實機的偵錯訊息 。

設定的流程

連上網路,在主機上執行以下命令

$ git clone https://github.com/gasolin/foxbox.git $ cd foxbox $ ./configure.sh 除了開始時需要指定網路介面卡,並輸入主機的密碼(用來和虛擬機共享檔案夾)外,其中大部分的流程都是自動化的。

當 VM 跑起來後,登入 VM(帳號 / 密碼為 vagrant/vagrant)並執行以下命令:

> $ gaia_init.sh
> $ cd gaia
> $ make`

即可順利編譯好 Firefox OS 的 Web 端(Gaia)程式碼囉!

· 2 min read

Last week I've post on dev-gaia to notice the change of JSDoc generator.

Now gaia's jsdoc generator takes standard jsdoc config format from each app's jsdoc.json file. And app owner could customize its look and feel if they prefer to do so. http://usejsdoc.org/about-configuring-jsdoc.html

Here's the working jsdoc for Firefox OS settings app http://gasolin.github.io/gaia/settings/ .

The trick is done by gulp and shell commands, which can be apply on any other projects. Here's how I did it.

First of all is install required packages

$ npm install gulp gulp-shell jsdoc --save-dev Then open gulpfile.js and add following scripts:

var gulp = require('gulp'); var shell = require('gulp-shell');

gulp.task('jsdoc', shell.task([   './node_modules/jsdoc/jsdoc.js -c jsdoc.json' ])); (It's an simplified version because gaia contains 20+ web apps in it, so I add some tree-walking code to create bunch of gulp tasks. But basically its the same) The simplified version is now available for reuse in webapplate.

Bonus section:

Here's how I upload jsdoc (http://gasolin.github.io/gaia/settings/ , http://gasolin.github.io/gaia/system/) to github gh pages.

Add another section in gulpfile.js with following script

var gulp = require('gulp'); var ghPages = require('gulp-gh-pages');

...

gulp.task('github', ['jsdoc'], function() {   return gulp.src('./docs/*/')     .pipe(ghPages()); }); Run gulp github command and the build tool will generate jsdoc and upload to github page automatically.