- 博客(45)
- 收藏
- 关注
原创 jscript下的字符串format函数(6行代码实现的)
今天在做无争围棋网的英文版时,发现jscript的String类居然没有format函数。网上搜索之后,发现网友自己写的format函数很多,但试用之后,没一个可用的。一恼之下,自己手写了一个:function format(str){ for(var i=0;i太吊诡了:区区6行代码,解决了jscript的一大问题;几分钟的编写和测试,却花了我一个小时来搜索和试用。这个format函数的使用方法非常简单,类似于C++里的format函数,但只有%s方法(jscript会自动转型,一个%s足够了)
2010-08-07 16:15:00
1564
原创 分享到豆瓣、百度空间、新浪微博的js代码
在自己的网站主页上增加社会化分享按钮,是有效提高自己网站流量的一种方法。今天我在无争围棋网上增加了社会化按钮,根据我个人的习惯,我选择了豆瓣、百度空间、新浪微博、人人网、开心网等几个大型sns网站。下面是我的代码:function ShareCode(server_url, server_icon_url,text){ var title = encodeURIComponent(document.title.substring(0,76)); var url = encodeURI
2010-06-25 18:09:00
12152
2
原创 Chrome屏幕取词插件发布,以及一些开发感想
简洁快速的Google Chrome一直是我最喜欢使用的浏览器,但也时时为它不能进行屏幕取词而头疼(我是经常读一些英语文章的)。像我一样为这个问题头疼的Chromer有福了。今天写了个插件OnlineDict,安装它就可以在Chrome上取词显示翻译了。代码已经开源,地址: http://code.google.com/p/onlinedict后面有一些使用截图总的感觉:1
2009-12-10 14:08:00
7494
3
原创 GAE性能优化技巧——Sharding Counters
最近在做脑图共享网站,一直使用google的云计算服务GAE(google appengine),所以很关注GAE的性能优化方法。对于GAE的性能,我一直有些怀疑。例如,它的并发访问量,最大能支持多少?今天终于看到这篇性能优化说明了:http://code.google.com/intl/zh-CN/appengine/articles/sharding_counters.html
2009-03-20 09:28:00
1762
原创 P2P流媒体技术三篇论文研读笔记(CoolStreaming)
这段时间的精力全部放在P2P流媒体技术上了才两三年没接触,原来P2P技术又有了长足的发展。Gossip协议给P2P流媒体技术带来的变化是革命性的,将来可能还有更好的系统出现。CoolStreaming系统,目前看来是最好的P2P流媒体系统了。下面是我用FreeMind绘制的CoolStreaming系统原理(读书笔记),全屏请点击这里。 <!--mindped
2009-03-12 16:23:00
1633
原创 为什么是MindPedia,而不是其它
1.MindPedia是一个很好的东西,尽管现在还很不完善,但我希望每个喜欢使用脑图的人都喜欢它。其实在线脑图网站已经有不止一家了,MindMeister、MindMono等等网站,都已经存在几年了。我几年前考虑做MindPedia的时候,就一一考察过,当时的结论是:他们都做得很好了,我很难超越。几年过去了,我忽然发现:这些功能很棒的网站,我根本不用它。尽管我自己是一个脑图深度沉迷者
2009-02-20 11:46:00
919
原创 "占领桌面"战略是最大的迷思
几乎每个互联网公司都在觊觎用户桌面这块小小的地盘,在红海中战得一塌糊涂。其实把眼光放开点,还有很大的一片蓝海。见我的思维脑图:占领桌面是最大的迷思。
2009-01-14 10:04:00
1102
原创 改用谷歌浏览器
google的号召力确实令人恐怖。早上到公司,发现同事们都已经开始试用谷歌浏览器了。一看界面,立即喜欢这个叫chrome的玩意了,完全的Google风格,简洁!简洁到界面上除了标签页和地址栏之外,其它什么东西都没有。于是立即下载,试用。网页打开的速度感觉快多了。专门到网上找了些乱七八糟的网站来尝试——我指的是sohu、QQ等内容庞大到令人恶心的网站。基本上,除了cjol仍然不能正确浏览外(这个网站
2008-09-03 11:43:00
1121
1
原创 cuil:吹牛营销大师
一夜之间,“cuil”这个词忽然成了IT界人人谈论的名词。人人都在兴奋的谈论,google是否开始遇到对手了,是否将要开始走下坡路了。google前员工挑战google,3300万美元的融资额,三倍于google的索引量,更智能的搜索方式……一切都似乎意味着一场好戏将要开台。人们讨论新闻的时候,似乎一向都没有兴趣去了解真相。只要登录一下cuil,就可以发现这个挑战者实在是弱的不像样子,而且热爱夸夸
2008-08-03 22:07:00
1203
原创 开源软件绿色报时器2.0版发布
开源软件绿色报时器2.0版昨天发布了。这个软件很小,才200k左右。 绿色报时器是时间管理工具,目前主要是定时提醒功能。现在已经是我的朋友们的装机必备软件了:) 我已经将它开放源代码,放到google code上了。下面是对它的简介: 绿色报时器能在设定的时间给您提示消息。从此,您再也不会忘记重要的事情了。 例如,它可以在早上提醒您:“上班了,先写个工作计划”,也可
2008-07-24 09:26:00
1286
1
原创 合理安排时间,做个高效的人:我的开源软件“绿色报时器”
简介:最近做了个很小的软件,本来是自己用的,想着可能对其它朋友也有用,就干脆开源了。也希望借助大家的力量,把这个软件做得更好。下面是我在google code上对它的介绍。软件下载链接为:http://code.google.com/p/greentimer/downloads/list顺便说一下,这是一个WTL工程,使用VC2003开发。欢迎菜鸟们、高手们、不高手不菜鸟的人们,都
2008-05-27 14:44:00
1155
原创 对《原子对象模式》一文的补充
对于多线程程序,我已经习惯于使用原子对象模式(http://blog.csdn.net/skyMountain/archive/2006/10/04/1320443.aspx)来降低死锁的风险。但最近一个项目中,使用了原子对象封装了所有多线程访问的资源,系统竟然死锁了,而且锁住的地方恰好是原子对象内部。经过思考,发现此前我们对原子模式的理解有误,以为只要每个对象的公开接口是线程安全的,就可以算是原
2008-01-31 16:16:00
1090
原创 设计模式研究:如何判断一个封装方案是好是坏
学习设计模式的人常说“封装变化”。变化,应当怎么封装?设计模式那么多种,可以采用多种封装方案,如何判断一个封装方案是好是坏?答案:看封装后系统演化时,修改点是否唯一而定。说得直白一些。当系统需要扩展一个功能时,你要修改的地方是多了还是少了?少了就说明封装得好。封装的最高境界是:以后增加一个功能,只需要修改一个地方就行。下面,我举一个封装失败的例子来说明这一点。此例子来自一个实际应用的P2P网络应用
2006-12-20 16:53:00
1889
翻译 SEO:ajax是搜索引擎杀手?
前几天用了一下google的开源项目GWT(Google Web Toolkit)。GWT是个很有用、也很有趣的东西。它的一个理念是:使用纯jscript来创建你的网站。GWT的一个示例网站Kitchen Sink,页面相当复杂,主页HTML代码却只有寥寥十几行——绝大部分代码都是用jscript生成的。问题来了:这样的网站能被搜索引擎收录吗?google的项目居然不支持SEO,这意味着什么?
2006-12-15 10:10:00
9723
7
原创 要是自己独立一个人做软件的话,做那方面的软件可以赚到钱?
这个问题是两年前CSDN上的帖子。下面是我当时的回答了。 用google搜索发现,很多地方都转载了这个答案,因此干脆将它帖回自己的blog上。=========================想问大家一下,要是自己独立一个人做软件的话,做那方面的软件可以赚到钱,能卖给谁,怎么卖?顺便问一下,现在CSDN不能注册新的ID了吗?想问大家一下,要是自己独立一个人做软件的话,做那方面的软件可以赚到钱,能卖
2006-12-05 00:06:00
11720
转载 Google Answers的死亡
GOOGLE中止了Google Answers,这个它已开发了四年的产品。在Google Answers倒下的同时,Yahoo Answers却蒸蒸日上。个中原因,值得深思。本文转自: http://mashable.com/2006/11/29/google-answers-is-dead/Google Answers Is DeadNovember 29, 2006Pete Ca
2006-11-30 09:45:00
1710
原创 多线程下的设计模式研究(一):原子对象模式
序言所谓设计模式,不过是人们在编程活动中总结出来的一些常用的、有效的解决方法而已。自从我开始接触设计后,我就时常留意自己的常用的解决方案,希望能将这些解决方法抽象出来,形成模式。现在这一系列文章,是我这几年编码活动的一个总结,也许其中很多谬误,但至少在目前,它对我工作的帮助,起了很大作用。现在整理发表出来,与大家互相切磋。如发现其中不合理的地方,恳请不留情面地指出来。多线程下的设计模式研究(一):
2006-10-04 14:10:00
2649
1
原创 怎样才算是一个成熟的程序员:从设计模式谈起
一、编程中抽象思维方法的重要性世界非常复杂善变。程序员必须要应对这复杂善变的世界。如何应对?用抽象的方法。人类最重要的思维能力就是抽象的能力,计算机程序无论多智能,到目前为止,还是没有任何抽象能力。设计系统、编写代码、代码演化的过程,必须是一个抽象的过程。不能理解这一句话的程序员,不能称为一个优秀的程序员。解释一下,何为程序员的抽象。程序员的抽象方法,一般指的就是封装。封装什么?封装变化,封装复杂
2006-09-29 11:29:00
3081
1
原创 Observer设计模式的陷阱,兼谈C++语言在模式面前的悲哀
前几天,刚写的一个软件崩溃了。跟踪发现是下面函数的问题:void CSubject::OnMsg(CSMSG *pMsg){ for(list::iterator it = m_lstMsgListener.begin(); it != m_lstMsgListener.end(); it ++) { ASSERT( NULL != (*it) );
2006-09-19 12:53:00
2628
1
转载 李一男:别了港湾 被逼上绝路的对手
一家高科技创业新星的抛物线。李一男为何未能重复牛根生的成功? 文/本刊记者 尹生 他是一个从华为高调出走的叛逆天才,他在创业伊始就获得了国际上最具实力的风险资本的鼎力支持,他曾经不顾一切向老东家挖角开战并因此遭到了更猛烈的反击,他一度离 上市很近离出售很近离财富很近,但最终,他手创六年的港湾,还是如同流星一般划过中国商业的天空,终归被老东家收入囊中。 李一男/任正非,港湾/华为
2006-09-16 12:32:00
15639
转载 WEB2.0研究:驾驭集体智慧的五个有效方法
驾驭集体智慧的五个有效方法 January 24th, 2006 indigo--> 原文:Five Great Ways to Harness Collective Intelligence 作者:Dion Hinchcliffe1) 作为难以再生数据的集中地:这是Web2.0的经典概念,而且得到了那些成功的先驱们的证明。就像Wikiped
2006-09-06 14:40:00
2001
原创 开源软件的尴尬:Vagaa伪装成eMule 欲置中国ED P2P于死地
skymountain 摘自 http://p2p.lmtw.com/pnews/200608/25355.html评论:vagaa剽窃和恶意修改了eMule的源代码,制造了一个只下载不上传、拼命消耗服务器资源的“吸血骡”,引来国外eMule服务器站长的反抗。可惜,由于eMule的开源特性,像vagaa这样的“吸血骡”是不可能灭绝的。甚至在这场风波中,vagaa也不见得能受到多大的伤害——只要下载
2006-08-23 14:57:00
2612
1
转载 偏执狂才能生存,flickr的若干举措如是说
偏执狂才能生存,flickr的若干举措如是说justso 发表于 2006-7-7 17:27:00 keso原文发表在这里:东拉西扯:从注意力稀缺到注意力旁落 http://blog.donews.com/keso/archive/2006/06/20/921764.aspx
2006-08-15 17:54:00
1875
原创 交互设计研究:我熟悉Google NoteBook的过程记录
说明:上上个月,偶然接触了google的notebook。一开始完全不知道这是什么东西,并不感兴趣,试用了一两个小时之后,从此对notebook爱不释手。这篇文字是当时用notebook记录下来的,它完整记录了一个用户熟悉一个新产品的过程,可以作为我们研究软件交互过程的一个样本来使用。 ▼ 第一次接触Notebook这究竟是什么东西?有用吗?我希望它能让我随时随地写作、摘抄东西。Not
2006-08-11 11:20:00
1788
原创 腾讯p2p式图片共享QQShare试用手记
QQShare是腾讯在年初推出的p2p式图片共享软件。我第一时间下来试用了,下面是当时随手写下的一些感想。一、添加共享还非要填写共享描述不可,麻烦。二、一提交共享,CPU占用率立即上到100%,计算文件hash的效率也太高了吧。计算完成后,什么都没做,CPU竟然也有1~4%的占用,内存则占30M,比我的vc2003还要牛逼。三、一堆好友列表,没有一个使用QQShare的,一眼看去给人感觉“天地虽大
2006-08-09 16:24:00
2660
原创 交互设计与状态模式,兼谈几个失败的设计
今天看了朋友的photell界面设计blog,忽然想到一种交互设计的方法,就是利用设计模式中的状态机模型来设计。实际上,界面都是有状态的。每一个状态下,用户都需要完成特定的任务。设计界面的过程就是找出这些状态来,划定每个状态提供给用户的功能清单。状态要尽量少,尽量符合逻辑,状态之间的切换标志要尽量清晰,用户才容易掌握。有个隐形的需求大家很容易忽略:有些功能,用户需要在任何状态下都随时可以调用。这时
2006-08-09 12:10:00
2396
原创 Gallery的Requirements:为什么说p2p方式的相册是必要的
今天本计划安装Gallery研究一下的。看了一眼他们的安装需求,决定不浪费时间了。这个软件决不可能大众化,因此,也不可能与我设计的photell竞争。有多少用户愿意为了一个本地相册去安装apache,php,各种库,配置database?而我的photell却可以将这些东西全部打进一个包里。下面是Gallery的安装需求:Gallery Requirements
2006-05-23 10:45:00
1545
原创 一种能比较准确地猜测NAT的影射端口的方法
版权声明:本文由SkyMountain发表,引用地址为http://blog.csdn.net/skymountain/。作者保留一切版权,转载务必注明出处,否则视作侵权。昨晚忽然想到一种方法能比较准确地猜测NAT的影射端口。我指的是那种目标端口敏感的NAT,这种NAT以前是很难穿透的。这种方法使用了三个新socket(也即新的本地端口)来探测。新建三个socket,每个socket与以前没用
2006-05-22 16:30:00
3729
原创 freemind的缺憾:难以让思维收敛
FreeMind这个软件,是从野路子的一篇介绍性blog里看到的,当即就下载了,觉得它非常适合我这种思维天马行空的人,于是相见恨晚,一直用到现在.用FreeMind来思考或者写作,不像word,写字板,或者草稿纸那样,逼着使用者一篇文章从第一行开始写,按顺序写到最后一行。使用FreeMind写作,一旦发现有什么新鲜的idea,立刻可以找一个地方将它记录下载;往往这个idea需要深化细化,而在深化细
2006-03-30 21:47:00
2245
1
原创 17万用来助学,能做什么?
接windy的题目:17万用来助学,能做什么?(http://dedream.blogbus.com/logs/2006/01/1806222.html)17万,是个很大的数字,但这笔钱如果花得不好,钱砸下去说不定一些水响都没有.看了网友们对这个问题的讨论(几个月前就看了,只是一直太忙,现在我已经离职在家,才有空写这篇文字,在这里对windy说声抱歉),我觉得大家对农村教育的认识可能还是很不够,有
2006-03-13 18:57:00
1800
原创 p2p型blog的优缺点及其原理讨论
一、什么是p2p型的blog?有什么优缺点?再强调一次,我所理解的“p2p”是"person to person"的意思,也即是抛弃中心点、个人面对个人直接地直接交流的意思。p2p技术几乎可以让网络上现有的一切服务的质量都有质的飞跃。例如传统的http或ftp文件下载服务,完全可以用bt的思路改造,从而达到对服务器的依赖最小、下载性能极大优化的目的。blog作为web2.0时代的一个标志性服务,它
2005-12-23 09:49:00
3756
4
原创 web2.0随想:p2p、草根、跑马圈地与早起的鸟儿有虫吃
(注:本人对web2.0这个词非常的不感冒,在几个月前就已经想写文章骂它了。不过现在看网上的文章,这个词风头已过,已经是人人喊打的年代了,所以也就懒得骂它,也敢在题目中用它了)众多的p2p系统设计者都没有充分注意到,p2p系统一个天生的缺陷:每个peer的力量都是很小、有很多缺陷的。一个peer就是用户的一台pc。它的上传带宽往往很有限。它的性能往往不佳。它往往不稳定。它经常关
2005-12-15 14:10:00
3188
9
原创 目前p2p技术面临的最大难题
目前p2p技术面临的最大难题是什么?内网穿透?分布式下载?网络规模?流式播放?p2p式路由?p2p式搜索?都不是。除了最后一个还有一点点困难之外(我前几天发的那篇关于DHT的blog已经相等程度上解决了这个问题),这里提到的基本上都属于已解决的问题。可以说,目前的 p2p网络研究已经进入到一个成熟期了,只需要有一个稍微强大的开发队伍,实现一个能承载几千万人的p2p网络根本不成问题。只有一个问题没有
2005-12-05 16:10:00
4667
9
原创 用竞赛式助学金去捐助贫困地区的学生
昨天与朋友吃饭,看一部反映西部小孩读书困难的《上学路上》电视。朋友说起他在读大学的时候曾资助一个小孩读书,又说起现在想资助人,但不放心将钱交给那些资助机构。于是我随口说,我们可以自己去与学校联系。我自己就有不少西部的朋友,可以让他们牵头联系。但是我们又想,跟学校联系也不一定可靠,因为即使钱汇到了学校,也不能保证一定会到学生的手中;到了学生的手中,也难以确保真的到了那些应该资助的人的手中。于是我想了
2005-12-03 15:14:00
1969
3
原创 手机实名制可能年前出台 2亿多用户将重新登记身份
手机实名制年前有望出台(摘自http://it.sohu.com/20051202/n240850422.shtml ) 2亿多预付费手机用户将重新登记真实身份 据北京青年报报道,手机实名制可能年底前出台,据预测,如果老用户也进行实名,中国目前2亿名以上预付费手机用户将重新登记身份。昨天,信产部电信研究院通信信息所专家郭燕冰同时透露,关于手机实名制的宣传策划组,已经成立了一周多,这意味着关
2005-12-02 09:11:00
1425
原创 笑话一则:功能强大的手表,你要吗?
功能强大的手表,你要吗? 转一则故事:有一个人在机场等六点的飞机,可是他忘记了带手表,于是他想找个人问问。 这时,他看见一个人提着两个巨大的手提箱吃力的走过来,手腕上戴着一块异常漂亮的一看就知道是高科技产品的手表。 "请问,几点了?"他问道。 "哪个国家的时间?"那人反问。 "哦?"他的好奇心
2005-11-30 13:04:00
2496
1
原创 小文件的p2p分布式下载算法优化
小文件的快速下载,是mp3共享网络、流媒体网络、实时流媒体网络都需要考虑的问题。因此需要专门针对小文件进行下砸优化,以让整个系统的下载速度达到最优。如果不考虑小文件的同时下载人数的话,小文件的p2p分布式下载一般存在下面几个问题:一、对等点发现的延时、对等点占有片断信息的延时。对等点的互相发现一般是相互的,也就是说,如果B发现了A,那么A也就能发现B。所以发现延迟的问题还不大。关键是文件片断信息的
2005-11-24 12:41:00
2898
原创 一种精确的基于DHT的p2p网络搜索算法与网络拓扑模型
一种精确的基于DHT的p2p网络搜索算法与网络拓扑模型 关键字:p2p,搜索,DHT,网络拓扑提要:本文对通行的DHT算法进行了修改,使之可以进行精确的查找,如关键字之间的逻辑运算等等,并在此基础上提出一个基于中央地址服务器的星型P2P拓扑结构模型。版权声明:本文由SkyMountain发表,引用地址为http://blog.csdn.net/skymountain/。作者
2005-11-24 12:11:00
5035
7
转载 Peer to Peer ( P2P ) 综述
http://www.intsci.ac.cn/users/luojw/papers/p2p.htm献给对P2P网络感兴趣的朋友们:P2P网络感兴趣的朋友们: Peer to Peer ( P2P ) 综述 罗杰文luojw@ics.ict.ac.cnluojw@ics.ict.ac.cn中科院计算技术研究所2005-11-31 绪言 1.1 Peer-To-Peer 介绍最近几年,对等计算(
2005-11-21 23:46:00
5327
原创 看看Md5自然产生重复的概率
问题:假设有十万个不同的文件,每个文件对应于一个MD5。这十万个MD5中,存在两个相同的MD5的概率是多大?答:MD5是128位hash码(4个整数,每个整数4个字节)。我们假设它的计算结果是足够随机和足够分散的。因此,一个文件的MD5码,有2的128次方(用2e128表示,下面都用这种方式表示)个可能。进而我们知道,随意找出来的两个文件的MD5码相等的可能性,是2e128分之一。下面讨论
2005-11-19 10:53:00
32783
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人