台灣高鐵 T-Express Android 版的 UI …

用過 iPhone 版的 T-Express 還覺得沒什麼,前陣子換了 HTC One S 之後改用 Android 版本的,裝起來也太醜了一些……


一整個 iPhone Style… (Android Style 的 Tab 會在螢幕上方)


右上角的「時刻表查詢」應該改用實體按鈕達到同樣效果。硬要自己排出來,造成的結果就是在不同解析度的手機上排版會爛掉。


明明 Android 就有 Native 的選單元件……自己刻又費工又難看。


製作人員辛苦了(合掌) 有時候這種外包案,製作的人確實沒辦法表示什麼意見,只能期待業主能聽進專業意見了。

如果想了解 Android 的 UI Design Guideline,可以到 Google 提供的 Android Design 頁面看看。另外也有非官方翻譯的簡體中文版

Percona 的 MySQL Indexing: Best Practices

連結在這:http://www.percona.com/webinars/2012-08-15-mysql-indexing-best-practices

裡面除了介紹 MySQL Index 的種類與運作方式以外,也提到了「正確」的下 Index 的方法。由於 Index 會影響寫入的速度,並不是下愈多 Index 就越好的,而是應該視應用的 Performance critical query 的狀況來下適當的 Index。推薦會碰到 Database 的人(包含 netadmin 與 developer)都要去看看。

從 Delicious 改用 Pocket

自從入手 Nexus 7 之後,看 RSS Feed 的工具就從電腦改成 Android 平版了。7″ 的大小不會像手機一樣看到眼睛脫窗,也比 iPad 適合在捷運上單手手持。而 NewsRob 的背景同步功能則讓我不用每次出門前按下同步按鈕,只要把 Nexus 7 塞進包包就能出門。

不過,因為 Nexus 7 不支援 3G,如果看完要記下來,就沒辦法直接存到 delicious。用 Google Reader 的星號功能是一個解法,但是沒辦法下 tag。

能夠下 tag 又能離線存取的服務,之前試過 pocket (以前叫做 read it later) 還蠻好用的,因此就選它啦。離線紀錄下來的 URL,在回到有網路的地方時,會自動 sync 回去 Server 中。

pocket 也有提供收錄文章列表的 RSS Feed,預設是需要輸入密碼的,但可以在設定裡面改成公開(不需密碼)。我的 Feed 在 http://getpocket.com/users/jnlin/feed/

Linux 的閏秒問題

根據 Wikipedia 閏秒這個條目,最近一次的閏秒剛好發生在 GMT 2012/6/30 23:59:60,也就是台北時間昨天早上 8:00 左右。結果踩到了 Linux 以及一些軟體的 Bug:

只要重開 OS / App 就可以解決問題。

除了自己 Server/NTP Server 的時間外,其他的時間都不應該相信。

作手機 Client 的人應該常常遇到這種問題:User 因為某些原因(像是常常賴床起不來),把手機的時間調快了 5 分鐘。如果用的又是 OAuth 這類會有 expire 機制的 Protocol,就會遇到認證失敗的問題。

一般的解決方法是,利用一台「時間準確」的 Server,提供正確的時間。可以透過 HTTP Header(可以少一個 request),也可以透過一個 API,例如:http://emma.pixnet.cc/index/now。最近的 Google Authenticator 也有類似的機制。

不過,不只是 Client 會有這樣的問題。雖然 NTP 已經很普遍了,但總是會遇到因為設定錯誤,或是防火牆擋掉,或是 blah blah 等等的原因,導致 Server 時間跑掉的情形。當然,也有可能是軟體 Bug 造成的問題,導致 Server 傳回的時間是錯誤的。

最近就遇到這樣一個好玩的現象:寫 Parser 的時候,會看一下 Server 給的 Last-Modified 的 header 來判斷是否要 invalidate cache,結果發現有的 Server 會回傳未來時間…XD

所以,如果你的 Server 有跟 NTP Server 定期對時的話,應該使用自己 Server 的時間,其他任何外部來的時間都不應該相信,一定要檢查合不合理。

HTC One S 使用一週後感想

購入 HTC One S 也超過一個禮拜多一些了,也慢慢適應了 Android 4.0 (ICS) 的一些修改,大概整理一下到目前為止的心得感想。

重量與厚度


HTC One S 比之前使用的 HTC Desire 輕很多,也薄很多。金屬背蓋的感覺很讚。

本來以為灰色會不好看,結果實際拿到手上,還蠻不錯的。比褐色 Desire 好看多了。

螢幕


4.3 吋的螢幕,對我來說還是有點大。單手操作還勉勉強強。One X 的 4.7 吋對我來說應該是太大了。之前的 Desire 也是使用 Amoled,用了兩年多沒有遇到所謂的烙印問題,所以這次的 HTC One S 使用 Amoled 對我來說是沒差的。

容量

Desire 的 512MB 內部儲存空間真的是悲劇…HTC One S 雖然內建 16GB Flash,但是切分成 2GB(內部儲存空間)與 14GB(外部儲存空間)。2GB 的儲存空間目前是夠用的(我大概裝了 97 個 App,然後 Gmail 佔了快 100MB XD)

相機


白天的相機品質很不錯,可以替代一般的數位相機了。

晚上與室內的拍照品質就勉勉強強,可以看到顆粒狀還是很明顯。

電力

在普通使用狀況(大概每 20 分鐘拿出來收 Email、接電話),一個早上使用約 30% 電力。對我來說,一天充一次電是可以接受的。
我有裝 2x Battery,可以延長使用時間。

使用體驗與速度

HTC One S 在台灣上市之前,鬧的沸沸揚揚的 CPU S4 換成 S3 事件,本來我在購入之前也很擔心。不過實際使用上,倒是還好。我不會想要跑所謂的 benchmark,而是以使用中的順暢程度來比較,我認為是可以跟 iPhone 比的。RSS Reader(我用 NewsRob)一邊更新的時候,用起來會頓頓的,但如果更新完了就很順。

VPN

ICS 終於支援 Cisco/Juniper 的 SSL VPN 了!這真是太 cooooooool 了。

Amazon Web Services 的新功能: CloudFront 支援 Dynamic Content 與 SES 支援 Domain 認證

CloudFront 支援 Dynamic Content: 原本 CloudFront 對於 Query String (也就是 ?key=value 這串東西)是不支援的,在計算 Cache Key 的時候會直接捨棄掉。現在已經可以在 Console 設定是否要將 Query String 納入成為 Cache Key 的一部分。

SES 支援 Domain 認證: 原本 SES (Simple Email Service) 的寄件者 Email 位址需要分別認證,如果寄件者很多的話,認證是件很麻煩的事情。另外就是有時候寄件者是個機器(程式),無法收到 AWS 寄來的認證信件。使用 Domain 認證之後,只要在 DNS 設定裡面加上一個 TXT Record,在這個 domain 下的所有 Email Address 都能夠透過 SES 寄信了。

電費是經營IDC的最大成本!?

本日蘋果新聞:5月電價調漲 電信3雄IDC業務先受惠

我相信成本增加導致營收增加(毛利沒增加)對股價會有正面效用(這篇是在財經新聞),但是電費是經營IDC的最大成本!?

也許對 IDC 業者來說可能是吧。
但是對台灣的 ICP (Internet Content Provider) 來說,最大的成本,不是電費而是頻寬費。

在美國, 1GBits/s 一個月台幣 X 元(含機櫃、冷氣、電費)。台灣 1GBits/s 一個月超過 40X 元。
如果以台灣這種低電價來說,電費居然是經營 IDC 最大成本的話,表示頻寬費用賺太兇了…

關於台灣的頻寬費用,有一篇好文值得複習:畸形的台灣網路環境(Peering)

AWS EC2 與相關服務降價,另外推出新的 Instance Type

三月 AWS 的動作很多…

首先是 AWS EC2 與相關服務降價。包含常用的 RDS 與 ElasticCache,On-Demand 大約降價 10% 左右,三年合約的 Reserved Instance 更降價 30%。

接著推出新的 Instance Type。原有只支援 32 bit OS 的 m1.smallc1.medium 現在可以支援 64 bit 了,而在 m1.smallm1.large 之間多了一個 m1.medium,價錢和規格都是 m1.small 的兩倍。

當這些 Instance Type 都支援 64 bit OS 之後,有些原本在 t1.micro 上跑太小,而到 m1.large 上跑又太大的應用,就可以無痛改用 m1.small 或是 m1.medium 了,不需要特別再準備 32 bit OS 的 AMI。

為了慶祝 AWS 支援 64 bit OS,Alestic 把 32 bit OS 的 AMI Link 從網頁上移除了XD

碎碎念:如果早點公布就好啦,在公布的 30 分鐘前剛把 Reserved Instance 刷卡買下去…Orz