8
2011
自制Bugzilla 4.0.1简体中文包
实在讨厌英文,我实在搞不懂,一帮中国人操着各种方言口音的英语单词交流,会爽?效率会高?
其实全称应该叫做Bugzilla 4.0.1 繁体中文简化版,因为是根据repeat的繁体中文包(Bugzilla traditional Chinese localization 4.0.1)简化过来的,花了大概两个多小时,除了要转换繁体到简体之外,大概还修改了几十个术语的叫法(软体、伺服器、连线、网路神马的),就差不多了。
肯定有没顾到的地方,欢迎大家试用反馈。
此外,发出来的email中字段的标题还是英文的,这个没找到在哪里改,数据库还不敢轻易动,怕动出毛病,谁有好办法?
刚才放到4.0.2版本里面简单测了一下,也没什么问题,当前最新的稳定版就是4.0.2了。
解压以后扔在bugzilla根目录即可。多刷刷主页就出来了。
15
2011
ZZ 10块的耳机和1w的耳机究竟差距在哪里
第一个音质关键词,解析度(HiFi图文解释:关于耳机的解析力)
解析度可以理解为器材还原音乐细节信息量的多少,是一个耳机耳塞包括音箱最基本的素质,也直接决定了器材的定位和定价。同一首曲子,不同器材让你听到的细节内容是不同的,如果信息量不够,三频听感再好也无法准确还原现场音乐。
10~50元的耳机
三频信号失真严重,能听出歌曲的主旋律,细节部分大量缺失,解析度很差,对人耳损害较大,因为声底太混,为了听清楚主旋律,你会接受到大量的噪音。
价位适合音乐风格:都能听,流行人声是能听清的
(PS:价位适合音乐风格是指这个价位会有某一款耳机适合表现某类风格的音乐,而非所有这个价位的耳机都能够表现那类音乐)所以说用差耳机才是会真的伤耳朵。
100元的耳机
外观可能会很好看,比如ath on3,三频马马虎虎,可能有一个频段比较突出(多为低频,偶尔会是高频)
价位适合音乐风格:流行pop,可能还有部分重音较强的电子乐 这就是ON3,烂大街了~
300元+的耳机
这个价位开始出现不少经典型号,k420,mx90,mx760,dt231,PX200,PP等等。
特点是三频相对平衡,一个频段会相对出彩,声底开始变得干净起来,声场开始出现甚至被强行拉伸(mx760)
解析度大幅度提高,细节开始突出,比如mx760,你可以听到不少原来听不到的音乐细节。
价位合适音乐风格:流行pop,流行女声,摇滚(大部分,但很难出彩),英伦,indie pop,newage(入门级价位),乡村,民谣,金属(入门级),古典(入门级)备
注意,这个价位的非入耳耳塞在素质上基本达到能够较好表现各类流行乐和电子乐的水平。如果无更多类型的音乐需求,这个价位的耳塞在质量和音质上已经能够满足大部分用户的需求了。
如果你不想再折腾,这个价位勉强够了。 (更多…)
31
2011
ZZ 通过Eclipse插件启动Tomcat的问题
问题
目前在通过Eclipse中插件启动Tomcat时遇到了个问题,就是访问http://localhost:9000/时出现HTTP Status 404 The requested resource (/) is not available.错误,但是通过http://localhost:9000/myapp访问项目时却没有问题,系统配置没有问题,而且手动运行%TOMCAT_HOME%\bin中的startup.bat和shutdown.bat都没有问题,能正确访问http://localhost:9000/,http://localhost:9000/manager,http://localhost:9000/admin/index.jsp。
开发环境
Eclipse
Version: 3.4.2
Build id: M20090211-1700
Tomcat 6.0.18
Tomcat插件
wtp-sdk-R-3.0.4-20090213193639
org.eclipse.jst.server.tomcat.core_1.1.104.v20081006.jar
org.eclipse.jst.server.tomcat.ui_1.1.101.v20080620.jar
解决方法
通过手动启动Tomcat时,是采用%TOMCAT_HOME%\webapps(包括docs,host-manager,manager,ROOT4个目录)作为默认的webapp目录的,%TOMCAT_HOME%\webapps目录下包括ROOT,对应服务器的根目录“/”,也就是通过http://localhost:9000/访问看到的Tomcat Welcome页面。
如果在Eclipse中通过插件启动Tomcat,则是采用%ECLIPSE_WORKSPACE_HOME%\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps作为webapp目录的,wtpwebapps下没有ROOT webapp或者有时包括一个空的ROOT webapp。在这种情况下,访问http://localhost:9000/就会看到HTTP error 404 或者一个空白页面。如果把%TOMCAT_HOME%\webapps下的docs,host-manager,manager,ROOT目录拷贝到wtpwebapps目录下,此时也是可以通过http://localhost:9000/访问看到的Tomcat Welcome页面。
Eclipse中的Tomcat插件默认是把%ECLIPSE_WORKSPACE_HOME%\.metadata作为Server Location的,因此当通过Eclispe插件启动Tomcat时,服务器中只运行了Eclipse工作空间中已发布到Tomcat上的项目。
双击Server视图中的“Tomcat 6 at localhost”,打开一个Tomcat Server编辑器,有一栏“Server Locations”是配置服务器的位置。注意:如果已经有项目Publish到Server上了(启动应用也会发布项目),Server Locations栏是不可修改的,可以先Remove项目并Clean Server,使Server Locations栏可修改。选择“Use Tomcat installation”,通过Eclispe插件启动Tomcat时,%TOMCAT_HOME%\webapps目录下的所有应用都会被启动。
如果只想运行Eclipse工作空间的应用项目,可以选择“Use workspace metadata”;反之如果希望同时运行其他Eclipse工作空间之外的应用项目,就可以选择“Use Tomcat installation”。
Tomcat6.0.18的配置问题
在解决问题的过程中还遇到另外一个问题,手动启动Tomcat6.0.18时也不能访问http://localhost:9000/host-manager,同样报HTTP Status 404 The requested resource (/) is not available.错误,而Tomcat5.0.25中就不存在这个问题。
原因:Tomcat6.0.18与Tomcat5.0.25的默认配置有一些不同。Tomcat6处于安全性的考虑,默认关闭了目录浏览功能的。否则,要是访问目录下没有默认首页,那么该目录下的文件列表就泄露了。
Tomcat-6.0.18\conf\web.xml配置如下:
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
同样的配置选项在Tomcat-5.0.25\conf\web.xml中配置如下:
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>
org.apache.catalina.servlets.DefaultServlet
</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
解决方法就是把Tomcat-6.0.18\conf\web.xml中的false改为true。
参考资料
Tomcat Configuration in Eclipse
23
2011
ZZ 有关社交游戏(Social Game)的小结
在2011年的今天写这份小结,其实是对我狂妄自大和自我感觉过于良好的一种反思。因为对社交游戏的预测,是我有生以来最失败的一次。当然,在2008年的时候,我还没有今天的方法论和经验,而且事后分析和早先预测根本就是两码事。
早在社交游戏诞生的那一天,我就不看好这一领域。当时我认为它无非是一种应用(Application),而不能称为游戏。而且我断言任何social game的生命周期不会超过一个月,因为一个月是人类重复简单PVE玩法的极限,超过之后一定会感到厌烦。但在2009年的时候,实际上Social Game就已经形成了一个真正的细分市场。许多经典的Social Game诸如农场得以诞生,并且借助优质平台成为了赚钱机器。社交游戏开发商诸如zynga一跃成为最富财力的游戏厂商之一。2010年,social game已经开始大量淘汰不合格的参与者。一些优秀的游戏和厂商脱颖而出,进入门槛已经变得很高。
我们无可否认社交游戏的成功,以及它与传统游戏分庭抗礼的卓越能力。但是,诸如UO之父Richard Allen Garriott关于社交游戏取代MMO乃至传统游戏,以及一些不大著名的业内人士类似的预言,却一定是无稽之谈。
的确,游戏在向简单化发展。我们从Baldur’s Gate:Shadow of Amn到Neverwinter Nights,再到Dragon Age: Origins中可以看到;从Prince of Persia: Sands of Time到Prince of Persia: Prodigy,再到Assassin’s Creed2中看得更加分明。系统变得更简单了,操作变得更容易了,游戏时间变得更短了。是游戏产业在变得萧条吗?是玩家水平在下降吗?还是玩家人数在减少?其实,恰恰相反,其原因在于游戏更加普及了。由于视觉效果的提高,游戏主机和PC的普及,以及互联网的发展,游戏不再是核心向玩家的娱乐方式,而越来越成为大众化的娱乐方式。大众化的结果,则意味着低水平玩家的比率在大幅上升。游戏属于艺术,但又不同于电影、戏剧、小说等传统艺术形式,它要求受众的强交互性——不能投入大量时间和精力的玩家,所能达到的水平肯定有限。而任何商业化的产品都要以满足用户需求为首,这并不一定和创作者的追求和理念相同,就好像6、70年代的B级片大行其道一样。
但社交游戏的涌现与游戏的简单化发展并没有太大的关联。因为Social Game所侧重的游戏体验与传统游戏并不相同,就好象麦当劳与法国大餐的体验大相迥异类似——麦当劳的规模和实力显然超过了大部分经营高端法式餐饮的企业,但即使雷克洛克本人也从未考虑过它会取而代之,甚至连与之竞争的想法都没有。社交游戏不大可能提供艺术欣赏的体验(诸如Metal Gear Solid4),强烈的带入感体验(诸如Red Dead Redemption),激烈的竞技体验(诸如Call of Duty系列),也不大可能提供解开谜题带来的愉悦感(诸如Baldur’s Gate, Portal2),或者MMO中带来的极大的成就感。但Social Game的核心体验是如此明确、简单,且深深抓住人类最基本的心理需求。
首先就是成长的体验。早在09年,有人就曾断言“偷菜”的最重要体验是“偷”。而在今天,大部分有经验的社交游戏用户都应该能认识到这样的结论的浅显的。无论是开地,还是种植物的变化,还是金钱的积累,乃至背景的转换,都能够体现出很好的成长感觉。而“种地”是任何人都能够认可的行为方式,更深植在中国人的基因之中。其后出现的不计其数的又颇为成功的社交游戏,诸如餐厅经营,夜店经营,城市建设等等,其实都和“种菜”这一行为展现了一样的游戏体验。
事实上绝大部分游戏都能体现成长体验。但很少有游戏能够把其生命周期和成长周期拉得那么长,成长本身的操作又那么简单(Mouse_Click)。上古卷轴4的游戏时间最多为100个小时,大概能玩1个半月;Red Dead Redemption的游戏时间大概20-30个小时,最多只有两周;COD的单人战役往往6个小时即结束,一个周末就能完成。可玩家一旦成为一个活跃和忠诚的社交游戏用户,则很有可能具备2个月以上的游戏生命。MMO或许能够与之相比,但是MMO的一次必要游戏时间过长,其成长难度也较大,所以两者的成长体验又大不相同。
回过头来再思考一下“偷”,如果“偷”能够成为一种社交游戏的宝贵体验的话,那么我们设计一款到对方家里偷冰箱、偷彩电、偷汽车的游戏能否获得突破性的成功呢?事实上“偷”只是一种好友间交互的方式——社交游戏的第二种明确的游戏体验便是交互体验。“偷”是一种最容易理解的“竞争性”的交互。而在之后的社交游戏中,更多地出现的是一种“互助性”的交互,比如给好友的酒吧加酒,帮好友的城市解决问题等。由于(Facebook)社交游戏中的好友,大多为真实认识的好友,因此这样的交互比和陌生人进行的“内源性价值”交互更能为玩家带来兴趣。试想两个多年未见面的同学在社交游戏里彼此进行了帮助,并且互相获悉,很可能就是两人重新建立沟通的桥梁。
但最近出现的一些问题是,随着社交游戏数量的大幅提高,以及社交游戏体验本身并没有太大改变,用户好友同时添加某一游戏的可能性越来越低了。玩家可能会添加不认识的用户成为平台好友(如某款游戏的公共主页下到处都是加好友的消息),但这又破坏了SNS平台(Facebook类)本身的纯洁性。当你看到昔日属于同学和同事之间分享交流的sns,变成了游戏好友散乱消息的聚散地时,很有可能会感到得不偿失。Google+的出现有可能会遏制这种问题,因为它是以“圈子”为主体的设计。但它出现的时间太短,还看不出其卓越的能力。而且Google+在其接入游戏的社交上的设计过于业余了。鉴于此,一个最好的解决方案,或许也预示着未来社交游戏的主流设计方案,就是好友间的(互助性)强交互,和陌生人之间(竞争性)的弱交互。有两款优秀游戏可以作为此类设计的代表。一款是第九城市的“Q将三国“,一款是Playdom开发的City of Wonder。在“Q将三国“中,你可以与陌生人进行比武并获得金钱/经验值。但访问好友则可能获得非常好的奖励。在City of Wonder里,你可以与随机的城市进行贸易、交流或战斗(其实仅仅是数值的简单比较),而好友之间则可以互相帮助建设奇迹建筑(Marvel)等,也对扩地造成决定性影响。
社交游戏的未来是光明的。但它一定会秉承成长性和交互性两条主线。它可能会变得更复杂,但相对题材类似的单机游戏,其难度不会超过后者的10%(如City of Wonder和Civilization之间的关系)。它的画面可能变得更精致,但它必定要受到技术条件的制约。社交游戏会继续占据重要的市场,但它对于MMO的影响将是微小的,对于单机和主机游戏的影响更是微乎其微的。它们之间更多的竞争资源是用户的时间,但由于社交游戏所占用的主要是碎片时间,其最大的对手可能是微博、轻小说等等消遣方式。
转自 北•亡曲
13
2011
这IDC真是让人忍无可忍了
ewsidc,当初注册的时候是因为他们的自由定价主机形式新颖,价钱实惠,谁知道掉到坑里了!
从开通以来这已经是第三次私自更换IP而事先没有任何通知!
前两次是因为同服网站受到攻击,这次居然是因为工信部要求封禁未备案的网站而封掉整个IP!
第二次停了三天,连google都取消收录了!悲剧!
独立IP要600块/年,还是不太划算啊
客服也特别横!
看来得研究研究换一家了,大猫的miao看起来不错
10
2011
ZZ 《老友记》典故集解 Season 1-10
第一季
第一集
Mr. Potato Head
瑞秋和众人谈到了她逃婚的原因,她说这是因为她突然发现她的未婚夫巴里医生长得活像
“薯头先生(Mr.Potato Head)”,这是在美国家喻户晓的卡通人物。如果大家看过《玩具
总动员(Toy Story)》,就会在里面发现他和他的夫人“薯头太太(Mrs.Potato Head)”叽
叽歪歪,经常批评这、批评那的形象。尽管“薯头先生”很可爱,但卡通毕竟是卡通,如
果你在乎未婚夫的容貌,而未婚夫又不幸长得和“薯头先生”一副嘴脸,你最好还是和瑞
秋一样赶紧逃婚。
Mento
Mento是曼妥思糖(Mentos)的简称。在钱德勒和乔伊安慰离婚的罗斯时,钱德勒说他和乔伊
与女孩的关系从来没有“长过嚼一颗曼妥思糖的时间(lasted longer than a Mento)”;
以劝慰罗斯放开一点。
Billy don’t be a hero
这是一首著名的反战歌曲,歌中有一句词说:“比利,不要成为一个英雄(Billy,do
n’t be a hero)。回来,让我成为你的妻子。’在剧中,乔伊劝告罗斯忘记前妻卡罗尔,
再找新的女友,罗斯非常不满,他反问乔伊:那“比利,不要成为一个英雄”这个故事对
你有何启发?这里罗斯把找新女友比喻成上战场。
Barn raising scene in Witness
哈里森,福特主演的《目击者(Witness)》一片中,被迫杀的警察布克为了逃脱敌人而被迫
躲在农村,宁静的乡村生活中大家合力盖谷仓的场景是电影中层现快乐生活的精彩片断。
在《老友记》剧中,刚和莫尼卡共度良宵的保罗为了形容他的快感,说和莫尼卡做爱要超
过“所有生日、两次毕业典礼再加上《目击者》电影里合力盖起谷仓那种快乐”。 (更多…)
14
2011
ZZ 自适应浏览器窗口的页面背景
最近在做的一个项目中,客户要求网页的背景不管客户浏览器大小多大, 背景都要铺满全屏。在网上找了一下,有人已经研究出来了方法,不用js就可以做到。下面看代码:
CSS代码:
02 body {/*为页面body添加一些基本信息*/
03 font-family:Arial, Helvetica, sans-serif;
04 font-size:14px;
05 color:#FFFFFF;
06 background:#DDDAD9;
07 }
08 #wrap{position:absolute;width:100%; height:100%;top:0; left:0; overflow:auto;overflow–x: hidden; z-index:2;}
09 #background {position:absolute; z-index:-1; width:100%; height:100%;}
10 .container{width:960px;margin:0 auto;}
HTML结构代码:
02 <div class=“container”>
03 <div id=“header”>
04 这里是header
05 </div>
06 <div id=“content”>
07 这里是Main content
08 </div>
09 <div id=“footer”>
10 这里是footer
11 </div>
12 </div>
13 </div>
14 <img src=“bg.jpg” id=“background” alt=“” />
解释一下上面的css和html,这个其实就是将html和body的滚动条取消,用div#wrap容器来模拟页面的滚动条。其实并不是用图片做背景的,是将background的图片z-index设置为-1;使它放在wrap页面的底部,这样既覆盖了body的背景色和背景图(如果有),又使内容区域的最上面。
这样看起来没啥问题了,挺好。
但是,但是客户的要求是千变万化的,客户说:如果我的img的src地址出错了,怎么办,这样把,我再在body里面增加一个bg吧。然后css就变成了这样:
2 font-family:Arial, Helvetica, sans-serif;
3 font-size:14px;
4 color:#FFFFFF;
5 background:#DDDAD9 url(images/bg.png) no-repeat center top;
6 }
但是,但是客户看了之后说:这个背景图要随着内容变化,也变化,不能让它固定在浏览器窗口上面。于是,再搜索信息,再修改:
在网上找到了一个外国佬写的一个Jquery插件Full Size Background Image jQuery Plugin
他做的一个demo: Full Size Background Image jQuery Plugin DEMO
具体使用方法:
CSS代码:
02 body {/*为页面body添加一些基本信息*/
03 font-family:Arial, Helvetica, sans-serif;
04 font-size:14px;
05 height:100%;
06 line-height:1.5;
07 color:#FFFFFF;
08 #background {
09 position: fixed;
10 top: 0;
11 left: 0;
12 overflow: hidden;
13 width: 100%;
14 height: auto;
15 z-index: -1;
16 overflow: hidden;
17 }
18 #wrap{position:absolute;width:100%;height:100%;top:0; left:0; z-index:2;}
19 .container{width:960px;margin:0 auto;}
HTML代码:
02 <div class=“container”>
03 <div id=“header”>
04 这里是header
05 </div>
06 <div id=“content”>
07 这里是Main content
08 </div>
09 <div id=“footer”>
10 这里是footer
11 </div>
12 </div>
13 </div>
14 <img src=“bg.jpg” id=“background” alt=“” />
但是他这个插件有一个问题,当页面内容高度超过一个屏幕的高度,在ie6浏览器下会出现问题,背景图片只出现在了当前页面的当前窗口,当拉动页面右边的滚动条的时候,下面就没有背景了。请分别在ie6和其它浏览器里浏览:
并且当添加的图片背景不存在的时候,ie6浏览器页面底部会出现一大块空白,查看下面没有背景的demo, 请分别在ie6和其它浏览器里浏览:
点此查看demo
于是又对页面css进行修改:
2 #wrap{position:absolute;width:100%;height:100%;top:0;left:0;_overflow:auto;_overflow–x:hidden; z-index:2;}
添加了上面的代码之后,解决了上面的问题,当页面内容高度超过一个屏幕的高度的时候,ie6下面不会再出现问题,请看demo:
但是由于在ie6下面这是用wrap模拟的滚动条,所以在ie6页面下,当#background标签没有图片的时候,body背景图会固定在窗口里不变。请看demo:
总结:
文章前两个demo没有用js,纯css写的,唯一不足之处就是:当页面#background没有图片的时候,拉动右边滚动条,body的背景是不变的。
文章后面四个demo用了js,不足之处就是:ie6浏览器会出现一些问题,当然如果不考虑ie6的话,就可以这里的4个demo中的任意一个了。
其实这里我们考虑的body的背景问题,如果不考虑body的背景问题的话,我们完全可以用纯css的那个demo。
如果你有什么好的意见和建议,欢迎在下面的评论处与我交流。
转自:冰剑’s blog