F3507G折腾记

淘宝上搞了一个 Ericsson F3507g,于是我的小黑现在有 WCDMA 和 GPS 支持了

开门见山,对于同样使用 F3507G 正在寻求解决方案的同学,本文可能冗长,包含的最有用的信息均已总结在文章末尾,可以直接跳到倒数第二段。

拿到之后,立刻动手开拆。之前已经打印了一份 X200 Hardware Maintenance Manual 备查。

轻车熟路地拆去键盘、掌托,便露出 mini PCIE 插槽。很久没拆开,已经落满灰。小心吹了吹灰,插上数据卡,拧上螺丝,插上天线。

 X200 拆开

 X200 PCIE槽和天线

合上掌托,插 SIM 卡,装电池开机,居然找不到硬件!安装驱动程序,依然找不到。大囧。于是问店家,建议重置 BIOS 试试。虽然在 BIOS 里一点都没找到关于 WWAN 的选项(仅有一个 WLAN 和 WiMaX 的选项),但重置 BIOS 之后再开机,神奇地出现了找到新硬件。

安装 ThinkVantage GPS Enabler,上窗口试了一下,能搜到星。升级 Access Connection,能正常连接联通 WCDMA,信号很好,速度快,便心满心足地睡觉去了。(唯一不好的是流量跑得太快了!!!!)

 Access Connection

 ThinkVantage GPS

第二天,开始折腾如何收发短信——真是漫长的历程。

首先查看 Access Connection,竟然没有收发短信的选项。网上网友说,据传说 5.02 版是可以收发短信的,而我的 Access Connection 是 5.95 最新版。总不要为这个把我的 Access Connection 降级吧?鬼知道降级之后会不会和 Hotkey 之类的程序冲突。而 Access Connection 的 Help 里面明明白白地说:不支持对 F3507G 收发短信。

OK,那就另想办法吧。没有短信还是很糟糕的——毕竟流量花了多少,Access Connection 说的不算,联通下发的短信才算数。

网上有人说,可以安装 Ericsson 的 Ericsson Wireless Manager,即可使用短信功能,而且比 Access Connection 功能强大得多——至少 GPS 地图是 Google Maps 而不是坑爹的 Bing Maps。但据网友说,Ericsson Wireless Manager 是不能和 Access Connection 共存的,必须卸载载 Access Connection 才能使用 Ericsson Wireless Manager,否则 Ericsson Wireless Manager 无法找到 WWAN 卡。而且 Ericsson Wireless Manager 也有 Bug,比如说,如果关闭了它,就会自动给 WWAN 硬件断电——直到下次开机才能重新使用 WWAN,而且 ThinkPad 的 Fn+F5 控制将无效。那这也太坑爹了吧?

不过又有网友声称,他发现了一个完美的共存办法:使用 Access Connection 调用 Ericsson Wireless Manager。只需要在 Access Connection 的概要文件里设置,不使用 Access Connection 本身来连接网络,而使用其它程序连接网络即可。由 Access Connection 调用 Ericsson Wireless Manager 时,Ericsson Wireless Manager 将可以找到 WWAN 卡。而 Access Connection 仍然可以照常 Fn+F5 打开和关闭 WWAN 卡电源。

看上去不错,于是去找 Ericsson Wireless Manager 的下载。糟糕的是,原始地址是 sonyericsson.com,而我们都知道,这家公司现在已经改名叫 Sony Mobile 了——于是在 sonymobile.com 上根本找不到此软件的下载。

最后去其它网站找到了这软件。装上之后,一连串悲剧开始了……

有 Access Connection 的情况下 Ericsson Wireless Manager 当然找不到网卡,这已经是公认的结论。在 Access Connection 里尝试调用 Ericsson Wireless Manager 来连接网络,可是 Ericsson Wireless Manager 还是报告找不到网卡。更糟糕的是,Access Connection 现在也无法控制网卡了,总是报告:其它客户端程序正在使用 WWAN 卡……于是竟然怎么都没法上网了!

卸载 Ericsson Wireless Manager,问题依旧。卸载 Access Connection,卸载 F3507G 驱动,再重装驱动和 Access Connection,Access Connection 仍然死活无法控制 WWAN 卡。反反复复尝试用各种顺序卸载重装了包括 hotkey、Access Connection、驱动、GPS 在内的各种软件,结果不仅 Access Connection 无法找到 WWAN 卡,连 Fn+F5 里也显示不出 WWAN 了。甚至一度连 WLAN 图标和 Access Connection 中的其它概要文件都挂掉,各种诡异问题。

(之前网上还有网友声称 Ericsson Wireless Manager 是准绿色软件,无须安装直接拷贝即可使用。你妹的绿色软件!)

在彻底卸了所有能找到的相关软件并重装后还是不行,于是我一怒之下——系统还原了。

系统还原之后,终于一切正常了……不过仔细看了一下,这次提示找到新硬件并安装驱动程序的界面明显和之前不一样:之前每次重装驱动程序,都只提示为两个硬件找到了驱动程序;而现在是提示为六七个硬件安装了驱动程序。

所以目前我认为:Ericsson Wireless Manager 显然留了一些设置没卸载干净,导致其它程序无法使用 WWAN。同时,Ericsson 的驱动也很糟糕,也没有卸载干净。

于是继续尝试别的办法收发短信。

先装了一个 ThinkPad Lenovo Mobile Broadband (旧版叫 ThinkPad Lenovo Mobile Broadband Connect),据说可以用于收发短信。装了之后发现,它主要用途是向移动运营商激活 WWAN 卡。也许是在米帝的一些 TP 机型是包含运营商套餐的吧。支持 AT&T 和 Verizon,不支持大陆的任何运营商。于是卸掉。

接着,在 lenovo GB 网站上搜索 Ericsson,竟然找到了一个看起来像有用的东西:

http://support.lenovo.com/en_GB/downloads/detail.page?DocID=DS008212

Ericsson Mobile Broadband Manager

试着装上去之后,果然能用这个软件收发短信了!

但是在 ThinkVantage GPS 的说明页面,提示 ThinkVantage GPS 与 Ericsson Mobile Broadband Manager 不兼容,可能会导致报错,不过目前我还没有遇到过问题。

  Ericsson Mobile Broadband Manager

对于同样使用 F3507G 正在寻求解决方案的同学,本文包含的信息如下:

  • Access Connection 无法收发短信
  • 收短信可以使用 Ericsson Mobile Broadband Manager(Lenovo US 网站下载),据官网说法和 ThinkVantage GPS 有冲突,但我没遇到。
  • Access Connection 与 Ericsson Wireless Manager 不兼容。同时安装会导致两者都不能使用且很难恢复。所以一定不要重复安装!(可能和我使用的版本有关,版本见下)
  • Lenovo Mobile Broadband (Connect) 在中国大陆没有用处。

本人使用的软硬件版本(所有软件均已更新到能找到的最新版本,有些比 ThinkVantage System Update 提供的还新):

  • ThinkPad X200
  • BIOS 3.21.1.06
  • Windows 7 Ultimate SP1 X64 OEM
  • Ericsson F3507g Wireless WAN Windows 7 驱动程序 6.3.3.6
  • ThinkVantage Access Connection 5.95
  • ThinkVantage GPS 2.80
  • Hotkey 3.80
  • Ericsson Mobile Broadband Manager 版本 CXP 901 4396/21(6.1.6.2)

下面两个东西没有用,但也许只是我用的版本不对

  • Ericsson Wireless Manager 5.3.2076.12 (不能用!)
  • ThinkPad Lenovo Mobile Broadband (Connect) 3.5.0011 (没用)(X200 最新只能用 3.5,X201 以上可以用 4.1)

如何由一滴水推断出尼亚加拉大瀑布的存在

如何由一滴水推断出尼亚加拉大瀑布的存在

福尔摩斯有句名言

一个逻辑学家能凭一滴水推测出大西洋或尼亚加拉大瀑布的存在,即使他并没亲眼见过。
From a drop of water a logician could infer the possibility of an Atlantic or a Niagara without having seen or heard of one or the other.

这是一个有趣的题目。

对于这个题目,存在一种不严谨的快速解法:
地球上不可能只有一滴水。我们看见的是 “one drop of water”,于是我们当然知道水往低处流。既然有很多水,水又往低处流,就一定会汇聚成水池。海洋无非就是特别大的水池罢了。由于水会流动,当水经过有落差的地面时,就会出现像很多水滴同时下落的景象,也就是瀑布。当然这些瀑布会有大有小,其中肯定会有最大的一个。至于最大的叫不叫尼亚加拉,就是无关紧要的事情了。

上面这个推理其实破绽甚多。现在让我们试试一个学术宅的思路。

假设一个外星学术宅同学在一个阳光明媚的中午被莫名其妙地传送到了地球表面,他看见了一滴水从石头上落下。他能推断出多少东西呢?
做这些环境假设是有必要的,假如我们可怜的学术宅同学被扔到一个孤立系统中,那他啥也推断不出来——他甚至无法知道水到底是因为该房子在加速而落下的还是受引力而落下的。
我们再假设这个外星学术宅同学具有所有需要的自然定律方面的知识,而且拥有超人一样绝佳的观察力,以至于他本人就近乎是个精密仪器。

嗯,让故事从这里开始!
首先,这滴落下的水提供了重力加速度。由于技术宅脚下是坚实的地面,而不是别的什么东西,根据一个岩石行星的典型密度,可以估算出地球的半径和质量的数量级。
嗯,既然知道地球的质量,地球上最高的山峰会有多大也就可以计算出来了。地球没理由整颗行星都是黄金之类的奇葩物质,那概率太小了。按照一般的岩石的密度和强度,地球上可能的最高山峰的高度也就万米数量级。

再说水滴的形状。水的密度是知道的,重力加速度是知道的,温度约300K,此时水的表面张力也是知道的。那么,决定水滴形状的还有什么?只剩空气阻力了!由空气阻力得到大气的粘滞系数。粘滞系数决定于气体的密度、自由程和速度。已知温度、气压(这两个又可以推出粒子数密度),则由粘滞系数可以估算出平均分子量。至此大气的大致性质有了,由引力我们就可以估算大气层的厚度大约是万米量级。

信息似乎有点少。离推理出尼亚加拉瀑布还有距离。噢,前面说过,这是个阳光明媚的好日子!于是该外星学术宅由可见光波段阳光的辐射谱,推测出太阳的表面温度大约为6k开左右。

嗯,被吸收掉的光呢?分析一下?这星球上有氧气!有水汽!
有氧气就意味着几乎一定会有生命,不然氧这种活跃的元素一定会和铁等元素结合。空气中有充足的水汽,这才是可能有大量液态水存在的证据啊!光谱还会提供大气气体成分的大致信息,因此空气的平均分子量一定是介乎氧和氮之间。于是可以对气体平均分子量可以获得比刚才由粘滞系数开始的估算更为精确的估算。
姑且还是不让学术宅看见太阳的大小吧,那就太泄露天机了。假如他看见的话,而且他又能极精确地测量太阳的视运动(其实前面已经多次假设这外星学术宅不是人了),估算太阳的大小和日地距离的数量级并不困难。

刚才已经有了太阳辐射的测量,因此有太阳常数。大气层的尺度、成份,加上输入的太阳能量,这个大气层一定会有风。而且风的速度也可以估算一个数量级范围,虽然现在只能估算一个非常非常粗的范围。

大气中有水汽,是否就一定说明有海洋存在呢?论证这点比较困难。

我们来继续推理!
如此巨量的氧气意味着至少有同样数量级的二氧化碳或者其它什么东西已经被这星球上的生物固定下来。甭管它是碳还是硅,葡萄糖还是硫。这些生物中的生产者,肯定不可能主要存在于天空。故而地表一定会受到影响。
所以决定地表形状的几种主要作用都被找出来了:地壳运动、风、可能存在的水和生物。

由于地表生物的存在,地表风速不可能很大。所以风不是塑造地貌的主要因素。

由光谱可知,这是一颗不太老的恒星,因而该行星应该仍然有地核运动。地壳运动必然是塑造地形的主要因素。所以就会有山。山的高度的上限前面已经估算,这颗星球那么大,总不会连座上千米的山都没有吧?因此一定会有雪山,有雪山,在太阳照射下,就会有河流。

有河流就会有瀑布!!!!

可惜福尔摩斯同学不知道地球是绕着太阳转的,所以福同学必然不会使用这条路径来推理出尼亚加拉瀑布的存在……

这篇文章写到这里还很不完整。因为,下面我也推理不出来了……
只是一时兴起之作,目的是为了佐证福尔摩斯的观点:世界上的一切事物都是联系着的。
如果喜欢本文的话,欢迎指出漏洞,或是帮忙一起完善整个推理链条,推理出更多的东西!
在推理本文的时候,我十分惭愧地发现,有那么多大一及之前学的东西现在已经忘了,不google就写不下去……

HTC ChaCha 入手感觉

旧I780在去中科院报到的前夕忽然坏掉,让我无限怀念。作为一日不可无手机的人,只能在一周内迅速买了一部新手机,HTC ChaCha,又称G16。

作为直板全键盘控,本来可以选择的手机就不多。恰好这机器还不太贵,于是就入手了。水货有一个Facebook键,行货是QQ键。水货机可以刷国行ROM(但国行ROM并不那么理想)。

先说说这款手机的优点:

  • 键盘手感非常好,软硬适中,既清脆又不显得过硬。弧形设计,握感舒适。打字暴快。导致我九月竟然不知不觉间发出了七百条短信(平时每月只有两百条)。如果常在手机上打字的话,它的效果真的没的说。不管你用短信、微信、飞信、电邮还是人人网,打字快总不是坏事。
  • 512M RAM对于日常安卓使用完全够用。
  • 不到3寸的屏幕,分辨率却高达320*480,显示十分细腻。
  • 安卓系统,可以保证有最新流行软件可用。

总体来说,一部标准HTC安卓手机加配一个手感绝佳的键盘。

下面对安卓系统进行吐槽。(对安卓了如指掌者可以跳过此部分)

安卓系统真的是一个糟糕的手机系统——和Windows Mobile相比。它的流行再度证明了一件事:在IT业界,胜利者往往不是技术最好的,而是商业运作最好的。

  • 第一点:奇高的资源开销
    • RAM
      遥想WM时代,128M RAM走遍天下都不怕。而安卓呢?咳咳,系统就占100M左右。当年第一代安卓手机有一些只配128 RAM,那真是卡死你没商量。刚才说的只是系统,还没算必要的开机启动服务什么的(比如说拨号、短信)。一个正常的系统,开机加满该用的软件,少量用户自己装的软件(比如微信),就奔300M去了。所以256 RAM仍然是紧巴巴的,什么HTC Sense之类的桌面是别想了。但512 RAM又似乎永远用不光。

    • ROM
      至少一百多兆的ROM占用。像HTC ChaCha这样预装软件多了,竟然要占260M ROM
      奇费电
      像ChaCha这样屏幕不足3寸的机器,1250mAh也只能保证一天一充。
      运行效率奇低
      绝大部分Android软件都是Java软件或者sh脚本。所以一点都不奇怪为什么安卓手机跑同样的应用,就是需要更多的RAM和更好的CPU。

  • 第二点:奇扯的内存自动管理

    不用程序的时候就点叉叉关掉程序。这是在PC上已经沿用多年的设计。自从苹果神经病地搞出了只能单任务操作的iphone之后,无数人跟风。现在安卓和WP7的内存自动管理这种脑残设计不能说没受到苹果的影响:你不需要去点叉叉来关闭程序,大部分程序也没有叉叉可以让你点。任何没有显示在最前端的应用程序都会被纳入系统的自动内存管理,并不退出,直到内存不够时系统再自动终结它们。

    支持内存自动管理的人会说,它有这样的好处:加快常用软件的启动速度(因为它们一直就cache在RAM里没退出),减少用户操作,避免不会用手机的人开了一堆程序把手机搞得很卡,blabla。若有真的希望驻留后台永不结束的程序,开发人员可以声明嘛。

    对此我只能冷笑:这种政策的唯一结果就是:让用户丧失了选择权。那些流氓的软件会声明让自己驻留后台从而一直偷你的流量;你正经干个活编辑个文档,切到邮件程序看下邮件再回来,却有可能发现你的Office已经在没有存盘的情况下被终止。

    不过总体来说,内存自动管理并不算安卓的一个非常失败的地方,只是我很不爽罢了。

  • 第三点:软件不能装在卡上,无语的设计

    安卓2.2之前并未提供把软件安装在SD卡上的方法。必须依靠第三方软件。这真的是让人极其无语。2.2提供把软件移动到卡上的方法之后,却又有很多软件不能移动。2.3时,终于非系统软件几乎都可以移动了。但dalvik cache和data还是不能移动。(关于SD卡安装程序的概论,请见我的下一篇博文)(因为那些技术都已经过时,“下一篇博文”没有被搬运过来)

    如果你把data移动到卡上,那么就会耗电飚升,让安卓本就可怜的电量进一步受到挑战。当然,官方不提供data迁移还有两条可能的理由:降低系统反应速度、严重降低SD卡寿命。

    Windows Mobile是可以把一个用户程序的所有文件装在卡上的,既没有文件碎片问题,也没听说有反应速度问题,更没听说过有损坏SD卡的情况(FAT32文件系统+仅少量的数据读写)。

  • 第四点:堆积如山的垃圾文件

    这东西的垃圾文件相对增长速度绝对比大家骂得要死的Win98要厉害得多!/data的可用空间总是在不断减少,而你根本不知道怎么回事。有一次我清了一下联系人数据(共两项,“存储联系人信息”和“联系人”),竟然立刻少了25M占用,重新同步联系人,我的手机和清联系人之前完全一样了,可是这次只占了2M空间。呃,那23M的垃圾是什么呢?除去15M“联系人信息”主要存储的是联系人头像,其中可能有人人网同步头像产生的垃圾(再骂一下人人网安卓版的拙劣设计),另外8M属于“联系人”的垃圾数据是什么我大概永远不会知道了。也就是说,人人网为我带来了12M垃圾(扣去正常同步后头像应该占用的3M空间),安卓系统为我带来了8M垃圾。仅仅“联系人”一项就是如此。情何以堪。

下面再说这机器作为安卓机器的两大突出缺点。

  • ROM太小

    虽然是512M ROM。但是/system分区直接划掉了266M空间。/cache划掉35M,/devlog 10M,各种杂七杂八的分区,最后留给/data的竟然只有150M。
    这150M /data是什么呢?是整个ROM你唯一有权限读写的地方(无ROOT权限情况下)。你的所有用户程序、用户数据(哪怕是联系人、短信也不例外)、程序数据,全部在这可怜的150M中。(windows mobile想用得滋润还得至少256 ROM,这150M 够谁用的?!)
    新系统就占掉30M左右,你还有20M的保留空间绝对不能动,因为剩余空间小于20M时你就无法从Google Accounts等帐户同步联系人和日历等。而用户数据是会一天天增长的,于是你就会看着你的ROM空间一天天变小。直到你不得不删掉一个又一个软件来保证ROM空间。我最后删到无可再删时,看了一下,使用一个月,我的/data/data高达80M。其中用户数据近70M。也就是说,使用一个月后,你还有总共30M的空间供你装各种软件。对于一个任何用智能手机的同学,30M空间能装点什么软件呢?尤其是安卓软件这样占地方的?
    所以我几乎每用一个月就必须清一次机器恢复出厂。(直到我把/data/data也移到卡上)
    (所以,同学们,安卓512M ROM是绝对不够用的。尤其是HTC,不会给/data保留多少空间。我见过一个三星手机,/system只有一百多兆,但是诡异的是RAM占用率奇高,比我的机器要高很多。不知道是不是三星把一些系统文件压缩存储之故。)
    所以其实对于这个手机512的RAM简直就是奢侈:你把ROM全加载到RAM中也不过512而已嘛。所以我从未成功地把RAM剩余空间用到200M以下过。(直到我把/data/data也移到卡上)

  • 电池太小

    很怀念I780的1800mAh电池。新手机只有1250mAh的电量。
    我还在原装系统折腾时,就惊讶地发现这手机的电表几乎是以你可以看得见的速度在掉:每一两分钟就掉1%。不过后来关了一些耗电的服务,发现待机时耗电还是很少的。开始上课后,不像刚买手机还没上课时那么折腾,注意睡觉时调到飞行模式,于是正常使用,短信电话不多的话,还是可以撑满一天的。
    但是这手机也就仅限于满足短信电话了。但凡想拿手机打个游戏、坐车时上网解解闷,那是一定得准备好充电器或者第二块电池了。
    糟糕的是,当我把/data几乎完全移到SD卡上以一劳永逸地永远解决ROM不够问题后,耗电陡然大增,现在竟然需要一天两充才能坚持住了。
    所以这机器的ROM RAM 和电池就是一个悖论:你如果想充分利用你的RAM,而不是永远只用到300M RAM,那么你就需要解决你的ROM不足。解决ROM不足的唯一办法是把/data搬到卡上,这反过来又会导致你电量不足。如果你希望它电量够你用一天,你就面临ROM不足和RAM过剩。

纠结的联系人同步问题

曾几何时,用Windows Mobile和PC上的Outlook同步是多么方便的一件事情!在手机上点开同步,稍等片刻,联系人、日历、任务就通过蓝牙同步好了。至少五年前,几乎所有的手机(支持连接电脑的)就已都支持和Outlook同步。在买手机之前我从来没想过和Outlook同步竟然会成为问题。
而很抱歉,安卓不是原生支持与Outlook同步。只有使用厂商提供的HTC Sync。
辛苦二十年,一夜回到解放前——HTC Sync同步之后,竟然所有在手机上更改过或者访问过的联系人全都变成了名前姓后。而且HTC Sync还不支持蓝牙同步。这让我感觉一下子回到了当初用Moto E2的年代。更糟糕的是,所有被更改过的联系人的生日事件都被会重新创建一遍。这让你每次在手机上修改过一次联系人都要面临一系列麻烦的后续操作。
HTC Sync是一个特么SB的软件有木有!特别容易卡死,CPU占用率巨高,同步速度还巨慢。果然HTC没了微软,连个同步软件都做不好,衰得够可以的。
在以上劳师动众的辛苦之后,还只能同步“联系人”和“日历”。而“任务”在安卓下根本就没有对应物。
最后只能想办法把Outlook和Google Accounts同步,再把手机和Google同步。虽然很不完美,但也只能暂且这样了。

在Visual C++ 2010中使用getopt

getopt是UNIX和Glibc下的一个十分有用的东西。但是因为并未列入C和C++标准,所以Visual C++并不支持#include\<getopt.h\>
那么,希望使用嵌有getopt.h的源代码,或者在自己的代码中使用getopt()该怎么办呢?

大致来说,你肯定需要搞到一个可以用的getopt.h和getopt.c。最常见的是GNU的实现,但使用它意味着你需要遵守GPL。所以网上也有一些其它的实现。到底使用哪个则由个人喜好决定。

有了源代码之后,你有两种选择,一是将getopt.h和getopt.c加入你的project中。或者你可以将getopt.h列入你的VC include路径中,编译getopt.c并列入你的VC链接库路径中。

在实际配置你的VC时,有两个问题:1是你会发现Glibc中getopt相关的C文件并不止一个;2是编译GNU getopt.c你似乎还需要一些其它的配置。

于是有一个懒人的选择:
http://ieng6.ucsd.edu/~cs12x/vc08install/vc08install2.html
在此链接中,给出了配置Visual C++ 2008的极其详细的步骤。如果你使用VC2008的话,直接下载此页面的getopt9.zip并按说明配置即可。你就可以将getopt的h和lib加入VC。
它提供的getopt.c基于GNU的getopt并包含了GLib中和getopt相关的所有东西。tailor.h可以让你顺利地编译出GNU的getopt实现。所以如果你希望直接在你的project中使用getopt,也可以直接把getopt9.zip中的tailor.h,getopt.h,getopt.c加入你的project即可。

 

如果你和我一样使用的是VC2010,那么,就不能完全按照此网页的说明来配置了。它提供的编译好的getopt.lib是使用VC2008编译的。而作为一个Win7+Visual Studio2010用户,我的system32文件夹下没有msvcr80.dll,只有msvcr100.dll。所以如果直接使用它提供的lib,你的程序会无法运行。
你需要解压getopt9.zip之后,双击src目录下的vcproj文件,打开VC2010,把getopt.h拷到src目录下,然后在debug和Release模式(重要!)下分别编译这个project。不用担心配置问题,suo文件已经配置好了,直接F7 Build就得到你要的lib文件。
然后按网页说明配置VC。
其中配置include和lib路径一项,VC2010和2008的设置方法不一样。你需要点击:View->Property Manager
在property manager中展开项目名称->Debug|Win32->Microsoft.cpp.win32.user项目,双击,VC++ Directories,然后添加include和library路径。
同理,在Release|Win32->Microsoft.cpp.win32.user中添加路径。
这样添加的include和library路径影响所有project。

如果只欲调整这一个project的路径,菜单Project->properties进行配置。

最后,为了保证你的Linker知道寻找getopt.lib,请按以上方法,进Properties Manager或者Project Properties展开Linker->input->Additional Dependencies,在其中加入getoptd.lib(debug模式下)和getopt.lib(release模式下)。同上,Properties Manager中的Microsoft.cpp.win32.user影响你的所有project,而Project Properties只影响一个Project。你一定不希望你编译的所有程序都链接了getopt.lib,所以,只在要用到的project里链接就够了。

爱因斯坦与《自然辩证法》

网上有一种广为流传的说法,说爱因斯坦评论恩格斯的《自然辩证法》为“疯人之言”。亦有人考证说原文并非如此,而是“没有特殊的趣味”。

我试图考证,却发现事实真相并不容易揭露。

这段话出自中文版《爱因斯坦文集》,这个《文集》是国内汇集和爱因斯坦相关的文献而出版的,所以并没有对应的英文版或者俄文版。现摘录原文及附注。

文集中爱因斯坦的话被翻译如下:

对恩格斯《自然辩证法》手稿的意见

爱德华·伯恩斯坦 (Eduard Bernstein)先生把恩格斯的一部关于自然科学内容的手稿交给我,托付我发表意见,看这部手稿是否该付印。我的意见如下:要是这部手稿出自一位并非作为一个历史人物而引人注意的作者,那末我就不会建议把它付印,因为不论从当代物理学的观点来看,还是从物理学史方面来说,这部手稿的内容都没有特殊的趣味。可是,我可以这样设想:如果考虑到这部著作对于阐明恩格斯的思想的意义是一个有趣的文献,那是可以出版的。
Albert Einstein

编译者的注释如下:

这是爱因斯坦于1924年6月30日写给E.伯恩斯坦的意见。这里译自梁赞诺夫为1925年版《自然辩证法》所写的序言中所用的引文,见德文版《马克思、恩格斯文库》(Marx-Engels Archiv)第2卷,法兰克福,1927年,141页。译时参考了俄文版《马克思、恩格斯文库》第二卷,莫斯科-列宁格勒,1925年,XXVI页,标题是我们加的。

按:伯恩斯坦于恩格斯逝世(1895年)后,长期隐藏着《自然辩证法》手稿,制造各种借口,不让出版。1924年春天,联共(布)中央派梁赞诺夫到德国向伯恩施坦追查恩格斯的这部遗稿。伯恩施坦为了推脱罪责,就把这部手稿送交爱因斯坦,要他发表意见。爱因斯坦囿于资产阶级的偏见,根本不理解《自然辩证法》这部辉煌文献的深刻内容和伟大意义,结果作出了完全错误的评论。梁赞诺夫在他写的这篇序言中说,当时伯恩施坦并没有把恩格斯的全部《自然辩证法》手稿送给爱因斯坦,而只送去一束主要关于电和磁的那部分手稿。美国反共哲学家西德尼·胡克(Sidney Hook) 在他的一本专门攻击马克思主义的著作《理性、社会神话和民主》(Reason, Social Myths and Democracy)中说,伯恩施坦于1929年在柏林告诉过他:爱因斯坦当时是看到了《自然辩证法》全部手稿的。在这本书中,胡克还引了爱因斯坦于1940年6月17日给他的这样一封信:“爱德华·伯恩施坦送来全部手稿要我出主意,我的评语是对全部手稿而说的。我坚信,要是恩格斯本人能够看到,在这样长久的时间之后,他的这个谨慎的尝试竟被认为具有如此巨大的重要性,他会觉得好笑。”(见胡克:《理性,社会神话和民主》,纽约,人文学出版社,1940年,226页)对恩格斯的《自然辩证法》手稿的任何污蔑,当然无损于《自然辩证法》所揭示的真理的光芒,同时也丝毫抹煞不了这部伟大的著作对现代自然科学发展的伟大指导意义;真正“可笑的”,恰恰是爱因斯坦的无知和他的顽固的资产阶级偏见,是反共小丑胡克之流的卑劣的用心!——编译者

抛去注释中带有时代特色的有趣段落。我们可以知道,这段话来自苏联的梁赞诺夫为德文版《马恩文库》所写的序言中的引文。其外文原文很可能经过了德文-俄文-德文的两重转译,现在又第三重译为中文。原貌已经很难保持。而找到其原始文献难度恐怕也是很大的。所以我就此住手了。不知道有没有同学可以找到原始文献。

当然,现在我们可以公允地说,恩格斯的这套自然辩证法竟然一度僵化地被若干个国家用以指导全部科学研究长达几十年,实在是中世纪后科学史所见证的最大笑话之一,恐怕如爱因斯坦所说,“要是恩格斯本人能够看到,在这样长久的时间之后,他的这个谨慎的尝试竟被认为具有如此巨大的重要性,他会觉得好笑”。

浅论电池选购

于2020年2月修订部分内容

构成电池性能的有很多指标,有些种类的电池在某项指标上很优秀,但是在其它指标上可能会非常糟糕。所以选购电池需要根据实际需要,并不是越贵的电池就越好。

简单列举一下市面常见的电池吧

  • 碱性电池
    • 个体差异非常大,不同品牌的电池几乎可以看作不同的电池,但此处不再按品牌详细列举
  • 碳性电池
  • 镍氢电池
    • 低自放电池
    • 普通镍氢
  • 镍镉电池
  • 可充电锂离子电池
  • 一次性锂锰电池
  • 磷酸锂铁电池
  • 一次性锂铁电池
  • 锌空气电池

用的人非常少的电池,比如南孚聚能镍,松下氢氧电池等就不列入本文讨论范围。

先概述一下各种电池的特点。一次性电池的普遍特点是低自放,可以长时间存储。而充电电池大部分自放电明显。充电电池中,锂电池充电技术简单,而镍氢电池快速充电技术复杂。

  • 碱性电池

    优点是容易买,突出缺点是大电流放电下容量急剧衰减。

  • 碳性电池

    没啥好的,除了便宜。

  • 镍氢低自放

    除了贵之外几乎没有缺点的电池。作为镍氢电池,充电器还是需要一小笔银子。

  • 普通镍氢

    突出缺点是自放电率太高了,充电器贵(如果你想充20小时,当然可以买便宜的充电器)

  • 镍镉

    突出优点是内阻小,非常适合大电流应用;致命缺点是记忆效应严重。

  • 锂离子可充电电池

    非常好的电池,现在无处不在。缺点就是如果没电了不好补充备用的一次电池,另外劣质电池有生命危险。

  • 一次性锂锰电池

    常见型号是手表用的CR2032和相机、手机用的CR123A。性能优异,但价格偏贵。

  • 磷酸锂铁

    下一代锂充电电池,非常好。

  • 一次性锂铁

    下一代一次性电池,如果在淘宝上买的话性价比很高,商店就太贵了。

  • 锌空气电池

    助听器电池。容量超大,其它特性极差,不适合几乎其它所有场合

更详细的对比见下表

电池 价格 自放电 放电平台电压稳定性 内阻 高电流放电容量 小电流放电容量 电压 记忆效应 循环寿命 充电技术 过放电后果 过充电后果 保存时间 低温特性 环境污染
碱性电池 便宜 极低 不一 中高 1.5V NA 一般
碳性电池 非常便宜 较低 很大 很低 很低 1.5V NA 流浆
低自放镍氢电池 不一 中高 中高 1.2V 极好 复杂 减寿 减寿
普通镍氢电池 不一 1.2V 复杂 减寿 减寿
镍镉电池 极小 1.2V 不明显
可充电锂离子电池 中高 很高 很高 3.7V 几乎没有 简单 极大减寿 爆炸 中短
一次性锂锰电池 极低 极小 很高 3V NA 一般 非常长
磷酸锂铁电池 中低 3.7V 简单
一次性锂铁电池 不一 较低 非常高 非常高 1.5V NA 一般
锌空气电池 极高 1.45V NA 流浆

几种特定场合的电池选购

在常规使用场合,使用何种电池的差别不是很大。但是有几种特别看重电池的某一方面特性的使用场合,如果买错电池会造成几倍的成本支出。故此特别讨论一下。

  • 需要大电流放电场合
    原则上绝对不要使用碱性和碳性电池。这两种电池在大电流放电下容量损失高达一半以上。如果不得已要使用的话,不要买南孚和劲量这种昂贵的电池,据实测南孚和劲量的大电流放电效果并不好,买5毛钱一节的便宜电池就行了。

    典型应用:四驱车、数码相机、电动剃须刀

    更新:现在大部分需要大电流的小电器已经不再能安装碱性/碳性电池。使用五号电池的相机几乎绝迹。这些设备现在只能使用锂离子电池或一次性锂锰电池

  • 低电流长时间使用场合

    不要使用普通充电电池,贵,自放电率高。买低自放的话,三年才换一次电池,你的充电电池又能充放几个周期?并不划算

    典型应用:遥控器、石英钟

  • 高电压稳定性场合:

    如果要使用五号电池,自己测试不同牌子吧。我觉得劲量的电压稳定性比南孚好。

    典型应用:LED手电筒

  • 低温使用:

    需要买特别能抗低温的电池。三洋低自放镍氢还是不错的。

    CR123A也是不错的选择

碱性电池

碱性电池是一种特别大路货,用的人特别多的电池。但是不同牌子的性能差别非常大

有人做了各种电池在数码相机上的实测对比,我亲测了几种电池之后,发现楼主说的基本都是对的。他说南孚和劲量很烂,远远不如松下,我还不信。没想到拍出来真的是这样。故而附上链接:http://dcbbs.zol.com.cn/57/3_560295.html

碱性电池有很多种指标,所以并不是说这篇文章中批评的电池就不是好电池,只是不适合大电流应用而已。每个厂商的关注指标是不一样的,用户的需求也是不一样的。就我感觉,劲量在LED手电筒上比南孚给力,因为它可以保持较长时间的高电压;但是在数码相机上,虽然两者都很烂,南孚还是比劲量强一点的。

我使用的电池

本文写于2011年,九年之后我使用的电池也发生了很大的变化。手机已经内置电池不能更换。日常生活中还使用电池的地方不多,列举如下:

  • 手电、头灯、自行车灯:基本上使用18650锂离子电池或CR123A锂锰电池。常温用18650,低温用CR123A。5号电池的手电/头灯因为容量太小,已经不大用了
  • 遥控器、无线键盘、电子体温计、万用表等使用碱性电池,大概三四年一换
  • 游戏手柄、老式无线鼠标等经常需要更换电池的设备还在使用镍氢低自放。我使用 eneloop 和 AmazonBasics
  • 相机是唯一还在使用定制的可更换电池的设备。其它设备基本都内置不可更换电池

浅谈Word中的主题与样式

样式与主题

样式与主题都是Word中用于快速调整大批量文本格式的有力工具。不免很多人因此困惑该用哪一个。花了一点时间研究之后,我准备总结一下我的一点经验。

样式是一个古老的功能,很早开始就内置于Word当中。通过它们你可以快速地设定全篇文档不同层次文本的所有格式,是长篇文档排版必备。样式集存储在不同的模板中。默认样式存储于normal.dotm。

主题则是Office2007开始提供的新功能。主题包括哪些方面呢:字体(注意它仅有正文字体和标题字体两重设置,没有格式设置也没有其它”强调文字””标题2″等其它样式的设置)、颜色、图表形式、PPT背景。主题是没有默认主题的。主题存储在thmx文件中。

那么总结一下,样式主要是用于设置文本的,主题主要是用于视觉效果的统一。因此,对于PowerPoint,主题更为重要;而对于Word,样式集更为重要。(所以你可以看见,在PowerPoint里,一个大大的设计选项卡专门用于主题设置。而两者的共同点:快速套用微软已经设计好的大批设置,不用在自己细调设置使它们协调。 

(插一句,那么,在PowerPoint与Word样式集对应的存储在模板中的纯格式内容是什么呢?是幻灯片母版。)

层次1 主题,对Office三大件都可设置
层次2 Word的样式集,PowerPoint的母版

什么时候用样式?什么时候用主题?

如果你只需要写一份Word文稿,样式集可以提供你更详细的设置。主题可酌情选用,不用也可。

主题在做一系列文稿时(比如你既需要提交报告,又需要做展示PPT,还要在Excel里做两个表格),使用主题可以使你的不同类型文档具有统一的风格。

如果你需要调整SmartArt图形的风格,主题也是有用的。

那么,两者可不可以一起使用呢?可以。它们本就不是一个层面的东西。主题是更高层次的。之所以会要将两者进行比较,原因是:这两者有一些调节范围是重叠的,比如字体。

这就引出要注意的问题了:样式与主题有一个相同点就是:如果你更改过文本的任何格式,再调用它们时将不会达到你理想的效果。比如说,如果你设置过字体,那么样式的字体就不会应用于其中。如果你更改过段落缩进,那么样式中的段落缩进也不会再应用于其上。所以,重复使用主题和样式的时候,就需要注意两者的次序问题。如果你使用了效果冲突的主题和样式,其中的一个的部分效果就会被掩蔽。我试验的结果好像是一般情况下主题掩蔽样式集,除少数情况外。但总而言之,无论是样式还是主题都不要频繁更改,因为word经常会出一些bug导致之前的样式有残余影响。

简要对比:

项目 样式 主题
文本 所有格式 只能设置字体
段落 不能
边框编号等 不能
颜色
效果 不能
SmartArt图形风格 不能
编辑文档时从网上下载 不能
新建文档时从网上下载 能(下载模板) 不能
着重点 复杂的文本格式 图形效果与整体风格搭配

再说另一个问题:主题和样式都被微软吹嘘为轻松获得专业设计水准的文档效果。但是实际呢?这些主题和样式集,在英文下的确效果不错。但是可惜的是,中文的主题还不错,而历史悠久的”样式集”质量就实在不敢恭维了。居然会出现宋体加粗或者中文字体斜体这样的排版大忌。Word的中文汉化水平一贯和软件的总体质量相差甚多。所以排版上没有常识也是可以想见的。所以真正懂点排版的同学,还是手调样式集为宜。

从Word公式编辑器的一个Bug的解决方法说到不推荐使用Ctrl空格切换中英文

Update:
原文中的链接已经失效,去除超链接
原文推荐使用 左alt+shift 切换中英文,在 Win10 系统中,已经无需专门按左Alt,右Alt可以起到相同作用

从Word公式编辑器的一个Bug的解决方法说到不推荐使用Ctrl空格切换中英文

中文版Word2007 2010的公式编辑器存在一个非常要命的Bug,目前微软也没有给出解决方法。我非常希望Word下一个补丁可以解决它。
言归正传,众所周知,录入数学公式时,函数正体,变量斜体。虚数i等常数按习惯(比如i是正体,e是斜体)。但是中文版Word2007/2010中的公式编辑器竟然不能将变量自动斜体,而需要用户手调。
(从网上的文章来看,联系客服的结果是,微软居然自以为得计,认为这是一个feature。如果想实现自动斜体,微软的建议是装英文版Word。我了个去,微软中国的软件工程师真的智商堪忧得很。公式中的中文不能斜体,不代表用中国人公式中的英文也不能斜体吧?把公式中的中英文分别对待在技术上有那么难吗?)

下面要说到这个问题的两个解决方法了。
第一个方法,也是我推荐的方法,就是切换到英文“语言”之后再录入公式。这时公式的显示就正常了。如果你确实有英文“语言”的话(我说的不是“中文(简体)美式键盘”,而是将那个CH图标切换为EN),按左Alt+Shift即可切换。
第二个方法,则纯属利用漏洞。点击公式设计面板上的“普通文本”按钮两次,则公式自动转为斜体。可以写一个宏来自动完成这个操作。
区别:使用第一种方法,中文不变斜体;第二种方法中文则会变斜体。

参考:
http://yujiajin.wordpress.com/2008/09/28/ms-word-2007公式编辑器默认非斜体的解决方法/
http://hi.baidu.com/lambkin_guzhu/blog/item/cea8a9dd929717e577c6384a.html

下面要说到第二个问题了:如何切换中英文?
目前无外乎三种方法:输入法提供切换功能(比如说搜狗和微软拼音是按Shift切换);Ctrl空格切换“有无输入法”;上文提到的左Alt+Shift切换语言。
第一种方法的缺点是:有的输入法切换到英文状态后仍然是中文标点,在对标点有要求的时候就务须慎重。优点是方便快捷。
第二种方法的缺点是:对于有些笔记本电脑,容易误按成Fn+空格,而不少笔记本电脑的Fn+空格是有定义的,会造成不必要的麻烦。
第三种方法有一个很大的优点:那就是我们切换到英语之后,可以使用“美国英语-国际”键盘!这个键盘(或者说输入法吧)有一个极大的优点(我前面的日志提到过)就是可以方便地输入各种法语德语中字母的上标。比如说ê这个字只需要先按^再按e就可以录入。

综上,一般时候我们可以用输入法内置的中英文切换,而在Ctrl空格和Alt+Shift中,我更推荐后者。

WORD2007中文版翻译BUG一枚

波浪线下面一个等号,“≅”,这个符号转义符是\cong,即 congruence 的简写,也就是说这是全等号

但是在 Word 2007 的公式编辑器中,鼠标移到这个符号上面,会显示“约等于”!这可以算是一个中译的BUG了。

下面的几个算是译得不准:
约等于号\approx “≈” 被 Word 说成是“几乎等于(渐近于)”,好吧,这个解释也不算错。
而相似符号\sim “∼”却被 Word 说是“约等于号”,雷啊!
\simeq,“≃”,Word 说是“渐近等于”

2020年4月更新:

经过查证,这并不是一个中文翻译错误。因为英文版 Word 里本来就是错的!

而微软犯这个错的原因是,Unicode 标准里对这些符号的解释就是错的,和数学家常用的意义不同。虽然另一个 ISO 标准中使用了正确的解释,但显然微软使用的 Unicode 解释。

对此的辨析见

https://math.stackexchange.com/questions/507609/when-to-use-congruent-vs-approximately

I780使用手记

这是一篇关于三星I780的使用感受。在旧博客中,原文分作上下两篇发出,现在合起来作为一篇发出。
当年对此机爱不释手,换 Android 手机之后很长一段时间都觉得 Android 手机降低了我的工作效率,万分怀念——2020年4月
 
I780陪我已经有两个月的时间了。虽然这两个月我没怎么太折腾我的手机,既没有刷系统,也没有刷字体主题。就连软件也不过装了三四十个(这还是算上已经被我卸掉的),但也算里里外外玩了个差不多。回顾一下,对于这部手机,我只有一个字:”爽!”。就是有人拿Iphone跟我换我都不换!如果它寿终正寝了,我的下一部手机一定还是一部差不多的手机。

依例还是先说硬件的使用感受。

  • 触摸屏这东西,没用它的时候觉得是个鸡肋,但用上之后就彻底离不开了。拿着别人的手机操作的时候也总想拿指头往屏幕上戳。果然是手机发展潮流,NOKIA个顽固公司到现在才推触屏手机可不是太晚了些么。本来我还挺喜欢I780的光电鼠标设计,觉得用鼠标点按钮比用手指甲点准多了。而现在我则已经练了出来,用大拇指甲点各种按钮又准又狠,完全不再用光电鼠标了。

  • Qwerty键盘打短信飞快啊!我使用郑码录入,(插一句,鄙人至今不会用手机拼音输入法,现在都记不住手机数字键盘每个键上有什么字母)郑码的平均码长是1.9键,这个值应该是没有算上空格。手机上打空格可不比打一般键快,所以折算下,打一个字应该需要大概不到2.9键。手指头灵活的人一秒击二键以上肯定是没有问题的(平均才每手每秒一键),这样算来就是一秒一个字,接近电脑上拼音输入法熟手的速度啦!键盘虽然比较硬,但是高速打字聊天时必然是双手同时操作,倒也没有像原来的手机那样总是打短信打得手疼。点讯梅花果然是好输入法,郑码本来重码就少,梅花又支持使用软件键和拨号键选字,这样就完全用不到方向键了。遗憾的是梅花在有些国外程序中无法打开硬键盘,只能使用软键盘录入。梅花的软键盘自带剪贴板等有用工具,但没有Ctrl Alt键也是个缺憾,弄得我现在手机里的每一种输入法都要使用(全屏手写除外,因为有bug)。

  • 握持手感不佳的毛病确实严重,握时间长了虎口容易酸。

GPS也是一个原先以为是鸡肋的东西。但是用了之后也日渐离不开了。开始我还只是用BeeLineGPS记录一下骑车轨迹,步行速度。为日全食而南下华东,尤其是在杭州的日子里颇得益于GPS。不管去哪里,都是打开谷歌地图一查就有路线。那时我的两个同伴本来还成天拿着杭州市地图研究,后来每当要研究去哪里,就说”王玄,上谷歌地图!”,反而埋怨我让他们养成了”GPS依赖症”。

原来一直用GPRS,网速对于文本来说也就是刚刚够用。EDGE相形之下简直就是网速如飞。北京用手机上网的人比较多,网速尚不明显,回家之后网速真是快!这两天正在试用中国移动mmarket,发现网速居然已经快到可以支撑在线音乐播放了!至于在线视频么,中国移动总是告诉我说:”由于人数过多服务器忙,请您稍后再试”。

WIFI虽然是个很爽的东西,但是假期在教室里的时间很少,所以用得不多。但是在图书馆自习的时候,随手就可以Google的感觉很不错!

由于I780的方屏总是会有点兼容性问题,所以我下载了一个微软官方版Windows Mobile 6.1模拟器,每次装软件之前先在模拟器中测试一遍。但还是会有测试通过而实际不能工作的软件,比如说spb shell,问题源于任务栏高度的设置不同。

——– 

现代PDA当然要以网络为中心。

I780支持蓝牙,WIFI(IEEE 802.11b/g),GPRS,EDGE,HSDPA(WCDMA)等多种数据传输方式。在宿舍用蓝牙,教室用WIFI,其它地方用GPRS/EDGE上网。如果将来哪天联通把移动打败了,我还可以转联通用3G。(不过目前我比较同意阚凯力教授的3G观点,3G是个注定失败的东西)

现在我三种浏览器(IE 7 mobile, Opera Mobile, UCWeb)都使用。IE和Opera都是WIFI/3G时代的浏览器,设计的目的就是为了兼容绝大部分WWW网页,所以非常吃数据流量,速度也不快。UC则相对中国特色,流量小,速度快。

IE全面兼容各种网页,但操作实在是太不便利了,既不支持拖拽,缩放也不大灵光。(模拟器里的IE是很好使的,天晓得怎么回事)但是目前对各种网页支持很好,都能打开。据网友说还可以使用网银,非同一般的强大。

Opera的特色是手机的操作方式搭配与PC几乎一样的显示效果。对于大部分网页都可以实现和PC一样的显示效果,支持PHP和JAVA,但对于未名BBS这样有复杂框架的网页尚有困难。最大的问题是对中文输入法支持比较差。Opera毫无疑问是手机上最好的浏览器,详细的缺点见我的另一篇文章。

UC操作、速度感受一流,但默认字体太小太难看,排版也逊于Opera,更不用说对WWW网页的兼容性极差。JAVA版QQ中自带一个很好的浏览器,不输于JAVA版UCWEB,但可惜在PPC版QQ中取消了这个组件,改为嵌入IE了。

现在我WAP以UC为主,偶而用Opera看新闻。WIFI用Opera,需要输入中文的时候切到IE。唉,竟没有一款完美的浏览器!WM模拟器下的IE除了费流量外,倒也可算一款完美的浏览器了,只可惜用不上。

兹列表如下:

浏览器 IE 7 Opera UCWeb
操作便利 极差 非常好
显示效果 一般 非常好
网页兼容 非常好
中文输入 正常 不正常 正常
启动速度 一般
打开速度 一般 一般
流量

使用中国移动139邮箱的Pushmail,使得紧急邮件我总可以一分钟之内立刻收到立刻处理。在南方的时候,用139邮箱传送了几封紧急的邮件。

WM平台的强大是无敌的。大名鼎鼎的PuTTY也有热心人做出了WM版:PocketPuTTY。于是我在手机上便也可以telnet/SSH登录未名BBS。但可惜它是国外软件,中文支持并不理想。没有内置GB2312编码,但好在有一个选项是“use font code”,所以也能打开未名,但显示略有问题。录入中文不支持硬键盘,必须使用软键盘或者手写,于是我现在写文章用手写输入法,到发帖时再切到英文软键盘输入“Ctrl+w”键,十分不便。

PIM乃是PDA的看家本领,PDA的最早设计目的。也是我买WM系统最大的动力。
WM,与其说是一个PocketPC,不如说它更主要的功能是一个PocketOutlookTerminal。
WM与OUTLOOK的大部分组件兼容都是十分完美的,比如联系人和任务。但也有一些组件如有一些OUTLOOK之外的功能就更好了,比如说日历(我很希望手机能够在我上课的时候自动静音)。

无数人买PDA的借口就是:”学英语!”。所以我也不能免俗,除去GTD之外,当然不能放过WM系统下丰富的英语学习软件了。
首推Mdict
另一个值得推荐的软件就Supermemo