博客堂新版本功能集

非常感谢大家热情支持博客堂源代码开发计划,我们仍然在招募人选。虽然大家从项目组主页上看到其项目人员已经将近十人了,但由于大家日常工作比较繁忙,所以还是希望更多的志愿者加入。

另外,各位已经加入的朋友,请到该http://www.codeplex.com/joycode的Forum(Who are you)中介绍一下自己的基本情况,让所有团队成员能够相互认识,了解一下大家的基本情况,以便未来更好的分派工作。

同时,我们现在已经公布了一些新的功能集,您可以在“http://www.codeplex.com/WorkItem/List.aspx?ProjectName=joycode”中查看到(这个服务器对于中文支持不好,大家将就着看一下吧),您可以对您喜欢的功能进行投票,以便催促我们的团队成员尽快开发相应的功能,当然,您也可以在http://www.codeplex.com/Project/ListThreads.aspx?ProjectName=joycode&ForumId=2460中提交您遇到的Bug,或者希望得到的新功能,请注意:该论坛不支持中文,请务必使用英文。

Let’s go!

博客堂源代码发布计划

博客堂目前已经成功升级到ASP.NET 2.0,在未来我们还将增加一些.NET 3.0的特性支持,并且将会定期发布源代码版本以及安装版本给所有博客堂的朋友。同时也为了更好的开发博客堂源代码,使其更加高效、安全、稳定、丰富,我们现在向所有博客堂的堂主以及众读者招募志愿者,加入开发者系列。有意参加博客堂源代码开发的朋友,可以至http://www.codeplex.com上注册帐号,然后通过邮件(joycode # live.com,主题上注明:博客堂志愿者字样)将您的帐号告知我们,同时发出一份个人简介(博主们可以通过我的Windows Live Messenger告知)。

所有志愿者需要配置安装运行环境,环境要求如下:

  1. 操作系统:Windows XP+SP2、Windows Server 2003+SP1, Windows Vista(在VS2005 SP1发布前不推荐使用该系统进行开发);
  2. 数据库: Microsoft SQL Server 2000或者Microsoft SQL Server 2005或者Visual Studio自带的SQL Express 2005;
  3. 开发工具:Visual Studio 2005 Team Developer或者以上版本(需要安装Team Foundation Explorer,安装方式Mango会向大家介绍),如果申请主要从事数据库优化者,可以安装Visual Studio 2005 Team DBA版本,如申请设计人员,请安装Microsoft Expression Web试用版;
  4. 上网条件:家中有ADSL上网条件;

我们需要招募三类志愿人员,所需条件如下:

  • 开发人员
    • 了解.Text 0.95架构,曾经安装或者阅读或者改写过.Text 0.95代码(必须);
    • 熟悉ASP.NET 2.0的各种新特性(必须);
    • 熟悉ASP.NET Ajax Beta 2(或以上)的新特性;
  • 设计人员
    • 了解HTML以及CSS相关知识(必须);
    • 可以使用Microsoft Expression Web版本进行网页开发设计;(必须,主要是为了使用TFC与服务器端相连)
    • 熟悉XAML以及WPF相关知识(非必须,但有此技能将会增加您成功的机会);
    • 熟悉.Text Skin开发设计或者ASP.NET 2.0页面设计;
  • 数据库优化人员
    • 了解Microsoft SQL Server 2000以及Microsoft SQL Server 2005(必须);
    • 了解.Text 0.95数据库结构;
    • 掌握丰富的数据库优化的技能;

另外,所有以上开发人员要求以下条件:

  • 富有团队合作能力以及保密性;
  • 拥有足够的时间进行夜间工作;

博客堂源代码开放项目主页设置在http://www.codeplex.com/joycode,欢迎大家参观。

将进酒,杯莫停

闲来无事,在CSDN上闲逛了一下,看到孟岩、韩磊两位老兄所写的《这一天终于来了》以及《“这一天终于来了”》,还有孙辉先生发表的《WPF,一次洗牌…》。顿时感到这一天真的来了,随着无数传教士(Evangelist)在全球范围内的摇旗呐喊,大家逐渐从站在远观望而慢慢围拢,WPF从远观之物变为亵玩之物也。

孟夫子、韩老兄,将进酒,杯莫停! 与君歌一曲,请君为我侧耳听!beerbeer

在韩磊老兄的文中提到孟岩曾经说过:“战术上成功,战略上失败——以后谁还肯为Windows做应用……”。但开心有不同意见,因为要想开发WPF,或者想运行WPF,机器上必须有.NET 3.0,而可以安装.NET 3.0的机器只有Windows XP(SP2+)、Windows Server 2003(SP1+)、Windows Vista以及Windows “Longhorn” Server。所以随着WPF应用的普及,这些操作系统也会逐渐普及。从而维护Windows的霸主地位。其实慢慢琢磨一下也可以看出来,微软的全套开发产品均是服务于Windows以及Office两大产品线的。大旗一竖,无数英雄豪杰聚集在其下。如果将Linux看作Windows桌面端的竞争对手,那么现在Linux平台上的应用缺少是一个无法逃避的事实。窃以为:IBM投资Eclipse实在是一个明智之举。

另外,韩磊也提到了另外一个感想,即Expression套件的直接竞争对手是Adobe,这有些短视了(韩磊莫怪)。当然,不可否认,很多受众,包括开心自己,在第一次看到Expression的演示时,都会有这种感觉。这与Adobe的产品线实在是太平衡了,简单就是短兵相接。但研究越久,越会发现,这种观点实在是有些太小看Bill Gates了。Bill Gates创建微软时曾经有一个梦想,要让每家每户的桌子上都有一台电脑,而且这台电脑上运行微软的软件。从1975年开始,整个微软就在为这个观念而奋斗。历史发展到21世纪,软件从当初注重性能(硬件的限制)、功能(大而全的软件)而逐步发展到更加注重用户体验。之所以出现这种趋势,是因为软件已经逐渐走下神坛,成为人们日常生活中所不可或缺的。而人们对日用品的选择标准就是:价廉物美。价廉促使SaaS产生,而物美导致软件厂商对于用户体验的重视。

正是在这种大势之下,微软才会推出WPF对整个软件生态链催熟。WPF的出现解决了三个问题:

  1. 更快速的开发更丰富的用户体验:使用WPF,可以在更加快速的时间内开发出来更加丰富的界面,满足用户的需求。所以我感觉孙辉先生学习WPF有些误入歧途,长此以往,会走火入魔的。如果仅仅是使用控件,建议您还是使用GDI+或者ASP.NET或者MFC等等就够了。WPF之所以有那些控件,我个人认为主要是为了向下兼容。WPF的目标应该是消除控件,让您开发出来的软件根本看不出来控件的特征,软件世界再也不是由Button+Textbox组成的怪物了。请注意左图,此款使用WPF开发的应用程序,你还能看到哪部分是控件吗?
  2. 消除用户界面差异:也请注意左图,这就是一款使用WPF开发的应用程序,而且它是以IE为宿主的。如果只是看这部分截图,你可以区分它是Windows Application还是Browser Applicaiton吗?历史在1995进入一个鸿沟,开发人员突然变成了两大阵营:B/S开发人员以及C/S开发。而现在到了应该弥补这个鸿沟的时候了。WPF正是背负着这个历史责任;
  3. 软件开发团队的协作问题:软件开发团队的日常协作是一个非常大的问题,除了需求变更以外,第二个影响开发进度的就应该是团队协作性了。在软件团队中,我们比较熟悉Developer、DBA、Tester、IT Pro、Architect等。Designer可能往往被我们忽视,但实际上,Designer的工作成果才是与客户距离最近的。而且Designer与Developer如何配合工作,是很多团队所头疼的,而WPF正可以解决此问题。这儿对孙辉先生再说一句:XAML并不是WPF的另外一个名字,它是使用声明性编程方式实现WPF的一种文件格式。

我最近疯狂迷上了一些美国科幻剧:《24》、《Lost》、《Prison Break》、《Heros》、《The 4400》,在里面经常会有一些使用电脑软件的镜头,而且那些软件界面真的越炫(Lost中那个只能输入4 8 15 16 23 42的不计入内),曾经记得Jack Bauer的那个PPC与电脑同步的镜头,让我感觉在Redmond看研究院的同事做Demo一般。或者随着WPF的出现,这种炫界面的应用程序会很快进入我们的日常生活当中了!

孟夫子,韩老兄,将进酒,杯莫停!!

博客堂升级完毕

利用这两天晚上的时间,将博客堂的代码进行了一下整理,已经从ASP.NET 1.1升级为ASP.NET 2.0。并且将会在近期发布所有ASP.NET 2.0的源代码,请大家持续关注。

这次升级主要解决了以下问题:

  • 博客堂首页改造,除了使用一些简单的模板进行美化以外,还解决了Firefox兼容问题;
  • 管理界面中的FreeTextbox与IE7不兼容的问题,现在大家可以使用IE7进入后台界面进行文章发布了;
  • Windows Live Writer无法进行更新的问题,通过改造,目前可以使用Windows Live Writer对文章进行更新;
  • 修正了评论中的验证码的问题,并且对评论字数有了限制;(Updated)
  • 在“联系”页面增加了验证码,对于邮件内容也有限制,各位博主也可以在系统配置中留下真实邮件,供您的Fans与您联系了;(Updated)
  • 在各页面中增加了“阅读”以及“评论”数量显示;(Updated)

非常感谢宝玉、Saucer在此次升级过程中,给开心所提供的指导!如果大家在使用过程当中,发现任何问题,或者有任何建议意见,请与我联系,非常感谢!

(建议大家在发布时还是尽量使用Windows Live Writer,以期达到更好的阅读效果)

欢迎举报SPAM来源

非常不好意思,昨天怒气大增,发了一篇“NND”的文章,我一会儿就会将其删掉。而那个来自于“222.130.193.194”名称为“数据恢复”的Spammer,我已经通过倒推手段得到其座机“5880XXXX”以及手机号码“1367139XXXX”,并且向其怒斥了其行为,他告知并不是他发的,而是为他们做搜索引擎优化的相关公司发的,截止到9:51,此事已经得到解决。SPAM也不会再有。

但为了防范于未然,我们恳请各位博客堂读者共同维护博客堂的秩序,如果发现SPAM,请通过ad.joycode # gmail.com发送邮件举报,非常感谢!

谢谢各位长期以来对博客堂的厚爱!

博客堂诚邀高手入驻

博客堂现在诚邀请具有以下技能的高手入驻:

  1.  WPF专业技能高手
    • 熟悉WPF以及WPF/e,掌握其原理机制;
    • 了解Flash以及Flex,在业界有一定的知名度;
    • 熟练使用Expression等微软新设计工具;
    • 对于网站设计有独到见解,审美观符合大众观点;
  2. Card Space高手
    • 了解Card Spce原理,并且可以独立实施Card Space;
    • 掌握对于业界各种加密认证机制;
  3. 项目管理高手
    • 熟悉软件项目开发管理;
    • 能够由浅入深向大家介绍项目开发的各种相关知识;

 

希望各位高手将您希望得到的帐号以及原博客地址发送到joycode # live.com,同时也欢迎各位在Comment当中推荐相关高手。

Sidebar Gadget开发教程(4)

今天继续讲Sidebar Gadget的开发。此篇将是本教程的最后一篇,因为了解了Gadget的大体情况后,接下来就需要大家自己进行练习了。只有勤于练习,而不是安心看教程,你才会积累丰富的开发经验。而且有些细节其实只需要点一下即可,不需要再详述。

从两周前开始,我们面对两个Partner进行了Gadget开发的Workshop。并且每个Partner均讲述了真实的Requirement,进行Job training。目前来看,这种效果非常不错,建议各位也可以在工作中进行学习。

在上一节教程当中,我们在最后给出了几个问题。现在一一回答该问题。

  • Gadget当中如何含有设置界面?即那个类似于小板手似的图标?

其实这个问题的答案很简单,只需要在主界面所关联的Javascript中加入一句:System.Gadget.settingsUI = “settings.htm”;即可,该语句中的settings.htm可以取代为其它名字.

  • 如何使Gadget出现Flyout界面?

这个问题如上所示,只需要加一句:System.Gadget.Flyout.file=”flyout.htm” 即可,同理,此句中的flyout.htm也可以换成其它的文件名。在需要显示Flyout界面时(比如某个超链接点击事件,或者某个图片控件的双击事件),调用System.Gadget.Flyout.show=true即可,不需要其它设置。当然,你可以在显示时进行一些其它的处理,那么可以调用它的事件函数即System.Gadget.Flyout.onShow(指向一个函数名),其对应的隐藏事件函数为System.Gadget.Flyout.onHide函数

  • 如何得到系统信息?

Sidebar为Javascript扩充了一些API,用于执行外部命令,或者得到系统信息,或者对于Gadget内部本身的调用(如上面的Flyout以及SettingsUI),关于这些API的详细信息,可以参阅:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sidebar/sidebar/reference/refs.asp 得到更加详细的信息。

  • 如何在没有使用ASP.NET AJAX框架的基础上出现局部刷新效果?

更加简单了,使用Microsoft XMLHTTP这个函数的异步调用方式,关于XMLHTTP的更加详细信息,可以参阅相关信息。其中有关于如何实现异步调用的。另外,在调用时,如果遇到IE缓存问题,可以使用setRequestHeader(“If-Modified-Since”,”0″)方式解决(感谢Symbio提供信息),而分析XML,可以使用Microsoft XMLDom来进行。

  • 有些Gadget当置放在Sidebar上显示样式是一种,而拖到桌面上会有另外一种显示方式,这是如何实现的?

这个更简单了,查看了下这些Gadget的源代码,可以知道,通过Gadget的System.Gadget.docked的属性可以得到其是否放置在Sidebar上(当为True时,是在Sidebar上),然后再调用JS来对于其CSS特性进行更改即可。

好了,Sidebar Gadget的教程到此结束。非常感谢大家。:)

让你的Windows Vista桌面动起来

在奥兰多的时候,开心曾经看到过Jim Allchin作了一个Windows Vista的Demo,非常Cool,一直希望能够在自己的机器上能够运行。但Jim要求所有在场听众在Vista RTM前不能对外宣布此功能。

昨天凌晨终于等到了Jim的邮件,Vista RTM了!迫不及待的安装了Windows Vista的RTM版本,然后去体验上次他做的那个Demo,即动态桌面。可是找遍所有地方都没有。还好,我有搜索引擎,在Windows Live Search中终于让我找到了一些东东。

首先可以使用以下方式来测试一下Aurora是否可以在你的桌面上运行起来,在开始菜单-附件中找到“运行”(注意,在Windows Vista中的原来“运行”的位置现在是即时搜索框),输入“Winsat aurora”,点击回车运行。如果在中途需要中断运行,可以直接敲“ESC”键即可。这其实只是一个临时的动态桌面,你可以使用Alt-tab键切换到其它应用程序上,就可以到动态桌面效果了。

如果你想一直是动态桌面,比如Vista一开机,那么你可以点击此处查看方案。里面提供了两种方案,一种是手工的,需要自己动手使用SPY++工具来进行一些必要的修改。另外一种是下载该文上的一个工具,帮助你自动解决此问题。

Enjoy it!fingerscrossed

(本文仅供参考,所给出的任何内容均不作任何担保及暗示,因为本文所引起的伤害请自行承担,系统修改有风险,请谨慎操作!)

如此 Keywords

号称“国内最火热的IT 产业资讯站点太平洋产业资讯”(地址:http://www.pconline.com.cn/news

看看其页面源码:

<title>|&gt;&lt;| 国内最火热的IT产业资讯站点–太平洋产业资讯</title>
<META NAME=”description” CONTENT=”国内最火热的IT新闻频道,最多IT业界内幕的新闻频道,扎根市场深入渠道的IT新闻报道,全方位透视IT业界,联系消费者与业界人士的IT新闻频道。”>
<META NAME=”keywords” CONTENT=”googleCEO网络,名人,财报,思科,SUN,微软,网络,三星,甲骨文,oracle,microsoftoffice,riaa盗版,色情,裸体歌星,影星排行,联想,苹果,宽带,资费,adsl,电影,音乐,破产,收购,liunx,开源,共享,网络,垃圾邮件,网站,itunes,cnnic,3721,百度,IBM,windows,p2p黑客,破解,病毒,、为,小灵通,UT斯达康,3G“>

为了搜索结果,道德和脸面都不要了。

我的创意(3):关于中文输入法(下)

由于空中交通管理原因,我所乘坐的FM9111航班又推迟起飞了将近一个小时。现在终于在天上了。好了,书接上回,我们继续开侃。

不知道有多少人了解过RSS为什么会红火起来。想当年,在Netscape快要日落西山的时候,为了挽救颓势,他们提出了网络上“推”的概念,即要把网上的内容由客户端拉转成服务器端推。而其提出的其中之一的实现方式就是RSS。微软当然也不示弱,马上推出了自己的类似协议,即CDF(Channel Defination Format)。而如今,Netscape已成昨日故事,引人扼腕顿足,而其遗腹子RSS却突然红遍全球,甚至成为Web 2.0的标志性之一。而反观微软的亲生儿子,CDF却不再见踪影,在Windows Vista自带的随机帮助中甚至搜索不到其字眼(Vista中对于RSS的支持却是非常的友好,IE7, Sidebar Gadget等)。怪哉,此世界!

在Netscape与IE混战的时候,中文输入法也陷入类似的混战,各种输入法层出不穷,比较有名的故事就是“码根码”,我还曾经为码根码的作者写过一篇文章,以示纪念。而N年了,输入法市场开始风平浪静,似乎进入到互联网时代,人们就不再使用输入法了。但输入法仍然是华人进行计算机活动的主要工具以及入口。不过正因为其普遍,也恰恰成就了我们忘却它的理由。直到Windows Vista中的IE7自带的保护模式的出现,才使得我再次注意到了它。

如果您已经安装了Window Vista,也体验了IE7的保护模式。你就会知道,在IE7启用保护模式时使用中文输入法是一个多么困难的事情。按照Windows Vista自带的帮助文档定义:Internet Explorer 的保护模式是使在计算机上安装恶意软件更为困难的一项功能(Windows Vista中定义的恶意软件不等同于流氓软件,外延更大一些,它包含病毒、木马等)。正是由于这种保护机制,它禁止在此模式打开时,软件往非沙箱区写入数据,从而使恶意软件无法从网络上启动,但却牵连了输入法会由于向其词库(该词库处于沙箱区外)写数据,而导致了输入法无法使用。唯一可以做的就是禁用保护模式或者等待各个第三方中文输入法进行Vista更新。

不好意思,又扯远了。进入到一个软件即服务的时代。中文输入法应该也有一个飞跃的发展,而不只是一个简单的文字输入工具,但一直写到这儿,我突然发觉我原来的创意已经不好意思拿出手了,所以就来一个虎头蛇尾吧,希望各位见谅。smile_embaressed

本文写就于飞机上,但由于虎头蛇尾,一直不敢发出来献丑。