FEX 技术周刊 - 2017/07/17
附：参加 JSConf CN 2017 是个什么样的体验
Let’s Dev: A Package Manager
Hello everyone! Today, we’re gonna write a new package manager, even better than Yarn! Ok, maybe not, but at least we’re gonna have some fun, learn how package managers work, and think about what could come next on Yarn.
ES8 was Released and here are its Main New Features
Security updates for all active release lines
Updates are now available for all active Node.js release lines as well as the 7.x line. These include the fix for the high severity vulnerability identified in the initial announcement, one additional lower priority Node.js vulnerability in the 4.x release line, as well as some lower priority fixes for Node.js dependencies across the current release lines.
Introducing npx: an npm package runner
npx is a tool intended to help round out the experience of using packages from the npm registry — the same way npm makes it super easy to install and manage dependencies hosted on the registry, npx makes it easy to use CLI tools and other executables hosted on the registry. 另：npm v5.3.0
Upcoming RegExp Features
sphinx-js consumes standard JSDoc comments and tags—you don’t have to do anything weird to your source code. You just have Sphinx initialize a docs folder in the root of your project, activate sphinx-js as a plugin, and then write docs to your heart’s content using simple reStructuredText. When it comes time to call in some extracted documentation, you use one of sphinx-js’s special directives, modeled after the Python-centric autodoc’s mature example.
A look inside React Fiber - how work will get done.
The MVC pattern is good for client-side frameworks, but modern frameworks change. What is modern today is subject to the passing of time and withers away. In this take, I’d like to explore alternatives and see where a little discipline takes us.
Event Delegation: Pattern or Anti-Pattern
Event delegation is one of the defacto ways of doing event handling. But is it the right methodology for all projects? In fact, the better question might be whether the assumptions each toolkit has made are right for your project. Knowing whether an API is right for your project depends on knowing what assumptions these tools are built on and understanding how each toolkit has interpreted them.
单向数据流动的函数式 View Controller
在这篇文章里，我会先实现一个很常见的 MVC 架构，然后对状态和状态改变的部分进行抽象及重构，最终得到一个纯函数式的易于测试的 View Controller 类。希望通过这个例子，能够给你在日常维护 View Controller 的工作中带来一些启示或者帮助。
ios10 vs ios11 :完整UI比较分析
很详细的 UI 对比及说明
Developer Experience Lessons Operating a Serverless-like Platform At Netflix
This is the first in a series of posts where we draw from our learnings to outline various aspects that we are addressing in the next generation of our platform. We believe these aspects are applicable to general purpose serverless solutions too. Here we will look at application development, delivery and code composition. Future posts will delve into topics such as deployments, insights, performance, scalability and other operational concerns.
Talk recording from AmsterdamJS Conference 2017.
Scope, Architecture, DOM, Node.js…
How Rust is tested
I’ve always admired well-tested software projects, like SQLite, and aim to place Rust among the pantheon of the best. This document then, is a catalog of all the ways we test Rust. I hope it provides insight into what it takes to deliver a production-quality programming language, a hint at the wide variety of techniques employed in software validation, and that it reinforces your confidence in Rust’s reliability. 另附：Principles of Automated Testing
Mock system APIs
Don’t write an SPA* Unless it makes sense to
SPAs are a good choice if: The interface you’re building is highly interactive and needs to be fast / responsive — and you want an architecture and abstractions that supports this out the gate; You’re not worried about each and every bit of content being indexed by search engines correctly. On the other hand, an SPA might not be worth the complexity if: Your application is simple (there’s not a lot of interactive content); SEO is of pivotal importance.
What is “modern” programming
I submit to you that modern programming has little to do with the look of your desktop. Graphical user interfaces are only skin deep. Modern programming techniques are all about processes and actual tools, not the skin on top of them. I don’t care whether you are using Eclipse or Emacs… this tells me nothing about how modern you are. So what is “modern”?
A Complete List Of UX Deliverables
The list below contains most common deliverables produced by UX Designers as they craft great experiences for users. For better readability, I’ve combined the deliverables according to UX activities: User Research, Market Research, Design, Testing. For each item in the list you’ll find additional links or video with detailed explanation or best practices.
URLs are UI
So many folks spend time on their CSS and their UX/UI but still come up with URLs that are at best, comically long, and at worst, user hostile.
Angular 4.3 Now Available
Angular version 4.3 has been released. This is a minor release following our announced adoption of Semantic Versioning, meaning that it contains no breaking changes and that it is a drop-in replacement for 4.x.x.
Babylon.js is an open source framework that allows you to create stunning 3D experiences in your browser. Built with simplicity and performance in mind, it is the engine that fuels the Remix3D site or the Xbox Design Lab.
Tim Berners-Lee approves Web DRM
Tim Berners-Lee, the chief arbiter of Web standards, approved the controversial proposed Digital Restrictions Management (DRM) standard for the Web, Encrypted Media Extensions (EME).
Introducing Channels: Private Q&A for Your Team
We’re announcing Stack Overflow Channels for teams that need a dedicated, private space to share knowledge. We’re working hard on an early beta, and we want your active involvement in the product as we build it.
Building open source tools for Adobe Creative Cloud updates
Our Enterprise Engineering team recently developed a software management script that could save teams hundreds of hours in building application packages for Mac users. The new system makes it easier for people to access Adobe apps with centrally-managed Creative Cloud licensing, while saving time and improving reporting and accounting accuracy.
emotion - The Next Generation of CSS-in-JS
emotion is a high performance, lightweight css-in-js library. The core idea comes from Sunil Pai’s glam library and its philosophy is laid out here. The basic idea is simple. You shouldn’t have to sacrifice runtime performance for good developer experience when writing CSS. emotion minimizes the runtime cost of css-in-js dramatically by parsing your styles with PostCSS during compilation instead of at runtime. 详见介绍文。
微信开源的 Sketch 辅助插件
Pell: A Simple, Small (5kB) WYSIWYG Web Text Editor
pell is the simplest and smallest WYSIWYG text editor for web, with no dependencies
TagUI is a general purpose tool for automating web interactions
CSS Database is a comprehensive list of CSS features and their positions in the process of becoming implemented web standards.
create sea animals using pure CSS
PHP7 to ES7 syntax translator
Real World React
收集了大量 React 项目，方便通过查找代码的方式学习
Microcosm is Flux with actions at center stage. Write optimistic updates, cancel requests, and track changes with ease。附：官方介绍
3 New Tools to Speed Up Your Apps
In this post I’ll highlight tools and techniques for making React apps fast. Each section also has an interactive, and (hopefully) fun demo. Tools: The Performance Timeline, why-did-you-update, React Developer Tools.
Web Tools & Services Highly Rated By Experts
Welcome to this great showcase of 21 web tools & services that are highly rated by experts. The used methods to find out the most popular solutions were to search the internet, test the web tools and discuss with different experts from several domains.
6 Free Material Design CSS Frameworks for 2017 Compared
对6个比较火热的 Material Design 的CSS框架进行对比，用户可以根据自己的需求场景以及各个框架的生态情况选择适合自己的那一款
API Security Checklist
Checklist of the most important security countermeasures when designing, testing, and releasing your API.
Redis 4.0 GA is out!
Redis 4.0.0 is out. I’m very happy about 4.0, because this release finally overcomes several very important limits of Redis. There are many things in the 4.2 plan, so Redis with 4.0 is not magically perfect. Yet it is a very important, measurable, step forward, because of the following features.
Go Makes It Into TIOBE’s Top 10 Languages
Seeing AI: Talking Camera for the Blind
A free app that narrates the world around you. Designed for the low vision community, this research project harnesses the power of AI to describe people, text and objects. 另附：Google - Using Deep Learning to Create Professional-Level Photographs、Facebook - ELF: An extensive, lightweight and flexible platform for game research
蚂蚁金服CTO程立 - 昨天最好的表现是今天最低的要求