深阅读

Yarn: A new package manager for JavaScript
https://code.facebook.com/posts/1840075619545360
We’ve used the npm client successfully at Facebook for years, but as the size of our codebase and the number of engineers grew, we ran into problems with consistency, security, and performance. After trying to solve for each issue as it came up, we set out to build a new solution to help us manage our dependencies more reliably. The product of that work is called Yarn — a fast, reliable, and secure alternative npm client. 译文,相关讨论:

Fall cleaning: Optimizing V8 memory consumption
http://v8project.blogspot.com/2016/10/fall-cleaning-optimizing-v8-memory.html
Memory consumption is an important dimension in the JavaScript virtual machine performance trade-off space. Over the last few months the V8 team analyzed and significantly reduced the memory footprint of several websites that were identified as representative of modern web development patterns. In this blog post we present the workloads and tools we used in our analysis, outline memory optimizations in the garbage collector, and show how we reduced memory consumed by V8’s parser and its compilers.

Taking PHP Seriously
https://slack.engineering/taking-php-seriously-cf7a60065329#.yztg418nn
Slack uses PHP for most of its server-side application logic, which is an unusual choice these days. Why did we choose to build a new project in this language? Should you? PHP-the-language has many flaws, which undoubtedly have slowed these efforts down, but PHP-the-environment has virtues which more than compensate for those flaws. And the options for improving on PHP’s language-level flaws are pretty impressive. On the balance, PHP provides better support for building, changing, and operating a successful project than competing environments. I would start a new project in PHP today, with a reservation or two, but zero apologies.

Stateful and stateless components, the missing manual
https://toddmotto.com/stateful-stateless-components
The goals of this article are to define what stateful and stateless components are, otherwise known as smart and dumb - or container and presentational components. For the purposes of the article, we’ll be using Angular 2 Components to explain the stateful/stateless concepts. Bear in mind these concepts are not at all limited to Angular, and live in other libs/frameworks such as React.

Styling Underlines on the Web
https://css-tricks.com/styling-underlines-web/
Styling the underlines that sit beneath links can be a tricky business, and I constantly forget what’s the best approach depending on the situation. Thankfully however, John Jameson gets us up to speed in this guest post. 看似简单的下划线,但要做到比较完美还是挺不容易的。

豆瓣的混合开发框架 – Rexxar
http://lincode.github.io/Rexxar-OpenSource
混合开发的直白解释是 Native 和 Web 技术都要用。但形式上,应用仍然和浏览器无关,用户还是需要在 App Store 和 Android Market 下载应用。只是在开发时,开发者以 Native 代码为主体,在合适的地方部分使用 Web 技术。比如在 iOS 中的 UIViewController 内放置一个 UIWebview(一个浏览器引擎,只拥有渲染 HTML,CSS 和执行 JavaScript 的核心功能)。这样,部分用户界面就可以在 UIWebView 中使用 Web 技术实现。

SQL style guide
http://www.sqlstyle.guide/
These guidelines are designed to be compatible with Joe Celko’s SQL Programming Style book to make adoption for teams who have already read that book easier. This guide is a little more opinionated in some areas and in others a little more relaxed. It is certainly more succinct where Celko’s book contains anecdotes and reasoning behind each rule as thoughtful prose.

Learn Relay
https://learnrelay.org/
介绍 Relay 和 GraphQL 的电子书

News from the Node.js Ecosystem
https://medium.com/@nodejs/news-from-the-node-js-ecosystem-6141bb3b2f10#.nsloz1gro
Last month members of the Node.js ecosystem came together in Amsterdam for the first European version of Node.js Interactive. Audience at Node.js Interactive Europe, which took place in Amsterdam in September. Node.js Project members gave us a sneak peek at what’s to come with the release lines, and enterprise users and vendors working with Node.js shared best practices around the tools, training and other services being used to optimize the platform. On the final day of Node.js Interactive, two of the biggest projects connected to Node.js — Express and npm — provided attendees with detailed updates.

Your Body Text Is Too Small
https://medium.com/@xtianmiller/your-body-text-is-too-small-5e02d36dc902#.s11rti1s9
The majority of websites are still anywhere in the range of 15–18px. We’re starting to see some sites adopt larger body text at around 20px or even greater on smaller desktop displays, but not enough in my opinion. Now, I’m not saying that small typography is bad. An 18px font is perfectly legible from the right distance. Smaller type is extremely useful in certain situations like on captions, cards and other UI elements, but there’s good reason to increase it a few more notches for body text.

You might not need JavaScript
http://youmightnotneedjs.com/
看看不用 js 仅通过 HTML 和 CSS 可以实现那些常见功能。

H5直播起航
https://aotu.io/notes/2016/10/09/HTML5-SopCast/
前不久抽空对目前比较火的视频直播,做了下研究与探索,了解其整体实现流程,以及探讨移动端HTML5直播可行性方案。发现目前 WEB 上主流的视频直播方案有 HLS 和 RTMP,移动 WEB 端目前以 HLS 为主(HLS存在延迟性问题,也可以借助 video.js 采用RTMP),PC端则以 RTMP 为主实时性较好,接下来将围绕这两种视频流协议来展开H5直播主题分享。

I finally made sense of front end build tools. You can, too.
https://medium.freecodecamp.com/making-sense-of-front-end-build-tools-3a1b3a87043b#.enz5xdnqk
对现有前端编译工具的入门介绍

Introducing NodeJS-Dashboard
https://formidable.com/blog/2016/10/12/introducing-nodejs-dashboard/
Node.js engineers spend significant amounts of time developing from the console. The usual workflow I’ve encountered goes something like: npm run test && node index.js which then dumps pages of text to stdout. Errors can easily go unnoticed when large volumes of output are generated by your app. While this environment can be productive, we miss out on insights into the process itself. Sure you can open top to retrieve process info, or go even further by instrumenting your code when something goes wrong. But why reproduce this in an ad-hoc manner when you can use nodejs-dashboard to send real-time telemetry to the console?

Implementation Notes
https://facebook.github.io/react/contributing/implementation-notes.html
React 实现原理介绍文档的官方文档

Flex布局新旧混合写法详解(兼容微信)
https://segmentfault.com/a/1190000003978624
兼容新旧浏览器的写法

浅谈云巴实时通信的编程模型
http://blog.yunba.io/%08programming_model/
云巴专注于为需要实时数据交换的产品提供完美解决方案。云巴实时通信系统到底提供了一种怎样的服务,与其他提供推送或 IM 服务的厂商有何本质区别。其实,从技术角度分析,云巴与其它同类厂商都是面向开发者的通信服务,宏观的编程模型都是大同小异,真正差异则聚焦于产品定位,业务模式,基础技术水平等诸多细节上。本文暂不讨论具体产品形态上的差异,着重从技术角度浅谈实时通信的编程模型。

从概念到底层技术,一篇文看懂重塑世界的区块链
http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650994345&idx=1&sn=0999eb0d4e2b0819751a6b73334c2b0c
区块链技术就是比特币能够稳定运行8年左右的基石,但一直被比特币的光芒所掩盖。但最近一年以来,各行各业(尤其金融行业)对区块链技术爆发了极大的热情。本文将从区块链定义、区块链技术三要素、区块链应用四展望、开源项目及国内现状5个方面为大家讲解区块链。

支付系统的对账处理
http://blog.lixf.cn/essay/2016/10/10/account-2-reconciliation/
可以说,对账是支付系统最头疼的事情。每一笔交易,都要做到各参与者的记录能够吻合,没有偏差。对账系统的工作,是发现有差异的记录,即轧帐;然后通过人工或者自动的方式,解决这些差异,即平帐。

网易云信 IM 推送保障及网络优化实践
http://geek.csdn.net/news/detail/106242
很多不错的经验分享

移动化浪潮下,谈谈多端优化以及延缓架构腐化
http://www.infoq.com/cn/news/2016/10/Multiterminal-optimization-delay
早期原生开发者对于现在客户端开发的见解

新鲜货

Angular 2.1.0 Now Available
http://angularjs.blogspot.com/2016/10/angular-210-now-available.html
The Router now supports preloading of lazy loaded modules, which gives users the best of both worlds; applications bootstrap quickly, and users don’t need to wait for a round trip to the server to access lazy loaded content. Watch Victor Savkin present these capabilities at Angular Connect. Animation in Angular has been enhanced by adding :enter and :leave aliases for the common void => * and * => void state changes. The transition API documentation has been updated with these aliases.

Semantic-UI-React (Stardust)
https://github.com/Semantic-Org/Semantic-UI-React
The official Semantic UI + React integration.

uWebSockets-Highly scalable WebSocket server & client library
https://github.com/uWebSockets/uWebSockets
µWS is one of the most lightweight, efficient & scalable WebSocket server implementations available. It features an easy-to-use, fully async object-oriented interface and scales to millions of connections using only a fraction of memory compared to the competition.

grasp
http://www.graspjs.com/
Search, replace, and refactor your JavaScript code based on its structure rather than its text. 可以根据 JavaScript 语法结构来查找,适用于代码重构。

Tesseract.js
http://tesseract.projectnaptha.com/
Tesseract.js is a pure Javascript port of the popular Tesseract OCR engine. This library supports over 60 languages, automatic text orientation and script detection, a simple interface for reading paragraph, word, and character bounding boxes. Tesseract.js can run either in a browser and on a server with NodeJS.

Hyperform
https://hyperform.js.org/
Hyperform is a complete implementation of the HTML 5 form validation API in Javascript. It replaces or polyfills the browser’s native methods and eases your validation task with custom events and hooks.

Git-repo – Manage Gitlab, GitHub and Bitbucket from the command line
http://i.got.nothing.to/code/on/git-repo:_the_utility_for_services/
The git utility has a rather well designed interface to make it easy to remember, extend, and/or customize. So, out of frustration of having to swing between my code and a web-page to issue some actions on a repository. I figured I could write a tool to exploit those services APIs and make their features available where they belong, in your shell!

KDE Project releases KDE 1 !
http://www.heliocastro.info/?p=291
The KDE project is proud to announce his first public release, after 20 years of hard development from a team of multi cultural developers around the world. Was an amazing effort of the original dinosaurs to make this beautiful piece of software be available on the hands of our beloved supporters.

node-heapdump
https://github.com/bnoordhuis/node-heapdump
Make a dump of the V8 heap for later inspection.

betwixt
https://github.com/kdzwinel/betwixt
Web Debugging Proxy based on Chrome DevTools Network panel. Betwixt will help you analyze web traffic outside the browser using familiar Chrome DevTools interface.

Nightwatch
https://github.com/nightwatchjs/nightwatch
UI automated testing framework powered by Node.js. It uses the Selenium WebDriver API.

Ajv: Another JSON Schema Validator
https://github.com/epoberezkin/ajv
The fastest JSON Schema validator for node.js and browser. Supports v5 proposals.

AliSQL
https://github.com/alibaba/AliSQL
阿里 SQL 正式开源。

The Open Guide to Amazon Web Services
https://github.com/open-guides/og-aws
This guide is by and for engineers who use AWS. It aims to be a useful, living reference that consolidates links, tips, gotchas, and best practices. It arose from discussion and editing over beers by several engineers who have used AWS extensively.

Awesome Go
https://github.com/avelino/awesome-go/blob/master/README.md
A curated list of awesome Go frameworks, libraries and software.

All CppCon 2016 Videos Are Up!
http://cppcon.org/all-cppcon-2016-videos-are-up/
最近的 cppconf 大会的资料,感兴趣的同学可以关注。

What we have in China about React.js
https://medium.com/@jiyinyiyong/what-we-have-in-china-about-react-js-9af983fcb984#.8chnyrc84
围观下国内社区向国外社区介绍 React 在中国的状况。

Is jQuery Still Relevant?
http://developer.telerik.com/featured/is-jquery-still-relevant/
看看社区对 jQuery 的讨论。

VS Code 1.6
https://code.visualstudio.com/updates/v1_6
这更新速度

产品及其它

马云:“电商”一词将被淘汰
https://baijiahao.baidu.com/s?id=1548266114280720
新零售,新制造,新金融,新技术,新能源。这五个新将会方方面面的对各行各业发动巨大的冲击和影响,把握者胜,逆流着将会亡。

工作1-3年工程师如何突破瓶颈期
http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=2653547791&idx=1&sn=8a14104ba13cd1ef634c8991f6700566
总结得蛮实在的一篇文章,从新人期、成熟期、发展期、事业期四个阶段分别给出了如何做的建议,很实用。

吴军-不做伪工作者
https://news.cnblogs.com/n/554963/
很多我们看上去非做不可的事情,其实并没有那么重要。有些时候需要换一个角度来审视我们所做的事情,就会发现,舍弃一些事情也未尝不可。所以,每当你因总也干不完的工作而焦虑时,不妨试试先停下来,重新梳理一遍手边的工作:主动地站在对公司业务帮助最大的角度,站在提升自己能力的角度,当处于工作永远做不完的处境时,把那些最重要的完成了。试试看,这样你的工作状态会不会发生改变?

当你梦想去改变一个行业之前,建议你看看这篇文章
https://www.huxiu.com/article/166715/1.html
在你满怀梦想,召集团队,利用先进的技术、管理等经验,想要去改造一个行业或市场之前,我建议你看看这篇文章。它如此之简单,以至于只有一个概念;又如此之困难,以至于大部分人甚至包括我,这篇文章的作者自己,都一次又一次在这个概念上犯错。另附:美国小伙实力吐槽创业:去他的创业,吐槽了很多形式主义。

微软工程师辞职去收破烂,成了最让女儿自豪的爸爸
http://mp.weixin.qq.com/s?__biz=MjM5ODAwNDIwMA==&mid=2650522355&idx=1&sn=66e16af0905af40324740f1763f22320
成都“绿色地球”创始人做垃圾分类回收事业的故事,这是他在一席的演讲:我们每天制造这么多垃圾,到底拿它怎么办,挺值得看看的。

- 百度数据可视化
- 百度智能建站