FEX 技术周刊 - 2018/12/03
React 16.x Roadmap
We plan to split the rollout of new React features into the following milestones:
- React 16.6 with Suspense for Code Splitting (already shipped)
- A minor 16.x release with React Hooks (~Q1 2019)
- A minor 16.x release with Concurrent Mode (~Q2 2019)
- A minor 16.x release with Suspense for Data Fetching (~mid 2019)
另附：Under the hood of React’s hooks system、React Hooks Heading Towards an Official Release、State of React State Management in 2019.
Backdoor in event-stream library dependency
A malicious developer gained access to a popular npm module and added code that could steal cryptocurrency information. 附：Details about the event-stream incident、event-stream vulnerability explained、event-stream’s Creator’s Statement.
An Extensive Guide To Progressive Web Applications
In this article, we’ll look at the pain points of users who are browsing old non-PWA websites and the promise of PWAs to make the web great. You’ll learn most of the important technologies that make for cool PWAs, like service workers, web push notifications and IndexedDB.
Ionic Appflow: DevOps for Everyone
Put simply, Appflow is a DevOps solution for businesses building apps with Ionic. It helps teams increase agility, app quality, and time-to-market by automating key phases of the development lifecycle. 另附：Announcing Ionic Studio: A Powerful New Way to Build Apps.
W3C Web中文兴趣组启动会 - 总结报告
围绕 WebXR、Web Packaging、Media、下一代移动Web应用、WebGPU、Web Neural Network API、WebAssembly、Web性能、WebRTC、Web Payments 展开，探讨了以上技术目前的标准进展及应用情况、在国内是否有类似技术或实践、落地的可能性和面临的问题、以及国内是否有需求需要输送至 W3C 进而开展进一步讨论和后续工作。
Taro 是遵循 React 语法规范的多端开发方案，Taro 目前已经支持微信小程序、H5、RN、支付宝小程序、百度小程序，持续迭代中的 Taro，也正在兼容更多的端以及增加一些新特性的支持。本篇文章主要讲的是 Taro 深度开发实践，综合我们在实际项目中使用 Taro 的一些经验和总结，首先会谈谈 Taro 为什么选择使用React语法，然后再从Taro项目的代码组织、数据状态管理、性能优化以及多端兼容等几个方面来阐述 Taro 的深度开发实践体验。
议 Function Component 与 Hooks
复杂应用尽可能使用 Function Component + Hooks 是值得推荐的，这是更美好的明天。另附：像呼吸一样自然：React Hooks + RxJS
Hacking CSS writing mode
The writing-mode CSS property sets horizontal and vertical text direction. While meant for multilingual purposes, it can be exploited for design.
What, exactly, is the DOM?
The Document Object Model, or the “DOM”, is an interface to web pages. It is essentially an API to the page, allowing programs to read and manipulate the page’s content, structure, and styles. Let’s break this down. 另附：A look at CSS Resets in 2018.
The Art of Mathematics: A Mandala Maker Tutorial
The book describes what HTTP/3 and its underlying transport protocol QUIC are, why they exist, what features they have and how they work. The book is meant to be readable and understandable for most people with a rudimentary level of network knowledge or better.
5 Lessons Learned From Writing Over 300,000 Lines of Infrastructure Code
A concise masterclass on how to write infrastructure code.
Reliable Webhooks Using Serverless Architecture
How we made our webhooks more reliable using SQS and Lambda.
How to balance full-time work with creative projects
A guide to finding the right day job, protecting your time, and building creative habits by Jeffrey Silverstein, with illustrations by Sunny Eckerle.
Is there a better way to document complex software architectures?
So much craft has been put into better languages, better compilers, and better IDEs for the software developer, I’m absolutely confused - where is the modern ‘IDE’ for the Software Architect?
Go 2, here we come!
A major difference between Go 1 and Go 2 is who is going to influence the design and how decisions are made. Go 1 was a small team effort with modest outside influence; Go 2 will be much more community-driven. After almost 10 years of exposure, we have learned a lot about the language and libraries that we didn’t know in the beginning, and that was only possible through feedback from the Go community. 另附：知乎社区核心业务 Golang 化实践。
Announcing TypeScript 3.2
Below we have a bit about what’s new in 3.2: strictBindCallApply, Object spread on generic types, Object rest on generic types ,Node.js-based resolution for tsconfig.json inheritance…
Announcing FoundationDB Document Layer
We’re open sourcing the FoundationDB Document Layer, a document-oriented database that extends the core functionality of the FoundationDB key-value store. The FoundationDB Document Layer provides the ease-of-use of a document database in the form of the familiar MongoDB® API. The Document Layer is a stateless server, backed by the scalable and transactional features of FoundationDB.
Mozilla Funds Research Grants in Four Areas
In this tightly focused round, we awarded grants to support research in four areas: Web of the Things, Core Web Technologies, Voice/Language/Speech, and Mixed Reality. These projects support Mozilla’s mission to ensure the Internet is a global public resource, open and accessible to all. 另附：The State of Mozilla - 2017 Annual Report.
Call to Action: Accelerating Node.js Growth
Come join the new package maintenance team at https://github.com/nodejs/package-maintenance either to help out or to share your experience. I’ll talk in more detail about the initial work that this team will focus on, but first let’s introduce the challenge.
SASS - Request For Comments: Module System
Because of these problems and others, we’ve wanted to do a full overhaul of the way Sass files relate to one another for a long time. Over the last few years, I’ve been working with the Sass core team and Sass framework maintainers to create a proposal for a module system that’s fit to replace @import. That proposal is now in a place that the core team is pretty happy with, at least as a starting point, so we want to open it up for community feedback.
End-of-Life for Built-in JSDoc Support in ESLint
As part of a recent review, we’ve decided to end-of-life the built-in support for JSDoc in the ESLint project. This post contains the details of that decision and what happens next. End-of-life for core JSDoc support means you will see the following happening in the next several weeks: Doctrine will no longer be updated; The require-jsdoc and valid-jsdoc rules will be deprecated; The SourceCode#getJSDocComment() method will be deprecated.
Omi 5.0 release
React Kawaii is a library of cute SVG illustrations (react components). Ideal if you want to give some cuteness and personality to your react application.
Graph theory / network library for analysis and visualisation.
PALX - Automatic UI Color Palette Generator
Provide a single color value and Palx returns a full-spectrum color palette, well suited for UI design and data visualizations that work harmoniously with brand colors.
NES.css: 8-bit style CSS framework
ncc: Node.js Compiler Collection
Dust3D - Making 3D Model Has Never Been So Easy
Dust3D is a cross-platform open-source modeling software. It helps you create a 3D watertight model in seconds. Use it to speed up your character modeling in game making, 3D printing, and so on.
A tool for exploring a docker image, layer contents, and discovering ways to shrink your Docker image size.
10 Node Frameworks to Use in 2019
Practical Elm book
I’ve published the Elm 0.19 update of my book, Practical Elm for a Busy Developer. This update is also based on the latest versions of elm-ui and elm-test packages.
Open Source Awards
Most of Software developed around the world is based of Open Source projects. The culture of sharing and transperancy been always the main driver in the modern tech community. To celebrate annual achievements, and drive this culture forward, GitNation dedicates it’s focus on supporting new and exciting Open Source projects on annual ceremonies.
Meet the new icons for Office 365
As Design becomes the heart and soul of Office, we’ve evolved our visual identity to reflect the simple, powerful, and intelligent experiences of Office 365.
The Role of Color in UX
Understanding color psychology is a key aspect of creating a color palette that works well in digital design. While color is sometimes thought of as a purely aesthetic choice by some designers, it is, in fact, a key component of the psychological impact of a design on users, and as such, its UX. 另附：Understanding color psychology though culture, symbolism, and emotion.
When Motion Creates Emotion
When people interact with digital products, they appreciate the value of humane products over purely rational products. Designers need to say goodbye to static user interfaces and create interfaces which will be much more alive.
Why Your UX Design Really Failed
There are eight primary areas where I see organizational behavior factor into a failed design process — leadership, teams, culture, organizational structure, knowledge management, managing uncertainty, competing goals and too much emphasis on process.
“The world’s gone flat!” — evolutions in user interface design
In today’s context, flat design has hit its peak in terms of its ubiquity in interface design and designers have already started experimenting with how visuals can be made more appealing beyond sticking to just minimalism. Microsoft’s Fluent Design system is one example of a large tech company taking the lead in the next step of interface design. It combines what we love and what was helpful from skeuomorphic design with elements from minimalism.
Does your Business Really Need a Mobile App?
Native mobile apps that focus only on one feature were okay, but they’re starting to become a thing of the past. Several new trends are going to make them obsolete: PWAs, superapps, chatbots and voice assistants. Creating a PWA is a great alternative for a general purpose application, and chatbots or voice assistants are very good for services like Uber or Lyft, but may not be suitable for everyone. The whole change-over is already happening, so maybe it’s time for mobile developers to add other technologies to their stack so that they can survive.
AI 研究科学家不是那么好当的！近日谷歌 AI 首席科学家 Vincent Vanhoucke 发表在 Medium 上的文章引来众人关注。在本文中，他列举了成为研究科学家所要面对的 9 大挑战，看完这篇内容或许可以在立志投身于科学事业前，给你先「泼一盆冷水」。
– THE END –