FEX 技术周刊 – 2016/02/01
最后更新于:2022-04-01 00:04:29
## 深阅读
**What can we learn from how jQuery symbiotically pushed the Web Platform forward?**
https://medium.com/ben-and-dion/what-can-we-learn-from-how-jquery-symbiotically-pushed-the-web-platform-forward-ce6b20cd4e98
One of the great things about jQuery was that it had a simple, powerful idea. It’s entire mindset was “find these items in the DOM, and attach these events to them”. The fluent style of API probably opened peoples minds up in a way that only helped us with promises and rethinking APIs such as XHR vs. fetch. All in all jQuery has evolved along with the Web platform, helping improve things beyond itself.
**每个架构师都应该研究下康威定律**
http://36kr.com/p/5042735.html
Conway’ s law: Organizations which design systems […] are constrained to produce designs which are copies of the communication structures of these organizations. 组织和系统架构之间有一个映射关系(1 ~ 1 mapping),两者不对齐就会出各种各样的问题。作为系统架构师,一定要深入领会康威定律,设计系统架构之前,先看清组织结构,也要看组织文化(民主合作式,集权式,丛林法则式,人才密度),再根据情况调整系统架构或者组织架构。系统架构的目标是解决利益相关者的关注点,架构师要充分和利益相关者沟通,深入理解他们的关注点和痛点,并出架构解决这些关注点。架构,平台不是买来的,也不是用一个开源就能获得的,也不是设计出来,而是长期演化才能落地生根的。
**聊聊“新技术”**
http://www.jianshu.com/p/e1425f186e3d
上周前端大战之续。赞:以实践检验为荣,以道听途说为耻;如果你连学一门新语言都没兴趣,你怎么就敢贸然进入一个全新的领域;准确判断一个新技术的价值,是一项重要的能力。技术学习和实践中:本质、技术地图、技巧这三个很重要。
**JavaScript At Scale — Achieving High Velocity**
https://labs.mlssoccer.com/javascript-at-scale-achieving-high-velocity-160c7d78af03
Many companies choose JavaScript because it is touted as flexible and fast. While this may be true, that same flexibility and speed can get you in a few traps if you are not thoughtful in how you build your JavaScript ecosystem.
**9 things every React.js beginner should know**
https://camjackson.net/post/9-things-every-reactjs-beginner-should-know
I’ve been using React.js for about 6 months now. In the grand scheme of things that’s not very long at all, but in the ever-churning world of JavaScript frameworks, that just about qualifies you as a bearded elder! I’ve helped out a few people lately with React starter tips, so I thought it would be a good idea to write some of them up here to share more broadly. These are all either things that I wish I’d known when I started out, or things that really helped me ‘get’ React.
**Front-end Application Libraries and Component Architectures**
http://developer.telerik.com/featured/front-end-application-frameworks-component-architectures/
Component architectures are an important part of ever modern front-end framework. In this article, I’m going to dissect Polymer, React, Rio.js, Vue.js, Aurelia and Angular 2 components. The goal is to make the commonalities between each solution obvious. Hopefully, this will convince you that learning one or the other isn’t all that complex, given that everyone has somewhat settled on a component architecture.
**React and the economics of dynamic web interfaces**
https://www.nczonline.net/blog/2016/01/react-and-the-economics-of-dynamic-web-interfaces/
Nicholas 对 React 的看法,居然才刚开始学
**Ship highly-scalable products faster by implementing Node.js on an enterprise level**
https://risingstack.com/nodejs-is-enterprise-ready
Find out how Node.js can solve common challenges in engineering teams and how to enable Node.js on an enterprise environment to ship better products faster.
**Node server with Rx and Cycle.js**
https://glebbahmutov.com/blog/node-server-with-rx-and-cycle/
This is an explanation how one can apply (and why this is beneficial to do so) reactive programming to a simple NodeJS server, that is responding to requests. Then I will show how to take the main idea behind Cycle.js and apply it to the server code.
**margin为负值产生的影响和常见布局应用**
http://www.jianshu.com/p/549aaa5fabaa
CSS 中负值的灵活应用,有时能解决不少问题。这个文章介绍了负 margin 的原理。
**通通连起来——无处不在的流**
http://taobaofed.org/blog/2016/01/28/nodejs-stream/
关于「流」,到底知道它是个什么概念吗?文章为我们讲解 node.js 里面的「流」以及一些应用。
**基于原生HTML的UI组件开发**
http://www.zhangxinxu.com/wordpress/2016/01/development-of-ui-components-based-on-native-html/
web components 已经兴起了很久了,但是作者在这里提到了基于原生的 HTML 进行 UI 组件开发,也印证了「顺势而为」的思路,文章也列举了一些基于原生 HMTL 开发 UI 组件优点,这个思路感觉很不错。
**CSS代码重构与优化之路**
http://luopq.com/2016/01/05/css-optimize/
随着项目规模的增加,项目中的CSS代码也会越来越多,如果没有及时对CSS代码进行维护,CSS代码不断会越来越多。CSS代码交错复杂,像一张庞大的蜘蛛网分布在网站的各个位置,你不知道修改这行代码会有什么影响,所以如果有修改或增加新功能时,开发人员往往不敢去删除旧的冗余的代码,而保险地增加新代码,最终的坏处就是项目中的CSS会越来越多,最终陷入无底洞。这也就引出了CSS代码重构这个话题。
**2015 年在微信热传的 100+ 经典技术文章**
https://github.com/jobbole/awesome-wechat-dev-posts-2015
**真的缺前端工程师吗**
http://mp.weixin.qq.com/s?__biz=MjM5MTA1MjAxMQ==&mid=401813349&idx=1&sn=d41f7e07af9d12d9339af695d988e810
赞这个观点:我们缺的从来都不是前端/后端工程师,而是工程师(或者那些会系统思考,并总是想着解决问题的人)。
**How I fixed Atom**
http://davidvgalbraith.com/how-i-fixed-atom/
介绍定位和解决一个 Atom 的 bug 的过程,赞作者的钻研精神。
**2016 - the year of web streams**
https://jakearchibald.com/2016/streams-ftw/
介绍了 Stream API。Streams can be used to do fun things like turn clouds to butts, transcode MPEG to GIF, but most importantly, they can be combined with service workers to become the fastest way to serve content.
**Modularizing monolithic JS projects**
https://plot.ly/javascript/modularizing-monolithic-javascript-projects/
介绍了 [plotly.js](https://github.com/plotly/plotly.js) 这个图形库如何利用模块化技术解决项目规模变大后所遇到的问题。
**关于烂代码的那些事 - 评价代码优劣的方法**
http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=403710181&idx=1&sn=404848628e673f2517eff0710d38824c
来自微博研发团队的一位技术专家的经验。
## 新鲜货
**ATP-创意能量源**
http://mp.weixin.qq.com/s?__biz=MzI0ODE3Njk3MQ==&mid=401497751&idx=1&sn=042c5f3bc55a9cd35ca590ec6c64a571
ATP由一群关注产品、关注用户体验、关注新技术的同学维护,倡导传递创新的价值,每天为你带来新鲜的创意资讯,我们面向产品、技术与设计,但又不局限于产品、技术与设计。感兴趣的同学可以关注。
**Parse Server**
https://github.com/ParsePlatform/parse-server
http://blog.parse.com/announcements/moving-on/
Facebook 将关掉 Parse,然后放出了这个基于 Node 的兼容实现,存储使用 Mongodb。Parse提供了移动后端服务,为移动开发者提供工具将数据储存在云端、管理登录和处理推送通知等等,Facebook在2013年将其收购。Parse 算是 [noBackend 方案](http://nobackend.org/) 的一个典型产品,这个领域还有一个值得关注的产品 Firebase。
**Highlights of V8 4.9**
http://v8project.blogspot.com/2016/01/v8-release-49.html
Coming to a Chrome (49) and Node near you. It has 91% ES6 support (by the Kangax compatibility table) including Proxy objects and the Reflect API.
**Applying for incubation under the Node.js Foundation**
https://github.com/strongloop/express/issues/2869
express 申请成为 Node.js 基金会子项目
**Progress bar noticeably slows down npm install**
https://github.com/npm/npm/issues/11283
https://twitter.com/gavinjoyce/status/691773956144119808
npm 的进度条竟然这么影响性能,谁能告诉我原因是啥?另附两个可以加速 npm 的小工具(需谨慎使用):
https://github.com/alexanderGugel/ied
https://github.com/rstacruz/pnpm
**The final feature set of ECMAScript 2016 (ES7)**
http://www.2ality.com/2016/01/ecmascript-2016.html
只增加两个新特性,赞。
**W3C的HTML新年计划**
http://weibo.com/p/23041861005d5c0102w4g3
https://github.com/w3c/html/
兄弟们,可以给 HTML 规范提 PR 了,欢迎刚兴趣的同学给 HTML5.1 贡献力量。
**人工智能先驱-Marvin Minsky 大师逝世**
http://nytimes.com/2016/01/26/business/marvin-minsky-pioneer-in-artificial-intelligence-dies-at-88.html
http://www.leiphone.com/news/201601/jccyMh6pZ2385cfU.html
http://web.media.mit.edu/~minsky/
向大师致敬。这个领域目前已经有不少成功,比如最近沸沸扬扬的 [Google 的 AlphaGo战胜了欧洲围棋冠军](http://www.bbc.com/news/technology-35420579),相关讨论:[奇点临近](http://mp.weixin.qq.com/s?__biz=MzI0MjA1Mjg2Ng==&mid=401442686&idx=1&sn=e05c02f9496c837254d5acb9f5b23b3c)
**Microsoft releases CNTK, its open source deep learning toolkit, on GitHub**
http://blogs.microsoft.com/next/2016/01/25/microsoft-releases-cntk-its-open-source-deep-learning-toolkit-on-github/
CNTK, the Computational Network Toolkit by Microsoft Research, is a unified deep-learning toolkit that describes neural networks as a series of computational steps via a directed graph. In this directed graph, leaf nodes represent input values or network parameters, while other nodes represent matrix operations upon their inputs.
**Pale Moon(苍月)浏览器**
https://www.palemoon.org/
重点在最新版中启用了自研的浏览器引擎 [Goanna](https://moonchildproductions.info/goanna.shtml) ,基于 Firefox 的 Gecko fork 出来的。
**voxel.css makes 3D rendering easy**
https://github.com/HunterLarco/voxel.css
The goal of this project is to provide a lightweight 3D CSS library with very simple implementation.
**Simplifying Docker on OS X**
https://blog.andyet.com/2016/01/25/easy-docker-on-osx/
https://github.com/nlf/dlite
介绍了 Dlite 这个工具,号称 : The simplest way to use Docker on OS X
**devtool**
https://github.com/Jam3/devtool
https://manrueda.com.ar/devtool-as-an-ide-its-time/
Runs Node.js programs inside Chrome DevTools (using Electron).
**React and ag-Grid, the Perfect Match**
https://www.ag-grid.com/react-and-ag-grid/
ag-Grid is an enterprise JavaScript data grid with zero library dependencies, including no dependency for it’s rendering. You can build an application using just JavaScript and ag-Grid alone. The ‘ag’ stands for framework AGnostic.
**基于 JavaScript 的操作系统你听说过吗**
https://linux.cn/article-6931-1.html
**Viewer.js**
http://fengyuanchen.github.io/viewerjs/
图片浏览控件
**node-tap**
https://github.com/tapjs/node-tap
A TAP test framework for Node.js. It includes a command line test runner for consuming TAP-generating test scripts, and a JavaScript framework for writing such scripts. Built-in support for code coverage (including instrumenting child processes). 相关框架: Tape https://github.com/substack/tape
**Mongotron**
https://github.com/officert/mongotron
A Mongo DB GUI built using Electron, and Angular Js.
**年会上的程序员们**
http://mp.weixin.qq.com/s?__biz=MzAxMzMxNDIyOA==&mid=405897272&idx=1&sn=3519d26a2f3aad1a20f00680b56fd7d8
每个工程师团队都会有一个在年会上现场写抽奖程序的码农。
**沃尔玛开源OneOps**
http://arstechnica.com/information-technology/2016/01/a-new-open-source-cloud-management-tool-from-walmart/
https://github.com/oneops
OneOps让广大开发人员能够在混合的多云环境下开发产品,不用担心被任何一家云厂商牢牢锁定。这就意味着,他们可以测试不同的云提供商,并在它们之间进行切换,充分利用更实惠的价格、技术或可扩展性,而不被其中任何一家厂商牢牢锁定。
## 产品及其它
**MIT dean to start new university: “No majors, no lectures, no classrooms”**
http://tech.mit.edu/V135/N38/ortiz.html
MIT 的最新办学理念
**什么叫工业4.0**
http://mp.weixin.qq.com/s?__biz=MzA3Mjc3NTQxMQ==&mid=401685692&idx=1&sn=61d4602076ed2c32da1f36a07169cba7
互联网技术是工业 4.0 中的一大核心技术,可以通过这个文章了解下正在悄悄进行的这场变革,寻找些灵感
**张小龙的2359条饭否日记**
http://zhuanlan.zhihu.com/spacekid/20539834
赞这几句:人要成功很难,比成功更难的是,知道自己的成功是偶然的;大部分的所谓创新,都是把问题搞复杂化而已;哥做的不是产品,哥做的是发挥潜力的自由;
**变坏的公司是如何变坏的**
http://mp.weixin.qq.com/s?__biz=MjM5MzA0NDA4MA==&mid=403846634&idx=1&sn=7fad43e179a741df3e37dad1d49c1c3b
所有公司都有自己纸面上的道德教条,可是只有当员工会发自内心服膺它们,在日常工作中自然而然实践它们的时候,这些教条才有意义。要员工承认道德价值一点也不难,可是商业究竟是商业,每个人都有业务上的压力需要满足,而道德准则总有和业务需求不尽然相符的时候。坚持道德底线的困难在于,它不仅仅是自己一个人的事。
**傅盛的深刻反思:创业初期沉迷于执行,忽略战略思考**
http://mp.weixin.qq.com/s?__biz=MjM5NTg2NTU0Ng==&mid=406261069&idx=1&sn=e6ed7f0cc26c17b59c77cf8453ce1161
分析了战略和执行力的关系。