FEX 技术周刊 - 2018/04/09
微信搜索『FEX』关注我们的公众号,及时获得最新资讯。
深阅读
Re-inventing npmjs.com
http://blog.npmjs.org/post/172567815935/re-inventing-npmjscom
Last week, the npmjs.com website received the most ambitious update in its history. We said “cheerio” to the old hapi-and jQuery-based website, and “hello” to a state-of-the-art web application based on Spife and React.
Examples of everything new in ECMAScript 2016, 2017, and 2018
https://medium.freecodecamp.org/here-are-examples-of-everything-new-in-ecmascript-2016-2017-and-2018-d52fa3b5a70e
In this article, I’ll cover all 18 features that are listed in the TC39’s finished proposals that were added in ES2016, ES2017, and ES2018 (final draft) and show them with useful examples.
GitLab + Google Cloud Platform = simplified, scalable deployment
https://about.gitlab.com/2018/04/05/gke-gitlab-integration/
Get super-simple deployment for your app with GitLab and Google Cloud Platform (GCP): thanks to our integration with Google Kubernetes Engine (GKE), you can now get CI/CD and Kubernetes deployment set up with just a few clicks.. Now everyone can get automatic code quality, security testing, and no-configuration deployment.
Improved Docker Container Integration with Java 10
https://blog.docker.com/2018/04/improved-docker-container-integration-with-java-10/
With the release of Java 10, the JVM now recognizes constraints set by container control groups (cgroups). Both memory and cpu constraints can be used manage Java applications directly in containers, these include: adhering to memory limits set in the container; setting available cpus in the container; setting cpu constraints in the container. Java 10 improvements are realized in both Docker for Mac or Windows and Docker Enterprise Edition environments.
当 Egg 遇到 TypeScript
https://zhuanlan.zhihu.com/p/35334932
本文主要阐述:应用层 TS 开发规范;我们在工具链方面的支持,是如何来解决上述问题,让开发者几乎无感知并保持一致性的开发体验。
F2 3.1 发布,开箱即用的移动端可视化解决方案
https://zhuanlan.zhihu.com/p/35209259
F2,源于 Fast & Flexible 两个单词首字母,是 AntV 家族中专为移动端定制、开箱即用的可视化解决方案。或许大家对我比较陌生,但是从 AntV 上线的那一天起我就已经出道了,那时候我有另外一个名字『G2-mobile』,我和 G2 师承一脉,尽得『图形语法』真传,主要用于满足对代码体积以及渲染性能要求严苛的移动端图表需求。
Node全栈为前端带来更多可能
https://mp.weixin.qq.com/s?__biz=MzUxMzcxMzE5Ng==&mid=2247488622&idx=1&sn=ace22c286a261645e2c07a7adf90abf9
Node 为解决后端并发而生,但却无心插柳,成为大前端的基石。伴随大前端的发展,Node 也发展得越来越好,越来越重要,其应用场景从脚手架、辅助前端开发(比如 SSR、PWA 等)的快速开发实践,到 API 中间层、代理层,到专业的后端开发都有非常成熟的经验。另外,前端越来越复杂,后端服务化,今日的前端要面临更多的挑战,Node 全栈给大家更多可能,狼叔对此坚定不移。
另附:在AI横行的时代,你为什么还要固守大前端
Mvvm 前端数据流框架精讲
https://mp.weixin.qq.com/s?__biz=MjM5MDI3MjA5MQ==&mid=2697266952&idx=2&sn=a3389d1db237c2b23f523061da3b2359
本文将带大家了解什么是 mvvm,mvvm 的原理,以及近几年产生了哪些演变。同时借 mvvm 话题,拓展到对各类前端数据流方案的思考,形成对前端数据流整体认知,帮助大家在团队中更好地做技术选型。
深入理解PHP7内核之zva
http://www.laruence.com/2018/04/08/3170.html
PHP7已经发布, 如承诺, 我也要开始这个系列的文章的编写, 主要想通过文章让大家理解到PHP7的巨大性能提升背后到底我们做了什么, 今天我想先和大家聊聊zval的变化. 在讲zval变化的之前我们先来看看zval在PHP5下面是什么样子。
另附: 深入理解PHP7内核之Reference
[译]计算机语言的巨变
http://blog.jobbole.com/113828/
在这篇文章中,我来讲述一下为什么我不再碰 C++ 的故事。这是关于计算机语言设计经济学专题文章的起始点。这篇文章会讨论为什么一些真心不好的决策会被做出来,然后进入语言的基础设计之中,以及我们该如何修正这些问题。
另附:极简编程语言史
A Diagram of Modern React Lifecycle Methods
https://twitter.com/dan_abramov/status/981712092611989509
A helpful diagram from core team member Dan Abramov. A lot of people on Twitter have found it useful or even been surprised to learn a few things from it.
另附:The History of React.js on a Timeline、23 Best React UI Component Frameworks.
Aurelia 2018 Q1 Report
http://aurelia.io/blog/2018/04/02/aurelia-2018-q1-report/
With the first quarter of 2018 now behind us, we wanted to take the time to provide an update on the progress the Aurelia team and community have made towards our 2018 roadmap goals. We’ve made some significant advancements in our core platform capabilities during Q1, including releases that have been in high demand for quite some time. Let’s dig into the details…
另附:Aurelia RealWorld App
Calling all web developers: here’s why you should be using Firefox
https://medium.com/swlh/calling-all-web-developers-heres-why-you-should-be-using-firefox-983f012d4aec
In my opinion, Firefox Quantum has a superior performance compared to other browsers. Here’s why…
另附:Mozilla Brings Firefox to Augmented and Virtual Reality
Working with the new CSS Typed Object Model
https://developers.google.com/web/updates/2018/03/cssom
CSS now has a proper object-based API for working with values in JavaScript.
Making a 100% Statically-Linked, Single-File Web App with React and Rust
https://anderspitman.net/2018/04/04/static-react-rust-webapp/
This tutorial will cover the basics of creating a minimal React app which can be deployed as a statically-linked Rust binary. What this accomplishes is having all of your code, including HTML, JavaScript, CSS, and Rust, packaged into a single file that will run on pretty much any 64-bit Linux system, regardless of the kernel version or installed libraries.
另附:JavaScript to Rust and Back Again: A wasm-bindgen Tale
Netflix FlameScope
https://medium.com/netflix-techblog/netflix-flamescope-a57ca19d47bb
We’re excited to release FlameScope: a new performance visualization tool for analyzing variance, perturbations, single-threaded execution, application startup, and other time-based issues. It has been created by the Netflix cloud performance engineering team and just released as open source, and we welcome help from others to develop the project further.
Scaling Uber’s Hadoop Distributed File System for Growth
https://eng.uber.com/scaling-hdfs/
Scaling our infrastructure while maintaining high performance was no easy feat. To accomplish this, Uber’s Data Infrastructure team massively overhauled our approach to scaling our HDFS by implementing several new adjustments and features, including View File System (ViewFs), frequent HDFS version upgrades, NameNode garbage collection tuning, limiting the number of small files that filter through the system, an HDFS load management service, and a read-only NameNode replica. Read on to learn how Uber implemented these improvements to facilitate the continued growth, stability, and reliability of our storage system.
How Ipdata Serves 25M API Calls From 10 Infinitely Scalable Global Endpoints
http://highscalability.com/blog/2018/4/2/how-ipdata-serves-25m-api-calls-from-10-infinitely-scalable.html
Our users typically call our API on each page request on their websites to geolocate their users and localize their content. So this particular failure was directly impacting our users’ websites on the biggest sales day of the year. This sequence of events and their inexplicable nature — cpu, mem and i/o were nowhere near capacity. As well as concerns on how well (if at all) we would scale, given our outage, were a big wake up call to rethink our existing infrastructure.
Updating the NGINX Application Platform
https://www.nginx.com/blog/updating-nginx-application-platform/
Today, our vision to simplify the journey to microservices takes a big step forward. We are announcing the upcoming availability of the next version of our flagship software, NGINX Plus R15, with exciting new features, and the upcoming launches of NGINX Unit 1.0 and NGINX Controller R1. Combined, these launches advance the NGINX Application Platform, a product suite that includes a load balancer, content cache, API gateway, WAF, and application server – all with centralized monitoring and management for monolithic apps, for microservices, and for transitional apps.
Introduction to Computer Vision
https://blog.algorithmia.com/introduction-to-computer-vision/
Computer Vision is the process of using machines to understand and analyze imagery (both photos and videos). While these types of algorithms have been around in various forms since the 1960’s, recent advances in Machine Learning, as well as leaps forward in data storage, computing capabilities, and cheap high-quality input devices, have driven major improvements in how well our software can explore this kind of content.
[译]关于日常生活中视觉标识的探索
https://mp.weixin.qq.com/s?__biz=MzI3MTQ2NzgwMw==&mid=2247487075&idx=1&sn=57cd886e0cf7b12621f1eff8a354ffd4
视觉标示常能使某一产品从一堆产品中脱颖而出,这样看来,与其要求使用者进行操作行为,倒不如用些交流手段来给用户一些他们值得注意的暗示。标示物并不一直明确的存在但是它常在某个情况下以一种低调的暗示方式出现。标示物通过图标、排版样式、放大字体、颜色变化、动画以及其他一些表现形式来达到对外传递信息的目的。
Mobbin - Latest Mobile Design Patterns
https://mobbin.design/
Mobbin is a hand-picked collection of latest design patterns from mobile apps that reflect the best in design.
The Rise Of Intelligent Conversational UI
https://www.smashingmagazine.com/2018/04/rise-intelligent-conversational-ui/
The importance of Conversational UI cannot be understated, even if some of us wish it wasn’t happening. The most important advancement in Conversational UI has been Natural Language Processing (NLP). This is the field of computing that deals not with deciphering the exact words that a user said, but with parsing out of it their actual intent. If the bot is the interface, NLP is the brain. In this article, we’re going to take a look at why NLP is so important, and how you (yes, you!) can build your own.
The Inside Story of Reddit’s Redesign
https://www.wired.com/story/reddit-redesign/
For the past year and a half, Reddit and its new team of 20 designers have been refashioning the so-called “front page of the internet.” They’ve taken great pains to build on top of Reddit’s long legacy, rather than replacing it with something unfamiliar. They’ve argued about everything from the placement of the logo to the way moderators should style their communities to the dominant color on the site (red-orange, as it turns out). It’s been a slow, careful process that everyone takes extremely seriously. “If you redesign Reddit,” says Diego Perez, the company’s head of design, “you’re inherently changing the internet.”
新鲜货
Announcing the new HTTP Archive!
https://discuss.httparchive.org/t/announcing-the-new-http-archive/1294
Our goal was to more easily enable anyone to explore the health of the web as a whole. Not just data-mining SQL gurus or statisticians, but everyone with a vested interest in the state of the web. To that end, we’ve made several important enhancements to the HTTP Archive website to make discovering stats and trends about the web even easier.
Announcing 1.1.1.1: the fastest, privacy-first consumer DNS service
https://blog.cloudflare.com/announcing-1111/
Cloudflare’s mission is to help build a better Internet. We’re excited today to take another step toward that mission with the launch of 1.1.1.1 — the Internet’s fastest, privacy-first consumer DNS service. This post will talk a little about what that is and a lot about why we decided to do it.
另附:DNS Resolvers Performance compared: CloudFlare x Google x Quad9 x OpenDNS、A Modern (Re)Introduction to DNS
Introducing Network Error Logging
https://dcreager.net/nel/intro/
Enter Network Error Logging (NEL), a new web platform spec that we’re working on in the W3C’s Web Performance Working Group. With NEL, you can instruct user agents to collect the same set of information that would appear in your server logs. Those instructions would apply to all requests to your server’s origin, regardless of how (and on which containing sites) those requests were initiated. And since the data is collected directly by the user agent, you should have visibility into all of your clients’ connection requests, not just those that made it to your serving infrastructure.
webpack v4.5.0
https://github.com/webpack/webpack/releases/tag/v4.5.0
performance improvements, Scope Hoisting bugfixes. New Setup Script for first time contributors!!
Sails 1.0
https://sailsjs.com/
Sails makes it easy to build custom, enterprise-grade Node.js apps. Build practical, production-ready Node.js apps in a matter of weeks, not months. Sails is the most popular MVC framework for Node.js, designed to emulate the familiar MVC pattern of frameworks like Ruby on Rails, but with support for the requirements of modern apps: data-driven APIs with a scalable, service-oriented architecture.
Fly · The Serverless Edge
https://fly.io/
Fly is a global JavaScript platform that gives you the power to build your own CDN. Write, test, and run code locally. Then deploy it everywhere and watch it scale.
附:Introducing Fly Edge Apps.
Bulma
https://bulma.io/
Bulma is a free and open source CSS framework based on Flexbox.
glide
https://glidejs.com
A dependency-free JavaScript ES6 slider and carousel. It’s lightweight, flexible and fast. Designed to slide. No less, no more
gron
https://github.com/tomnomnom/gron
Make JSON greppable! gron transforms JSON into discrete assignments to make it easier to grep for what you want and see the absolute ‘path’ to it. It eases the exploration of APIs that return large blobs of JSON but have terrible documentation.
React Kanban
https://github.com/yogaboll/react-kanban
A server-rendered React app inspired by Trello.
Headless Chrome Crawler
https://github.com/yujiosaka/headless-chrome-crawler
Crawlers based on simple requests to HTML files are generally fast. However, it sometimes ends up capturing empty bodies, especially when the websites are built on such modern frontend frameworks as AngularJS, React and Vue.js.
whistle
https://github.com/avwo/whistle
whistle is a cross-platform web debugging tool based on Node.js. It features the following: offer HTTP proxying; capture, replay or compose requests of HTTP, HTTPS, WebSocket and TCP; manipulate http request and response by configing hosts, or patterns like domain, path, regular expression, wildcard characters, wildcard path, etc; offer build-in mobile debugging mode.
wolkenkit
https://www.wolkenkit.io/
wolkenkit is a CQRS and event-sourcing framework for JavaScript and Node.js which fits perfectly with domain-driven design (DDD). It provides the technical foundation for your application, including an event-store and a scalable real-time API. This allows you to focus on what’s essential: Solving actual real-world problems in no time.
附:Building Real-Time Web Applications using wolkenkit.
10 Javascript IoT Libraries To Use In Your Next Project
https://blog.bitsrc.io/10-javascript-iot-libraries-to-use-in-your-next-projects-bef5f9136f83
另附:How is IoT Impacting Cybersecurity Technology?、阿里全面进军IoT,语音将是人与IoT最自然的交互方式
数据结构和算法学习笔记
https://www.jianshu.com/p/38853c044156
用 JS 实现,感兴趣的同学可以学习。
CockroachDB 2.0 Has Arrived!
https://www.cockroachlabs.com/blog/cockroachdb-2-0-release/
CockroachDB debuted as the open source database that made it possible to build massive, reliable cloud applications without giving up SQL. Forward-thinking companies adopted it to hide the complexity of dealing with distributed scale, resilience, and consistency problems in the database layer.
另附:A Browser-Based MongoDB Playground
QueryStorm - Plug&play SQL and C# support for Excel
https://querystorm.com/
Meet QueryStorm, our new Excel plugin that adds powerful development and data processing capabilities into Excel.
附 I wandered off and built an IDE、TextQL - Allows you to easily execute SQL against structured text like CSV or TSV.
Berkeley offers its fastest-growing course – data science – online, for free
http://news.berkeley.edu/2018/03/29/berkeley-offers-its-fastest-growing-course-data-science-online-for-free/
The fastest-growing course in UC Berkeley’s history — Foundations of Data Science — is being offered free online this spring for the first time through the campus’s online education hub, edX.
产品及其它
The End of Windows
https://stratechery.com/2018/the-end-of-windows/
The story of Windows’ decline is relatively straightforward and a classic case of disruption: The Internet dramatically reduced application lock-in; PCs became “good enough”, elongating the upgrade cycle; Smartphones first addressed needs the PC couldn’t, then over time started taking over PC functionality directly. Thus my assertion at the top, that the story of how Microsoft came to accept the reality of Windows’ decline is more interesting than the fact of Windows’ decline; this is how CEO Satya Nadella convinced the company to accept the obvious.
美团是一个比特机器
https://mp.weixin.qq.com/s?__biz=MzA5ODMzMDkzOA==&mid=2661086781&idx=1&sn=65b36d79d54ea13ac955dcc887261778
美团,这家一向以执行力强而闻名的公司,再次彰显了其攻城掠地的偏执。如何才能看懂美团的商业扩张逻辑?王兴之所以说「上天」,美团之所以研究人工智能、大数据、云计算,都是因为它的 On-Demand 服务不仅要在外卖里以亿计算,而且还准备进入其他市场,如打车。
另附:扩张的边界:程维向右,王兴向左
– THE END –