博客园 - Colin Han
uuid:6cbd1ba2-f883-4c34-aed1-30dde64a3a3e;id=712924
2015-09-21T02:16:59Z
Colin Han
https://www.cnblogs.com/Cajon/
feed.cnblogs.com
https://www.cnblogs.com/Cajon/p/stacking-context-and-z-index.html
关于stacking context和CSS z-index的总结 - Colin Han
HTML中决定元素叠加顺序的CSS属性最有名的应该是z-index了。但是,往往在项目中发现有些情况和我们的预期不太一致。经过研究和学习,总算搞清楚了其中的关系。简单总结记录一下。
2015-07-30T10:08:00Z
2015-07-30T10:08:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】HTML中决定元素叠加顺序的CSS属性最有名的应该是z-index了。但是,往往在项目中发现有些情况和我们的预期不太一致。经过研究和学习,总算搞清楚了其中的关系。简单总结记录一下。 <a href="https://www.cnblogs.com/Cajon/p/stacking-context-and-z-index.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2012/01/08/2012_new_year_resolution.html
2012新年愿望 - Colin Han
时间就像一个杀猪刀,2011过去了,2012来了。给自己列几个目标:工作方面:1. 将SSL顺利发布首要工作是将SSL的第一个版本顺利的按时发布。SSL从刚开始筹划到最终发布经历了近一年半的时间。很多兄弟为这个项目付出了心血。虽说大家都对产品平台持悲观态度,但我还是希望这个产品能够有一个不错的市场回报。2. 提炼SSL的架构新的一年,SSL产品可能会在新的平台上寻求一些突破,如果我继续负责这个新产品的开发工作,我希望能够将SSL的架构进行一些提炼。我希望新的平台下可以做到:a) 在两个平台之间共享代码现有SSL中的大多数代码进行一些提炼,就应该可以在两个平台之间共享。我希望能够做到让90%的数
2012-01-08T14:17:00Z
2012-01-08T14:17:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】时间就像一个杀猪刀,2011过去了,2012来了。给自己列几个目标:工作方面:1. 将SSL顺利发布首要工作是将SSL的第一个版本顺利的按时发布。SSL从刚开始筹划到最终发布经历了近一年半的时间。很多兄弟为这个项目付出了心血。虽说大家都对产品平台持悲观态度,但我还是希望这个产品能够有一个不错的市场回报。2. 提炼SSL的架构新的一年,SSL产品可能会在新的平台上寻求一些突破,如果我继续负责这个新产品的开发工作,我希望能够将SSL的架构进行一些提炼。我希望新的平台下可以做到:a) 在两个平台之间共享代码现有SSL中的大多数代码进行一些提炼,就应该可以在两个平台之间共享。我希望能够做到让90%的数 <a href="https://www.cnblogs.com/Cajon/archive/2012/01/08/2012_new_year_resolution.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2011/05/15/2046871.html
100%测试覆盖率真的有用吗? - Colin Han
背景最近看到一篇博客,作者是一名ThoughtWorker,文中提到要在他的项目中贯彻100%单元测试覆盖率。我在留言中对100%测试覆盖提出了一些质疑。看到“透明"的回复并且阅读了他的《Why is 100% test coverage easier to achieve》(需FQ)。有些想法,但是Blogbus的评论有字数限制。因此,贴在自己博客里面,希望和dreamhead和透明继续讨论@透明拜读了你的博文。FQ确实很辛苦。对ThoughtWorks的敬仰又进一层。但是,对你的观点依然有一些质疑。你认为没有测试覆盖的代码就是不必要的(MUDA)。例如:getter, sette
2011-05-15T06:17:00Z
2011-05-15T06:17:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】背景最近看到一篇博客,作者是一名ThoughtWorker,文中提到要在他的项目中贯彻100%单元测试覆盖率。我在留言中对100%测试覆盖提出了一些质疑。看到“透明"的回复并且阅读了他的《Why is 100% test coverage easier to achieve》(需FQ)。有些想法,但是Blogbus的评论有字数限制。因此,贴在自己博客里面,希望和dreamhead和透明继续讨论@透明拜读了你的博文。FQ确实很辛苦。对ThoughtWorks的敬仰又进一层。但是,对你的观点依然有一些质疑。你认为没有测试覆盖的代码就是不必要的(MUDA)。例如:getter, sette <a href="https://www.cnblogs.com/Cajon/archive/2011/05/15/2046871.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2011/02/14/1954484.html
“外部质量”还是“内部质量” - Colin Han
这几天看了看《硝烟中的Scrum和XP》,其中作者将产品质量分为两种——“外部质量”和“内部质量”。作者认为,在项目工期紧的时候,外部质量是可以妥协的。而内部质量是不容妥协的。但是,哪些问题属于内部质量呢?
2011-02-14T08:45:00Z
2011-02-14T08:45:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】这几天看了看《硝烟中的Scrum和XP》,其中作者将产品质量分为两种——“外部质量”和“内部质量”。作者认为,在项目工期紧的时候,外部质量是可以妥协的。而内部质量是不容妥协的。但是,哪些问题属于内部质量呢? <a href="https://www.cnblogs.com/Cajon/archive/2011/02/14/1954484.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2010/08/13/use_SvrAny_InstSvr_publish_service.html
使用SvrAny和InstSvr将应用程序作为Window服务启动 - Colin Han
如果你想让一个任意的执行文件以Windows Service的方式执行,可以使用微软Windows 2000 Resource Kit中的InstSrv和SrvAny来实现。为了方便期间,你可以直接从这里下载到这两个执行文件。第一步,你先要在系统中注册一个新的服务,并且指定服务的执行文件为SrvAny.exe。通过命令行执行如下的命令:instsrv [服务名] c:/path/to/srvany...
2010-08-13T09:59:00Z
2010-08-13T09:59:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】如果你想让一个任意的执行文件以Windows Service的方式执行,可以使用微软Windows 2000 Resource Kit中的InstSrv和SrvAny来实现。为了方便期间,你可以直接从这里下载到这两个执行文件。第一步,你先要在系统中注册一个新的服务,并且指定服务的执行文件为SrvAny.exe。通过命令行执行如下的命令:instsrv [服务名] c:/path/to/srvany... <a href="https://www.cnblogs.com/Cajon/archive/2010/08/13/use_SvrAny_InstSvr_publish_service.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2009/10/30/google_wave_invite.html
收到Google Wave要求,想要的留下信箱。 - Colin Han
前几天收到Google Wave的邀请。今天抽时间激活了一下。看到有一些邀请。这里放出10个。要的,请给我发站内短信息,告诉我你的邮件地址。我会以接到短信的顺序发放。强调一下:Google Wave的邀请很奇怪,并不是我给你了,你就可以得到。似乎是Google还有算法来决定是否给你。我会在留言中标明都给了谁邀请,你能不能得到就看造化了。-----------------------2009-10-...
2009-10-30T14:03:00Z
2009-10-30T14:03:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】前几天收到Google Wave的邀请。今天抽时间激活了一下。看到有一些邀请。这里放出10个。要的,请给我发站内短信息,告诉我你的邮件地址。我会以接到短信的顺序发放。强调一下:Google Wave的邀请很奇怪,并不是我给你了,你就可以得到。似乎是Google还有算法来决定是否给你。我会在留言中标明都给了谁邀请,你能不能得到就看造化了。-----------------------2009-10-... <a href="https://www.cnblogs.com/Cajon/archive/2009/10/30/google_wave_invite.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2009/09/14/1566658.html
简哲,请让我的生活简单一点。——批《输入法破局研究——联盟推广》 - Colin Han
今天看到“月光博客”转载一篇用户投稿《输入法破局研究——联盟推广》,看后让我很不以为然,在做深入的思考后,反而有种义愤填膺的感觉。于是,写了下面的文字。本想在原文中回复呢,结果,月光有字数限制。那就贴在自己博客里吧。-=-=-=-=-=-=-=-=-=-=- 不明真相的分割线 -=-=-=-=-=-=-=-=-=-=-=-简哲,你观点和你的名字正好背...
2009-09-14T15:31:00Z
2009-09-14T15:31:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】今天看到“月光博客”转载一篇用户投稿《输入法破局研究——联盟推广》,看后让我很不以为然,在做深入的思考后,反而有种义愤填膺的感觉。于是,写了下面的文字。本想在原文中回复呢,结果,月光有字数限制。那就贴在自己博客里吧。-=-=-=-=-=-=-=-=-=-=- 不明真相的分割线 -=-=-=-=-=-=-=-=-=-=-=-简哲,你观点和你的名字正好背... <a href="https://www.cnblogs.com/Cajon/archive/2009/09/14/1566658.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2009/08/26/unit-test-experience.html
[经验总结] 关于单元测试 - Colin Han
今天看到@jeffz_cn在twitter上问:“私有方法真的不应该单元测试吗?为什么?我觉得有的组件只是逻辑复杂一些,因此会提取私有方法,并且测试这些私有方法的逻辑。如果把这些内容统统从外部“注入”,这样私有的逻辑就变公开了……但是这样难道没有过渡设计的味道吗?”。然后就想起来我在项目中推动单元测试的经过。觉得还是应该总结一...
2009-08-26T01:33:00Z
2009-08-26T01:33:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】今天看到@jeffz_cn在twitter上问:“私有方法真的不应该单元测试吗?为什么?我觉得有的组件只是逻辑复杂一些,因此会提取私有方法,并且测试这些私有方法的逻辑。如果把这些内容统统从外部“注入”,这样私有的逻辑就变公开了……但是这样难道没有过渡设计的味道吗?”。然后就想起来我在项目中推动单元测试的经过。觉得还是应该总结一... <a href="https://www.cnblogs.com/Cajon/archive/2009/08/26/unit-test-experience.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2009/08/25/part-time-job-platform.html
程序员的全新全新兼职工作平台的设想。 - Colin Han
今天看到@金色海洋的《程序员的全新的兼职工作方式》一文,勾起了我一直期望实现的一个平台的想法。基于我这个人“只想不干”的特性,看来我实现和完善这个想法的可能性也很低了。这里发布出来,也许能够为别人带来好的启发。我的想法,就是建立一个《软件开发项目承接平台》。任何人都可以在这个平台上注册并发布自己的需求。任何人都可以在这个平台上注册并实现别人的需求。完成交易。听起来是不是和现...
2009-08-25T03:51:00Z
2009-08-25T03:51:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】今天看到@金色海洋的《程序员的全新的兼职工作方式》一文,勾起了我一直期望实现的一个平台的想法。基于我这个人“只想不干”的特性,看来我实现和完善这个想法的可能性也很低了。这里发布出来,也许能够为别人带来好的启发。我的想法,就是建立一个《软件开发项目承接平台》。任何人都可以在这个平台上注册并发布自己的需求。任何人都可以在这个平台上注册并实现别人的需求。完成交易。听起来是不是和现... <a href="https://www.cnblogs.com/Cajon/archive/2009/08/25/part-time-job-platform.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2009/08/13/yobo_player.html
智能播放器,也许有商业价值。 - Colin Han
几天前在路上想到一个点子,也许有些价值。和一些现有的音乐网站结合起来应该会有一个不错的发展空间。生产一个自动通过网络下载歌曲,随机播放的播放器。这个播放器会根据用户的喜好来下载音乐进行播放。(这一点,目前已经有网站实现了这个功能,为了避免成为软文,所以就不说网站名字了。这个播放器就需要利用这些网站现有的算法进行用户喜好分析)现在,山寨mp3播放器很多,大家功能基本一致,而且容量都很大。我不确定在播...
2009-08-13T01:00:00Z
2009-08-13T01:00:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】几天前在路上想到一个点子,也许有些价值。和一些现有的音乐网站结合起来应该会有一个不错的发展空间。生产一个自动通过网络下载歌曲,随机播放的播放器。这个播放器会根据用户的喜好来下载音乐进行播放。(这一点,目前已经有网站实现了这个功能,为了避免成为软文,所以就不说网站名字了。这个播放器就需要利用这些网站现有的算法进行用户喜好分析)现在,山寨mp3播放器很多,大家功能基本一致,而且容量都很大。我不确定在播... <a href="https://www.cnblogs.com/Cajon/archive/2009/08/13/yobo_player.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2009/04/17/new_cnblogs_2.html
谁来代替博客园 —— C社区 - Colin Han
上一篇博客,我也掉到了首页之争中去了。这一篇,我就介绍一个可能替代博客园的社区。
2009-04-17T05:03:00Z
2009-04-17T05:03:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】上一篇博客,我也掉到了首页之争中去了。这一篇,我就介绍一个可能替代博客园的社区。 <a href="https://www.cnblogs.com/Cajon/archive/2009/04/17/new_cnblogs_2.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2009/04/16/new_cnblogs_3.html
谁来代替博客园——寄生博客 - Colin Han
我设想中的一个可以让我搬家的社区。
2009-04-16T13:48:00Z
2009-04-16T13:48:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】我设想中的一个可以让我搬家的社区。 <a href="https://www.cnblogs.com/Cajon/archive/2009/04/16/new_cnblogs_3.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2009/04/16/new_cnblogs.html
谁来代替博客园 -- 怎样提高自己博客的访问量 - Colin Han
博客园的一些改变实在让我觉得很不喜欢。于是就想搬家了。可是,谁能够替代博客园呢?
2009-04-16T05:05:00Z
2009-04-16T05:05:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】博客园的一些改变实在让我觉得很不喜欢。于是就想搬家了。可是,谁能够替代博客园呢? <a href="https://www.cnblogs.com/Cajon/archive/2009/04/16/new_cnblogs.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2008/11/16/1334468.html
经典红白机游戏音乐。 - Colin Han
怀旧的感觉
2008-11-16T04:32:00Z
2008-11-16T04:32:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】怀旧的感觉 <a href="https://www.cnblogs.com/Cajon/archive/2008/11/16/1334468.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2008/10/20/1315262.html
郁闷的异常信息 - Colin Han
今天编写单元测试的时候,出现一个奇怪的错误信息:[代码]网上搜了一下,说将你的Dll所在的目录设为FullTrust。但是,我就奇怪了,我的本地文件都是FullTrust的啊,为什么就唯独这一个文件无法使用呢? 只好继续Google了,终于让我找到了这篇文章。其中James Fuhr说什么Block,Unblock的东东,让我很是不理解。最后终于在文件的属性对话框中找到了这个按钮。郁闷啊,藏的还真...
2008-10-20T09:25:00Z
2008-10-20T09:25:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】今天编写单元测试的时候,出现一个奇怪的错误信息:[代码]网上搜了一下,说将你的Dll所在的目录设为FullTrust。但是,我就奇怪了,我的本地文件都是FullTrust的啊,为什么就唯独这一个文件无法使用呢? 只好继续Google了,终于让我找到了这篇文章。其中James Fuhr说什么Block,Unblock的东东,让我很是不理解。最后终于在文件的属性对话框中找到了这个按钮。郁闷啊,藏的还真... <a href="https://www.cnblogs.com/Cajon/archive/2008/10/20/1315262.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2008/10/06/use_ExtensionTypeAttribute_to_extend_clr_object_ironpython.html
[集成IronPython] 使CLR对象对动态语言更友好(三)—— 使用ExtensionTypeAttribute - Colin Han
<img src="http://cajon.cnblogs.com/images/cnblogs_com/cajon/logo.PNG" class="desc_img"/>
IronPython 2.0完全基于微软DLR平台实现的。并且提供了良好的和.NET CLR对象之间交互的能力。在本系列文章里,我们将尝试实现一个自定义控件,使得你可以象使用标准Python控制台一样在其中输入Python代码,并且运行。当然,为了能够让IronPython很好的操作CLR对象,其中还是有很多技巧,让你的CLR对象对IronPython更友好,这一节,我们就要使用ExtensionTypeAttribute为已有的CLR对象添加DLR友好性支持。
2008-10-06T02:08:00Z
2008-10-06T02:08:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】<img src="http://cajon.cnblogs.com/images/cnblogs_com/cajon/logo.PNG" class="desc_img"/>
IronPython 2.0完全基于微软DLR平台实现的。并且提供了良好的和.NET CLR对象之间交互的能力。在本系列文章里,我们将尝试实现一个自定义控件,使得你可以象使用标准Python控制台一样在其中输入Python代码,并且运行。当然,为了能够让IronPython很好的操作CLR对象,其中还是有很多技巧,让你的CLR对象对IronPython更友好,这一节,我们就要使用ExtensionTypeAttribute为已有的CLR对象添加DLR友好性支持。 <a href="https://www.cnblogs.com/Cajon/archive/2008/10/06/use_ExtensionTypeAttribute_to_extend_clr_object_ironpython.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2008/08/25/support_ironpython_slice_in_dotnet.html
[集成IronPython] 使CLR对象对动态语言更友好(二)—— 支持切片 - Colin Han
IronPython 2.0完全基于微软DLR平台实现的。并且提供了良好的和.NET CLR对象之间交互的能力。在本系列文章里,我们将尝试实现一个自定义控件,使得你可以象使用标准Python控制台一样在其中输入Python代码,并且运行。
当然,为了能够让IronPython很好的操作CLR对象,其中还是有很多技巧,让你的CLR对象对IronPython更友好,这一节,我们就要实现一个集合对象,并且让这个集合类可以向IronPython的内置序列类型一样的支持切片操作。
2008-08-25T02:32:00Z
2008-08-25T02:32:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】IronPython 2.0完全基于微软DLR平台实现的。并且提供了良好的和.NET CLR对象之间交互的能力。在本系列文章里,我们将尝试实现一个自定义控件,使得你可以象使用标准Python控制台一样在其中输入Python代码,并且运行。
当然,为了能够让IronPython很好的操作CLR对象,其中还是有很多技巧,让你的CLR对象对IronPython更友好,这一节,我们就要实现一个集合对象,并且让这个集合类可以向IronPython的内置序列类型一样的支持切片操作。 <a href="https://www.cnblogs.com/Cajon/archive/2008/08/25/support_ironpython_slice_in_dotnet.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2008/08/18/support_add_remove_attribute_on_clr_object_ironpython.html
[集成IronPython] 使CLR对象对动态语言更友好(一)—— 支持运行时添加删除属性 - Colin Han
动态类型语言(以下简称:"动态语言"),在10年前就已流行起来。JavaScript更是成为了WEB前台开发的事实标准。但它们进入普通开发 人员的视野也就在近几年。随着Web2.0和敏捷开发方法论的兴起,动态语言的灵活高效的特性成为了它被更多项目选择和使用的理由。一些大型网站已开始使 用动态语言来实现,其中,国内比较优秀的作品有“豆瓣”。微软更是不甘落后,建立了DLR(动态...
2008-08-18T03:59:00Z
2008-08-18T03:59:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】动态类型语言(以下简称:"动态语言"),在10年前就已流行起来。JavaScript更是成为了WEB前台开发的事实标准。但它们进入普通开发 人员的视野也就在近几年。随着Web2.0和敏捷开发方法论的兴起,动态语言的灵活高效的特性成为了它被更多项目选择和使用的理由。一些大型网站已开始使 用动态语言来实现,其中,国内比较优秀的作品有“豆瓣”。微软更是不甘落后,建立了DLR(动态... <a href="https://www.cnblogs.com/Cajon/archive/2008/08/18/support_add_remove_attribute_on_clr_object_ironpython.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2008/08/16/using_module_to_extend_ironpython.html
[集成IronPython] 使用Module扩展IronPython - Colin Han
失败 在IronPython的源代码中,提供了一个PythonModuleAttribute,我原以为这个Attribute是为自定义Module建立的。在clr.AddReference时会检查Assembly中的所有PythonModuleAttribute。并将指定的类型作为Module导入到Python的运行环境中。但是,今天实际测试的结果并不是这样。IronPython仅在自己的Iron...
2008-08-16T09:24:00Z
2008-08-16T09:24:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】失败 在IronPython的源代码中,提供了一个PythonModuleAttribute,我原以为这个Attribute是为自定义Module建立的。在clr.AddReference时会检查Assembly中的所有PythonModuleAttribute。并将指定的类型作为Module导入到Python的运行环境中。但是,今天实际测试的结果并不是这样。IronPython仅在自己的Iron... <a href="https://www.cnblogs.com/Cajon/archive/2008/08/16/using_module_to_extend_ironpython.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Cajon/archive/2008/08/04/add_method_into_python.html
[集成IronPython] 添加方法到运行环境 - Colin Han
动态类型语言(以下简称:"动态语言"),在10年前就已流行起来。JavaScript更是成为了WEB前台开发的事实标准。但它们进入普通开发 人员的视野也就在近几年。随着Web2.0和敏捷开发方法论的兴起,动态语言的灵活高效的特性成为了它被更多项目选择和使用的理由。一些大型网站已开始使 用动态语言来实现,其中,国内比较优秀的作品有“豆瓣”。微软更是不甘落后,建立了DLR(动态...
2008-08-04T02:29:00Z
2008-08-04T02:29:00Z
Colin Han
https://www.cnblogs.com/Cajon/
【摘要】动态类型语言(以下简称:"动态语言"),在10年前就已流行起来。JavaScript更是成为了WEB前台开发的事实标准。但它们进入普通开发 人员的视野也就在近几年。随着Web2.0和敏捷开发方法论的兴起,动态语言的灵活高效的特性成为了它被更多项目选择和使用的理由。一些大型网站已开始使 用动态语言来实现,其中,国内比较优秀的作品有“豆瓣”。微软更是不甘落后,建立了DLR(动态... <a href="https://www.cnblogs.com/Cajon/archive/2008/08/04/add_method_into_python.html" target="_blank">阅读全文</a>