该周报主要为各个地方内容的汇总整理
JavaScript 作为最流行的编程语言,已经扩展到了浏览器之外,现在在服务器端和嵌入式 JavaScript 运行时中使用。JavaScript 的 ECMAScript 标准主要是由浏览器的需求驱动的,但随着服务器端 JavaScript 的兴起,不同运行时之间需要更多的合作和兼容性。W3C 的 WinterCG 社区组旨在解决浏览器和非浏览器运行时之间的跨运行时互操作性。他们希望创建一个可以根据特定需求进行定制的 JavaScript 运行时的标准规范。这种标准化将使开发人员能够编写一次代码,然后在不同的服务器端运行时上运行。WinterCG 还正在制定一个最小公共 Web 平台 API 列表,以确保在各个运行时中实现 Web API 的一致性。此外,TC39 提案中引入了一个名为 async context 的方式,用于简化在服务器端环境中的代码追踪。目标是创建一个通用的 JavaScript,可以在多个服务器上同时用于客户端和服务器端。
本文讨论了 Next.js 13 中的预取概念,这是一种通过在后台预加载内容来加快网页加载速度的技术。预取根据用户行为预测并主动加载预期的页面或网站部分,当用户请求内容时几乎立即显示。在开发过程中,Next.js 根据应用程序的导航自动预取路由,提供无缝体验。在生产构建中,路由在视口中可见时进行预取,确保页面之间的即时转换。文章还提到了如何针对特定链接禁用预取和以编程方式预取路由。总体而言,Next.js 13 中的预取优化了网页加载速度,并创建了流畅的导航体验。
本文探讨了使用 CSS 技巧为图像创建令人惊叹的 3D 效果。作者演示了三种不同的效果:CSS 3D 闪光效果、CSS 3D 视差效果和 CSS 3D 旋转效果。CSS 3D 闪光效果在悬停时为图像添加了闪光动画和轻微旋转。CSS 3D 视差效果通过在悬停时稍微滑动图像并改变视角,营造出深度感。CSS 3D 旋转效果沿着 y 轴旋转图像,创建出 3D 效果。作者提供了每种效果的详细解释和代码示例。
根据 2023 年的 Stack Overflow 调查,Postgres 已经取代 MySQL 成为最受尊敬和渴望的数据库。本文对 Postgres 和 MySQL 在许可证、性能、功能、可扩展性、易用性、连接模型、生态和可操作性等方面进行了比较。总的来说,Postgres 有更多的功能、更繁荣的社区和生态,而 MySQL 则更易学习并且拥有庞大的用户群体。在一个组织内部共存 Postgres 和 MySQL 也是很常见的情况。
gRPC 是一个由谷歌开发的现代开源高性能 RPC 框架,可在多个开发环境下运行。与 HTTP API 接口相比,gRPC 采用了领先的 HTTP/2 底层架构设计作为底层传输协议,适用于大规模数据传输和微服务架构场景。它使用轻量级的 Protobuf 序列化协议进行数据交换,提供更快的数据处理速度,减少数据量并节省网络带宽。RPC 协议是一种远程过程调用的实现方式,用于通过网络通信在不同服务器之间调用进程。gRPC 成功隐藏了内部通信的复杂性,为开发者提供了稳定统一的接口,适用于微服务的分布式系统。
Bruno 是一个开源 IDE,用于探索和测试 API。它使用纯文本标记语言 Bru 来保存 API 请求的信息,并支持使用 git 或其他版本控制工具进行协作。它可以在多个平台上运行,并提供了网站、文档和支持。
网页文章内容提取
该文章宣布了 Prettier 代码格式化工具的新版本发布。更新包括迁移到 ECMAScript 模块、Markdown 格式的重大变化、插件接口的显著改进和各种错误修复。Markdown 格式的变化包括删除中文或日文字符与西方字符之间的空格。插件接口现在支持异步解析器。发布还包括对中文、日文和韩文的空格处理的改进,以及 trailingComma 的默认值的更改。文章还提到从 Babel 解析器中删除 Flow 语法支持和删除对 Flow 注释的支持。最后,文章介绍了纯 CSS 解析器,并提供了格式变化的示例。
Prisma 是一种流行的数据库 ORM 工具,它在启动性能方面取得了显著的改进。最新版本 Prisma 4.8.0 专注于增强 Prisma 在无服务器环境中的性能。改进包括更高效的基于 JSON 的传输协议,减少了 CPU 和内存开销,以及具有优化内部结构的较小的 JavaScript 运行时。这些改变使 Prisma 的启动性能显著提高。最新版本 Prisma 5.0.0 现已推出,鼓励用户进行升级。升级可能涉及一些破坏性的变化,但预计影响将很小。Prisma 致力于进一步提高性能,并将继续发布更新。
TypeScript-eslint v6 是一种工具,使 ESLint 和 Prettier 等 JavaScript 工具能够支持 TypeScript 代码。新版本带来了一些重大更改和功能。用户需要更新到最新版本并替换以前的软件包。配置名称已经重新设计,具有单独的功能和样式规则配置。预设配置中的启用规则也有所变化。一些规则已经更改或删除。工具方面也有一些重大更改,包括放弃对 Node v12 和 v14 的支持。最低支持的 TypeScript 版本现在是 4.2.4。此版本还包括为开发人员提供的改进,例如类型检查器包装器 API。
本文讨论了 Elstob 字体,它基于牛津大学出版社使用的 17 世纪字体。该字体有几个可变轴线,包括字重、光学大小、等级和斜体。每个轴线都可以调整,以创建字体的不同变体。文章提供了关于每个轴线及其取值范围的详细信息。它还提到该字体设计用于古英语语言和文学。
本文介绍了如何进行平价版体验度量实践,包括分层对比和交叉对比矩阵等方法,以及实践侧的前期预设后期验证,通过猜想和验证的形式来收敛数据分析的方向从而节省分析的资源投入。最后,通过具体实践案例,展示了如何拆解业务目标到体验目标,在体验目标中找出具体需要关注的核心路径,从而进行问题的挖掘和给到业务实际产品和设计策略建议。
本文讨论了交互设计背后的科学原理,并探讨了隐喻、动力学物理学、滑动手势、响应手势和空间一致性在创建出色用户体验中的重要性。作者强调设计中形式和功能之间需要保持良好的平衡,并强调直觉和本能行为在交互设计中的作用。
Cody 通过阅读您的整个代码库和代码图来回答代码问题并为您编写代码。
三个原则可以帮助你有效地记笔记。
(1)笔记必须符合你的思维方式。
做笔记要按照自己的思考方式,不能原封不动地按照老师(或者书本)的讲解方式。这样不仅你写起来更轻松,而且将来回顾笔记的时候,你也更容易理解自己当时的想法。
(2)笔记必须代表你的知识。
笔记不要仅仅复制/粘贴他人的话语,而要用自己的语言表达。你不妨标记清楚,哪些地方是已经理解的,哪些地方还没有理解或者有疑问。
(3)笔记必须可以轻松检索。
为了最大限度利用自己的笔记(其实也是节约自己的时间),它必须可以方便地检索。你要为每个部分写一个标题,并且定期整理出一份目录。
跟大家想的不一样,编程并不需要掌握深刻的思想,而是需要某种程度上记住文档,以便用某些固定词汇,清晰表达我们的想法。
-- 《编程需要知识的广度》
折腾了一晚上的 AutoBangumi 配置最后总算是跑起来了
https://zhuanlan.zhihu.com/p/641701649
创意领导的角色是培养更多的领导者,而不是追随者。我希望这种观点能够更为普遍。
当有人不同意你的观点时,不要为自己辩护。相反,要倾听。请他们解释,并验证他们的关切,进一步扩展并肯定他们的观点。只有这样,别人才会愿意倾听你所说的任何事情。我希望在我的青少年时期有人告诉过我这个道理。