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

业界会议

JJSConf EU
https://2018.jsconf.eu/
可关注。附:Baby’s First Rust+WebAssembly module: Say hi to JSConf EU!

深阅读

deno
https://github.com/ry/deno
A secure TypeScript runtime on V8. Node 创始人新作,基于 Go 语言. Supports TypeScript 2.8 out of the box. Uses V8 6.8.275.3. That is, it’s very modern JavaScript. No package.json, no npm. Not explicitly compatible with Node. Imports reference source code URLs only.

Why is Front-End Development So Unstable?
https://www.breck-mckye.com/blog/2018/05/why-is-front-end-development-so-unstable/
Like most natural complainers I am generally better at moaning about problems than, y’know, SOLVING them. But I have a few ideas: Be wary of Medium; Be wary of self-promotion; Consider non-microlib architectures; Don’t over-sweat the employablity thing.

Andrew Clark: React Suspense
https://www.youtube.com/watch?v=z-6JC0_cOns
Async rendering in React gives us a powerful new set of primitives for addressing longstanding problems in UI development. I’ll discuss React’s vision for how async rendering can improve data fetching, code delivery, prefetching, view transitions, and more. 另:It’s 5 Years Since React Was Open SourcedLet’s fall in love with React Fiber

To Yarn and Back (to npm) Again
https://mixmax.com/blog/to-yarn-and-back-again-npm
Last year, we decided to move all of our JavaScript projects from npm to Yarn. Yarn solved the annoying problems we faced using npm, but it came with issues of its own. After a couple of especially painful weeks full of 15-minute Yarn untangling sessions, we decided to take a look at moving back to npm.

Beyond SPAs: alternative architectures for your PWA
https://developers.google.com/web/updates/2018/05/beyond-spa
I’m going to cover an important, but potentially misunderstood topic: The architecture that you use for your web app, and specifically, how your architectural decisions come into play when you’re building a progressive web app.
另附:New in Chrome 67enable Shadow DOM in Nightly

The Cult of the Complex
http://alistapart.com/article/cult-of-the-complex
There’s a lot of complexity to good design. Technical complexity. UX complexity. Challenges of content and microcopy. Performance challenges. This has never been and never will be an easy job. Simplicity is not easy—not for us, anyway. Simplicity means doing the hard work that makes experiences appear seamless—the sweat and torture-testing and failure that eventually, with enough effort, yields experiences that seem to “just work.”

如何用练习快速提升技术
https://mp.weixin.qq.com/s?__biz=MjM5Mjg4NDMwMA==&mid=2652975915&idx=1&sn=1d0c3bb0937e3d9cf1f74b1257c7aacc
有人可以靠中彩票,然后一夜暴富;有人随随便便发几张自拍,就一不小心一夜成名。可技术成长,要一步一个脚印地练习,才能掌握某项特定技术。等到我们掌握了学习的技巧,才能用更短的时间,来掌握某项特定的技术。而练习,也不是一天里写一万行代码,也不是重复写一百行代码,而是在一百天里,每天写下一百行代码。它需要一定的技巧,不懈的坚持,还有一些休息。因此在这篇文章里,我将分享工作几年里的练习技巧。

浅谈 2018 移动端跨平台开发方案
https://juejin.im/post/5b076e3af265da0dce48fe95
介绍目前几个方案的现状。其实在超级 App 流行的当下,跨 App (微信、支付宝、淘宝、百度等)才是一大难题。

头条PC站基于RIOT的组件化开发实践
https://techblog.toutiao.com/2018/05/29/untitled-25/
Riotjs是一种小而美的js框架,2.2.4稳定版本兼容IE8。采用该框架在头条pc站进行了组件化开发方式的实践,有效地提高了开发效率和扩展能力,并大大降低了维护成本。

Node.js 2018年大前端潮流解析
https://mp.weixin.qq.com/s?__biz=MzAxMTU0NTc4Nw==&mid=2661157679&idx=1&sn=9570b1c8db32eed895e6c06c450771fe
大前端已经是Web前端和客户端开发的趋势,加上Node的横空出世,移动端设备提升、HTML5能力加强,移动和前端的融合也已不可逆转。在如此多变的技术浪潮下,作为一个前端人,该如何辨识清楚技术的发展方向,又该怎么学习呢?

淘宝Web 3D应用与游戏开发
https://mp.weixin.qq.com/s?__biz=MzAxNDEwNjk5OQ==&mid=2650401461&idx=1&sn=695615d75dc2409ac0f461c7fd55710e
详细解释了3D与2D的区别,并阐述了在有限的环境下,淘宝技术虚拟互动团队是如何通过Canvas去实现3D效果。随着Web GL的发展,如何在手机淘宝中实践,以及在项目中如何与Unity结合提升开发效率。而现在,团队希望能够实现一个可视化的编辑器,帮助开发者快速得构建出相关的应用。

移动端本地 H5 秒开方案探索与实现
https://mp.weixin.qq.com/s/0OR4HJQSDq7nEFUAaX1x5A
如何通过本地加载来提升性能

群消息,究竟存1份还是多份?
https://mp.weixin.qq.com/s/1Pd0vhDu8lh9bpvKGQqLVA
为什么存一份是更好的方案

CSS Is So Overpowered It Can Deanonymize Facebook Users
https://www.bleepingcomputer.com/news/security/css-is-so-overpowered-it-can-deanonymize-facebook-users/
Some of the recent additions to the Cascading Style Sheets (CSS) web standard are so powerful that a security researcher has abused them to deanonymize visitors to a demo site and reveal their Facebook usernames, avatars, and if they liked a particular web page of Facebook.

Reconciling GraphQL and Thrift at Airbnb
https://medium.com/airbnb-engineering/reconciling-graphql-and-thrift-at-airbnb-a97e8d290712
Our frontend engineers wanted rapid iteration and flexibility from GraphQL, while our backend engineers wanted stability and specificity from Thrift. This is the story of how we got the two groups talking and built something that works for everyone.
另附:Prisma Aims to Unite the Polyglot of Databases with GraphQL

A cartoon intro to DNS over HTTPS
https://hacks.mozilla.org/2018/05/a-cartoon-intro-to-dns-over-https/
Two more protections we’re adding to that list are: DNS over HTTPS, a new IETF standards effort that we’ve championed; Trusted Recursive Resolver, a new secure way to resolve DNS that we’ve partnered with Cloudflare to provide. With these two initiatives, we’re closing data leaks that have been part of the domain name system since it was created 35 years ago. And we’d like your help in testing them. So let’s look at how DNS over HTTPS and Trusted Recursive Resolver protect our users. But first, let’s look at how web pages move around the Internet.

UTC is Enough for Everyone, Right?
https://zachholman.com/talk/utc-is-enough-for-everyone-right
Programming time, dates, timezones, recurring events, leap seconds… everything is pretty terrible. The common refrain in the industry is Just use UTC! Just use UTC! And that’s correct… sort of. But if you’re stuck building software that deals with time, there’s so much more to consider. It’s time… to talk about time.

Bad Practices in Database Design: Are You Making These Mistakes?
https://www.toptal.com/database/database-design-bad-practices
In this article, you will learn about some of the common database design bad practices, why they are bad, and how you can avoid them.

10 GitHub Security Best Practices
https://snyk.io//blog/ten-git-hub-security-best-practices/
So let’s get started with our list of 10 GitHub security best practices, starting with the classic mistake of people adding their passwords into their GitHub repositories!

How the Go runtime implements maps efficiently (without generics)
https://dave.cheney.net/2018/05/29/how-the-go-runtime-implements-maps-efficiently-without-generics
This post discusses how maps are implemented in Go.

A new fast hash table in response to Google’s new fast hash table
https://probablydance.com/2018/05/28/a-new-fast-hash-table-in-response-to-googles-new-fast-hash-table/
I wrote my new favorite hash table. This came about because last year I wrote the fastest hash table (I still make that claim) and this year one of the organizers of the C++Now conference asked me to give a talk. My problem was that Google had also announced a new fast hash table last year, and I wasn’t sure if mine would compare well against theirs.

How to Create a Team-Health Assessment for Engineering Organizations
https://blog.newrelic.com/2018/05/29/team-health-assessment/
Talking with folks in various leadership roles at New Relic, I heard a lot of stories about the successes and failures of this new model. But it was all anecdotes, it wasn’t real data. We needed something more concrete if we wanted to understand what was going on in these new teams and drive the positive changes we wanted to make. At the same time I was having these conversations, the Agile Fluency Project released an agile practices diagnostic for teams, and the proverbial light bulb appeared: We needed to do team health assessments. This is the story of how we developed and implemented our assessments.

30 years later, QBasic is still the best
http://www.nicolasbize.com/blog/30-years-later-qbasic-is-still-the-best/
My quest has led me to endless forums, through which I have tried countless suggestions: SmallBasic, Pico-8, Smalltalk, Scratch, etc. I have even inquired of the Great Oracles of StackOverflow, to no avail. After 5 months, I ended up with a disappointing conclusion: nothing is even close to what I had back in another era. 30 years later, QBasic is still the best when it comes to discovering programming.
另附:少儿编程图鉴,你会让孩子学Coding吗

新鲜货

MINT
https://www.mint-lang.com/
对现有 JavaScript 不满意,于是造了个语言,自带类似 React+Redux 的框架,自己也是基于一个不参加的语言 Crystal 开发的

Jest 23: Blazing Fast Delightful Testing
https://facebook.github.io/jest/blog/2018/05/29/jest-23-blazing-fast-delightful-testing.html
We would also like to welcome both Babel and Webpack to the Jest community! After converting from Mocha to Jest 23 Beta, Webpack saw their total test suite time reduced 6x from over 13 minutes to 2 minutes 20 seconds.

Announcing TypeScript 2.9
https://blogs.msdn.microsoft.com/typescript/2018/05/31/announcing-typescript-2-9/
TS 党可以关注下新特性

Getting Started with Live Coding in Visual Studio Code w/ Live Share
https://scotch.io/tutorials/getting-started-with-live-coding-in-visual-studio-code-with-live-share
Live Share is an extension for VS Code that enables real-time collaboration between developers. As you’ll see in a second, you’ll have the ability to share a “session” with someone else, allowing them to edit code as well as share a sever and debugging session. I’ve seen real-time collaboration in action with Cloud 9 before, but to have this now be a part of my favorite text editor is extremely exciting! So, let’s go ahead and take a look at how it works.

ServiceWorker Cookbook
https://serviceworke.rs/
The Service Worker Cookbook is a collection of working, practical examples of using service workers in modern web sites.

Chromely
https://github.com/mattkol/Chromely
Chromely is a lightweight alternative to Electron.NET, Electron for .NET/.NET Core developers. Chromely is a .NET/.NET Core HTML5 Chromium desktop framework. It is focused on building apps based on Xilium.CefGlue, CefSharp implementations of embedded Chromium (Cef) without WinForms or WPF. Chromely uses Windows and Linux native GUI API as “thin” chromium hosts. It can be extended to use WinForms or WPF.

ProppyJS - Functional props composition for UI components
https://proppyjs.com/
Functional props composition for components

Smooth UI
https://github.com/smooth-code/smooth-ui
Smooth UI is an open source components library built with React and Styled Components.

Kit
https://compositor.io/kit/
Tools for developing, documenting, and testing React component libraries.

React-Move
https://github.com/react-tools/react-move
Beautiful, data-driven animations for React.

slugify
https://github.com/sindresorhus/slugify
Slugify a string. Useful for URLs, filenames, and IDs.

Reach Router
https://github.com/reach/router
Router manages the focus of your app on route transitions. There’s nothing you have to do about it, it just happens.

Visual Studio 完全AI手册
https://www.cnblogs.com/ms-uap/p/9123033.html
开发环境搭建与离线模型训练

CurrencyFormatter.js
https://osrec.github.io/currencyFormatter.js/
A super simple currency formatting library. 155 currencies, 715 locales & less than 7KB gzipped.

Chatkit - Developer-driven chat done simply
https://pusher.com/chatkit
Adding chat to your app has never been so easy. Integrate Chatkit with your app and engage users via realtime messaging. No more infrastructure hell, no hassle, just add it.

Mastodon
https://github.com/tootsuite/mastodon
Mastodon is a free, open-source social network server based on open web protocols like ActivityPub and OStatus. The social focus of the project is a viable decentralized alternative to commercial social media silos that returns the control of the content distribution channels to the people. The technical focus of the project is a good user interface, a clean REST API for 3rd party apps and robust anti-abuse tools.

High school physics course notes, with JavaScript simulations
https://landgreen.github.io/physics/index.html
This page contains notes for introductory high school physics. It was written for my students, but it might be useful for anyone learning physics. All notes, simulations, and examples were written by Ross Landgreen unless otherwise attributed. Most of the work was done between 2017-2018. The simulations were written in JavaScript, outputting to canvas or SVG.

Join the GitHub Learning Lab Explorer Challenge
https://blog.github.com/2018-05-29-join-the-github-learning-lab-explorer-challenge/
From May 23 to June 26, GitHub is hosting a challenge in the Community Forum where you can be recognized for leveling up your knowledge with GitHub Learning Lab. To participate, visit lab.github.com and sign in with your GitHub account. Complete at least three courses, and head to the challenge page on the Community Forum for details on completing your submission.

GitHub Co-Founder Chris Wanstrath Steps Down From CEO Role
https://www.inc.com/business-insider/github-ceo-chris-wanstrath-steps-down-second-time.html
另附:Microsoft has been talking about buying GitHubGNOME, welcome to GitLab!

设计

「得到」的猫头鹰Logo 是怎么诞生的
https://www.uisdc.com/iget-owl-logo-birth
来看主创设计师怎么说!

Small Stars of Big Design: Review of Interactive UI Elements
https://uxplanet.org/small-stars-of-big-design-review-of-interactive-ui-elements-fe856eafe0a2
Powerful and user-friendly product designs are based on elaborately crafted details. Web and mobile user interfaces are all packed with small elements of big impact. Today we offer you to revise some of the UI elements found in the vast majority of layouts, consider their functionality and role and check them in various examples by studio designers. So, let’s get started!

A Reference Guide For Typography In Mobile Web Design
https://www.smashingmagazine.com/2018/06/reference-guide-typography-mobile-web-design/
With mobile taking a front seat in search, it’s important that websites are designed in a way that prioritize the best experience possible for their users. While Google has brought attention to elements like pop-ups that might disrupt the mobile experience, what about something as seemingly simple as choice of typography? The answer to the typography question might seem simple enough: what works on desktop should work on mobile so long as it scales well. Right?

9 inspiring redesign concepts for popular websites
https://www.invisionapp.com/blog/popular-website-redesigns/
What if you had free rein to completely redesign one of your favorite websites? As a creative exercise, the designers below did just that for YouTube, LinkedIn, Trello, and more. Here are our nine favorite website redesigns.

How not to write an error message
https://webflow.com/blog/how-not-to-write-an-error-message
Discover all the ways the internet’s most well-meaning messages can go horribly, horribly wrong.

An intro to Machine Learning for designers
https://uxdesign.cc/an-intro-to-machine-learning-for-designers-5c74ba100257
The basics of machine learning and how to apply it to the products you are building right now.

产品及其它

Security culture, the Dropbox way
https://blogs.dropbox.com/tech/2018/06/security-culture-the-dropbox-way/
The first core company value at Dropbox is “Be Worthy of Trust.” From a security perspective, this means keeping our users’ stuff safe. Our culture of security is built on this foundation of trust and is a fundamental part of our identity. We have a dedicated Security Culture Team whose mission is to cultivate an environment where our employees make consistently secure and informed decisions that protect Dropbox, our users, our employees, and our physical spaces.

Announcing the How to Sell Guide
https://www.entrepidpartners.com/how-to-sell-guide
In our years of coaching dozens of Silicon Valley SaaS startups, we’ve seen a lot of things trip otherwise great teams up. One of the biggest fundamentals? How to sell. With that in mind, we’ve to developed our first-ever guide, How to Sell, designed to give you and your team the tools you need to understand how to build and scale a repeatable sales process.

2018互联网女皇趋势报告
https://36kr.com/p/5136516.html
附:解读互联网女皇报告:腾讯和今日头条必有一战,盒马鲜生们值得看好互联网女皇报告太长,看这10点就好了

教育真的可以改变命运和阶层吗
https://mp.weixin.qq.com/s?__biz=MzA4NzQ5MTA2NA==&mid=2653634061&idx=1&sn=cd7a6e35ab9e3a3d80aafa0189d53f90
一方面我们说教育改变命运,但又发现出现了“教育无用论”。有人说教育一定是出了问题。问题是出在学校社会家长,还是出在学生呢?这些原因可能都有,但更重要的可能是我们需要从另外一个角度和眼光来看待这个问题。

– THE END –

作者:2betop (https://github.com/2betop) - 念我昵称的时候请用英文发音,谢谢!