村子里还有一幢 800 年前宋朝时候的房子,旁支亲戚现在还住在里边。房屋很大,很高,夏天很凉快,有漂亮的天井和科学的排水设施。打开室内水道上的盖子,凉风习习,穿孔而出,让人赞叹。门口的石阶已经不大能走路,扭曲折断,还不如普通的小坡易于攀爬,形状就像是麻省理工学院的 Ray and Maria Stata Center。这石阶不是人工的现代艺术,而是大地撕裂的痕迹,真实记录了800年来脚下这片土地的每一次震动,和那棵老树一样,共同记录了文明在自然中的成长和飘摇。
平时大家在文档排版、印刷排版的时候,不管是应用级的 Adobe inDesign 和 Microsoft Word,还是底层排版引擎 Latex,都会默认在英文字符与汉字之间、阿拉伯数字与汉字之间加一个间隙或是半角空格。不信的话大家可以打开 Word 试一下。而且,如果我们在 Word 的中英文间隔处手动打一个空格,这个间隙不变,我实验过多次。
我今天注意到,腾讯微信的排版引擎没有做这件事情。
中英混排加空格这个排版习惯,当代年轻的传统出版界人士并不了解,倒是 IT 工程师们比较清楚。现在传统媒体都直接用现成的排版软件,这些排版上的事软件都自动做了,导致传统媒体运营者并不知道其中还有这一道关窍。倒是 IT 工程师经常需要自己写原生的朴素文本文档和 HTML 代码,需要不停地手打空格,中英混排加空格这件事情已经深入脑髓。我们的 Windows 操作系统,Mac OS 操作系统,IOS 操作系统,Android 操作系统,但凡涉及中英混排的,都会遵循这个空格习惯。
[3] ACM 是美国计算机学会;SIGCHI 是人机交互专家协会,即 Special Interest Group on Computer-Human Interaction;译者这里将 Conference on Human Factors in Computing Systems 译作“计算机系统人类因素研讨会”——译者注。
原文:All the News that’s Fit to Read: A Study of Social Annotations for News Reading
Posted by Chinmay Kulkarni, Stanford University Ph.D candidate and former Google Intern, and Ed H. Chi, Google Research Scientist
News is one of the most important parts of our collective information diet, and like any other activity on the Web, online news reading is fast becoming a social experience. Internet users today see recommendations for news from a variety of sources; newspaper websites allow readers to recommend news articles to each other, restaurant review sites present other diners’ recommendations, and now several social networks have integrated social news readers.
With news article recommendations and endorsements coming from a combination of computers and algorithms, companies that publish and aggregate content, friends and even complete strangers, how do these explanations (i.e. why the articles are shown to you, which we call “annotations”) affect users’ selections of what to read? Given the ubiquity of online social annotations in news dissemination, it is surprising how little is known about how users respond to these annotations, and how to offer them to users productively.
In All the News that’s Fit to Read: A Study of Social Annotations for News Reading, presented at the 2013 ACM SIGCHI Conference on Human Factors in Computing Systems and highlighted in the list of influential Google papers from 2013, we reported on results from two experiments with voluntary participants that suggest that social annotations, which have so far been considered as a generic simple method to increase user engagement, are not simple at all; social annotations vary significantly in their degree of persuasiveness, and their ability to change user engagement.
The first experiment looked at how people use annotations when the content they see is not personalized, and the annotations are not from people in their social network, as is the case when a user is not signed into a particular social network. Participants who signed up for the study were suggested the same set of news articles via annotations from strangers, a computer agent, and a fictional branded company. Additionally, they were told whether or not other participants in the experiment would see their name displayed next to articles they read (i.e. “Recorded” or “Not Recorded”).
Surprisingly, annotations by unknown companies and computers were significantly more persuasive than those by strangers in this “signed-out” context. This result implies the potential power of suggestion offered by annotations, even when they’re conferred by brands or recommendation algorithms previously unknown to the users, and that annotations by computers and companies may be valuable in a signed-out context. Furthermore, the experiment showed that with “recording” on, the overall number of articles clicked decreased compared to participants without “recording,” regardless of the type of annotation, suggesting that subjects were cognizant of how they appear to other users in social reading apps.
If annotations by strangers is not as persuasive as those by computers or brands, as the first experiment showed, what about the effects of friend annotations? The second experiment examined the signed-in experience (with Googlers as subjects) and how they reacted to social annotations from friends, investigating whether personalized endorsements help people discover and select what might be more interesting content.
Perhaps not entirely surprising, results showed that friend annotations are persuasive and improve user satisfaction of news article selections. What’s interesting is that, in post-experiment interviews, we found that annotations influenced whether participants read articles primarily in three cases: first, when the annotator was above a threshold of social closeness; second, when the annotator had subject expertise related to the news article; and third, when the annotation provided additional context to the recommended article. This suggests that social context and personalized annotation work together to improve user experience overall.
Some questions for future research include whether or not highlighting expertise in annotations help, if the threshold for social proximity can be algorithmically determined, and if aggregating annotations (e.g. “110 people liked this”) help increases engagement. We look forward to further research that enable social recommenders to offer appropriate explanations for why users should pay attention, and reveal more nuances based on the presentation of annotations.
@inproceedings{41200, title = {All the news that’s fit to read: a study of social annotations for news reading}, author = {Chinmay Kulkarni and Ed H. Chi}, year = 2013, URL = {http://dl.acm.org/citation.cfm?id=2481334}, booktitle = {In Proc. of CHI2013}, pages = {2407-2416} }
Magic Linux 是一款国人制作的 Linux 发行版,对中国人非常友好。在那个上古年代,Linux 发行版对中文的支持很差,字体错乱,还经常有乱码。那个时候 Red Hat 还没有启用yum,我还没接触 Debian 系,不知道 apt。软件仓库这件事无从谈起,rpm 包也常不兼容,每次安装软件,都会遭遇巨大的痛苦,不仅要自己编译、make,还要读懂各种报错信息,去 sourceforge 下载.lib .so 依赖包,再把它们安装到合适的位置,简直不能再痛苦。那时的国际化 Linux 版本也很少有为中国人订制的软件,办公软件水土不服,不少工具汉化不完整。音频视频播放器这种桌面常见应用用起来也不方便,因为 Linux 的版权限制,MP3 等编码的解析器是不能捆绑在发行版里的,需要用户自己去安装。而那时候大多数系统上并没有软件仓库,安装难度可想而知。当时 rmvb 和 rm 这种古董级格式还非常流行,由于这个格式是 reaplayer 的私家标准,尤其难办。
Magic Linux 把这些问题都改进了,在 2005-2006 年那个年代,它就提供了一个软件管理程序,虽然没有 apt 那么完备,但是已经很有软件仓库的影子。即便我要安装仓库中没有的程序,它也能以更友好的方式向我提示依赖。Magic Linux 提供了 C++写成的 Eva,可以在 Linux 系统下使用 QQ,是我在 Linux 下使用时间最长的第三方QQ客户端。QQ 为了封禁这些第三方客户端,会经常修改通信协议,Eva 坚挺了很久,使用体验也非常好,性能卓越,背后一定有很多贡献者付出了大量的心血。最终 Eva 还是没能坚持开发下来,彻底登不了 QQ 了。音频视频播放器的解码器也有很好的傻瓜式解决方案。令人惊喜的是,它还自带了一个游戏大厅,像腾讯游戏大厅那样可以打牌玩,可惜我登录过几次,里面根本就没有人,码农真是苦逼啊。顺便吐槽一句,QQ 现在越来越慢了,2008 年的那个 QQ 呢?!
国人开发的 Linux 版本也有不少,包括中科院专资开发的红旗 Linux。我用过红旗 4.0 和红旗 5.0,比 Magic Linux 差多了,桌面应用和开发程序都很不方便,倒是外形是我见过的 Linux 中长的最像 Windows 的,连“开始”菜单都 cosplay 了一个,简直哭瞎。现在这个项目已经倒闭,项目员工集体举牌讨薪,我说当年大家如果用点功,也不至于是这个结局…… Magic Linux 要比其他官方赞助的版本优秀多了。
var express = require('express'); var routes = require('./routes'); var user = require('./routes/user'); var http = require('http'); var path = require('path');
/*! * body-parser * Copyright(c) 2014 Jonathan Ong * Copyright(c) 2014 Douglas Christopher Wilson * MIT Licensed */
/** * Module dependencies. */
var bytes = require('bytes') var deprecate = require('depd')('body-parser') var read = require('../read') var typer = require('media-typer') var typeis = require('type-is')
/** * Module exports. */
module.exports = urlencoded
/** * Cache of parser modules. */
var parsers = Object.create(null)
/** * Create a middleware to parse urlencoded bodies. * * @param {object} [options] * @return {function} * @apipublic */
// notice because option default will flip in next major if (options.extended === undefined) { deprecate('undefined extended: provide extended option') }
var extended = options.extended !== false// 是否采用 qs 模块解析 url 编码。 var inflate = options.inflate !== false var limit = typeof options.limit !== 'number' ? bytes(options.limit || '100kb') : options.limit var type = options.type || 'urlencoded' var verify = options.verify || false
if (verify !== false && typeof verify !== 'function') { thrownewTypeError('option verify must be function') }
// 选择解析器。 var queryparse = extended ? extendedparser(options) : simpleparser(options)