七宗罪(Seven deadly sins),13世纪道明会神父圣多玛斯·阿奎纳列举出各种恶行的表现。这些恶行最初是由希腊神学修道士庞义伐草撰出8种损害个人灵性的恶行,分别是贪食、色欲、贪婪、暴怒、懒惰、伤悲、自负及傲慢。 程序员生来不平等。有的伟大。有的渴望伟大。有的就是废物。 下面是一些程序员经常会走入的歧途。听起来很恐怖,但享用吧。上帝就在你身边,警惕这些危险的信号,跟随主救赎的指引。 1. 色慾(Lust) 凡犯色欲者:在硫磺和火焰中熏闷 作为程序员,这种罪恶的表现是不断的受绚丽的新事物的诱惑。下一代编程语言,最新的框架,最新的平台。 我们程序员天生好奇。我们受惑于追求高效,坚信所有的东西都要经过优化。只有用了那种最新的语言,我们才能工作。 虽然不断的追求改进是非常值得赞赏,但采用新事物也是有代价的。有避免不了的学习曲线。有适应问题。有未知的依赖问题。有未知的未知问题。 清除这些杂念。专心解决你手头上的问题。充分利用你知道的,停止贪恋那些光鲜新事物。 2. 贪食(Gluttony) 凡犯贪食者:强迫进食老鼠,蟾蜍和蛇 这是过度之罪。过度的企图多做,过度的扩展深度和广度。 不必要的功能特征溜进了产品里。大量无用的代码被生产出来。宝贵的编程时间被消耗,被浪费。 这些行为增加了不必要的复杂度,带来的高昂的维护代价。通常导致的结果是,预期不能完工。bug层出不穷。 警惕那些不该有的功能、警惕那些对不必要的复杂架构的伪辩护、警惕过早优化的迹象。让产品简洁。 3. 贪婪(Greed) 凡犯贪婪者:在油中煎熬 过度专业化和功能化会导致形成个人的领地。固步自封。我的代码。我的模块。我相干的区域。没有分享。没有合作。 一种不健康的对这些人的依赖会逐渐形成。所谓的“编程教父”,“编程巨星”和“编程领袖”就代表了这些趋势。 相反,应该建立一个崇尚代码集体所有和充分合作(比如结对编程或相互代码审查)的文化。 4. 怠惰(Sloth) 凡犯懒惰者:丢入蛇坑 根据Perl语言的创造者Larry Wall的话,懒惰是程序员的三个伟大美德之一。 但懒惰不能和冷漠混为一谈。长时间不理出现的问题。允许代码腐烂异味。不重构拷贝/粘贴过来的重复代码。 对软件开发中这些需要修改的东西要有一种紧迫感。事无巨细。这是保持软件健康的必要态度。 5. 暴怒(Wrath) 凡犯暴怒者:活体肢解 在有些地方,有些程序员是每个人都尊敬,也是每个人都害怕。你也许遇到过这样的火星极客。他们恃才放旷,为所欲为,其他人在他身边都惦着脚走。避免和他冲突。 他们喜怒无常,他们的怒气经常撒错方向。他们贬低他人,破坏团队和谐。 警惕这种不受约束的对峙气氛的滋生。拒绝忍受这样的撒野。立即辞掉他们。 6. 妒忌(Envy) 凡犯妒忌者:投入冰水之中 不满足于现有的工具和系统,有些程序员眼睛总是盯着别人的。 我曾经遇到过这样的经历,一个wiki系统正在使用中,另外一个却同时被引进,因为它的标记语法感觉更好一些。两个问题跟踪系统,多种聊天系统,不兼容的博客平台,等等。 如果你不喜欢某个工具,相信有比它更好的,那好,去找到它,使用它。但是,请完全放弃你现有的。吃着碗里又想占这锅里,只会得不偿失,给自己制造麻烦。 7. 傲慢(Pride) 凡犯傲慢者:轮裂 有些程序员喜欢孤芳自赏。对自己的能力过度自信。从不寻求帮助。 更 糟糕的,他认为所有的事情都应该由自己来完成。虽然他有能力完成任何的任务,但他却没能完成,因为他承担的太多了,无法集中精力。他分不清什么是核心什么 是次要的。在可以使用云服务时他建造自己的服务器,在能使用成熟的部署系统时他重新发明自己的,他开发出跟现有框架功能相同的框架,等等。 诚然,做研究是有趣的。这些研究经常被辩称为“基础”或“革新”,但却因没有更快捷的创造商业价值而使产品丧失市场先机。 小心“非我发明(Not Invented Here)”综合征。准确的定义你的核心目标,你的首要工作。其它的都是次要的,可以借用别人的。这没有什么好羞愧的。 [英文原文:7 Sins of Doomed Teams ] 转自:http://www.oschina.net/news/46550/7-sins-of-doomed-teams
View Details现如今,网站开发设计的需求会要求自动适应所有移动设备,即响应式网站: 在开发网站时必须考虑对平板设备融合 fluid(流)和自适应性特点。 大多数网站设计要靠margins, guides, rows and columns等网格系统和布局来在网页上组织内容。网格设计常见于报纸和杂志中的文字图像排版设计。 可以创建网格布局的数量几乎是无限的,并且能够用无数种方式排布。比如:在等间距的两列,三列或者四列网格顶端有一个横跨的header,或者一整页的有着同样外观和感觉的方格。 有一些很好的JQuery网格布局插件能够大幅的缩短开发时间,如果你在你下一个项目中使用的话。这些网格插件能够优化瀑布流,使列的大小可调,滚动数据以匹配header,同样也可以添加数据网格,以及针对网格的一些动作比如:重新调整列的大小,分页,排序,行和列的样式等等。 下面是15款jQuery网格布局插件,能够让开发者和设计师在创建响应式布的网格布局时,同时拥有迷人的视觉效果,以及一个兼容所有浏览器和手持设备的响应式的外观。希望你们能够喜欢! 1.自由墙 自由墙是一个跨浏览器的响应式jQuery插件,它可以帮助你创建很多不同的网格布局:灵活布局,图片布局,网格,流体网格,metro风格布局还有用CSS3实现的动画效果和回调事件的瀑布流布局。自由墙是一站式的解决方案来在桌面,移动和平板上动态创建网格布局。 它是基于容器的宽(或高)以及单元的宽(或高),同时它会创建一个虚拟的矩阵。扫描矩阵的每一个单元,找到空闲单元并让其为空白区域,之后将一个块元素插入。若果没有块可以匹配的话,它将缩放块来适应(这是选项之一) 出处 2. S Gallery S Gallery 是一款 jQuery 图片画廊插件 ,将图片显示在响应式网格。它的灵感来自于Sony’s产品页画廊 (Flash实现) 并完全实现了它的功能。当一个项目获得焦点或被点击时, 可以使用 prev-next 按钮 或使用键盘来浏览其他操作。 单击后会返回网格视图并有一个全屏选项(使用HTML5全屏API). 查看代码 3. Mason.js 创建一个动态列的网格布局(比如Pinterest)有许多javascript方案。虽然大多数都很棒,但有时,这些网格会含有缝隙或者锯齿边缘。Mason.js是一款致力于通过智能填充空隙,力图表现完美网格的jQuery插件。一个网格被创建出来,这款插件会计算空隙的位置并使用预定义的元素或者重复内容填充空隙。元素的大小,列/行的大小,断点以及布局是流式还是固定都是可以被重新定义的。 Source 4.jQuery.Shapeshift 有许多jQuery的插件可以创建一个照片分享样式的动态网格布局。jQuery.Shapeshift是一个正是这类插件的强大替代品,通过一个触摸动作,这些图片可以拖曳(需要使用jQuery UI)。拖曳可以影响网格布局,就像网格在需要的时候,会自动去填充空隙一样。这同样在触摸设备和响应式布局上有效。这个插件有许多灵活可变的参数,比如设置margin,启用/禁用拖曳,自定义动画等等。 Source 5. jQuery Nested Nested是一款可以生成多列没有空隙的网格布局的jQuery插件。这个插件为所有的元素创建一个矩阵,建立一个多列的网格,并尝试用记录的元素来填充所有空隙。其实有很多解决方案能够达到同样的效果。但是,Nested提供了一个小的动作:它能够重新调整网格底部的任何元素,以确保没有缝隙。它的用法也很简单,只需要给一个jQuery的函数指定容器元素就行。并且,提供了多种可选参数方便用户定制,比如启用/禁用动画,最少列数等 Source 6. Wookmark jQuery Plugin 拥有动态列的网格布局如此流行,并不仅仅是因为它们被用于图片分享的网站,更是因为对于不同大小的内容显示来说,这是一个非常棒的方式。Wookmark,Pinterest的替代品,发布了一个可以创建那样布局的jQuery插件,兼容所有的浏览器。目前,这个插件只提供了少量的可选项:容器元素,offset(垂直/竖直距离)和元素的宽度——就这些。在初始化时,它会自己获取窗口的大小并自动排布网格(当然,它也是响应式的布局)。 Source Grid-A-Licious是一个jQuery插件,可以让你很容易的创建类似Pinterest的浮动表格布局。当然也有其他的插件能够完成这个功能,但Grid-A-Licious提供了更完善的响应式解决方案。不管什么尺寸的屏幕,还是什么设备,表格表现得都很完美,它都能实现浮动而不使用绝对定位。插件提供了自定义宽度、间隔和动画(速度,过渡时间,效果等等)的选项,并且它支持在表格前或后插入新项目,这对于动态布局来说是非常有用的。 Source 8. jPhotoGrid jPhotoGrid只需要图像和字幕的简单列表,就可以将其变成了可以浏览和放大照片的网格。这个插件几乎所有的样式都是靠CSS完成的。诀窍是通过浮动的列表项来对网格进行布局。而插件会做的第一件事,就是将这些都转换成绝对定位。这就是为什么这个插件可以放大单个图像,然后将其返回到原来的地方。 来源 9. Gridster Gridster是一个令人印象深刻的jQuery插件,是为了开发出一个类iGoogle的多列网格,可以拖动n行删除并重新排序。该插件只需要jQuery(不用jQuery UI),可以将任何给定的HTML构造成网格的部件。而且,不局限于最初加载的元素,它还可以动态的添加新元素和删除现有的元素。 来源 10. Photoset Grid PhotosetGrid是一个简单的jQuery插件,用来将图片基于Tumblr的图片集功能,整理成一个灵活的网格。插件最初用于Style Hatch Tumblr主题,以此来在一个响应式的布局中显示图片集,但他们后来扩展了它,并为我们发布了一个jQuery插件。 来源 11. Flex Flex是一个流式非对称的网格动画jQuery插件。你可以将鼠标放在瓦片上,就能看到它们渐渐扩大。 Flex是一个想法,灵感来自于Adidas.com的flash主页。 来源 12. Freetile […]
View Details昨天在用IIS部署一个WCF服务时,碰到了如下错误: 理解了文档内容,但无法进行处理。 – WSDL 文档包含无法解析的链接。 – 下载“http://admin-pc/IISHostService/Service1.svc?xsd=xsd0”时出错。 – 基础连接已经关闭: 接收时发生错误。 – 无法从传输连接中读取数据: 远程主机强迫关闭了一个现有的连接。。 – 远程主机强迫关闭了一个现有的连接。 元数据包含无法解析的引用:“http://admin-pc/IISHostService/Service1.svc?wsdl”。 元数据包含无法解析的引用:“http://admin-pc/IISHostService/Service1.svc?wsdl”。 如果该服务已在当前解决方案中定义,请尝试生成该解决方案,然后再次添加服务引用。 该错误是在使用svcutil生成client代码时报的错误,服务是部署在IIS7上,部署的过程都是完全教科书式的进行。服务也正常启动了,显示如下内容 已创建服务。 若要测试此服务,需要创建一个客户端,并将其用于调用该服务。可以使用下列语法,从命令行中使用 svcutil.exe 工具来进行此操作:
1 |
<strong>svcutil.exe </strong><a href="http://leo-pc/IISHostService/Service1.svc?wsdl"><strong>http://leo-pc/IISHostService/Service1.svc?wsdl</strong></a> |
按照提示直接用svcutil.exe http://admin-pc/IISHostService/Service1.svc?wsdl命令去生成代码,就出现了开头说的那个错误。而如果用visual studio的webdevserver启动,则一切正常。 经过一轮谷百之后,发现网上有很多类似的情况,有的说是因为用了wsHttpBinding协议引起的,或者是元数据没有正确公开,但都不是他们说的情况。后来找到了一篇文章,说的是添加WCF引用的一个陷阱。里面提到的情形跟我遇到的一致,原来问题出在权限,难怪用webdevserver可以很正常的运行。原来在下载http://admin-pc/IISHostService/Service1.svc?xsd=xsd0时的权限不足,在浏览器直接访问这个url会提示找不到页面。原因就是IIS进程的用户没有访问Windows\Temp目录的权限。找到Temp目录,然后找到IIS_USER用户,授权即可。 具体可参考:http://merill.net/2008/04/wcf-add-service-reference-gotcha-with-windows-server/ 转自:http://www.cnblogs.com/shenba/archive/2012/01/06/2313932.html
View Details