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

深阅读

Node 8 and npm@5 release: What’s new?
https://auth0.com/blog/whats-new-in-node8-and-npm5/
Node.js and npm just had new major releases. In this article, we’ll highlight 7 notable additions to Node.js and dabble into the new monster, npm@5.

19+ JavaScript Shorthand Coding Techniques
https://www.sitepoint.com/shorthand-javascript-techniques/
This really is a must read for any JavaScript-based developer. I have written this article as a vital source of reference for learning shorthand JavaScript coding techniques that I have picked up over the years. To help you understand what is going on I have included the longhand versions to give some coding perspective.

How to get the most out of the JavaScript console
https://medium.freecodecamp.com/how-to-get-the-most-out-of-the-javascript-console-b57ca9db3e6d
One of the most basic debugging tools in JavaScript is console.log(). The console comes with several other useful methods that can add to a developer’s debugging toolkit. You can use the console to perform some of the following tasks: Output a timer to help with simple benchmarking; Output a table to display an array or object in an easy-to-read format; Apply color and other styling options to the output with CSS.

A crash course in memory management
https://hacks.mozilla.org/2017/06/a-crash-course-in-memory-management/
This is the 1st article in a 3-part series: A crash course in memory management, A cartoon intro to ArrayBuffers and SharedArrayBuffers, Avoiding race conditions in SharedArrayBuffers with Atomics. To understand why ArrayBuffer and SharedArrayBuffer were added to JavaScript, you need to understand a bit about memory management.

Habits of a Happy Node Hacker 2017
https://blog.heroku.com/node-habits-2017
Here are 8 habits for happy Node hackers updated for 2017. They’re specifically for app developers, rather than module authors, since those groups have different goals and constraints.

Node.fz: fuzzing the server-side event-driven architecture
https://blog.acolyer.org/2017/06/09/node-fz-fuzzing-the-server-side-event-driven-architecture/
This paper provides a fascinating look at common causes of concurrency bugs in server-side event driven architecture (EDA) based applications. By far the most popular framework supporting this style is Node.js of course.

企业级前端组件库方案
http://www.cnblogs.com/sskyy/p/7002404.html
件库是前端大规模开发中提升效率的重要一环,同时也是可视化页面搭建、自动化测试等上层建筑的基石。因此设计时要考虑的问题涵盖面非常广。要设计好非常难,但是设计好之后从上层建筑带来的回报会超过你的想象。这篇文章中我们先一起来关注和探讨组件库要解决的问题,最后会推导出一套足够灵活——适用于大团队或社区使用,又足够强大——能支撑起上层建筑的组件库方案。也请读者注意,结论其实很简单,文中思考过程才是重点。知道结论并能让你一跃成为架构师,但知道了如何从系统角度设计局部却让你有机会可以。共勉。

在 ECharts GL 中绘制三维地图
http://echarts.baidu.com/blog/2017/06/14/building-realistic-map-with-echarts-gl.html
这篇教程就希望通过在 Gallery 里绘制一个有丰富的光效、阴影的写实风格的三维地图的例子,简单介绍一些ECharts GL与画质相关的配置项,最终效果

如何配合业务打造JDReact三端融合开发平台
http://mp.weixin.qq.com/s?__biz=MzIwNjQwMzUwMQ==&mid=2247485269&idx=1&sn=9f35461b1bef220b2f7ae911898a4478
良好解决多终端开发问题是提升团队开发效率的有效方法,本文全面解析了京东 JDReact 三端融合平台,一起来看看京东的解决方案吧!

Android增量代码测试覆盖率工具
http://tech.meituan.com/android-jacoco-practace.html
正常情况下,可以通过写单测来保证新增代码的覆盖率,但在实际开发中,由于单测部署成本高、项目排期比较紧张、需求变化频繁、团队成员能力不足等多种原因,单测在互联网行业普及程度并不理想。所以我们实现了这样一个工具,不需要写单测的情况下,在代码提交之前自动检测新增代码的手工测试覆盖率,避免新开发的功能没有经过自测就直接进入代码审查环节。

开箱即用的网站可访问性提升指南
https://zhuanlan.zhihu.com/p/27221051
本文首先介绍什么是网站可访问性、残障人士如何访问网站;然后提供一些开箱即用的建设无障碍网站的操作指南,让你能够立即在项目中使用;最后介绍了如何检测网站的可访问性。

Handling State in React: Four Immutable Approaches to Consider
https://medium.com/@housecor/handling-state-in-react-four-immutable-approaches-to-consider-d1f5c00249d5
Perhaps the most common point of confusion in React today: state. Here are four ways to treat state as immutable.

Why I Chose React Over Vue
https://medium.com/@CalinLeafshade/why-i-chose-react-over-vue-3dd9a230b507
使用 JS 所以在工具层面比较容易支持

If we chose our JavaScript Framework like we chose our music
https://www.sitepen.com/blog/2017/06/13/if-we-chose-our-javascript-framework-like-we-chose-our-music/
Through this series of blog posts, we are going to try our best to give you a framework for choosing a framework (how meta is that?) and along the way, we are going to try to provide some analysis of several of today’s leading frameworks.

FuseBox — a Faster, Simpler Webpack Alternative
https://www.sitepoint.com/fusebox-faster-webpack-alternative/
FuseBox is a next generation ecosystem of tools that provides for all of the requirements of the development lifecycle. It enables developers to bundle any file format, it is a module loader, a transpiler, a task runner and much more. In this article we are going to use FuseBox to walk you through the common tasks involved in developing a JavaScript application.

A Complete Guide To Switching From HTTP To HTTPS
https://www.smashingmagazine.com/2017/06/guide-switching-http-https/
In this guide, I will explain the individual components and steps and will clearly cover the individual stages of the setup. Your experience should be easy, especially if your hosting provider also supplies HTTPS certificates — chances are you will be able to perform everything from your control panel quickly and easily.

Instagram Makes a Smooth Move to Python 3
https://thenewstack.io/instagram-makes-smooth-move-python-3/
Ahem. Four. Hundred. Million. Users. Per. Day. Not only has Instagram scaled to become the biggest Python user in the world, but the company recently moved over to Python 3 with zero user experience interruption. Instagram engineers Hui Ding and Lisa Guo talked with The New Stack to share the Python love and describe the Python 3 migration experience.

SQLite small blob storage: 35% Faster Than the Filesystem
https://www.sqlite.org/fasterthanfs.html
SQLite reads small blobs (for example, thumbnail images) 35% faster¹ than the same blobs can be read from or written to individual files on disk using fread() or fwrite(). Furthermore, a single SQLite database holding 10-kilobyte blobs uses about 20% less disk space than storing the blobs in individual files.

Get Ready for Web Bluetooth
http://developer.telerik.com/content-types/tutorials/get-ready-web-bluetooth/
With the new Web Bluetooth API now available in Chrome Browsers 56+ and Opera 44+, as well as more recent Android browsers, the world of connected devices just got a little closer to realizing the promise of the Physical Web: “Walk up and use anything”.

新鲜货

ESLint v4.0.0 released
http://eslint.org/blog/2017/06/eslint-v4.0.0-released
We just pushed ESLint v4.0.0, which is a major release upgrade of ESLint. This release adds some new features and fixes several bugs found in the previous release. This release also has some breaking changes, so please read the following closely.

React v15.6.0
https://facebook.github.io/react/blog/2017/06/13/react-v15.6.0.html
关键升级点: Improving Inputs; Less Noisy Deprecation Warnings.

Angular 4.2 Now Available
http://angularjs.blogspot.jp/2017/06/angular-42-now-available.html
What’s new? Angular Forms now includes validators for min and max attributes; You can now bootstrap a component directly by passing an element reference to the bootstrap method of an ApplicationRef; Improved i18n tooling including MissingTranslationStrategy and location notes in xliff2 files; We’ve begun laying the foundation for testing AOT components, which will become possible in a future release; New compiler flag alwaysCompileGeneratedCode is available opt-in, and will be turned on by default in the future.

Announcing TypeScript 2.4 RC
https://blogs.msdn.microsoft.com/typescript/2017/06/12/announcing-typescript-2-4-rc/
新特性:TypeScript 2.4 is bringing support for ECMAScript’s new import() calls. Safer callback parameter checking. Weak types. String enums.

Firefox 54: E10S-Multi, WebExtension APIs, CSS clip-path
https://hacks.mozilla.org/2017/06/firefox-54-e10s-webextension-apis-css-clip-path/
Today’s release completes Firefox’s transformation into a fully multi-process browser, running many simultaneous content processes in addition to a UI process and, on Windows, a special GPU process. Firefox continues its rapid implementation of new WebExtension APIs. These APIs are designed to work cross-browser. The CSS clip-path property allows authors to define which parts of an element are visible.

Amplitude.js
https://github.com/521dimensions/amplitudejs
Amplitude.js is a lightweight JavaScript library that allows you to control the design of your media controls in your webpage – not the browser. No dependencies (jQuery not required). Amplitude.js is available under the MIT License.

ZangoDB
https://github.com/erikolson186/zangodb
ZangoDB is a MongoDB-like interface for HTML5 IndexedDB that supports most of the familiar filtering, projection, sorting, updating and aggregation features of MongoDB, for usage in the web browser.

pasition
https://github.com/AlloyTeam/pasition
1kb(gzip) javascript Path Transition library.

Now UI Kit: A Bootstrap 4 UI Kit
http://demos.creative-tim.com/now-ui-kit/index.html
Now UI Kit is a responsive Bootstrap 4 kit provided for free by Invision and Creative Tim. It is a beautiful cross-platform UI kit featuring over 50 elements and 3 templates. Now UI Kit is one of the most popular UI Kits online, provided in PSD and Sketch formats by Invision. We wanted to find a way for developers worldwide to benefit from using it. So, in collaboration with Invision, we are launching the HTML version for it!

Dutier
https://github.com/luisvinicius167/dutier
A small (1kb), async and simple state management solution for Javascript applications.

Collect.js
https://github.com/ecrmnn/collect.js
Convenient and dependency free wrapper for working with arrays and objects. Collect.js offers an (almost) identical api to Laravel Collections 5.4.

js-joda - Immutable date and time library for javascript
https://js-joda.github.io/js-joda/
Java 中著名的时间处理类库 joda 的 JS 版本。

camaro
https://github.com/tuananh/camaro
camaro is an utility to transform XML to JSON, using Node.js binding to native XML parser pugixml, one of the fastest XML parser around.

100+ Emulators Written in JavaScript
https://hackerlists.com/javascript-emulators/
整理各种 JS 写的模拟器,包括非常多老设备

#c0ffee is the color
http://c0ffee.surge.sh/
快速查看颜色对应的 code

Reladomo - Enterprise Open Source Java ORM
https://www.infoq.com/articles/Reladomo-Open-Source-ORM-Part2
We began Reladomo development in 2004. The first production deployment was later that year and we’ve been releasing regularly ever since. In the intervening years, Reladomo has become widely adopted at Goldman Sachs, and the applications that use it have guided the major new features we’ve added. It is now used in multiple ledgers, middle office trade processing, balance sheet processing, and dozens of other applications. Goldman Sachs released Reladomo (short for relational domain objects) as an open source project under the Apache 2.0 license in 2016.

R Markdown
http://rmarkdown.rstudio.com/
R Markdown provides an authoring framework for data science. You can use a single R Markdown file to both. R Markdown documents are fully reproducible and support dozens of static and dynamic output formats.

The Art of Design
https://www.netflix.com/title/80057883
Step inside the minds of the most innovative designers in a variety of disciplines and learn how design impacts every aspect of life.

Standard Ebooks: Free and liberated ebooks, carefully produced
https://standardebooks.org/
Standard Ebooks is a volunteer driven, not-for-profit project that produces lovingly formatted, open source, and free public domain ebooks. Standard Ebooks takes ebooks from sources like Project Gutenberg, formats and typesets them using a carefully designed and professional-grade style guide, lightly modernizes them, fully proofreads and corrects them, and then builds them to take advantage of state-of-the-art ereader and browser technology.

Developers Who Use Spaces Make More Money Than Those Who Use Tabs
https://stackoverflow.blog/2017/06/15/developers-use-spaces-make-money-use-tabs/
This is certainly a surprising result, one that I didn’t expect to find when I started exploring the data. And it is impressively robust even when controlling for many confounding factors. As an exercise I tried controlling for many other confounding factors within the survey data beyond those mentioned here, but it was difficult to make the effect shrink and basically impossible to make it disappear.

GitHub - New community tools
https://github.com/blog/2380-new-community-tools
We’re introducing two new tools to help maintain and grow open source communities: Recommended community standards, Easier codes of conduct. 另:Nested teams add depth to your team structure

产品及其它

For an Inclusive Culture, Try Working Less
https://hackernoon.com/for-inclusive-culture-maybe-less-is-more-87b663662cea
When our office culture is focused on business rather than socializing, we reduce the number of ways in which we all have to be the same. When we do that, we allow diversity to flourish. If your culture expects people to work long hours or hang out off-hours, the strain on the people who are different, in whatever way, is increased, and your ability to retain a diverse work force is reduced. If you want to build an inclusive culture, build a minimum culture. Build it around professionalism, boundaries, and work-life balance. Make sure your senior staff walks the walk, and spreads the word.

Lessons I’ve Learned from Three Million Downloads
http://jordansmith.io/lessons-ive-learned-from-three-million-downloads/
Before writing an app that ‘made it’, I wrote plenty that didn’t make it. Design everything around the first time user. Listen to your critics, but don’t do what they say. A great product is better than a viral gimmick.

你没死在“战略和格局”上,而会死在“最后1米”
http://mp.weixin.qq.com/s?__biz=MzI2NTY4MDg1NA==&mid=2247487890&idx=1&sn=e622bd156493b3c92183c71b12b3b0fd
人们总是热衷于关注和研讨一些高级话题,比如战略和格局之类,那些创业者以及大公司的管理者更是如此。这本无可厚非,战略思维和思考格局的确很重要。但是,仅凭这些高大上的东西并不能成功。我们看到,很多管理者脱离业务实际,整天到处参加聚会、演讲,张口闭口“倒逼、赋能、加持、all-in、布局、入口、大数据、云计算、人工智能”。他们的产品,均号称“智慧智能、贴心服务、一站式、全方位、业内领先、国际一流”。但当你实际使用一次他们的业务时,你会因为其糟糕的体验而感到无比震惊和愤怒。当然,世间也有不少低调务实的企业,他们不擅长“吹牛逼、画大饼”,只会用好的产品和服务来获得认可和尊重。战略和格局都类似,但为什么会产生天壤之别?这就涉及到产品“最后1米”的体验和服务是否良好的问题。所谓“最后1米”,类似于物流配送常说的“最后一公里”,指的是与用户紧密接触的产品、体验、包装、门店、客服等所有最后的关键环节。

你不是Google,一语点醒技术人
http://mp.weixin.qq.com/s?__biz=MzA5Nzc4OTA1Mw==&mid=2659599329&idx=1&sn=75bb8b30309fabb08fb784471136541a
这又是一篇劝大家“不要盲目崇拜”的文章。不过这次我列出了一长串有用的清单,或许能够帮助你们做出更好的决定。如果你还在使用 Google 搜索新技术来重建你的软件架构,那么我建议你不要再这么做了。相反,你可以考虑应用 UNPHAT 原则:在彻底了解(Understand)你的问题之前,不要急着去寻找解决方案。你的目标应该是在问题领域内“解决”问题,而不是在方案领域内解决问题;列出(eNumerate)多种方案,不要只把眼睛盯在你最喜欢的方案上;选择一个候选方案,并阅读相关论文(Paper);了解候选方案的产生背景(Historical context);比较优点(Advantages)和缺点,扬长避短;思考(Think),冷静地思考候选方案是否适合用于解决你的问题。另附一个和这篇文章观点类似的文章:Excel与微服务

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