Archive for 7月, 2009

电脑坏了

今天一大早到公司,电脑就启动不了。看来这台电脑真的应该退休了,这是我的第一台笔记本。它陪我走过几3个年头,现在还真是很不舍得。。。。。

2008届最佳开源CMS大赛决赛名单

Packt Publishing刚刚宣布2008届最佳开源CMS大赛各奖项下的决赛名单。去年,Drupal是综合大奖得主,将06年冠军 Joomla!推到第二位。今年 Drupal 和 Joomla 均入选决赛名单,分属不同奖项。Packt 将于2008年10月31日开始公布最终获奖名单。
  开源CMS综合大奖决赛名单
  DotNetNuke
  Drupal
  Joomla!
  Plone
  TYPOlight开源CMS最具潜质奖决赛名单
  CMS Made Simple
  ImpressCMS
  MiaCMS
  MemHT
  SilverStripe最佳PHP开源CMS决赛名单
  CMS Made Simple
  Drupal
  eZ Publish
  Joomla!
  XOOPS最佳其它开源CMS决赛名单
  dotCMS
  DotNetNuke
  mojoPortal
  Plone
  Umbraco2008届新增了一个开源CMS MVP 奖,用来奖励那些在开源CMS具有特殊贡献的人。

10大最吃香的网站开发技术

虽然现在美国经济出现危机,但是网站开发领域依然很繁荣,因为不论是现在或者将来,网络必定是人们日常生活中不可缺少的组成部分。NETTUTS上列出10大最吃香的网站开发技术。作为网站开发工程师,如果你精通这些技术,即便在经济不景气的时候,仍然很容易找到一份好工作。
  1. Framework knowledge (架构知识)
  架构是大型网站开发的重要部分。开发者已经从Rails, Django等公司提供的网站架构工具中收益,因为架构工具可以帮助完成那些需要一定编程知识的重复性的任务。如果你拥有领先的架构技术(像Rails, Django, CakePHP, Symfony等),你的择业面将非常广阔。
  2. Widget Development (窗体小部件开发)
  窗体小部件(Widgets)是一个嵌入网页的迷你应用程序,通常也可以下载到Windows或者Mac桌面下运行。它让数据变得便与携带而且更具交互性。比较出名的像Yahoo Widgets和AOL Music Widgets。窗体小部件开发除了需要掌握网络应用程序开发所需的语言知识,还需要精通Javascript和Flash知识。
  3. Custom CMS themes (内容管理系统主题定制)
  如今越来越多人开始使用CMS(内容管理系统,例如Wordpress和Drupal)来构建他们的网站。可以想象不可能大家都用CMS提供的默认主题,为了让自己的CMS网站在外观设计上独树一帜,就需要一些专门给CMS开发主题的技术人员。
  4. CMS Customizations and plugin development (内容管理系统的定制以及插件开发)
  同样随着CMS的流行,对CMS的功能定制以及插件开发的需求也越来越大。
  5. PSD to XHTML services (PSD转换XHTML的服务)
  在建站中,许多公司是先用Photoshop设计好网站的外观原图,然后再转换成XHTML。这需要很强的CSS/HTML知识。
  6. Javascript Plugin creation(Javascript的插件开发)
  Javascript的Framework非常流行,因为它使Javascript的代码开发变得简单。就比如说现在流行的Javascript Framework - jQuery,如果你在它的基础上开发优秀的插件,那么你的插件也会跟着流行起来。
  7. Facebook/MySpace applications (Facebook/MySpace 应用程序开发)
  Facebook/MySpace两大社交网站在美国红遍半边天。给他们开发应用程序,不用说一定是相当热门的。
  8. iPhoneapplications (iPhone 应用程序开发)
  同样给iPhone开发应用程序,也一直都可以被大量下载,因此也是很赚钱的活。
  9. E-commerce integration (电子商务一体化)
  如今电子商务网站(像Ebay,Amazon)与在线银行服务系统(像Paypal和Google Checkout的)之间的配合越来越紧密,因此电子商务交易平台的开发也是相当有前途的。
  10. Flash and Actionscript Knowledge (Flash和Actionscript知识)
  越来越多的公司采用Flash来制作自己的网站、展现自己的产品,因为精美的动画总是容易吸引人们的眼球。因此Flash动画技术也必然迅速发展。

css sprite

CSS Sprites是一种网页图片应用处理方式。它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来,当访问该页面时,载入的图片就不会像以前那样一幅一幅地慢慢显示出来了。对于当前网络流行的速度而言,不高于200KB的单张图片的所需载入时间基本是差不多的,所以无需 顾忌这个问题。
  按照yahoo的rules for high performance web sites的原则,应当较少Client与Server端间 的HTTP Request次数。通过CSS Sprites方法将多张图片组装成单独的一张图片,可以有效减少HTTP请求 的次数。
  当整幅图片载入完成后,你就可以使用CSS方法通过设置背景位置的方式完成所需图片的准确调用。
  加速的关键,不是降低重量,而是减少个数。传统切图讲究精细,图片规格越小越好,重量越小越好,其实规格大小无所谓,计算机统一都按byte计算。客户端每显示一张图片都会向服务器发送请求,所以,图片越多请求次数越多,造成延迟的可能性也就越大。

动态加载JS脚本的4种方法

动态加载JS脚本的4种方法[转自http://hi.baidu.com/ajax]
要实现动态加载JS脚本有4种方法:
1、直接document.write
document.write(””);
2、动态改变已有script的src属性
s1.src=”test.js”
3、动态创建script元素
var oHead = document.getElementsByTagName(’HEAD’).item(0);
var oScript= document.createElement(”script”);
oScript.type = “text/javascript”;
oScript.src=”test.js”;
oHead.appendChild( oScript);
  这三种方法都是异步执行的,也就是说,在加载这些脚本的同时,主页面的脚本继续运行,如果用以上的方法,那下面的代码将得不到预期的效果。
要动态加载的JS脚本:a.js,以下是该文件的内容。
var str = “中国”;
alert( “这是a.js中的变量:” + str );
主页面代码:
function LoadJS( id, [...]

JavaScript splice() 方法

定义和用法
splice() 方法用于插入、删除或替换数组的元素。
语法
arrayObject.splice(index,howmany,element1,…..,elementX)参数 描述
index 必需。规定从何处添加/删除元素。
该参数是开始插入和(或)删除的数组元素的下标,必须是数字。
howmany 必需。规定应该删除多少元素。必须是数字,但可以是 “0″。
如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。
element1 可选。规定要添加到数组的新元素。从 index 所指的下标处开始插入。
elementX 可选。可向数组添加若干元素。
返回值
如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。
说明
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
提示和注释
注释:请注意,splice() 方法与 slice() 方法的作用是不同的,splice() 方法会直接对数组进行修改。
实例
例子 1
在本例中,我们将创建一个新数组,并向其添加一个元素:
var arr = new Array(6)
arr[0] = “George”
arr[1] = “John”
arr[2] = “Thomas”
arr[3] = “James”
arr[4] = “Adrew”
arr[5] = “Martin”
document.write(arr + ““)
arr.splice(2,0,”William”)
document.write(arr + ““)
输出:
George,John,Thomas,James,Adrew,Martin
George,John,William,Thomas,James,Adrew,Martin例子 2
在本例中我们将删除位于 index 2 的元素,并添加一个新元素来替代被删除的元素:
var arr = new Array(6)
arr[0] = “George”
arr[1] = “John”
arr[2] [...]

JS的split用法

function spli(){
datastr=”2,2,3,5,6,6″;
var str= new Array();
str=datastr.split(”,”);
for (i=0;i<str.length ;i++ )
{
document.write(str[i]+”“);
}
}
spli();
=============================
定义和用法
split() 方法用于把一个字符串分割成字符串数组。
语法
stringObject.split(separator, [...]

两个相反的忠告

人生活在世界上,都会受到时代的风潮的感染,在生活的环境中,都会有许多美好的语言在激励、鼓舞着自己。这里选择两个不同的侧面,阐述同一种语言,就有两种不同的态度和结果。在什么情况下,运用这些教诲,对我们或多或少会产生启迪.
两个相反的忠告
美国第三任总统杰斐逊曾给其孙子提出过这样的忠告:
一、
今天能做的事情绝对不要推到明天;
自己能做的事情绝对不要麻烦别人;
绝对不要花没有到手的钱;
绝对不要贪图便宜购买你不需要的东西;
绝对不要骄傲,那比饥饿和寒冷更有害;
不要贪食,吃得过少不会使人懊悔;
不要做勉强的事情,只要心甘情愿才能把事情做好;
对于不可能发生的事情不要庸人自忧;
凡事要讲究方式方法;
当你烦恼时,先数到10再说,如果还是气恼那就数到100。
二、
而今天,美国硅谷著名的股票经纪人约翰·丹佛提出了与之完全相反的忠告:
今天能做的事情如果放到明天去做,你就会发现很有趣的结果,尤其是买股票的时候;
别人能做的事情,绝对不要自己动手去做,只有别人做不了的 事情才值得去做;
如果可以花别人的钱来为自己赚钱,就绝对不从自己口袋里掏一个子儿;
我经常在商店打折的时候去买很多东西,那怕那些东西现在用不着,可总有用着的时候;
很多人认为我是狂妄自大的人,这有什么不对呢?我看不出我有什么理由不为自己骄傲;
我从来不认为节食这么无聊的话题有什么值得讨论的,我相信大多数人跟我一样喜欢美妙食物;
我常常不得不做我不喜欢的事情,因为在这个世界上我们都还没有办法随时按照自己的意愿做事;
我常常预测灾难的发生,哪怕哪个灾难发生的可能性在别人看来几乎为零;
我认为只要目的确定,就要不惜代价去实现它,过去讲究方式方法,只会贻误时机;
我从来不隐瞒我的个人爱好以及我对别人的看法,尤其是当我气恼的时候,要用大声吼叫的方式发泄出来。
社会在前进,没有什么忠告千古不变的真理,。有的忠告只适合一个时代;有的忠告只适合于一个地域,有的忠告只适合于一类人群。所以,有选择地接受别人的忠告,才是我们人生最有用的忠告。

Gears

Google Gears其实是一个用来开发离线网络应用的工具,是一个JavaScript应用编程接口,通过Google Gears可以允许多种Web应用程序脱机运行,可以让用户在上线或者离线状态下运行网络程序,其源代码是公开的。
  Google Gears和微软同类产品最大的不同在于它可以在离线的情况下运行,可以从用户电脑硬盘启动,创建的文件可以存储在硬盘中也可以从硬盘读取文件。
  现在通过使用Google Gears,Google的旗下软件Google Reader,一款新闻浏览器,已能够进行离线浏览。当连接到网络时,用户又可以更新订阅的内容。陆续的将会有其它的软件应用Google Gears技术。
  Google的CEO埃里克·施密特对外宣称:“Google Gears解决了浏览器的最大局限性,从而使得浏览器成为能够搭载各种应用的强大平台。”
  Google表示Google Gears可以应用于各种主流操作系统上的各种主流浏览器,其操作系统包括Windows、Mac和Linux,浏览器则包括Firefox和Opera。但Google并没有提及微软的浏览器IE。
  此次Google发布Google Gears,微软最担心的恐怕是Google的开源举措了。Google则希望能够通过Google Gears促使业界形成统一标准,以和微软展开竞争。
  Gartner研究公司分析师大卫·斯密斯认为,微软要么会被迫支持Google的开源计划,要么会采取一些类似的举措。

HTML:Canvas

是一种能用于绘图的HTML新元素,它通过脚本(通常是Javascript),可用来绘制图形、布置照片甚至表现动画。Canvas标签被喻为HTML5的新功能之一。目前支持它的浏览器有Opera, Firefox以及Safari。要想让IE也支持它的话,只需在自己的网页中加入一段来自 Google Explorer Canvas Project 的脚本。