by wzyboy on 2018-02-01
从 1992 年到 2017 年,ThinkPad 已经有 25 周年的历史。每隔五年,ThinkPad 会出一款周年纪念版的笔记本。往届纪念款通常是当年的高端型号加上华丽的装饰做成奢侈品/收藏品来卖,而 25 周年版本则走了不同的路线——怀旧。
ThinkPad 在 25 年的发展中,尤其是被 Lenovo 收购之后,抛弃了许多标志性的设计——带锁扣的折边、能在夜间读书的 ThinkLight、敲打感极棒的大键程键盘,当然还有 IBM 的三色 Logo。当 2015 年时 ThinkPad 传出要出怀旧版本的时候,我便开始期待它了。终于在 2017 年底,ThinkPad 25 发布,而我的 ThinkPad X240s 也已经使用了四年有余,可以考虑更新换代了。
一、开箱图
ThinkPad 25 的包装比较豪华,整体带包装重 4 千克多。移除礼品盒、拆除外包装、剥开内胆,终于见到了本体:
打开上盖,掌托处也有一个三色 Logo,由本来银色的 Think 加上 IBM 三色的 Pad 构成:
给蓝色的 Enter 键一个特写:
更多的图:
默认装的小红点;礼品盒里附带了可以替换的版本
……
by wzyboy on 2018-01-05
就算禁用 Cookie,甚至网上冲浪时只用「隐身窗口」,你的现代浏览器还是泄露了太多信息,使得网站能够追踪到你。
一、信息熵与指纹
信息熵(entropy)是指消息中含有的信息量。在网上冲浪的过程中,浏览器向网站服务器发出请求,网站服务器根据请求内容响应。在浏览器与网站服务器的交互中,浏览器会向网站暴露许多不同消息,比如最简单的 User-Agent 里就包含了浏览器型号、版本、操作系统等信息。这些消息单独一条的熵并不高,但是所有的消息组合起来,其熵就相对高了;当浏览器向网站暴露的熵足够高时,网站就能利用这一信息来追踪、定位用户。
假想这么一个例子:阳光中学每个年级 10 个班,每个班的人数相同。你知道刘涛是三年二班的学生,那这条消息的的熵便是 4.91 bit 左右(log(30, 2));如果你又了解到刘涛出生于五月份,那这条消息的熵约为 3.58 bit 左右(log(12, 2));假设你还知道这个中性名字的主人是个女生而不是男生,那你又获得了一条 1 bit 熵的消息。每条消息的熵都不高,但是三条消息加起来的熵便是 9.49 bit 了,或者说,同时具有这三个特征的学生,在阳光中学里平均每 720 ……
by wzyboy on 2017-12-29
2017 年即将过去,以下是我过去一年中读过的书,按时间顺序排列。每本书都附有介绍链接和购买链接各一。
The Elements of Style
英文写作的指导书。语法正确地表达清楚意思才是最重要的,过度复杂的说辞应该被避免。
The Elements of Style @ Goodreads
The Elements of Style @ Amazon
Foundation and Empire; Second Foundation
Asimov 的代表作,Foundation 系列的第二部和第三部。很遗憾自诩为科幻爱好者的我直到这两年才开始阅读这些经典名著。可惜我对这种类型的小说并不是很喜欢。
Foundation and Empire @ Goodreads
Foundation and Empire @ Amazon
Second Foundation @ Goodreads
Second Foundation @ Amazon
The Collector
同样是本老书(1963 年首次出版)。主角是个完全的心理变态,全书以主角的视角描述他病态的犯罪心理,讲述他绑架并长期监禁一个女生的故事。 ……
by wzyboy on 2017-12-21
有个段子是说现在创业公司招人的如果说自己是「大数据」(Big Data),意思其实是说他们会把日志收集上来,但是从来不看。段子归段子,近些年所谓「微服务」「容器化」等「热门技术」的发展,的确促进了日志收集等技术的发展。而 ELK (Elasticsearch + Logstash + Kibana) 也不再是日志收集与展示系统的铁三角了。本文介绍用 Filebeat 代替 Logstash Shipper,用 Elasticsearch Ingest Node 代替 Logstash Indexer 实现一个更加轻量高效的日志收集与展示系统。
一、Beats
与 Logstash 一样,Beats 也是由 Elastic 公司出品;与 Logstash 不同,Beats 只是 data shipper。Beats 家族共享 libbeat 这个库,每个产品分别实现对不同数据来源的收集。目前官方实现有:
Filebeat —— 文件
Metricbeat —— 系统及应用指标
Packetbeat —— 网络抓包分析,如 SQL, DNS
Winlogbeat —— Windows 系统日志
Auditbea ……
by wzyboy on 2017-12-17
生活在电子时代,人们每天都在产生数据。写过的文字,拍过的照片,收集过的网络内容,都是数据。对于程序员们来说,写过的代码,服务器的数据库、日志等,也都是数据。然而硬盘故障、服务器宕机等灾害却随时都有可能危害数据的安全。所以数据需要备份。正如某程序员的语录:
冗余不做,日子甭过;备份不做,十恶不赦!
Xin LI本文介绍一款优秀的备份方案:BorgBackup。
一、为什么选择 BorgBackup
BorgBackup 的主要优势(总结自官方文档):
高效:BorgBackup 会将文件按数据块去重,只有改动的数据块才会被备份。一个 25 GiB 的虚拟机磁盘文件,只改动了 1 GiB,那就只会新增备份这 1 GiB 的数据;
高速:核心算法使用 C 编译,使用缓存快速跳过未改动过的文件以加快备份速度;
加密:数据默认是 AES-256 加密并且 HMAC-SHA256 校验的;
压缩:支持多种压缩算法,可自动检测数据是否属于可被压缩的类型;
异地备份:原生支持 SSH 备份到异地服务器,也可使用 NFS 等网络存储;
可挂载:可以直接用 FUSE 挂载一个备份存档读取里面的数据;
跨平台:支持 Linux, ……