星期四, 1月 31, 2008

網站創業不易

XDite很具體地把鳥毅常在講的網路創業不容易寫得非常具體,請看:

不願面對的真相:網站創業,你準備好了嗎 ? (1)
不願面對的真相:網站創業,你準備好了嗎 ? (2)
不願面對的真相:網站創業,你準備好了嗎?(3)
不願面對的真相:網站創業,你準備好了嗎?(3-4間之題外話)
不願面對的真相:網站創業,你準備好了嗎?(4)

想起在網路泡沫化之前,創投的錢滿天飛的時代,有一天在台北市南區的某大樓坐電梯時遇到一位怪叔叔:
怪叔叔:你是在那樓上班?
鳥毅:xx樓的某網路公司。
怪叔叔:哇!那太好了,要不要出來開家公司?我出錢。
鳥毅:!@#$%@#%#$^%%^
另外有一個國際大嘴巴出來的先生,問鳥毅要不要加入他的公司,說要做browser的toolbar,鳥毅當時就認為不可能;不是有名氣的公司出品的toolbar誰敢裝?不管功能再強都沒有用。不知道後來3721是不是他做的:P

雖然當時鳥毅是個有理想有抱負的青年,但也是超實際派。在台灣沒有雄厚的資本怎麼可能打敗鳥毅當時的東家?如果是微軟找我還可能會去,就算是其他國外大廠如AltaVista等我都不會考慮。有位Q大的學長做Linux公司,要挖鳥毅當時東家裏的超強hacker,幾年後公司也不見了...
看看幾個比較大的公司吧,陳文茜投資的網站叫什麼家的,當年也是行銷得不錯,結果現在都不知道還在不在。網路同學會也轉型才撐下來。國內第一的搜尋引擎Openfind最後也只能賣給別人轉型,幸好原來核心團隊大都還在。另一個曾經是第一名的入口網站Yam就更慘,雅虎本來要買他不賣,結果大家都知道,只能便宜賣給財團。

創業維艱,守成不易,各位創業的老大們加油。

星期三, 1月 30, 2008

測試Zimbra

不知為何台灣很少人在玩Zimbra?由於OpenWebMail可以說是停止維護,為了敝小公司同仁的福利著想(其實是自己用不爽),決定找其他的Solution。

先試安裝較簡單的RoundCube Webmail,可惜不怎麼穩定,而且沒有中文介面。 Update:不具名的大大表示,RoundCube有中文,而且他有patch中文環境相容性,是否能提供一下做法?

接著測試大名鼎鼎被Yahoo併購的ZimbraZimbra Open Source Edition 雖然說是 Open Source,但安裝實在麻煩,官方Support的版本也有限。我選擇Ubuntu 6.06 LTS的版本,原本想安裝在VirtualBox測試,無奈 Ubuntu 6.06 在VirtualBox上還要換 Kernel才能跑,乾脆拿一台舊電腦來測。

安裝步驟:
  1. 安裝乾淨的Ubuntu 6.06,我選擇Server版,什麼服務都沒裝
  2. 設定/etc/hosts和DNS,讓這台的正反查一致,而且是MX
  3. 執行 sudo apt-get install ssh openssh-server curl fetchmail libpcre3 libgmp3c2 libexpat1 libxml2 libtie-ixhash-perl (如果有少,在安裝ZCS時會顯示)
  4. 執行 sudo ./install.sh 前幾個問題都是Y,到The system will be modified. Continue? [N] Y
  5. 接下來應該沒問題,如果出現domain不對,請自行修改(如mail.test.com要改成test.com)
  6. 出現設定畫面,按3(不同版本會不一樣)進入zimbra-store,再按4修改admin密碼,最後按r回上一層。
  7. 確定沒問題按下 a 套用,在此之前可按s存檔。
  8. 執行 sudo su - zimbra,若沒執行,請用zmcontrol start
  9. 打開browser,輸入http://機器名稱/ 開始使用
一定要先說明,我用P3 700Mhz 256MB的電腦跑,一個user online就操到不行,吃了256MB的swap。個人是希望能port到FreeBSD,不過看目前的情況實在很難,而且Yahoo又準備放棄FreeBSD。我只找到Doug White的舊版Zimbra Patch:Zimbra FreeBSD PatchZimbra FreeBSD Patch Release Notes

參考資料:
How To Install Zimbra Collaboration Suite (ZCS) On Ubuntu
How to Install Zimbra on Ubuntu Edgy

開源基於C#的CMS

朋友看到鳥毅的求救文,介紹mojoPortalumbraco這兩個CMS。

umbraco比較炫,幾乎所有的動作都是AJAX。若從source編譯時發生錯誤,得設定編碼為無BOM的utf-8。自行編譯很快,可惜我跑起來不是很正常,而且在IIS安裝失敗就懶得再測。

mojoPortal雖然專案多,但編譯速度也很快,而且也沒有警告,NTLM整合只要在web.config設定authentication="windows",完全不需要另外設定。目前看到的缺點是模組過少,優點則是編譯和執行速度都很快,又支援Mono和多種Database,未來應該頗有發展性。目前有vs2005和vs2008的solution,算是在下接觸到的CMS動作最快的一個。

以上兩個CMS皆有商業版本,而且持續在開發中,open source還是得需要商業化的支持才能長久呀~

星期二, 1月 29, 2008

叫我鳥半仙

最近預感都超級準確,看這則Google May Construct Server Farm In Malaysia馬上就驗證我昨天說的話。

從女同事懷孕和立委選舉到Google資料中心這件事,宋七力也沒有我準呀,哈哈!如果被裁員就去開業算命好了。

星期一, 1月 28, 2008

無責任新聞評論

只看到人孔蓋爆開 過路人灼傷可能覺得不算太嚴重,若看到人孔蓋爆 男炸飛一樓高就很誇張。得回家再看看其他電視台的報導,究竟真相如何?

美國政府介入主導 Google境外中心祕密登台內幕這件事在下覺得應該會破局,請靜觀其變,若預言成真再資助鳥毅吧:P

蘇哈托 名列全球貪污領袖榜首,重點在"蘇哈托家族貪污 未受制裁"這句。

承認猥褻女大學生 楊士萱出面認錯這種八卦,當然還是水果最強:偶像劇楊士萱 爆狎女學生偶像變色狼 楊士萱認罪 扯破大學女褲襪。請看"犯案隔天才去看病"這段,長得帥還當色狼,又不像吾輩到25歲還交不到女友的宅男,先去接受治療吧...

星期四, 1月 24, 2008

基於Java的CMS

雖然敝公司專案的CMS應該是用Rainbow Portal,但對於一個沒啥後續發展的opensource專案,實在是有點怕怕的。

不知為何同事們對PHP似乎都很排斥,於是我再找Open Source Content Management Systems (CMS) in Java,因為需要支援NTLM或LDAP認證Single Sign-On,今天就想找時間測試Apache LenyaOpenCmsLiferayJahia

其中LiferayJahia有商業版本,都相當成熟,而Jahia的Community版也有AJAX,故優先測試。
Jahia的NTLM支援是靠JCIFS,做法請看 JCIFS NTLM HTTP Authentication;要Single Sign-On還需要CAS。BTW,還有phpCASmod_auth_cas等等,有SSO需求的朋友不妨試試。

由於時間關係,並沒有完成Jahia的NTLM整合測試。原本首選的Lenya也只支援JDK 1.4,又沒有build成功(唉,Apache也遜了),所以今天只能做到這裏。

看來我還是得再找時間測Xoops或Joomla的NTLM,若成功再遊說同事學PHP。若各位老大知道哪套好用的CMS可以NTLM整合認證,最好是C#,煩請提供給小弟,謝謝。

星期三, 1月 23, 2008

微軟又有免費電子書

微軟又提供免費電子書 http://csna01.libredigital.com/ ,這次有三本,需要用passport登入才能下載。
分別為:
Introducing Microsoft LINQ
by Paolo Pialorsi and Marco Russo

DBLinqLinq Provider for MySql, Oracle and PostgreSQL
微軟應該私底下support,這樣用LINQ的人才會更多。

Introducing Microsoft ASP.NET AJAX
by Dino Esposito

Introducing Microsoft Silverlight 1.0
by Laurence Moroney

英文好又想學.Net 3.0/3.5的人,可以省一筆費用了。

連續兩年尾牙槓龜

鳥毅雖然運氣不算特別好,但自從工作後每年尾牙都能抽到個小獎。自從前年換到新部門後,去年尾牙就全部門槓龜,一個小獎都沒有,沒想到....今年繼續連莊槓龜。

在MSN的個人訊息貼出後,有位優秀的統計高手同事計算出來,此機率約千分之七呀...
(根據人數,獎項數目計算結果均不同,請勿套用到貴公司)

星期二, 1月 22, 2008

NT可用的免費防毒

長話短說,這星期女王朋友的帳號又被盜,各位請小心。Orange的playsafe卡改成免月租費,還在考慮要不要買一張給女王。

公司的Trendmicro防毒自動把client升級到8.0,結果NT 4.0就不能用。原本NOD32 2.7還可以用,不過在鳥毅手賤把Server升級到NOD32 3.0後,Client就不能從內部Server update病毒碼。

查了一下,目前在NT 4.0還能用的免費防毒軟體很少了,Avira AntiVir® PersonalEdition Classic已經不能在NT 4.0上安裝,的資訊是舊的,不過軟體是新版。剩下avast! 4 Home EditionAVG Anti-Virus Free Edition。以上三個都限和個人家庭非商業使用,其實我還是希望NT 4趕快從地球上消失,才不會增加維護的困難:P

WWW的利多

剛在gslin那看到微軟將於二月將瀏覽器強制升級至 IE7,若屬實,我真的要感謝微軟。

例如中央圖書館台灣分館館藏查詢仍然不動如山,只有IE5~6可以查。類似的情況還不少,這下子總該升級了吧?

星期五, 1月 18, 2008

Rainbow Portal 2.0 NTLM 網域整合Hack (續)

照著Rainbow Portal 2.0 NTLM 網域整合Hack修改後,遇到要利用AD群組時,找不到舊版選擇Windows 群組的選項。

在MSDN上ADSI的範例,.Net 1.1和.Net 2.0/3.5也略有不同,而我測試結果是.Net 2.0版本才可正常運行。我自己的情況是在Projects\Rainbow.Framework.Core\Helpers\ADHelper.cs裏的 public static string[] GetUserGroups(string UserAccount) 沒有傳回group資料,因此這裏利用MSDN的範例寫一個簡易版,若能正確執行就不必自己改。public static ArrayList getUserGroups(string userid) // userid是去掉DOMAIN的user account
{
string path = Config.ADdns;
ArrayList ret = new ArrayList();
ret.Add("Authenticated Users");
ret.Add("All Users");
DirectoryEntry entry =
new System.DirectoryServices.DirectoryEntry(path);
System.DirectoryServices.DirectorySearcher mySearcher = new
System.DirectoryServices.DirectorySearcher(entry);
mySearcher.Filter = "(anr=" + userid + ")";
try {
foreach (System.DirectoryServices.SearchResult result in
mySearcher.FindAll()) {
DirectoryEntry oUser;
oUser = new DirectoryEntry(result.GetDirectoryEntry().Path);
object groups = oUser.Invoke("Groups");
foreach (object group in (IEnumerable)groups) {
DirectoryEntry groupEntry = new DirectoryEntry(group);
ret.Add(groupEntry.Name.Substring(groupEntry.Name.LastIndexOf("CN=") + 3));
} } }
catch (Exception) { }
return ret;
}
再修改Projects\Rainbow.Framework.Core\Security\Security.cs的 public static bool IsInRole(string role) ,令其正確判斷user是否為正確的群組。由於找不到AD群組,因此改成在SQL找到同名的Role時一樣有效,這樣也是另類的整合認證。

改到這裏已經可以利用AD控制授權,接下來就得想辦法把舊版的Rainbow Portal升級。

Update: VB超人提供VB6.0列舉AD群組的方法,請看

星期三, 1月 16, 2008

Rainbow Portal 2.0 NTLM 網域整合Hack

Rainbow Portal雖然有小進展,其實搬到以後還是有如龜速。

的2.0下載是假的2.0,其實是用.net 1.1的dll兜起來,做夢也沒想過有這種做法 Orz
要選RainbowPortal2.0.Beta1,也就是標示為Rainbow Portal 2.1.0.1882 Beta 1的版本。

在此要感謝不愧為MCAD.Net的同事Joseph,指出在WebSites\App_Code\Global.asax.cs下手。打開Global.asax.cs會發現原來的LDAP整合code全都remark起來,所以從這裏開始惡搞(Hack)。
一定要聲明,這是惡搞,並不是正確的作法。正確作法應該要實作MemberShipProvider,例如ADMemberShipProvider之類。

在Application_AuthenticateRequest方法裏找到適當的位置,加入:
if (context.User is WindowsPrincipal)
{
Rainbow.Framework.Users.Data.UsersDB accountSystem = new Rainbow.Framework.Users.Data.UsersDB();
string userid = Request.ServerVariables["Logon_User"]; //檢查User是否存在 Rainbow.Framework.Providers.RainbowMembershipProvider.RainbowUser rainbowUser = accountSystem.GetSingleUser(userid);
if (rainbowUser == null)
{
//不存在則加入並登入,底下這個Employee class是我自己寫的,請依照自己的情況寫
Rainbow.Framework.Helpers.Employee employee = new Rainbow.Framework.Helpers.Employee(userid);
// 檢查是否為合法的員工
if (employee.isValid())
{
string password="隨便";
//Rainbow會用email作為username,因此改用自己Hack的AddUser,後面會提到
Guid newUserId = accountSystem.AddUser(userid, employee.getUserName(), email, password); }
}
//幫User登入
PortalSecurity.SignOn(userid, strangePassword, true);
}


Projects\Rainbow.Framework.Core\Security\Security.cs的IsInRole(string role)會出問題,改成 public static bool IsInRole(string role) {
bool useNTLM = HttpContext.Current.User.Identity.AuthenticationType == "NTLM";
if (useNTLM) {
if (role.Trim() == "Admins") {
PortalSettings portalSettings = (PortalSettings)HttpContext.Current.Items[strPortalSettings];
StringBuilder winRoles = new StringBuilder();
winRoles.Append(portalSettings.CustomSettings["WindowsAdmins"]);
winRoles.Append(";");
winRoles.Append(Config.ADAdministratorGroup);
return IsInRoles(winRoles.ToString());
}
if (role == HttpContext.Current.User.Identity.Name) {
return true;
}
return false;
} else {
bool bl = false;
try {
bl = HttpContext.Current.User.IsInRole(role);
}
catch (Exception ) { }
return bl;
}
}

再來是adduser的部份,在Projects\Rainbow.Framework.Core\DAL\UsersDb.cs加上這個method
public Guid AddUser(string userid, string fullName, string email, string password)
{
Guid newUserId = AddUser(userid, string.Empty, string.Empty, string.Empty,
string.Empty, string.Empty, 0, string.Empty, string.Empty, password, email, false);

RainbowUser user = MembershipProvider.GetUser(newUserId, false) as RainbowUser;
user.Name = fullName;
MembershipProvider.UpdateUser(user);
return newUserId;
}

這樣就有個具有.Net 2.0版的NTLM整合Rainbow,可以作為企業內網用。

星期二, 1月 15, 2008

台灣YDN上線

看到Yahoo!奇摩將推YDN中文平台,去搜尋Yahoo YDN找到:米國YDN台灣YDN。個人的感覺YDN比不上MSDN,不過也不能怪Yahoo,畢竟YDN主要在推廣如何介接Yahoo服務。

接著看到Yahoo!YDN中文平台上線地圖日記 月底向創投招手
實在是很有趣,地圖日記用Google Map結合Yahoo帳號。用Yahoo帳號登入確實很方便,不過鳥毅覺得地圖日記除了地圖就沒什麼特色,和台灣美女地圖沒什麼分別。等於是把wretch加上地圖,又有twitter的功能。地圖輪播一直跳,眼睛都花了,平常也不會特地去設定地圖功能。我覺得地圖還是用來查比較實用呀...

在前面新聞裏有句:"去年4月,地圖日記才剛完成網站雛型設計,立刻獲得經濟部為鼓勵web 2.0新創網站比賽的首獎",害鳥毅也想找朋友做網站去...

星期一, 1月 14, 2008

幻魔大戰

今天在Family Mart買咖啡時看到99元的DVD,忍不住就買下幻魔大戰
小時候看到還不知道是假面騎士的作者石之森章太郎原作,大友克洋製作,還有許多名聲優,難怪是經典動畫。
Update:回家看了才知道,畫質...不怎麼樣,沒買的人還是別買了。

管理經濟學

今年敝公司終於要換個人PC,沒想到總經理說要和關係企業一樣,換到P!!! 1G就好,以上的電腦不換。
這是一間小公司沒錯,但一般工程師的主要生產工具是電腦,居然在工具上省錢。
古有明訓:「工欲善其事,必先利其器」,鳥毅開始思考,為何總經理不能有宏觀的經濟角度來看呢?

只能猜應該是他沒學過管理經濟學吧?就算他不懂成本理論,甫從EMBA畢業的經理不懂嗎?不解呀~(其實我也沒讀過,但用屁股想也知道他只看帳面上的成本,稍微算一下就知道投資電腦的成本效率比最划算)

笑話十則

1. 護士看到病人在病房喝酒就走過去小聲叮囑說:「小心肝!」
病人微笑道:「小寶貝。」
(這個好 ╮ (╯▽╰)╭ )

2. 有位大嫂在公共汽車上看到一位即將下車的男人掉了包煙在踏板上
於是趕緊對那男人說:「同志,你煙掉了!」
男人大怒:「你才閹掉了!」


3. 某男便秘入廁,忽見一人飛奔而入,頃刻風雨交加。
「哥們兒,真羨慕你呀,那麼快。」
「羨慕啥,沒脫褲子呢!」


4. 某公司招聘,下一位該面試的女孩的英文名是「spring」。
秘書欲藉機賣弄一下自己的英語水平,
喊道:「hi!那個叫『春』的,輪到你了!」


5. 公車上,站著的孕婦對身旁坐著的陌生男子說:
「你不知道我懷孕了嗎?」
只見男子很緊張的樣子道:
「孩子不是我的呀!」


6. 民:「軍中有軍妓嗎?
軍:「有呀,沒有軍紀怎麼行!」
民:「真的!要付錢嗎?」
軍:「這還要什麼錢呀,我們的軍紀都是統一由上面傳下來的。」


7. 女秘書:「老闆,你太太來電話, 她說要在電話裡吻你。」
老闆:「你先替我收一下,一會過來交給我。」


8. 王太太懷了四胞胎,並到處向街坊鄰居炫耀,
說懷四胞胎很不容易,平均要六萬次才會發生一例。
李太太很驚異:「那你還有空做家務嗎?」
( 做6萬次= =...)


9. 孩子正考慮有關「遺傳與環境」的問題。
母親插話道:「這個問題很嚴肅,大家都知道如果
孩子像父親,那就是遺傳;像鄰居,那就是環境。 」


10. 小泉純一郎參觀農場,
記者照了一張他在豬圈和豬一起的照片。
次日見報,旁邊有附言:
「左起第三位為小泉純一郎同志」
(小泉跟豬讀者分不出來嗎= =...)

星期四, 1月 10, 2008

奇異果離開了

去年在寫另一顆奇異果時鳥毅還沒有完全領教到奇異果的威力,奇異果調到另一課後,故事就更精彩了。

由於奇異果的第一專長並非IT,所以體貼的經理就把奇異果調到奇異果能夠發揮米國技師牌的課。奇異果不愧是奇異果,到了另一課依然故我,做出不倫不類的PowerPoint簡報,整天胡扯些東西,讓新的課長也受不了。由於同事們與奇異果的接觸變多,其他同仁也開始發現奇異果的嘴炮及高學歷與實力完全不成比例。在這段期間,奇異果有試著考台灣技師牌,分數是慘不忍睹,讓這一課的同仁懷疑米國的技師牌真的這麼好考嗎?

因此接下來峰迴路轉,奇異果居然變成個體戶。是的,您沒看錯,是個體戶。奇異果去公司的圖書館借一堆十年以上的舊電腦書看,每天看書和MSN,接著開始常常遲到、請假。鳥毅開始納悶,又不是公家機關,怎麼可能讓奇異果一個人閒在那裏沒事做呢?經理脾氣再好也不可能養閒人讓部間績效變差呀!

所以鳥毅再看一次課長鳥耕作的大作,猛然頓悟:奇異果有背景!
同事X君在和鳥毅聊天時也覺得奇異果有背景,這直到近兩個月才獲得證實。奇異果不但是副總裁介紹進來,而且奇異果的老爸還是業界大老,莫怪能夠坐領乾薪。X君聽到奇異果在座位上和朋友講電話時說一定要撐到領完敝公司的年終再走。(這樣奇異果也才有滿一年的工作年資吧?)

奇異果就這樣當英英美代子幾個月,每天上班不定時,有機會聽研討會就去。這幾天奇異果的桌上一直空著,原來是奇異果請年假,直到今天奇異果忽然出現把桌子清空並表示要離職。奇異果和同仁道別並表示要去做手機,希望竹科大廠主管的心臟要夠強呀!

再強調一次,奇異果絕對是個人才!奇異果只是完全搞錯方向,沒事去讀十年前的舊書、又喜歡打嘴炮和太過自以為是,奇異果真是個了不起的人才呀!

星期三, 1月 09, 2008

ffmpeg轉檔

朋友說YouTube都是用ffmpeg在伺服器轉檔,因此找了一下用法:
ffmpeg -i 原始影片檔 -f flv 輸出.flv
另一個人寫
ffmpeg -i 原始影片檔 -vcodec flv -acodec copy -y 輸出.flv
ffmpeg支援的格式非常多,只要輸入 ffmpeg -formats 就可以看到支援的codec,不過有些做假:P 例如codec選wmv3會失敗,只能選wmv2。

以下是我試用過的參數:
-b bitrate set video bitrate (in kbit/s)
-r rate set frame rate (Hz value, fraction or abbreviation)
-s 調整輸入大小,例如:-s 320x240
-y overwrite output files
-t duration set the recording time
-f 輸出格式

ffmpeg效果好,速度快,想架影片站的人要好好利用呀~

參考:
在伺服器上用ffmpeg轉檔
[Linux][問題] Linux 下有沒有影片轉檔程式?
戰記:解決Ubuntu Linux下ffmpeg轉FLV沒有聲音問題

星期二, 1月 08, 2008

1500GB記憶體的電腦?

這款床,開趴也行,1500GB記憶體的電腦,會不會太猛了XD

沒知識也要有常識

今天遇到某個沒常識的人,抄別間公司的電腦規格,把螢幕120dpi也抄過來。
連忙報告長官這樣會影響現有intranet的設計,而放完婚假回來的MIS先生居然說:DPI不會影響呀。

讓我們看一下微軟在文字會出現不同以 GDIPlus 與 GDI 繪製時的原因是怎麼說的:
120 - dpi 大小寫對應到一般大型 「 字型 」 顯示設定...96 dpi (標準螢幕解析度)
設定成120dpi的效果,正如同設定為大型字呀!身為網頁設計人員,這種常識是必備的!(大型字對一般UI程式也會有影響)

星期一, 1月 07, 2008

Java即將變成另一個COBOL了?

不要人云亦云。

先照順序看:
Java is becoming the new Cobol
Java會步上 COBOL 的後塵嗎?
關於”Java即將變成另一個COBOL”這篇文章
版本控制,版本升級是不是個問題?
回應”版本控制,版本升級是不是個問題?”
Java , COBOL 以及版本控制

因為不是高手,而且以前用Java,現在用.Net,所以才可以客觀地以一個dummy的角度看待Java。基本上我的看法和Q大濕差不多啦。
  1. 使用Java差不多有十年,雖然不是一直在用,但是JDK 1.0寫的程式到現在也沒什麼大問題。GUI程式編譯確實會不相容,但以前編譯出來的class確能在新版JVM跑。"Write Once, Run Anywhere." 指的就是binary的相容,而不是source code相容。
  2. 就算是Perl/PHP,舊版相容性都不夠好,更別提.Net了。.Net的Binary向前相容性不算好,Source code就更差。.Net 3.5是基於.Net 2.0,所以根本不能算向前容性,只能說是Library的擴充。
  3. Servlet Container有時候會用一些undocumented api,像com.sun開頭的那些,所以JDK更版時常會有問題,確實會在更版時造成困擾。
  4. EJB是基於Java的一個framework,但不能代表Java。.Net上也有很多人開發一些framework最後無疾而終。以前太無聊學Struts,買了本1.0的書,結果1.1不太一樣,2.0差更多,但這也不是Java的問題呀!不信的人請從asp.net 1.0玩到3.5看看...
據在平均50分的資管系任教的學弟(他也是非本科系,Civil的Ph.D)表示,他們學校做專題也開始改用.Net,因為企業都在用,而且容易上手。
這是Sun一開始對UI處理方向的問題,而不是Java的錯。現在NetBeans也算是很容易開發,我感覺用jsf和asp.net也沒有差很多。別忘了Java有成堆的library,也有成熟的runtime;mono基本上還沒有成熟到能與jdk拼的程度。(mono真的很成熟時,微軟也會煩惱Windows Server賣不出去)

至於ROR Framework,在我不專業的眼光看來,由於activerecord、scaffold等神奇的功能加上Ruby魔幻的語法,可以用很短的code寫出相同的程式。但在下這種笨蛋就是學不會複雜的語法,所以嘸蝦米輸入法、Ruby、Groovy都覺得太複雜,所以看了幾本書都沒辦法真正學會C++呀!

由於OpenSource社群的活躍,我相信Java絕對不會掛點或奱成小眾語言(COBOL、SmallTalk等)。XDite也有指出ROR的快速開發也不是我們這種笨蛋能輕易學會,要熟悉ROR的framework要花不少的心力,還有靈巧的Ruby語言。不管什麼程式語言都會有一段熟悉期,到大改版時陣痛是免不了的啦!所以老板想用Asp.Net就給他Asp.Net,要PHP就給他PHP,若能自己決定時就看你自己爽啦XD

Update:Q大又追加一篇 ”版本控制,版本升級是不是個問題?”後記

星期二, 1月 01, 2008

閒聊

今年一開電腦就看到一則新聞:Yahoo!奇摩顧昌欣 是專才也是全才 內容是標準的馬屁文章,本來是要直接跳過去,不過忽然看到他的年紀和獨孤木差不多。結果又看到獨孤木:最近會搬家到竹北 diggirl當然會繼續經營下去呀 忍不住說一下:獨孤嫂真是有超人行動力的女人,想去台中就把房子都看好了,一般的女人應該是叫老公去找吧?

唉唉~ 我是不知道Yahoo!奇摩電子商務服務事業部副總的薪水有多高,不過若是以奇摩站的薪水來看,是不會比獨孤木待在宏瞻高多少。Yahoo當然是以外商的薪水計算,再加上股票應該還不錯吧?(不過比起廖大待的聯發科可是差多了)

剛好有朋友也在宏瞻,月薪約六萬多,我想獨孤木如果待到現在應該是十萬左右,如果去銀行工作就更高囉~
獨孤木想必是不滿足於一般的薪水階級,想要自行創業。我對於創業成功的看法與同人在創業者的膽識相同,凡人創業成功需要無比的決心。當然也有運氣很好的人,但就算是被人稱做丁丁的六位同學,也是不眠不休的付出自己的時間與精力,才撐到網站被賣掉。(本來一直預料他們會撐不住便宜賣,沒想到遇到賈伯伯...)

最近公司忙得不像話,MIS小姐跑去生產,MIS先生又在12月結婚,月底到歐洲度蜜月,剩我一個網管什麼忙也幫不上呀!再加上自己家裏也有事情要忙,一整個忙到不行,看來最近又要很久沒時間寫些營養的東西了.