FEX 技术周刊 - 2017/10/23
qcon 2017 上海
CKEditor 5: A new era for rich text editing
The heart of the new CKEditor Ecosystem is undoubtedly our brand new editor, CKEditor 5. It’s not simply the next major version of one the most popular rich text editors out there. It’s the next chapter on what web text editors are, how they should be used and what possibilities they bring.
DOS security vulnerability, October 2017
The Node.js project will be releasing new versions of 4.x, 6.x, and 8.x the week of the 24th of October to incorporate a security fix. 另附：Node.js Security Overview
API design: Choosing between names and identifiers in URLs
he Apigee team here at Google Cloud has given a lot of thought to API design, working both internally and with customers, and I want to share with you the URL design patterns we’re using in our most recent designs, and why.
How Facebook’s Instagram Acquisition Led To The Open Sourcing of React.js
For the latest episode of Stack Stories, we did something a bit different. We decided to focus on the origin story of the one of the most popular technologies in the software development world: React. We sat down with Pete Hunt, one of the original creators of React, now CEO at Smyte, to get the untold, in-depth story of why React was first created, how it gained adoption within Facebook due to the Instagram acquisition, and it’s eventual release to the public.
Ever since v8-inspector has moved to V8’s repository, we have been working on a number of new features for DevTools, usable for both Chrome and Node.js. The talk will demonstrate code coverage, type profiling, and give a deep dive into how evaluating a code snippet in DevTools console works in V8.
Sleek and Fast: Speeding Up your Fat Web Client
In order to achieve high speeds, we needed to: understand what our goals were and how to measure them; go through a challenging process of becoming sleek and fast; and develop team habits and consistency to continue improving over time.
上期已有-The whole web at maximum FPS: How WebRender gets rid of jank
很详细介绍了新版 Firefox 中的性能优化
关于前端数据层的讨论依然在持续升温。不论数据类型层面的 TypeScript，Flow，PropTypes，应用架构层面的 MVC，MVP，MVVM，还是应用状态层面的 Redux，MobX，RxJS，都各自拥有一群忠实的拥趸，却又谁都无法说服对方认同自己的观点。关于技术选型上的讨论，笔者一直所持的态度都是求同存异。在讨论上述方案差异的文章已汗牛充栋的今天，不如让我们暂且放缓脚步，再回头去看一下这些方案所要解决的共同问题，并试图给出一些最简单的解法。
《用数据讲故事》作者Cole N. Knaflic：消除一切无效的图表
基于 SQLite FTS 的本地搜索
The Story of CSS Grid, from Its Creators
On October 17th, Microsoft’s Edge browser shipped its implementation of CSS Grid. This is a milestone for a number of reasons. First, it means that all major browsers now support this incredible layout tool. Second, it means that all major browsers rolled out their implementations in a single year(!), a terrific example of standards success and cross-browser collaboration. But third, and perhaps most interestingly, it closes the loop on a process that has been more than 20 years in the making. 另附：A Look Back at the History of CSS.
Naming Things In CSS Grid Layout
In this article, I’ll take an in-depth look at the various ways to name lines and areas in CSS Grid Layout, and some of the interesting possibilities this creates.
A Painless Introduction to APIs: Usage, Integration, & Benefits
APIs play a significant role in you not re-inventing the wheel. At Snipcart, we firmly believe that understanding the basics of APIs is a crucial skill for modern web developers. In this post, we’ll help you do just that. We’ll cover: Benefits of using an API; What an API really is; What types of APIs there are; Practical use cases on how to use APIs.
My 20-Year Experience of Software Development Methodologies
Lean, Agile, Waterfall, whatever, the fact is we need some kind of common ideology to co-operate in large numbers. None of them are evil, so it’s not like you’re picking racism over socialism or something. Whichever one you pick is not going to reflect the reality, but if you expect perfection you will be disappointed. And watch yourself for unspoken or unarticulated collective fictions. Your life is full of them. Like that your opinion is important.
Mocking is a Code Smell
One of the biggest complaints I hear about TDD and unit tests is that people struggle with all of the mocking required to isolate units. Some people struggle to understand how their unit tests are even meaningful. In fact, I’ve seen developers get so lost in mocks, fakes, and stubs that they wrote entire files of unit tests where no actual implementation code was exercised at all. Oops.
Building a Python monorepo for fast, reliable development
In this post, we’ll share a few challenges we encountered managing Python code at scale, and how Python commons provides a fast and reliable code development environment.
Why we switched from Python to Go
Switching to a new language is always a big step, especially when only one of your team members has prior experience with that language. Early this year, we switched Stream’s primary programming language from Python to Go. This post will explain some of the reasons why we decided to leave Python behind and make the switch to Go.
Vim After 15 Years
Vim 8 added a lot of much-needed functionality, and new community sites like VimAwesome have made plugin discovery and evaluation easier. I’ve been doing a lot more work with Vim lately and have spent some time configuring my workflow for peak efficiency, so here’s a snapshot of my current state.
Google and the Resurgence of Italian Design
Google’s emerging design language (obviously still a work in progress) is reminiscent of the Italian branch of industrial design, which we haven’t seen much of in the last two or three decades. Instead, it’s been the German branch that has dominated, characterized by clean geometric shapes (cubes, cylinders), white and black glossy colors, and smooth unadorned surfaces.
Ant Design Mobile 2.0
Eight month ago we released Ant Design Mobile 1.0. After 47 times of 1.x version upgrade and one month of 2.0 beta, we are happy to announce that a More Lightweight, Easier-to-use, Better performance Ant Design Mobile 2.0 is officially released !
Mozilla brings Microsoft, Google, the W3C, Samsung together to create cross-browser documentation on MDN
Mozilla is announcing a plan that grows collaboration with Microsoft, Google, and other industry leaders on MDN Web Docs. The goal is to consolidate information about web development for multiple browsers – not just Firefox. To support this collaboration, we’re forming a Product Advisory Board that will formalize existing relationships and guide our progress in the years to come.
GitLab 10.1 Released with Image Discussions and Rejection of Unsigned Commits
Since GitLab’s inception, we envisioned a world where everyone can contribute, and with each release we’re one step closer. With GitLab 10.1, we bring more tools for better collaboration, enhanced security and authentication, as well as improved performance and UX.
Introducing Android Instant Apps SDK 1.1
We’re excited to announce availability of the Android Instant Apps SDK 1.1 with some highly-requested features such as improved NDK support, configuration APKs for binary size reduction, and a new API to maintain user’s context when they transition from an instant app to the installed app.
Fastify is a web framework highly focused on providing the best developer experience with the least overhead and a powerful plugin architecture. It is inspired by Hapi and Express and as far as we know, it is one of the fastest web frameworks in town. 附：新近发布轻量级的 Node.js 服务端框架Fastify怎么样.
A lightweight state container based on Redux with a single store and no reducers, 100% written in TypeScript. Less than 1kb (gzip). Made for (p)react
zendAPI - The C++ wrapper of zend engine
zendAPI 是对 Zend Engine 的 C 接口使用 C++ 的最新标准 C++11 进行而面向对象的封装，从而屏蔽了底层 Zend Engine API 的接口复杂性，加快开发 PHP 扩展的效率。从而让 PHP 的扩展开发成为一种享受，不用在考虑不同 PHP 版本带来的差异性，让开发者专注于自身的业务逻辑。
Home Assistant is an open-source home automation platform running on Python 3. Track and control all devices at home and automate control. Perfect to run on a Raspberry Pi.
TiDB is a Hybrid Transactional/Analytical Processing (HTAP) database. Inspired by the design of Google F1 and Google Spanner, TiDB features infinite horizontal scalability, strong consistency, and high availability. The goal of TiDB is to serve as a one-stop solution for online transactions and analyses.
DevDocs API Documentation
DevDocs combines multiple API documentations in a fast, organized, and searchable interface.
The Python Graph Gallery
This website displays hundreds of charts, always providing the reproducible python code! It aims to showcase the awesome dataviz possibilities of python and to help you benefit it.
Notes on Data Structures and Programming Techniques
This is the course information for CPSC 223: Data Structures and Programming Techniques for the Spring 2015 semester.
A new study shows that students learn way more effectively from print textbooks than screens
As researchers in learning and text comprehension, our recent work has focused on the differences between reading print and digital media. While new forms of classroom technology like digital textbooks are more accessible and portable, it would be wrong to assume that students will automatically be better served by digital reading simply because they prefer it.
How Social Media Endangers Knowledge
WIKIPEDIA, ONE OF the last remaining pillars of the open and decentralized web, is in existential crisis. Now the challenge is to save Wikipedia and its promise of a free and open collection of all human knowledge amid the conquest of new and old television—how to collect and preserve knowledge when nobody cares to know. Television has even infected Wikipedia itself—today many of the most popular entries tend to revolve around television series or their cast.
一旦手机不在身边，就会特别焦虑，生怕错过了重要事情，就算没事随手翻两下也好。现在，这样的场景一直在我们身边上演。不仅作为普通人的我们离不开手机和社交媒体，不少硅谷精英们也难戒网瘾。不过，那些让技术变成“毒品”一样令人上瘾的谷歌、推特和 Facebook 工程师们，正在尝试将自己和互联网隔离开来，开始主动戒网戒手机。
由 MacTalk 君打造的极客时间：2017年7月31日，我们发布了一款给程序员使用的搜索引擎「极客搜索」，深得技术人员的喜爱。两个多月过去了，今天我们团队为技术人发布了一款新产品，产品的名字叫做「极客时间」。附耗子哥在这个应用的一篇文章：程序员是手艺人，如何让自己的技能变现。
– THE END –