微信搜索『FEX』关注我们的公众号,及时获得最新资讯。

深阅读

Launching the WebAssembly Working Group
https://www.w3.org/blog/2017/08/launching-the-webassembly-working-group/
We’d like to announce the formation of a WebAssembly Working Group. With the formation of this Working Group, we will soon be able to recommend an official version of the WebAssembly specification. 另附: webpack Awarded $125,000 By Mozilla - To implement first-class support for WebAssemblyW3C技术架构组关注分布式聚合内容

What the f*ck JavaScript
https://github.com/denysdovhan/wtfjs
A list of funny and tricky examples of JavaScript. JavaScript is a great language. It has a simple syntax, large ecosystem and, what is the most important, great community. At the same time, all we know that JavaScript is a quite funny language with tricky parts. Some of them can quickly turn our everyday job into hell, some of them can make us laugh out loud.

Elm In Production: 25,000 Lines Later
https://charukiewi.cz/posts/elm/
Using Elm in production has been a been a very successful endeavor at Roompact. Our latest project, with a front end written solely in Elm, has exceeded all expectations, both those of our users as well as our own. We have managed to take a set of functionality that would have been exceptionally difficult to build using our old methods, and using the strengths of the Elm language and architecture, successfully developed the largest feature in our entire software product to date. All of this done with a very high degree of maintainability and reliability. This post has been a record of our experiences with Elm up to this point.

Can QML become the next standard for web UI
https://blog.kutny.net/2017/07/29/can-qml-become-the-next-standard-for-web-ui/
Qt’s modern UI framework – Qt Quick and its own declarative language QML to HTML, with QML coming out as a clear winner in several categories: speed of learning, ease of use, performance, cross-platform compatibility. Although QML is not a substitute for HTML – they were designed with different goals in mind – I think QML would make a great web technology.

Web Frameworks: Applications
https://www.sitepen.com/blog/2017/08/03/web-frameworks-applications/
Applications built with web technologies, something that was a curiosity a few short years ago, have emerged onto the scene as a must have for most organizations. Transcending websites and providing users with a more open and unbounded experience, web applications are everywhere. Likely the main reason you are reading this series is to determine how modern frameworks enable you to build web applications.

Workspaces in Yarn
https://yarnpkg.com/blog/2017/08/02/introducing-workspaces/
Yarn Workspaces is a feature that allows users to install dependencies from multiple package.json files in subfolders of a single root package.json file, all in one go. Making Workspaces native to Yarn enables faster, lighter installation by preventing package duplication across Workspaces. Yarn can also create symlinks between Workspaces that depend on each other, and will ensure the consistency and correctness of all directories.

The State of CSS in Angular
https://blog.angular.io/the-state-of-css-in-angular-4a52d4bd2700
By default in Angular, when you attach CSS directly to a component, we scope that css exclusively to that component. This scoping isolates it from the rest of your application. This additional capability means that there are two ways to use CSS with Angular.

用信号来控制异步流程
https://www.h5jun.com/post/signals-and-async.html
我们可以用 Signal 来控制异步流程,它最大的作用是将状态和控制分离,我们只需要改变 Signal 的状态,就可以控制异步流程,Signal 支持 until 和 while 谓词,来控制状态的改变。另附:异步编程那些事

[译]API设计原则
http://coolshell.cn/articles/18024.html
Qt的设计水准在业界很有口碑,一致、易于掌握和强大的API是Qt最著名的优点之一。此文既是Qt官网上的API设计指导准则,也是Qt在API设计上的实践总结。虽然Qt用的是C++,但其中设计原则和思考是具有普适性的(如果你对C++还不精通,可以忽略与C++强相关或是过于细节的部分,仍然可以学习或梳理关于API设计最有价值的内容)。整个篇幅中有很多示例,是关于API设计一篇难得的好文章。

从发端到燎原之势,我看中国数据库39年
https://mp.weixin.qq.com/s/YcsEgn89ZvekfJI7r8HeHw
数据库,将计算机科学和易于人类理解认知的数据管理方式完美地衔接在了一起,从上个世纪50年代开始,就逐渐影响并改变了世界。但在中国,数据库是怎样发端、成长并演变成今天的燎原之势,似乎从未有人进行过系统的梳理。一个偶然的机会,笔者执笔写下了这篇小文。

斗米客户端的架构思想
http://book.linzihong.com/design/framework/framework.html
一种 hybrid 开发的思路

有赞支付微服务实践
http://tech.youzan.com/youzan_microservice_best_practice/
2014年公司所有业务(交易,商品,ump,支付等等)都在一个单体应用中完成,使用php开发,满足了公司快速发展(我们姑且称为v1.0)。2015年到2016期间,随着业务流量增长,现有架构模式遇到了挑战,公司开始朝着业务拆分和服务化方向迈进。开始采用java作为开发语言,服务化框架使用公司改进过的dubbox,支持跨语言服务调用的nova框架(v2.0)。2017年在服务化的基础上我们更近一步,向微服务架构渐变。拥抱社区提供的丰富组件(v3.0)。

[译]为什么说ARKit是目前最强的AR开发组件
https://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=2651113500&idx=1&sn=addf5f6b1324b66a6389fbe24e7babd7
本文试图向略懂技术的人解释这项技术,但并非面向计算机视觉工程师。文中为了简化而进行的阐述可能未必绝对完美,但希望这样的简化至少可以帮助大家获得更深入的理解。

Building an API Gateway using Node.js
https://blog.risingstack.com/building-an-api-gateway-using-nodejs/
Services in a microservices architecture share some common requirements regarding authentication and transportation when they need to be accessible by external clients. API Gateway s provide a shared layer to handle differences between service protocols and fulfills the requirements of specific clients like desktop browsers, mobile devices, and legacy systems.

The Art of Crafting Architectural Diagrams
https://www.infoq.com/articles/crafting-architectural-diagrams
Nevertheless, diagrams must be self descriptive, consistent, accurate enough and connected to the code. That’s why it is important that every architect or software engineer rely on several guidelines when creating architectural diagrams, since they are the common ground of communicating the application’s architecture over time (e.g. structure, elements, relationships, properties, principles) and across different stakeholders having various technical backgrounds and concerns.

Understanding Service Workers
http://blog.88mph.io/2017/07/28/understanding-service-workers/
What are Service Workers? What can they do, and how can make your web app perform better? This article sets out to answer those questions, plus how to implement them using the Ember.js framework.

Everything is an HTTPS interface
https://serverless.zone/everything-is-an-https-interface-ead2e888b31
In the Linux world everything is file, in the Serverless world everything is an HTTPS interface.

A Look into NASA’s Coding Philosophy
https://mystudentvoices.com/a-look-into-nasas-coding-philosophy-b747957c7f8a
With some years of work there, I wish to provide a first-hand account on the philosophy that’s allowed the space agency to produce some of the world’s most reliable software, and I’ll frame their attitude towards programming with a set of four assumptions I think they make for programmers in the workforce.

Flash is Dead: What Technologies Might Be Next
https://stackoverflow.blog/2017/08/01/flash-dead-technologies-might-next/
You can often see the decline of a technology in advance, by examining data on its usage in the software development community. One notable source of such data is in our Stack Overflow Trends tool, which shows questions about Flash have been declining in frequency since 2010.

新鲜货

V8 Release 6.1
https://v8project.blogspot.jp/2017/08/v8-release-61.html
V8 version 6.1, which is in beta until its release in coordination with Chrome 61 Stable in several weeks. V8 v6.1 is filled with all sorts of developer-facing goodies. We’d like to give you a preview of some of the highlights in anticipation of the release.

F-Stack
http://f-stack.org/
基于 DPDK 实现的协议栈,官方提供了 nginx、redis 的替换版本

StackBlitz - Online VS Code IDE for Angular & React
https://medium.com/@ericsimons/stackblitz-online-vs-code-ide-for-angular-react-7d09348497f4
StackBlitz is an online IDE where you can create Angular & React projects that are immediately online & shareable via link… in just one click. It automatically takes care of installing dependencies, compiling, bundling, and hot reloading as you type.

Apple’s refusal to support Progressive Web Apps is a detriment to future of the web
https://m.phillydevshop.com/apples-refusal-to-support-progressive-web-apps-is-a-serious-detriment-to-future-of-the-web-e81b2be29676
Progressive Web Applications (PWAs) are one of the most exciting and innovative things happening in web development right now. PWA’s enable you to use JavaScript to create a “service worker”, which gives you all sorts of great features that you’d normally associate with native apps, like push notifications, offline support, and app loading screens — but on the web! Awesome.

Mozilla launches experimental voice search, file-sharing and note-taking tools for Firefox
https://techcrunch.com/2017/08/01/mozilla-launches-experimental-voice-search-file-sharing-and-note-taking-tools-for-firefox/
Mozilla just launched three new Test Pilot experiments that bring voice search, built-in note taking and a tool for sending large files to the browser. 另:Intersection Observer comes to Firefox.

Node on Android
https://github.com/node-on-mobile/node-on-android
Make Node.js apps for Android (Currently only supports ARM64).

Fiber is ready
http://isfiberreadyyet.com/
目前已经完全通过单元测试了

JetBrains Web UI components open-sourced
https://blog.jetbrains.com/hub/2017/08/02/jetbrains-web-ui-components-open-sourced/
Ring UI library gives you the power of complex UI controls that have been developed at JetBrains over the years. It contains over 50 React controls, ranging from simple links and buttons to sophisticated controls, such as Date Picker or Data List. This library is extensively used inside YouTrack, Hub, Upsource, and other products, and we are committed to developing and maintaining it for many years to come.

prosemirror
https://github.com/ProseMirror/prosemirror
ProseMirror is a well-behaved rich semantic content editor based on contentEditable, with support for collaborative editing and custom document schemas.

Shoelace.css
https://shoelace.style/
Shoelace.css is a starter kit, not a framework. Think of it as a CSS reset sprinkled with helpful components. Bootstrap users will find it familiar, yet refreshing. Shoelace is highly customizable through CSS variables. It doesn’t require Less, Sass, or any preprocessing at all. The minified version is only 35.3KB and much smaller when gzipped.

Glamorous v4 is here
https://medium.com/@kentcdodds/glamorous-v4-is-here-c678fe02a39a
Maintainable CSS with React https://github.com/paypal/glamorous

Introducing: Storybook for Vue
https://medium.com/storybookjs/introducing-storybook-for-vue-940f222541c5
Storybook has been known as “React Storybook” since the beginning, but it was rebranded to “Storybook” during the 3.0.0 release. As described in our roadmap, this change was made to support more UI libraries than just React. And today, with the release of Storybook 3.2, we’re excited to introduce the first of many new “Storybook for <insert framework here>”! And it’s “Storybook for Vue”!

Nuxt.js: A Universal Vue.js Application Framework
https://www.sitepoint.com/nuxt-js-universal-vue-js/
Nuxt.js is a framework that helps you build Server Rendered Vue.js applications easily. It abstracts most of the complex configuration involved in managing things like asynchronous data, middleware, and routing. It is similar to Angular Universal for Angular, and Next.js for React.

Nightwatch.js
http://nightwatchjs.org/
Nightwatch.js is an easy to use Node.js based End-to-End (E2E) testing solution for browser based apps and websites. It uses the powerful W3C WebDriver API to perform commands and assertions on DOM elements.

crossenv malware on the npm registry
http://blog.npmjs.org/post/163723642530/crossenv-malware-on-the-npm-registry
On August 1, a user notified us via Twitter that a package with a name very similar to the popular cross-env package was sending environment variables from its installation context out to npm.hacktask.net. We investigated this report immediately and took action to remove the package. Further investigation led us to remove about 40 packages in total.

Detecting Chrome Headless
http://antoinevastel.github.io/bot%20detection/2017/08/05/detect-chrome-headless.html
In the next part, we go through several techniques that can be used to distinguish a vanilla Chrome browser from a Chrome running in headless mode.

Machine learning comes to your browser via JavaScript
http://www.infoworld.com/article/3212884/machine-learning/machine-learning-comes-to-your-browser-via-javascript.html
A new JavaScript library runs Google’s TensorFlow right in the browser with GPU acceleration—a novel way to bring machine learning to the masses

Exa, a modern replacement for ls
https://the.exa.website/
exa is a modern replacement for ls. It uses colours for information by default, helping you distinguish between many types of files, such as whether you are the owner, or in the owning group. It also has extra features not present in the original ls, such as viewing the Git status for a directory, or recursing into directories with a tree view. exa is written in Rust, so it’s small, fast, and portable.

YC’s 2017 Summer Reading List
https://blog.ycombinator.com/ycs-2017-summer-reading-list/

Introducing seven new apps to GitHub Marketplace
https://github.com/blog/2411-introducing-seven-new-apps-to-github-marketplace
Whether you’re working on an open source project or building a software company, chances are you can simplify your work with GitHub Apps. In May, we launched GitHub Marketplace—a place where you can easily discover, purchase, and integrate new tools that customize your workflow. Today, we’re launching seven new apps in Marketplace and four new categories: Dependency Management, Localization, Security, and Time Tracking. 另附: GitHub - Topic Suggestions for Millions of Repositories.

产品及其它

StackOverflow - Sunsetting Documentation
https://meta.stackoverflow.com/questions/354217/sunsetting-documentation/
We will stop accepting contributions to Documentation https://stackoverflow.com/documentation on August 8. Why was this decision made and why now?

Why I left Medium and moved back to my own domain
https://arslan.io/2017/07/30/why-i-left-medium-and-moved-back-to-my-own-domain/
When I’ve started writing my stories on Medium it felt really good. Medium was the perfect “medium” to share your thoughts with all your followers. However in couple of years it changed a lot and I didn’t liked those changes. What were these?

这家做新金融技术的公司为什么把自己比作「特斯拉」
http://www.geekpark.net/topics/221013
依托人工智能对于金融服务的变革,将会突破传统金融行业的局限。不再「拿着锤子找钉子」,而是先找到人,然后根据需求打造全新的产品。不再削足适履,而去找到让金融服务更「智能」的方式。而对于智融集团来讲,每个行业都会经过「贸工技」的阶段: - 贸:我们先把这个东西拿出来卖,做渠道、流通。 - 工:我们通过一些技术的手段加强这个行业的效率。 - 技:我们要通过一种新的技术去改变一个行业内在的实质 互联网金融行业,在过去的很多年发生的事情往往是集中在贸和工的领域,也许是时候要将更多核心转移到「技」上面。

百度主任架构师-打造非职权技术管理机制
https://mp.weixin.qq.com/s?__biz=MzA4NTU2MTg3MQ==&mid=2655160785&idx=1&sn=3afbe53308ed86559f10315be9effd29
非职权的技术管理。这个词是我拼凑出来的。简单翻译一下就是,你负责一件事、领导一项技术、负责一个项目,但是所有的项目成员都不向你汇报。这个听起来特别诡异,因为一般的管理都是与职权挂钩的,否则很多直接有效的调节手段就没法用,比如薪酬绩效,比如需要项目团队加班、996,直接下规定说谁不来就扣钱——我没法没有这样做。非职权的管理方式在技术领域是基本不可避免的。原因很简单,职权一定和组织架构强相关,组织架构是公司和部门为了业务设定和优化的。我们都知道,互联网上唯一不变的就是变化,有新的机遇新的时代到来的时候,一定会跟现有的组织架构产生非常大的冲突。

联·互·网:互联网的本质
https://m.igetget.com/share/audio/aid/6Taf7emqyXvuC98fSd0o
理解互联网的本质切入点,就是互联网这个词。如果我们稍微玩一个文字游戏,把这个词拆成三个字的话,就是联、互、网。 第一个关键词:联。联就是联结,就是把人通过互联网联结起来。它背后其实有个非常重要的意义,完成了所有物理世界在线化的一个表达,这是非常重要的概念;第二个关键词:互。互是互动。在所有到目前为止的技术变革当中,绝大部分的技术是单向的。只有极少数的技术双向的。而互联网目前最大的价值,甚至未来还会得到的更大发展,是海量的人同时互动的能力;第三个关键词:网。商业最重要的是结网。因为当海量的人开始可以互动的时候,你怎样让他们通过协作的方式去完成一件事情,就变成了一种新的商业组织方式。这跟历史上通过流水线的管理方式来实现,是一个很大的不同;

– THE END –

作者:nwind (http://wuduoyi.com/) - 我的文章禁止未经许可全文拷贝转载,未经许可只能转载 1/10 的内容