FEX 技术周刊 - 2018/03/05
Announcing Flutter beta 1: Build beautiful native apps
Flutter targets the sweet spot of mobile development: performance and platform integrations of native mobile, with high-velocity development and multi-platform reach of portable UI toolkits. 附：如何评价 Google 的 Flutter
Beyond React 16
Dan Abramov from our team just spoke at JSConf Iceland 2018 with a preview of some new features we’ve been working on in React. The talk opens with a question: “With vast differences in computing power and network speed, how do we deliver the best user experience for everyone?” 附：如何评价React的新功能Time Slice 和Suspense.
Pagedraw - Effortlessly turn mockups into functional code
Pagedraw is a UI builder that turns mockups into React code. Pagedraw lets you annotate mockups with extra information (like how to connect to the backend, resize for different screens, etc.) to get full, presentational, React Components. They’re React Components just like any others, so they can be interleaved freely with handwritten ones. They don’t require any new dependencies and work well with any existing JSX build system. 附：Launch HN: Pagedraw (YC W18) – Compile UI Mockups to React Code、One of These Site and Page Building Tools is Meant for You.
Tracing from JS to the DOM and back again
The inception of ESLint
I recently realized that I’d never shared the origin story of ESLint. I’ve shared some of the decisions I made along the way in previous posts but never the initial domino that fell and led to ESLint’s creation. As you will see, ESLint wasn’t created through some divine intervention or stroke of insight, but rather through a series of events that eventually built up to ESLint’s creation.
发布 umi 1.0
umi 是一个类 next.js 的专注性能的前端框架，他的优势是：内置的大量性能优化；多端，无缝支持容器和浏览器访问；类 webpack 的插件机制；针对 antd 和 dva 有友好的支持。
来认识一下Weex 的 JS Framework
无论前端框架里数据管理和组件管理的策略是什么样的，它们最终都将调用 JS Framework 提供的接口来调用原生功能并且渲染真实 UI。底层渲染引擎中也不必关心上层框架中组件化的语法和更新策略是怎样的，只需要处理 JS Framework 中统一定义的节点结构和渲染指令。多了这么一层抽象，有利于标准的统一，也使得跨框架和跨平台成为了可能。
RIP Redux: Dan Abramov announces future fetcher API
Unlike Redux Future Fetcher is not a new library, but rather a new concept that is being rolled into React in the form of the Context API that will simply render a lot of the tasks done by Redux obsolete.
Shouldn’t state management be a solved problem by now? Intuitively, developers seem to know a hidden truth: state management seems harder than it needs to be. In this article, we’ll try to answer some questions you’ve probably been asking yourself: Do you really need a library for state management? Is the popularity of Redux deserved? Why or why not? Could we make a better state management solution? If so, how?
The Lost Art of the Makefile
How GDPR Will Change The Way You Develop
In this article, we’ll explore what you, as a developer, need to know about the new data protection regime. At the end, you’ll understand how the challenges posed by the privacy overhaul will ultimately help to make you a better developer. 附：GDPR – A PRACTICAL GUIDE FOR DEVELOPERS
How I Learned to Stop Worrying and ❤️ the State Machine
By recognizing when domain models should be represented first and foremost as state machines–or recognizing when to refactor domain models into state machines–we keep our models understandable and workable. We tame their complexity. So, what are state machines? And how do they help?
When to use CQRS?!
One of the simplest and most frequently cited explanations is that CQRS is in principle the same as the design pattern CQS, applied to the architectural level of an application. This comparison is quite correct, but for someone who is not yet familiar with CQRS, it is difficult to understand and therefore hardly helpful.
Mobile Real-time Video Segmentation
We are excited to bring precise, real-time, on-device mobile video segmentation to the YouTube app by integrating this technology into stories. Currently in limited beta, stories is YouTube’s new lightweight video format, designed specifically for YouTube creators. Our new segmentation technology allows creators to replace and modify the background, effortlessly increasing videos’ production value without specialized equipment.
Queryparser, an Open Source Tool for Parsing and Analyzing SQL
In this article, we discuss our implementation of Queryparser, the variety of applications it unlocked, and some problems and limitations encountered along the way.
Air Traffic Controller: Member-First Notifications at LinkedIn
This platform became Air Traffic Controller (ATC)—the ultimate decision maker for notifications sent to our members. In this post, we’ll discuss why ATC is important to LinkedIn, the technology ATC is built on, the ATC platform, and features, as well as the challenges and lessons learned building a scalable and high throughput platform.
The Evolution of Data at Reddit
This post is the first installment of a three-part mini-series on data architecture at Reddit, starting with Reddit’s data “origin story” and finishing with our present-day practices.
Microservices: It’s All About the Events
The idea of Microservices is to break large monolithic apps into smaller sets of coordinating services, so each service can be replaced or scaled up, without the heavy lifting of changing the entire monolith. Event-driven design is a way of extending applications without modifying them, Richardson explained.
A Practical Introduction to Container Terminology
Without a good handle on the terminology, It can be difficult to grasp the key differences between docker and (pick your favorites, CRI-O, rkt, lxc/lxd) or understand what the Open Container Initiative is doing to standardize container technology.
WebAssembly architecture for Go
Third party CSS is not safe
Third party content has a high impact within its sandbox. An image or a sandboxed iframe has a pretty small sandbox, but script & style are scoped to your page, or even the whole origin. If you’re worried about users tricking your site into loading third party resources, you can use CSP as a safety net, to limit where images, scripts and styles can be fetched from.
Modern Layouts with CSS Grid: Revolutionizing Visual Design on the Web
A look at new CSS tools and new possibilities in web design, with Singapore-based Hui Jing Chen, who brings a bilingual perspective to building beautiful useful web sites. (A Mozilla Tech Briefing.)
A new approach to one of my biggest design weaknesses, using basic color theory, HSL, and Sass.
Prototyping inside Sketch 49 — Learn how it works and what you can do
Sketch 49 brings home one of the most anticipated and desired features — the ability to create and share quick interactive prototypes natively.
How Do You See The Future of UX Design?
Learn from twenty experienced designers as we go deep into one question every week. 另附：Design Language System
版本控制工具 Abstract 是如何提升设计团队协作效率的
Abstract 是基于 Git 的。如果你已经用过 GitHub 等工具，可能不会对 commit、branch、merge 这些概念感到陌生。不过，如果你是第一次使用版本控制工具的设计师，也不必担心。毕竟 Abstract 是为设计师和设计团队打造的版本控制工具，你只需要学会使用 Abstract 的客户端界面就够了。
谷歌上线人工智能学习网站Learn with Google AI，网站设有一门名为机器学习速成班（Machine Learning Crash Course，MLCC）的免费课程。该课程基于谷歌内部课程，最初旨在帮助谷歌员工对AI和机器学习基础知识进行介绍。现在，MLCC将面向所有人开放，而且有中文版网站！
February 28th DDoS Incident Report
On Wednesday, February 28, 2018 GitHub.com was unavailable from 17:21 to 17:26 UTC and intermittently unavailable from 17:26 to 17:30 UTC due to a distributed denial-of-service (DDoS) attack. 附：In-the-wild DDoSes use new way to achieve unthinkable sizes、Memcrashed - Major amplification attacks from UDP port 11211.
GitHub Desktop 1.1 is now available
A fresh release of our Electron app is ready for your desktop. GitHub Desktop 1.1 builds on last year’s Electron relaunch with new features and enhancements that help you bring even more GitHub workflows to your desktop.
Spring Boot 2.0 goes GA
Highlights of the new release include: A Java 8 baseline, and Java 9 support; Reactive web programming support with Spring WebFlux/WebFlux.fn; Auto-configuration and starter POMs for reactive Spring Data Cassandra, MongoDB, Couchbase and Redis…
WOFF File Format 2.0
Based on experience with WOFF 1.0, which is widely deployed, this specification was developed to provide improved compression and thus lower use of network bandwidth, while still allowing fast decompression even on mobile devices. This is achieved by combining a content-aware preprocessing step and improved entropy coding, compared to the Flate compression used in WOFF 1.0.
Announcing Capacitor 1.0.0 Alpha
Capacitor aims to build a better Native runtime for the future of Ionic apps running everywhere: iOS, Android, Electron, and on the web as a Progressive Web App. Capacitor offers a consistent API that handles operations on the underlying platform in a portable, cross-platform way. That means one app built with Capacitor will work no matter where it runs.
A free, 20-page zine about making web apps with Node.js.
In this issue: - Making Web Apps with Node; - Paths into Programming; - Top Tips for New Coders.
A Manageable, Measurable and Traceable Node.js Application Manager represented by Alibaba powered by TypeScript
腾讯高性能的图片框架 LKImageKit 正式开源
LKImageKit 是一个高性能的图片框架，包括了图片控件，图片下载、内存缓存、磁盘缓存、图片解码、图片处理等一系列能力。合理的架构和线程模型，并特别针对不同场景进行优化，能充分发挥硬件的性能。该框架具有高度的扩展性。在此框架下，开发者可以自定义图片框架中的任何一个部分，比如：自定义图片显示逻辑、自定义缓存、自定义下载组件、自定义解码器、自定义图片处理算法等等。该组件旨在提供 iOS 平台上使用最简单，功能最强大的高性能图片解决方案。
阿里巴巴 Android 开发手册
G3D - A pure WebGL-compatible 3D render engine
HTML5 2d canvas library for desktop and mobile applications.
React Hot Loader V4.0
Tweak React components in real time.
Modular and easy-to-grasp redux based state management, with least boilerplate.
Morphing UI transitions made simple.
Announcing SMP: Speeding Up webpack With Timers
Measure the speed of your webpack loaders and plugins
Standalone parallax scrolling for mobile and desktop with CSS variables. basicScroll allows you to change CSS variables depending on the scroll position. Use the variables directly in your CSS to animate whatever you want.
30 Seconds of CSS
A curated collection of useful CSS snippets you can understand in 30 seconds or less. Inspired by 30 seconds of code.
Easy to Maintain Open Source Documentation Websites.
Pythonic HTML Parsing for Humans
Launching the Front-End Tooling Survey 2018
The Front-End Tooling Survey is back to gather input and shed some light on the tooling habits across the web development industry.
谈谈“五级工程师和职业发展”的思考 https://liudanking.com/beautiful-life/five-level-engineer-and-career/ 著名前苏联物理学家朗道曾经给出过一个五级物理学家的划分，吴军老师在此基础上，给出了“五级工程师”的划分：第五级：能独立解决问题，完成工程工作；第四级：能指导和带领其他人一同完成更有影响力的工作；第三级：能独立设计和实现产品，并且在市场上获得成功；第二级：能设计和实现别人不能做出的产品，也就是说他的作用很难取代；第一级：开创一个产业。
Dtube – A decentralized video platform using STEEM and IPFS
D.Tube is the first crypto-decentralized video platform, built on top of the STEEM Blockchain and the IPFS peer-to-peer network.
GitLab’s 2018 Product Vision: Prototype demo
wrapping it up: We’re going after the complete DevOps lifecycle, we want Operations and Security to be our new favorite users, and we want teams working concurrently. And that’s the GitLab Product Vision for 2018!