腾讯 WE大会2017 11.05-06


Version 5.0.0 of Angular Now Available
This is a major release containing new features and bugfixes. This release continues our focus on making Angular smaller, faster, and easier to use.
另:Announcing TypeScript 2.6Node.js 8 Moves into Long-Term Support and Node.js 9 Becomes the New Current Release Line16.1.0-beta.

Bringing collaborative editing to any application
Three years ago, we decided to face the challenge of making real-time, multi-user collaborative writing available for every software out there. That idea kicked off the development of CKEditor 5 and many other solutions now known as the CKEditor Ecosystem. In this article I give a quick overview of the problem we aim to solve, the solutions we developed for that purpose and how to approach collaborative editing in your application.

Ant Design Pro
由 And Design 精心打磨 5 个月的作品,绝对的良心之作。Ant Design Pro 是一个开箱即用的企业级中后台前端/设计解决方案,致力于在设计规范和基础组件的基础上,继续向上构建,提炼出典型模板/业务组件/配套设计资源,进一步提升企业级中后台产品设计研发过程中的『用户』和『设计者』的体验。随着『设计者』的不断反馈,我们将持续迭代,逐步沉淀和总结出更多设计模式和相应的代码实现,阐述中后台产品模板/组件/业务场景的最佳实践。我们基于上述目标和提供了以下的典型模板,并据此构建了一套基于 React 的中后台管理控制台的脚手架,它可以帮助你快速搭建企业级中后台产品原型。

面向未来的前端数据流框架 - dob
dob 是利用 proxy 实现的数据依赖追踪工具,利用 dob-react 与 react 结合。dob 的核心思想大量借鉴了 mobx,但是从实现原理、使用便捷性,以及调试工具都做了大量优化。同时 dob 借鉴了 nx-js/observer-util 思想,但这个库仅仅停留在理论层面,实际使用中细节问题百出,dob 对其实现原理进行大幅修复,通过了多次实战考验。

为了让几乎所有希望引入 MVVM 的 Web 前端业务场景在做技术选型的时,可以没有顾虑,百度 EFE TEAM 历时接近两年时间设计、开发 San 框架,一个实现了 MVVM 的 Web 组件化框架。在接近两年的时间里,它不断迭代,支撑了越来越多的业务。

对浏览器加载资源有很多不确定性,例如:css/font的资源的优化级会比img高,资源的优化级是怎么确定的呢?资源优先级又是如何影响加载的先后顺序的?有几种情况可能会导致资源被阻止加载?通过源码可以找到答案。此次源码解读基于Chromium 64。


I Watched All of the Chrome Dev Summit 2017 Videos So You Don’t Have To
Google wants you to build PWAs, reduce JavaScript file size, use Web Components, and configure autofill. They announced only a handful of features around payments, authentication, Android Trusted Web Activities, Chrome Dev Tools, and the Chrome User Experience Report.

The VS Code Roadmap 2018
As 2017 comes to an end, now is the time to look towards the future. We typically look out 6 to 12 months, establish a set of themes we want to work towards, and then schedule work each milestone supporting those themes.

The State of Data Science & Machine Learning
The below report shares some of our key findings and includes interactive visualizations so you can easily cut the data to find out exactly what you want to know.

ORCHID - Access The World!
The Orchid Protocol is the decentralized, open-source technology for an Internet free from surveillance and censorship. Orchid combines its protocol with surplus bandwidth, state-of-the art-encryption, and a decentralized infrastructure to bring users surveillance-free access to the existing Internet. Because everyone is surveilled and bandwidth is ubiquitous, Orchid users can exchange bandwidth in peer-to-peer transactions using Orchid tokens on the Ethereum blockchain.

Ending the debate on inline functions in React
Using inline functions in React is convenient but can be contentious because of their perceived impact on performance. Today Flexport is introducing our solution to the debate: a Babel transform called reflective-bind.

The 14 JavaScript debugging tips you probably didn’t know
We’ve put together a list of 14 debugging tips that you may not know, but might want to keep in mind for next time you find yourself needing to debug your JavaScript code!

Migrating Slack’s Desktop App to BrowserView
We rewrote most of our Electron app to move from the janky webview to the new-fangled BrowserView. We managed to do it in a relatively short timeframe, thanks to a combination of elbow grease and reasonable choices in our client stack, like: Redux + redux-electron; Rx + redux-observable; TypeScript: Helps us refactor code quickly and correctly.

Engineering Uber’s On-Call Dashboard
In this article, we introduce On-Call Dashboard by outlining its flagship features and share how engineering teams at Uber use this powerful tool.

Understanding How Graal Works - a Java JIT Compiler Written in Java
Graal 源码解析

A Minimalist Guide to SQLite
SQLite 3 isn’t a toy. It’s a powerful SQL-language interface enabler. As storage speeds and single core performance in CPUs increase the amount of data that can be sensibly handled within a reasonable time by SQLite 3 continues to grow.

How We Identify and Stop Slow Latency Leaks at LinkedIn
At LinkedIn, we pay attention to site speed at every step of the release process, from code development to production ramp. But inevitably, the performance of our pages degrades over time (we use the word “pages” to denote webpages as well as mobile apps). In this post, we go over the tools and processes we use to catch and fix these degradations. While this is a post about automation to identify latency leaks, it is also a tale of how a human touch is still necessary.

How AI has started to impact our work as designers
技术如何帮助设计师提升效率,附:10 Ways to Use AI for Web Design

Web Typography: Designing Tables to be Read, Not Looked At
Good designers spend a great deal of time sweating over typography. They agonise over typefaces, iterate through type scales and meticulously apply white space, all in the service of the reader. Then comes along a table with the temptation to get creative, and all thoughts of the reader go out of the window. And yet tables are there to be read, referenced and used, not merely looked at.

Sketching Interfaces - Generating code from low fidelity wireframes
The time required to test an idea should be zero. This was the very first sentence I wrote when considering the Airbnb design tools team vision. We believe that, within the next few years, emerging technology will allow teams to design new products in an expressive and intuitive way, while simultaneously eliminating hurdles from the product development process. Our team has begun exploring methods to bring testing time to zero. As we learn and build, we will be sharing what we’re working on here.

10 UX Design Predictions For 2018
We’re living in a time when design and user experience have never mattered more. The past decade of change shows us that design must constantly adapt as a discipline in order to meet user needs.While it’s impossible to see the future, we can still make some educated guesses about it. In this article, I go through some of the trends that will shape UX design in 2018 and, possibly, for several more years to come.
另附:9 Principles of Mobile Web Design


Apache Kafka Goes 1.0
1.0.0 is a significant release with real enhancements, but the number matters too. What does v1.0 mean for Apache Kafka? To answer that, let me take a step back and give you the backstory: Apache Kafka v1.0: Completeness of our vision; Kafka’s transformation from a Messaging System to a Streaming Platform; Apache Kafka: An entire ecosystem around streams of data.

An HTTP Status Code for Indicating Hints
This memo introduces an informational HTTP status code that can be used to convey hints that help a client make preparations for processing the final response.

Chrome 63 Beta: Dynamic module imports, async iterators and generators, Device Memory API, and permissions UI changes
另附:Introducing new JavaScript optimizations, WebAssembly, SharedArrayBuffer, and Atomics in EdgeHTML 16


What are the Most Disliked Programming Languages?
The most disliked languages, by a fairly large margin, are Perl, Delphi, and VBA. They’re followed by PHP, Objective-C, Coffeescript, and Ruby. On our team we’re certainly happy to see that R is the least disliked programming language, relative to the number of people who liked it.

Announcing Ionic DevApp
DevApp is a 100% free mobile app for iOS and Android that makes it easy to test apps directly on your devices. DevApp offers a realtime view of changes as you’re making them, with a rich library of pre-installed native plugins to test every feature of your app.

Element 2.0 is here
The release of version 2.0 marks a new era for Element, and it also means that the 1.x version goes into maintenance mode. We will continue to support it until December 01, 2017.

React Bits
A compilation of React Patterns, techniques, tips and tricks.

ReactPWA - Progressive web application with ReactJS
A highly scalable, Progressive Web Application foundation with the best Developer Experience.

I18n with React and i18next
i18next is an i18n framework written in and for JavaScript. It provides the standard i18n features of interpolation, formatting, and handling plurals and context.

React Transition Group
The Transition component lets you describe a transition from one component state to another over time with a simple declarative API. Most commonly it’s used to animate the mounting and unmounting of a component, but can also be used to describe in-place transition states as well.

Transform SVG into React components

React Transition Group
The Transition component lets you describe a transition from one component state to another over time with a simple declarative API. Most commonly it’s used to animate the mounting and unmounting of a component, but can also be used to describe in-place transition states as well.

Mobx Wiretap
A desktop app for inspecting mobx and mobx state tree apps. 目前还不是很稳定,期待后续改进

Node.js Performance and Highly Scalable Micro-Services
This session will discuss why Node.js is right for micro-services, introduce the best practices for building scalable deployments, and show you how to monitor and profile your applications to identify and resolve performance bottlenecks.

Automated Scalable Ready Webserver Package | In experimental phase

server.js for Node
Powerful server for Node.js that just works so you can focus on your awesome project.

One command to generate REST APIs for any MySql database. Generating REST APIs for a MySql database which does not follow conventions of frameworks such as rails, django etc is a small adventure that one like to avoid ..

通过 JS 代码生成流程图

Frappé Charts
GitHub-inspired simple and modern charts for the web with zero dependencies.

A CLI dashboard for your webpack dev server

grid-kiss: Keep CSS Grids simple, stupid
This is a PostCSS plugin aiming to replace the 24 new properties brought by CSS Grids with a single one that you immediately understand when you see it.

Koa11y is a desktop app that allows you to automatically detect accessibility (a11y) issues on webpages.

Anvil - Drag and Drop Python Web App Builder
Design with our visual designer. Build with nothing but Python. Publish Instant hosting in the cloud or on-site. 7 times faster than traditional tools.


Connect with developers around the world on the GitHub Community Forum
The open source community proves that when creative people get together on an open platform, great things happen: Code gets better, new technologies emerge, and the way we build software changes. Now there’s a new way to connect with developers around the world. Join the GitHub Community Forum to ask questions, swap stories, and share ideas, regardless of whether you work on public or private projects.

The Web began dying in 2014, here’s how
It looks like nothing changed since 2014, but GOOG and FB now have direct influence over 70%+ of internet traffic.

复盘 Go 和 Docker :他人观望时,如何抢占新技术先机
三年前对 Go 和 Docker 怀疑观望的,可以理解。现在还在持犹豫和不信任态度的,那就不可饶恕了。对于个人和公司,如何在新技术发展初期抢占先机?



[译]谷歌是怎么设计语音界面的 ?对话设计六原则
新时代的界面将会突破现有的格局。界面将不再被滑动、轻触和点击局限,取而代之的是更自然细腻的语言呈现形式。 用于GUI(图形用户界面)的设计技法和设计语言在语音交互这个全新的领域不再适用,VUI(语音用户界面)设计的新浪潮将基于『对话』- 这个我们最先学会而且最擅长的交流方式。本文给VUI设计师们介绍六项原则,这些原则是日常对话的延展。它们可以辅助设计师完成对话设计,并且引领VUI设计师进入以用户为中心的界面设计新时代。