WWDC 2017
亮点并不多,附:开发者所需要知道的 iOS 11 SDK 新特性一张图带你全程回顾苹果 WWDC 2017大会

CES Asia 2017


V8 Release 6.0
V8 version 6.0, which will be in beta until it is released in coordination with Chrome 60 Stable in several weeks. V8 6.0 is filled will all sorts of developer-facing goodies. We’d like to give you a preview of some of the highlights in anticipation of the release.

JSC loves ES6
WebKit’s JavaScript implementation, called JSC (JavaScriptCore), implements all of ES6. ES6 features were implemented to be fast from the start, though we only had microbenchmarks to measure the performance of those features at the time. This post describes the development of our first ES6 benchmark, which we call ARES-6. We used ARES–6 to drive significant optimization efforts in JSC, and this post describes three of them: high throughput generators, a new Map/Set implementation, and phantom spread. The post concludes with an analysis of performance data to show how JSC’s performance compares to other ES6 implementations. 另附 Webkit 的其它更新:WebKit has a full WebAssembly implementation, Announcing WebRTC and Media CaptureIntelligent Tracking Prevention,这些特性将随 Safari 11 发布.

Node.js + MySQL Example: Handling 100’s of GigaBytes of Data
Through this Node.js & MySQL example project, we will take a look at how you can efficiently handle billions of rows that take up hundreds of gigabytes of storage space. My secondary goal with this article is to help you decide if Node.js + MySQL is a good fit for your needs, and to provide help with implementing such a solution.

A Guide to Proper Error Handling in JavaScript
Ah, the perils of error handling in JavaScript. If you believe Murphy’s law, anything that can go wrong, will go wrong. In this article, I would like to explore error handling in JavaScript. I will cover pitfalls, good practices, and finish with asynchronous code and Ajax.

Upgrading from Node 6 to Node 8: a real-world performance comparison
These performance comparisons are for a medium-to-large React site with a single page. On the server, it takes a JSON object with a few thousand properties and returns HTML with 2113 DOM nodes.

Cloud Browser Architecture
The Web and TV Interest Group has published a Group Note of Cloud Browser Architecture. A Cloud Browser is a browser running and executing on a server. This document describes the concepts and architecture for the Cloud Browser. The main purpose of this document is to provide the building blocks for a Cloud Browser solution.

The Evolution of Code Deploys at Reddit
We’re constantly deploying code at Reddit. Every engineer writes code, gets it reviewed, checks it in, and rolls it out to production regularly. This happens as often as 200 times each week and a deploy usually takes fewer than 10 minutes end-to-end. The system that powers all of this has evolved over the years. Let’s take a look at how it’s changed (and how it hasn’t) over all that time.

Google - Spinnaker 1.0: a continuous delivery platform for cloud
We’re happy to announce the release of Spinnaker 1.0, an open-source multi-cloud continuous delivery platform used in production at companies like Netflix, Waze, Target, and Cloudera, plus a new open-source command line interface (CLI) tool called halyard that makes it easy to deploy Spinnaker itself.

[译]ES6 modules 即将到来,现在该考虑新的打包方案了嘛
ES6 modules(以下称ESM)已经定义到了ECMAScript规范里面有段时间了。社区的人们也写了很多文章布道怎么配合Babel来使用以及说明了import和node里的require的区别。但是在浏览器端完整的实现还需要一点时间。 很欣喜的看到Safari第一个在其工程预览版搭载ESM),现在Edge 和 Firefox Nightly也搭载了这个功能。在经历过使用像RequireJs Browserify(还记得AMD和common js之争吗)似乎modules终将到达浏览器领地,那么就让我们来看看未来将会带给我们什么吧。

比微服务更进一步,UI 也独立,很多年前的 bigpipe 就是能做到类似的效果了


XSS 科普


Reducing our Redux code with React Apollo

Learn more about npm’s lockfiles
npm5 introduces a lockfile, package-lock.json that keeps a record of every dependency your project uses and what version you have currently installed. Before npm5, this was behavior you could only get from npm shrinkwrap.

Classes, Complexity, and Functional Programming
When it comes to applications intended to last, I think we all want to have simple code that’s easier to maintain. Where we often really disagree is how to accomplish that. In this blog post I’m going to talk about how I see functions, objects, and classes fitting into that discussion.

A Brief History of the UUID
Today we’re releasing ksuid, a Golang library for unique ID generation. It borrows core ideas from the ubiquitous UUID standard, adding time-based ordering and more friendly representation formats. In doing the research that went into this library, we uncovered a compelling story that we wanted to share with a larger audience. 另附:Be Careful with UUID or GUID as Primary Keys.

The State Of Advanced Website Builders
Advanced website builders — the tools provided by Squarespace, Wix, Weebly, The Grid and more — produce websites that look and feel like they were designed and coded by humans. They’re also software as a service, which is a different business model than traditional, custom-developed websites. So, should companies use them? At some point, will they replace custom development?

How to do it like Google with this powerful checklist
These are my notes from a Google I/O 2017 talk by three UX Writers. It’s a great resource to start creating a UX Writing process within your organisation. Useful for anyone involved in putting words on interfaces.

Color Accessibility Workflows
The Web Content Accessibility Guidelines (WCAG) 2.0 contain recommendations from the World Wide Web Consortium (W3C) for making the web more accessible to users with disabilities, including color blindness and other vision deficiencies.

Creating Yin and Yang Loaders On the Web
I came across a couple such animations a while ago and this gave me the idea of creating my own versions with as little code as possible, no external libraries, using various methods, some of which take advantage of more recent features we can use these days, such as CSS variables. This article is going to guide you through the process of building these demos.

digital video introduction
A hands-on introduction to video technology: image, video, codec (av1, h264, h265) and more (ffmpeg encoding).


微信基于 SQLCipher 封装的移动端数据库,带 ORM 等功能。附介绍:微信跨平台移动数据库框架WCDB开源

Lullaby is a collection of C++ libraries designed to help teams develop virtual and augmented reality experiences.

Introducing Graywater for Android
Graywater, Tumblr’s framework for decomposing complex items in a RecyclerView list in order to improve scroll performance, reduce memory usage, and lay a foundation for a more composition-oriented approach to building lists. With Graywater, the app now scrolls faster and crashes less often, and it also gives us a solid foundation for building new features faster and better than before.

Node v8.1.0

Miscrosoft - Fluent Design System
Now’s the time for bold, scalable, universal design. This is a transformation. A step into the future of sensory experiences. The world is at our fingertips – join Microsoft in building a design evolution. Design and develop apps using Fluent Design. 将在最新的 Windows 10 中正式亮相

The Future of MDN: A Focus on Web Docs
MDN - Mozilla Developer Network’s mission today is to provide developers with the information they need to build things on the open Web. MDN is clearly a web documentation reference, and in no way is it a developer network. We want the name to clearly reflect the purpose and mission of MDN, and so we’re going to be updating it to: MDN Web Docs.

JavaScript’s new #private class fields
Private class fields are now at Stage 2 in the JavaScript standard process. It’s not finalized yet, but the JavaScript standards committee expects the feature to be developed and eventually included in the standard (although it may still change).

React Log: React for the Console
A component that’s not rendered into the DOM but instead to the console.

billboard.js is a re-usable easy interface JavaScript chart library, based on D3 v4+. 可视化领域还是 EchartsG2 更值得信赖.

Mega Project List
A list of practical projects that anyone can solve in any programming language.

Google’s Environmental Report
At Google, our values reflect the fundamental importance of inclusion, openness, science, and commitment to the environment. Operating our business in an environmentally sustainable way has been a core value from the beginning.


不了解 node 也能做工程化

High Efficiency Image File Format (HEIF)
诺基亚提出的图片格式,比 jpeg 体积小且效果好,但不清楚和 webp 对比如何

Clone in Xcode
It’s easy to explore code in your browser when you visit a GitHub repository, but you often want to pull that code directly into the appropriate editor and try it out. For example, if the repository contains an .xcodeproj or .xcworkspace file, you might want to open that code in Xcode.

ChaosBot is a social coding experiment to see what happens when the absolute direction of a software project is turned over to the open source community.

barba.js is a small (4kb minified and gzipped), flexible and dependency free library that helps you creating fluid and smooth transitions between your website’s pages. It helps reducing the delay between your pages, minimizing browser HTTP requests and enhancing your user’s web experience.


饿了么 Sofish:前端、移动程序员,如何在大前端浪潮下成长


产品经理所需的三大特质:第一,感性与理性;第二,产品哲学;第三,0到1的经历。产品角度的四条线:1、自己的亮点是什么?2、自己的死点是什么? 3、对手的亮点是什么? 4、对手的死点是什么。互联网组织形态下:无形和无价的产品。在决策机制上避免两种倾向:一言堂、讲民主。另附:产品经理核心竞争力——在于“面向用户建构商业模式”

无我编程的十条戒律,最早出现在 Gerald Weinberg 于 1971 年出版的经典著作《程序开发心理学》里。Stack Overflow 网站的联合创始人 Jeff Atwood 在博客上再次列出了这十条戒律。要知道,在这本著作出版的时候,Jeff 才一岁。虽然已经过去了几十年,但这些原则并没有被时间侵蚀,仍然值得每一位程序员拜读。另附:成为专家级程序员的修炼之道

作者:zhangbobell (http://zhangbobell.cn) - 恰同学少年,风华正茂