12
14
2016
0

使用 RSS 订阅知乎用户的动态

之前做了一个知乎专栏转RSS的网关,这次又写了个针对知乎动态的。感兴趣的话去 https://rss.lilydjwg.me/ 看看用法吧。

此功能只支持用户的回答和发布文章两个操作。别的操作,比如赞了答案啦,关注了专栏啦,参加了 live 啦,没有实质性的内容,又可能会有非常多,不适合 RSS 这种面向内容发布的东西,所以就过滤掉了。即使如此,程序每次访问取最近40条动态,缓存有好几个小时,所以对于活跃的用户是可能漏掉一些动态的。反正现在信息这么多,漏了就漏了吧,去读读别的东西呗。

知乎这次暴露出来的 API 有点意思。它有一个 include 参数,看起来是指定要返回哪些字段的。看起来知乎也在解决 GitHub 遇到的同样的问题:RESTful API 太不灵活了。只是,为什么要造轮子啊,GraphQL 不是挺好的吗……

Category: 网络 | Tags: rss 知乎
11
11
2015
30

使用 RSS 订阅知乎专栏

知乎专栏不提供 RSS,那我自己做一个好了。用法见网站:https://rss.lilydjwg.me/。计划是支持各种我想要使用 RSS 订阅却又不提供的网站。当然目前只支持知乎专栏啦。代码是开源的,欢迎来提交 pull request :-)

2015年11月12日更新:其实我所使用的 RSS 阅读器——InoReader——是支持订阅知乎专栏的……不过我有对其排版做处理的,就是删掉所有的 <br>。知乎专栏的页面有时会有很多 <br>,其页面使用 CSS 隐藏掉了一些 <br>,但是 RSS 阅读器里它们都显示出来了,搞得段落间距很大。

我这个程序打算支持多种多样的来源的。而最初的想法是针对性地做中文乱码的处理,只是现在那些乱码早已消失了。知乎专栏只是开了个头,以后有需要慢慢加别的东西啦。

2016年12月14日更新:支持订阅知乎用户的动态了。

Category: 网络 | Tags: rss 知乎
10
10
2015
6

评知乎的「友善度」制度

最近有朋友贴了知乎上关于 wintercn 的「狗日的知乎」项目。我一向不喜欢粗话,但是此处例外。我不讨论 wintercn 的行为本身,而想看看这被众人骂的「友善度」制度是怎么回事。

知乎的「友善度」制度跟某国的一些社会制度有得一拼:这是屁股指挥大脑的又一次胜利。

首先,我们来看,「友善度」制度的目的何在?

作为一个问答论坛网站,知乎上必然会存在相冲突的观点。人非圣贤,这些具有相冲突观点的人必然会吵起来。知乎觉得这样子太不和谐了,于是搞了个「友善度」出来,希望借此来管制这些不「友善」的言论。

你骂人了扣分,说脏话了也扣分,让某人觉得不爽了也扣分。「友善度」太低在知乎上就会被限制了。

张三是一个普通人。有一次跟别人激烈辩论导致表示「友善度」的星星少了不少。他想尽快恢复「友善度」。怎么办呢?答案不是作出优质的回答、让很多人佩服、感激,然后点赞。那是 StackOverflow。知乎的答案是去举报别人。举报这一行为本身是不友善的,所以在 StackOverflow 你踩别人自己也是要掉 rep 的,这样子你在踩的时候就会慎重了。然而那只是墙外的花罢了。在知乎是这样子的:

知乎上的举报战

(图片来源于知乎网友,标注亦为其所加。)

「反正举报失败不扣友善度」,而成功了「友善度」会涨。这就是不要钱的彩票啊,中奖率还挺高的。

于是,张三在知乎四处游荡。看到李四和王五争论起来了呢。不管他们在争论什么,也不管他们的意见如何,看到稍微过激的言论就去举报。反正也没什么损失嘛。

李四很奇怪:好好的讨论怎么就被删掉了呢?但是李四是个友善的人,才不屑于互相打小报告那一套。然而李四因为观点鲜明,得罪了不少小人,最终被知乎禁言啦。他的墓志铭写着:「这是一个高尚的人」。

制度,不仅要看它做了什么,更重要的是它鼓励了什么

更新:知乎也默默地实行「选择性要求登录」策略了。文中引用到的回答不登陆看不到,难怪没有被删除。

Category: 未分类 | Tags: 知乎 中国特色
4
28
2015
15

再见,莫名其妙的知乎!

没想到会这样决定不再在知乎上产生新内容。虽然网站体验做得很差劲,其实知乎里有些人还是很不错的。

做出此决定的原因是知乎新实行的「不透明的审查制度」。

我在一个回答下边做出了可能会令某些人心里产生不适的内容:

更讽刺的是提问者叫 @不求人666 233

提问者名为「不求人666」,却提出了一个非常容易找到答案的问题,所以我才那么说。你若是见到亲友手上拿着钱包,却翻箱倒框地寻找,也是会大笑的是吧?

但是知乎认为这是「不友善行为」。什么叫「不友善行为」呢,知乎关于此规范的定义如下:

轻蔑:贬低、轻视他人及其劳动成果。

对别人做出的搞笑行为大笑是贬低还是轻视呢?那如果有人提出一个很基础的问题,我叫他去好好再读一遍基础教程,他就觉得自己受到了轻视,就可以来借此限制我在知乎上的行为了?

诽谤:捏造、散布虚假事实,损害他人名誉。

难道这个叫「不求人666」的用户不叫「不求人666」?

嘲讽:以比喻、夸张、侮辱性的手法对他人或其行为进行揭露或描述,以此来激怒他人。

哪里有比喻和夸张呢?我笑点低也不行吗?小小地嘲笑一下算「侮辱性的手法」?

挑衅:以不友好的方式激怒他人,意图使对方对自己的言论作出回应,蓄意制造事端。

什么是「不友善行为」?知乎答:「就是不友好的回应」。

羞辱:贬低他人的能力、行为、生理或身份特征,让对方难堪。

有么?名字是用户自己起的。

谩骂:以不文明的语言对他人进行负面评价。

「讽刺」这个词不文明么?

歧视:针对他人的民族、种族、宗教、性取向、性别、年龄、地域、生理特征等身份或者归类的攻击。


威胁:许诺以不良的后果来迫使他人服从自己的意志。

我通过「申诉」询问知乎管理员我的评论违反了哪一条。结果是:

知乎:不友善内容是指经知乎内部确认的不友善内容

如果真违反了哪一条规范,你要扣什么东西就扣吧。可是你好歹也告诉我到底违反了啥呀?


有位民警在大街上看着一个人不顺眼,于是上前:「你违法了,我要拘留你。」

那人问:「我违反什么法了?」

民警:「根据《XXX 法》,以下行为违法:一、闯红灯;二、随地乱扔垃圾;三、打架斗殴;四、其它违法行为。哦,你违反了这里的第四点。跟我走吧!」


2015年6月11日更新:另见《哔~知乎,离开的Q&A》

Category: 未分类 | Tags: 知乎 中国特色
4
6
2015
10

GitHub 的一个小细节

这是偶然间发现的。在 GitHub 桌面版网页上,按第一下 Tab 时,会在左上角显示一个「Skip to content」的链接,并且键盘焦点就在这里:

GitHub "Skip to content"

我被这样的小小地惊艳了一下。这个链接可以用来跳过不怎么常用的导航栏上那排链接和按钮。

作为经常打字聊天和写码的人,在电脑前的大部分时间手当然是在键盘而不是鼠标上,所以使用鼠标来进行一些操作很常见。虽然我有 keynavVimFx 来辅助,但是见到 GitHub 这么贴心的细节还是挺喜欢的。

这让我想起了国内的网址,大部分都根本不考虑 accessibility。比如问答社交网站知乎。我早已不「逛」知乎了,只是收到感兴趣的邀请时去看看。因为知乎的体验实在是太差劲了。

知乎取消了所有链接在获取焦点时周围的虚线。这意味着根本没办法使用键盘导航,因为你不知道当然焦点在哪里。

知乎的提交按钮完全无法使用键盘操作。看看 GitHub,写好评论什么的,按一下 Tab 焦点就去了提交按钮上,并且有非常明显的反馈。按空格或者回车就可以提交。如果决定放弃,再按一下 Tab 就好。这两个按钮的顺序是按使用频率而不是相对位置来获取焦点的,因为提交显然比放弃用得更多。Twitter 发送新消息、Google+ 评论的提交按钮也是这样。不过 Twitter 偶尔会需要按两次 Tab 才能提交,大概是改页面的时候不小心给改坏了,过段时间会修好。Google+ 分享新信息时会比较讨厌,因为要跳过好大一堆「添加照片」什么的按钮。

类似的 accessibility 处理,国外著名网站上经常能看到很好的实践,博客上经常能看到大家在关心「少数用户」的使用便捷性。而国内很少有关注这方面的,大家都跟乔布斯一样想,「不管合不合理,我是这么设计的所以你应该这么用」。

比如验证码。不管需不需要,都是字符图。这样盲人就用不了。而国外广泛使用的 Google reCAPTCHA 就可以选择通过声音收听验证码。当然是英语的。反正这全球最大的网站之一已经消失在中国大陆人的视野之中了。我知道专门有人建立了一个 QQ 群,视力正常的人帮助盲人识别验证码用的。

这大概是发达国家与发展中国家的侧面写照的缩影了吧。

最后扔一堆链接:

Category: 用户体验 | Tags: GitHub 知乎 UX Web
3
23
2013
15

知乎,谢谢你让我知道 @ 补全可以做得这么烂

因为知乎为我这样的用户设下了许许多多不便的地方,我给他们提过多次然反应甚微。我累了、倦了,对知乎失去了热情。可是,知乎却不肯放过我,经常会收到来自知乎的邀请回答通知。现在新问题被提出来之后,知乎会推荐一些用户让提问者邀请。看来知乎是越来越害怕用户流失了。这和在用户回答之后弄个「分享到新浪微博」(还非常占空间)的行为一样,舍本逐末。知乎不去专心提升其核心竞争力,反而搞一些花哨的东西,不流失掉优质用户才怪呢。

好了,进入正题。为了方便用户,很多网站不但提供 @ 人的功能,而且在用户 @ 人时提供补全。我们来对比一下各网站的补全。

StackOverflow

首先是与知乎同为问答平台,但远比知乎著名和专业易用的 StackOverflow。它在回复评论时 @ 人可以补全。补全效果如下图:

它补全的是参与当前讨论的人的名字。补全提示位于输入框的上方,有点遮住上方的文字了。被 @ 到的人并不会因此收到通知。用户的输入并不会因此被打断,也不需要等待补全结果出现。

Twitter

下一个是 @ 的这个用法的创立者 Twitter。在很多地方均可以补全。Twitter 用户既有一个英文无空白字符串的 ID,也有一个限制更少的名字。补全时两者均会被搜索,如下图所示。

其补全框在输入框下方。补全提示中包含了用户头像、用户名字和用户 ID。最终有效的 @ 只能是用户 ID,因为可以有名字相同的人,但不会有 ID 相同的用户(虽然它也可以更改)。用户的输入并不会因为补全被打断,也不需要等待补全结果出现,只要完整输入要提到的人的 ID 即可通知到对方。

Github

为什么不在光标处显示补全呢?Github 向我们展示了原因:

Github 尝试将补全菜单放到光标处,但很不幸,在浏览器中目前没有准确定位用户光标的办法,所以成这样子了。

和 Twitter 不一样,Github 没有显示用户用户头像,所以没 Twitter 的那样容易识别。

Google+

Google+ 的补全显示也很容易识别,用户头像、名字、圈子都有。如果补全匹配自通讯录中联系人的电子邮件地址的话,此信息也会显示出来——

但是没有用户 ID。因为 Google+ 和 Twitter 不一样,它只有一个用于标识用户的数字 ID,而没有唯一指定某人的人可读 ID。所以,在 + 别人时,用户必须等待并从补全列表中选择要 + 的人。如果你的网络差了点就只能等等了,通常应该不会导致忘记要说的话吧,网络太差的话 Google+ 会没办法正常载入的。还有一点,你无法将事先写好的包含 + 的文本直接复制到输入框。如果你想 + 很多人的话,即使你有需要 + 的人的列表,你也不得不手动抄写一份。

知乎

最后,该知乎上场了!绝对秒杀以上四家的设计!!!

在输入 @ 的时候,知乎会弹一个小框出来——你的输入流被打断了,就不用想着复制的事情了。如果卡了你就只有等待了,但很不幸的是,知乎最近比较卡,一个操作花几秒才完成是常事。只有用户头像和用户名。看看截图里,两个默认头像、三个叫「江南」的用户。更囧的是,提交后我才通过生成的链接知道,他们都不是我要 @ 的那个「江南」!一个同名的不幸的人被打扰了。至于补全项挡住文字这问题可以忽视了,因为被挡住的是光标后边,你没办法接着输入。如果你要输入电子邮件地址,放心好了,补全框会出来烦你的。至于上方「想用 @ 提到谁?」那句废话,大家可以像知乎的其它问题一样暂且忽视。

部分静态文件存储由又拍云存储提供。 | Theme: Aeros 2.0 by TheBuckmaker.com