2009年1月28日 星期三

更新 RSS 來源位置:http://feedproxy.google.com/changyy

新位置:http://feedproxy.google.com/changyy


好像申請一兩個月了。至於更換的理由?原先想不太出來,後來才發現有這設定,在未來時,當我脫離 Pixnet 後,不至於還要到處宣傳更新 Blog 的訊息,只要有用 RSS 聯繫的,一切都 ok 啦。


2009年1月25日 星期日

回顧週遭 Web 2.0 網站

最近打算開發另一個 Web Service。去年都在搞 WebMail。老板的風格就是獨特,幾乎不用什麼 framework ,連資料庫都是自己刻寫。好方向來說,那就是得自己管檔案資料、從底層刻起,學得多!壞方向來看,花了大半的時間,慢了別人很多,另外,花了太多心力做別人不做的事,看得比別人窄或慢。所幸,去年也陸陸續續完成一些 tool base 及其函式庫,將加快未來的開發實作!


在開始進行新的 Web Service 的開發前,除了底層資料管理已差不多搞定外,接著想停一下腳步,趁著年假,回顧過去週遭 Web 2.0 的網站服務。


第一個服務,當然是 Blog Service 。


畢竟,我還是喜歡打打文字、紓發心情,除了最近廣泛地用來紀錄工作上的實作外,剩下的就是看些影集或生活的聯想,昨天花了點心力把文章都整理一下,過去太偷懶,不怎分類。在 Blog Service 這塊,最早我是在大學系上的工作站,架設 Wordpress 系統,但隨著時間增減,發現要維護更新 Wordpress 以及 spam ,有點擾人,最後真正影響我遷居的,其實是工作站上的不穩定,明明是學術網路,從校內連上網要發表文章,卻會不穩,我趕緊跑到 wordpress.com 註冊一個,順便把文章備份一份。2008年二月,透過 MSN 我跟國小同學聯繫上,從她口中得知原來還有在辦國小同學會,就順道要了照片看看,於是,在無名小站開始打滾了!一樣的校友身份,卻連無名都沒用過的我(對此有太多負面觀感),開始想透過無名找尋失聯的朋友。慢慢地找到大學、高中、國中和國小。無名最大特色就是人多,上次看了一篇 paper ,大概在 2008 年 06 月左右,約 400 萬的使用者,但真正付費享受 VIP 的,可能連 5% 不到吧?而後在無名打滾,讓我越來越多話,直到六月左右,我移到 Pixnet 了。我發現 Pixnet 真的比較用心,舉凡發文的介面、服務以及我重視的開放性,都做得比無名好上許多。因此,我定居了。由於 Pixnet 還提供通用格式的備份匯出,以後要走人都是挺方便的。


在 Blog Service 這邊,我試過了 WordpressWindows Live天空部落Yahoo BlogXuite無名小站以及Pinxet。整體上大部分的服務都大同小異,只是最後我挑選了開放性高的 Pixnet ,可以讓我定期備份至 Gmail 啦,如果您需要的是相簿空間,可以試試 Xuite 和 Yam,前者搭著 Hinet 的線路,速度快的勒,容量雖然有限制,但我最近挺夠用了!最近更有不少網路硬碟服務


第二個服務,Map Service!


記得第一次看到時,覺得沒什麼啊?不就一張電子地圖罷了。當時的自己,沒什麼眼光,神經鈍鈍,但事實證明,這真的是太棒了!為了熟悉這些服務,除了基本的找地圖資料外,我也開始使用額外的服務:地圖日記。在地圖日記上,看到更符合人類社會的群聚現象,地域性。除了地圖日記外,還使用過一次 We'll Meet,用來相約聚會地點的服務。外頭各家服務也提供餐館、小吃的介紹,多了地圖得資訊,更加地實體化。我覺得這項服務將隨著 Mobile 精進越來越棒,只可惜各家 Web Service 都想吃這塊,導致東一邊有、西一邊也有,各家系統幾乎不見整合,也不易整合,大家越來越貪心。至於這個現在會怎樣發展咧?只能說,叢林法則吧!網路的世界更是如此,等著期待吧。


第三個服務,MicroBlog


這東西就是把 blog 更簡化的服務。不少人不喜歡寫冗長的文字,喜歡類似用 MSN 暱稱來顯示自己心情,而 MicroBlog 正符合這類人。在此用過 Twitter 服務,只是連線品質讓我很不喜歡,最後用沒一個月也捨棄掉。最近掘起的,就是 Plurk 服務!提供不一樣的時間軸呈現方式,還有數字迷思!人啊,真是容易被數字影響,就看著一群一群的人成天馬不停蹄地 plurk 一下!搞到最後,我慢慢地受不了 Plurk 上的大量資訊,哈,便又出走了!


這類服務,重點都是一種與人連繫的方式,說穿了,真正吸引人的,還是以人為主的主題!


最後,今天,我開始使用 FunP 啦!每次老板問我 FunP 也是交大人創的,但我什麼都不懂,僅註冊過帳號而已,除夕,我開始使用一下好了!哈。整體上 funP 看起來也挺不錯,將一堆堆別人推薦的文章累積起來,提供另一種閱讀服務。原先以為乾乾淨淨地,沒想到我還發現紅利兌換的服務,比起換到網路上的虛擬東西,我的確比較喜歡這種實體感啦。


嗯,Web 2.0 的時代,看來還會繼續燃燒幾年,未來的眼光,我期待老闆的民有民治民享的 NUWeb 服務,畢竟,硬體設備和網路速度已經越來越進步啦!Web 2.0 實質上都是不斷地從使用者身上賺錢,不少使用條款講述,使用者在該網站發佈後的所有權歸網站擁有,我覺得這項條款挺糟的!有興趣的可以再 透過 Google 查詢 NUWeb 囉!未來啊!我想我必須更開擴自己的眼界,同時更珍惜時間,把精神花在值得花費的事物上!


[PHP] 客製化部落格同步發文實作筆記 - 模擬瀏覽器行為

什麼是部落格同步發文呢?這個服務是整合性的應用,只需一套介面,使用者即可透過僅一套的介面,就能發表文章至各大部落格,而免去一一登入與發文的動作,這就是一種同步化的服務。對使用者來說,其最大好處就是可以不受單一的網站限制,同時在各處提供 Blog Service 網站分享自己,並且與各處的朋友進行聯繫與分享,僅需下列的東西即可辦到:



  1. 同步發文至各大 Blog 站台

  2. 訂閱自己各大站的 RSS,可觀察回應文章的狀況


前陣子用 PHP 實作這等東西出來,這陣子想要順手整理一些實作筆記,當時甚至想寫成 C 或 C++ 版本!最後,發現還現要珍惜生命啊!時間還是不適合這樣浪費掉!以下的紀錄是用於封閉性的部落格系統,對於公開化的,即可改採用 XML-RPC 的實作方式,在此就不多提 XML-RPC 。


基本背景:



  • HTTP

    • Referer



  • Cookie

  • HTML

  • Regular expression

  • Javascript

  • PHP


函式庫:



  • curl


環境協助:



  • Firefox

    • Firebug

    • Web Developer



  • Wireshark


流程概念:



  1. 模擬登入

  2. 模擬發文


主體流程:



  1. 連到 Blog 網站

  2. 連到登入頁面,收集登入所需資料

  3. 送出登入所需資料

  4. 連到文章發文,收集發文所需資料

  5. 發表文章,收工


大致上的流程,用來收集 Cookie ,說穿了,就是跟瀏覽器逛網頁一樣!唯一需留意的,在瀏覽器上的一個 click 動作,背後極可能不是一步!這些還包括煩人的 javascript 等,因此,偶爾需要使用Wireshark 軟體,收集一下封包,看看封包內到底塞了什麼資料,另外,本實作主要使用 curl 這函式庫,除了可以送出 HTTP-REFERER 的偽裝術外,最最重要的就是收集 Cookie 的動作!各大網站整體上還不少是使用 Cookie 來完成整個帳號登入的流程,若沒有 Cookie 那可是寸步難行。


如果有意將以開發好的 PHP 程式,轉換成 C 或 C++ ,整體上的關鍵就只是 curl,這真的是好物!



最後,則是開發完這項服務的心得:沒事還是不要碰。實在是這些客製化的東西,當對方網站的登入流程、網頁內容或相關格式改變,那之前實作的產品就會變成廢物了,唯一能做的,除了不定期地更新外,就是使用 Regular expression 來達到彈性化,只是,這項服務比較像用來練功啦。


相關投影片:以PHP-cURL模擬瀏覽器行為


2009年1月24日 星期六

部落格同步發文程式?blog synchronization ?

前陣子以 PHP 實作了發文至 Yahoo, Wretch, Yam, Xuite 等部落格的程式,說困難也不困難,但卻是挺繁雜的。最近我也開始思考同步發文的意義與其重要性,並且在這之前我也在各處申請屬於自己 Blog 的服務,自己卻遲遲沒有進行同步發文的動作。


原先我都是手動將文章轉成 wordpress.com 能吃的格式,登入餵進,在那邊保持一份備份。今天在整理 Pixnet 這邊的 Blog 時,意外發現在 Google 某關鍵 keyword 時,出現的不是 Pixnet 這邊的文章,反而是 wordpress.com 那裡的,當下有些好奇,仔細一看,原來 wordpress.com 是把文章標題弄成文章 link 中的路徑之一,這將使得在 Google 結果的排名躍居於我在 Pixnet 主站前面,甚至連主站都看不到,於是我似乎又有種感觸,到底這樣的情境是不是想要的?


主站看不到的原因,有一種可能,那就是 Google 在 index 時將重複內容的網頁給去掉了,這似乎不是我所期待的事,畢竟有個站為主,就希望搜尋結果是在主站嘛。這使得我想更細微地考慮同步發文的意義。前陣子看學長們的討論,論及 Blog 服務時,當下就一個觀點:使用者只需要一個 Blog 服務。沒理由去維護多個 Blog 服務 ,且主站就是會花比較多心力,並且希望獲得大家的光臨。那其他的 Blog 服務的意義呢?


除此之外,在老板領導的方向上,我非常認同追求民有民治民享的概念,因此追求將資料分散在各處,降低集中化的現象。真正的選擇,大概只能自行架站吧,但目前得知週遭架站的,十個有九個都還是吃別人的資源罷了,我覺得不是很好,大概是這種想法,大四時我就拋棄擺台機器的念頭。在 Web 2.0 的架構,不少條款都說使用者發佈到網站上得資料,最終所有權是網站公司的,不然網站公司從透過大夥分享的資料所賺取的營收,怎不以現金,公平回饋到使用者身上呢。而 Web 2.0 其實就是反向用這種方式掙錢。以無名的用戶來說,今年六月左右,約 400 萬的用戶中,也只有不到 5% 的使用者有購買 VIP 服務,剩下的營收方式?當然就是廣告,那廣告的來源?抽絲剝繭,又回到人的身上罷了。如果不斷地龜毛起來,剩下的就只剩一嘴毛啦,哈。總之,這類的平衡現象就是世界的亂度吧!


現在觀來,同步發文有其缺點以及維護的成本,成本就是必須主動地對各家封閉性的網站客制化。站在一般使用者的角度上,只用來無痛搬家吧!至於我挑選 Pixnet 當落角處,除了校友免費有 1GB 的空間外,最重要的則是 Pixnet 很用心且有技術地進步,以及提供便利的備份方式,格式是公開且廣泛使用的,不像某家只提供一個好看的樣子,但格式根本不通用,連自家系統也不吃。


2009年1月21日 星期三

用希望戰勝恐懼‧想像力比知識更重要

用希望戰勝恐懼,這是歐巴馬的就職演講中的一段話,我覺得頗 Nice 的。面對未來的彈性,希望很多,但勇氣仍不足。紀錄一下,願自己能付諸行動加以踏實。


這幾天,由於不用處理 DS 助教的工作,輕鬆許多,上週返家後便著手整理東西,包括使用部分消費券跟電腦軟硬體的更新。這幾天偶爾看看電視,收獲也不少,像某台李大師的談話節目,有提到”想像力比知識更重要”,我有所感觸也漸漸明瞭。昨晚原先打算在實驗室的板上發表一篇一年半的心得,寫了半小時後,草草地作罷不存檔。畢竟此刻的我,並沒有什麼十足的成果可以說嘴,說要提醒學弟妹?我想,現在已不需要了。


記得大五那年認識大一學弟,當時分享了讀大學的心情,成績。當時覺得,有些人就是愛耍小聰明地把成績顧好,像是修好過的課,一堆實作的作業不做或抄襲,最後靠著考古題拉成績。當我知道時,我已經大三末了,因此,我提醒了那位大一學弟,如果你沒有對其他事感到特別興趣,那顧好成績,至少不會失足。如今,他的確飛的高遠,成績不錯,但這真的稱得上是精彩的生活嗎?想起了這些後,我覺得生活沒有最佳解,如同面對著未來,沒有誰說的話一定要聽、一定要走的,畢竟,最終走那人生路的,還是親身體驗的自己,想著想著,少點話,珍惜時間,我便倒頭就睡。


愛因斯坦曾說過:「想像力比知識更重要。」,在實驗室待了一年半,開始能夠有所體會。記得半年前,我仍追逐的高深的程式技術或是新穎的演算法,想要用實作來驗證自己的能力,回想起過去的生活,有些感嘆,總覺得自己沒有學到真的想要的東西,不如預期紮實地學到新東西,倒是不斷地熟練自己的已知。時間拉回現在,聽李大師講了這句話,我開始細細咀嚼。沒錯,這句話挺有意義的。


在實驗室領導人的帶領下,我大概碩一下時,就有類似的感觸。談論 Project 方向時,不再是計較著技術,反而更細細地品嘗著創意。並不是技術不重要,只是相對之下,創意更顯的無價。因此,我開始慢慢地少發言,因為,技術絕對不是最重要的課題。儘管如此,我仍擺脫不了技術的束縛,總覺得別人看待自己時,不是用學校,就是用實作東西,於是我花了不少心力去實作,現在看起來就只是胡亂地使用時間罷了。


想像力的重要,只有親自走過的人才能夠加地體會。未來的半年,希望我能夠珍惜時間來規劃與使用,不再是追逐的技巧或是知識。一切所有的價值,並不是別人的眼光,而是自己生命的足跡。