FEX 技术周刊 - 2019/06/10
附：State Of Vue
Rethinking Visual Programming with Go
This is a blog version of the talk I gave at GopherCon Europe 2019 (Canary Islands Edition), where I shared my thoughts on why Visual Programming Languages have failed and revealed for the first time my experiment on visualizing Go code. I could dive in straight into the project, but I do believe to truly appreciate it, I have to explain the thought line behind it first. It starts with an almost existential frustration of working with code as a text.
The economics of package management
Best practices for building a large scale react application
This article describes the steps to building a large scale React application. While making a Single Page App with React, it is very easy for your code-base to become unorganized. This makes the app hard to debug and even harder to update or to extend the codebase. There are many good libraries in the React ecosystem that can be used to manage certain aspects of the app, this article covers some of them in depth. Other than that, it lists some good practices to follow from the beginning of the project if you have scalability in mind. With that being said let’s head to the first step - how to plan ahead of time.
前端开发人员和技术人员的数量逐年增加，而整个生态系统渴望实现标准化。新技术和工具的出现已经改变了游戏规则。可以肯定地说，总体趋势将是 UI 标准化、基于组件的模块化和组合，这将影响从样式到测试甚至状态管理的所有方面，并在总体上实现更好的模块化。
Self-Host Your Static Assets
One of the quickest wins—and one of the first things I recommend my clients do—to make websites faster can at first seem counter-intuitive: you should self-host all of your static assets, forgoing others’ CDNs/infrastructure. In this short and hopefully very straightforward post, I want to outline the disadvantages of hosting your static assets ‘off-site’, and the overwhelming benefits of hosting them on your own origin.
The Future of Web Animation
In terms of animation on the web, we’re just getting started.
Types and Tests
The problem Mark proposed in his blog is a simple function: rndselect(n,list). It returns a list of n elements randomly selected from the input list. He walked through his strategy for developing this in Haskell, using types, QuickCheck, and after-the-fact tests.
Making our Android Studio Apps Reactive with UI Components & Redux
Our current player UI in the Netflix Android app is using our first iteration of this componentization architecture. We took the opportunity with building Prodicle to improve upon what we learned with the Player UI, and build the app from scratch using Redux, Components, and 100% Kotlin.
Introducing TensorNetwork, an Open Source Library for Efficient Tensor Calculations
TensorNetwork uses TensorFlow as a backend and is optimized for GPU processing, which can enable speedups of up to 100x when compared to work on a CPU. We introduce TensorNetwork in a series of papers, the first of which presents the new library and its API, and provides an overview of tensor networks for a non-physics audience. In our second paper we focus on a particular use case in physics, demonstrating the speedup that one gets using GPUs.
Efficient, reliable cluster management at scale with Tupperware
Since we first deployed Tupperware in 2011, our infrastructure has expanded from one data center to a fleet of 15 geo-distributed data center locations. Over the same time period, Tupperware has evolved significantly to keep pace with our growth. We are sharing several areas in which Tupperware advances the state of the art for cluster management, including seamless support for stateful services, a single control plane across data centers, and the ability to shift capacity among services in real time. We will also share some of the lessons we have learned as we have grown the system to its current state.
13 Tips for Writing a Technical Book
I spent the last year and a half writing my first technical book for O’Reilly (Programming TypeScript). I’d never written a technical book before. In fact, prior to the 300-page book, the longest thing I’d written was a 20-something-page paper in college. The rest of this post is a brief laundry list of tips for writing your own technical book.
Highlights from Git 2.22
The open source Git project just released Git 2.22 with features and bug fixes brought to you from over 74 contributors, 18 of them new. Here’s our look at some of the most exciting features and changes introduced since Git 2.21.
What’s New in Chrome 75 for Developers
Pete Le Page highlights changes in the next stable version of Chrome, with the most exciting things being a way to create lower latency canvases and sharing files with the Web Share API.
Flutter culture and how to preserve it
A big part of what makes Flutter so delightful and productive is its community. We really want this to continue, and so we thought we’d share some of our observations about the current culture, and some ideas on how to preserve it.
Learnings in Web Development: Design Patterns, Elm, and Progressive Enhancement
It’s time for the compatibility opt-in preview of Ivy!
We’re looking for developers willing to give new things a try (with a few rough edges) and who want to share their experiences with us. If you are interested, you should follow the steps below and let us know what issues you run into.
Why We’re Relicensing CockroachDB.
Citing the ‘realities of building open source software’, the creators of CockroachDB have relicensed it from Apache to the ‘Business Source License’ which prevents anyone (e.g. Amazon/AWS) from offering CockroachDB as a service without buying a license (a problem that has befallen both Elasticsearch and MongoDB this year).
How the npm Security Team Foiled a Criminal Plot
Several months ago, the event-stream package was compromised in an attempt to attack people’s cryptocurrency wallets and the potential loot proved too tempting to the latest set of crooks who have been thwarted by the npm, Inc. security team. 另附：npm passes the 1 millionth package milestone! What can we learn?
History of Node.js on a Timeline
We’ve been publishing articles on Node.js for over 5 years now, so we thought it’d be interesting to look back at what exactly happened to Node.js so far, from the point where it was born until Today. In case we missed something significant, please let us know in the comments section! This is the history of Node.js on a timeline, from 2009 until now (June, 2019).
GitLab API NodeJS library with full support of all the Gitlab API services.
AVA helps you get it done. AVA is a test runner for Node.js with a concise API, detailed error output, embrace of new language features and process isolation that let you write tests more effectively.
libcurl bindings for node.
Actix web is a simple, pragmatic and extremely fast web framework for Rust.
Open Source Game Clones
This site tries to gather open-source remakes of great old games in one place. If you think that something is missing from the list - please go to our GitHub repository and create an issue or even a pull request!
The EspoTek Labrador is an open-source board that converts your PC, Raspberry Pi or Android Smartphone and into a full-featured electronics lab bench, complete with oscilloscope, signal generator and more.
UX Writing: Side Effects May Vary
Becoming a UX writer has been life-changing in many ways: I’ve had the pleasure of meeting a diverse set of smart, creative, and talented innovators, I’ve shaped products that impact literally billions of people, and I go to work each day happy to be there. But I didn’t realize taking the job would have unintended consequences. Read on to learn the wild ways that becoming a UX writer may impact your life. 另附：14 Rules of UX Writing.
Apple’s WWDC19 Keynote for Mobile Designers
另附：iPadOS and 8 changes it brings – UX Planet
Apple Design Awards 所优选出来的9个APP，每一个都代表着设计和产品发展的趋势，这些趋势在这个充分竞争的市场中，都有着足够的力道创造改变。无论是结合机器学习和镜头捕捉的 HomeCourt ，还是利用超声波检测器的 Butterfly iQ，它们都代表了技术活用的趋势；Asphalt 9 是体验层次丰富度的代表，而Thumper 则证明了高度垂直、一致的体验有多令人难忘；Ordia 和 ELOH 两款游戏让游戏本身重新回归愉悦和放松，而The Gardens Between 则告诉我们游戏这件事情，有更多的可能性。
“ 字要大！用大红！” 他花了5年终于解决这一设计难题！å
Stanford engineers make editing video as easy as editing text
A new algorithm allows video editors to modify talking head videos as if they were editing text – copying, pasting, or adding and deleting words.
– THE END –