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

业界会议

第五届HTML5峰会暨iWeb峰会-上海站
http://2016.html5dw.com/shanghai
这里有一篇风格和其它技术会议完全不同的介绍文章:唯“5”独尊 | 一场关于HTML5的缤纷盛宴,前端果然很文艺。

深阅读

What is difference between props and state in React?
http://appendto.com/2016/05/what-is-difference-between-props-and-state/
很多刚接触react的人都会对 props 和 state 只有概念上的区分,在什么场景下用哪一种把握的不是很好,可以通过本文来对其有一个更深的认识

Should I use shouldComponentUpdate?
http://jamesknelson.com/should-i-use-shouldcomponentupdate/
文章讲述了在react里我们是否应该使用shouldComponentUpdate以及在什么情况下应该使用shouldComponentUpdate,例如在有些时候,If the value returned by render is tiny but props is heavy, shouldComponentUpdate will likely do more harm than good.或者在其他时候,哪怕带来10倍的速度提升,A 10x speedup of less than 1 millisecond is still less than 1 millisecond.

聊一聊淘宝首页和它背后的一套
http://www.barretlee.com/blog/2016/06/02/thing-about-taobao-homepage/
介绍了淘宝首页的架构升级、性能以后、稳定性包装等工作。另附:淘宝和天猫首页都用到了哪些技巧或者技术

A Facebook Sixth Sense
http://kirszenberg.com/facebook-sixth-sense
I use Facebook every day — probably too much for my own good — and I’ve always been tempted to dive into their internals. That is, the Javascript code that produces much of the user interface and interactions.

Design and Build Your Own JavaScript Library: Tips & Tricks
https://www.sitepoint.com/design-and-build-your-own-javascript-library/
I will explain how libraries are built. Although most of the topics covered will apply to other languages, this article is mainly focused on building a JavaScript library.

Introducing hooks: get notifications of npm registry and package changes as they happen
http://blog.npmjs.org/post/145260155635/introducing-hooks-get-notifications-of-npm
Hooks are notifications of npm registry events that you’ve subscribed to. Using hooks, you can build integrations that do something useful (or silly) in response to package changes on the registry. Each time a package is changed, we’ll send an HTTP POST payload to the URI you’ve configured for your hook. You can add hooks to follow specific packages, to follow all the activity of given npm users, or to follow all the packages in an organization or user scope.

V8, Modern JavaScript, and Beyond
https://www.youtube.com/watch?v=N1swY14jiKc#t=22m27s
A look at advances in V8, ES6, and WebAssembly. Of note, at 22m27s, is a tour of debugging Node using Chrome’s DevTools.

Stop Bringing Strong Typing To JavaScript
https://medium.com/@jamesseanwright/stop-bringing-strong-typing-to-javascript-4da0666cba6e#.g4tm354wy
So why am I against strong typing in JavaScript?
Predominantly, what makes JavaScript such a powerful language is its weakly-typed nature; it’s trivial to implement branches of logic via type coercion, and it’s so easy to create object instances of an arbitrary type.

How to Get Node.js Logging Right
https://blog.risingstack.com/node-js-logging-tutorial/
The aim of this article is to provide help with logging in Node.js modules, applications and distributed systems (or microservice architectures). To do so, I’ve compiled the tools, methods, rules and best practices we use at RisingStack for developing enterprise Node projects.

Promises, Async and Await
https://zeit.co/blog/async-and-await
这个话题应该快要到终结的时候了吧。

How Not to Choose a Framework
http://blog.dmbcllc.com/how-not-to-choose-a-framework/
对选择框架的思考。

前端如何给Js加密,保护自己的知识产权
http://www.zhihu.com/question/47047191
这的确是个好问题,不过似乎暂无解。或许 WebAssembly 是一种思路。

QQ - 日请求过亿的Web系统PHP7升级实践
http://geek.csdn.net/news/detail/77849#0-tsina-1-21707-397232819ff9a47a7b7e80a40613cfe1
其实我想说的是,有时候 Runtime 的优化带来的收益还是相当大的。在你的团队有足够的技术沉淀,对 runtime 足够了解时,是可以实践 Runtime 优化的。

和技术大咖一起看日本
http://www.infoq.com/cn/minibooks/chinatechday-jp
了解日本 IT 业的情况

Use the Angular CLI For Faster Angular 2 Projects
https://scotch.io/tutorials/use-the-angular-cli-for-faster-angular-2-projects
利用 Angular CLI,快速搭建 Angular2应用

React Tutorial: Cloning Yelp
https://www.fullstackreact.com/articles/react-tutorial-cloning-yelp/
一个很不错的用react做一个复杂应用的demo加tutorial, 想入手react的同学可以尝试

重拾 CSS 的乐趣
http://www.imooc.com/learn/588
回顾一下这项总被人误以为简单的技术,其实 CSS 是相当有趣的,要做到精通还是挺有挑战的。

重构过程中的过度设计
http://mp.weixin.qq.com/s?__biz=MjM5ODczNTkwMA==&mid=2650107080&idx=1&sn=527e1f3f9b048127d1114f9272ddd927
过度设计是要时刻警惕的东西,一不小心就会陷进去。这个文章通过一个典型例子来详细说说重构中的过度设计吧,可以想想要是遇到这样的系统,你是架构师,你怎么做?

类的装饰器:ES6 中优雅的 mixin 式继承
https://www.h5jun.com/post/mixin-in-es6.html
科普 mixin 模式及在继承中的应用。

移动平台千王之王大揭秘
http://drops.wooyun.org/news/16486
开开眼界,看看网络赌博的黑客是如何运作的

Parse Server – 100 days later
https://swifting.io/blog/2016/05/30/16-parse-server-100-days-later/
Parse 开源后发展不错

蘑菇街App Chromium网络栈实践
http://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=2651112324&idx=1&sn=34b15399d6519340f66410445f033e85#rd
思路不错,通过基于 Chromium 开发的网络栈解决了很多实际问题

Feature Toggles Revisited
https://www.infoq.com/news/2016/02/featuretoggles
开关系统对于大型应用来说是非常重要的,Facebook 就非常依赖它

Infinite collections with ES6 generators
https://advancedweb.hu/2016/05/31/infinite-collections-with-es6-generators/
如题

Open Source javascript offerings from PayPal Checkout!
https://medium.com/@bluepnume/open-source-from-paypal-checkout-krakenjs-385c80926581
PayPal 开源的 JS 库列表

Javascript Engine & Performance Comparison (V8, Chakra, Chakra Core)
http://developers.redhat.com/blog/2016/05/31/javascript-engine-performance-comparison-v8-charkra-chakra-core/
对对这两个 JS 引擎的性能比较

漫谈前端及其自学路径
http://www.loyalsoldier.me/talking-about-front-end-and-its-learning-path/
小朋友的总结值得鼓励

英语流利说 Android 架构演进
http://mp.weixin.qq.com/s?__biz=MzI0NjIzNDkwOA==&mid=2247483673&idx=1&sn=ba9cf498ab78646f1a9c9e711f65c360&scene=2&srcid=0527JyTxU6ucKtlLVyl7REaB&from=timeline&isappinstalled=0#wechat_redirect
主要参考微信的架构

building 3D games on the Web
https://developer.mozilla.org/en-US/docs/Games
大量的 web 3D 游戏开发的教程和技术文档,VR技术库也在开发中。

Building React Applications with Idiomatic Redux
https://egghead.io/courses/building-react-applications-with-idiomatic-redux
一整套redux的视频教程

JavaScript – Loops
http://fedojo.com/javascript-loops/
一条评论引起的 for in、map、for、foreach的性能对比

新鲜货

Introducing HyperDev
http://www.joelonsoftware.com/items/2016/05/30.html
Fog Creek 公司推出的新型 PAAS 平台,和其它不一样的地方是它追求最快上手,打开页面就能使用了,甚至不需要帐号登录就能直接在线编辑

Android开发书籍推荐 & 学习路线图
http://diycode.cc/wiki/androidbook
http://diycode.cc/topics/117
很多时候我们都会不断收到新手的提问“Android开发的经典入门教材和学习路线?”、“Android 开发入门教程有哪些推荐?”等类似的问题,我们不断重复回答这些问题,这让我们萌生了做《 Android开发书籍推荐:从入门到精通系列学习路线书籍介绍》的想法,整理收集开发大牛的学习经验,以便让我们少走弯路,更快速成长。希望这个系列可以成为大家手头应对新手的好答案。

全民K歌后台编译优化:从40分钟到30秒
https://mp.weixin.qq.com/s?__biz=MTEwNTM0ODI0MQ==&mid=2653433185&idx=1&sn=7354e141a49b480a786ea7c5847cab2f
其实我想说的是:什么时候前端代码也可以达成这么让人期待的编译速度。编译优化是一项很容易被忽略,但却非常重要而且有技术含量的事情。

Intense Images
https://github.com/tholman/intense-images
Intense images is a stand alone library (no jquery, or the likes) so usage is pretty straight forward. All styling of image elements is up to the user, Intense.js only handles the creation, styling and management of the image viewer and captions.

c3.js
https://github.com/c3js/c3
用习惯了d3.js,突然发现有基于d3封装的一个js库c3

Ignite
https://github.com/infinitered/ignite
The ideal starting app for React Native

Loud-links
http://loudlinks.rocks/
A simple tiny Javascript library to add interaction sounds to your website.

Push.js
https://github.com/Nickersoft/push.js
一款用于浏览器向卓面推送通知的js库。

JavaScript Puzzlers!
http://javascript-puzzlers.herokuapp.com/
JS 大牛们,来看看你们能做对几道题

WebGazer.js
http://webgazer.cs.brown.edu/
如果说有一个纯js写的通过摄像头捕捉人眼睛的特征以及人在web页面上的操作从而得到你在屏幕上的聚焦点,你会点开它看看吗?反正我不会告诉你链接就在上面。

Krita 3.0 Released
https://krita.org/item/krita-3-0-released/
the Krita team releases Krita 3.0, the Animation Release. Wrapping up a year of work, this is a really big release: animation support integrated into Krita’s core, Instant Preview for better performance painting and drawing with big brushes on big canvases, ported to the latest version of the Qt platform and too many bigger and smaller new features and improvements to mention!

A-Frame
https://aframe.io/
方便开发 VVR 的库

microlight.js
https://asvd.github.io/microlight/
microlight.js is a tiny openSource library which improves readability of code snippets by highlighting, for any programming language, without attaching additional languagePackages or styles. Unlike other code-highlighting solutions, microlight.js does not keep a set of rules for many languages. Instead it uses a general highlighting strategy providing a reasonable highlight for most of them.

bideo.js
https://github.com/rishabhp/bideo.js
一个用video做容器的background的JS库,从而改变传统的呆板background

Nylas N1
https://www.sdk.cn/datas/3523
基于Electron, React和Flux打造的可扩展性邮件客户端 ,github一万八千星作品。

ElectroCRUD
http://garrylachman.github.io/ElectroCRUD/
No coding is required; Create basic CRUD (Create, Read, Update, Delete) for your MySQL Database in minutes. Automatically analyze your database tables.

React D3 Library
http://react-d3-library.github.io/
A JavaScript library that allows developers the ability to use D3 in React.

frontend-hyperpolyglot
http://jeffcarp.github.io/frontend-hyperpolyglot/
A comparison of similar features in popular JavaScript frameworks. 作者借鉴的这个东东挺有意思的: http://hyperpolyglot.org/

5 More Awesome New Mozilla Technologies You’ve Never Heard Of
https://davidwalsh.name/mozilla-projects
来自 mozilla 的黑科技。

The Vanilla Javascript Repository
http://www.vanillalist.com/
体验 VanillaJS 的魅力

产品及其它

从价值1300亿美元到40亿都没人要,这桩互联网惊天惨案是怎么诞生的
http://mp.weixin.qq.com/s?__biz=MjM5NDA0NDkzOQ==&mid=2650449444&idx=1&sn=a0ab1c3656adb80ac7c67e5411f9d5fb 雅虎的历程挺值得深思的,或许还有重新崛起的那一天。这两个总结挺不错的:今天让你成功的东西可能真的就是明天让你失败的原因;就互联网而言,研究未来的方式是比研究趋势更重要的事,对其他行业和产业而言,也同样如此。雅虎只是是盛极而衰的公司中的一员,管理成功是何其重要。另附:技术文化和惨淡命运 —— 怀念中国雅虎

2016互联网女皇报告
http://tech.qq.com/a/20160602/001559.htm
http://www.kpcb.com/file/2016-internet-trends-report
语音正成为计算接口,也是计算机输入最有效率的一种形式;2016年,有31%的微信用户通过微信购物,而2015年这一数字为15%;印度互联网用户数达到2.77亿,比上年增长40%,超过美国成为全球第二大互联网市场,仅次于中国;

互联网上半场已结束,下半场还剩20年
https://mp.weixin.qq.com/s?__biz=MzIwNjQwMzc5NQ==&mid=100000008&idx=1&sn=d101a96496310bdd2ef1fc23037ba282
在这份长达2万字的报告中,程维第一次从打车软件技术、交通大数据应用、人才计划、战略部署等多个角度对滴滴迅速崛起的关键、滴滴未来发展的核心战略和方向以及全球互联网发展态势做了详尽的阐述。

如何激发团队中的每一个人
https://mp.weixin.qq.com/s?__biz=MzA4NTU2MTg3MQ==&mid=2655157645&idx=1&sn=53796a0eaa0670fd61b1ded8ef6cda06
文中这个神人的观点挺不错的:确保每个人都能获得相同的信息,理解公司的目标和定位,在面对问题时采取同样的解决办法;管理归根究底就是两件事:信任和明确;你做的所有工作和你采取的系统都应该非常简明易懂,必须得让新成员很快能够加入讨论;一个团队的数据必须放在一找就能找到的地方,方便他人取用;

什么驱动开发
http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650992735&idx=1&sn=2edffb619ed506d54b2bd7b514097316
不求甚解亦或是固步自封,都是从事IT行业所不可取的。如果只会写一手好代码,却不会思考,那只能称作码农,而不是Coder。

前豆瓣首席架构师:如何保持团队的技术氛围?
https://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650992437&idx=1&sn=b978f0e5d6bba2ed420ed3085ad74d1b
在技术团队建立起技术导向的价值观、良好的工程师文化,才能保持一个技术团队的创新与活力。

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

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