各位读者及会员,喜迎双年,UNTAG 也将推出持续一个月的 Premium 年度特辑。
UNTAG Premium 年度特辑的形式为“一配多”。一篇 UNTAG 成员的年度推荐,加上多篇其它成员的常规 Premium 内容分享。
本期的年度推荐来自沨沄极客,年度推荐品类为 AI。也许你身边那位代码质量突飞猛进的同事,正在悄悄用 AI 超越其他人。
本期内容目录:
- 年度 AI:GitHub Copilot
- Hum 在用的流量查询分析网站及原因
- Hum 在用的投资情况查询网站及原因
- Hum 在用的应用下载量/收益查询网站及原因
- 如何找到优质网站
- 完成“戒手机”,新年目标的一剂猛药
- 把 ⌫Delete 键从最错误的位置解救出来
- 如何改掉 Magic Keyboard 的推出(Eject)键
- 如何用快捷键打开 macOS 控制中心
年度 AI:GitHub Copilot
作者:@沨沄极客
今年有多个 AI 话题爆火,Stable Diffusion、ChatGPT 等等非常受人欢迎,Stable Diffusion 生成的 AI 画作天马行空、效果惊艳,ChatGPT 几乎能像真人一样给与你对话,回复质量超过了以往任何一个对话机器人。
这也引发了一波又一波关于 AI 的讨论,人们都在畅想着这些 AI 会给我们的生活带来哪些改变,但要论今年对我帮助最大的 AI——我想把这个奖颁给 GitHub Copilot。
看看效果
GitHub Copilot 是由 GitHub 和 OpenAI 共同开发的 AI 工具,主要作用是通过 AI 实现了多项功能,例如自动补全代码、自然语言转为代码、代码建议、整块匹配公共代码的功能。
在 Copilot 出现之前,我们对“代码补全”功能的理解还局限在“按一下 Tab,补全可能想输入的单词”这样简单的功能。稍微高级一些的代码补全,也仅仅是根据常见的代码自动套用一个模板,节省一点输入上的麻烦,而不能代替你思考。
而 Copilot 的“代码补全”,是真的可以”代替思考“的。
根据已有信息补全代码
当我输入第一行代码,它就能根据上下文,根据我给函数取的名字 LeftDays,帮我补全余下的代码。
根据自然语言生成代码
如果这段代码不合心意,还可以改输一段注释,Copilot 就可以将剩下的代码全部补完,这几乎达到了”自然语言编码“的水平。
结合通用场景和开发者习惯生成代码
如果你需要完成的是一些常见的代码,比如建立一个 Subscription 订阅模型。Copilot 会自动给你补全一大块内容,有效节省大量的脑细胞。
而且它还是根据你自己写的代码风格进行补全的,比如这段代码中它为我添加的中文 verbose_name,就是根据上下文补充的,而不是简单从网上抄下来的模板。
Copilot 在这一点上表现得就像有”猜心术“一样。很多时候只要写出第一段代码,剩下的代码都可以让 Copilot 自由发挥,如果你想建的模型非常通用,连续按下 Tab 键自动完成。真就是一行代码没写,全靠 Copilot 帮忙。
补充开发者的知识盲区
如果我不了解一些开发知识,比如正则表达式的运用不是很熟练,以往的做法是去搜索一个可以用的公式。但别人的代码毕竟不是给自己量身定做的,搜到结果还是得自己改写一下。
现在你可以用自然语言让 Copilot 给你量身定做一个正则表达式。
为了方便大家理解,我这里举的例子比较简单。当运用到实际工作中时,它往往可以帮我生成更为复杂的代码。
相比传统的自动补全工具,Copilot 完成了一种革命性的创新。
AI 不再是聊胜于无的存在,而是为开发者实打实地提高了工作效率。它打破了机械性的工具只擅长处理重复性工作的传统,能够结合实际情况协助开发者,甚至独立搞定一些工作。
物超所值
2022 年 6 月 21 日,GitHub 正式宣布 Copilot 推出“技术预览版”,并作为订阅服务提供给个人开发者,价格是 100 美元 / 年。
我个人认为,GitHub Copilot 非常对得起这个价格,并且物超所值。
我们来看看 GitHub 在 2022 年 9 月的调查数据:
文中提到了一些关键指标:
- 开发者满意度高:60-75% 的用户说,Copilot 让自己在工作时更有成就感,编码时不那么沮丧,能够专注于工作。
- 减少枯燥的任务:超过 90% 的用户认为在重复性的任务上 Copilot 能更快完成任务。
- 开发速度更快更好:使用 Copilot 的开发者的开发速度比不使用的快了 55%,任务完成度也更高。
而 Copilot 的数据源都来自 GitHub 公共存储库,这同时确保了代码的质量。
在我个人使用过程中,我也有一样的感受。原本我在学习一个新的编程语言或者是新的框架时,尽管语言是共通的,但早期的挫败感总是非常强烈,也许是因为不熟悉语法和结构,也许是因为犯的错误太低级,也许是因为少了某个关键性的经验,总之,这段被称为“踩坑”的经历总是不那么愉快的。
而 Copilot 大大减少了这段入门的时间。我可以用一段中文描述出我想要的功能,然后 Copilot 试着给我提供一些建议,然后再改进一下代码。相比网上那些内容农场搬运的语焉不详、排版混乱、代码错误的低质量教程,还是 AI 提供的建议更让人放心。工作效率也随之得到了很大的提升。
所以在我结束试用阶段后,立即花钱购买了正式版。这绝对是我在 2022 年最有价值的一笔投资。
影响重大
关于 AI 的讨论,正如每一次互联网上的热点话题一样,人们先是惊叹于 AI 的效果,然后是“AI 是否会挤占艺术家生存空间、AI 是否会取代搜索引擎、AI 是否违背职业道德”等等一系列的质疑和讨论,一段时间后归于平静,开始追逐下一个热点。
GitHub Copilot 的热度是在 2021 年的公测阶段,随着转为收费工具,它最火的时候已经过去。今年的热度已经不比 Stable Diffusion 和 ChatGPT,互联网上的讨论热度不再,但并不意味着它就此埋没。
AI 正在悄无声息并切实地改变着从业者们的环境。
根据 GitHub 在 Copilot 介绍页面 提供的数据,平均每个用户接受了 26% 由 GitHub Copilot 提供的代码。平均有超过 27% 的开发人员,代码文件由 GitHub Copilot 生成。在某些语言(如 Python)中,开发人员使用 Copilot 生成代码的比例高达 40%。
也就是说,Copilot 在公测一年、正式开放半年的情况下。每提 4 次建议就会被采纳 1 次;使用率覆盖到了 GitHub 上超过 1/4 的开发者;Python 开发者几乎每 3 个人就有 1 个在用 Copilot。这样的比例着实是不低的。
结合我个人的感受来讲,Copilot 已经成为了我开发工作中重要的一环。
比如我在编写 API 接口时,一种非常常见的情况是:有几个接口就需要写几段代码,分别进行处理。比如向天气接口请求,它返回的是城市和天气;换个温度接口,就变成了城市、最高温度、最低温度。
原本这算不上是重复性的工作,因为开发时往往还需要结合接口中的返回值进行处理和赋值,不能简单地复制粘贴、一概而论。
如果我此时想通过自己的力量,编写一段自动化工具来实现这段代码,这几乎是不可实现的。因为我需要用更复杂的代码去自动完成这些原本简单的接口工作,这是本末倒置。
所以最终还是需要手动来实现这些接口,能做的改进顶多是使用一些现有框架和工具来简化工作。
而 Copilot 的出现打破了这个现状。现在我可以把”城市 + 天气“或是”城市 + 最高温度 + 最低温度“的 JSON 代码作为注释喂给 Copilot,Copilot 就可以根据这些变量名自动格式化成合适的数据,并自动赋值给合适的变量。
是 Copilot,让这部分工作消失了。我想这就是“技术进步”实实在在的体现。
小结
目前的 Copilot 已经完全可以胜任“副驾驶”这个位置,即使是身边再挑剔的开发者朋友,也会赞叹 Copilot 给自己带来的帮助。
对于已有代码经验的开发者来说,它能够节约下重复编码的时间,快速实现一些常用的功能。
对于使用不熟悉的语言和开发框架的开发者来说,它能够提供非常有效的建议,用自然语言完成常见的功能。
对于还没有用上 Copilot 的开发者来说,应该更多去关注行业内的变化并尝试最新的工具。
也许你身边那位代码质量突飞猛进的同事,正在悄悄用 Copilot 超越其他人。
Hum 在用的流量查询分析网站及原因
作者:@Hum
2022 年 4 月 Alexa 停止运营,它的首席替代品 SimilarWeb 成为了我在流量查询时的主要选择。
SimilarWeb 的主要功能是流量查询,但是它支持大量细分功能,例如总流量排名、品类排名、国别排名、流量趋势、流量来源、用户性别年龄比例等等。
数据准确性
SimilarWeb 的精准度见仁见智,这样的服务因为数据采集原理不可能提供绝对精准的数据。
据闻国内网页在 SimilarWeb 的精准度更加不佳。但是同时支持中文和非中文的全方位网页流量统计分析工具中体验最好的又是 SimilarWeb.
哪个渠道导流最有效?
如果你在 SimilarWeb 上搜索 utgd.net,你会发现我们目前为止最大的社交媒体流量来源是 Twitter。这是理所当然的结果,因为我们目前没有主动在任何其它的平台对网站进行推广。同样,这对我们的运营思路就有很大的参考作用。在网站更加稳定、访问速度更加理想、功能和服务更加完善后,我们会在更多渠道推广网站。这样的数据可以告诉我们哪些渠道是有效的,哪些效果不佳,哪些应该重视,哪些应该舍弃。
与此同时,上线几个月后我们发现来源于搜索的流量逐渐变多。这符合我们的初心。我们希望解决问题,越多来源于搜索引擎的读者代表越多人是通过搜索问题找到了我们,也代表我们有机会为更多的人解决问题。
网页的什么内容更受欢迎?
观察网站什么内容更受欢迎是我用 SimilarWeb 的另一个原因。我们自己对内容有一个方向,但是读者有不同的喜好。往往,创作者认为最好的内容,并不是最吸引读者的内容。两者若能合二为一,是两者最大的幸运。
在内容初期我们当然还是先把自己想写的东西写了,建立风格,建立读者口味。但是随着时间慢慢推移,读者真正感兴趣的内容就会由数据凸显出来。我们希望通过数据可以找到两者的交集。
谁是竞争者?
SimilarWeb 会综合盘读一个网页的相关网页,这省去很大的调研成本:
当我们知道了谁是我们最大的竞争者,我们就知道了应该向谁学习,应该学习什么。竞争者的产品提供什么样的体验,他们的网页提供什么样的内容,读者对他们网站的什么内容最感兴趣?这些会为我们在决定内容和内容的限度时提供参考。
Hum 在用的投资情况查询网站及原因
作者:@Hum
在微博、知乎等国内社交社区上我们已经可以经常见到动用企查查、天眼查数据来反应一些企业问题,披露一些企业数据来作证自己观点的讨论。这是一个很好的趋势,它们显得专业且说服力强,拔高了讨论门槛。
而当问题涉及国外公司,最好的选择目前就是 CrunchBase。
CrunchBase 是一个创业公司的互联网数据库。用于查询企业的业务信息。对于我来说,它最重要的功能也是它的主打功能,是观察一个企业的融资额:
查看融资额有助于看出来一个投资机构对一个企业的信心,也就是俗称的“用脚投票”。有的企业也许在媒体上咋咋唬唬雷声很大,但也许查了融资额你会发现它没多少钱。当然,这也有可能是企业的选择。并且,被资本高调看好且大举投资的企业最后表现不佳也比比皆是。融资额只是对企业表现的一个参考。这里最有趣的是,你看到一个行业或者一家企业,你认为是泡沫但资本却大举投入。也许错的是你,水面之下有你看不到的暗流;也许错的是资本,被“大势”、噱头和 PPT 冲昏了头脑。总之,观察这件事本身就很有趣。
CrunchBase 的信息颇全。除了当前的融资,我们可以看到企业融资了几轮、各轮融资的金额和投资机构/投资人。这些脉络可以为你判断这家公司的走势和派别提供参考。
CrunchBase 本身是科技媒体 TechCrunch 的一个附带项目。因为 TechCrunch 是报道(硅谷)创业公司资金流转情况最为积极的媒体。当你需要了解硅谷哪个新的科技公司因为什么被哪家基金投资了多少钱,你多半最终会落脚在 TechCrunch.
使用 CrunchBase 的方法非常简单,只要在你的搜索引擎搜索 crunchbase 企业名 即可。担心企业重名之类的情况,可以搜索 crunchbase 网站域名。
Hum 在用的应用下载量/收益查询网站及原因
作者:@Hum
SensorTower 可以查询应用的下载量、收益和活跃用户量等信息,分国别,且支持 iOS 和 Google Play 两大平台。
查询应用的下载量、月收益看起来只对投资机构有用。但对于个人用户来说,随着订阅制盛行,判断你订阅的工具还能活多久就很重要。很多个人用户喜欢用“情怀所以支持”这样的借口冲动消费。但某知名网红通过实际行动告诉我们:情怀干不过生意模式,在红海大战不如发挥所长乘上一股上升巨浪。
过去我们判断工具的好坏也许只靠功能和体验,很多人直接彻底到只看颜值。但是也许我们可以通过查询工具的每月活跃用户和营收,判断和自己有共鸣的人有多少。哪怕我们对功能和体验的判断是正确的,不去靠功能和体验而是靠其它因素左右的用户量和收益又占多大比例。
拿 Instapaper 和 Pocket 来说。两者主打的需求一样,都是稍后读。但功能却使用了不同的逻辑——一个文件夹、一个标签。我(过去)是标签党,所以我支持 Pocket。但在乎阅读体验的人很喜欢跟我表示 Instapaper 阅读体验更好所以自己坚定选择 Instapaper。然而通过数据我们可以看出,Pocket 用户要远大于 Instapaper。但这是因为标签比文件夹更好吗?并不是。Pocket 的用户量巨大,大概率是因为它是 FireFox 默认的稍后读服务。
我们不应该为了证明自己的观点而寻找数据,而是应该在寻找数据时保持对自己的怀疑,调整观点。质疑别人的观点和根据是有趣的,但是质疑自己的观点和根据也常有必要。
如何找到优质网站
作者:@Minja
刚刚接触 RSS 的人,最常问的一个问题就是“请推荐一些订阅源”;而凡举涉及科技、数码或软件等话题,基本就是 Marco Arment、John Gruber 和 MacStories 三件套,好像在吃麦当劳套餐一样,而这种程度的推荐,质量大概还不如 Reeder 或 NetNewsWire 的内置 RSS 列表。
博客推荐同质化实在是很无聊的事,比顿顿都吃麦当劳还无聊得多——麦当劳还知道升级一下巨无霸呢(真的没接广告)。
那么,既然推荐过于千篇一律,又如何找到优质订阅源?其实很简单,首先,不要问 RSS,而要先确定网站,再看看它是否提供 RSS 订阅(有能力的可以自己烧录,比如用 RSSHub);其次,您不应该问读者,而是应该问作者,看看那些您认可的作者推荐哪些内容。根据被推荐的网站和作者之间的关联强弱,推荐也分几个层级,据我个人经验,由强到弱分别是:
- 在文章中直接引用的网站:引用是最高的赞美,至于“友情链接”之类的很可能是商业互吹,后期即便发现对方是个**,碍于面子不好意思撤掉。
- 直接推荐的网站:作者愿意在 Twitter 上、在 Link Blog 里甚至专文介绍的网站,一般都不会差,不过和作者本身的领域可能关系不大,比如好几位(前)情报人员居然都推荐了青蛙创意总监的博客,我这个外行倒是乐呵呵地照单全收,可安全行业的人恐怕就用不上。
- “友情链接”:尽管掺有面子成分——包括自擡身价、扶持后辈以及互相吹捧——但网页侧边或者底部的友情链接还是值得打开一下,尤其在作者比较爱惜羽毛的情况下,友链里面也可以挖到宝藏。不过友链很可能和作者的专业领域隔得很远,有些作者干脆会注

