2012-01-15

App Clear (Fb遊戲去廣告)更新,接受邀請小幫手停止維護

從接受邀請小幫手上線到現在剛好過了兩年,雖然當時以相當隨意的心情寫了他。沒想到意外成了我寫過的程式中 最熱門的一個(囧,每天的使用者竟然有好幾千個,真是感動阿。

隨著facebook的一直改版(一直亂改),中間也跟著修改了很多次,因為過去這一年多來比較忙,中間有好幾次隔了很久才更新(被罵翻了 哈哈),在此跟使用者說聲抱歉。不過facebook近來對於邀請的政策已經改為交由遊戲本身自己處理,接受邀請小幫手已逐漸無用武之地,所以今天做了最後一次更新,之後除非有什麼特殊原因,應該就不會在改版了。最後特別感謝許多使用者協助測試以及回報錯誤和建議。

接受邀請小幫手 Accept Helper 1.3 final
http://nerv.appspot.com/fbp#accept_helper
-依fb改版修正
-開啟方式預設改為固定新分頁(因為Fb故意限制原本在本頁開起的方式,較新的瀏覽器都沒辦法用開在本頁)

 

另外很久沒更新的AppClear,順手做了一下更新:P

Fb遊戲去廣告 AppClear 0.5
http://nerv.appspot.com/fbp#appclear
-修正,介面會被檔到的問題
+自動消除右邊的遊戲動態

2011-09-21

Google App Engine 即將調整收費模式! THE END OF GAE?

Google said "Don't be evil".
I say...... "Don't be stupid!!!"

Google App Engine(GAE) 是一個google 在2008推出的一個web app雲端平台服務,打得口號就是提供google內部開發各個服務的架構,讓其他的Web app 開發者可以在這個架構下開發自己的程式。

一開始是以免費但限制資源(流量, CPU, 空間大小 讀取次數)的方式供大家測試,不過在這樣的限制之下也能做些小型的程式。 隔年2009 開始提供超過限制資源的付費方法(Google App Engine準備開始提供收費服務)。變成針對美一種資源計算超過多少,就收多少。在這個收費模式下,才有了較大規模的商業網站在GAE上發展。後來GAE除了python外 又支援了java,使用的人漸漸變多。

一切看來如此美好,就在這個時候,google寄給了每個開發者一封信「Google App Engine Leaving Preview」,內容簡單的說就是
2011/09/01
感謝各位這三年來對Google App Engine的支持,GAE即將畢業成為一個正式的產品!!
為了慶祝,我們決定在9月中調高收費!!! 期待吧~科科 


結果當然是一片傻眼,論壇上充滿酸文跟幹譙...,原因大概如下
  • 收費的方式改變最大的就是從計算CPU Time變成 instance hour,造成許多程式的收費爆增至5~10~30倍以上。新的收費方式會讓較小規模的程式活不下去。
  • 以一個正在使用GAE的網站經營者來看" (GAE成本+其他成本) >網站收益  "這樣網站才活的下去,結果"GAE成本"爆增個幾十倍,一些原本run的好好的服務,突然一改收費模式只能GG了。
  • GAE是一個PaaS(Platform as a service),代表著GAE下開發的程式會高度依賴GAE無法直接移到其他的伺服器供應商。而公佈調整收費的時間緩衝太少,只有幾個禮拜,就算想跳槽也不可能阿(翻桌 
  • 之前Google I/O(google的技術大會) 大力推廣Andriod App的開發者使用GAE作為server平台,因為GAE有免費資源限額可用,如果做出一個APP都沒人用,沒賺到錢,因為沒號什麼資源,所以損失的也只有開發成本,這樣確實是吸引許多人。不過許多App一開始都是些小型的程式。 現在叫那些跳到GAE的APP開發者情何以堪。
  • 所以不是賠錢讓他run下去, 就是關掉他
不過還好的是google有意識到反彈的聲浪,提出一些改變(A few adjustments to App Engine’s upcoming pricing changes)
  • 新收費標準的開始時間從9月移到11月1號,並延長減價優惠(50% off)。定在這個日期是因為預定那個時候會將GAE的python更新到2.7版,這樣python才可以有效的利用多執行緒(python2.7以前無法利用多核CPU的優勢,等於python的instance效率會比較差)。
  • 增加instance hour的免費額度(24→28hr),讓一些原本免費的小流量網站不會爆掉。
  • 延續GAE一貫的特色,最後呼籲大家把程式寫得有效率一點..(Google :  明明就是你的程式寫的太爛 還怪我收費太高)
Google最近很多動作(例如關掉字典等服務)。看得出來google正在轉變。隨著規模的成長,從過去充滿自由主義的風格,鼓勵內部積極開發創新的服務,到現在漸漸開始對各項服務的收支在意了起來,開始對一些虧本的服務開鍘。

有的人認為google正在違反當除他們自己提出的「Don't be evil」這個口號,不過畢竟google也是個營利公司,我(身為google的忠實粉絲)認為這是google正在成長的一個轉變。過去google瘋狂的開發了一堆不知道會不會賺錢的服務,現在反而成為公司的累贅,不砍也不是,砍了又破壞名聲。 我相信現在google會在一個新服務開始的時候做更完善的經營規劃,才不會突然大幅變更收費或收掉,造成使用者的困擾。

這次的事件雖然google很快的做出了反應,不過還是對GAE的名聲造成很大的傷害,而且讓人意外的是google對user的想法竟然這麼不瞭解。對於這一連串的風波,我只想對google說:「Don't be stupid」

最後我只祈禱GAE不要弄到倒掉...手上幾個網站都在上面...

2010-09-23

[筆記]Python中使用pickle時出現KeyError

遇到這個問題是在使用google app engine (GAE)中使用pickle的時候遇到的。

我利用pickle的dumps將一個物件序列化成字串存入GAE的datastore中,需要用時再取出字串用pickle.loads()還原成原本的物件。如下會出現"KeyError: \x00"的錯誤

from google.appengine.ext import db
class TestDB(db.Model):
    serialize_obj=db.TextProperty()

obj={'a':1,'b':'c'} #要存入datastore的物件
t=TestDB(key_name='test') #建立entity

import pickle
t.serialize_obj=pickle.dumps(obj) #將obj序列化成字串 並存到剛建立的entity中
t.put() #寫入datastore

#下面將讀出剛的字串並還原成物件
t2=TestDB.get_by_key_name('test') #讀出剛剛存的entity
obj2=pickle.loads(t2.serialize_obj) #理論上會字串還原為物件 並放到obj2變數中, 但是這裡會出現KeyError錯誤
print obj2 #上面沒錯的話 會print出{'a':1,'b':'c'}

其實這個問題很簡單,問題在於GAE的datastore在處理Text的資料型態,會將其存為unicode。而將unicode丟給pickle.loads就會導致這個問題。 修改上很簡單,最好的作法就是將db.TextProperty()改成db.BlobProperty(),不然也可以將unicode再轉回一般字串pickle.loads(str(t2.serialize_obj)),但是這樣只是多做無謂的轉換...

2010-06-22

Facebook遊戲去廣告 - App Clear

簡介

玩facebook的小遊戲時,最討厭的就是遊戲旁邊花花綠綠又沒什麼作用的東西,App Clear這個小工具可以幫你去除掉這些礙眼的傷眼物,讓畫面乾淨。(這簡介中充滿怨念...)

網站:http://nerv.appspot.com/fbp#appclear
有問題請到 Nerv. FaceBook Plugins專頁

安裝&使用

安裝

App Clear(遊戲去廣告) 目前版本ver. 0.3
IE, FireFox, Opera: 右鍵點選上面這個連結,並選取"加入我的最愛(書籤)",IE會有安全性警告,請無視他
Google Chrome : 直接將上面這個連結拖曳到書籤列(若無書籤列可按Ctrl+B開啟)

使用說明

要使用的時候,於Facebook的小遊戲頁面,直接到書籤(我的最愛)點一下App Clear(遊戲去廣告)就可以了。
執行成功之後會看到以下畫面

說明:

  • 執行App Clear之後會把遊戲介面以外的東西都從畫面上清除掉,並且會把背景變成灰色以凸顯遊戲。
  • 一些像是Restaurant City、Pet Society之流的遊戲,會把一些廣告跟遊戲合體,這類的就會清不乾淨,這是App Clear的極限,請見諒。
  • 可能會清掉一些你想用的功能,不過只要重新整理遊戲頁面就會恢復原本的樣子。
  • 每開啟一次遊戲的頁面都要執行一次,並未對所有的遊戲測試過,若有發現對遊戲功能造成影響可以向我回報。
  • 執行後右上角會出現一個App Clear ver.xx的按鈕,按開還有一些功能可以使用。
    • 移除聊天室把聊天室整個拔掉(要重新整理才再出現)。
    • 背景色深淺切換可以改背景顏色(白~灰~黑)。
    • 隱藏App Clear介面如字面,把App Clear本身的介面也移掉。

2010-03-27

[食記]鐵人九番

這家是老姊為了慶祝我和老妹生日找的店。裝潢和logo都蠻有特色的,不像是傳統的日本料理店。

吧台有6個位子,也有些一個人就可以點來吃的蓋飯,不過一個人的話有很多頗具特色的菜就會吃不到了。不管是味道還是外觀,從許多道菜中都可以看出是經過師傅們精心設計過的。

點了「和風生菜沙拉、鐵人生牛肉、綜合串燒、酥炸雞軟骨、綜合握壽司、明太子薯片燒、鐵人精選壽司、泡菜豬肉燒、鹽烤鯖魚、味增豬肉鍋、手捲、日式炸麻糬」這幾道都還不錯,下次想嚐嚐他的丼類。


和風生菜沙拉,份量蠻多的,適合多人一起吃,醬調得還不錯。


鐵人生牛肉,這道菜真的很漂亮,我很喜歡他顏色的搭配,當然味道也很不錯。


綜合串燒,烤的剛好,吃起來不會乾乾的,只是其中有幾個還蠻油的。另外值得一提的是右上角的綠茶粉,跟串燒還蠻搭的,不過有點太鹹就是了。


綜合握壽司,魚還算新鮮,醋飯也OK。


明太子薯片燒 ,雖然照片失焦而且角度照的很爛....,讓他有種變難吃的感覺,不過這道真的很好吃,菜如其名就是焗烤馬鈴薯厚片,上面有鋪一層魚卵。



鐵人精選壽司,內容可能不是每天都一樣,點的時候可以問一下今天是哪種。我們吃得這道壽司中間是包炸蝦,上面有蓋鰻魚,不知道本名叫什麼,光是看起來就讓人流口水了。


酥揚嫩豆腐 ,嗯...就是炸豆腐,不過是軟軟鹹鹹的那種(哪種..?)


醬燒中卷,也是烤得很剛好,不會太乾太硬。


生巧克力蛋糕,(咦......跳tone跳很大),旺旺的生巧克力蛋糕,聽老姐說這是他特地跑到神旺飯店裡面買得,吃起來真的不錯 都不會油膩(雖然實際上應該也蠻多油的..),好吃!

這次點的菜裡面,我覺得比較特別而且會推薦的是「鐵人生牛肉、明太子薯片燒、鐵人精選壽司、日式炸麻糬」這幾道。日式炸麻糬忘了照,乍聽之下名字還蠻普通的,不過這道真的還蠻特別的,在麻糬裡面還包了疑似米漿的東西,口感和味道都挺不錯,意外的好吃。

鐵人九番料理亭
Tel:(02)27761108
地址:台北市忠孝東路4段223巷10弄9號

檢視較大的地圖

2010-01-03

FaceBook處理邀請工具 - Accept Helper

因為國軍online中,久久才能上一次網,所以每次放假都累積一大堆的邀請。FaceBook的處理邀請介面蠻討厭的,都要跳到別頁,所以才做了這個Accept Helper,對我自己是蠻實用的,分享給各位。

簡介

接受邀請小幫手,提供更方便的介面一次處理多個邀請,不會每點一個連結都要離開本頁。

官方網站 http://nerv.appspot.com/fbp#accept_helper

安裝&使用

安裝

接受邀請小幫手 目前版本ver. 0.9.2

IE, FireFox, Opera: 右鍵點選上面這個連結,並選取"加入我的最愛(書籤)",IE會有安全性警告,請無視他

Google Chrome : 直接將上面這個連結拖曳到書籤列(若無書籤列可按Ctrl+B開啟)
這個連結在FaceBook中會被過濾掉內容,請到官方網站安裝。
最初的0.6版接受跟忽略按鈕弄相反了XD,如果現在開起來還是顯示0.6版,請重新安裝。

使用說明

要使用的時候,於Facebook的邀請頁面,直接到書籤(我的最愛)點一下接受邀請小幫手就可以了。

執行成功之後會看到以下畫面

說明:

  • 首先每個邀請的按鈕會被[接受!] [忽略]所取代,您可以直接按這兩個連結來處理邀請。
  • 開啟於選單則可以設定接受邀請之後頁面要顯示的位置,預設的本頁面中會顯示在畫面中那個白色的區塊(看不懂的話,實際使用就會馬上瞭解了),選擇開在本頁面中時可以上下拉動下面的灰槓調整大小
  • 過濾使用者選單可以讓你依照邀請人只顯示來自那個人的邀請。
  • 接受第一個如字面,就是接受畫面中第一個邀請,同樣 適用於過濾使用者之後。

2009-12-13

[食記]築地平價日式料理

雖然這家就在六張犁捷運站底下,不過外觀實在太不起眼了,根本沒有什麼裝潢,沒仔細看的話不容易發現這裡有一家日本料理,在網路上也蠻少介紹的。

店的空間不大,只有吧台8~9個位子,跟兩張四人坐的木桌。

這家店剛開的時候就有跟家人去吃過一次了,那時候都沒什麼人,不過現在假日生意還不錯,也不少人外帶。


築地招牌蓋飯(NT.100) 精緻度沒魚僮那麼好,不過生魚片真的很新鮮,底下用的是醋飯,雖然量不多但是整碗飯跟料配起來剛好,不會有魚僮那種飯不夠配的感覺。它還有其他種像是鮪魚、鮭魚、鮭魚肚、紅魽、旗魚等的蓋飯,價格在150~200之間,量會比招牌多。


和風野菜沙拉(NT.70) 如果只點個招牌蓋飯可能會有點不夠,可以在點個小菜手捲沙拉之類的。想說都吃肉,就點個沙拉來吃,不過我後來後悔了,應該點個手捲(NT.30~70)或小菜(NT.50)就好,因為這個沙拉的量有點太大,其實比較適合兩個人吃。


味噌湯(NT.30) 裡面會有一隻蝦子,不過湯本身還蠻普通的。

這家店的優點就是新鮮,雖然最近有漲價(以前招牌蓋飯NT.80),但還是蠻便宜的,如果下次去我應該會點個鮪魚蓋飯來吃吃。另外推薦烤魚不錯,如果兩個人以上就可以點。

缺點的話就是人手明顯不太夠,只有一個師傅跟一個助手,助手似乎是工讀生不太熟練,人多的時候助手一團混亂...,上菜要等蠻久的,所以建議平常日人少的時候去吃。

由於店不大,比較適合1~4人去吃,雖然說兩張併起來的桌子最多可以坐8個人,但是這家這麼小應該是沒在預約的。

築地平價日式料理
地址:台北市和平東路三段175號

其他人的介紹
築地(平價)日本料理
台北市六張犁捷運站 築地平價日本料理
~超人飛台北~店內很安靜的築地平價日式料理~

2009-12-06

[食記]魚僮小舖

這家算是小有名氣的店,本來這周是想去吃六張犁附近的另一家小店,可惜我去的時候竟然說沒飯了= =
既然都讓本宅踏出家門了,實在不甘心隨便買個雞排飯就回去,只好改變目的走去魚僮小舖。

一般吃飯時間魚僮小舖通常都要排隊,主要是他的店小小的,只有吧台幾個位子一次坐不了幾個人,我去的比較晚所以不用排就有位了(營業到9點,不過有可能在之前就沒飯之類的),另外也蠻多人外帶的。

雖然就是直接坐在路邊吃,不過後面有個簾子擋著加上燈光所以感覺還好。


生海鮮丼(NT.120)
飯上擺的食材色彩豐富具有層次感,加上打了黃色的燈光,賣相還不錯。
碗的大小直徑約14cm高10cm,誤差在±1cm之內(竟然還計算碗的大小,當兵的無聊程度可見一斑)
吃得時候建議先吃生魚片,旁邊那些配料味道都還蠻重的。
在點丼類的時候,老闆會問你要不要加飯,他會這麼問是有原因的,因為他們的飯量算少,除了食量比較大的人有可能吃不飽之外,他飯的配料以及小菜味道都比較重,飯會不夠配(p.s 在下的口味比較淡)。

另外就是他的飯是一般的白米而沒有用醋飯,這方面倒是可以理解,因為飯上面已經有調味的配料了,下面放醋飯可能會更不夠配。

雖然飯量嫌少,但是整體來說還這種價格的確不貴。


魚卵花枝(NT.50) 還蠻鹹的,這個要配飯吃,不過感覺已經比之前來吃得時候不鹹許多了,量稍嫌少。
他還有其他蠻多種的小菜,印象中都是NT.50,聽我妹說雖然口味重量少但是都蠻好吃的,他推薦海膽花枝(不一定每天都有)。


味噌湯(NT.20) - 大合照(共NT.190)
味噌湯的碗跟蓋飯的一樣大(碗多大很重要嗎..),喝起來算普通的好喝(到底是普通還好喝阿..)


回家路上,六張犁捷運站旁邊的圓環,在超出這張照片的右邊,有個阿罵正在等紅燈,我在窩在他旁邊照的時候可能動作比較鬼祟,偷瞄了我幾眼露出不解的神情,另外在更右邊躲了一個警察在抓違規右轉,還有對面....(離題Mode..ON!!. )

這家店適合一兩個人去吃(更正 不適合一個人去!!!坐在那裡的時候,左右都在放閃光),因為位子實在太少了,太多人的話可能就要外帶去別的地方吃。

魚僮小舖
地址:台北市信義區和平東路三段261號 (六張犁捷運站附近,信安街上)
TEL : 0936-215168

2009-12-05

[食記]真鮮生魚片專賣

北醫附近市場的小店,雖然在北醫這麼多年,但是完全不知道有這家(汗

這家是老姐推薦的,特色就是俗又大碗。
外觀就如同一般路邊常見的開放式小吃店,完全沒有裝潢之類的。

生魚片蓋飯 NT.150

生魚片給的很大方,不過完全沒有擺盤XD,可惜生魚片不夠新鮮,魚肉有些鬆散崩解,光澤也不佳,不知道是不是因為晚上去吃才這樣。

飯的份量不少,醋飯底下還偷埋了一隻蝦子加上沙拉醬,不過那個沙拉醬加在這裡不太對我的胃口,吃完有點油膩的感覺,口味太台式了,我還是比較喜歡清爽的料理。

味增湯 NT.30

味增湯的料倒是還蠻多的,燉到魚肉都化在湯中,喝起來相當濃郁。


回家路上拍一下有點朦朧的101

真鮮生魚片專賣
台北市信義區吳興街183號

2009-10-08

Restaurant City 小幫手

這是因為我連續答錯幾題Restaurant City的每日小問題後決定製作的小幫手(怨念充滿)。

主要的功能就只是快速查詢Daily Quiz的問題跟答案而已以。官方網站 : http://nerv.appspot.com/rcp (其實就是這篇blog的內容XD)。

瀏覽器相容性:IE7&8、Firefox、Chrome、Opera。IE6未測不明 。跑很慢的電腦上未測試效果怎樣。

使用的方法有兩種:

Bookmarklet模式(書籤程式)

此模式可以將小幫手安插到Restaurant City的頁面上。
開好Restaurant City之後將下面這串貼到網址列再按下Enter(IE有時怪怪的,可多按幾次enter試試)。或者可以把下面這串當作網址加入書籤(我的最愛),然後在Restaurant City的頁面點選即可。

javascript:(function(){document.body.appendChild(document.createElement('script')).src='http://nerv.appspot.com/js/rcp/main.js';})();


像下面這樣按enter:

成功之後如下圖

在這個模式下會看到原本廣告的部份被清掉用來擺RC Helper。 Restaurant City的上多了重新整理跟隱藏Restaurant的功能的連結,其實不重要,有需要的人再使用就好。

嵌入模式

點選以下網址即可。注意!下面這個網頁會在網頁內新開一個Restaurant City,所以可以將原本開的Restaurant City網頁關掉。

使用方法

當使用上面任意一種方法成功之後,便可在問題出現的時候在keyword輸入關鍵字查尋,為了提高查詢的精準度,一些字會被忽略掉,選最關鍵的字,查詢的時候也不要輸入那些無關緊要的字,通常打一兩個字母答案就會出來了。