weekly

第 118 期 03/13 VisualChatGPT

go vs rust Source:《Why Turborepo is migrating from Go to Rust

技术热闻

VisualChatGPT

https://github.com/microsoft/visual-chatgpt

微软开源的 Visual ChatGPT connects ChatGPT and a series of Visual Foundation Models to enable sending and receiving images during chatting.

2023年最新AIGC绘画水平发展

https://mp.weixin.qq.com/s/Lc_BZtBOB-pZA3_rv-htiA

这两年 AI 关键词频频热搜,从 2022 年 4 月初代码自动补全神器Copilot点燃程序员圈,到 10 月中旬的 AI 绘画Stable Diffcusion 1.0震惊绘画圈,最后到如今的ChatGPT引爆全网各领域。在 2023 年,AI 绘画技术和应用的发展已经非常迅速。本文介绍 AIGC 绘画技术和应用。

The Most Popular Node.js Frameworks in 2023

https://stackdiary.com/node-js-frameworks/

本文介绍 Node.js 框架的一些相对更新的框架。But the landscape of Node.js frameworks has changed dramatically in recent history. More and more frameworks are built as hybrid (meta) solutions, catering not only to back-end but also full-stack developers. This article addresses the current trends, and explores the most popular Node.js frameworks.

View Transitions API: Creating Smooth Page Transitions

https://stackdiary.com/view-transitions-api/

本周 Chrome 111 has just been released,原生支持了 View Transition API,值得关注。This new feature simplifies the process of creating animated transitions between different states or views in web applications, allowing developers to update the web page’s content while also animating the changes in a single step.

Astro: 2023 Web Framework Performance Report

https://astro.build/blog/2023-web-framework-performance-report/

Astro 发布的 Web 框架性能报告:To create this report, we decided to look at six popular JavaScript-based web frameworks: Astro, Gatsby, Next.js, Nuxt, Remix, and SvelteKit. We also include data from WordPress when possible, due to its popularity and large market share (43.2%) on the web. 需要注意的是,性能并不是框架选择的唯一标准。

大前端

TypeScript

TypeScript’s Migration to Modules

https://devblogs.microsoft.com/typescript/typescripts-migration-to-modules/

本文来自 Microsoft Developer Blogs,介绍 In TypeScript 5.0, we restructured our entire codebase to use ECMAScript modules, and switched to a newer emit target.。简单背景是 Fast-forward several years, and we were starting to feel more of the downsides of namespaces. 最后 We figured eventually, we could switch to direct imports across files. 并带来一些好处。阅读原文,详细了解之。

All JavaScript and TypeScript Features of the last 3 years

https://betterprogramming.pub/all-javascript-and-typescript-features-of-the-last-3-years-629c57e73e42

This article goes through almost all of the changes of the last 3 years (and some from earlier) in JavaScript / ECMAScript and TypeScript.

Rust

Why is building a UI in Rust so hard?

https://www.warp.dev/blog/why-is-building-a-ui-in-rust-so-hard

来自 Warp – is a blazingly fast, Rust-based terminal reimagined from the ground up to work like a modern app. Rust 应用范围很广,无论是 Linux 内核、Android 还是前端圈等等,但它有一个问题:the design of the language itself makes modeling common approaches to building UI difficult. In this post, I’ll discuss why Rust’s unique memory management model and lack of inheritance makes traditional techniques to build a UI framework difficult and a few of the ways we’ve been working around it. I believe one of these approaches, or some combination of them, will ultimately lead to a stable cross-platform UI toolkit for high-performance UI rendering that everyone can use.

Why Turborepo is migrating from Go to Rust

https://vercel.com/blog/turborepo-migration-go-rust

这两年在前端打包构建领域又出现了两名新贵:Vite、Turbo。同时 Rust 在前端圈也引发了不少的重写,Turbo 便是其中之一。本文介绍 Turbrepo 为什么从 Go 改为 Rust。However, as the Turborepo codebase has scaled and merged with Turbopack, Go has begun to underserve both our core team and users in the areas that matter most to Turbo. We fully recognize the mismatch of Go’s priorities and what we are prioritizing as a problem that we created for ourselves to solve. Rust’s type system and safety features allow us to put guardrails in place in our codebase where we need them.

字节跳动自研 Web 构建工具 Rspack 正式发布

https://mp.weixin.qq.com/s/R-tjPrj2N2DKMO8_cPsp9Q

Rspack 是由 ByteDance Web Infra 团队孵化的基于 Rust 语言开发的 Web 构建工具,到今天为止 Rspack 已经开发 11 个月左右的时间了,目前 Rspack 已经完成了 Webpack Loader 架构的支持。

跨端

Capacitor: Building Native Mobile apps with React DOM

https://ionic.io/blog/building-native-mobile-apps-with-react-dom

Ionic 出的 Web Native App 框架,CEO 出来再次为 Capacitor 站台。

小程序

京东小程序折叠屏适配探索

https://mp.weixin.qq.com/s/ce9hFieEjbOdXnQ5KyvLjQ

手机屏幕占比也随着技术和系统的进步越来越大,折叠屏逐渐成为Android手机发展的趋势。应用在折叠屏运行时,可以从一个屏幕切换到另一个屏幕。应用应该做好配置变更的适配和界面状态的保存,以保证应用当前任务能无缝迁移到转换后的屏幕,从而为用户提供出色的连续性体验。

Git

Git tags vs branches: Differences and when to use them

https://circleci.com/blog/git-tags-vs-branches/

来自 CircleCI 博客:Git tag 和 branch 入门级介绍,无论是从定义还是用途,都写的很清晰。A tag is an object referencing a specific commit within the project history, similar to chapter markers in a book. A branch is an independent development line containing a pointer — or the branch head — to the most recent commit in the code. Unlike branches, tags are not intended for ongoing development. Tags mark a specific point in the repository’s history to give developers an easy way to reference important milestones in the development timeline.

gitmoji-cli

https://github.com/carloscuesta/gitmoji-cli

推荐一个 git emoji log 工具:A gitmoji interactive command line tool for using emojis on commits.

DevOps

Introducing Unity DevOps for game development

https://blog.unity.com/engine-platform/introducing-unity-devops-for-game-development

来自 Unity Blog,介绍 Unity 游戏开发时 DevOps:But for too long, game studios like yours have found themselves underserved by DevOps products made for general software development. 游戏开发 DevOpos 与 Web 相比,考虑的因素有很多不同,可以阅读体会下。

京东小程序CI工具实践

https://mp.weixin.qq.com/s/2llcykBWtL3VfrSzE6onKA

本文从整体介绍了京东小程序CI工具的用途及工作流程,通过CI工具,开发者无需依赖小程序开发者工具即可实现京东小程序的预览、上传等操作。同时结合构建脚本和流水线,可以支持代码包的远程部署,实现小程序CI/CD。

迈向卓越 - 闲鱼终端场景CI能力体系化建设

https://mp.weixin.qq.com/s/1WaRRQXxsFZlWA1oT1jldA

本文介绍咸鱼 CI 方卖弄的建设:闲鱼从2014年创立,到2022年已经走过了8个年头,闲鱼APP也随之逐渐复杂。从解决实际问题出发,闲鱼终端团队和质量团队一起协作在2022财年进行了CI能力体系化建设,并已经通过在单测,代码质量,自动化测试&回归等方面的建设,形成了一整套的能力沉淀。通过这些能力,我们成功在闲鱼终端研发场景下实现了代码质量的稳步的提升,并在部分仓库现了向类主干开发模式的切换。本文将分享整个能力建设的过程以及我们在其中的思考,希望能给大家带去一些借鉴。

Network

淘宝HTTP3/QUIC技术演进与实践

https://mp.weixin.qq.com/s/uwMxy5v_uwQDCMAUWgWgPw

本文主要介绍淘宝在网络技术方面的一些进展,HTTP3/QUIC 的升级与应用。

云研发

研发在云端:淘系云研发体系实践

https://mp.weixin.qq.com/s/sgVwY3myX1BGQ2vWQdGx1A

之前 QConf 分享的文字版:以淘宝内部落地云研发项目 O2 Online 为例,介绍云研发在落地过程中遇到的一些挑战与解法。同时探讨云研发的未来。

Native

淘宝widget链路方案总结

https://mp.weixin.qq.com/s/ZSt–YspkI4GHqbGCasvLQ

本文介绍淘宝在 Widget 上的进展:目前widget生态已经做了大量的基建工作,同时在widget生态的演进过程中我们发现如何匹配用户的偏好一直以来是一个挑战工作,本文介绍了widget的整体链路:从静态widget -> 动态widget -> 用户自定义布局。

设计

京东快递小程序惊喜速达服务设计复盘

https://mp.weixin.qq.com/s/nPOGV_8iU6tU4xWcF3_4MA

对于成熟期的快递小程序产品来说,追求极致体验的路上,需要有具有仪式感的设计。仪式感的设计能够赋予产品生命力,和用户产生互动,引导用户操作更好的达成设计目的。


欢迎加入,一起共建。