V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fowse
V2EX  ›  程序员

软件工程中沉默的大多数丨 RTE 技术环境月报 202209

  •  
  •   fowse · 2022-09-06 12:24:09 +08:00 · 1764 次点击
    这是一个创建于 812 天前的主题,其中的信息可能已经有所发展或是发生改变。

    本期内容由MikeyTinaAsuiKyle白宦成共同制作。

    各位开发者小伙伴:

    这里是 2022 年第 9 期的 RTE 《技术环境月报》——致力于成为对大家“有用”的 Highlight 看板。

    月刊中的点评仅代表个人,如有不同观点,欢迎大家各种留言跟帖讨论。希望此后的日子里,《技术环境月报》能与各位如期相见、偶尔启发。以下为月报正文:

    00. 本月好文推荐:《软件工程中沉默的大多数

    在软件开发中,沉默的大多数是编写代码、调试程序和解决幕后复杂问题的工程师们。如果没有他们,许多项目实际上会陷入停顿。而另一个容易被忽略的沉默的大多数是用户群体。事实上,那些愿意提供反馈的用户往往因为得不到及时的回应,最终心灰意冷,选择用脚投票。

    在 HN/Reddit 上似乎有一个假设,即互联网上任何形式的发声都与真实的声量成正比。但与此同时在 HN/Reddit 上的评论会被一群持有相同观点的人极化,人们很难反对并提出不同的观点。

    大家都知道用户反馈的重要性——对改进产品至关重要。然而,许多用户从不提供反馈,要么是因为他们对产品的现状感到满意,要么是他们懒得花时间填写调查和提交错误报告——大多数用户都是沉默的。如果不满意,他们会默默地选用别的产品。你不能依赖沉默的用户给你真实的反馈,但你仍可以从他们身上学到很多东西:观察他们如何使用产品,然后设置适当的分析以深入了解他们的需求和期望。

    01. [音视频] 行业发展的趋势在细分领域


    • 在过去的两年中,自动语音识别( Automatic Speech Recognition, ASR )在商用上取得了长足的发展,多个完全基于神经网络的企业级 ASR 模型成功上市。随着 ASR 技术的识别准确度大幅提升以及应用场景越来越丰富,Rev.com AI 研发主管 Miguel Jetté 认为未来 10 年里多语言 ASR 模型、面向所有人的大规模 ASR 、负责任的 ASR 、人机协同以及丰富的标准化输出对象 5 个领域将成为 AI 语音识别的主要趋势
    • 对音视频领域而言,产业和学术两侧目前最大的不一致是目标的不一致,用互联网的话来说就是 KPI 不一致。「网易云音乐实验室负责人刘华平」在接受声网开发者社区的访谈时表示,音频技术是对人类听觉系统的延伸,音频技术不是“自嗨”,远未达到人类感知的极限。
    • 音视频技术有着非常强的市场需求,这背后的原因是音视频技术有跨学科的特性,这使音视频技术的门槛和天花板都很高。音视频行业布道师李超作为资深的行业从业者,分享了从技术管理转型“技术布道”的心路历程,也分享了他对于音视频行业的理解。
    • 音频技术发展已经到了一个平台期阶段,下一个“热点”会出现在哪个领域?从技术角度看,VR 和 AI 等新技术已经火过不止一次;当前大火的元宇宙对视频的关注明显多于音频;在更多细分领域,把声音的(语音识别、场景识别、音源识别)前端感知能力当作传感器,结合后端逻辑实现物联网、工农业生产、医疗等场景下的定位、识别、检测等自动化管理,都有很广泛的应用前景。
    • 近日 Google 以 Apache License 2.0 协议发布了 AI 图像降噪工具 MultiNerf,这则视频( YouTube )演示了其工作原理。谷歌的科学家表示 MultiNerf 整合了今年在电脑视觉和图形识别( Computer Vision and Pattern Recognition Conference ,CVPR )大会上的 3 个 AI 影像降噪算法( Mip-NeRF 360 、Ref-NeRF 、RawNeRF ),而这 3 个算法又是 NeRF ( Neural Radiation Fields )算法的延伸或增强。

    02. [前端] 如何对越来越“重”的前端减负


    • 根据 StackOverflow 的调查,逾 65% 的开发者使用 JavaScript 。但 Argues JSON 作者 Douglas Crockford 认为 JavaScript 如今已和其它恐龙语言一样成为了进步的障碍、应将其退役,Crockford 认为 JavaScript 的问题是它日益臃肿,社区只顾着增加新功能而不愿修复缺陷,但他同时承认目前不存在 JS 语言的替代。无独有偶,近期谷歌工程师在 CppNorth 大会上宣布谷歌欲将 Carbon 语言打造成“C++ 的实验继承者”。有开发者透露在今年 2 月 C++ 标准委员会“破坏 ABI 兼容性以保证性能”提案投票失败后,许多谷歌员工停止参与 C++ 的标准化工作,并辞去他们在委员会中的正式职务。也许这个现象很好地解释了为什么有这么多编程语言?为什么没有一种大家都会用、公认最好的编程语言?
    • Reddit 用户在一份 Chrome Manifest V2 支持时间表中发现,从 2023 年 1 月起,所有浏览器扩展将被切换到新版本的 Manifest V3 API 。这个版本的 API 特意取消了阻止网络请求的能力,这将导致尤其是 uBlock Origin 、uMatrix 和 NoScript 等许多被认为重要的隐私保护插件失效。搜索巨人在这方面可谓一意孤行,部分插件厂商如 AdGuard 已经发布基于 Manifest V3 的版本。考虑到苹果也宣布加大系统内置广告的力度,这也没什么难理解的。
    • 尽管 32 kb 的 JavaScript 对当今主流智能手机和快速宽带的现代网络上微不足道,但对于许多低配设备和弱网用户而言却另当别论。在第 6 期月刊中,我们曾提到英国政府网站 GOV.UK 通过移除 jQuery 改进性能一事。近期英国政府网站发布了《移除 jQuery 对我们 Web 性能的影响》的文章,介绍了性能改进的结果:用户在 2G 环境下,页面完全加载所需的时间提高了 8%,总页面加载时间提高了 9%;交互时间提高 17%,设备 First CPU 空闲时间提高 17%。
    • 英伟达对 GeForce 游戏流进行了重大升级:在 Chrome & Edge 浏览器中开始支持 1440P 分辨率和 120 帧高刷。此前用户必须下载专用的 Mac & Windows 应用程序才能实现,因为其 Web 版仅支持 60 帧的 1080P 分辨率。

    03. [网络] 实时互联网要更快、更强、更安全


    • 过去十年在公共互联网中多路径传输的大规模部署一直很缓慢。《淘宝多路径 QUIC 服务》介绍了淘宝研发的 XLINK 多路径 QUIC 视频传输解决方案,展示了使用 XLINK 升级到淘宝安卓应用的消费者的超过 300 万次电子商务产品短视频播放的结果。我们的研究表明,与单路径 QUIC 相比,XLINK 在第 99 个百分位视频块请求完成时间方面实现了 19% 到 50% 的改进,在第 99 个百分位的第一个视频帧延迟方面改进了 32%,重新缓冲率实现了 23% 到 67% 的改进,以 2.1% 的冗余流量为代价。
    • 在实时通信中,延迟是一个重要的问题。LiveSwitch 的首席执行官兼联合创始人 Jerod Venema 在《如何分析和理解实时视频中的网络数据》博文的上篇中提出,需要从采集端的时间戳、接收高清图像的耗时等方面分析问题。
    • 在今年 4 月的流媒体峰会上,Netflix 高级软件工程师 Drew Gallatin 分享了《 Netflix 800Gb/s 及更高速度在线视频服务实践》,介绍了 Netflix 从 2014 年至今从异步发送文件、内核 TLS 、以网络为中心的非统一内存架构、嵌入式硬件(网卡)的 kTLS 等一系列技术革新。
    • 越来越多的 SIP 呼叫开始采用 RTP 协议传输数据,但公共电话交换网络在某些情况下是不加密的,使得窃听、重放攻击、通信干扰变的容易,Twilio 的安全工程师 Matt Coser 在《对 VoIP 加密通信的研究》一文中介绍 SRTP ( Secure RTP )的工作原理、以及对 VoIP 进行加密的必要性和可操作性。

    04. [开发 & 运维] 技术中立性与 API 使用规范


    • 大约十年前,深度学习模型开始在各种任务上取得超人的成绩。这些强大的深度学习模型通常基于人工神经网络。随着机器学习领域的发展,深度学习模型现在通常由多层中的数百万或数十亿个互连节点组成,这些节点经过训练可以使用大量数据执行检测或分类任务。但是由于这些模型非常复杂,即使是设计它们的研究人员也不能完全理解它们是如何工作的,这使得很难知道它们是否正常工作。
    • 美国国家科学院和工程院双院院士、哥德尔奖获得者谈算法的公平性:算法容易受到偏见的影响,这些偏见会使他们的决策“不公平”。随着偏见在现实世界中愈加凸显,机器学习中的公平性问题近年来已成为研究热点。但理想的群体公平很难实现,群体公平决策最大的问题在于,自然状态下群体公平愿望不能实现——除非这两个不同群体的基准率相同,或者有一个完美的预测。
    • 为什么你不应该在 React 中直接使用 useEffect 从 API 获取数据。在 React 中,一个常见的 Pattern 是使用 useEffect 搭配 useState 发送请求、将状态从 API ( React 外部)同步到 React 内部、用于渲染 UI ,这篇文章恰恰在向你介绍为什么你不应该直接这么做。
    • RESTFul 规范的提出者 Roy T. Fielding 对将任何基于 HTTP 的接口称为 REST API 的现状感到十分沮丧,他认为如果应用程序状态引擎(以及 API )不是由超文本驱动的,那么它就不能是 RESTful 并且不能是 REST API ,REST API 应该没有批量操作,而是应该抽象一个 Batch Resource 。

    If you find yourself in need of a batch operation, then most likely you just haven’t defined enough resources.

    05. [开源、安全及其他] 我们已陷入永久的网络战


    • KCon 2022 议题回顾《进退维谷:runC 的阿克琉斯之踵》,绿盟的研究人员在本文中探讨了 DirtyPipe 漏洞写 runC 逃逸的利用手法,分析了“写 runC 逃逸”的成因、常见场景与手法,最后提出了一种基于 ELF 文件注入的写 runC 逃逸方法。
    • Linux 内核 nftables 子系统漏洞的研究与分析。启明星辰的研究人员对开源安全社区 oss-security 近期披露的多个 Linux 内核 netfilter (均出现在子系统 nftables 中)模块相关漏洞进行了研究分析,深入浅出、言简意赅值得推荐。
    • 知名 CPaaS 公司 Twilio 被黑客入侵的影响还在发酵,Signal 部分用户( 1900 名)账户遭入侵。超过 3300 万人和 100,000 家企业使用,世界上最大的密码管理公司之一LastPass 被黑客攻陷,并盗走源代码和文件。77%的安全领导者担心从现在起我们将陷入永久的网络战。
    • 处理安全协议和身份令牌以及用户和设备身份验证对于大多数开发者而言颇具挑战性,尤其是面对多个协议、多个令牌、数以亿计的用户和数千种设备类型时,这个挑战更是令人畏惧。Netflix 的做法是将用户和设备身份验证以及各种安全协议和令牌的复杂处理转移到网络边缘。这篇《 Netflix 的内部系统登录设计》详细介绍了关于验证和授权的设计思路及实践,对于大型系统有较高的参考价值。

    06. 近期值得关注的会议

    • 云原生运行时开发者日
      • 会议介绍:Dapr 具备先天的跨语言优势,其设计更是从根基上兼容了多云、非容器和非云环境,在给予企业和开发者更多选择的同时,也是各传统企业云转型路上的一大助力。
      • 会议时间:2022 年 9 月 3 日
      • 会议地点:在线会议
    • 第十三届 IT 运维大会
      • 会议介绍:IT 运维智慧化探索与实践,数据中心远程运维,大数据时代的智能运维,安全运维,自动化运维平台的建设,数智时代 AIOps 落地实践,云原生运维,DevOps:新型智能运维模式,数据驱动的智慧运维平台,大数据运维与安全审计,混合云下的 IT 运维部署方案,云环境下的 IT 运维管理……
      • 会议时间:2022 年 9 月 8 日
      • 会议地点:北京辽宁大厦(线上同步)
    • 谷歌开发者大会
      • 会议介绍:一起探索更高效的开发工具与实践、体验更无间的互动交流、共同用代码构建美好的未来……
      • 会议时间:2022 年 9 月 14 、15 日
      • 会议地点:上海世博中心

    07. 开源项目推荐


    • wttr.in 是一个面向控制台的天气预报服务(甚至有点炫酷),基于 wego 创建。
    • ioredis 近期该项目成为了 Node.js 最流行的 Redis 客户端。
    • ravynOS 是一个基于 FreeBSD 的 macOS 模拟替代,这是众多仿 macOS 项目中较新的一个。

    《 RTE 技术环境月报》——致力于成为对大家“有用”的 Highlight 看板 ——每月初通过 RTC 开发者社区和声网开发者公众号以及 EDM 邮件等渠道发布,恳请大伙儿多转发、多反馈。

    对于任何反馈(包括但不限于内容上、形式上)我们不胜感激、并有小惊喜回馈,例如你希望从“技术环境月报”中看到哪些内容;自己推荐的信源、话题、会议等;或者列举几个你喜欢看、平时常看的内容渠道;内容排版或呈现形式上有哪些可以改进的地方等。

    我们欢迎更多的小伙伴参与“月刊”内容的共创,感兴趣的朋友请通过开发者论坛或开发者公众号联系,记得报暗号“共创”。

    由于文中内容包含较多信源超链接、建议大家前往「 RTC 开发者社区」或使用我们的邮件订阅服务,以获得更好的阅读体验。

    3 条回复    2022-09-16 17:35:43 +08:00
    rushssss
        1
    rushssss  
       2022-09-06 18:48:10 +08:00
    信息密度太高了,赞
    siweipancc
        2
    siweipancc  
       2022-09-07 09:33:27 +08:00 via iPhone
    4. RESTFul 批量这里指出的解决方式是什么?看不懂
    xiqingongzi
        3
    xiqingongzi  
       2022-09-16 17:35:43 +08:00
    @siweipancc 这个方案下,按我理解的作者的意思,你应该定义一个 BatchXXX 的资源,并对他来进行设计。而不是做资源的 batch 操作。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1474 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 23:52 · PVG 07:52 · LAX 15:52 · JFK 18:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.