Redian新闻
>
面向开发者的网站,真的是认真设计过的吗?

面向开发者的网站,真的是认真设计过的吗?

科技

最近几年,随着技术产品化的流行,越来越多的公司(如云厂商、开源软件公司)将软件提供给市场,2D(to Developer)成为了一种炙手可热的商业 “风口”。所以,我们会看到各种面向开发者的网站以及各类的服务。

只不过,绝大多数的公司并没有考虑开发者们的体验,诸如于:

  • 只需要在网站轻松点击三步,你就可以创建一个项目。呵,就不能提供个 CLI 一步到位吗?

  • 在页面上拖拉拽就可以构建流水线。呵,就不能提供配置来修改吗?

  • 我们提供了高级搜索功能,你需要选好你的条件,就能搜索。呵,就不能提供表达式和示例吗?

  • ……

从传统的意义上来说,这种设计也没错,面向新手开发嘛!只是,这样的功能,新手用了一次之后还需要吗?一个有经验的新手,它需要的就是一系列更便捷的方式。

在这个关注于体验的时代,我们还能设计好面向开发者的网站吗?你们有考虑过开发者体验设计吗?

上半场:搜索框的体验设计

刚好,最近,我,一直纠结于一个搜索框的设计。所以,先让我们来看,两类类型的不同搜索框设计。

一个普通的搜索框:面向普通用户

因为不可描述的原因,我的博客一直在 AWS 上,大概快有七八年了。同样是一个搜索功能,相比于某些公司,AWS 在这方面就能提供一个更好的体验。通过 Option + S 就可以唤起搜索框,随后就可以到具体服务下的:Top features。

具体的服务提供得好不好另说。但是,这种:

  • 还有能用的搜索。更不用说有的云厂商,连搜索个 “AI” 都做不好?

  • 适合于显示器的字体与布局。开发人员,谁没有个大显示器呢?

  • 快捷键唤醒搜索。老程序员,谁没有过鼠标手呢?

当然,AWS 这垃圾服务器太贵了,大抵这就是智商税。在传统的 2B、2C 场景下,强业务方的公司里,业务领导决定了一切,他们看不出平平无奇的 Google 搜索框的背后花费了几亿,甚至于几十亿的成本,为的就是为几十毫秒。而在 2D(to Developer)的场景下,开发人员完全可以看出这方面的技术水平和能力。

基于代码的搜索框

最近,在开源软件 ArchGuard 里,我们实现了一个名为 Insight 的架构洞察功能的 PoC(概念验证)。在这次验证里,我们参考了 SourceGraph 的搜索设计,使用 Monaco Editor 构建了这个功能的搜索框。结果,如下图所示:

图中的 field:dep_name == %dubbo% field:dep_version > 1.12.3 即为搜索框。与搜索功能相比,它更像是一个带有搜索功能的输入框;然而,搜索的方式是通过表达式的方式来进行。而为了更友好地支持表达式的输入,表达式变成了一个代码编辑器。只有在代码编辑器里,你才能自由地去书写这种形式。

如果你有一定的前后端开发背景的话,那么就能评估出这样一个功能的工作量:

  • 语法解析、高亮的输入框。在 Monaco Editor 上自定义语言、语法解析、高亮、自动填充等。

  • 自动关联上下文。

  • 表达式设计。

  • 表达式合法性校验。

  • ……

后期,也非常有益于扩展,加一个新的字段什么的,完全不考验设计人员,也不考虑开发人员。于是乎,在考虑了工作量和之后,选择了这样的一个方式(PS:在领导的角度,下面的方式看上去就非常高级):

图来源于网络

看上去还不错,如果不添加新的字段 —— 但是,添加新的字段几乎是 100%。也许是开发者的体验都让狗吃了,面向领导服务才更重要 —— 我见过其它更迷之设计,只是因为领导觉得代码化(配置化)的体验对开发者不好。所以,总有公司会比 K8s 的配置化做成了表单……,不是吗?

下半场:“狗” 看了都直摇头的文档

首先,文档都是给不懂的人写的,包括写文档相关代码的人。其次,文档都是写出那些出现 bug 的人,只要不出 bug,我就不需要看文档。

  1. “啊,这个文档不错,良心地给了个代码示例”

  2. “等等,这是一个图片”

  3. ”嘿,我去找个图片识别工具“

  4. ”啊,这个图片识别工具需要看一下文档“

  5. “啊,这个文档不错,良心地给了个代码示例”

好惨。

祈祷过程不出错

每次在使用新的工具的时候,我总会期待我不会在过程中失手。然而,有时候会在最后一步,有时候它是在第一步。所以,如果你的工具足够稳定,你就不需要任何文档

而在用了文档之后,我选择再试一次,并祈祷不出 bug。

以至于我至今怀疑,国内的新手程序员不看官方文档的习惯,可能源自于国内的公司给新手们一个印象:官方文档非常不靠谱。

让人迷失的链接

在考虑平稳开发者体验与文档体系的时候,我们通常会这么考虑:有意义的 URL 命名。以便于构建一个网站-代码-文档相关联的体系,即代码出错可以找到文档,文档可以链接到网站

然而,使用国内的云服务时,我经常丢失在文档的海洋里。于是乎,我会有几种方式解决:

  • 自带的文档搜索。我没见过,几家公司能做好的,因为自己人都不用。

  • Google / 百度搜索。说实话,在这一点,百度还是比 Google 好用,建议你使用另外一家的服务。

  • ……

作为一个中老年人,我保存了这个地址在我的记事本里,以便于下次打开的时候使用。于是,下次打开记事本,狗看了都就直摇头

  • /document_detail/1364/53045.html

  • /document_detail/1234/45678.html

  • /document_detail/13432/23445.html

地址是哪个来着,微服务框架是哪一个链接来着?咦,这个链接怎么失效了?要怪就怪微信不支持 URL preview。年轻大就是吃亏。

文档还需要体验吗?

类似的一些槽点就诸如于《文档工程体验设计:重塑开发者体验》所描述:

  • 文档代码不同步。即文档的 API 变化可能落后于代码,导致 API 与文档出现不一致。

  • 频繁的 API 变更。API 变更时,文档需要手动进行更新,不能自动化同步。

  • 概念不统一。对于同一个概念,文档的不同地方描述不一致。

  • 重复的文档块。文档需要重复引用某一部分的文档,不能像代码一样引用。

  • 代码无法运行。按照文档的步骤下来编写的代码、复制的代码,是不能运行的。

简单来说,就是人们从未把文档当成一个工程来考虑。当你把一个支撑域当成核心域的时候,那么剩下的就自然而解了。

中场休息:UI vs CLI

我觉得这又是另外一个很有意思的话题:如果我们都用 CLI 的话,那么谁来考虑 UI 的问题。不过,我反正是不想继续吐槽了,前面都做不好……。

当然,在设计 CLI 的时候,还要考虑这个问题:

  • CLI 的文档体验设计。又绕回去了

  • 服务更新时,是否提供自动迁移能力?

  • CLI 的更新机制。

  • ……

在不考虑将开发者的体验作为第一优先级时,我觉得没有人会去考虑这些。要怪就怪程序员都锻炼得太刁钻了 —— 谁让他们就是写体验的人。

其它

咦,过头来看,什么是开发者?什么是开发者的体验设计?

所以,我觉得程序员都应该在显示器下面放一个手办,不是用来祈祷上线成功,而是用来祈祷自己不用写文档 —— 这样就不会被骂。

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
放大招!国外知名教育网站,纷纷推出了免费的暑期学习资源,错过损失一个亿让求职效率提升71%的海投网站,正式上线!知名插画网站跨性别员工遭男上司持续性骚扰…曝光后画师开始抵制网站!李承鹏:我的五四回忆 没有青春 只有青春期当前的形势和任务专门「报复前任」的网站:数万人抢着上传前女友的裸照跟着「50 音起源」创造者周楷雯,进入全栈独立开发者的世界小说连载:大留学时代 (2. OPT身份与初恋 )资深开发者分享:如何用游乐场和迪士尼公园探索独特的关卡设计?国债期货即将双向开放?弘业期货16连板创纪录美国四大学校排名网站,到底哪家靠谱?【吃喝玩乐】麻州不能错过的冰淇淋店-有在您镇上的吗?这个啥都有的网站,打算承包你接下来一周的摸鱼时间。澳洲重卷出击!屏蔽了40个网站,想走“捷径”的留学生将无法再用!大快人心!《杀戮尖塔》开发者分享:如何做数据驱动的游戏设计与平衡?澳洲华男浏览色情网站,被捕后罚款6000澳元!若再犯恐判处监禁!美国12岁男孩持枪抢劫加油站,店员:你是认真的吗?Alibaba/IOC-golang 正式开源 ——打造服务于go开发者的IOC框架试物说vol.536 | 跟风买的网红瑜伽垫,真的爆好用!救救孩子!赶DUE必须收藏的宝藏网站,亲测有效!!平安银行采用彭博卖方解决方案提升面向国际投资者的人民币债券交易服务硬核观察 #695 越来越多的网站不支持 Firefox哔哔|网友拿胡适担任北大校长和易烊千玺考上国家话剧院类比,他是认真的?五四:中国误搭列宁列车开小夜灯睡觉导致宝宝性早熟?认真的吗?被全网封杀,仍爆赚62亿!最嚣张的网站,为何让千万人力挺?Wii U 模拟器 Cemu 走向开源对仿真技术意义重大 | Linux 中国开源开发者创建首个支持维护者的基金 | Linux 中国找工作,和老板谈!有了这10个美国找工作宝藏网站,简历一投一个准!蔚来电池采购走向开放,新品牌将采用中创新航电池|36氪独家独立开发者中,都有哪些「小而美」的设计原创 | 越南出口超深圳,真的是因为放弃清零政策带来的吗?战狼转变风向,难道原因是。。。。。。“返老还童”这件事,科学家是认真的!游戏开发者分享:如何通过室内设计原则掌握空间与场景设计?
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。