又到禮拜五,送上爛 Gag 一則.
Hacker's in Heaven
Jesus and Satan have an argument as to who is the better programmer. This goes on for a few hours until they agree to hold a contest with God as the judge.
They set themselves before their computers and begin. They type furiously for several lines of code streaming up the screen. Seconds before the end of the competition, a bolt of lightning strikes, taking out the electricity.
Moments later, the power is restored, and God announces that the contest is over.
He asks Satan to show what he had come up with.
Satan is visibly upset, and cries, "I have nothing! I lost it all when the power went out."
"Very well, then," says God, "let us see it Jesus fared any better."
Jesus enters a command, and the screen comes to life in vivid display, the voices of an angelic choir pour forth from the speakers.
Satan is astonished. and stutters, "But how?! I lost everything, yet Jesus' program is intact! How did he do it?"
God chuckles, "Jesus saves."
Oct 24, 2008
Oct 13, 2008
明日之後...
首先,去片。
請先不要細想黃毓民的批評理據,有沒有似曾相識的感覺?
這正正是毓民過去在電台開咪時的言論!
言論和新聞自由是香港最重要的資產,但筆者卻感到過去幾年這些自由正不斷萎縮。曾經是商台最受歡迎的主持大班和毓民,先後因為與電台鬧翻而被封咪。如果同樣的情况在外國發生,兩人大可以在別的電台繼續做節目主持,以他們的收聽率,不愁沒有電台收留。但他們卻不約而同地,花費不少的精力、時間和金錢,競選為立法會議員,繼續議事論事。
筆者不禁懷疑:香港已經沒有電台肯收留他們嗎?另外兩個電台的「睪丸」在哪裏?為什麼政府遲遲不肯再發電台牌照?古有一零八個好漢被迫上梁山,今有兩名嘴被迫進議事堂。(順帶一提,如果當年其中一個還在電台開咪,這名好心人大有幾會不需要花費不菲的登這廣告)
請先不要細想黃毓民的批評理據,有沒有似曾相識的感覺?
這正正是毓民過去在電台開咪時的言論!
言論和新聞自由是香港最重要的資產,但筆者卻感到過去幾年這些自由正不斷萎縮。曾經是商台最受歡迎的主持大班和毓民,先後因為與電台鬧翻而被封咪。如果同樣的情况在外國發生,兩人大可以在別的電台繼續做節目主持,以他們的收聽率,不愁沒有電台收留。但他們卻不約而同地,花費不少的精力、時間和金錢,競選為立法會議員,繼續議事論事。
筆者不禁懷疑:香港已經沒有電台肯收留他們嗎?另外兩個電台的「睪丸」在哪裏?為什麼政府遲遲不肯再發電台牌照?古有一零八個好漢被迫上梁山,今有兩名嘴被迫進議事堂。(順帶一提,如果當年其中一個還在電台開咪,這名好心人大有幾會不需要花費不菲的登這廣告)
幸好,我們還有互聯網。
這年頭,除了電視、收音機和報紙之外,互聯網已經成為大眾重要的資訊來源之一。雖說互聯網能否完全取替其他媒體還是未知之數,但不久的將來互聯網必然成為重要的傳播媒介。作為新聞網站(albeit hyperlocal),HomeBloc必定遵守傳媒的重要原則﹣﹣維護新聞自由。如發現政府或公營部門的不是,盡管如實報道。如果屬實,我們一定為你留下記綠,永不封殺!
Oct 12, 2008
和而不同
孔子在論語中有一句 "君子和而不同,小人同而不和"。這一句的意思是,每一個人都有自己的思考,自己的意見,但又能夠接納別人,互相交流,尊重別人的意見,就是一個真君子。反之,為了一些原因,只會附和別人,只會淪為小人。
其實這一句話,是很適合用於現今的社會。一個良好健康的企業,項目,工程,是很需要對任何事件保持一個開放態度,聆聽別人的方案,無論接受與否,起碼已經多了一個角度去思考,對一件事的看法更會比較周全。但要做到這一點,其實真的是有少少難度,所謂忠言逆耳,如果一個人所說的話你不中聽,不多不少也會不開心,所以做人要修心,訓練自己的EQ,對事不對人,才會對一件事產生良好的影響。
不過事實歸事實,當一間企業,公司運行了一段日子,發展到一定規模,一些既定模式便會出現,管理層也到了一個俗稱上岸的境界的時候,就會有點惰性,更會抗拒別人的進言,這可能因為他之前工作的成功,使他只會相信自己的能力,如果他沒有什麼料子的話,更要保護自己。
慶幸的是,在HomeBloc這團隊工作的模式,大家都能表達自己的意見,對項目有實際的貢獻。如果大家都只是附和,擦鞋的話,只會沾沾自喜,不知真正的問題,不知怎去改善。
至於怎樣聆聽別人,從不同的意見選取適合的方案,而又不影響項目的進度,這其實是一些項目管理的技巧,有機會再談。
其實這一句話,是很適合用於現今的社會。一個良好健康的企業,項目,工程,是很需要對任何事件保持一個開放態度,聆聽別人的方案,無論接受與否,起碼已經多了一個角度去思考,對一件事的看法更會比較周全。但要做到這一點,其實真的是有少少難度,所謂忠言逆耳,如果一個人所說的話你不中聽,不多不少也會不開心,所以做人要修心,訓練自己的EQ,對事不對人,才會對一件事產生良好的影響。
不過事實歸事實,當一間企業,公司運行了一段日子,發展到一定規模,一些既定模式便會出現,管理層也到了一個俗稱上岸的境界的時候,就會有點惰性,更會抗拒別人的進言,這可能因為他之前工作的成功,使他只會相信自己的能力,如果他沒有什麼料子的話,更要保護自己。
慶幸的是,在HomeBloc這團隊工作的模式,大家都能表達自己的意見,對項目有實際的貢獻。如果大家都只是附和,擦鞋的話,只會沾沾自喜,不知真正的問題,不知怎去改善。
至於怎樣聆聽別人,從不同的意見選取適合的方案,而又不影響項目的進度,這其實是一些項目管理的技巧,有機會再談。
Oct 11, 2008
TDD Development
TDD (Test Driven Development) is an development approach which create the test cases before coding directly. The purpose of the test case is to make sure what we coded are fulfilling the specifications. These test cases could be automated and re-run them without much effort. Hence, we could re-run whole test cases again to make sure the result is same for the coded unit. It could provide better quality for the application and developer could have confidence for their coding because of the test cases re-run.
In order to explain more clearly, let's take login function as an example we have three cases for this function, login success, login fail and duplicate login. With the TDD approach, we could build up all these test cases and assume this login function as the black box. Once test cases ready, build the login function and run these test cases to verify the output from the login function. This approach also gains another benefit for the further development. Because we may revise our login logic later (e.g. Password encryption and checking approach changed), we still could re-run these cases to confirm the changes won't after the outcome.
Actually, HomeBloc is trying to use as much as possible (As much as possible because we still skip some very simple test) of TDD approach, but sometimes these benefits are not obvious. Because the difference of the effort between the automated testing and manual testing is not apparent, especially during earlier stage. But once you built a complicated applications with a lot of functions, it should be very convenience that we have the automated test. We only need several clicks for the testing and know the result instantly.
BTW, someone may think that this approach is not worth since it needs some overhead to setup. And it is also not necessary to use such rigid approach to capture the bugs which may not occur. If you have any opinions on TDD, please feel free to share.
In order to explain more clearly, let's take login function as an example we have three cases for this function, login success, login fail and duplicate login. With the TDD approach, we could build up all these test cases and assume this login function as the black box. Once test cases ready, build the login function and run these test cases to verify the output from the login function. This approach also gains another benefit for the further development. Because we may revise our login logic later (e.g. Password encryption and checking approach changed), we still could re-run these cases to confirm the changes won't after the outcome.
Actually, HomeBloc is trying to use as much as possible (As much as possible because we still skip some very simple test) of TDD approach, but sometimes these benefits are not obvious. Because the difference of the effort between the automated testing and manual testing is not apparent, especially during earlier stage. But once you built a complicated applications with a lot of functions, it should be very convenience that we have the automated test. We only need several clicks for the testing and know the result instantly.
BTW, someone may think that this approach is not worth since it needs some overhead to setup. And it is also not necessary to use such rigid approach to capture the bugs which may not occur. If you have any opinions on TDD, please feel free to share.
「工程師辦報」的大時代
恒指今日大跌一千一百點收市, 道指開市嚇個半死,上newsgroup大家皆言:今次熊市同以往唔同,前竟一片黑暗…明年失業就會來臨,個個都話等樓價跌回SARS果時就入市,如果真係SARS價,到時失業率高企,各位兄台是否有憺量借錢買樓?
這個是developer's blog,返回正題,科技令生產力大升,全球產能過剩,連高科技的Intel,相機工業等,毛利率不斷下跌,結果受惠固然是使用者;但上班一族就沒好氣了,因為當下天下大亂,上年驚通脹,今年怕炒人;這些和 Homebloc有何關係?關係就大了!
需知道Web Media 係僅有增長緊的行業,這點大家都知;三十五年前, Homebloc 某同事每日都買的《信報》創立,那是「文人辦報」的日子;後來九十年代, 某報加入,KO了一眾跟不上時代的老報館,給人家冠上道德倫亡,為利是圖的外號,是為「商人辦報」;可是當下經濟down trend時期,廣告收下或然下降,報紙印一份蝕一份,而且3G 頻寬大幅跌價,Internet anywhere,早上火車拿著電子器材的人不比報紙的少,網站,討論區的新聞速度比記者還要快,Blog的筆者題材內容比副刊專欄要豐富,由youtube起新聞業已走入一個新時代,架構下一代媒體網站不是識字或有錢就可以,要得靠工程師──「軟件工程師」,正當有一百五十多年歷史的《英國金融時報》日印量只有幾十萬份,《華爾街日報》已賣盤,百年《路透》要和《唐訊》合併,財經新聞一直是新聞業重要一環,國際大形通訊社皆無法抵擋這個勢轉變,看來這是「工程師辦報」的大時代。
Oct 9, 2008
ASP.NET Dynamic Data
I went to Tech-ed again today and attended the ASP.NET Dynamic Data session. ASP.NET Dynamic Data is a framework enables you to build rich data-driven Web applications. It could connect to the Linq to SQL or Entities Data source to retrieve the data, generate the webpages which allows to list, add, update and delete the data. The most powerful things of this framework is to provide the validation, security function in the underlying classes and allows user to customize the layout to suit their needs. This customization also provides the flexibility to allow the developer to using the third party tools.
It is a great tools to build something quick for data entry such as the maintenance functions. However, from my opinion, I think we still couldn't build an enterprise solution with this tool because it lack of the flexibility to build some business logic which need to interact with different classes or workflow solutions. Actually, it is similar to an Access web-based version.
Under Homebloc, I decided to use this technology to build a simple feedback listing and updating web application for our internal use. It is very convenience and easy to build such application without much coding. Now, our colleagues could view all your valuable feedbacks through this application.
It is a great tools to build something quick for data entry such as the maintenance functions. However, from my opinion, I think we still couldn't build an enterprise solution with this tool because it lack of the flexibility to build some business logic which need to interact with different classes or workflow solutions. Actually, it is similar to an Access web-based version.
Under Homebloc, I decided to use this technology to build a simple feedback listing and updating web application for our internal use. It is very convenience and easy to build such application without much coding. Now, our colleagues could view all your valuable feedbacks through this application.
一些FAQ
什麼是Homebloc?
Homebloc連接你和你社區的人。你能向你社區的人直接表達想法,甚至直接跟他們進行日常生活上的互動。例如你能透過Homebloc分享你的照片、透過Homebloc找你的失貓、透過Homebloc轉讓你的傢具等。
Homebloc跟一般討論區有何分別?
香港人習慣在討論區以虛擬身份溝通,那些虛渺的對話,因其匿名性,不容易在現實生活中發揮作用。
Homebloc上的對話和交流,源於來自相同社區的用戶,因而更貼近現實、也較能回應生活問題。換言之,Homebloc融合了「網上對話」和「社區網絡」。
Homebloc跟一般屋苑網有何分別?
屋苑網一般只函蓋單一屋苑的社區,但你關心的社區很可能不止一個。例如你可能關心從前住過的社區、辦公室附近的社區、學校附近的社區、家人朋友住處的社區、甚或外國的社區。若你希望同時接收多個社區的資訊,Homebloc便是你的最佳選擇。
我的個人資料安全嗎?
用戶向Homebloc提供的一切資料均會嚴加保密,為此,Homebloc會嚴格奉行私隱政策,以保障用戶提交的個人資料安全,及體現Homebloc極為重視用戶對我們的信任。
什麼是Hyperlocal News?
Hyperlocal News指發生於社區內的、主流媒體沒函蓋的,卻往往最貼近生活的新聞資訊。例如說,誰是你住處附近最便宜的豬肉檔、是哪位鄰居每天準時發出噪音、上班乘搭的巴士路線最近改了班次等等。
昨天,受制於生產成本,這些極具價值但小眾的新聞,沒法子登上大眾媒體的舞台。今天,乘著互聯網長尾的特性,Hyperlocal News的威力終於被釋放出來。
Oct 8, 2008
Asp.NET MVC and RSS with WCF
Just went the to tech-ed 2008 in HK today and attended "Building RESTful service using Windows Communication Foundation 3.5" session. It is a great talk by Jon Flanders. With WCF 3.5, it could easily help to prepare the RESTful without much coding and also has the embedded module to build the RSS feed follow the standards. This is very important to for a web site to provide the RSS feed because user start to changing their browsing behaviour. Some of them will go through the RSS feed to look at the headlines first before visit the website to read the detail. Hence, RSS is very convenience.
However, current ASP.NET MVC framework (preview 5) still hasn't integrate with WCF 3.5 yet. Hence, we still couldn't gain any benefit by using the WCF RSS module with MVC. But luckily, Jon Flanders give us a news that Microsoft is working hard on this area and they will provide a solution for it later.
Anyway, Homebloc supports RSS feed now with using pure ASP.NET MVC framework already. Of course, this solution is not a prefect solution which needs to build a customize template for the RSS feed. Once Microsoft provides the official solution, we will update it with that standard approach.
However, current ASP.NET MVC framework (preview 5) still hasn't integrate with WCF 3.5 yet. Hence, we still couldn't gain any benefit by using the WCF RSS module with MVC. But luckily, Jon Flanders give us a news that Microsoft is working hard on this area and they will provide a solution for it later.
Anyway, Homebloc supports RSS feed now with using pure ASP.NET MVC framework already. Of course, this solution is not a prefect solution which needs to build a customize template for the RSS feed. Once Microsoft provides the official solution, we will update it with that standard approach.
Oct 6, 2008
定位
上周Homebloc討論定位,得出一個新想法:
傳統討論區有很多對話內容,卻不貼近現實。「互聯網只是個虛幻世界」那種講法,Homebloc絕對不認同。我們認為,上網可以真實,可以真喺有嘢發生。因而,Homebloc將「網上對話」結合「地方社群」,試圖令互聯網在現實生活發揮更大作用。
例如說,你能透過Homebloc分享你的照片、透過Homebloc找你的失貓、透過Homebloc出售你的書櫃,諸如此類。
又例如說,e23條和防火牆城要來了,網民要抗爭,或發起聯署,或走到街上,這都是影響生活的很真實的事情。在這例子上,能如何以Homebloc來表達想法呢?或者,你對現時的Homebloc有什麼建議呢?
To make the internet a better place for hk people。Homebloc需要你的意見,更加需要你的參與,謝謝!
Homebloc上周的一些改動,例如:新Logo、development blog連結、新增帖子介面、標籤移到右下方。
Subscribe to:
Posts (Atom)