BMTD 's Yard of Fun

    Technology, Sports, Music, Chinese Essays

    Browsing Posts published by mmpower

    VPS stands for virtual private Server, a techology to divide a server into multiple “virtual machines” and each of the “virtual server” can run its own operating system as if it’s a standalone server. VPS is mainly used for Web hosting. It can also be used toestablished “sandbox” or for demo/testing purposes etc.

    The technology is based on virtual machine technology that exists for a while.

    Virtual server products that I know of:

    – IBM had the technology (named zen?) to divide a mainframe into bunches of vritual servers running linux several years ago(they call it “partition”);
    – The latest Sun solaris 10 also had this feature (they call it “zone),…
    – virtuozzo
    – open source Linux projects like Linux VServer , Xen ,freeVPS and UML (UML is the slowest in terms of performance) for linux,
    – Jail for FreeBSD
    – freeVPS
    – openVPS (based on linux-VServer )
    –VMWare server
    –Even Microsoft has the Microsoft Virtual server 2005 (http://www.microsoft.com/windowsserversystem/virtualserver/default.mspx) running on top of Windows server 2003.

    w.bloggar supports writting and publishing blogs from desktop for many blog sites and blog tools such as blogger, movableType, B2, WordPress, .Text etc.

    This post was created nad published by w.bloggar.

    谢老蔡:)

    关于大文件共享,我刚想起一个更好的办法: 用 gmail + roamdrive. roamdrive是一个可以把一个hotmail或gmail账户当成你的网上硬盘的软件–原理是把大的文件切割成小块,每块变成一个email,这样就能突破gmail每个邮件10MB的限制。

    我建立了一个新的gmail账号,pku8808@gmail.com ;需要上载或下载文件的同学去http://www.roamdrive.com 当漏一个最新的roamdrive软件,然后就可以直接从windows 把文件拖动到gmail里去,或者从gmail拖动到本地硬盘。

    Blog Radio ready

    1 comment

    Now visitors can click on the “Radio” link on the right corner of the header and listen to some of my favorite songs… Enjoy! :)

    I like this song, both the melody and the lyric– A sign that i am getting old, sigh :(

    Those Were The Days

    by Mary Hopkins

    Once upon a time, there was a tavern
    Where we used to raise a glass or two
    Remember how we laughed away the hours,
    Think of all the great things we would do

    Those were the days, my friend
    We thought they’d never end
    We’d sing and dance forever and a day
    We’d live the life we’d choose
    We’d fight and never lose
    For we were young and sure to have our way

    Then, the busy years went rushing by us
    We lost our starry notions on the way
    If, by chance, I’d see you in the tavern,
    We’d smile at one another and we’d say

    Those were the days, my friend
    We thought they’d never end
    We’d sing and dance forever and a day
    We’d live the life we’d choose
    We’d fight and never lose
    Those were the days, oh yes, those were the days

    Just tonight, I stood before the tavern
    Nothing seemed the way it used to be
    In the glass, I saw a strange reflection
    Was that lonely woman really me?

    Those were the days, my friend
    We thought they’d never end
    We’d sing and dance forever and a day
    We’d live the life we’d choose
    We’d fight and never lose
    Those were the days, oh yes, those were the days

    Through the door, there came familiar laughter
    I saw your face and heard you call my name
    Oh, my friend, we’re older but no wiser
    For in our hearts, the dreams are still the same

    Those were the days, my friend
    We thought they’d never end
    We’d sing and dance forever and a day
    We’d live the life we’d choose
    We’d fight and never lose
    Those were the days, oh yes, those were the days

    This post is password protected. To view it please enter your password below:


    After extensive search, reading, comparing and trying, finally I limited my choices to the following three:

    – exo platform
    – Liferay
    – uportal

    All of them have JSR 168 support, which is my basic choosing criteria. Still they all have pros and cons:

    – exo platform: the most technically advanced; has all the buzz words like JSR 168, JSR 170, WSRP, IOC, JSF etc; it uses PICO, the light-weight IOC framework; it also uses JSF as the portal presentation technology and has an eclipse plug in for developing (and hot deploy?) portlets. This is a combination of portal server and CMS. The cons is that it’s still not quite mature yet (in release 1.0 RC phase), and it’s difficult to find documentation on their web site. Another thing I am concerning about exo is the scalability– based on somebody’s load testing the result is not as good as liferay or UPortal when load increases– the reason is perhaps to do with use of EJB, caching, and so on.

    –Liferay: I like their new architecture with integration of the spring framwework, hibernate etc, so that you have the benefits of Spring IOC and AOP, and can decouple the business logic from the deployment architecture– whether running in a servlet container or delegated by session EJBs. Also they have the biggest collection of ready-to-use portlets among the three, which can reduce lots of work on developing custom portlets. Liferay is a 6-year project , pretty mature and realworld-proved now. Their license model is business-friendly. The downside is that the JSR168 support has just been added recently , and there is no good JSR 170, WSRP support yet… Also I was told that the layout mechanism is not as flexible as exo’s.

    – JASIG-Uportal: I don’t quite like the current “channel” concept which is to be replaced by JSR-168 compliant portlets. Uportal is designed for universities, this may help us a lot. Need to look at the design and avalable features to see how well it can be reused on pre-college school education. Their documetation is quite complete.

    It’s difficult to decide at this moment. still need to download and try each of them one by one, and look into the source code, the supporting community etc.

    I may also take a second look at openuss , which is integrated with liferay but seem to tie to JOnAs and Enthydra. Personally I prefer Tomcat+JBoss for Application servers.

    One of my old posts, with some thoughts apparently not true or outdated in today’s view; just put it here to fill the space ;-)

    – The technical platform selection first is determined by what kinds of resources/expertise the developemnt team have.

    – Language by itself: PHP is a scripting language, like VB script used in ASP. whileas Jsp and asp.net are pre-compiled when serving the request, Java and ASP.NET(whether C# , VB.net, J# or others) are full-fledged object-oriented language; PHP is still not full OO before version 5 . Traditional COM based ASP mainly uses VB/VBscript, which sucks.

    – Enterprise level Services: J2EE and .NET and the traditional ASP (with microsoft DNA architecture built around COM/DCOM and MTS/COM+) provides enterprise level services such as component services, security, transaction management, object pooling, O/R amapping, clustering etc so that the application developer can focus on the application logic, and they are proven technologies in large-scale applications of various industries. PHP is weak at this area: You probably need to build the frameworks by yourself in a large scale/complex distributed system.

    – About Software Design: Java/C# etc are good OOP languages and suitable of applying OO design patterns. Among the two, Java community is more design-patterns aware, with J2EE spec requesting developers having design patterns in mind when deisgning applications. Microsoft’s development tools, especially Visual Studio for ASP.NET emphersise on the usability and simplicity for the developer and don’t require advanced design knowledge. There are pros and cons of both approaches. J2EE’s approach makes it difficult for beginners, also the lacking of good IDE support (hopefully new IDEs with good JSF support will catch up) makes even very simple application development a complicated process. ASP.NET approach makes it easy for simple apps and beginners, but has more retrictions when you want to go more advanced steps.

    There are lots of open source frameworks in J2EE to improve productivity and enforce design patterns, such as MVC frameworks like struts, webwork or JSF/ASP.NET types framework such as echo. ASP.NET basically is a page-level MVC framework. The use of framework can enforce the design pattern but on the other hand the developer is restricted by the framework’s own limitations.

    AOP (Aspect-oriented programming) is one of the most hyped software engineering methdologies. There are lots of projects provides AOP in Java now, either through a language enhancement (aspectJ) or through frameworks utlizing bytecode enhancing or runtime reflection/Dynamic proxy(Spring, AspectWerkz, JBossAop etc). MS .Net currently does not have any of this, but probably will eventaully have similar features.

    – tradional COM based ASP (asp 3.0) is currently widely used, but there are lots of issues with the technology and that’s why MS is discarding it and come up with .net.

    – Lots of J2EE features are now being ported into .NET– for example in the up-coming asp.net 2.0, things like JDO or Hibernate type of O/R mapping is being added; The new “MS build” concept is stolen from the Apache Ant project; And because of the similarity between Java and C# languages, actually there are lots of open source Java frameworks are being ported to .NET: ant, junit, hibernate …; It’s similar vice versa: The Sun JSF specification is about the same concept as the ASP.NET web forms.

    – When it comes to a web application, it is much faster to prototype it in PHP and ASP.NET than in Java without WYSIWYG IDE support.

    – About backend Database systems: Although APache+PHP+MySQL is popular in building web apps, MySQL is not yet matured for complex systems, since up till now it still lacks some important features in a RDBMS: subselects, stored procedures, triggers, views, foreign key referential integrity etc. It just recently added transaction support with the help of innoDB
    engine. All major commercial DBMS beat it in terms of features and performace under heavy multiple users, complex queries, and read/write query load. MySQL is faster for simple SELECT queries. If going for Open source DBMS, then Postgres SQL is a better choice both in features and licenses(truly open source ).

    –Scalability: There is an never-ending argument between different camps. But I think the most important factor is the application architecture . If you build something that does not scale, it’s more of the design, not the language itself.

    – vendor lock-in etc.

    PHP and J2EE does not have the vendor lock-in problem.

    At this moment ASP.NET do have the this issue. simply look at what MS did for Office users.

    However, in the long run, .NET platform may not be a big problem for vendor lock-in. With (hopefully) the rise of open souce .NET implementations like MONO, we may not rely on MS for the .NET technology. but that’s not ture at this moment and quite possibly will never happen.

    --Integration with other systems/platform:

    traditional MOM middleware is well supported in java and MS technologies. they also support web services well. PHP also has some existing library supporting XML web services. PHP also supports calling other languages such as java.

    本来还不知道,直到一天听到女儿嘴里嘟囔着什么“four witch’s tents, one nation under duck”。一问,才知道从kindergarten开始,就已经每天早上念这个了,只是她根本不知道是什么东东。我让她背了几遍,发挥托福听力功底,整理出这么个句子:

    I pledge a legion to the flag of the united states of America and to the republic for the richs tens, one nation under guard, invisible with liver, tea and justice for all.

    想想不对劲,肝脏茶叶都出来了;而且不是平等吗,怎么成了富人共和国。又听了几遍,改为:

    I pledge a legion to the flag of the united states of America and to the republic for Rich Stanz, one nation under guard, invisible with liberty and justice for all.

    这个什么Rich Stanz 一定是个大英雄,绝对猛过华盛顿/杰弗逊,不然怎么是the republic for Rich Stanz呢。

    又过了半年,在网上看新闻说有加州法院禁止学校早上背诵这个,原因是与宪法抵触;这个判决立即遭到全米爱国人民和全体国会议员,总统的愤怒谴责,且即将被最高法院推翻…。惊奇之下细看,才发现我的听力太high了。原文是:

    I pledge allegiance to the flag of the United States of America, andto the republic for which it stands, one nation, under God, indivisible, with liberty and justice for all。

    靠, 老美的爱国主义教育就是牛皋,好好学习天天宣誓,还附加上帝之教。

    1)国内的网络游戏开发:

    –最早流行的都是一些MUD–泥巴游戏,著名的有笑傲江湖,金庸群侠传等,到现在还有大量玩家。早期的MUD都是纯字符的RPG类养成游戏,现在的新版本已有图形版。

    –网上棋牌类游戏:四五年前开始兴起,打牌下棋等,国内有许多这类网站/游戏中心,如联众。

    –这两年开发的新游戏,及搬上网的老RPG游戏等。受韩国网游鼓舞,国内开始大量投入游戏开发,如网易的大话西游。金山也将以前的剑侠情缘搬上网。台湾的老牌游戏商如大宇、智冠,华义等也都以进军大陆。

    但总的来说市场是韩国游戏的天下。另外国内全是电脑网游,没有online console game.

    (2)美国的网游

    其实美国网络游戏也很热,从游戏种类/数目上要比国内多得多。70年代开始美国已有许多mud games. 现在最流行的网游包括sony的EverQuest, EA的’Ultima Online等。quake/doom类的战斗游戏也较流行,但subscriber人数总的来说与亚洲相较不多。我想其中一个原因是可供选择的游戏太多,而且许多不用付费。

    另外大多是RPG类游戏,容易厌倦,难以普及到大众。至少本人是这样感觉。

    美国另一个特点是电视游戏(包括online console game)占了游戏市场大头。电脑游戏相对市场不大。