旧日重来

生活·技术·点滴

概率加权的随机抽样 (Weighted Random Sampling) – A-Res 蓄水池算法

最近,Aulddays 遇到一个随机抽样任务。有一个对象集合,由于整个集合非常大,希望考虑每个对象的热门程度抽样出一部分对象来进行分析。把这个任务抽象出来,其实就对应了一个带概率加权的随机抽样 (Weighted Random Sampling) 问题。对应到不同的应用场景,可以对应解决搜索query抽样、商品抽样、网页抽样等任务。对于不加权的普通随机抽样,其实并不难解决,在样本集合非常大的情况下,还可以使用经典的蓄水池算法 (Reservoir Sampling) 来高效实现的抽样。但对于带概率加权的情况,就不太容易了... (阅读全文)

phpMyAdmin 启用 mcrypt #1045 无法登录 MySQL 服务器 Cannot log in to the MySQL server

安装好了 phpMyAdmin,运行正常,但登录之后提示建议启用 mcrypt。按照提示一路 yum install php-mcrypt,启用后却发现无法登录了,提示 #1045 Cannot log in to the MySQL server (#1045 无法登录 MySQL 服务器)。简单排查未发现明显问题,只好通过 debug 源码解决,记录在这里... (阅读全文)

GReader Archive - Google Reader 阅读历史存档下载工具

Google Reader 将在 7月1日关闭。虽然谷歌官方提供了Take out用于导出用户数据,但导出的范围仅限订阅列表、关注列表、加星或分享过的条目之类,而阅读过的大部分内容则很难找回来了。GReader Archive 这个工具可以让大家从 Google Reader 下载到订阅数据源的所有历史数据... (阅读全文)

Linux Shell 进制错误 - value too great for base (数值太大不可为算数进制的基)

Linux Shell 编程进行数学运算时,如果有字符 '0' 打头的数 Bash 会当做八进制解释,而这经常会引起问题。比如我们用"08"参加运算,本意是当做10进制的8,实际却会运行报错。... (阅读全文)

SecureCRT 连接 Linux 主机中文复制粘帖后出现乱码

使用 SecureCRT 登录远程系统后,中文可以正常显示,但复制中文再粘帖后却出现乱码。百思不得其解。经过测试后发现,原来是 Aulddays 自定义终端显示字体后产生的问题... (阅读全文)

Firefox 开始兼容 Chrome 的扩展

最近,Google Chrome 的发展势头相当迅猛,千呼万唤始出来的扩展功能也大受欢迎,各种新的扩展层出不穷。另一方面,非 IE 浏览器的老大 Mozilla Firefox 显然受到了很大的压力,Firefox 一向以插件和扩展的强大而著称。事实上,从扩展功能开发者的角度看,Firefox 的扩展模型要更加底层和强大的,因而 Firefox 插件和扩展可以实现很多 Chrome 上的扩展无法做到的事情。... (阅读全文)

打印浮点数输出 1.#IND 1.#INF nan inf 等解决

进行浮点数编程时,如果没有注意,常常会出现输出类似 1.#IND, 1.#INF 或者 nan, inf 之类奇怪的输出。这通常隐含了浮点数操作的异常... (阅读全文)

Avatar——一盘很大的棋?

美国人真的很有意思,经常喜欢在电影中拍自己囧的事,看看imdb top 250的表,第1名 The Shawshank Redemption 深刻的讽刺了米帝可笑和弱智的司法系统;第2和第3名 The Godfather 系列也不必说,黑手党教父们活的都很逍遥自在。得,到了 阿凡达 则 变本加厉,米帝派出的××大队更是被外星××户扁的头破血流,甚是丢人;于是本片也一跃成为imdb top榜单的63位... (阅读全文)

重装系统后运行飞信提示“没有注册类别”的解决方法

用飞信发发免费短信挺方便,但新版的飞信越来越臃肿,还添了个新毛病:重装系统后点击 Fetion.exe 无法直接运行以前安装的飞信程序,而是会跳出类似“没有注册类别(例外 HRESULT: 0x80040154 REGDB E CLASSNOTREG) - Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)))”的错误提示。当然重新下载一个飞信安装文件重新安装一把就可以解决,不过又得麻烦半天。稍微摸索了一下,Aulddays 发现其实解决这个问题很简单... (阅读全文)

网易有道手机词典将提供摄像头取词功能

网易有道词典是词典类软件的后起之秀,在推出短短两年时间内,就获得了2000万的用户,可谓发展势头迅猛。另一方面,有道的手机词典也是一款非常实用的工具,它可以在没有电脑的情况下方便的实现查词功能。然而,手机词典与桌面词典最大的差距就在于桌面词典可以直接屏幕取词而手机上则只能一个个字母输入进去,而且大多数手机之后数字键盘,即使有 QWERTY 的也非常小,因此在手机上输入英文单词实在是一件痛苦的事情。Aulddays 获悉,有道的手机词典新版将发布摄像头取词功能,或许可以为手机词典的操作带来革命性的改变... (阅读全文)

IPv6 域名解析原理及编程实现

随着 IPv4 资源逐渐耗尽,IPv6 (Internet Protocol version 6) 网络的部署已开始进行,相信已经有不少朋友已经开始使用 v6 的网络了。和 IPv4 最显著的不同是每个 v6 的 IP 地址包含 128 位(16 个字节),相比 v4 来说极大的扩展了地址空间。但是,这也使得 v6 的网络在使用时特别是编程的时候和 v4 的情况不大兼容。本文介绍了针对 IPv6 的 DNS 域名解析知识和编程实现... (阅读全文)

PHP Web 飞信短信发送工具源代码下载

用飞信发送免费短信挺方便。不过,官方的飞信客户端却实在不敢恭维,狂吃内存不说,速度还贼慢,为了发短信运行个这么麻烦的东东有时还真不划算。更麻烦的是官方客户端只支持 Windows,Linux 之类还得另寻它路。如果仅要发短信的话,设置一个基于 Web 的飞信客户端是个不错的选择,只要打开任意一个浏览器就可以,还不受操作系统限制。最近 Aulddays 写了一个基于 PHP、HTTP 方式登录的飞信短信发送工具,在这里提供下载。... (阅读全文)

Google App Engine 更新,免费配额大幅缩水

Google App Engine (GAE) 是谷歌“云计算”的一个典型应用平台。在 GAE 中,用户可以在谷歌提供计算平台上创建各种 Web 应用程序或网站。GAE 支持以 Python 或 Java 编写的应用程序,并 HTTP/HTTPS 访问和用户域名绑定。自 2008 年 7 月发布以来,已经有成千上万的开发者在 GAE 上发布了自己的应用。最近,Google App Engine 发布了最新的 1.2.3 版本,新版中提供了一些新的特性,但最引人注目的是每个应用的 Free Quota(免费配额)大幅缩水!... (阅读全文)

在 Office 2010 中使用 MathType

最近,Microsoft Office 2010 (也就是之前被称作 Office 14 的)Technical Preview 已经在网上泄露,相信不少喜欢尝鲜的朋友已经下载试用。经常用 Word 写科技文章的朋友大都喜欢用 MathType 来代替自带的公式编辑器。但是 MathType 似乎还没有对测试版的 Office 2010 提供支持,无法使用。其实,Aulddays 发现可以用手动的方法让 MathType 集成的新版的 Office 中... (阅读全文)

Fedora 10 常用设置及技巧

Fedora 10 发布已经一段时间了,而 11 也将在 5 月 26 日发布。Fedora 安装后的一些默认设置往往不是很完善,现将一些常用设置及技巧记录如下,以便不时之需:
以管理员权限运行程序... (阅读全文)

Google Apps: 申请流程简化 账户限制增加

Google Apps (Google 企业应用)是 Google 提供的可以在用户自己的域名上建立 Google 服务的平台,例如用户可以创建后缀是自己的域名的 GMail 邮箱,创建 Google Sites 等。最近申请一个新的 Google Apps 账户时,发现申请过程比以前简化了很多,不再需等待手动审批;但是 Google Apps 免费版的使用增加了一些限制,最显著的就是一个账户下最多只能创建 50 个用户。... (阅读全文)

32 位 Windows 7 / Vista 启用 PAE 后仍然不支持 4G 内存原因分析

2009-12-02:更新 Windows 7 内核 Patch 地址。
随着内存价格的不断下降,相信很多朋友都和 Aulddays 一样已经用上了 4G 甚至更多的内存。在 64 位 Windows 系统仍存在一些驱动兼容性问题的情况下,32 位的系统仍然是绝对的主流,但 32 位的桌面版 Windows 版系统对 4G 以上内存的支持似乎一直不好。关于这个问题,网上的文章清一色的会提到 PAE(Physical Address Extension 物理地址扩展)技术。遗憾的是,据绝大多数朋友的测试情况来看,即使启用了 PAE,32 位的 Windows Vista 仍然无法使用全部的 4G 内存... (阅读全文)

Windows Vista 中设置或关闭数据执行保护(DEP)

Windows 从 XP SP2 版本开始,支持“数据执行保护”(Data Execution Prevention, DEP)功能。DEP 是一套软硬件技术,能够在内存上执行额外检查以帮助防止在系统上运行恶意代码。当启用 DEP 时,系统可以在一定程度上检查并阻止一些恶意代码的运行,但是 DEP 也有一些缺点。本文介绍了 Windows Vista 系统中如何设置或完全关闭 DEP。... (阅读全文)

Google Analytics 开始小范围测试 Event Tracking

今天收到 Google Analytics 开发组发来的邮件,说我账户上的 Event Tracking 功能已经启用。该功能最大的亮点是可以支持 Web 2.0 中常用的各种交互内容,包括 Flash, AJAX, Silverlight 以及其他常用的社会网络应用,而这些内容在目前的网络统计系统中往往是比较难跟踪到的。从邮件内容来看,该功能目前仅在 Google Analytics 用户中小范围测试,相信不久以后当技术成熟时就会正式推出。... (阅读全文)

MFC 加载多个dll 时CDynLinkLibrary 内存泄漏误报

最近 Aulddays 在写一个简单的插件系统框架,需要有 n 多动态链接库加载来加载去的。调试时偶然发现提示在 dllmodul.cpp 中会报告若干个跟 CDynLinkLibrary 相关的内存泄漏。错误信息具体看起来大概是这个样子... (阅读全文)