Category Archives: IT技术

有关开发效率和协作的几点

1. 小提交: 把大的任务拆分成多个独立小任务,每完成小任务确保无 Bug 后就可以提交合并到主分支甚至发布;频繁提交有利于自己把控项目进度、降低风险、同其他人协作和代码 Review ; 每天可以提交合并多次。每个小任务是 1-2 个小时可以完成的粒度,最大的一天完成。并行做多个任务的时候,优先做最短时间能够实现的任务。
Continue reading

疯狂的编程世界

@eranation 写了一条非常有趣的评论,我把他描述的这些看作是疯狂的编程世界:

我承认,我跟不上。我刚刚学会了backbone.js,但现在发现它已经过时了,我应该使用ember.js,了解的过 程中,有人说我应该使用Meteor,不,应该用AngularJS,不,应该Tower.js (基于node.js),而对于HTML模板,我应该使用handlebars,而不是mustache,稍等一下, DoT.js看起来更好,慢着,为什么要用一个浏览器里的HTML解析器?浏览器不就是干这事的吗?那么,不该使用HTML模板吗?对,用DOM snippets,好,你是说Web Components吗?W3C不是专门做这个的吗?你是说像Google那样开发一个常规的 Javascript语言吗?太扯了,我只需要用CoffeeScript就行了,它的表现不错,不用CoffeeScript?用Coco? LiveScript? DART? GWT?这样吧,我还是重新使用Ruby on Rails吧,哦,它没有扩展性?Grails?Groovy? Roo?太简单?那好,node.js怎么样?扩展性也不好??但是用它我既可以写客户端代码,服务器端代码,还可以写mongodb代码,都用同一种语 言。(非要用Javascript语言吗?)那么,PHP怎么样?你说它不是真正的线程安全?他们在撒谎??那好,让我们重新回到服务器端编程吧,还是用 Java怎么样?不好?Lisp?哦,应该是Clojure?不错,它有一个Bridge / protocol buffers / thrift实现,这样语言就相通了,这样我们的Haskell程序员也能开发了。或者用Scala/Lift/Play,它们都是最好的框架 (Foresquare就是用的它们,它们一定很不错)。当然,我们不该用SOAP,应该用JSON RESTful服务,只有银行和沃尔玛用SOAP,还有,坚决不能用SQL数据库,它们不可能扩展。

我明白了,我打算把这个项目外包出去… 他们可能会用一个Wordpress模板,然后拷贝粘贴一些jQuery代码,这样就能实现完全相同的效果,不会有任何上面说的那些让人头疼的事。

摘自:http://www.21andy.com/new/20120724/2077.html
原文评论来自:http://www.zemanta.com/fruitblog/i-bet-you-over-engineered-your-startup/

CDN加速

最近给自己的网站用上了CloudFlare的CDN加速,因为CloudFlare在大陆没有服务器,最近的服务节点也在日本和香港,所以速度提升并没有预想中的明显。CloudFlare的CDN服务需要修改DNS,ORCA只需要修改CNAME即可,目前只测试了这两个,速度差别不大。
Continue reading

Serv-U 用户配置文件的加密与解密

摘要:先看ServU密码加密存储方法 首先随机生成2位字符(从a-z小写字符),再将用户原始密码与这2位随机字符合并成为新的密码字符。 如:用户原始密码为a,随机生成字符为dx,则合并后新的密码字符串为:dxa 再使用新密码字符串进行MD5Hash运算. dxa = F2319AE3B312103BB…

先看ServU密码加密存储方法
首先随机生成2位字符(从a-z小写字符),再将用户原始密码与这2位随机字符合并成为新的密码字符。

如:用户原始密码为a,随机生成字符为dx,则合并后新的密码字符串为:”dxa”
再使用新密码字符串进行MD5Hash运算.
dxa=F2319AE3B312103BB3259CA8242DD16C
然后再存储到ini文件,存储方法为2位随机字符加上新密码字符的MD5Hash值.
如下:
[USER=a|1]  Password=dxF2319AE3B312103BB3259CA8242DD16C

ServU密码破解方法:
除去前2位随机字符获得F2319AE3B312103BB3259CA8242DD16C
然后去查询MD5的网站上面查询F2319AE3B312103BB3259CA8242DD16C

查出来的密码前两位肯定是dx,把dx去掉即是真正的密码