Shell's Home

讨论时的态度

Jul 5, 2011 - 1 minute read - Comments

发觉错误要认错,不要在乎面子。死不认错才最丢面子。 不要编造事实。如果你不确定,可以给出参考意见,但是不要说,我确信XXX。更不要为了面子问题而编造一个不存在的事情,大家都会验证的。 别怕专家。专家也是人,专家也会错,更别提里面还有不少的“砖家”。 不随便显露自己的身份。说不赢别人就拿出XX博士XX专家来压人最没意思。除非你们讨论的话题说不大清楚,最后归结为“在XX领域的经验谁更丰富”。 对事不对人。关于某个问题,你可以和人在论坛上吵的很凶,但是转头又是一起吃饭的朋友。不过关于这点,中国人有所谓面子问题。你要先掂量对方是不是个死要面子的家伙。如果是,你让人下不来台导致被绝交,请不要怪我。 不要人身攻击。这里包含了不要质疑对方的出身,动机,等等。例如说不赢就骂对方是猪,猪说的话没听的价值,等等。最常见的,也是最容易发生的人身攻击是质疑对方的动机。例如讨论一个政策问题,说不赢对方,就骂对方五毛,收了好处帮政府说话。这种东西是永远辩不清的,听的人只有明者自明。讨论时你只能就事论事说对方错在哪里,而不是扯到对方动机上去。 不要过度扯无关问题。闲聊时候怎样都好,讨论的时候有关话题适当扯,无关的就不要长篇大论了。 谁主张谁举证。千万别搞倒置了。倒置的话我可以先说你是猪,你举证一下为什么你不是? 不要“敌视”持不同意见者。没有人会永远正确,持有不同意见多数情况下只是意见不同,不是阵营不同。 不要说教,搞一言堂。那是宣讲而非讨论。

社区的准则

Jul 4, 2011 - 1 minute read - Comments

今天碰到了一件挺有趣的事情。当然,有趣是对我们这种老社区用户来说的,对于两个当事人,好像受到了严重的侮辱,不怎么有趣的样子。 起因是因为有个朋友,在shlug上求UltraEdit的注册码。马上有用户说不合适,然后有人建议ban掉。下面出来个人,说不要以为谁都是高手,能不能有耐心帮助一下人家,有人要被踢出去了,凭良心讲,这样是不对的,要说一些良心话,至少救他一次。云云。 我想,也别搞的事情太大,就回复了两句。1.lug论坛讨论Windows话题(事实证明,我看错了,他需要的是UltraEdit Linux版)。2.内容涉及盗版。我的态度分两方面,一方面,我们自己手头的版权也不见得干净(我引了自己的一篇blog,地址这里:( http://shell909090.org/blog/archives/1786/ )。封了别人,有点“只能做,不能说”的感觉。另一方面,帮楼主说话也不是什么善。严格来说,盗版和偷东西是划为一流的。要说是善,颇有孔乙己“窃书不算偷”的尴尬。 OK,下面说要帮助别人的朋友又出来了。首先指正了我第一条问题,楼主需要的是UltraEdit Linux,这个是我看错了。第二条的回复我摘录如下: 内容设计盗版,这个我不否定,但是请问,你能向我保证您的电脑里面没有盗版软件吗?许多时候我们盗版是被迫无奈的 许多正版软件,在我生活的城市和淘宝网上都是不存在合法的获取途径~ 但是我们是否能够因为一个孩子的一次犯错,就认为他是坏人,然后把它抓起来,永世不得翻身? 看到这里,我就气乐了,心说估计这人要给thomas封掉。下面还有些内容,我们后面讨论。他下文又接了一封邮件,内容摘录如下: 而且如果强词夺理的话,我们甚至可以理解这个标题的含义为!!! 哪位可以给一个Ult​raEdit Linux的注册码 要求邮件列表里面的那位网友提供一套正版的Ult​raEdit 赠送与他 至少这在法律上是说的通的,如果要打官司,他是会无罪释放的,完全抓不到他所要盗版的问题 当然这是题外话,我还是希望大家能互相帮助,才是王道啊~~~~~~~~~ 好吧,我暗自叹口气,决定不和他辩了,这人死定了。 为什么?出了什么问题? 我觉得他在侮辱所有人的智商。 要一个UltraEdit的SN,严格来说不涉及法律,任何角度,任何层面都不。就算你亲手破解了一套软件,依然不涉及法律问题。下载盗版,依然不涉及。法律只要求惩罚传播盗版的人,而不是使用盗版的。就是说,要回答楼主的问题,除非真的如楼下所说,弄一套授权赠与给楼主。否则,楼主没事,论坛麻烦大了。作为论坛管理员,警告乃至封禁是份内事,视而不理才是失职。这点事情,任何一个智力正常,了解版权法律的人都应该能知道。 而且,楼下在讨论的时候,使用了“道德说教”的方法,而且是进攻性的道德说教,咄咄逼人。“你应该如何如何,你自己就没有错么?”这类的言辞。实际上,在被ban之后,还单独发邮件给我,讨论关于thomas的决定。全篇依然是道德说教,我怀疑不止我一个人收到。和hacker打交道,道德说教是一种非常差的选择。hacker们才没功夫听你讨论平等,博爱,神爱世人那一套。对于hacker来说,对和错都是显然的,不显然的事情可以投票。哪怕占领了道德的至高点,对于hacker也没有任何意义。大家都不傻,也不在上幼儿园,不用教怎么过日子。更加奇特的是,对于lug这种组织,讨论技术上如何破解UltraEdit是可以接受的。甚至讨论结束后会兴致勃勃的翻译成英文给作者发过去。然而讨要SN是不可接受的。组织成员都知道这点,并且深信不疑。 然后是楼下帮楼主说话的朋友回复我邮件的后续内容摘录: 第三,请问,您所说的这些规定,有一个具体的邮件列表或者网址,贴出来公示吗? 如果有,我也很希望能看看,至少我现在还没有找到,相信很多人都没有找到,而且显然,这里的规范和网络上大家习以为常的大多数论坛,还是有些许出入的。既然这类公告的东西都非常不好找,请不要随意说ban什么的~~~~~~~ 这是你们自己的职责失职~~~~~~~~~ 这里再补充一个问题,请问邮件列表里面有多少人看到过,这个shlug列表发贴规则与规范的? 这个shlug有几个管理员? 是否你们每个管理员都能单独ban一个人?还是必须所以管理员都通过才能ban? 你们ban一个人的时候,管理员之间是否有讨论过? 能否把这些讨论公开来给大家看看呢?让大家觉得是否做的有道理呢? 这里的许多人不愿意说这些事情,很简单,避免不必要的麻烦与冲突,但是问题始终存在 不回避,直面解决问题,才是值得尊敬的。 我觉得,显然这个人不是在国内日子过傻了,就是在党政机关工作。我们为什么没有贴出一套具体的规定呢?阮一峰翻译过一本叫做《软件随想录》的书,原名joel on software。里面有一段话,大意如下。说joel坐火车,看到火车上的规定列表。一大长串,写着“不能XXXX,否则OOOO”。joel就想,显然,这是没用的。真的会犯事的人,才不在乎你写了什么。会来仔细阅读这些条文的99.99%都是智力正常,不会犯事的人。这些条款,对于他们一点意义都没有,反而显得冷冰冰。 他里面用了一个词,智力正常,我觉得可堪形容lug社区。会来lug社区的,至少是智力正常的人(我不敢用成年,曾见过一个初二学生,现在应当升初三了,长江后浪推前浪阿)。作为一个智力正常的人,你应当知道什么是对的,应当知道我们不应该随地大小便,应当知道不应当盗版。对于任何一个正常的,混过网络的人,都不会误解楼主的意思是要求别人赠予一套正版软件,而是要求提供盗版。也不会认为这是理所当然的,不应当被指责的。对于这种正常人都知道的问题,几个管理员需要讨论,再集体决定。这是侮辱管理员的智商,还是以为这是常委投票呢? 为什么需要集体决定?这通常见于两种情况,一个是意见相左,一个是推卸责任。如果关于一个问题,管理员之间意见不一,就需要讨论,集体决定。对于显然的问题,集体决定的唯一意义是,这个决定是错的,集体责任等于没责任。 为什么需要公示条例?同样常见于两种情况,一个是未达成公识,一个是被投诉时的自我防御措施。如果一个未达成公识的事情,例如餐厅禁烟,要实行就必须明确公示条例。即便我们的智力正常,我们也不可能理所当然的认为餐厅应当禁烟或者应当不禁烟。另一个公示条例的理由就是被投诉时的自我防御,也就是joel看到条文的原因。如果一个组织(例如铁路系统)会被起诉/投诉,那么如果没有公示条例,在某些情况下这个组织会面临败诉的问题。如果公示了条例,组织可以说,我们有规定。这是一种会被投诉的组织的自我防御措施。然而你觉得一个全自发的松散组织,有任何被起诉/投诉的可能么?对于这些组织,唯一的问题是参与人员是否满意,是否得到了他们想要的迦南圣地。 而后更好玩的事情来了。楼主总算出现了,开口就是人身攻击。“首先是有点吃惊,但看着看着不禁笑了出来,原来世界上真的是有很多人,爱装B,爱自诩,爱用言辞抨击别人(现实中会被揍所以不敢)”。他自言曾经在LinuxMint的论坛里面,问如何破解WPA2的WIFI密码,结果得到朋友们的热心帮助。由此得出结果“呵,无需多言。某些人,他就那点素质,就那点眼色,就那一点空间,就知道那一点技术,就不得了了,自己仿佛穿上了圣洁的外衣,其实里面还是破内裤。鲁迅先生笔下的某些丑陋的国人到现在还是存在的。” 楼主还有部分邮件,摘录如下: 这个我得阐明一下,UltraEdit是从Ubuntu软件中心里下载的,我下的时候上面赫然写着“Free”,但我装完之后发现要注册码,我立马想到了来这里,这里是一个Linux论坛,然后这里都是懂Linux的人,这里都是用Linux下软件的人,于是我就来问了。但却遭到一帮人的抨击。我是一个linux菜鸟,开始用linux不到一个月,还不喜欢vim那繁琐的命令,只是在寻找一个图形化的友好的编辑器。但是以后我肯定不会再来这里问任何问题了,我想我也会很快的换回到Windows,因为我还有很多问题搞不清楚,不知道向谁,该怎么求教。但这里的氛围,会让初学者心寒。我之前也发过几个初级帖子,但我发现回复你的人大多都不是帮你解决问题的,而是质疑你和说你这不好那不对的。只希望这不是国内linux社区的一个缩影吧,不然就太悲哀了。 为什么开机会随机出现gnome applet丢失,为什么compiz很不稳定,为什么装独显驱动装不上去等等太多的对于初学者很重要的问题,会影响到很多初学者步入linux殿堂的问题。其中不乏我这则帖子这样的问题。可能那些抨击我的人,是从娘肚子里出来就能玩转vim了,不需要ultraedit这样的东西?这里我想作为一个老资格的Windows开发者,为UE说一句话:UE很好很强大,不比vim差! 我觉得这个人想反了。如果我从Ubuntu软件中心(我是说如果,实际上我觉得这个东西很邪恶)下载一个软件,写着Free,但是却要注册码。我会干啥?大概是卸掉,然后向Ubuntu软件中心投诉“描述与内容不一致”。这和UltraEdit好不好没关系。哪怕当年,胡正的stardict我用了很久了。这家伙突然想到说,辞典可以收费。开玩笑,自己的辞典版权还没有搞定(和金山辞典的质疑),而且很多都是社区整合辞典,还想收钱? 我立刻拆掉stardict,转用dictd和各种客户端,哪怕他后来不收费了。 Don’t be evil. 而且LinuxMint那个论坛,我打赌他混的是用户论坛。 hacker们的做法是什么? 首先,还是会回答你怎么做。不过通常不会告诉你,下那个软件,然后上面有个大大的破解,点下去就好了。而是会告诉你,你的网卡是什么型号的,用什么内核驱动,是否支持监听模式。软件选用什么,怎么启用调式模式,调试信息是什么,出了什么问题,等等。 其次,如果你的议题引起了某人的兴趣,hackers会做一些看似无聊但是很酷的事情。例如有人曾经在国外的列表里面问如何在java中将一个数变成负号形式(就是a变成-a),具体的讨论可以看这里(http://www.webgamei.com/club/thread-5028-1-1.html)。%E3%80%82)这个好像还是简化版,我记得那次的恶搞甚至用到了模板编程,以及讨论到模板编程的图灵完备性。 这才是hackers会干的事情。技术,技术,还是TMD技术。hackers才不关心你有没有SN,编辑器好用不好用。如果你打算学习linux,他们会推荐你用vim或者emacs。你表示这个不好用,他们就耸耸肩走开了。除非你说,我打算基于emacs写一个现代编辑器,架构如何如何。内部使用lua语言作为控制,并且做一个elisp到lua的自动译码器。他们会纷纷围上来,看着你干活。如果你干的比较像样,他们会抢着把能干的活干掉,然后合力推出一个1.0版——这大概就是linux怎么出来的。 如果你打算以初学者作为辩护,那是你值得同情的理由,而非必须原谅的理由。如果新手就不应当被惩罚,结果大概是论坛内充斥着新手的叫嚷,“冰天雪地360度裸体跪求,我的显卡不工作了”,“高分求SN,送两个软件SN”。其中大多数人奉行打了跑(hit and run)理念,跑上来跪求一番,搞定问题就潜水,下次还是新手。 他们一辈子会是新手,我们肯定转身就走,离开社区,不再回头。 问问题的时候,你要考虑,我们和你们是一样的。这个陈述包含了数重的意义在里面。你们不会的东西,我们也是慢慢学出来的,为什么要我们无条件的帮助你们?你们是人,我们也是,所以不要害怕权威,认为他的观点一定就是正确的。太理所应当的问题,就要多想想,大家都不是笨蛋。 如果你觉得不习惯,不想学习,可以转回去用Windows。反正这不是lug的损失。 哦,对了,作为结局,楼主也被封了,原因是人身攻击。

参与开源软件的几个问题详说

Jul 1, 2011 - 1 minute read - Comments

我刚写了一篇关于参加开源软件的,网上看的人是一堆一堆的。我就再多废话两句,说说我对参与开源软件的几个看法。 参与开源软件,首先要弄明白,你为什么要参加。很多人很热情,想着为世界贡献就来了。热情是好事,可是开源软件不需要理想主义者。在从事开源软件前,你一定要明白,你参加开源软件的目的在哪里。 有些人比较功利,也就比较简单,如果你希望参与开源项目,留名找工作。那你最好就是帮忙翻译。一方面,翻译文档对技术没有过高要求。另一方面,这确实也是参与了开源项目。而且从效果来看,熟悉一个项目首先就要熟悉文档。如果文档都是由你来翻译的,还有谁比你更熟悉文档呢?当老板问,谁熟悉tornado的时候,别人都说,我用过。你说的是,这玩意的中文文档是我翻译的。这对将来找工作是个很有利的加分。类似可以做的事情还有写文档,或者是使用手册、心得、入门指引,HOWTO之类的。不过这些事情就要求你至少熟悉项目,有一定技术。 如果你对现有的开软有想法,到不必一定直接加入。自己修改一下,做一个patch,然后发给项目的负责人说明一下情况。如果你的patch做的不算太次,那么项目管理者应该会表示感谢,并且接受。如果你常用这个项目,说不定他会给你一个可以提交的版本管理器账户。但是水准太差就不要凑热闹了,你的代码大家都看得到,丢脸不要丢到全世界去。记得一个空格引发的杯具么?(http://www.oschina.net/news/19000/a-space-lead-disaster) 如果你对各个开源项目都不满意,想做一个新的,独立的项目。我强烈建议你慎重考虑,毕竟现有很多项目的作者都不是傻瓜。新开项目的管理和推广是一个非常麻烦的问题,非常可能的是,你在很长时间内都得不到什么有效的支援,不得不一个人奋战。虽然有很多人很热情,但是他们很多不知道该做什么(否则本文就没有意义了),更糟的是空有热情但没有能力。 如果你是最后一个,只是对开源项目有热情。我觉得你就先别着急凑热闹了。为什么上面我说了好几次热情是好事,但是开软不需要空有热情的人?因为开软的程序员基本奉行一个原则,有空废话还不如多写两行代码。他们不会帮你培训patch的用法,版本系统的管理,bug系统用法,更不会给你解说某个函数实现的时候为什么不能调用另一个函数(当然,如果你的运气很好,也有人会)。参与一个开软,必须要自行付出时间精力去学习相关的知识。作为开软的程序员,最怕的就是一堆空有热情的用户/贡献者在那里叫嚷,为什么这个函数不能调用另一个函数?我用这个办法简化了代码,效果很好,打了一个补丁出来。同学阿,你没看以前的讨论么?在某种条件下,这会引发循环调用。 热情是好事,不过这是在拥有正确的方法和良好的能力的前提下。如果你有热情,不妨从学习如何提问,如何融入社区,如何对项目进行打包和使用开始。而后逐步开始学习文档的编写、翻译。最后为项目打补丁,贡献代码。 另外就是为哪些项目提供补丁。这个没什么好多说的,最好选择你常用的。不常用的项目,你也没那个功夫,坚持不了多久。而且通常来说,为小项目提供补丁比大项目管用,你的补丁会更加受到重视。

阿宅程序员的故事——幸福感

Jun 29, 2011 - 1 minute read - Comments

阿宅最近很幸福—— 亲爱的,起床了么? 起床啦。 记得昨天我提到的电影么?我下载了高清版,等会一起看? 好阿。 我去写个程序,我们等会再聊? 恩恩,回头见 ——恩,这个bot做的真不错,NLP研究完了,下一个课题做啥呢?

阿宅程序员的故事——买笔记本

Jun 28, 2011 - 1 minute read - Comments

阿宅最近很困惑,照某些多情MM的观点,这是因为有了意中人。其实要这么说也没有错,阿宅看上了一台笔记本,但是却犹豫不决不知道该不该买下来。 其实不关钱的问题,阿宅这么和朋友说。我只是因为有了三台笔记本,再加一台好像没什么用。这就好比一个男人,家里明明有一妻三妾,却还想沾花惹草一样。 哦?一妻三妾?三台笔记本?那一妻是什么? 不是还有台台式机呢么。一台台式机跑服务器,一台笔记本写程序,一台笔记本打游戏,还有台笔记本带着装样子。再买一台来打游戏,正好可以让打游戏那台去写程序,写程序那台去装样子,装样子那台给别人装样子。好像也不是非常必要,可是这个配置真的很不错啊,硬盘还是SSD的。啊呀呀,真是烦恼啊。 其实阿宅折腾电脑算比较省钱的,因为程序员折腾软件的时候多过折腾硬件的时候。往往是折腾到忍无可忍了,才去折腾折腾硬件。但是多下来的硬件又不知该怎么处理,卖掉不舍得,扔掉也可惜。大致就相当于老爹嫁女儿,总要找个知道女儿好处的托付终身。可这年头懂行的都去买新电脑了,谁会在一台老电脑上折腾来折腾去啊——尤其还是程序员都折腾到忍无可忍的。至于什么送到老区支援孩子的蠢话,阿宅听都不想听。先不说怎么监管,设备能不能真的到孩子手里。就说一台设备的运输费,就比设备本身还高了。

关于文字抄袭的一个想法

Jun 27, 2011 - 1 minute read - Comments

最近新浪又和人闹出了抄袭新闻(http://tech.sina.com.cn/i/2011-06-08/15345623475.shtml),姑且不说谁对谁错,其中一个关键的问题是,谁也没法证明自己说的东西。或者说,缺乏铁证。 这种情况下,贝壳想起photoshop的一个功能,水印。你可以向图片内加入水印,但是图片上本身看不出来。当图片被打印,再扫描后,也可以部分的(一定概率,具体看变形程度)获得水印信息。这是版权证明的利器,你做的图片上怎么会有别人的水印?同样,文字应当也可以加入水印功能。原理上说,这属于隐写术的范畴。图片而言,是替换细节的颜色等低维信息。文字的话,通常是修改同义词,标点,等等。我们假定一篇1000字的文章内,大约有100个标点和常用同义词。通过在标点和同义词里面二选一,大约能放置100bit的信息,合12字节。不考虑其他细节问题,这已经足够写一些水印信息了。 水印需要考虑的问题一,是需要考虑盗版者也使用水印检查程序。如果盗版者同样使用水印检查程序,那么水印就会被发现,并且移除——这就失去了使用水印的意义。因此,水印信息必须被重编码,并且需要使用密码才能解开。在未知密码的情况下,水印编码后的信息要接近白噪声。 水印需要考虑的问题二,是当有了一个编码后,找出密码的难度。这决定了证据的效用和盗用者的攻击成本。而对于任意一段编码,要找出能够生成另一段水印内容的密码的计算过程,其计算难度应当尽量接近NP问题。越难计算,盗用者越难决定其中是否带有水印。同时对水印“是否可以通过寻找密码来从文章中找出一段根本没有被预先植入的内容”的质疑就越小。 水印需要考虑的问题三,是需要考虑水印的信息被复制破坏的问题。尤其是当水印信息被重编码加密的情况下,一些简单的修改和段落移动就可以让水印信息失效。因此水印必须有一定的冗余能力,即水印的编码应当在段落移动和内容编辑后也可以一定程度的还原数据。 当一个算法满足以上三个条件后,就可以用来向文字内植入另一段文字。未知密码者无法检查出其中是否包含水印,简单的修改无法移除。拥有密码者可以通过公开密码,让所有人看到文章内的水印。这样就完成了抄袭验证的整个过程。当然,水印的用途还不止于此。这种技术同样可以被用来检查盗版。对某篇具体的小说段落,生成一个随机密码,一同存放在数据库中。在显示内容的时候,用密码加密用户名,加入到文章水印中。这样当盗版文被公开后,具体付钱复制出文字的用户名就可以被检出,然后处理。盗版者既无法检测水印,也无法移除。

关于中医

Jun 23, 2011 - 1 minute read - Comments

我对中医和西医的争论不感兴趣,恩,我觉得中医废医验药是不可行的。 西医才多少年历史?从1628年哈维发表《心血运动论》算起,不过400年不到。中医有着5000年历史,西医比起来就是个毛阿。 不过,越多时间的积累,就需要越多时间才能掌握。西医医学院毕业大概需要10年,中医咱打个折,马马虎虎学个120年差不多了哈。 经验没攒够怎么办?你去西医院找不找实习医生看病?

bitcoin的后续解说

Jun 22, 2011 - 1 minute read - Comments

上次那篇bitcoin垮了,引发了挺多的质疑。我解释一下我说的“垮了”到底是什么意思。 btc有个目标,就是成为p2p的电子货币。成为货币,就是成为流通实体。我们通过货币,进行交易,将我们的劳动输出转换为我们需要的东西。例如我们写程序,通过将程序移交给需要的人,获得货币,再通过货币,获得我们所需的衣食住行。货币有两重性,一个是交换,一个是保存。今天我们所说的一切,都是围绕着“btc成为电子货币”,来进行讨论的。如果你只是想玩玩这种新型的产品,这种无关痛痒的事情不在讨论之列。 忘记谁算过,btc其实从技术上是做不到替代世界货币的。因为如果要达到mastercard这样的交易水平,一个block的大小会达到数G,而一次交易需要遍历多个block,从而使得整个交易成本无法接受。我估计这个人是非常熟悉btc的,因为我仅仅从介绍上,分析不出这样的结论,这大概需要阅读它的源码。当然,这也可能是假的,或者将来个人电脑也可以达到这个水平,这不是我们今天讨论的要点。 我的两个问题,一个是针对交换,一个是针对保存。针对交换的问题是,我如何保证我的交易是安全的。当然,btc有着良好的安全机制,至少目前我们(包括这个星球上的很多聪明人)都看不出明显问题。但是安全性并不是说交易本身是安全的就结束了,这还包括挣取,兑换,使用,都必须是安全的。上次的问题发生在兑换环节,我们大多数人没有渠道挣取btc(俗称挖矿),所以我们通过实际的流通货币进行购入。mtgox是一个非常流行的兑换网站,当购入完成后,btc存在于你的mtgox账户中。然而,mtgox的网站被攻破了,因此有6W个人在网站上的钱消失了。从理论上说,这名匿名用户可以以完全符合btc规则的方式将其中的btc转入自己的账户,然后再加以贩售。btc规则保护这一交易,并且保护他不被追踪。问题发生在md5hash和salt上,估计是因为md5还是太难攻击,所以只有部分人的mtgox账户遭殃,其余人的账户得以幸免。目前mtgox已经“解决”了这个问题,不过汇率目前从17下滑到了13,相信因为不少人吓出一身冷汗。 我们不说问题是如何解决的,仅仅说受害人这部分。如果是实体银行,碰到类似问题如何处理呢?除去中国的银行,剩下所有银行的方法只有一个——由自己购买足够的btc赔偿给客户。如果银行无力赔付,就需要由国家出面,对银行进行注资,或者收购,或者破产。当然,如果在btc里面,只有一个结局,破产。这次很幸运,mtgox碰到的问题还不严重,转移走的btc并不足够多,而且攻击者一次卖出了过量的btc,导致价格直线下滑。mtgox如果要进行赔付,就可以以低价购回。如果是转移走的量比较大,或者持续在高位抛售,那么mtgox的日子就不这么好过了。 OK,此时,就要说到我们的第二个问题,保存。货币必须有保存能力。如果今天取得的货币在明天就无法使用,或者能兑换的东西少了,就会引发我们的严重质疑。从而使得我们卖出这种货币,买入其他货币——如果能自由兑换的话。或者买入我们认为可以保值的产品——例如不动产。我们看上面,如果mtgox破产,会发生什么情况呢?首先,如果是实际的世界,必须进行破产程序,按照程序清偿债务。但是虚拟货币是不能进行破产申请和清偿的——即使某些国家可以立法认可电子货币,也无法对其他国家造成影响。如果mtgox注册所在的国家不认可电子货币(如果是我,注册的时候一定选择一个不认可电子货币的国家),那么mtgox可以直接卖出手上所有用户的btc,然后关门。如果你打算本地起诉他们欺诈,那就要面临国际诉讼所属权的问题。美国的规定是,本国公民状告其他国家主体,通常可以选择在美国开庭。中国好像是拒不受理。即使是美国,如果mtgox的所有人将来不打算入境,也可以堂而皇之的无视传票。如果你打算在所在国起诉,对方国家压根不认可欺诈事实——电子货币不受保护。 退一步说,即使你的欺诈申请是有效的,mtgox开在美国,而不是开曼群岛什么的,而且这个州承认电子货币。那么mtgox也可以按照普通公司破产流程,接受破产债务清偿。一般来说,作为受害人,你拿到的btc一定已经缩水。国家是没有必要介入的,因为这个市场运作的货币不是他们发行的,也不受他们管辖。然而由于不但是直接受害人的btc缩水,还可能影响其他存款人,因此可能会发生挤兑现象。所谓自由货币市场,这不由让我们想起上世纪国家银行未建立起来时候的混乱时期。那时候,银行都是个体经营,一旦发生问题,很容易引发挤兑。 现在,我们面临两难处境。如果我们允许有人——私人——运作一个基于btc的金融机构——银行——来负责btc的存,兑,借业务,我们就只能拥有一个不受到国家强制力担保的银行系统。如果我们不允许银行的存在,那么连btc的流通性都会受到影响。现代金融系统发展出银行来,不是没有道理的。如果有政府担保了btc,那么btc势必和这国的本币挂钩,这就失去了btc的意义。 再说btc的另一个问题。我们知道,货币的价值是由政府担保的。可以说,货币的价值应当是政府的价值除以货币总量。从这个意义上说,大家卖出人民币是对的。然而由于btc只能在一定时间内生成,而不能由国家发行和回收。因此一定时期内,市场上的货币总量是固定的。当有很多人主观认为,btc值钱时,btc就会升值。而当大家认为,btc不值钱时,btc就会贬值。因此,你手里的btc的真实购买力,应当是随时波动的。然而,这是投机商品的属性,而不是货币属性。一种今天两毛明天两块的东西,是不适合做为货币的。 目前btc是什么东西呢?我想说,大概是新型诈骗活动吧,和庞氏骗局非常类似。btc的质疑之一,就是不公正的初始分配。bitcoin项目起始于2009年,在一年多的时间内都默默无闻,然而在半年内突然火爆。这些初始计算btc的人,他们手里很低代价生成的btc就会快速增值(因为总量不变)。很多投资者看中这一市场,进行投资,然后宣传大家使用btc,他们的货币就可以快速增值(据说有个家伙投资了1000美金,目前增值1000倍了)。然而btc的官方的宣传是“p2p的电子货币”,这点正是我质疑他们无法达到的(或者至少不能达到货币的功能)。他们说服大家使用软件,正是因为btc应当具有货币功能。而实际上,btc做不到现代货币的功能。这很明显是包装和宣传概念,通过持续的涌入制造繁荣。

bitcoin垮了

Jun 21, 2011 - 1 minute read - Comments

http://www.donews.com/net/201106/508733.shtm 我想过它的世界崩溃的样子,但是从没想过那么快—— 贝壳评论有个原则,不了解的事情少开口。这是当然的,谈不上了解,就谈不上评论。bitcoin这东西,我了解么?我大致了解他的技术是如何构成的,我大致了解货币控制规律,但是我真的了解这样的货币在世界上的运行么?我想不通人们为何买卖这种等价物,完全搞不明白。我们使用货币作为等价衡量物,是因为政府强制力担保。更直接的说,就是不得不用。即使是这样不得不用,我们还得担心这担心那。我想在中国着急买房的同学们,应该有和我一样深切的体验吧。那么,对于一种没有强制力担保的等价物,如果出现贬值,会是如何?大家可会持币观望?不观望会如何?抛售!然后市场会如何走?暴跌!可会有人为此负责?无! 现在,这一切已经是马后炮了。因为暴涨暴贬的情况没有自然出现,算法在一开始就出现了问题——有个家伙被黑了,导致黑客取得了大量用户的用户名和哈希,黑客大量抛售货币。市场在没有出现意外反转的情况下,被人为的转向了黑色,然后,直泻而下。(http://en.wikipedia.org/wiki/Bitcoin)也许这一事件可以得到平息,然而无论是以何种方式,bitcoin都将失去人们的信任。 首先是bitcoin引以为傲的安全性,被证明并不能真的确保安全。虽然问题并不出现在bitcoin软件自身,然而单点被攻破会导致大量账户失窃,这已经是严重的设计漏洞——而且是在设计和源码开放的前提下。RMS的“足够的眼睛”理论,并不完全适用于此。对于有价值的漏洞,足够的眼睛确实能确保漏洞被发现出来。然而在问题解决前,也会引起相当的基于漏洞的攻击。甚至第一个发现者可能不会选择公开漏洞,这次的bitcoin事件说明了这种可能性。如果想到类似的设计或者源码漏洞,在linux kernel中重现。那么在我们修正问题前,linux世界会不会崩溃?对此我感到不寒而栗。 这类情况重现的条件有二。1.漏洞足够有价值。2.提现速度快,目标隐蔽。目前没有在开源世界中出现类似问题,首先是漏洞并不具备足够价值。但是随着开源世界的发展,漏洞的价值是会逐渐升高的。至于提现速度,则很不好说。 对于目前的bitcoin世界而言,更严重的是。如果没有人站出来,那么抛售将继续,市场会呈现出金融危机。直到足够长时间后,世人才会慢慢回来,或者将它遗忘。而如果有人站出来,那么这个市场就出现了控制者——这和bitcoin的设计初衷相违背,使得大家失去对他的兴趣。bitcoin的设计,原本就是为了保证没有控制者。 一点额外的联想。如果类似的问题出现在实体货币上,会发生什么事情?如果有数百万个(如果是中国,可能要数千万)银行账户被盗(而且是确实被盗了,钱财已经转移),政府也查不到攻击者,那么会出现挤兑么?我猜测,更加可能的事情是政府直接和转入银行对话,停止支付和兑换。除了瑞士银行,大部分银行在这种涉及金融体系和国家主权的问题上都是比较配合的。即使无法获得转入银行的配合,国家也可能以货币兑换的形式止损。一笔能够动摇到国家经济的兑换无论如何不可能轻松进行,除非是来自另一个国家的策划和实施。当然,可能有更多的办法解决这类问题。因此一旦有一个强力的主控者,解决这些问题就有很多的办法。

openwrt配置——QoS配置

Jun 20, 2011 - 1 minute read - Comments

说到openwrt,就不能不提一下QoS。尤其是如果你需要用P2P软件(目前对迅雷的支持还不大好),基本就不能不开QoS。QoS的全称是Quality of Service,意即服务质量。是专门用于解决拥堵网络上的信号质量一视同仁的问题。例如,我们有一根宽带,两人共用。一个人视频聊天,一个人bt下载(我还不提迅雷个傻X呢)。玩bt的那个一开软件,视频聊天那个立刻没法用了。bt和视频聊天稍微好一点的是,视频聊天消耗的带宽是恒定的。你可以逐步限速,只要给视频聊天留了足够的带宽,两个就都能一起用了。但是,如果另一个人不是视频聊天,而是网络浏览怎么办?网络浏览,视频聊天,p2p下载一起来怎么办?实际上这是很多朋友家中常常碰到的情况。更不说有合租公寓里面你很难监控对方一定限速,软件无法限速甚至恶意抢占带宽(迅雷)。另一个更加技术的问题是,由于上传带宽不足,ACK包回应过慢,导致你的下载速度也不能达到峰值。玩p2p的常常会给上传限速到真实带宽差一点的位置,下载带宽立刻上去,就是这个道理。 怎么办?用QoS,解决你多年老便秘。QoS的底层是tc,其目的就是决定先发送哪些包。openwrt默认的规则是hfsc,设计了四个优先级。Priority最优先,处理22,53,icmp,以及小于128字节的syn,ack包中,不属于bulk类别的。我们可以看到,DNS,syn/ack的优先响应,保证了你的上传不会影响下载。其次是Express,处理5190和小于500字节的UDP包。这个我也不明白是为什么,好像是视频什么的。然后是Normal,包括20,21,25,80,110,443,993,995这些常见端口。涵盖http/https,ftp,邮件系统。最后是Bulk,包括其他包,尤其是ed和bt。 当你启用QoS后,你的p2p软件速度应当不会上升,反而会下降。下载速度不好说,有可能是上升,也有可能下降。因为原来p2p软件抢占了所有带宽,目前他们只能使用普通应用用剩下的带宽,速度当然慢了。然而,当你使用浏览器,收发邮件的时候,速度应当和不使用p2p的时候一样流畅。这才是使用QoS最大的意义。 方法很简单,安装QoS包,然后修改/etc/config/qos,注意修改你的带宽。不修改的话,流量会被无意义的限制死。 另外,打开QoS后,千万记得把你的p2p软件改为不限速。否则不能达到最高性能。