本期看点


The Developer Experience Gap

https://redmonk.com/sogrady/2020/10/06/developer-experience-gap/

If there is and can be no Apple-equivalent enterprise vendor arriving to make sure the enterprise telephone app team plays nicely with the enterprise music player team, what progress can be expected? It’s early, and the next few quarters should provide hints at who has accurately identified the depth of the problem and taken steps to address it. In the meantime, here are five adjectives that will describe the next generation of developer experience: Comprehensive, Developer Native, Elegant, Multi-Runtime, Multi-Vendor.


Faster Web App Delivery with PRPL

https://addyosmani.com/blog/the-prpl-pattern/

PRPL is a pattern for structuring and serving web applications and Progressive Web Apps (PWAs) with an emphasis on improved app delivery and launch performance. The letters describe a set of ordered steps for fast, reliable, efficient loading.


Webpack 5 release

https://webpack.js.org/blog/2020-10-10-webpack-5-release/

The major version was also the chance to revise some of the defaults and to align with proposals and specifications that come up in the meantime. Relaeted: Webpack 5 Headache, How to Set Up webpack 5 from Scratch.


Temporal: Open Source Workflows as Code

https://mikhail.io/2020/10/temporal-open-source-workflows-as-code/

https://www.temporal.io/

Microservices, serverless functions, cloud-native applications—distributed event-driven business applications are hot, and we will deal with them for years. I worry that the application development industry underestimates the complexity of such systems. Ad-hoc solutions to common problems may rapidly increase the technical debt and slow down the ability to innovate. I’m excited to see tools like Temporal enter the space of open-source workflows, or rather the space of asynchronous data processing. Releated: Why the Serverless Revolution Has Stalled, Serverless Horror Stories.


Emerging Architectures for Modern Data Infrastructure

https://a16z.com/2020/10/15/the-emerging-architectures-for-modern-data-infrastructure/

And yet, despite all of this energy and momentum, we’ve found that there is still a tremendous amount of confusion around what technologies are on the leading end of this trend and how they are used in practice. In the last two years, we talked to hundreds of founders, corporate data leaders, and other experts – including interviewing 20+ practitioners on their current data stacks – in an attempt to codify emerging best practices and draw up a common vocabulary around data infrastructure. This post will begin to share the results of that work and showcase technologists pushing the industry forward.


Thoughts writing a Google App script

https://martinfowler.com/articles/202009-google-app-dir.html

Recently a friend of mine asked for a simple program that would correlate some data drawn from a couple of online services. I decided the best way to do this for him would be to use a google spreadsheet as the host, putting the code into the spreadsheet's script area. I'm no expert in Google App Script, but the exercise led to a few observations, which I feel compelled to share.


深阅读


How focusing on web performance improved Tokopedia's click-through rate by 35%

https://web.dev/tokopedia/

Creating a web performance dashboard and optimizing JavaScript, resources, and the homepage to achieve business success.


Svelte for Sites, React for Apps

https://www.swyx.io/svelte-sites-react-apps/

Why we should stop trying to use the same tool for different jobs. In 2020, my personal recommendation to web developers is to use Svelte for Sites, and React for Apps. This is, remarkably, a nuanced enough opinion that it pisses off fans of either of them.


编码技巧(五):适当可扩展

https://zhuanlan.zhihu.com/p/266076082

本文介绍了一个新的编码技巧:“适当可扩展”,什么样的代码才能成为 “适当” 的呢?文中详细的进行了解释。值得一提,代码的各种优秀特征,都是需要花费精力来写出来的,也就说需要成本,我们才能有收益。所以,提供 “可扩展性”,必然得是满足了相关的需求,不能是开发者一厢情愿而为之。当然为了追求技术精进,高度可扩展的案例,也是非常值得学习的。

这并不冲突。我们可以身怀绝技,但用的时候却只 “恰到好处”。这才是行家的手笔呀。


聊聊前端 UI 组件:组件体系

https://ourai.ws/posts/the-system-of-frontend-ui-components/

在本系列的上篇文章《聊聊前端 UI 组件:组件特征》中,通过从关注点分离的角度进行前端 UI 组件的构成分析,并以较为抽象的视角对 UI 组件分门别类,以及描述了让组件间可以表现复用的继承关系,从而建立出前端 UI 组件的特征模型。本文将以上篇文章中所得出的特征模型为基础,探讨下如何设计并建立一个前端 UI 组件体系。在做组件体系设计的时候,最重要的一点就是——要真真正正地想着把 UI 组件弄成可复用的,就像制造业生产时所用的物料一样——构造可交换的 UI 组件。


前端模块化的十年征程

https://zhuanlan.zhihu.com/p/265632724

十年征程,前端模块化终于从呱呱坠地到长大成人。自动构建工具的新趋势:bundleless,把开发中拖慢速度的打包工作给去掉,从而获得更快的开发速度。代表性工具是vite和snowpack。


如何提升职业工作效率

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

工作效率,一般指的是工作产出与工作投入之比,我们总是渴望有高的工作效率,这意味,可以用更少的投入完成相同的产出,从而能够节省出资源在其他有意义的方面做投入。本文尝试从意识,主观,客观,团队内部与外部沟通,工具等六个方面进行工作效率提升的梳理,以期尽可能多视角归纳出工作效率改进的方向,对有相关困扰的读者起到一定的学习借鉴作用。


AIOps在美团的探索与实践——故障发现篇

https://tech.meituan.com/2020/10/15/mt-aiops-horae.html

美团技术团队在行业、业务领域知识和运维领域的知识等方面有着长期的积累,已经沉淀出不少工具和产品,实现了自动化运维,同时在AIOps方面也有一些初步的成果。我们希望通过在AIOps上持续投入、迭代和钻研,将之前积累的行业、业务和运维领域的知识应用到AIOps中,从而能让AIOps为业务研发、产品和运营团队赋能,提高整个公司的生产效率。


Cumulative Layout Shift in Practice

https://nicj.net/cumulative-layout-shift-in-practice/

Cumulative Layout Shift (CLS) is a user experience metric that measures how unstable content is for your visitors. Layout shifts occur when page content moves after being presented to the user. These unexpected shifts can lead to a frustrating visual and user experience, such as misplaced clicks or rendered content being scrolled out of view.


Supercharge Testing React Applications With Wallaby.js

https://www.smashingmagazine.com/2020/10/supercharge-testing-react-applications-wallabyjs/

Ever had to switch your focus from your editor and to your terminal to see the results of your tests? This article will introduce you to Wallaby.js — a JavaScript productivity tool that supercharges your IDE by allowing you to get real-time feedback on your JavaScript tests in your code editor even before saving the file. You will also learn how to use Wallaby.js for testing React applications.


World smallest office suite

https://zserge.com/posts/awfice/

We are all familiar with a traditional office suite - a word processor, a spreadsheet, a presentation program, maybe a diagramming or note-taking app. We have seen it all in Microsoft Office and Google Docs. Those are really powerful and large. But what would be the most minimal amount of code required to build an office suite?


Please stop using CDNs for external Javascript libraries

https://shkspr.mobi/blog/2020/10/please-stop-using-cdns-for-external-javascript-libraries/

Lots of websites use large Javascript libraries. They often include them by using a 3rd party Content Delivery Network. I think these advantages are overstated and lead to some significant disadvantages.


Rust after the honeymoon

http://dtrace.org/blogs/bmc/2020/10/11/rust-after-the-honeymoon/

All of this is not to say that Rust is perfect; there are certainly some minor annoyances (rustfmt: looking at you!), and some forthcoming features that I eagerly await (e.g., safe transmutes, const generics). And in case it needs to be said: just because Rust makes it easier to write robust software doesn’t mean that it makes it impossible to write shoddy software! Releated: Blades: A 'Blazing Fast' Simple Static Site Generator Built with Rust, Rust meets the web - a clash of programming paradigms.


新鲜货


Presenting v7.0.0 of the npm CLI

https://github.blog/2020-10-13-presenting-v7-0-0-of-the-npm-cli/

We are excited to announce the release of npm v7.0.0, which will be shipping with Node.js 15.0.0 next week. If you would like to try it out now, you can install today by running npm i -g npm@7 in your terminal.


Announcing: Flutter Community Plus Plugins

https://medium.com/flutter-community/announcing-flutter-community-plus-plugins-cf7cadf03b01

The Plus Plugins are a suite of open-source Flutter plugins that take some of the most common existing packages to the next level!


Babel 7.12.0 Released

https://babeljs.io/blog/2020/10/15/7.12.0

TypeScript 4.1, strings as import/export names, and class static blocks.


Introducing the new Google Analytics

https://blog.google/products/marketingplatform/analytics/new_google_analytics/

To help you get better ROI from your marketing for the long term, we're creating a new, more intelligent Google Analytics that builds on the foundation of the App + Web property we introduced in beta last year. It has machine learning at its core to automatically surface helpful insights and gives you a complete understanding of your customers across devices and platforms. It’s privacy-centric by design, so you can rely on Analytics even as industry changes like restrictions on cookies and identifiers create gaps in your data. The new Google Analytics will give you the essential insights you need to be ready for what’s next.


Introducing Cloudflare One

https://blog.cloudflare.com/introducing-cloudflare-one/

It is the culmination of engineering and technical development guided by conversations with thousands of customers about the future of the corporate network. It provides secure, fast, reliable, cost-effective network services, integrated with leading identity management and endpoint security providers.


Definitely not Windows 95: what operating systems keep things running in space?

https://arstechnica.com/features/2020/10/the-space-operating-systems-booting-up-where-no-one-has-gone-before/

The updates don't come every spring and fall, but space operating systems keep evolving.


Atlassian Design System

https://atlassian.design/

Use Atlassian’s end-to-end design language to create simple, intuitive and beautiful experiences.


Day.js

https://github.com/iamkun/dayjs

2KB immutable date-time library alternative to Moment.js with the same modern API


ReactGrid: Add a Spreadsheet-like Experience to Your React App

https://github.com/silevis/reactgrid

The UI element you can almost guarantee will be familiar to your app’s prospective users is a spreadsheet grid. The fully-featured ReactGrid comes in both MIT-licensed and commercial versions and can be demoed here.


TinyMCE for Web Components

https://www.tiny.cloud/blog/tinymce-for-web-components/

Tiny is excited to announce our TinyMCE integration into Web Components. Web Components are a set of built-in browser capabilities that let developers create custom HTML elements in a similar manner to what is available in frameworks like React or Angular.


Announcing Ionic Vue

https://ionicframework.com/blog/announcing-ionic-vue/

Ionic Vue has been written to take advantage of all the great new features that recently shipped in Vue 3.


ZzFXM - A tiny JavaScipt music generator

https://keithclark.co.uk/articles/zzfxm/

ZzFXM is a tiny music generator designed for size-limited JavaScript productions. It’s built on the equally tiny ZzFX sound library, by Frank Force.


VisiData

https://jsvine.github.io/intro-to-visidata/index.html

https://www.youtube.com/watch?v=N1CBDTgGtOU

A terminal spreadsheet multitool for discovering and arranging data.


Quasar Framework: Full Frontend Framework for Mobile and Desktop Apps

https://medium.com/javascript-in-plain-english/quasar-framework-full-frontend-framework-for-mobile-and-desktop-apps-5b60537bc36b

Meet the rising superstar Quasar framework that enables developers to create cross-platform applicat1ions from a single code. Find out how Razvan Stoenescu developed this extremely efficient framework from a naive need of an exhausted developer. Get acquainted with how Quasar helps build mobile and desktop apps for several platforms- Android, iOS, MAC, Windows, Linux, etc. You will fall in love with the fantastic features and functionalities provided by this fantastic Quasar Framework mobile apps. Finally, compare Quasar with another Vue.js framework Vuetify, and decide for your cross-platform app development.


ElectronJS alternative: SciterJS – HTML/CSS/JS in 4.5 MB executable

https://github.com/c-smile/sciter-js-sdk

Sciter is an embeddable HTML/CSS/scripting engine, Windows, Mac OSX and Linux.


Bubble Tea

https://github.com/charmbracelet/bubbletea

The fun, functional and stateful way to build terminal apps. A Go framework based on The Elm Architecture. Bubble Tea is well-suited for simple and complex terminal applications, either inline, full-window, or a mix of both. Releated: Cobra - A Framework for Modern CLI Apps in Go.


Low-Level Academy

https://lowlvl.org/

Low-Level Academy is an interactive course where you can learn systems programming by creating small projects from the first principles with visual and intuitive explanations.


设计


The Short Guide to Generative Art & Creative Coding

https://blog.prototypr.io/the-short-guide-to-generative-art-creative-coding-fc36ff163708

Whether you’re a beginner or professional in art/engineering who is simply intrigued by the mesmerizing patterns of generative art, here’s some ways you can learn something new.


Refine, Remodel, Rebuild: 3 Strategies for Experience Improvement

https://www.nngroup.com/articles/refine-remodel/

To improve customer experience, organizations can choose solutions ranging from low to high investment and impact, depending on their current state, budget, risk tolerance, transformation readiness, and unmet needs.


设计向善 | QQ群作业策划故事

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

作为拥有大量用户的聊天工具,QQ早就对群进行了分类,以满足用户不同的垂直聊天场景。目前QQ已经针对家校、游戏、粉丝群尝试过垂直场景设计。而疫情突然来袭,使线上学习的需求空前迫切,QQ群作业火速更新和完善多项功能,以满足线下作业改为线上批改的垂直场景,下面让我们一起走进QQ群作业的设计故事吧。


产品及其它


Help kids Be Internet Awesome

https://beinternetawesome.withgoogle.com/en_us/interland

To make the most of the Internet, kids need to be prepared to make smart decisions. Be Internet Awesome teaches kids the fundamentals of digital citizenship and safety so they can explore the online world with confidence.


How AI is powering a more helpful Google

https://blog.google/products/search/search-on/

When I first came across the web as a computer scientist in the mid-90s, I was struck by the sheer volume of information online, in contrast with how hard it was to find what you were looking for. We’ve made tremendous progress over the past 22 years, making Google Search work better for you every day. With recent advancements in AI, we’re making bigger leaps forward in improvements to Google than we’ve seen over the last decade, so it’s even easier for you to find just what you’re looking for. Today during our Search On livestream, we shared how we're bringing the most advanced AI into our products to further our mission to organize the world’s information and make it universally accessible and useful.


The future of community: a future for communities

https://thesephist.com/posts/community-possibility/

For the last year or so, but especially since this summer, I’ve found myself almost consumed by thinking about communities – how the best ones are created, and how they can scale. But I also started to realize the possibility space for interesting communities to have an impact on the world is much larger than I expected. Conversely, I think most of the money and effort being directed toward improving the status quo of community building is misdirected by a myopic view of where that impact will be, and what problems we need to solve together for that impact to be fully realized.


Good sleep, good learning, good life

https://supermemo.guru/wiki/Good_sleep,good_learning,good_life

This e-book attempts to produce a synthesis of what is known about sleep with a view to practical applications, esp. in people who need top-quality sleep for their learning or creative achievements. Neurophysiology of sleep is an explosively growing branch of science. Many theories that are currently contested will soon be forgotten as a result of new findings.


企业文化建设需要适度“用力过猛”

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

企业文化建设,是一个有破有立的过程,破在固有的思想观念和行为模式,立在新的思想观念和行为标准。按照惯性定律,没有外力作用时,事物总是处于匀速运动或静止状态,因此成功的企业文化建设,多少会给人一种“用力过猛”的感觉,否则不足以打破当下的惯性;即便是自我心灵觉醒,同样也需要外力。海尔砸冰箱,就是一种适度“用力过猛”的外力,张瑞敏砸的不是冰箱,砸的是当时干部员工队伍中落后的思想观念,不光在企业内部,甚至在整个企业界唤醒了人们沉睡的质量意识。适度“用力过猛”,为的是让人从习以为常的稳态中惊醒,迈向需要做功的激活态(非稳态)。


当百度to B

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

当云计算进入以各行业传统企业和政府部门为主力客户的“下半场”,一个行业共识是,计算与存储的基本能力之外,云与AI的结合将成为接下来的关键竞争点——云计算负责新型IT基础架构,AI负责具体业务问题。而在云和AI两个领域,尤其是二者的结合上,百度都是重要的玩家。


对数据可视化有兴趣的可以阅读由 AntV 带来的 墨者修齐 2020-10-18 ·为什么智能手机会导致颈部综合征、名作失窃可视化、世界咖啡顶级生产国、对tensorflow中数据流图的可视分析、Bird Sounds、加餐-乘风破浪的 G6 3.8.0


-- THE END --