分类目录归档:分享

比特币及其产业链

谈到比特币,很多人的第一反应是:这东西不是被禁止了吗?或许很多人对比特币的了解还停留在13年底比特币的火爆及央行对其的打压的时候。事实上,经过2014年一年的发展,虽然比特币的价格一路下滑,但比特币生态环境却发生了天翻地覆的变化,从一个流行于极客圈的的玩物,俨然发展出了成熟的产业链。从挖矿到交易到支付,以及丰富的比特币衍生品,比特币正从幼稚走向成熟。

什么是比特币

比特币系统是一个相对复杂的系统,即使对于程序员而言,要想完全的理解它的运作方式也非易事。事实上,就连李笑来这种自称非常了解比特币的人,在其公开的微博上,也搞不清楚公钥是什么东西。我本人也是花了很久的时间才彻底搞清楚比特币系统里面的各种概念。想要理解比特币的工作原理,首先要读的就是 Satoshi Nakamoto 的白皮书:Bitcoin: A Peer-to-Peer Electronic Cash System. 里面的概念可能需要多读几遍才能读懂。另一个值得去得地方是比特币的 Wiki. 对于比特币相关的开发者,官方的文档是必须要读的。

但是,对于一般人来说,要使用比特币,并不需要完全的理解它的运作原理,只需了解比特币的特征,知道几个基本概念即可。

比特币是基于互联网的加密电子货币,可以把它理解为电子黄金。它具有很多黄金的属性,并且从某些角度来看,比特币更具有优势。

首先,它总量固定为2100万枚。它通过一种称为挖矿的形式来发行新的货币,它的产量会大约每隔4年减半,最终达到一个最大值,目前已经产出了不到1400万枚。虽然从长期看来,它使一种通缩型货币,但目前,它仍然处于早期的发行阶段,是严重的通胀型货币。

其次,它是一种去中心化的系统。和传统的金融体系不同,比特币没有一个中央节点来控制它的运作和发行,而是所有的节点通过特定的协议和规则达成的共识。这有两个意义,一个是没有人能够(或者说很难)控制这个系统,比如增发货币,撤销某一笔交易,修改规则等等;另一个是它无法被完全的禁止,因为无法做到关闭某一个主机就能关闭整个系统,只要互联网存在,它就能够存在。所有,有人称它为有史以来最危险的开源项目。

另外,比特币是匿名的。比特币是通过比特币地址来保存比特币。一个比特币地址是类似这样的:13dUm4aNZQDNQpwnX1PxaBQfUdjnFwbba1 这完全是通过随机算法生成的。每个地址对应有私钥,只要拥有了私钥,便拥有了该地址对应的比特币。有意思的是,所有的交易信息在比特币系统里面都是公开的,每个完整的节点都保存有史以来所有的交易记录,但人们并不知道某一个地址是谁所拥有。由于它的匿名,使得它被用于一些非法的活动,比如卖卖枪支毒品,黑客勒索,藏匿财产等,但这并不是比特币的原罪,它只是一个工具而已。不过由于现在不管是国内还是国外的交易所,买卖比特币都需要经过实名认证,所以给追踪比特币交易带来了一些可能。

比特币产业链

挖矿

目前,比特币每天产出的数额大约为3600枚。即使按照目前的币价,每天的产出额也将近100万美元。

根据比特币发行的原理,运行哈希运算的速度越快,获得比特币的概率就越高。而比特币每天产出的数量是有限的,所以比特币挖矿是一场残酷的军备竞赛。比特币挖矿设备经历了四个阶段,每一阶段都比上一阶段的效率提升数个数量级。第一个阶段就是在比特币刚诞生后的几年内,用普通的 PC 即可参与比特币挖矿,这为 CPU 阶段。当比特币开始交易产生价值时,人们发现用显卡挖矿效率更高,这进入了第二个阶段,为 GPU 阶段。然后是 FPGA (现场可编程逻辑门阵列)阶段。目前为 ASIC (专用集成电路)阶段。随着军备竞赛的升级,全网算力越来越高,这也给比特币网络提供了更大的安全性。

比特币全网算力走势

图为过去一年比特币全网算力的变化曲线,一年之内增加了超过10倍。增长这么快一个是因为设备效率的提升,另一个是参与人数的增加。目前比特币全网算力为350P左右,这是什么概念呢,这相当于有35W台最新型的矿机24小时不停的运算。而且,这些矿机只能用来挖矿,不能用作其他用途。容纳上万台比特币矿机的矿场在全球都屡见不鲜。

比特币挖矿曾经是一个暴力的行业。最早的 ASIC 芯片问世时,买入者在很短时间内便能挖回买入矿机的钱,再加上币价的大幅上涨,获得了惊人的回报。那些早期投资烤猫股票的人,更是获得了上千倍的回报。

然而,过去的一年,由于币价的下跌,大量矿机挖出的比特币不够支付电费,投资者血本无归。矿机生产商面临行业洗牌,去年出现的很多矿机商已经倒闭,目前剩下蚂蚁矿机一家独大。

交易

从某种程度上说,比特币算是最完美的投机品了:涨跌幅巨大,不收手续费,7*24不间断交易,没有T+1限制,不需要繁琐的开户门槛,交割极为方便。交易是比特币目前最主要的应用,未来也会继续如此。通过交易,比特币实现了价值的发现,也为其他应用带来的基础。

我第一次想购买比特币时,国内几乎没有看起来正规的交易所,所以没有敢买入。而现在,国内目前至少十几家比特币交易所,国际上也出现了很多。国内最大的有三家交易所,分别是 比特币中国,okcoin 和 火币。由于残酷的市场竞争,国内交易所纷纷放弃收取交易手续费,并且推出支持自动化交易的 API、手机客户端等产品,从体验上完胜传统的券商。这体现出了互联网金融的巨大威力。

比特币价格在过去几年最大涨幅数千倍,带来了巨大的投资机会,很多早期入场者因此获得了巨额的收益,然而更多人在残酷的市场里面血本无归。参与比特币市场交易的人有很多种,有长期看好比特币不断买入持有的,有旷工卖出比特币套现的,也有大量的短线投机者,还有拥有大量资金能够影响比特币价格的人也就是人们俗称的庄家。

过去的一年,由于比特币价格的持续下滑,人们发现做空更容易赚钱。于是出现了融资融币,出现了期货。特比是期货,由于具有高达20倍的杠杆,使得本来就涨跌幅巨大的比特币变得更加危险,比特币交易变相的成为了赌场。庄家也更容易的坐庄了,因为比特币盘子本来就很小,庄家通过期货建仓,现货拉盘或砸盘,在短时间内吃个来回。散户做期货运气好能赚个几倍,但终究是要还回去的。

支付

比特币另外一个重要的应用为支付。和传统支付手段相比,比特币有更低廉的手续费,更快的速度,以及能够匿名支付。我有过几次使用比特币在网上购买 VPS, VPN, SSL 等服务的经历,整个流程非常流畅,不需要提交复杂的个人信息和信用卡信息,也不用担心信息泄露的可能。

在跨境支付上面,比特币有天然的优势。因为比特币是基于互联网的,是没有国界的。没有比特币的话,只能通过银行转账或信用卡支付。然而,银行转账流程特别复杂,周期也很长。信用卡比较方便但门槛较高,很多人比如大学生是没有信用卡的。对于有外汇管制的中国,使用比特币也能够突破这一限制。

现在有越来越多的公司开始支持比特币支付,如新蛋,戴尔,微软等。Paypal 也已经宣布支持比特币支付。也有很多创业公司如 coinbase, bitpay 等为比特币提供类似支付宝的功能,使得商家和消费者更容易使用比特币。

机遇和挑战

比特币也面临着下面这些威胁。

安全性

因为比特币的核心是一串数字,只要得到这这串数字并能支配对应的比特币。这使得保存比特币变得特别不容易,丢失和被盗比特币的事情经常发生。比如最近的:bitstamp 被盗比特尔被盗比特币存钱罐被盗。目前常用的比特币保存技术为冷存储技术,即安装比特币钱包的电脑永不联网,离线生成地址和交易信息,再通过在线的钱包广播交易。

被利用于非法用途

曾经运行在暗网中的丝绸之路是世界上最大的在线毒品和枪支的交易网站,而比特币是其唯一支持的支付方式。虽然丝绸之路网站被美国 FBI 查封。但无数个类似的网站马上建立了起来。国内也出现大量利用比特币概念的传销组织,骗取了大量人的钱财。

政府的政策

在中国,央行是不承认比特币的货币属性的,而是定性为了商品。银行和第三方支付也不被允许参与比特币,这使得比特币交易所的正规化变得十分困难。在美国,目前参与比特币也面临着法律监管的难题,银行对比特币敬而远之。在全球,很多国家禁止了比特币交易,很多银行也视比特币为威胁。

交易所风险

曾经最大的比特币交易所 MT.GOX 的破产,无疑严重的打击了比特币参与者的信心。还有一些其他交易所的跑路,被盗等等,卷走了大量投资者的资金。长期投资者唯一应对的办法是尽快把比特币提现到自己控制的钱包中。

个人的看法

我2011年接触到比特币,2013年开始参与比特币交易,2014年加入了比特币相关的创业团队。不过由于各种原因,目前已经离开了这个创业团队。目前仍在参与比特币交易。

对于比特币,我是长期看好的。比特币目前仍然处于其发展的早期,比特币的价值体现在认同比特币的人数上。比特币的未来会是什么样的,在金融体系中起到什么作用还很难说。对于普通人,可以把比特币当做一种风险投资来看待。

微博比特币价格机器人

前几天看到 twitter 上有一个机器人帐号 btcprice , 会定时报告各大交易所上比特币的最新成交价,觉得蛮有意思的,不用盯盘了,刷刷微博就能跟踪行情。心想微博上应该也应该有类似的帐号,搜了一下,竟然没有,所以就在微博上把 btcprice 注册了。今天有空折腾了几个小时,现在看起来似乎可用了,微博地址:http://weibo.com/btcprice  欢迎关注,目前只提供了 OkCoin 的数据。

做这样一个微博机器人其实很简单,类似的帐号有古城钟楼,这个帐号每个时辰报一次时间。据作者微博称,为了实现这个功能,写了三万多行代码。有点夸张了,不知道古城钟楼还有什么特殊能力?btcprice 这个帐号所有代码只有 48 行,实现一个微博机器人没有想象的那么难。

首先需要到 http://open.weibo.com/ 注册成为开发者,建议使用你注册的机器人帐号登录,这样会方便些。创建一个应用,类型选择网页应用。创建完成后,会获得 App Key 和 App Secret,其实对于机器人帐号来说,这两个字段没太大用处。应用审核通过需要提交开发者实名认证信息,但不审核也不影响调用微博发表接口。不过没有通过审核的应用,状态为测试中,授权的帐号只有1天的有效期。不过据称,对于开发者的帐号,授权有效期为5年。这就不需要担心授权过期的问题了。

发表微的API: http://open.weibo.com/wiki/2/statuses/update 对于一个机器人帐号来说,填两个参数就够了,一个是 status 就是要发表的微博消息,还有一个是 access_token。我一开始就卡在获取 access_token 上了。根据文档,access_token 必须通过 OAuth2.0 获取,而实现一个OAuth2.0 流程还挺麻烦的,况且机器人帐号只需要一次性授权拿到 access_token 就好了,最好有现成的东西可以获取。我想到一个办法是:在我的 wordpress 上安装一个社会化插件,填上在创建应时是获取的 App key 和 App Secret,然后用机器人微博帐号登录到自己的博客上,博客插件应该会通过某种方式把 access_token 保存起来,拿到 access_token 就万事大吉了。不过不知道什么问题,总是授权失败。Google 了一下可能是应用地址设置的问题,和回调地址不匹配。遂改了应用地址,但需要一段时间来生效。后来,看到微博开放平台上有一个API测试工具,http://open.weibo.com/tools/console 点进去就看到开发者自己的  access_token 了,真是踏破铁鞋无觅处得来全不费工夫。

获取比特币最新成交价格通过 OkCoin 的行情API获取 https://www.okcoin.com/t-1000052.html。接口返回的是一段 json 数据,使用 Python 中的 json 模块处理。Python 代码如下:

import urllib2
import json

def get_okcoin_btc_price():
        url = 'https://www.okcoin.com/api/ticker.do'
        r = urllib2.urlopen(url)
        data = json.loads(r.read())
        return float(data['ticker']['last'])

获取到价格后格式化消息体,然后调用微博的发表接口发布微博,Python 代码:

import urllib
import urllib2

        post_data = urllib.urlencode({'access_token' : access_token, 'status' : msg.encode('utf-8') })
        post_url = 'https://api.weibo.com/2/statuses/update.json'
        r = urllib2.urlopen(post_url, post_data);

完整代码可以在 github 上查看:https://github.com/haipome/btcprice/blob/master/btcprice_update.py

最后设置 crontab 每隔 30 分钟更新一次,程序部署在我的位于日本 linode 上。

TODO:

  1. 添加其他交易所数据
  2. 比特币价格监控,有大的波动时发表微博

我和 Google Reader 的一些事

作为互联网的一名重度用户,我接触和使用过的互联网产品非常多。如果让我选择出一个对我影响最大的,那么非 Google Reader (以下简称 GR)莫属。

大约从前年开始使用 GR, 到现在已经有一年多的时间。如果可以上网的话,上 GR 可以说是我上网最重要的事了。通过 GR 让我养成了非常好的互联网阅读习惯,每天都至少要花一到两个小时的时间在上面。在浮躁的网络里,有一个良好的阅读习惯是非常难能可贵的。它对我来说是一个获取资讯的工具,一个增长见识的地方,一个学习知识的利器,也是一个知识管理(KM)平台。

初识RSS

GR 并不是我接触的第一款 RSS 阅读器,首次接触到这个概念是通过 UC 手机浏览器上的 RSS 阅读器。但当时并不理解其中的原理,只知道可以用来看新闻。维基百科上对 RSS 的定义为:

RSS(简易信息聚合)是一种消息来源格式规范,用以发布经常更新数据的网站,例如博客文章、新闻、音频或视频的网摘。RSS 文件(或称做摘要、网络摘要、或频更新,提供到频道)包含了全文或是节录的文字,再加上发用者所订阅之网摘布数据和授权的元数据。网络摘要能够使发行者自动地发布他们的数据,同时也使读者能更够定期更新他们喜欢的网站或是聚合不同网站的网摘。RSS摘要可以借由RSS阅读器、feed reader或是aggregator等网页或以桌面为架构的软件来阅读。标准的XML档式可允许信息在一次发布后通过不同的程序阅览。用户借由将网摘输入RSS阅读器或是用鼠标点取浏览器上指向订阅程序的RSS小图标之URI(非通常称为URL)来订阅网摘。RSS阅读器定期检阅是否有更新,然后下载给监看用户界面。

接触 GR

在我有了电脑后,忘了在什么时间在哪看到有人推荐 GR, 我尝试着使用了一下。第一次使用看起来和下面的样子差不多。

我试着订阅了一些官方推荐的源,包括新浪新闻什么的。可是玩了一会后发现不知道这玩意到底有什么用处,我想看新闻完全可以到新浪首页去看啊,为什么还要在开一个什么阅读器呢?对于大部分人来说,确实是这样。

探索互联网

随着对互联网接触的增加,我发现了很多有意思的网站,比如 CnBeta 、东西网等,还有很多博客比如月光博客IN西安不许联想 、R方天空等。我会经常的打开这些网站,还有一些新闻首页等。有一天在 OL 看到大神们讨论 GR 道:Google Reader, Time Killer. 让我再一次对 GR 产生兴趣。我又登录的几乎废弃的 Google 帐号,发现常去的那些网站都提供有 RSS 链接。于是退订之前推荐的源,订阅了自己常去的网站的源。然后发现这玩意确实好用,我不用再一个个登录常去的网站了,也不会遗漏所有的更新。从此 GR 几乎成为我最常去的网站。

社会化阅读器

随着使用的加深,发现 GR 不只是一款阅读器,还可以关注别的人,可以分享不错的文章给关注自己的人。通过关注一些大神们的分享,极大的拓宽了自己的视野,也发现了很多不错的订阅源。此外还发现 GR 的其他很有用的功能,比如加星标、喜欢、推荐、神奇排序。特别是推荐,它根据你的订阅,关注的人,标记为喜欢的条目等推荐给你可能喜欢的条目,配合神奇排序功能,结果非常棒。几乎不会错过热点资讯,也能学到很多知识。从此几乎抛弃了新闻首页。

使用快捷键和扩展

某一天发现 GR 还有快捷键的功能,打开 GR 按下 shift + ? 就会列出所有快捷键。从此使用 GR 就抛弃了鼠标,在浏览大量 FEED 时效率大大提高。此外还发现了一些有用的扩展比如 Super Google Reader(可以把 FEED  摘要变成全文输出)和 Postrank Extension(为订阅里面的每篇文章评分(从1.0~10.0),标识出每篇文章的热度,分数越高的文章,关注越多,也越值得你阅读)。

遭遇 GFW

2011年1月12日,Google 正式宣布退出中国市场。原先的 g.cn 被跳转到 www.google.com.hk, Google 搜索从此变得再也不稳定起来,搜索经常莫名其妙的被中断。Google 旗下的 GR 也受到这件事的影响,包含“敏感词”的文章会被断开链接。还好 GR 提供了 HTTPS 加密链接方式,影响不大,一直害怕 GR 会被彻底屏蔽掉。然而在2011年3月份的某一天,像往常一样打开 GR 时却发现

实在无力吐槽了。不过还好是间歇性情况,和 Gmail 一样每个小时有固定的二十分钟无法连接。

GR 改版

2011年11月份,Google reader 改版,这次改版是 Google reader 众多改版的产品之一。新版最大的问题是取消了分享,喜欢按钮,取而代之的是 +1. 界面上改动也非常大,引来很多人的不满

被评为2011年互联网领域的7大失败案例,特别是没有照顾到我朝等无法打开 G+ 的情况。改版后 的GR ,分享、喜欢、推荐都不在,对我来说就变成纯粹的阅读器了。

不过我还是很欣赏 Google 的这次改版。界面上 Google 坚持统一的原则,Google 旗下所有网站的风格都很类似。还有把 GR 里的社会化功能取消整合进 Google+, 让 Google 上的人际关系更简单,这点腾讯实在应该学学。腾讯旗下的产品至少有四种关系链,分别是 QQ 好友、微博、朋友网、微信,这对用户来说有时候非常困扰。

清理订阅

使用 GR 时间久了之后,往往订阅了大量的 FEED,导致每天更新的条目多达上千条。这些更新中,并不是所有都是自己感兴趣的,完全处理需要花大量的时间,并且大多数不是阅读,而是匆匆的浏览而过。这时候就需要下决心去清理订阅,只保留真正有价值的、对自己有帮助的 FEED. 不要怕错过好的文章,因为真正有价值的文章往往可以从微博豆瓣等地方看到推荐。

尝试过很多 RSS 阅读器,包括鲜果、有道、QQ阅读等,但他们无论功能还是界面都无法和 GR 相比。目前相对来说 RSS 阅读器的使用者仍是相当的小众,如果你有兴趣,我非常乐意向你推荐使用 GR.

更多 GR 的使用技巧:

Google Reader 小技巧

我是怎么消灭 Google Reader 的1000+的

优化你的 Google Reader

给电脑重装了系统

最近电脑反应速度越来越慢,并且有各种问题,还装了太多乱七八糟的软件,磁盘空间快要溢出了。本着用电脑而不是折腾电脑的精神,我艰难的下了决心给电脑重装了系统,轮流着把分区格式化一遍,发现有这么多自己不需要的东西。

额,我装的是 win7, 不是 Linux. 并且这次重装之前的双系统被覆盖掉了,近期不打算再安装 Linux, 虽然喜欢 Linux, 但用着太折腾,相对来说还是 Windows 用着舒心。还是那句话,电脑是拿来用的而不是拿来折腾的。

只安装了自己需要用的软件,发现自己常用的软件就那么几个。

浏览器:Chrome, 浏览器是我用的最频繁的软件了。安装了一个使用统计插件,发现自己平均每天用 Chrome 的时间有四个小时左右,浏览网页超过 500 个。Chrome 强大的同步功能,使得我在重装后体验和之前几乎一样。还安装了 IE9 Opera,  FireFox.

浏览器是电脑目前最重要的软件之一,Chrome 目前已经超过火狐成为世界上第二大浏览器。第一大是 IE, 不过我相信用 IE 的人群中有相当一部分还不知道什么是浏览器,拜微软所赐。不过中国就很特殊了,排名前两位的分别是 IE6 和 360浏览器,加起来超过了 50%, 这是多么可悲的一件事啊!IE6 是诞生于 10 年前的软件,身上还残留当年浏览器大战的痕迹。与标准不兼容,充满 BUG, 是所有前端开发者的噩梦。而 360 一个 IE 加壳浏览器,被流氓冠以“安全”之名,恐吓用户进行安装。互联网怎么能让流氓得道?

聊天:QQ, 不过现在用的少了。还安装了飞信阿里旺旺,分别用来发短信和淘宝网购。

工具:WPS 办公套件,office 的免费替代品,速度很快。有道笔记,一个可以自动同步的云笔记本。7-Zip, 开源解压软件。福昕阅读器,轻量级 PDF 阅读软件。QQ拼音输入法,很干净,没有广告。

多媒体:视频播放器 PotPlayer, 绿色无广告,轻量级速度快。图片管理器 QQ影像,批量编辑图片是个特色功能,我觉得比 picasa 好用。图片处理:GIMP,你可以理解为 PS 的开源免费替代品(什么,Photoshop 也是免费的?)

开发:CygWin, 一个运行在 Windows 上的 Linux, 可以安装各种 Linux 上的开发工具比如 GCC, GDB, Make, VI, Git 等等,配合 Notepad++ 文本编辑器,很实用。还有 Python, 虽然 CygWin 也有 Python 但一些第三方库依赖于 Python for Windows.

安全:这个真的不需要。我取消了那些所谓的安全卫士或者电脑管家和杀毒软件的开机启动项,电脑速度快多了。再也没有东西告诉我这次开机用了多长时间了,也没有一些弱智的提示,也不会有东西恐吓我电脑不安全,要装这个装那个了。事实上,这些安全软件拦截的通常是我自己的操作。当然如果你是菜鸟,或者经常上一些不健康的网站:) 建议你还是装上吧,心里也能有个安慰,虽然通常没什么作用。如果你喜欢自虐的话,建议安装 360 哦,这样你就可以体验到一遍一遍体检,把自己电脑折腾到 100 分的乐趣;会提示你这次开机又打败了多少人,没事还可以多开关机几次玩玩;会时刻知道自己电脑有多么的“安全”,这是多么开心的事啊!

如果有一些好用的软件,欢迎在此推荐。

PyQT 介绍和一些资源

这几天学习了 PyQt , 照猫画虎的做出了一个图形界面。

Python 是功能很强大的脚本语言,Qt 是跨平台的界面开发语言,二者的结合就是PyQt, 它是 Python 语言的 GUI (图形用户界面)编程解决方案之一,而 QT 是由诺基亚开发的应用软件框架。使用 PyQt 编写程序图形界面可以在不修改代码情况下在很多种平台比如 Windows, Linux 和 MacOs 上运行。

PyQt 官方网站:http://www.riverbankcomputing.co.uk/software/pyqt/intro

安装:

如果你使用的是 Windows, 需要首先安装 Python, 如果你对这篇文章感兴趣的话你肯定已经安装了 Python. 然后到 PyQt 官网上下载一个 Windows 安装包进行安装,注意应根据你安装的 Python 版本号进行选择。 PyQt 的 Windows 安装包已经包含了一份 Qt, 安装的时候注意选择你安装 Python 的目录。

如果你使用的 Ubuntu Linux, 那么已经默认安装了 Python, 运行下面命令就可以自动的安装所依赖的软件包:

sudo apt-get install python-qt4

然后运行命令:

sudo apt-get install python-qt4-doc

安装 PyQt 的文档和示例。

Eric 则是由 Python 开发的一款支持 PyQt 的 IDE, 可以很方便的使用 Qt Designer 设计界面,安装和使用可以看这篇文章:Eric+PyQt打造完美的Python集成开发环境。也许在编写大程序时 IDE 是很有用的,但我更喜欢用一个自己喜欢的文本编辑器手工 Hack.

学习资源:

PyQt Reference Guide

The PyQt4 tutorial

Rapid GUI Programming with Python and Qt

GUI Programming with Python: QT Edition

PyQt – PythonInfo Wiki

不过上面都是英文的,再次证明了学好英文对搞计算机的重要性。中文资料很少,有一个翻译了 The PyQt4 tutorial 的资源:

http://www.czug.org/python/pyqt4/

还有这个:

http://code.google.com/p/pyqt-doc-cn/

http://www.ibm.com/developerworks/cn/linux/l-qt/

在安装好 PyQt 后,程序自带的一些例子也是很好的学习资源。

Windows 中例子位于:python目录Libsite-packagesPyQt4examples

Linux 中例子位于:/usr/share/doc/python-qt4-doc/examples

在编写程序时,查看官方文档很有用,列出了所有模块中对象的可用方法、参数和它继承的对象等

我在使用 QtGui.QFileDialog.getOpenFileName 方法时,遇到如果文件路径中包含汉字时打开文件会出错的问题,估计又是因为该死的字符编码。我没有搜索到解决方法,最后自己试了几次,用如下代码解决了问题。我不知道为什么,但它能正常工作 :-)

fname = str(QtGui.QFileDialog.getOpenFileName(self, u'选择文件',
	'/home', u"ACMi 文件(*.acmi)").toLocal8Bit())
f = open(fname, 'r')

啤酒软件许可证(Beerware)

开源软件一般是有许可证的,最著名的就数 GPL (GNU General Public License), 你可以在这里查看几乎所有的开源软件许可证。如果你想找一个适合自己的开源软件许可证,可以看看这篇文章

一般软件许可证类似于繁琐的法律条文,但今天看到了一个非常有趣的的许可证:Beerware(啤酒软件)

许可证内容如下:

/*
 * ----------------------------------------------------------------------------
 * "THE BEER-WARE LICENSE" (Revision 42):
 * <phk@FreeBSD.ORG> wrote this file. As long as you retain this notice you
 * can do whatever you want with this stuff. If we meet some day, and you think
 * this stuff is worth it, you can buy me a beer in return Poul-Henning Kamp
 * ----------------------------------------------------------------------------
 */

对应的中文翻译是:

/*
 * ----------------------------------------------------------------------------
 * "啤酒软件许可证"(版本号:42):
 * <phk@FreeBSD.ORG> 写下了这份文件。只要你保留这份公告,你就可以用这个软件做任
 * 何你想做的事情。如果我们哪一天见面了,并且你觉得这个软件还是有点价值,那么
 * 你可以考虑请我喝杯啤酒作为回报。
 * ----------------------------------------------------------------------------
 */

其中为什么版本号为 42 也是有点来历的:在小说《银河系漫游指南》(同名电影)中,42 是终极电脑对问题:”the answer to life, the universe, and everything.(人生的意义)” 的回答。

用这种许可证其实类似于作者放弃版权或者说放入公共领域,所有人都可以随意的使用该作品。

鉴于国内盗版横行、漠视版权、法律不完善的现状,我就不想多说什么了。