{
  "api_version": 1,
  "count": 29,
  "weekly": [
    {
      "id": "1",
      "date": "2017-07-04",
      "count": "11",
      "articles": [
        {
          "id": "1",
          "title": "Why Quip doesn&#39;t have platform-specific engineering teams",
          "link": "https://quip.com/blog/quip-engineering-team-structure",
          "comment": "Quip 的工程团队不按职能划分，没有 iOS Android Windows Web 工程师之说 每个人都负责一个功能的各个端 这样减少了团队之间的隔阂 小团队也能多端同步推出功能",
          "tags": ["Quip"]
        },
        {
          "id": "2",
          "title": "Serving 39 Million Requests for $370/Month, or: How We Reduced Our Hosting Costs by Two Orders of Magnitude",
          "link": "https://trackchanges.postlight.com/serving-39-million-requests-for-370-month-or-how-we-reduced-our-hosting-costs-by-two-orders-of-edc30a9a88cd",
          "comment": "稍后阅读类应用 Readability 的后端迁移到 serverless，3900万访问量成本从 $10000降到了 $370。对于一些适合的应用，serverless 成本优势非常明显。PS：还是之前说过的，自建机房你永远没法体会优化后省钱的感觉，而使用云平台这来得就直接得多。",
          "tags": ["serverless", "faas", "aws"]
        },
        {
          "id": "3",
          "title": "What it Means to be a Remote-First Company",
          "link": "https://stackoverflow.blog/2017/02/08/means-remote-first-company/",
          "comment": "StackOverflow 远程工作的实践",
          "tags": ["远程工作", "StackOverflow"]
        },
        {
          "id": "4",
          "title": "The AWS and MongoDB Infrastructure of Parse: Lessons Learned",
          "link": "https://medium.baqend.com/parse-is-gone-a-few-secrets-about-their-infrastructure-91b3ab2fcf71",
          "comment": "Parse 是一个 BaaS 服务",
          "tags": ["baas", "aws", "mongodb", "parse", "facebook"]
        },
        {
          "id": "5",
          "title": "Improving Critical Infrastructure Rollouts",
          "link": "https://labs.spotify.com/2017/06/22/improving-critical-infrastructure-rollouts/",
          "comment": "Spotify 讲述自己每次升级 docker 本身版本都会挂的事，于是搞了套东西可以平滑升级",
          "tags": ["Spotify", "Docker"]
        },
        {
          "id": "6",
          "title": "Making The Move From Scala To Go, And Why We’re Not Going Back",
          "link": "https://movio.co/en/blog/migrate-Scala-to-Go/",
          "comment": "国外发这种迁移语言的文章一样会引战，何况是自带优越感的函数式语言",
          "tags": ["Scala", "Go"]
        },
        {
          "id": "7",
          "title": "How Etsy Manages HTTPS and SSL Certificates for Custom Domains on Pattern",
          "link": "https://codeascraft.com/2017/01/31/how-etsy-manages-https-and-ssl-certificates-for-custom-domains-on-pattern/",
          "comment": "Etsy 用 letsencrypt 给用户域名提供 https",
          "tags": ["etsy", "https", "letsencrypt"]
        },
        {
          "id": "8",
          "title": "A brief history of JSON",
          "link": "http://blog.sqlizer.io/posts/json-history/",
          "comment": "JSON 简史",
          "tags": ["JSON"]
        },
        {
          "id": "9",
          "title": "HashiCorp Vault helps New Relic manage secrets for their digital intelligence platform",
          "link": "https://www.hashicorp.com/blog/hashicorp-vault-helps-new-relic-manage-secrets-for-their-digital-intelligence-platform/",
          "comment": "只是一个官方 PR 文，但展示了一个 HashiCorp 后端全家桶(Consol, Vault, Terraform)的真实案例",
          "tags": ["HashiCorp", "NewRelic", "consul"]
        },
        {
          "id": "10",
          "title": "One Weird Trick to Lose Size",
          "link": "https://blog.halide.cam/one-weird-trick-to-lose-size-c0a4013de331",
          "comment": "一篇减少包大少的文章，思路不是很主流：1，减少使用第三方库，尽量用系统的，必要时造轮子。2，没有数据打点分析和 A/B Test。有一段话印象深刻：Say an engineer wants to move up the tech ladder. Shipping features won’t get you a promotion. Building a new layout engine does. The company even gets recruiting-bait for the engineering blog.",
          "tags": ["App"]
        },
        {
          "id": "11",
          "title": "提高驾驶技术：用 GAN 去除(爱情)动作片中的马赛克和衣服",
          "link": "https://zhuanlan.zhihu.com/p/27199954",
          "comment": "社会又进步了。",
          "tags": ["GAN"]
        }
      ]
    },
    {
      "id": "2",
      "date": "2017-06-20",
      "count": "6",
      "articles": [
        {
          "id": "1",
          "title": "Instagram Makes a Smooth Move to Python 3",
          "link": "https://thenewstack.io/instagram-makes-smooth-move-python-3/",
          "comment": "Performance speed is no longer the primary worry. Time to market speed is. — Hui Ding",
          "tags": ["Instagram", "Python", "Python3"]
        },
        {
          "id": "2",
          "title": "How scientists use Slack",
          "link": "http://www.nature.com/news/how-scientists-use-slack-1.21228",
          "comment": "科学家们也用 Slack 进行协作，用的深得精髓。",
          "tags": ["Slack", "Collaboration"]
        },
        {
          "id": "3",
          "title": "The Infrastructure Behind Twitter: Scale",
          "link": "https://blog.twitter.com/engineering/en_us/topics/infrastructure/2017/the-infrastructure-behind-twitter-scale.html",
          "comment": "Twitter scale 的底层架构，比较运维向，100万行 puppet 配置代码",
          "tags": ["Twitter", "基础架构"]
        },
        {
          "id": "4",
          "title": "You Are Not Google",
          "link": "https://blog.bradfieldcs.com/you-are-not-google-84912cf44afb",
          "comment": "又是一篇告诫大家不要因为模仿大公司导致过度设计的文章",
          "tags": ["技术选型"]
        },
        {
          "id": "5",
          "title": "What&#39;s New In DevTools (Chrome 59)",
          "link": "http://ipage.tech/2017/06/07/What-s-new-in-devtools-chrome-59/",
          "comment": "最近迎来了 Chrome59的版本更新，那么在 DevTools 又有什么新功能了呢? css&amp;js 代码使用率、全页面截屏 etc.",
          "tags": ["Chrome", "DevTools"]
        },
        {
          "id": "6",
          "title": "位于中国四川，内蒙，东北的巨无霸比特币采矿工厂，月电费百万元",
          "link": "http://www.xcar.com.cn/bbs/viewthread.php?tid=29924571",
          "comment": "比特币矿场图",
          "tags": ["比特币"]
        }
      ]
    },
    {
      "id": "3",
      "date": "2017-06-06",
      "count": "11",
      "articles": [
        {
          "id": "1",
          "title": "Scaling Django to 8 Billion Page Views",
          "link": "https://blog.disqus.com/scaling-django-to-8-billion-page-views",
          "comment": "Disqus 选择了开发块的 Python 和 Django 组合。那他们如何顶住 QPS4500的流量呢？答案是 Varnish。让人联想起某个切换成 Go 的国内公司。",
          "tags": ["Disqus", "Python", "Django", "Varnish"]
        },
        {
          "id": "2",
          "title": "干掉状态：从 session 到 token",
          "link": "https://mp.weixin.qq.com/s?__biz=MzAxOTc0NzExNg==&mid=2665513566&idx=1&sn=a2688cadbe9c8042ff1abbdf04a8bd5e&chksm=80d67a1db7a1f30b28b93ed2ab29edfbf982b780433e4bfd178e3cc52cb1f9100cc8f923db4f#rd",
          "comment": "JSON Web Tokens 的通俗解释",
          "tags": ["session", "token"]
        },
        {
          "id": "3",
          "title": "The Evolution of Code Deploys at Reddit",
          "link": "https://redditblog.com/2017/06/02/the-evolution-of-code-deploys-at-reddit/",
          "comment": "Reddit 如何部署代码",
          "tags": ["部署", "上线"]
        },
        {
          "id": "4",
          "title": "Building an Open Source Service",
          "link": "https://blog.sentry.io/2016/10/24/building-an-open-source-service",
          "comment": "Sentry 的付费产品也是基于自己的开源项目，这里告诉你 Sentry 基于开源生意的奥秘",
          "tags": ["OpenSource", "sentry"]
        },
        {
          "id": "5",
          "title": "DNS Infrastructure at GitHub",
          "link": "https://githubengineering.com/dns-infrastructure-at-github/",
          "comment": "GitHub 的 DNS 基础架构，估计很多人也都完全不熟悉，可以看看。",
          "tags": ["GitHub", "DNS"]
        },
        {
          "id": "6",
          "title": "Increasing Attacker Cost Using Immutable Infrastructure",
          "link": "https://diogomonica.com/2016/11/19/increasing-attacker-cost-using-immutable-infrastructure/",
          "comment": "使用 Docker 开启只读模式，来防止恶意代码注入攻击",
          "tags": ["Docker", "Security"]
        },
        {
          "id": "7",
          "title": "Stack Overflow: Helping One Million Developers Exit Vim",
          "link": "https://stackoverflow.blog/2017/05/23/stack-overflow-helping-one-million-developers-exit-vim/",
          "comment": "Stack Overflow 帮助了一百万人次退出 vim",
          "tags": ["StackOverflow", "vim"]
        },
        {
          "id": "8",
          "title": "WWDC2017",
          "link": "https://www.apple.com/apple-events/june-2017/",
          "comment": "6月5日凌晨1点看起来 #tgim",
          "tags": ["Apple", "WWDC"]
        },
        {
          "id": "9",
          "title": "The biggest codebases in history",
          "link": "https://medium.freecodecamp.com/the-biggest-codebases-in-history-a128bb3eea73",
          "comment": "一些知名软件的代码行数",
          "tags": ["codebase"]
        },
        {
          "id": "10",
          "title": "NPM 5.0 正式发布",
          "link": "http://blog.npmjs.org/post/161081169345/v500",
          "comment": "npm 最新发布了5.0版本，该版本对提升了自身稳定性及其他优化",
          "tags": ["npm", "node"]
        },
        {
          "id": "11",
          "title": "听说，贵公司的食堂很好吃（美国篇）",
          "link": "https://juejin.im/post/5933dbac0ce4630057190f13",
          "comment": "好",
          "tags": ["Food"]
        }
      ]
    },
    {
      "id": "4",
      "date": "2017-05-23",
      "count": "11",
      "articles": [
        {
          "id": "1",
          "title": "PHP 7 Virtual Machine",
          "link": "http://nikic.github.io/2017/04/14/PHP-7-Virtual-machine.html",
          "comment": "PHP 核心开发者讲解 PHP7 虚拟机的内核",
          "tags": ["PHP", "PHP7", "vm"]
        },
        {
          "id": "2",
          "title": "It&#39;s The Future",
          "link": "https://circleci.com/blog/its-the-future/",
          "comment": "一场由反讽 Docker、微服务等概念展开的 PR",
          "tags": ["Docker", "Microservice", "CircleCI"]
        },
        {
          "id": "3",
          "title": "今日头条 Go 建千亿级微服务的实践",
          "link": "http://mp.weixin.qq.com/s/CJL0Ttexvh7XT1zoNLOJrA",
          "comment": "干货比较多。但有个疑问，就是同为 Python 的 Instagram，日活应该更多，却还在 Python，不知道技术栈上怎么做的。",
          "tags": ["今日头条", "Go", "微服务"]
        },
        {
          "id": "4",
          "title": "Prepack, a tool for making JavaScript code run faster",
          "link": "https://prepack.io/",
          "comment": "Facebook 出品还没真正可用的静态优化工具，编译之后帮你把能计算的东西都计算好",
          "tags": ["Facebook", "JavaScript"]
        },
        {
          "id": "5",
          "title": "GitHub 项目徽章的添加和设置",
          "link": "https://github.com/EyreFree/GitHubBadgeIntroduction",
          "comment": "科普一下",
          "tags": ["GitHub", "badges"]
        },
        {
          "id": "6",
          "title": "月活8.89亿背后：微信工程师细数兼容测试经验",
          "link": "http://wetest.qq.com/lab/view/306.html",
          "comment": "用了自动化但不太知道自动化到什么程度",
          "tags": ["WeChat", "WeTest"]
        },
        {
          "id": "7",
          "title": "Element React 版发布啦！",
          "link": "https://zhuanlan.zhihu.com/p/26818433",
          "comment": "饿了么 Element UI React 版",
          "tags": ["ele.me", "ElementUI", "React"]
        },
        {
          "id": "8",
          "title": "Microservices – Please, don’t",
          "link": "https://blog.komand.com/microservices-please-dont",
          "comment": "微服务的一些误解",
          "tags": ["Microservices"]
        },
        {
          "id": "9",
          "title": "Kotlin on Android. Now official",
          "link": "https://blog.jetbrains.com/kotlin/2017/05/kotlin-on-android-now-official/",
          "comment": "Kotlin 获得 Android 官方支持。Android 开发多了一种更好的选择，但某些大厂短期内没什么希望，就像 Swift 一样。",
          "tags": ["Android", "Kotlin", "Google"]
        },
        {
          "id": "10",
          "title": "Yes, Python is Slow, and I Don’t Care",
          "link": "https://hackernoon.com/yes-python-is-slow-and-i-dont-care-13763980b5a1",
          "comment": "关于性能和开发效率，我认为中前期大多后者更重要。而我认识的很多人，心思从来都放在性能上，这样是没有必要的。有些环节性能有需求，自然会寻找更好的方法，关键还是提升日常的效率。",
          "tags": ["Python", "性能", "效率"]
        },
        {
          "id": "11",
          "title": "How Basic Performance Analysis Saved Us Millions",
          "link": "https://blog.heapanalytics.com/basic-performance-analysis-saved-us-millions/",
          "comment": "使用火焰图进行性能分析优化，节约了百万美元 👍",
          "tags": ["performance", "analysis", "flamegraph"]
        }
      ]
    },
    {
      "id": "5",
      "date": "2017-04-25",
      "count": "10",
      "articles": [
        {
          "id": "1",
          "title": "Analysis of the Facebook.app for iOS [v. 87.0]",
          "link": "http://blog.timac.org/?p=1707",
          "comment": "Facebook iOS 客户端 v87已经253MB 了，这位博主好心研究了下为什么会这么大。",
          "tags": ["iOS", "Facebook"]
        },
        {
          "id": "2",
          "title": "Electron is flash for the desktop",
          "link": "https://josephg.com/blog/electron-is-flash-for-the-desktop/",
          "comment": "如题",
          "tags": ["Electron", "Chromium", "Slack"]
        },
        {
          "id": "3",
          "title": "Complexion Reduction: A New Trend In Mobile Design",
          "link": "https://medium.com/swarm-nyc/complexion-reduction-a-new-trend-in-mobile-design-cef033a0b978",
          "comment": "近年来一众 App 流行起了减少复杂性的设计，作者最后总结了5条：1，去掉颜色；2，更大、更黑、更粗的标题；3，简单、轻小的功能图标；4，双倍、三倍甚至四倍留白；5，让 App 主图标更闪亮！",
          "tags": ["App", "设计"]
        },
        {
          "id": "4",
          "title": "ReactXP",
          "link": "https://microsoft.github.io/reactxp/",
          "comment": "RN 一统江湖",
          "tags": ["React", "Microsoft"]
        },
        {
          "id": "5",
          "title": "如何达到 facebook 发版速度：Dropbox 灰度发布平台系统架构",
          "link": "http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=2653548381&idx=1&sn=23484f894cc3758590c9c9eb40af3a2e",
          "comment": "兼具 a/b testing 和开关配置，并且兼具群体、审计和监控等配套环节",
          "tags": ["Dropbox", "灰度发布", "功能配置"]
        },
        {
          "id": "6",
          "title": "滴滴 webapp 5.0 Vue 2.0 重构经验分享",
          "link": "https://github.com/DDFE/DDFE-blog/issues/13",
          "comment": "滴！老司机。",
          "tags": ["Vue", "滴滴"]
        },
        {
          "id": "7",
          "title": "Scrolling on the web: A primer",
          "link": "https://blogs.windows.com/msedgedev/2017/03/08/scrolling-on-the-web/#Z3ew9r7DFXxayE7z.97",
          "comment": "讲述了各种浏览器各种滑动页面的一些小故事小技巧，其实是微软 Edge 浏览器的软广告",
          "tags": ["Microsoft", "Edge", "页面滑动"]
        },
        {
          "id": "8",
          "title": "THE UBER ENGINEERING TECH STACK, PART I: THE FOUNDATION",
          "link": "https://eng.uber.com/tech-stack-part-one/",
          "comment": "Uber 的技术栈，比较全",
          "tags": ["Uber", "技术栈"]
        },
        {
          "id": "9",
          "title": "Medium’s CSS is actually pretty f***ing good",
          "link": "https://medium.com/@fat/mediums-css-is-actually-pretty-fucking-good-b8e2a6c78b06",
          "comment": "Medium CSS 的分析",
          "tags": ["Medium", "CSS", "Less"]
        },
        {
          "id": "10",
          "title": "Hype Driven Development",
          "link": "https://blog.daftcode.pl/hype-driven-development-3469fc2e9b22",
          "comment": "HDD，就是指用追捧并使用最新最火最酷的技术开发。典型例子是：React.js，微服务，NoSQL",
          "tags": ["讨论"]
        }
      ]
    },
    {
      "id": "6",
      "date": "2017-04-11",
      "count": "9",
      "articles": [
        {
          "id": "1",
          "title": "互联网发明者 Tim Berners-Lee 获得图灵奖",
          "link": "http://news.mit.edu/2017/tim-berners-lee-wins-turing-award-0404",
          "comment": "让我们祝贺他吧！",
          "tags": ["图灵奖", "www", "Tim Berners-Lee"]
        },
        {
          "id": "2",
          "title": "Angular 4.0.0 Now Available",
          "link": "http://angularjs.blogspot.jp/2017/03/angular-400-now-available.html",
          "comment": "Angular 4.0.0 发布",
          "tags": ["Google", "Angular"]
        },
        {
          "id": "3",
          "title": "Adobe/Google 推出合作开源字体：思源宋体",
          "link": "https://source.typekit.com/source-han-serif/",
          "comment": "Adobe 方面叫 Source Han Serif，Google 叫 Noto Serif",
          "tags": ["Adobe", "Google", "font"]
        },
        {
          "id": "4",
          "title": "全球首届 Vue.js 开发者大会",
          "link": "https://vue.w3ctech.com",
          "comment": "有 T 恤的，果断走起",
          "tags": ["vue.js", "vueconf"]
        },
        {
          "id": "5",
          "title": "Site Reliability Engineering",
          "link": "https://landing.google.com/sre/book/index.html",
          "comment": "原价70+ 的《SRE：Google 运维解密》，英语稳的可以免费看了",
          "tags": ["Google", "SRE", "Book"]
        },
        {
          "id": "6",
          "title": "How Algolia Reduces Latency For 21B Searches Per Month",
          "link": "https://stackshare.io/algolia/how-algolia-reduces-latency-for-21b-searches-per-month",
          "comment": "Algolia 是一家提供云搜索服务的公司。它们没有使用常见的 aws，而是用物理机，有单独部署也有混布，分布在47个数据中心。这套架构是为了减少延迟而设计的。",
          "tags": ["Algolia", "架构"]
        },
        {
          "id": "7",
          "title": "How Technology Hijacks People’s Minds",
          "link": "https://medium.com/swlh/how-technology-hijacks-peoples-minds-from-a-magician-and-google-s-design-ethicist-56d62ef5edf3",
          "comment": "“列举了互联网产品的十种损人利己的、劫持用户的方法，旨在将用户留在自己的平台越久越好”：基本全加起来就是淘宝",
          "tags": ["用户体验"]
        },
        {
          "id": "8",
          "title": "CodePlex 关闭，建议迁移至 GitHub",
          "link": "http://www.infoq.com/cn/news/2017/04/codeplex-github",
          "comment": "GitHub 已经是“进行开源共享的标准平台”",
          "tags": ["Microsoft", "Codeplex", "GitHub"]
        },
        {
          "id": "9",
          "title": "Scaling Unsplash with a small team",
          "link": "https://medium.com/unsplash-unfiltered/scaling-unsplash-with-a-small-team-fbdd55571906",
          "comment": "并没有多体现出 small，主要感受就是用了各路稳定的开源框架以及第三方云服务：Heroku, aws, fastly, Google Vision, New Relic 之类的，感觉在国内借鉴意义不高。Web 是 Rails 做 API，前端 React 用 Node 渲染。",
          "tags": ["Unsplash"]
        }
      ]
    },
    {
      "id": "7",
      "date": "2017-03-28",
      "count": "12",
      "articles": [
        {
          "id": "1",
          "title": "Google API Design Guide",
          "link": "https://cloud.google.com/apis/design/",
          "comment": "Google 出的网络 API 设计指南，比较系统，值得学习和实践",
          "tags": ["api", "design", "Google"]
        },
        {
          "id": "2",
          "title": "The million dollar engineering problem",
          "link": "https://segment.com/blog/the-million-dollar-eng-problem/",
          "comment": "优化了100万美元的 AWS 成本！云计算的一个好处，可以更容易量化一个产品的技术成本。",
          "tags": ["优化", "成本", "aws"]
        },
        {
          "id": "3",
          "title": "React Native at Instagram",
          "link": "https://engineering.instagram.com/react-native-at-instagram-dd828a9a90c7#.y0tn4wupg",
          "comment": "Instagram RN 实践过程，主要讲切入点和小流量模式，技术涉及不太多。最后收益简直逆天，85%起跳。",
          "tags": ["Instagram", "React-Native"]
        },
        {
          "id": "4",
          "title": "Docker in Production: A History of Failure",
          "link": "https://thehftguy.com/2016/11/01/docker-in-production-an-history-of-failure/",
          "comment": "Docker 在作者生产环境中的各种悲剧故事，黑 docker 成 🐶 了",
          "tags": ["Docker"]
        },
        {
          "id": "5",
          "title": "The One Method I’ve Used to Eliminate Bad Tech Hires",
          "link": "https://mattermark.com/the-one-method-ive-used-to-eliminate-bad-tech-hires/",
          "comment": "科学人性的面试方法：周末回去付费做两天项目，周一来了之后一起讨论，然后决定是否录用。",
          "tags": ["面试"]
        },
        {
          "id": "6",
          "title": "Configuration Management is an Antipattern",
          "link": "https://hackernoon.com/configuration-management-is-an-antipattern-e677e34be64c#.oaekoey4v",
          "comment": "DevOps 程序本身很科学，让 OP 管理比较稳但不太科学，让 DEV/RD 负责比较科学但很容易被“临时工”因为写错配置 DSL 把整个集群搞挂，因此作者认为这是反模式。黑了半天，最后结论是 Docker 才是王道 😄",
          "tags": ["DevOps", "配置管理器", "Docker"]
        },
        {
          "id": "7",
          "title": "A look inside the Quip engineering team",
          "link": "https://quip.com/blog/engineering-at-quip",
          "comment": "Quip 不像一家平常的创业公司，更像一家成熟的公司，8小时工作、OnCall 没什么事干、工具链很复杂。但它也不像大公司，CodeReview 不是必须、工程师很少开会、管理扁平。因为，两位创始人给 Quip 带来了很多成熟的智慧的经验。",
          "tags": ["Quip", "创业"]
        },
        {
          "id": "8",
          "title": "How I Work",
          "link": "https://medium.com/@taylorotwell/how-i-work-a22010d1ad82#.x9qgxnsya",
          "comment": "Laravel 作者 Taylor Otwell 是如何工作的",
          "tags": ["Laravel", "工作方式"]
        },
        {
          "id": "9",
          "title": "What does Unsplash cost?",
          "link": "https://crew.co/blog/what-does-unsplash-cost/",
          "comment": "维护 Unsplash 这样的免费图片分享网站的成本。文章本身还好，主要强推一波 unsplash.com",
          "tags": ["unsplash", "成本"]
        },
        {
          "id": "10",
          "title": "Windows Subsystem for Linux (WSL)",
          "link": "https://github.com/Microsoft/BashOnWindows",
          "comment": "重新用回 Windows，安装了 Windows 10，发现了微软的逆天新功能——WSL，也叫 Bash on Windows。这是一种把 Ubuntu Linux 集成在 Windows 10 中的技术，经过简单的安装就可以在 Windows 里用 Linux 了。功能经过2016年的折腾，现在基本可用，可以在 Linux 中读取 Windows 中的数据，Windows 程序读取 Linux 在 Insider 版中已经推出。Mac 得加油了，不是那么不可替代了。",
          "tags": ["Windows", "Linux", "Ubuntu"]
        },
        {
          "id": "11",
          "title": "Open source license descriptions and metadata",
          "link": "https://github.com/blog/2335-open-source-license-descriptions-and-metadata",
          "comment": "GitHub 的 new feature，提供更直观的 license 信息。license 平时很容易被忽视，但其实非常重要。",
          "tags": ["GitHub", "License"]
        },
        {
          "id": "12",
          "title": "Linus 宣布将替换 git 中的 SHA-1算法",
          "link": "http://www.infoq.com/cn/news/2017/03/Linus-Announced-replace-SHA-1-Gi",
          "comment": "近日，Google 宣布攻破 SHA-1，所以这次替换就很容易理解了。",
          "tags": ["git", "SHA-1", "Linus"]
        }
      ]
    },
    {
      "id": "8",
      "date": "2017-03-14",
      "count": "7",
      "articles": [
        {
          "id": "1",
          "title": "这项浏览器调整使 Facebook 收到的网络请求减少了 60%",
          "link": "https://github.com/xitu/gold-miner/blob/master/TODO/this-browser-tweak-saved-60%25-of-requests-to-facebook.md",
          "comment": "Facebook 通过与浏览器厂商合作，用 `cache-control` 和 `last-modified` 控制浏览器缓存行为，节省了大量静态文件的网络请求。",
          "tags": ["Facebook", "HTTP", "cache"]
        },
        {
          "id": "2",
          "title": "Shopify 的闪购限流解决方案",
          "link": "http://www.infoq.com/cn/news/2017/03/Shopify-solve-idea",
          "comment": "基于 OpenResty 和漏桶算法的秒杀解决方案",
          "tags": ["Shopify", "Nginx", "OpenResty"]
        },
        {
          "id": "3",
          "title": "PROGRAMMERS ARE CONFESSING THEIR CODING SINS TO PROTEST A BROKEN JOB INTERVIEW PROCESS",
          "link": "https://theoutline.com/post/1166/programmers-are-confessing-their-coding-sins-to-protest-a-broken-job-interview-process",
          "comment": "广大硅谷技术从业者纷纷就“白板算法编程”展开了讨论。",
          "tags": ["面试", "白板编程"]
        },
        {
          "id": "4",
          "title": "Progressive Web App Libraries in Production",
          "link": "https://medium.com/dev-channel/progressive-web-app-libraries-in-production-b52cad37d34#.309qwp2uf",
          "comment": "PWA 实战",
          "tags": ["PWA"]
        },
        {
          "id": "5",
          "title": "Why we are not leaving the cloud",
          "link": "https://about.gitlab.com/2017/03/02/why-we-are-not-leaving-the-cloud/?utm_source=wanqu.co&utm_campaign=Wanqu+Daily&utm_medium=social",
          "comment": "在人民群众的劝说下，GitLab 决定不迁出云计算。GitLab 真是个开放的公司，连决策都开放了。",
          "tags": ["GitLab", "云计算"]
        },
        {
          "id": "6",
          "title": "Technical Tribalism",
          "link": "https://www.nczonline.net/newsletter/archive/5993571fa8/",
          "comment": "Zakas 大神写的《技术部落主义》，就是我们往往活着一个技术部落中，作者当初在 Yahoo 的 YUI 部落，雅虎的人出去就喜欢组织 jQuery 迁移 YUI 之类的事情。作者认为适应新技术的能力更重要，几年前大家还在 backbone，现在更多的是 react 全家桶部落。更需要的是愿意抛弃部落去理解问题的人。",
          "tags": ["技术部落"]
        },
        {
          "id": "7",
          "title": "How to construct a design system",
          "link": "https://medium.freecodecamp.com/how-to-construct-a-design-system-864adbf2a117#.p2yhih8wp",
          "comment": "设计系统不止是 UI 组件，它指导整个产品的设计",
          "tags": ["design"]
        }
      ]
    },
    {
      "id": "9",
      "date": "2017-02-28",
      "count": "8",
      "articles": [
        {
          "id": "1",
          "title": "Front-End Developer Handbook 2017",
          "link": "https://frontendmasters.gitbooks.io/front-end-handbook-2017/content/",
          "comment": "The handbook just for Front-End.",
          "tags": ["FrontEnd", "handbook", "2017"]
        },
        {
          "id": "2",
          "title": "Google 宣布攻破 SHA-1，从此 SHA-1不再安全！",
          "link": "http://www.infoq.com/cn/news/2017/02/google-first-sha1-collision",
          "comment": "“早在2014年，Chrome 小组就宣布将逐渐淘汰对 SHA-1的使用。我们希望自己针对 SHA-1完成的实际攻击能够进一步巩固这一结论，让更多人意识到其已经不再安全可靠。”",
          "tags": ["SHA1", "安全", "Google"]
        },
        {
          "id": "3",
          "title": "为什么你要坚决移除项目中的无用代码？",
          "link": "https://mp.weixin.qq.com/s?__biz=MzA5Nzc4OTA1Mw==&mid=2659598989&idx=1&sn=a722a9e9cafebb67ea2e67806149c251&chksm=8be9979fbc9e1e897d96fba59384aab38953753accdca46ba22167152c34c53ca265a5dec3a4#rd",
          "comment": "洁癖不仅仅是干净而已。",
          "tags": ["无用代码"]
        },
        {
          "id": "4",
          "title": "不装逼地说，在 Google 到底能学到啥？",
          "link": "https://mp.weixin.qq.com/s?__biz=MjM5NzMyMjAwMA==&mid=2651478222&idx=1&sn=4d3afe3036cf456a678b759622c0287e&key=2aaacc8fcfc09a83175605380934bfb3f281876d08b48006159fd1772e342d66c8a992b3db4e3307633dde5de3c8e1266ad6a22bd2d7965288258a635e4ac3ef729a59ebfc4888cabcb727267f609995&ascene=0&uin=NTc5MjA1&devicetype=iMac+MacBookAir6,2+OSX+OSX+10.12.3+build(16D32)&version=12010310&nettype=WIFI&fontScale=100&pass_ticket=V42LBZ273800RRy0MAH51evCsnsUG/hXD6lse3hI1Zw=",
          "comment": "可以参考下某厂为何神似但却完全不是。",
          "tags": ["Google"]
        },
        {
          "id": "5",
          "title": "Is PostgreSQL good enough?",
          "link": "http://renesd.blogspot.jp/2017/02/is-postgresql-good-enough.html?utm_source=wanqu.co&utm_campaign=Wanqu+Daily&utm_medium=social&m=1",
          "comment": "转自湾区：世界上绝大部分的网站、app 极少数人使用、规模都很小，PostgreSQL 足以胜任关系数据库、任务队列、搜索引擎全文索引、NoSQL、存小文件等多种功能，不用去学习、维护一堆满满是坑的古怪系统",
          "tags": ["Postgre", "Database"]
        },
        {
          "id": "6",
          "title": "Google 的软件工程概述",
          "link": "https://mp.weixin.qq.com/s?__biz=MzA4NTc3NzE5OQ==&mid=2652726103&idx=1&sn=66c2c341dd73eb38f256e30dd530e747&key=7fdf1ac694355c5a0c01d59b0c7b337602219e5f2bd64b924aeca818cb37eafb848c10b114ce9a770ba114ab198636a1f940a36e203577839bdefebb75c1e7c3512690e82018c56c0ee3885a4a011faf&ascene=0&uin=NTc5MjA1&devicetype=iMac+MacBookAir6,2+OSX+OSX+10.12.3+build(16D32)&version=12010310&nettype=WIFI&fontScale=100&pass_ticket=V42LBZ273800RRy0MAH51evCsnsUG/hXD6lse3hI1Zw=",
          "comment": "写的很详细很全，值得一看。",
          "tags": ["Google", "软件工程"]
        },
        {
          "id": "7",
          "title": "滴滴出行技术总监：关于技术选型的那些事儿",
          "link": "http://36kr.com/p/5065178.html?ktm_source=feed",
          "comment": "也是一个 Fullstack 团队，有 go 有 vue，喜闻乐见。",
          "tags": ["滴滴", "技术选型"]
        },
        {
          "id": "8",
          "title": "根本停不下来！给它一个轮廓，TensorFlow 还你一只完整的喵",
          "link": "http://36kr.com/p/5064717.html?ktm_source=feed",
          "comment": "TensorFlow for fun.",
          "tags": ["TensorFlow"]
        }
      ]
    },
    {
      "id": "10",
      "date": "2017-02-10",
      "count": "9",
      "articles": [
        {
          "id": "1",
          "title": "WeexConf 2017：Weex 新版发布，推出 Market 插件市场",
          "link": "http://www.infoq.com/cn/news/2017/01/weex-conf-2017",
          "comment": "&quot;Rax：使用 React 语法写 Weex 应用&quot;",
          "tags": ["Weex", "Vue"]
        },
        {
          "id": "2",
          "title": "Dismissing Python Garbage Collection at Instagram",
          "link": "https://engineering.instagram.com/dismissing-python-garbage-collection-at-instagram-4dca40b29172#.uv0zdny9u",
          "comment": "Instagram 也是跑在 django 上，它们禁用了 Python GC 机制，运行效率提升了10%。你没听错，禁用后减少了内存占用提高了 CPU LLC cache 命中率。",
          "tags": ["Python", "GC", "Instagram"]
        },
        {
          "id": "3",
          "title": "Fabric is Joining Google",
          "link": "https://fabric.io/blog/fabric-joins-google",
          "comment": "“快要倒闭”的 Twitter 开始了自己的瘦身行动，将当年收购来的 Fabric 转卖给 Google。可以确定的是 Crash 统计工具 Crashlytics 将会被继承到 Firebase 中。同时，同属 Fabric 旗下的 Fastlane 同其作者也加入了 Google。",
          "tags": ["Twitter", "Google", "Fastlane", "Fabric", "Crashlytics"]
        },
        {
          "id": "4",
          "title": "Airbnb React/JSX Style Guide",
          "link": "https://github.com/airbnb/javascript/tree/master/react",
          "comment": "Airbnb 在“代码风格”影响甚广，这回它们推出了针对了 React 的代码指南。",
          "tags": ["JavaScript", "CodeStyle", "Airbnb", "React"]
        },
        {
          "id": "5",
          "title": "JavaScript 很少为人所知的玩法",
          "link": "https://makerdiary.co/interesting-things-about-javascript/",
          "comment": "本文讲述了 JS 在硬件及嵌入式场景方面的应用，人工智能时代，JS 也可以愉快的玩起来。",
          "tags": ["Javascript", "JerryScript", "Blockly", "硬件"]
        },
        {
          "id": "6",
          "title": "Google 发布新的图像压缩技术，最高可节省75％带宽",
          "link": "http://mp.weixin.qq.com/s?__biz=MzA5Nzc4OTA1Mw==&mid=2659598877&idx=1&sn=704e7d5a05adaff567c9adf015753124",
          "comment": "与其说是图片压缩技术，还不如说是图片还原技术，谷歌的黑科技 RAISR 利用机器学习来还原图像，逆向思维，未来的应用场景感觉非常广泛，值得了解，Google 称在 Motion Stills（生成 gif 图的 app）和 Google+ 上已经应用了 RAISR，可以体验下",
          "tags": ["Google", "图像", "压缩", "算法", "RAISR"]
        },
        {
          "id": "7",
          "title": "GitLab 事故之技术详叙：抢救后恢复在线，已确定下一步计划",
          "link": "http://www.infoq.com/cn/news/2017/02/Technical-details-accident-GitLa",
          "comment": "大概是春节期间比较圈内最大的一件事了。“事故处理过程中，GitLab 采用了开放的态度，事故发生后第一时间对外公布，并对处理过程进行现场直播，让全世界所有程序员都有机会一起参与恢复过程。”",
          "tags": ["GitLab"]
        },
        {
          "id": "8",
          "title": "Pattern Matching 的意义",
          "link": "http://mrpeak.cn/blog/pattern-matching",
          "comment": "Pattren Matching 的意义非常简单，但是在 Swift 语言中有很多表现形式。很多 Swift 初学者都感觉语言太灵活、不容易掌握，在学习时应当理解各种 API 背后的设计思想。本文通过 Swift 语言，介绍了 Pattren Matching 的意义。",
          "tags": ["Swift", "Pattern Matching"]
        },
        {
          "id": "9",
          "title": "Baymax：网易 iOS App 运行时 Crash 自动防护实践",
          "link": "https://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=2651113088&idx=1&sn=10b28d7fbcdf0def1a47113e5505728d",
          "comment": "详细解释了各种 crash 的原理，以及解决方法的设计思路。百度医生的 FaultTolerance 实现了文章中的大部分特性，而这篇文章详细阐述了原理。",
          "tags": ["iOS", "crash"]
        }
      ]
    },
    {
      "id": "11",
      "date": "2017-01-17",
      "count": "10",
      "articles": [
        {
          "id": "1",
          "title": "我的通行你的证",
          "link": "http://lvwei.me/passport.html",
          "comment": "关于各种账号通行证相关的安全风险，可能没有比这个更全的了，cookie、OAuth、各类 csrf 全都有。",
          "tags": ["账号通行证", "安全"]
        },
        {
          "id": "2",
          "title": "从 Chrome 源码看浏览器如何构建 DOM 树",
          "link": "https://zhuanlan.zhihu.com/p/24911872",
          "comment": "Chromium、WebKit、V8内核的文章非常少，导致浏览器和 JS 引擎基本是个黑盒，这篇可以一看。",
          "tags": ["Chrome", "DOM", "内核"]
        },
        {
          "id": "3",
          "title": "Clean-code-javascript",
          "link": "https://github.com/ryanmcdermott/clean-code-javascript",
          "comment": "JavaScript 的一些可以借鉴的写法，平时 coding 的时候可能会被忽略。",
          "tags": ["javascript"]
        },
        {
          "id": "4",
          "title": "危险的 UITableView",
          "link": "http://mrpeak.cn/blog/tableview-danger",
          "comment": "为何执行 UITableView 的 reloadData 方法时经常会出现 crash？作者给出了原因和两个解决方案，同时提醒读者注意异步编程可能带来的隐患，以及为何异步的响应式编程总是和无状态的函数式编程结对出现。",
          "tags": ["iOS", "异步", "FRP"]
        },
        {
          "id": "5",
          "title": "iOS 编程中 throttle 那些事",
          "link": "http://mrpeak.cn/blog/ios-throttle/",
          "comment": "介绍了“节流”的思想，并给出了 iOS 中三种节流的实际场景。",
          "tags": ["iOS", "throttle"]
        },
        {
          "id": "6",
          "title": "tieba arch 双月刊",
          "link": "http://arch.tieba.baidu.com/book/tech_bimonthly/",
          "comment": "贴吧 arch 团队推出的双月刊，内容关于贴吧项目总结及一些技术类文章，推荐阅读。",
          "tags": ["TiebaArch周刊"]
        },
        {
          "id": "7",
          "title": "The 280-Year-Old Algorithm Inside Google Trips",
          "link": "https://research.googleblog.com/2016/09/the-280-year-old-algorithm-inside.html",
          "comment": "本文以280年前欧拉提出的哥尼斯堡“七桥”问题作为引子，讲了 Google 旅游如何进行行程规划的。",
          "tags": ["Google", "算法", "欧拉", "图论"]
        },
        {
          "id": "8",
          "title": "Grumpy：Google 用 Go 开发的 Python 运行时",
          "link": "http://www.infoq.com/cn/news/2017/01/Grumpy-Google-Go-Python",
          "comment": "本来以为是 JVM 跑脚本语言的节奏，细看了发现简直是 Python 界的 hiphop。",
          "tags": ["Go", "Python"]
        },
        {
          "id": "9",
          "title": "Swift 之父 Chris Lattner 将从 Apple 离职，加入特斯拉",
          "link": "http://www.infoq.com/cn/news/2017/01/Chris-leave-apple",
          "comment": "1 月 10 日，Swift 编程语言之父 Chris Lattner 在 swift-evolution 邮件列表中宣布，他将于本月底离开 Apple，Ted Kremenek 将接替他成为 Swift 项目的领导者。特斯拉的官方博客在之后发文，欢迎 Chris 加盟特斯拉，领导自动驾驶团队，加速未来驾驶技术的发展。",
          "tags": ["Swift", "News"]
        },
        {
          "id": "10",
          "title": "Code Style Configuration in the VS2017 RC Update",
          "link": "https://blogs.msdn.microsoft.com/dotnet/2016/12/15/code-style-configuration-in-the-vs2017-rc-update/",
          "comment": "近年微软紧随业界潮流，Visual Studio 2017 RC 开始支持 EditorConfig。",
          "tags": ["微软", "VisualStudio", "EditorConfig"]
        }
      ]
    },
    {
      "id": "12",
      "date": "2017-01-10",
      "count": "9",
      "articles": [
        {
          "id": "1",
          "title": "存储效率优化实战：从50PB到32PB",
          "link": "http://www.infoq.com/cn/news/2017/01/Efficient-Storage-50-32-PB",
          "comment": "两年前，随着俄罗斯卢布汇率下跌，俄罗斯最受欢迎的邮件服务商之一 Mail.Ru 开始考虑缩减邮件服务的硬件和托管成本。他们自行设计实现了一套邮件存储去重系统，在不影响性能的前提下，将包含120亿个邮件内嵌文件的存储系统占用量从原本的50PB缩减至32PB。",
          "tags": ["存储", "优化"]
        },
        {
          "id": "2",
          "title": "Libev 事件库源码阅读笔记",
          "link": "https://dirtysalt.github.io/libev.html",
          "comment": "Libev 是目前比较主流的事件库，代码比较难理解，此篇是 Libev 事件库的一篇很好的注解文章。",
          "tags": ["Libev"]
        },
        {
          "id": "3",
          "title": "redis 存储海量小数据，如何优化内存使用",
          "link": "http://zzyongx.github.io/blogs/redis-memory-optimization-when-store-small-data.html",
          "comment": "Redis 存储海量小数据时的优化实践，包括对数据进行二进制压缩、使用 Hash（与 Instagram 的策略一样）等技巧。",
          "tags": ["Redis", "内存优化"]
        },
        {
          "id": "4",
          "title": "深入剖析 iOS 编译 Clang LLVM",
          "link": "https://github.com/ming1016/study/wiki/%E6%B7%B1%E5%85%A5%E5%89%96%E6%9E%90-iOS-%E7%BC%96%E8%AF%91-Clang---LLVM",
          "comment": "对 iOS 编译的所有知识点都进行了总结。编译步骤写得非常详细，给出了每一步的命令。",
          "tags": ["iOS", "编译"]
        },
        {
          "id": "5",
          "title": "iOS 即时通讯，从入门到“放弃”？",
          "link": "http://www.jianshu.com/p/2dbb360886a8",
          "comment": "本文用实例的方式，将 iOS 各种 IM 的方案都简单的实现一遍。并且提供一些选型、实现细节以及优化的建议。所有示例代码均有完整下载。",
          "tags": ["iOS", "IM"]
        },
        {
          "id": "6",
          "title": "摩拜单车微信小程序开发技术总结",
          "link": "https://segmentfault.com/a/1190000008056208",
          "comment": "微信于17.1.9日开放了小程序，大家期待已久的微信小程序是否能够拯救16g 呢？文章是摩拜单车微信小程序的开发总结。内容虽少，但是小程序的一个实例，可以借鉴。",
          "tags": ["微信小程序", "前端"]
        },
        {
          "id": "7",
          "title": "美国的“大众点评网”Yelp 如何利用深度学习对美食照片进行评分",
          "link": "http://mp.weixin.qq.com/s?__biz=MzA5NzkxMzg1Nw==&mid=2653161810&idx=1&sn=5832fec0d5d1fb1be228aa34f93410ef&chksm=8b49343cbc3ebd2a794426b23b682f34a11ceeba11410fdfe8d8596cf727a947ca3e44a0c3e3#rd",
          "comment": "很有意思的思路，使用深度学习来给图片打分。PS：“虚化”的评分更高，机器都知道！",
          "tags": ["Yelp", "深度学习"]
        },
        {
          "id": "8",
          "title": "微软部署 FPGA 的三个阶段：Bing、Azure 网络和数据中心",
          "link": "https://www.zhihu.com/question/24174597/answer/138717507",
          "comment": "微软使用 FPGA 在专用计算加速方面的实践经验。",
          "tags": ["Microsoft", "FPGA"]
        },
        {
          "id": "9",
          "title": "tiobe 公布最新语言排行",
          "link": "http://www.tiobe.com/tiobe-index/",
          "comment": "此排行每月更新，大家可以关注。Golang 在16年受欢迎程度有了一定提升，Javascript 领域在16年 React Native 等技术的发展也有了小幅度提升...",
          "tags": ["编程语言排行"]
        }
      ]
    },
    {
      "id": "13",
      "date": "2017-01-03",
      "count": "11",
      "articles": [
        {
          "id": "1",
          "title": "PHP 的性能演进(从 PHP5.0 到 PHP7.1 的性能全评测)",
          "link": "http://www.laruence.com/2016/12/18/3137.html",
          "comment": "鸟哥写的 PHP 性能优化的历程，并且透露了将在 PHP8 中加入 jit。",
          "tags": ["PHP", "性能", "PHP7"]
        },
        {
          "id": "2",
          "title": "高并发 IM 系统架构优化实践",
          "link": "https://yq.aliyun.com/articles/66461",
          "comment": "如何设计一个稳定、高并发、消息保序的 IM 系统，以及如何通过使用存储层的高级功能来优化系统架构。",
          "tags": ["IM", "高并发", "架构"]
        },
        {
          "id": "3",
          "title": "微信宣布开源跨平台基础组件 Mars: Talk is cheap, show you their code.",
          "link": "https://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650995135&idx=3&sn=4f56c808d11e65aa68035d54eb8fa867&chksm=bdbf01ec8ac888faf0017ab41ebcff03817af5528606c3598767b4ea77256259f0b5865949b3&mpshare=1&scene=1&srcid=1229WLCnkKq9d6atAaX5PeZG&key=2f8b24ba685fccbe28615d4233e8e8b52bfc90ea4fb51560905c64be8fbc5924b9b6095a2358025c76781d065c94606d900c9aa478507a0632c0181519da73899ccc4a516ecf3020270686d0975a54e5&ascene=0&uin=NTc5MjA1&devicetype=iMac+MacBookPro12,1+OSX+OSX+10.12.2+build(16C67)&version=12010210&nettype=WIFI&fontScale=100&pass_ticket=XREDW+E3f8kq1X0+TcZmDnyxT2K+VU0V+i+sBA37Mk0=",
          "comment": "“这个用 C++ 完成的跨平台库解决了国内很多复杂网络情况下的网络连接问题，在经历了微信 5 亿用户的检验之后，腾讯在今天把它开源出来了。相信这个网络库会极大地造福国内的移动开发者，使得大家不用在为各种网络环境下的传输优化头疼。”",
          "tags": ["微信", "网络库"]
        },
        {
          "id": "4",
          "title": "OCS——史上最疯狂的 iOS 动态化方案",
          "link": "http://www.jianshu.com/p/6c756ce76758",
          "comment": "号称史上最疯狂的 iOS 动态化方案。定义了一套精确描述 OC 语义的字节码指令集(OCScript)，开发了一套全自动编译器（OCSCompiler），实现了一个高性能的虚拟机（OCSVM）以及一个可以跟底层无缝对接的桥接器(OCSBridge)......",
          "tags": ["iOS动态化"]
        },
        {
          "id": "5",
          "title": "如何用 Xcode8解决多线程问题",
          "link": "http://mrpeak.cn/blog/thread-sanitizer",
          "comment": "Xcode8的 Thread Sanitizer 工具可以用来检测 data race 情况，工具使用很简单。本文主要介绍了 data race 的概念及多线程安全方面的知识。",
          "tags": ["iOS", "多线程"]
        },
        {
          "id": "6",
          "title": "2016前端开发技术巡礼",
          "link": "http://www.infoq.com/cn/articles/2016-review-frontend",
          "comment": "2016的前端圈，风起云涌，此文比较详尽的总结概括了2016年的前端事宜，值得一看",
          "tags": ["frontend", "2016", "review"]
        },
        {
          "id": "7",
          "title": "Vue in 2016",
          "link": "https://medium.com/the-vue-point/vue-in-2016-8df71d98bfb3#.ylma84xz9",
          "comment": "尤雨溪自己写的 Vue.js 年终总结",
          "tags": ["vue"]
        },
        {
          "id": "8",
          "title": "架构随聊",
          "link": "http://www.cnblogs.com/Zachary-Fan/p/ArchitectureChat.html",
          "comment": "软件开发的终极目标是实现一套理想框架，适配多种场景。而随着软件开发的迭代人们会总结出一套规范标准，以达到高可复用性。文章对架构浅显谈及。",
          "tags": ["软件工程", "架构"]
        },
        {
          "id": "9",
          "title": "如何判断当前浏览器是否支持某一个 emoji",
          "link": "http://www.jianshu.com/p/52fe1ff46f93",
          "comment": "emoji 在人们的社交领域里经常被使用，作为前端工程师，你是否了解 emoji 的实现原理，是否指导如何判断设备是否支持某个 emoji，此文带你了解",
          "tags": ["emoji", "javascript", "font"]
        },
        {
          "id": "10",
          "title": "redux applyMiddleware 原理剖析",
          "link": "http://www.jianshu.com/p/47887299cabb",
          "comment": "用 redux 多半都会用到中间件，有必要了解下前因后果",
          "tags": ["redux", "applyMiddleware", "react"]
        },
        {
          "id": "11",
          "title": "Oculus 正式发布 React VR 预览版",
          "link": "http://www.infoq.com/cn/news/2016/12/Oculus-React-VR",
          "comment": "Oculus 推出 React VR 的目的是为了简化 VR Web 应用的开发。VR Web 应用对帧率的要求越来越高，这意味着开发 VR Web 应用的复杂性也在增加。React VR 希望可以做到让开发者在保持现有开发习惯和使用现有工具的前提下，能够维持 Web 开发的高速迭代。",
          "tags": ["Oculus", "VR", "React"]
        }
      ]
    },
    {
      "id": "14",
      "date": "2016-12-27",
      "count": "11",
      "articles": [
        {
          "id": "1",
          "title": "服务降级背后的技术架构设计",
          "link": "http://mp.weixin.qq.com/s/cfWwjhKgDXMSQ3BzJ_S2Ag",
          "comment": "京东的服务降级方案，介绍了京东是如何支撑5000+ 的降级预案的",
          "tags": ["微服务", "架构", "运维", "降级"]
        },
        {
          "id": "2",
          "title": "Dropbox 是如何安全地存储用户密码的",
          "link": "http://www.infoq.com/cn/news/2016/12/How-Dropbox-securely-passwords",
          "comment": "我们日常往往一次 md5加密，但按照 Dropbox 的考虑暴力破解虽然耗费时间，但被“猜”出密码是迟早的事，所以需要3次加密。",
          "tags": ["密码", "加密"]
        },
        {
          "id": "3",
          "title": "Laravel 的核心概念",
          "link": "https://lufficc.com/blog/the-core-conception-of-laravel",
          "comment": "从生命周期角度来了解 Laravel 的设计。对于 Ap，亦可以如此。",
          "tags": ["PHP", "Laravel"]
        },
        {
          "id": "4",
          "title": "iOS 动态化的故事",
          "link": "http://blog.cnbang.net/tech/3286/",
          "comment": "把所有 iOS 动态化方案列了一遍，没有深入，让读者对 iOS 动态化有个大致的了解",
          "tags": ["iOS", "动态化"]
        },
        {
          "id": "5",
          "title": "从 Swift 看 Objective-C 的数组使用",
          "link": "https://mp.weixin.qq.com/s?__biz=MzI5MjEzNzA1MA==&mid=2650264304&idx=1&sn=f2ce7fb435b3c435fe11f01b559aefb8",
          "comment": "详细介绍了 NSArrray 的内存布局以及 Swift 中的 COW 特性。通过本文也让你更加明白，为何 NSDictionary、NSArray、NSString 等类型的 property，要用 copy 修饰符。",
          "tags": ["Objective-C", "Swift", "多线程安全"]
        },
        {
          "id": "6",
          "title": "扯淡：这一周感觉经历了一次技术爆炸",
          "link": "http://awhisper.github.io/2016/12/22/%E6%89%AF%E6%B7%A1:%E8%BF%99%E4%B8%80%E5%91%A8%E6%84%9F%E8%A7%89%E7%BB%8F%E5%8E%86%E4%BA%86%E4%B8%80%E6%AC%A1%E6%8A%80%E6%9C%AF%E7%88%86%E7%82%B8/",
          "comment": "本周(2016.12.19-12.25)有两位 iOS 大神在博客上发表了有关动态化的文章。sunny 介绍了滴滴的 DynamicCocoa；JSPatch 作者 bang 发表了一遍总结性的文章《iOS 动态化的故事》，里面提到手机 QQ 的动态化方案。面对这些，本文作者说出了他的感受。虽然文章没有深入，但让人感同身受。一开始在 iOS 上编程，只是使用了苹果提供的 ABI，并不知道后面的运行原理。最近动态化项目的不断曝光，让我们有幸能窥到一些底层原理，让我们感受到知识爆炸。",
          "tags": ["iOS", "动态化"]
        },
        {
          "id": "7",
          "title": "聊聊 js 代码异常监控",
          "link": "http://www.cnblogs.com/xianyulaodi/p/6201829.html",
          "comment": "文章对线上 js 报错问题提出了一种解决方案，利用 window.onerror 来捕获异常",
          "tags": ["前端", "JavaScript", "异常追踪"]
        },
        {
          "id": "8",
          "title": "5 things you can do with Yarn",
          "link": "https://auth0.com/blog/five-things-you-can-do-with-yarn/",
          "comment": "现在前端包管理工具有很多种，大家熟知的 npm 就是其中之一，而 facebook 近期推出了 yarn 这个包管理工具，它有什么优于 npm 的特性呢，文章从简单几个方面介绍了 yarn，这里是其翻译版：http://www.zcfy.cc/article/5-things-you-can-do-with-yarn-2055.html",
          "tags": ["javascript", "yarn", "包管理"]
        },
        {
          "id": "9",
          "title": "2017年单身程序猿编程学习必备清单",
          "link": "http://igeekbar.com/igeekbar/post/167.htm?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io",
          "comment": "2016年前后端技术盘点和推荐",
          "tags": ["前端", "后端", "总结"]
        },
        {
          "id": "10",
          "title": "扎克伯格分享自家 AI 管理系统 Jarvis 的构建过程",
          "link": "http://www.infoq.com/cn/news/2016/12/Zuckerberg-own-AI-Jarvis-process",
          "comment": "马克·扎克伯格在2016年12月19日发布了一篇博文，分享自己为家里构建 AI 管理系统、实现家居自动化控制的思路和过程。该 AI 管理系统被扎克伯格命名为 Jarvis（《钢铁侠》中的贾维斯）。",
          "tags": ["扎克伯格", "AI"]
        },
        {
          "id": "11",
          "title": "树莓派守护者",
          "link": "http://blog.just4fun.site/pi-guardian.html",
          "comment": "随着智能硬件和人工智能技术门槛的降低，我们完全可以自己 DIY 一些真正的智能硬件。比如：扎克伯格就自制了一套智能家居系统 Jarvis。对于本文来说，主要内容是：“有了树莓派守护者，你就可以不必反锁房门，在你的电脑上做任何事儿, 不用担心被察觉啦”",
          "tags": ["RaspberryPI", "报警器"]
        }
      ]
    },
    {
      "id": "15",
      "date": "2016-12-20",
      "count": "7",
      "articles": [
        {
          "id": "1",
          "title": "MySQL 索引背后的数据结构及算法原理",
          "link": "http://blog.codinglabs.org/articles/theory-of-mysql-index.html",
          "comment": "深入剖析 MySQL 索引的数据结构设计，算法实现，以及在查询过程中如何命中索引；理解了这些背后的原理，有助于 RD 在以后开发中合理的创建索引，提高性能。",
          "tags": ["MySQL", "索引"]
        },
        {
          "id": "2",
          "title": "高并发实时直播弹幕研发实践",
          "link": "http://blog.qiniu.com/archives/7415",
          "comment": "目前直播中的互动不断升级，如何实现一个极高并发的直播实时弹幕系统是一项非常有挑战的工作，本文重点分析了高并发的弹幕系统中面临的挑战以及针对这些挑战的架构设计要领。",
          "tags": ["直播", "互动", "弹幕", "高并发"]
        },
        {
          "id": "3",
          "title": "阿里移动11.11 | Weex 在双十一会场的大规模应用",
          "link": "http://mp.weixin.qq.com/s/2ZdTFGHOT0MDgxsmpLustw",
          "comment": "阿里在双十一的会场页面中已经很大量的应用了 Weex（80%左右），文章从业务支撑、稳定性保障和“秒开”上讲述了它们的应用。",
          "tags": ["Weex"]
        },
        {
          "id": "4",
          "title": "Yoga: A cross-platform layout engine",
          "link": "https://facebook.github.io/yoga/",
          "comment": "一个跨平台的布局引擎，在 React Native 里得到了很好的应用，yoga 这个名字，宝宝表示很喜欢！",
          "tags": ["flexbox", "yoga", "layout", "cross-platform"]
        },
        {
          "id": "5",
          "title": "微信读书 iOS 质量保证及性能监控",
          "link": "http://wereadteam.github.io/2016/12/12/Monitor/",
          "comment": "微信读书架构分为五层：网络层、数据层、业务层、UI 数据层、UI 层，本文介绍了每层中的质量及性能监控方法",
          "tags": ["iOS", "质量", "性能", "监控"]
        },
        {
          "id": "6",
          "title": "DynamicCocoa：滴滴 iOS 动态化方案的诞生与起航",
          "link": "http://www.cnblogs.com/twobin/p/3395086.html",
          "comment": "同样是 OC-JS 转换，可以做到只用 OC 开发",
          "tags": ["iOS", "动态化"]
        },
        {
          "id": "7",
          "title": "跟着 Github 学习 Restful HTTP API 设计",
          "link": "http://cizixs.com/2016/12/12/restful-api-design-guide",
          "comment": "以 GitHub API 为例子，体会如何设计 API",
          "tags": ["Restful", "API"]
        }
      ]
    },
    {
      "id": "16",
      "date": "2016-12-13",
      "count": "12",
      "articles": [
        {
          "id": "1",
          "title": "微信异步化改造实践：8亿月活、万台机器背后的解决方案",
          "link": "https://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650994996&idx=1&sn=e13c69b6afb38bd93e78966a3ba4e6f4&chksm=bdbf01678ac888716fd3a9949f6a45378507644699acc0e9edc75a356c7bb2d2c5ba32cce151&mpshare=1&scene=1&srcid=1207WuGo8zjwzysmau1dBa7A&key=9ed31d4918c154c8dc04c04f541f90d4f3ebab83116d7cd1f49b66d0aceb307687b96c47e1aaa1aa0ac3c86cef36fa04315390a5c5a4912bb7727220ef45582795428f1d8b733530811c23daad5e8210&ascene=0&uin=NTc5MjA1&devicetype=iMac+MacBookPro12,1+OSX+OSX+10.12.1+build(16B2555)&version=12010010&nettype=WIFI&fontScale=100&pass_ticket=Z5eKt0BnsIxnpxeUPFksWnlZLYlbdahIqKpYstUNiSQ=",
          "comment": "微信的异步改造，使用自研开源协程库 libco。在整个的改造过程中，业务逻辑代码基本没有改变，修改只是在框架层代码。",
          "tags": ["微信", "协程"]
        },
        {
          "id": "2",
          "title": "Indeed’s A/B Testing Framework",
          "link": "http://engineering.indeedblog.com/blog/2014/06/proctor-a-b-testing-framework/",
          "comment": "结合 Indeed 公司实际，讲述 A/B Testing 在产品设计中的意义，更重要的是有切实可行的工程化方案，附带框架源码和实验配置平台",
          "tags": ["A/B Testing"]
        },
        {
          "id": "3",
          "title": "为什么 objc_msgSend 必须用汇编实现（翻译）",
          "link": "http://tutuge.me/2016/06/19/translation-why-objcmsgsend-must-be-written-in-assembly/",
          "comment": "如题目所述，解释了为什么 objc_msgSend 必须用汇编实现。扩宽底层知识",
          "tags": ["汇编", "Objective-C", "runtime"]
        },
        {
          "id": "4",
          "title": "AvoidCrash,远离常见的崩溃",
          "link": "https://github.com/chenfanfang/AvoidCrash",
          "comment": "作者介绍了自己开发的预防 crash 项目，还列出了 Foundation 中常见的 crash。各家 App 都有类似的工具，不必使用作者的，而 crash 列表总结的非常详细，值得用来查漏补缺。",
          "tags": ["Objective-C", "crash", "runtime"]
        },
        {
          "id": "5",
          "title": "饿了么是怎么让 Image 变成详情页的",
          "link": "http://androidwing.net/index.php/153",
          "comment": "新版饿了吗进入商品详情页的交互确实吊炸天，有兴许可以研究一下其中的原理",
          "tags": ["用户体验", "交互设计", "app"]
        },
        {
          "id": "6",
          "title": "2016年前端开发者深度调研，看看别人使用什么技术体系",
          "link": "https://segmentfault.com/a/1190000007666924",
          "comment": "比较全面的调研了前端技术体系的使用情况，可以给大家参考了解下别人都在用什么技术",
          "tags": ["javascript", "css"]
        },
        {
          "id": "7",
          "title": "OpenResty 2016 新发展",
          "link": "https://openresty.org/slides/New-development-of-OpenResty-in-2016.pdf",
          "comment": "第二届 OpenResty Con 12月10日在深圳举行，@agentzh 的演讲稿",
          "tags": ["OpenResty"]
        },
        {
          "id": "8",
          "title": "Redis 4.0 新功能简介",
          "link": "http://blog.huangz.me/diary/2016/redis-4-outline.html",
          "comment": "Redis 4.0 来了，带来了扩展模块、psync 2.0、LRU 优化等",
          "tags": ["Redis"]
        },
        {
          "id": "9",
          "title": "从 Node.js 到 Golang 的迁徙之路",
          "link": "https://github.com/xitu/gold-miner/blob/master/TODO/the-way-of-the-gopher.md",
          "comment": "“I/O 或许不会阻塞服务器，但是你的代码会啊。”文中使用的🔥火焰图是个很好的性能分析工具。",
          "tags": ["Node.js", "Golang"]
        },
        {
          "id": "10",
          "title": "面向协议编程，灵丹妙药或是饮鸩止渴？",
          "link": "https://github.com/xitu/gold-miner/blob/master/TODO/protocol-oriented-programming.md",
          "comment": "在 Swift 中，面向协议编程正值流行。许多 Swift 框架都自称是面向协议编程的，一些开源库甚至将其标榜为特点。而我认为，很多时候眼下的问题本可以用一种更简单的方法解决，但是在 Swift 中我们过度使用各种协议了。简言之：不要教条地使用（或避免）协议。",
          "tags": ["Swift", "pop"]
        },
        {
          "id": "11",
          "title": "The Languages, Frameworks and Tools You Should Learn in 2017",
          "link": "http://tutorialzine.com/2016/12/the-languages-frameworks-tools-you-should-learn-in-2017/",
          "comment": "2017年应该学习的语言、框架和工具。",
          "tags": ["Languages", "Frameworks", "Tools"]
        },
        {
          "id": "12",
          "title": "当 APP 加载慢的时候如何机智甩锅？",
          "link": "http://mp.weixin.qq.com/s/TVi8rfRlnMGypOBHDBlVzg",
          "comment": "用户体验绝对是影响一个产品成功与否的关键点之一，文章讲的不单单是 app 加载慢这个情景",
          "tags": ["用户体验", "app"]
        }
      ]
    },
    {
      "id": "17",
      "date": "2016-12-06",
      "count": "8",
      "articles": [
        {
          "id": "1",
          "title": "Redis 和 I/O 多路复用",
          "link": "http://gold.xitu.io/post/583d11bd128fe1006bf0ec0f",
          "comment": "优雅简洁的 Redis I/O 多路复用实现。",
          "tags": ["Redis", "IO", "多路复用"]
        },
        {
          "id": "2",
          "title": "HTTP 2.0的那些事",
          "link": "http://mrpeak.cn/blog/http2/",
          "comment": "介绍了 HTTP 从1.x 到 SPDY，再到 HTTP2.0的一些主要变迁技术点，以及 HTTP2.0的应用现状。如果要在自己的 App 中加入 server push，处理自己创建 Socket 并自定义协议之外，还可以尝试一下 HTTP2.0",
          "tags": ["http", "网络性能", "App"]
        },
        {
          "id": "3",
          "title": "《银行的一天》演示日志处理保序、不丢、不重",
          "link": "https://yq.aliyun.com/articles/59400",
          "comment": "日志处理是一个很大范畴，其中包括实时计算、数据仓库、离线计算等众多的点。这篇文章主要目的为了讨论如何在实时计算场景中，如何能做到日志处理保序、不丢失、不重复，并且在上下游业务系统不可靠（存在故障），业务流量剧烈波动情况下，如何保持这三点。",
          "tags": ["日志"]
        },
        {
          "id": "4",
          "title": "酷狗 Android App 插件化实施过程",
          "link": "http://www.diycode.cc/topics/442",
          "comment": "文章介绍了 Android 插件化概念，并且介绍业界流行的两种插件化方法。再通过酷狗 App 的插件化实践，来介绍插件化实施过程。",
          "tags": ["Android", "插件化", "插件化实践"]
        },
        {
          "id": "5",
          "title": "Redesigning the HHVM JIT compiler for better performance",
          "link": "https://code.facebook.com/posts/156835038101894/redesigning-the-hhvm-jit-compiler-for-better-performance/",
          "comment": "重新设计 HHVM JIT 编译器，为了更好的性能",
          "tags": ["HHVM", "PHP", "facebook"]
        },
        {
          "id": "6",
          "title": "How we switched our template rendering engine to React",
          "link": "https://engineering.pinterest.com/blog/how-we-switched-our-template-rendering-engine-react",
          "comment": "Pinterest 服务端&amp;客户端的模版引擎起初都是以 Python 为基础的 Jinja，需要同时维护两套语法相同的引擎。在增加了维护成本的同时，也带来了很多 bug。于是，他们统一迁移成了服务端 Node 渲染 React 的模式。",
          "tags": ["Pinterest", "React", "模板引擎"]
        },
        {
          "id": "7",
          "title": "如何用十条命令在一分钟内检查 Linux 服务器性能",
          "link": "http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650994146&idx=1&sn=f6b0987a06831805b4c343c417121827&chksm=bdbf0db18ac884a7166b4f440f577148b72d08b6ec72f368a4e7898877cbadfa36b2a1cba1c0&scene=0#wechat_redirect",
          "comment": "Netflix 的运维经验",
          "tags": ["运维", "linux"]
        },
        {
          "id": "8",
          "title": "你的名字",
          "link": "https://github.com/egoist/your-name",
          "comment": "你的名字，非官方命令行工具",
          "tags": ["有趣的", "工具"]
        }
      ]
    },
    {
      "id": "18",
      "date": "2016-11-29",
      "count": "8",
      "articles": [
        {
          "id": "1",
          "title": "从0到1打造直播 App",
          "link": "http://dev.qq.com/topic/5811d42e7fd6ec467453bf58",
          "comment": "在这个全民娱乐的时代，直播已经火得不要不要的，各大公司都有自己的直播产品。本文主要从直播的一些基本知识，一步步打造直播 app。直播那么火的背后有什么样的技术支撑呢？",
          "tags": ["直播"]
        },
        {
          "id": "2",
          "title": "Facebook 是如何支持80万并发视频流直播的？",
          "link": "http://mp.weixin.qq.com/s?__biz=MzA5Nzc4OTA1Mw==&mid=2659598533&idx=1&sn=f5d6169b8da6a8a09c7e7697546356ae&chksm=8be995d7bc9e1cc1286d4ff7edabcc2a52bbabb10b0933e1a85a5058b7c409f7e6f0e5d5a720#rd",
          "comment": "具备构建横跨全球的分布式服务能力的公司寥寥无几，甚至比拥有核武器的国家还要少。然而，Facebook 就是这样的一个公司，它的视频流直播系统 Facebook Live 就是一个横跨世界的分布式服务。",
          "tags": ["Facebook", "直播", "高并发"]
        },
        {
          "id": "3",
          "title": "以 Vuex 2.0 为例，提升源码分析技能",
          "link": "http://mp.weixin.qq.com/s?__biz=MzIwNjQwMzUwMQ==&mid=2247484597&idx=1&sn=b0be9d331906a0eb0cf5727cef7a29ac&chksm=97236677a054ef614251014667fc39c6119fa88ae56397f62bdbe557bf03fa2f2ed58265970b#rd",
          "comment": "Vuex 2.0 代码分析",
          "tags": ["vue", "vuex"]
        },
        {
          "id": "4",
          "title": "iOS 多线程到底不安全在哪里？",
          "link": "http://mp.weixin.qq.com/s/Pz1XdrAYDLrLeq97niT15g",
          "comment": "iOS 多线程不安全案例，循序渐进，由浅入深",
          "tags": ["iOS", "多线程"]
        },
        {
          "id": "5",
          "title": "深入理解 iOS 开发中的锁",
          "link": "https://bestswifter.com/ios-lock/",
          "comment": "介绍了 iOS 中各种锁的底层实现原理，让你熟悉互斥锁、原子操作、信号量、递归锁的概念。",
          "tags": ["iOS", "多线程"]
        },
        {
          "id": "6",
          "title": "优化 App 的启动时间",
          "link": "http://yulingtianxia.com/blog/2016/10/30/Optimizing-App-Startup-Time/",
          "comment": "结束了 Mach-O 加载到内存的方式以及加载动态库的步骤，真对动态库给出了加速 App 启动的几个方法",
          "tags": ["iOS", "Mach-O", "动态库", "启动加速"]
        },
        {
          "id": "7",
          "title": "疯狂的 JSONP",
          "link": "http://www.cnblogs.com/twobin/p/3395086.html",
          "comment": "何为跨域？何为 JSONP？JSONP 技术能实现什么？是否有必要使用 JSONP 技术？",
          "tags": ["javascript", "jsonp", "跨域"]
        },
        {
          "id": "8",
          "title": "MacOS 让终端命令使用全局代理",
          "link": "http://venmos-com.qiniudn.com/blog/2013/06/18/cli-proxy/",
          "comment": "开发中很多工具特别是包管理器一类会遭到 GFW 的误伤导致无法下载或者下载缓慢，如 RubyGems, Android 相关的等。Proxychains 可以帮你解决此类问题！",
          "tags": ["Mac", "终端", "代理"]
        }
      ]
    },
    {
      "id": "19",
      "date": "2016-11-22",
      "count": "11",
      "articles": [
        {
          "id": "1",
          "title": "Android 多个 React-Native 模块的实现及源码解读",
          "link": "http://bdapp.org/2016/11/16/React-Native-for-Android-with-multi-RNApp/",
          "comment": "原创文章。百度医生 React-Native for Android 实现简析。",
          "tags": ["Android", "ReactNative"]
        },
        {
          "id": "2",
          "title": "Google 是如何做到从不宕机的？",
          "link": "http://mp.weixin.qq.com/s?__biz=MzAwNzA0NTMzMQ==&mid=2653201877&idx=1&sn=574599f1aa45235cd4118ae8308d8053&scene=4#wechat_redirect",
          "comment": "根据 Google 官方的数据，2015年该公司旗下的 Google App 套件在 99.97% 的时间里都处于可用状态。Google 在过去的十年里一直对 SRE 默不作声，但是过去它在应对大规模高效率的网络操作时的确是这么做的。不过目前 Google 已经进入到一个新的阶段，它更愿意讨论 SRE 的相关问题了。",
          "tags": ["Google", "DevOps"]
        },
        {
          "id": "3",
          "title": "百度贴吧：复杂 Web 前端项目的构建工具优化实践",
          "link": "http://www.infoq.com/cn/articles/constructe-tool-optimize-for-complex-web-front-end-projects",
          "comment": "贴吧作为中国最大规模的 UGC 产品之一，在 PC 和移动端上承载了数亿用户的访问，在人员协作和前端架构上也面临较大的挑战。文章从图论的角度阐述了工程构建的本质，以及实现一个无穷复杂构建系统的思路。",
          "tags": ["前端构建"]
        },
        {
          "id": "4",
          "title": "从 Swift 的面向协议编程说开去",
          "link": "https://bestswifter.com/pop/",
          "comment": "Swift 的面向接口编程（POP）本质也是继承。本文详细讲解了面向对象编程（OOP）的方方面面，包括继承、组合的优缺点及使用场景，各语言多继承实现的机制及优缺点，可谓“OOP 最佳实践”。",
          "tags": ["OOP", "POP"]
        },
        {
          "id": "5",
          "title": "objc kvo 简单探索",
          "link": "http://blog.sunnyxx.com/2014/03/09/objc_kvo_secret/",
          "comment": "清晰介绍了 KVO 的实现方法。该作者特别喜欢思考系统底层库的实现方法，这篇文章也介绍了作者如何进行猜想和验证。",
          "tags": ["Objective-C", "KVO"]
        },
        {
          "id": "6",
          "title": "产品设计与开发中的破窗效应",
          "link": "http://www.infoq.com/cn/news/2016/11/Broken-window-design-development",
          "comment": "2016年5月31日，Tobias van Schneider 就在他的博客上分享了他的心得：“破窗效应”理论在产品设计与开发的应用中也是有效的。如果你感到项目的进度近乎停滞，给你带来烦躁的话，很可能就是因为“破窗效应”。博主讲解了“破窗效应”理论，并提出了如何在项目实施中应用“破窗效应”理论，从而让项目顺利进展。",
          "tags": ["破窗效应"]
        },
        {
          "id": "7",
          "title": "GraphQL，你准备好了么？",
          "link": "http://mp.weixin.qq.com/s?__biz=MzA3NDM0ODQwMw==&mid=2649827506&idx=1&sn=7eb23c6b15806382d6fdca5729bd7916&chksm=8704aaaeb07323b86b5bbd2f855cf1b3ccaef0e3d4fde8f6c7aebd5e4da9f9ceb3edb8ff542c&mpshare=1&scene=1&srcid=1115m1uV1Q3WFOJRCbeY6KhE#rd",
          "comment": "在大家还在讨论 RESTful 的时候，GraphQL 已经开始越来越多的投入生产状态了。它主要用于解决 RESTful 在现实使用中遇到的诸多问题。",
          "tags": ["API", "GraphQL"]
        },
        {
          "id": "8",
          "title": "一篇真正教会你开发移动端页面的文章",
          "link": "http://hcysun.me/2015/10/16/%E4%B8%80%E7%AF%87%E7%9C%9F%E6%AD%A3%E6%95%99%E4%BC%9A%E4%BD%A0%E5%BC%80%E5%8F%91%E7%A7%BB%E5%8A%A8%E7%AB%AF%E9%A1%B5%E9%9D%A2%E7%9A%84%E6%96%87%E7%AB%A0(%E4%B8%80)/",
          "comment": "虽然很老生常谈不过简单明了的讲解了移动页面适配原理以及解决方案。",
          "tags": ["移动页面适配"]
        },
        {
          "id": "9",
          "title": "ES6 - Arrow functions",
          "link": "http://exploringjs.com/es6/ch_arrow-functions.html",
          "comment": "es6 箭头函数 解决this指向问题（现在出现的中文资料有一些误区，大家可看英文原版）。",
          "tags": ["ES6"]
        },
        {
          "id": "10",
          "title": "SSH 原理与运用",
          "link": "http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html",
          "comment": "想必大家会经常使用到SSH，这两篇文章介了SSH的原理及使用方式，虽然是老文章，但内容绝对不会过时。&lt;br&gt;&lt;a href=&quot;http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html&quot; target=&quot;_blank&quot;&gt;SSH原理与运用（一）：远程登录&lt;/a&gt;&lt;br&gt;&lt;a href=&quot;http://www.ruanyifeng.com/blog/2011/12/ssh_port_forwarding.html&quot; target=&quot;_blank&quot;&gt;SSH原理与运用（二）：远程操作与端口转发&lt;/a&gt;",
          "tags": ["SSH", "Linux", "Protocol"]
        },
        {
          "id": "11",
          "title": "Evolution of Electron",
          "link": "http://cheng.guru/blog/2016/11/13/evolution-of-electron.html",
          "comment": "Electron 的出现大大方便了桌面应用的开发，我们可以使用 JavaScript 开发桌面应用。Electron 的作者分享了这个 slide 介绍 Eletron 的发展历程。",
          "tags": ["Electron"]
        }
      ]
    },
    {
      "id": "20",
      "date": "2016-11-15",
      "count": "10",
      "articles": [
        {
          "id": "1",
          "title": "localhost vs 127.0.0.1",
          "link": "http://mp.weixin.qq.com/s?__biz=MzAxOTc0NzExNg==&mid=2665513390&idx=1&sn=bf0715c8693f14cfbf5fd09737fa4845&chksm=80d679edb7a1f0fb30630fa9816cc307445d87827367f1a7ac0271a28e0279171bce9e558d82#rd",
          "comment": "用了这么多年的loacalhost，它的原理是啥你知道么？",
          "tags": ["TCP/IP", "loopback"]
        },
        {
          "id": "2",
          "title": "Web 缓存核心技术点需知",
          "link": "http://mp.weixin.qq.com/s?__biz=MzIyMDA1MzgyNw==&mid=2651968866&idx=1&sn=25554c31eac32e78664b962412f515de&chksm=8c349d4ebb431458bef22609db7e9e76d33035ad92c31cbb2d201d13ce94bb8203c69ab9fb33&mpshare=1&scene=1&srcid=11132Z9cZpEE3dXRVhzdSCac&from=groupmessage&isappinstalled=0#wechat_redirect",
          "comment": "一套从前到后的完整缓存方案。",
          "tags": ["缓存"]
        },
        {
          "id": "3",
          "title": "服务容错模式",
          "link": "http://tech.meituan.com/service-fault-tolerant-pattern.html",
          "comment": "服务化架构中，容错是非常重要的部分，一个未考虑容错的服务可能会导致整个系统的崩溃。",
          "tags": ["服务容错", "服务化"]
        },
        {
          "id": "4",
          "title": "魅族云 Docker 实践",
          "link": "http://dockone.io/article/1806",
          "comment": "介绍魅族云的场景需求，如何引入Docker，在网络、存储、镜像技术的选择，如何落地的等等。",
          "tags": ["Objective-C", "Runtime"]
        },
        {
          "id": "5",
          "title": "苏宁11.11:苏宁易购移动端的架构优化实践",
          "link": "http://www.infoq.com/cn/articles/suning-11-11-mobileArch-ImproveAndPractice",
          "comment": "客户端架构解耦、客户端性能优化、监控体系。值得注意的是，苏宁引入了 Weex，有效的提升了页面的渲染性能。",
          "tags": ["移动", "架构"]
        },
        {
          "id": "6",
          "title": "携程是如何做 React Native 优化的",
          "link": "http://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=2651112846&idx=1&sn=840bfcfe4b10c834ff7f7e982da0c0b4",
          "comment": "本文从 JSBundle 文件大小、JSBundle 加载时间、ListView、Crash 等几个方面介绍了 ReactNative 的优化，对 JSBundle 文件大小和加载时间给出了特别详细的方案介绍。文章结尾对未来 ReactNative 优化方向的思路也非常有启发性。",
          "tags": ["ReactNative"]
        },
        {
          "id": "7",
          "title": "重识 Objective-C Runtime - Smalltalk 与 C 的融合",
          "link": "http://blog.sunnyxx.com/2016/08/13/reunderstanding-runtime-0/",
          "comment": "从 Objective-C 起源开始介绍，然你明白为何 Objective-C 调用方法要用中括号。从设计语言的角度，带你思考怎样实现 OOP，怎样设计 runtime。",
          "tags": ["Objective-C", "Runtime"]
        },
        {
          "id": "8",
          "title": "Spark Streaming + ES 构建美团 App 异常监控平台",
          "link": "http://weibo.com/ttarticle/p/show?id=2309404039168450776666",
          "comment": "如果在使用 App 时遇到闪退，你可能会选择卸载 App、到应用商店怒斥开发者等方式来表达不满。但 App 开发者也同样感到头疼，因为 App Crash（崩溃）可能意味着：用户流失、营收下滑。为了降低崩溃率，进而提升 App 质量，App 开发团队需要实时地监控 App 异常。一旦发现严重问题，及时进行热修复，从而把损失降到最低。App 异常监控平台，就是将这个方法服务化。",
          "tags": ["App", "Crash", "Spark", "异常监控"]
        },
        {
          "id": "9",
          "title": "中文技术文档的写作规范",
          "link": "http://www.ruanyifeng.com/blog/2016/10/document_style_guide.html",
          "comment": "作为软件开发工程师，我们不仅要搞好机器语言的书写，也有掌握足够的自然语言书写技术。",
          "tags": ["文档"]
        },
        {
          "id": "10",
          "title": "网络文凭，你要不要",
          "link": "http://www.ruanyifeng.com/blog/2016/10/online_education.html",
          "comment": "Udacity, Coursera, Khan Academy 等互联网教育网站，不仅仅是学习本身，而且还提供网络文凭。文章讲述了一些大学教育的弊端，我们的确有必要思考一下。",
          "tags": ["网络教育"]
        }
      ]
    },
    {
      "id": "21",
      "date": "2016-11-08",
      "count": "10",
      "articles": [
        {
          "id": "1",
          "title": "验证码的前世今生",
          "link": "http://jaq.alibaba.com/community/art/show?articleid=548",
          "comment": "常在网上晃悠的人，对各种验证码都不会陌生。特别是在注册新账号、确认交易时，它们都会频繁出现，要求我们输入正确的验证码，那这些看上去跟我们要做的事情完全无关的验证码到底有何作用呢？&lt;p&gt;&lt;a href=&quot;http://jaq.alibaba.com/community/art/show?articleid=548&quot;&gt;前世篇&lt;/a&gt; | &lt;a href=&quot;http://jaq.alibaba.com/community/art/show?articleid=582&quot;&gt;今生篇&lt;/a&gt;&lt;/p&gt;",
          "tags": ["验证码", "安全"]
        },
        {
          "id": "2",
          "title": "Airbnb是如何监控用户提出的大量问题的？",
          "link": "http://www.infoq.com/cn/articles/how-Airbnb-monitorissues-raised-by-users",
          "comment": "在 Airbnb 的实际运营中，有很大一部分来自房东与房客们的问题要靠客服人员来处理。他们希望了解数量巨大的表单，并找出其中的趋势或者实时探测到不希望出现的问题。这需要一种监控方式，当特定问题频繁出现时提醒并发出警告。",
          "tags": ["Airbnb", "舆情"]
        },
        {
          "id": "3",
          "title": "Netflix的工程权衡和API重构",
          "link": "http://www.infoq.com/cn/articles/engineering-tradeoffs-of-netflix-and-api-reconstruction",
          "comment": "Netflix API 是一系列服务，用于处理用户使用各类设备执行操作（注册、内容查找和播放）时产生的流量。过去几年来，这套服务在不同方面有了显著增长：复杂度更高，请求数量激增，随着业务落地全球更多地区，Netflix 订户数量也有了显著增长。随着对 Netflix API 的需求持续增加，承担这一系列责任的系统架构逐渐开始面临局限。为了更好地适应未来增长，Netflix 开始构建一套新架构。本文介绍了我们在重新设计系统架构的过程中遇到的挑战，以及我们是如何协调看似矛盾的工程原则：速率和完整的所有权 vs. 最大程度的代码重用和整合。",
          "tags": ["Netflix", "API", "重构"]
        },
        {
          "id": "4",
          "title": "iOS 安装包瘦身指南",
          "link": "http://www.zoomfeng.com/blog/ipa-size-thin.html",
          "comment": "迄今为止最详细的 App 瘦身指南。从资源文件、编译选项、无语代码等方面介绍 App 瘦身方法，推荐了一些实用工具。给出的参考文章也很值得阅读。",
          "tags": ["iOS", "包优化"]
        },
        {
          "id": "5",
          "title": "QCon 上海参会感",
          "link": "https://qy.weixin.qq.com/cgi-bin/wap_getnewsmsg?action=get&__biz=MzI1ODUxNTI1Ng==&mixuin=MjQ5NTM3NjAwNDI4MDAxODMyMQ==&mid=10000067&idx=1&sn=a1a3b41690f36df3974b19ecc6b8a438",
          "comment": "简单介绍了10月份 QCon 大会各演讲题目，主题集中在混合开发技术和热更新技术。详细内容请到文章给出的链接中下载 PPT。",
          "tags": ["移动", "QCon"]
        },
        {
          "id": "6",
          "title": "The Web Is Not Tomorrow But Today",
          "link": "https://blog.jscrambler.com/the-web-is-not-tomorrow-but-today/",
          "comment": "Web 重在当下 - Web不会止步不前，它是一个不断扩展的领域，已经融入了我们的生活。文章介绍 Web 的发展及作者对其未来的想法。",
          "tags": ["Web", "Web Application", "Web Development"]
        },
        {
          "id": "7",
          "title": "Tools for Developing Accessible Websites",
          "link": "https://bitsofco.de/tools-for-developing-accessible-websites/",
          "comment": "开发无障碍网站的必备工具。网站的无障碍化指的是可以供残障人士正常使用。在注重人文关怀的国家，这块往往会被充分考虑。但在国内并非如此，我们作为医疗相关从业者，在有些产品中应该考虑到这些。",
          "tags": ["无障碍", "工具"]
        },
        {
          "id": "8",
          "title": "协程分析之 context 上下文切换",
          "link": "http://tboox.org/cn/2016/10/28/coroutine-context/",
          "comment": "很多新语言都开始提供了一种新的并发模型——协程，如题所描述，本人主要介绍协程上下文切换实现。",
          "tags": ["协程"]
        },
        {
          "id": "9",
          "title": "开源搜索引擎 ElasticSearch 5.0 版本正式发布",
          "link": "http://www.infoq.com/cn/news/2016/11/Elasticsearch-5-0-publish",
          "comment": "近日，Elastic 在官方博客中宣布，ElasticSearch 5.0正式发布。该版本基于 Lucene 6.2.0，已经在 Elastic Cloud 上完成了部署。据称，这是迄今为止最快、最安全、最易用的版本。",
          "tags": ["ElasticSearch", "news"]
        },
        {
          "id": "10",
          "title": "2017，Rust将何去何从？",
          "link": "http://www.infoq.com/cn/news/2016/11/2017-rust-roadmap",
          "comment": "Rust 是由 Mozilla 推出的一款通用语言，热门程度仅次于 Go，具有安全、高并发等特点。",
          "tags": ["Rust"]
        }
      ]
    },
    {
      "id": "22",
      "date": "2016-11-01",
      "count": "10",
      "articles": [
        {
          "id": "1",
          "title": "Android N系列适配---FileProvider",
          "link": "http://www.jianshu.com/p/522d3e15f23e",
          "comment": "性能、安全、生产力，对于Android N 的三大主题，已经陆陆续续的公开api，应用于各大手机品牌，百度医生移动端团队也是紧锣密鼓的把新特性应用于我们的项目，保证技术的先进性。在适配的同时，也踩平了许多不为人知的坑，今天我们就把研究的东西作为Android N系列陆续发出，希望能够帮助到更多的Android开发者。",
          "tags": ["Android"]
        },
        {
          "id": "2",
          "title": "插件化之DynamicLoadApk原理解析",
          "link": "http://www.jianshu.com/p/7c6fbe468c00",
          "comment": "插件化之 DynamicLoadApk 原理解析。",
          "tags": ["Android", "插件化", "DynamicLoadApk"]
        },
        {
          "id": "3",
          "title": "研究谷歌和亚马逊的微服务案例，我们能学习到的经验",
          "link": "http://mp.weixin.qq.com/s?__biz=MzA5Nzc4OTA1Mw==&mid=2659598391&idx=1&sn=4dbfeadb217c89bf051168bbab56fda7&chksm=8be99525bc9e1c3398c6884bc7eed43580d2d70cbf36d5902e043d9ccb7a44d3979523eddca3&scene=0#wechat_redirect",
          "comment": "业界的微服务经验总结，比较全面，有不少点值得参考。",
          "tags": ["微服务", "架构"]
        },
        {
          "id": "4",
          "title": "互联网架构，如何进行容量设计？",
          "link": "https://mp.weixin.qq.com/s?__biz=MzA4NDc2MDQ1Nw==&mid=2650238115&idx=2&sn=728017e699155cf5b87d53925930d7cb&chksm=87e18e45b0960753af15203dd852a21180c12592173dcba9c418df8f1ba2d550bdfa0a300a06&scene=0&key=&ascene=7&uin=&devicetype=android-22&version=26031b31&nettype=WIFI",
          "comment": "一些容量评估的经验。",
          "tags": ["容量评估"]
        },
        {
          "id": "5",
          "title": "探索 React Native 首屏渲染最佳实践",
          "link": "http://web.jobbole.com/85451/",
          "comment": "Web 上优化方法同样适用在客户端：缓存数据、复用视图控件、延迟加载、异步加载。作者结合实际例子说明如何运用上述方法来减少首屏渲染时间。",
          "tags": ["ReactNative", "性能优化"]
        },
        {
          "id": "6",
          "title": "CocoaPods 都做了什么？",
          "link": "http://draveness.me/cocoapods/",
          "comment": "对 CocoaPods 源码进行解读，介绍了依赖解析、安装依赖的步骤。在文章开始，作者还介绍了 Ruby 语言的特性以及为何集成工具喜欢用 Ruby，并自己写了一个依赖解析的框架。",
          "tags": ["iOS", "依赖管理"]
        },
        {
          "id": "7",
          "title": "Vue 作者尤雨溪：以匠人的态度不断打磨完善 Vue",
          "link": "http://www.ituring.com.cn/article/273032",
          "comment": "尤雨溪，Vue.js 作者的访谈。",
          "tags": ["Vue.js", "访谈"]
        },
        {
          "id": "8",
          "title": "都是主键惹的祸-记一次死锁分析过程",
          "link": "http://mp.weixin.qq.com/s?__biz=MjM5NzAzMTY4NQ==&mid=2653929270&idx=1&sn=e0e2bf70746ce4d21085a21a5b61e997&chksm=bd3b255c8a4cac4ae07923b76e21b34e5c92297bd775e32dc6c79c9c61d8f9a280b59c671d53&scene=0#wechat_redirect",
          "comment": "记录一次多列主键导致的数据库死锁的分析过程并给出一些建议",
          "tags": ["数据库"]
        },
        {
          "id": "9",
          "title": "认识网红！无服务器架构概念",
          "link": "http://mp.weixin.qq.com/s?__biz=MzI4MjE3MTcwNA==&mid=2664334974&idx=1&sn=cfe42b38eeae7bee056b4328f98ea8a9&chksm=f0a42629c7d3af3f18442fbad75167453a8ec5ea6d633406ccfdf8566cf77c34ed1f75124abf&mpshare=1&scene=1&srcid=1024isL2koBMZsqqpRH7W20T&from=groupmessage&isappinstalled=0#wechat_redirect",
          "comment": "无服务器软件架构，换种角度理解如何提供后端服务。",
          "tags": ["BaaS", "架构"]
        },
        {
          "id": "10",
          "title": "Git from the inside out",
          "link": "https://codewords.recurse.com/issues/two/git-from-the-inside-out",
          "comment": "Git 内核深入浅出。",
          "tags": ["git"]
        }
      ]
    },
    {
      "id": "23",
      "date": "2016-10-25",
      "count": "11",
      "articles": [
        {
          "id": "1",
          "title": "百度贴吧性能优化之路",
          "link": "http://www.infoq.com/cn/presentations/the-road-of-baidu-teiba-performance-optimization",
          "comment": "王伟冰是百度贴吧的架构师。他在全栈优化上有着丰富的经验，覆盖 PC、移动、Native 客户端，并建立了全面的性能评估、分析、监控体系。这篇分享不只是说 case 和 show 结果，而是在方法论层面提出了一套系统的方法。",
          "tags": ["性能", "Made-In-Baidu"]
        },
        {
          "id": "2",
          "title": "产品级微服务的八大原则",
          "link": "http://colobu.com/2016/10/16/microservices-in-production-notes/",
          "comment": "Uber 的微服务实践总结",
          "tags": ["微服务"]
        },
        {
          "id": "3",
          "title": "SQL Style Guide",
          "link": "http://www.sqlstyle.guide/",
          "comment": "不要不把 SQL 当作正规语言，这就是 SQL 的代码规范。",
          "tags": ["SQL"]
        },
        {
          "id": "4",
          "title": "路由跳转的思考",
          "link": "http://awhisper.github.io/2016/06/12/%E8%B7%AF%E7%94%B1%E8%B7%B3%E8%BD%AC%E7%9A%84%E6%80%9D%E8%80%83/",
          "comment": "作者想要解决一个实际需求：各种页面跳转造成的引用耦合。在设计解决方案时，还要提前预知一些坑和风险，为未来业务扩展考虑。作者最终选择了URLRoute+中间人的混合方案，医疗的BMRouter也是这种思路。文章写得非常认真，每个方案的优缺点都详细列出。列出参考文章更是值得阅读。",
          "tags": ["引用依赖", "解耦", "URLRouter"]
        },
        {
          "id": "5",
          "title": "豆瓣的模块化实践",
          "link": "http://lincode.github.io/Modularity",
          "comment": "豆瓣 App 通过模块化，应对代码和功能不断扩张的挑战，使得各个业务模块互不干扰，可以独立开发。在模块化过程中，也产出了一些库和工具。",
          "tags": ["app"]
        },
        {
          "id": "6",
          "title": "让 Pokémon GO 运行在谷歌云服务上",
          "link": "https://github.com/xitu/gold-miner/blob/8f0dbc8bb13ef50a8b6de2cb8cca30215cd3f491/TODO/bringing-Pokemon-GO-to-life-on-Google-Cloud.md",
          "comment": "Pokémon GO 在上线后大火，超出上线前预期的50倍。这款游戏开发商 Niantic 同 Google 合作，利用 Google Cloud 的多种服务，如：Kubernetes，无缝地提供了额外的处理能力，成功应对了破纪录的流量增长。",
          "tags": ["云计算", "Pokémon GO"]
        },
        {
          "id": "7",
          "title": "Google 搜索结果正式 AMP 化",
          "link": "https://www.oschina.net/news/78151/google-amp",
          "comment": "AMP 介绍: &lt;a href=&quot;https://imququ.com/post/amp-project.html&quot; target=&quot;_blank&quot;&gt;AMP，来自 Google 的移动页面优化方案&lt;/a&gt;",
          "tags": ["AMP", "Google"]
        },
        {
          "id": "8",
          "title": "日请求超亿级、同时在线活动800+：QQ会员活动运营系统架构实践",
          "link": "http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650994472&idx=1&sn=a36467e996836eb010333d54e06fd22d&chksm=bdbf0f7b8ac8866d0549a2a294755bb7ca83117902e9c3d551016c8eafb5403a444f35b0dc7e&mpshare=1&scene=1&srcid=1020BxtZbXJAhmm07d5gmZR2#rd",
          "comment": "本文主要为你分享：QQ增值业务在海量请求下的技术挑战以及背景；Web系统高并发场景的综合优化策略；平台高可用的建设实践。",
          "tags": ["QQ", "架构"]
        },
        {
          "id": "9",
          "title": "Redis 为什么用跳表而不用平衡树？",
          "link": "http://gold.xitu.io/post/57fa935b0e3dd90057c50fbc",
          "comment": "《Redis内部数据结构详解》之一，围绕一个Redis的内部数据结构——skiplist展开讨论。",
          "tags": ["PHP", "hhvm"]
        },
        {
          "id": "10",
          "title": "Vue 2.0 - 渐进式前端解决方案",
          "link": "http://ppt.geekbang.org/slide/show/431",
          "comment": "Vue.js 作者在 InfoQ 上的演讲稿",
          "tags": ["Vue.js"]
        },
        {
          "id": "11",
          "title": "Optimizing Lua Applications for LuaJIT and OpenResty",
          "link": "http://openresty.org/slides/Optimizing-Lua-Applications-for-LuaJIT-and-OpenResty.pdf",
          "comment": "@agentzh 又一演讲稿，主要内容是关于如何优化 LuaJIT 和 OpenResty。",
          "tags": ["openresty", "lua"]
        }
      ]
    },
    {
      "id": "24",
      "date": "2016-10-18",
      "count": "12",
      "articles": [
        {
          "id": "1",
          "title": "天猫何崚：好的技术团队不是“需求翻译机”或“架构优化机”",
          "link": "http://www.infoq.com/cn/news/2016/10/tianmao-not-demand-translation-a",
          "comment": "一流的技术团队不是仅仅翻译需求，而是需要理解业务，然后根据业务去设计架构，让架构对业务有可伸缩性。",
          "tags": ["技术团队"]
        },
        {
          "id": "2",
          "title": "分布式会话跟踪系统架构设计与实践",
          "link": "http://tech.meituan.com/mt-mtrace.html",
          "comment": "随着服务化的分布式系统越来越复杂，一套完善的会话跟踪机制就非常有必要，这篇文章较详细的介绍了美团在其微服务架构下是怎么做会话跟踪的。",
          "tags": ["分布式", "会话追踪"]
        },
        {
          "id": "3",
          "title": "分库分表的几种常见形式以及可能遇到的难题",
          "link": "http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650994413&idx=1&sn=24a01089ee47793b5d82381b04a34499&chksm=bdbf0ebe8ac887a8a75a0cd9226bb7e0427f1a77c43323d14dc6932c7dc77555531bce5dce0f&mpshare=1&scene=1&srcid=1017DNMoAoV9TjGya9P9azPN#rd",
          "comment": "“分库分表”是谈论数据库架构和优化时经常听到的关键词。那么对于这些业务量正在高速增长的公司，它有那么容易实践吗？笔者整理了分库分表中可能遇到的一些问题，并结合以往经验介绍了对应的解决思路和建议。",
          "tags": ["数据库"]
        },
        {
          "id": "4",
          "title": "Laravel的核心概念",
          "link": "https://lufficc.com/blog/the-core-conception-of-laravel",
          "comment": "感受一下现代化的 php 框架是怎么做的。",
          "tags": ["PHP", "Laravel", "框架"]
        },
        {
          "id": "5",
          "title": "十大性能方面的错误",
          "link": "http://mp.weixin.qq.com/s?__biz=MzIzNjUxMzk2NQ==&mid=2247483872&idx=1&sn=05311c74bfdda462dba899656401f191&chksm=e8d7fe22dfa07734d61edf70ee0841d994824e52186c38c3f7fc4e696116baeba3ca5173cf78#rd",
          "comment": "很直接的性能反例，没有复杂的理论，只有 Top10 的错误，但覆盖了生产环境中常见的情况。",
          "tags": ["性能"]
        },
        {
          "id": "6",
          "title": "用于 React Native 应用的不同的自动化测试框架",
          "link": "http://www.zcfy.cc/article/diverse-test-automation-frameworks-for-react-native-apps-1208.html",
          "comment": "本文主要介绍在测试 React Native 应用中，什么是可用的。首先，本文在介绍如何进行测试之前解释了 React Native 的一些关键特征；其次，本文从单元、集成、功能测试三个角度对测试方法和框架进行分类，并为每一类提供了实例；最后，本文就如何使用流行的开源自动化测试框架来对功能型应用进行测试提供了一些简单实例。",
          "tags": ["ReactNative", "测试"]
        },
        {
          "id": "7",
          "title": "Strange Loop - IP Spoofing",
          "link": "https://idea.popcount.org/2016-09-20-strange-loop---ip-spoofing/",
          "comment": "具体介绍了 DDos 攻击的概念和 IP 伪造的方法，其中介绍的关于利用 Hilbert Curve 曲线描绘 IP 分布的方法值得学习。",
          "tags": ["DDoS", "IP伪造"]
        },
        {
          "id": "8",
          "title": "如何用一款小工具大大加速 MySQL SQL 语句优化",
          "link": "http://dbaplus.cn/news-21-687-1.html",
          "comment": "主要是里面可以看到很多 sql 语句优化的工具和参数分析，通过集成这些工具进行写成分析一个 sql 语句的优化工具。",
          "tags": ["MySQL", "SQL", "优化"]
        },
        {
          "id": "9",
          "title": "验证码对抗之路及现有验证机制介绍",
          "link": "http://www.cnblogs.com/alisecurity/p/5581049.html",
          "comment": "介绍了现有验证码机制的一些算法和生成、验证方式。并给出了验证码的一些破解方法研究。",
          "tags": ["验证码", "阿里移动安全"]
        },
        {
          "id": "10",
          "title": "Facebook 发布了新的 Node 模块管理器 Yarn，或取代 npm 客户端",
          "link": "https://github.com/yarnpkg/yarn",
          "comment": "“在 Facebook 中，我们多年来一直在使用 npm 客户端并取得了成功，但随着代码仓库与团队人数的增长，我们在一致性、安全性以及性能方面遇到了挑战。在尝试解决每个方面的问题后，我们最终决定着手打造一套新的客户端解决方案，以帮助我们更可靠地管理依赖。我们把这个客户端工具称为 Yarn —— 更加快速、可靠、安全的 npm 客户端的替代品。”",
          "tags": ["Facebook", "包管理", "前端"]
        },
        {
          "id": "11",
          "title": "你还在用轮播图吗",
          "link": "https://isux.tencent.com/carousels.html",
          "comment": "轮播图（Carousels）这样的交互方式，在 Web 时代似乎已经司空见惯。事实上，轮播图的点击率通常都很低，转化效果也并不好，却往往占用了页面最抢眼的大面积位置。作为研发，我们也需要了解业务的方方面面，交互设计也不例外。",
          "tags": ["交互", "轮播图"]
        },
        {
          "id": "12",
          "title": "雅虎开源色情图片检测神经网络",
          "link": "http://www.infoq.com/cn/news/2016/10/YAHOO-pornographic-detection-ne",
          "comment": "雅虎刚刚开源了他们自己构建的一套深度学习神经网络，它专门用于自动检测图片是否含有色情内容。",
          "tags": ["开源", "新闻", "深度学习", "Yahoo!"]
        }
      ]
    },
    {
      "id": "25",
      "date": "2016-10-11",
      "count": "10",
      "articles": [
        {
          "id": "1",
          "title": "Vue 2.0 来了！",
          "link": "http://jiongks.name/blog/vue-2-is-here/",
          "comment": "Vue 2.0 发布，带来了性能提升、Virtual DOM、服务端渲染以及配套的 vue-router、vuex、vue-loader 和 vueify 工具链的同步升级。",
          "tags": ["前端", "JavaScript", "Vue.js"]
        },
        {
          "id": "2",
          "title": "专访链家蔡白银：大数据如何解决房产领域痛点推动行业进步",
          "link": "http://www.infoq.com/cn/news/2016/09/lianjia-big-data-House-property",
          "comment": "链家网大数据架构师，讲述了链家网大数据建设、架构和应用，解决了“房源真假如何判断”等痛点问题，推动行业进步。",
          "tags": ["大数据", "链家"]
        },
        {
          "id": "3",
          "title": "Fastlane 实战：Action 和 Plugin 机制",
          "link": "http://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=2651112749&idx=1&sn=6e40ed0adba817fc7812a68d14ce83be",
          "comment": "任何一个优秀的框架或平台都应当具有良好的扩展性，以满足不断变化的场景和个性化需求。移动开发过程中，需要自动化的场景太多，每个团队都有自己的特殊场景，这就需要自动化平台有良好的扩展能力。Fastlane 提供了 Action 来满足个性化需求，Plugin 让你可以在 RubyGems 上发布自己的插件。Fastlane 提供了大量模板，方便自定义 Action。本文介绍了创建 Action 和发布 Plugin 的步骤。",
          "tags": ["移动", "自动化"]
        },
        {
          "id": "4",
          "title": "iOS 开发中的『库』(一）",
          "link": "https://github.com/Damonvvong/iOSDevNotes/blob/master/Notes/framework.md",
          "comment": "只要做过 iOS 开发，肯定接触过动态库，但很多人对动态库没有清晰的认识。本文科普了静态库、动态库、.framwork 文件、.a 文件、Mach-O 等概念，介绍了利用 framework 进行热修复的方法。",
          "tags": ["iOS", "动态库"]
        },
        {
          "id": "5",
          "title": "熟悉的陌生人 - HTTP",
          "link": "http://www.jianshu.com/p/99dc1f8f62bf",
          "comment": "你最熟悉的HTTP协议，要了解更多还是要啃《TCP/IP详解》。",
          "tags": ["http", "协议"]
        },
        {
          "id": "6",
          "title": "Linux 从零到一：Linux 文件系统",
          "link": "https://github.com/hqwang/linux-0-to-1/blob/master/linux_fs.md",
          "comment": "初识 Linux 文件系统体系。",
          "tags": ["Linux", "文件系统", "&lt;font color=&quot;red&quot;&gt;原创&lt;/font&gt;"]
        },
        {
          "id": "7",
          "title": "Try Git: Git Tutorial",
          "link": "https://try.github.io/",
          "comment": "迎接 Git 工作流，奉上互动式 Git 学习网站，Code School 出品。",
          "tags": ["git"]
        },
        {
          "id": "8",
          "title": "猴子都能懂的GIT入门",
          "link": "http://backlogtool.com/git-guide/cn/",
          "comment": "当然，Git 教程中最通俗易懂的还属《猴子都能懂的GIT入门》。",
          "tags": ["git"]
        },
        {
          "id": "9",
          "title": "微服务那么热，创业公司怎么选用实践？",
          "link": "http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650994360&idx=1&sn=dd2664e2db6bfc7427a4ea738899840e&chksm=bdbf0eeb8ac887fdd3019e907ead70c9b4b869cb4e38dfe70cfc56eb0499d4ac757d3c918d27&mpshare=1&scene=1&srcid=10113dnp3o79BvhCOuBxRcxV#rd",
          "comment": "来自『创业公司』的微服务架构实践。本文从微服务历史、现状回顾开始，用实际案例落地实践中的问题。虽是创业公司的经验，却可广而用之。",
          "tags": ["微服务", "架构"]
        },
        {
          "id": "10",
          "title": "理性撕逼！分布式事务：不过是在一致性、吞吐量和复杂度之间，做一个选择",
          "link": "http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650994325&idx=1&sn=afe66f9cf65ec61aaaf8422a12618fb2&chksm=bdbf0ec68ac887d03544af86e02ac6f9daf38e22a92ebbfb42df581fd3d924dc2c403e382c21&mpshare=1&scene=1&srcid=1011s9iQcEWl1mUIqZfyjiFg#rd",
          "comment": "微服务架构流行的今天，一次交易需要跨越多个“服务”、多个数据库来实现，传统的技术手段，已经无法应对和满足微服务情况下这些复杂的场景了。从架构的角度来看，业务拆分（数据分区）、数据一致性、性能（可用性）永远是个平衡的艺术。",
          "tags": ["分布式", "事务"]
        }
      ]
    },
    {
      "id": "26",
      "date": "2016-09-27",
      "count": "10",
      "articles": [
        {
          "id": "1",
          "title": "每秒订单数25倍提升，蘑菇街怎样跨过海量服务架构的技术藩篱？",
          "link": "http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650994245&idx=1&sn=84b01bdd571d51586a87ba05120c3176&chksm=bdbf0e168ac88700b55abdd24c756152dd3f54a7433cd19b05d3ef083223affe9f5dfd1ae14c&mpshare=1&scene=1&srcid=0927FCbVVd08uMoTgDk0vMdB#rd",
          "comment": "这篇文章内容，既有总体框架，又有实施细节。结合我们当前的业务和我们正在实施的架构改造，大家可以从文中收获很多养分。",
          "tags": ["服务架构", "电商"]
        },
        {
          "id": "2",
          "title": "性感的 PHP —— 现代化 PHP 开发",
          "link": "https://oddgb63aa.qnssl.com/uploads/2016/08/modern-php.pdf",
          "comment": "本次技术分享主要讲了一些现代化 PHP 开发的技术，PPT 重点介绍了命名空间，闭包，匿名函数，Traits 这些新特性，以及介绍了 Composer 依赖包管理器和 PSR 规范。",
          "tags": ["PHP", "ppt"]
        },
        {
          "id": "3",
          "title": "分布式队列编程：从模型、实战到优化",
          "link": "http://www.infoq.com/cn/articles/distributed-queue-programme-model-actual-combat-optimization",
          "comment": "本文分为三部分，包括模型篇、实战篇和优化篇，主要剖析了分布式队列编程模型的需求来源、定义、结构以及其变化多样性；根据作者在新美大实际工作经验，给出了队列式编程在分布式环境下的一些具体应用。",
          "tags": ["后端", "消息队列"]
        },
        {
          "id": "4",
          "title": "Yelp 的实时流技术之二：将MySQL表数据变更实时流到 Kafka 中",
          "link": "http://www.infoq.com/cn/articles/yelp-real-time-data-pipeline-part02",
          "comment": "MySQL Streamer 是一个数据库变更捕获和发布系统，它负责捕获数据库的每一条数据变更，将它们打包成消息并发布到 Kafka 中。",
          "tags": ["后端", "MySQL", "Kafka", "yelp"]
        },
        {
          "id": "5",
          "title": "微信开源 PhxSQL 背后：强一致高可用分布式数据库的设计和实现哲学",
          "link": "http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650994184&idx=1&sn=9be9eb8ab569ad281330b6ceeb490757&chksm=bdbf0e5b8ac8874d3407d84eed6175e4b82b0202fc641ec4d52bc001c9497fe8faa0706224cf&scene=1&srcid=0921XEBncpKI1DuCrooDMbFz#rd",
          "comment": "微信技术团队最近在开源开放上动作不断，后端方面前段时间他们开源了生产级 paxos 类库 PhxPaxos，现在又开源了高可用分布式数据库 PhxSQL，本文我们将了解一些 PhxSQL 背后的故事，以及它设计和实现的哲学。",
          "tags": ["MySQL", "微信", "腾讯"]
        },
        {
          "id": "6",
          "title": "Redux 入门教程（三部曲）",
          "link": "http://www.ruanyifeng.com/blog/2016/09/redux_tutorial_part_one_basic_usages.html",
          "comment": "阮一峰老师出品Redux入门系列教程&lt;br&gt;&lt;br&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://www.ruanyifeng.com/blog/2016/09/redux_tutorial_part_one_basic_usages.html&quot;&gt;第一篇：基本用法&lt;/a&gt;&lt;br&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://www.ruanyifeng.com/blog/2016/09/redux_tutorial_part_two_async_operations.html&quot;&gt;第二篇：中间件与异步操作&lt;/a&gt;&lt;br&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://www.ruanyifeng.com/blog/2016/09/redux_tutorial_part_three_react-redux.html&quot;&gt;第三篇：基本用法&lt;/a&gt;",
          "tags": ["Redux", "JavaScript", "前端架构"]
        },
        {
          "id": "7",
          "title": "也许，DOM 不是答案",
          "link": "http://www.ruanyifeng.com/blog/2015/02/future-of-dom.html",
          "comment": "列举了 WebApp 性能低下的原因，介绍了 Flipboard 的 canvas 解决方案，并预测未来提升 Web 性能的方案",
          "tags": ["移动", "Web"]
        },
        {
          "id": "8",
          "title": "Fastlane - 移动开发自动化之道",
          "link": "http://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=2651112713&idx=1&sn=dd049e7edf3402af887c1fc295f43b98",
          "comment": "打包，签名，测试，部署，发布，库管理等占用大量时间，这些重复工作应该自动化完成，节省人力。作者给出了实际工作中遇到的问题，并说明 Fastlane 在应对这些问题时的优势。对两个实际应用场景，给出了 Fastlane 解决方案。",
          "tags": ["移动", "流程", "自动化"]
        },
        {
          "id": "9",
          "title": "Git 发布 2.10 - Push、Worktree、格式等得到了改进",
          "link": "http://www.infoq.com/cn/news/2016/09/git-210-released",
          "comment": "",
          "tags": ["新闻", "Git"]
        },
        {
          "id": "10",
          "title": "TypeScript 2.0 正式发布",
          "link": "http://www.infoq.com/cn/news/2016/09/typescript-release-20",
          "comment": "TypeScript 是微软开发的开源的编程语言，主要负责人是 C# 之父 Anders Hejlsberg。&lt;br&gt;&lt;br&gt;TypeScript 成功将 JavaScript 的潜能与静态类型结合了起来，而且编译为 JavaScript。编译时类型检查可以避免很多潜在的 Bug，而且 TypeScript 的编辑器工具也大大提升了开发效率。",
          "tags": ["新闻", "JavaScript"]
        }
      ]
    },
    {
      "id": "27",
      "date": "2016-09-20",
      "count": "11",
      "articles": [
        {
          "id": "1",
          "title": "浅谈浏览器 http 的缓存机制",
          "link": "http://www.cnblogs.com/vajoy/p/5341664.html",
          "comment": "非常详细的讲解了各代 http 协议和浏览器对缓存的处理和定义，以及协议的变迁，值得仔细阅读。",
          "tags": ["协议", "HTTP"]
        },
        {
          "id": "2",
          "title": "关于字符编码，你所需要知道的（ASCII, Unicode, Utf-8, GB2312…）",
          "link": "http://www.imkevinyang.com/2010/06/%E5%85%B3%E4%BA%8E%E5%AD%97%E7%AC%A6%E7%BC%96%E7%A0%81,%E4%BD%A0%E6%89%80%E9%9C%80%E8%A6%81%E7%9F%A5%E9%81%93%E7%9A%84.html",
          "comment": "一篇非常详细的讲解编码的文章，供大家参考。",
          "tags": ["编码"]
        },
        {
          "id": "3",
          "title": "大众点评订单分库分表实践之路",
          "link": "http://mp.weixin.qq.com/s?__biz=MzI4NTA1MDEwNg==&mid=402525487&idx=1&sn=9c1bccf857a624dedec743f54c66a98c&scene=2&srcid=0225bFwpmQXHEVoH65buhqF7&from=timeline&isappinstalled=0#wechat_redirect",
          "comment": "一套标准的分库分表方案。",
          "tags": ["后端", "数据库", "大众点评"]
        },
        {
          "id": "4",
          "title": "iOS 动态更新方案对比: JSPatch vs React Native",
          "link": "http://blog.cnbang.net/tech/3237/",
          "comment": "从学习成本、接入成本、开发效率、热更新能力和性能体验这几个方面对比了 React Native 和 JSPatch。",
          "tags": ["App", "iOS", "动态化"]
        },
        {
          "id": "5",
          "title": "滴滴 iOS 的组件化实践与优化",
          "link": "http://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=2651112719&idx=1&sn=691e7e3bcf7d0e24f0ad5de75c19711c&scene=1&srcid=0917wkhGxANygrCN3BUSQxCq#rd",
          "comment": "介绍了滴滴在解耦、灰度、瘦身、性能、crash 方面的工作，着重解耦。介绍了几个特殊问题的解决方案：如果订单没有完成，如何在App杀死再启动时进入对应订单状态的页面？如何只创建一份地图？",
          "tags": ["App", "iOS", "组件化"]
        },
        {
          "id": "6",
          "title": "Google QUIC 协议：从 TCP 到 UDP 的 Web 平台",
          "link": "http://www.infoq.com/cn/articles/quic-google-protocol-web-platform-from-tcp-to-udp",
          "comment": "QUIC协议开创性的使用了UDP协议作为底层传输协议，通过各种方式减少了网络延迟。这些优势在诸如YouTube的视频服务上更为突出。用户报告通过QUIC协议在观看视频的时候可以减少30%的重新缓冲时间。",
          "tags": ["协议", "Google"]
        },
        {
          "id": "7",
          "title": "Libev 源码分析",
          "link": "http://cxh.me/2015/12/19/libev-source-analysis/",
          "comment": "从 libev 源码出发，深入剖析一套基于事件驱动的网络库的设计和实现，从根本上解释了 libev 高性能的原因。",
          "tags": ["libev"]
        },
        {
          "id": "8",
          "title": "InnoDB 中的事务隔离级别和锁的关系",
          "link": "http://tech.meituan.com/innodb-lock.html",
          "comment": "通过分析 MySQL 中 InnoDB 引擎的加锁机制，来抛砖引玉，让读者更好的理解，在事务处理中数据库到底做了什么。",
          "tags": ["MySQL", "InnoDB", "事务"]
        },
        {
          "id": "9",
          "title": "Vim 8.0 正式发布",
          "link": "https://www.oschina.net/news/77059/vim-8-0-stable",
          "comment": "经过十多年，Vim 又发布了一个新的主要版本。它给你带来了很多有趣的新功能，例如 Channels, JSON, Jobs, Timers, Partials, Lambdas, Closures, 包管理等等。测试覆盖率一直在增加，许多错误已经被修复，这是一个稳定的版本。",
          "tags": ["vim", "工具"]
        },
        {
          "id": "10",
          "title": "Uber技术栈全解析之上篇：基础",
          "link": "http://www.infoq.com/cn/articles/analytic-uber-technology-stack-part01",
          "comment": "Uber 简单的 APP UI 的背后，是数百个互相依赖的微服务支撑的。本文从平台层、开发部署、语言、测试等方面介绍了 Uber 的技术栈。其中，Uber 的可视化框架和地图 ETA 算法的成果让人印象深刻。",
          "tags": ["Uber"]
        },
        {
          "id": "11",
          "title": "前后端分离架构下 CSRF 防御机制",
          "link": "http://feclub.cn/post/content/koa-grace-csrf",
          "comment": "CSRF 是一种常见的攻击方式，在前后端分离的开发模式下，我们该如何优雅的防御呢？",
          "tags": ["安全", "CSRF"]
        }
      ]
    },
    {
      "id": "28",
      "date": "2016-09-13",
      "count": "13",
      "articles": [
        {
          "id": "1",
          "title": "面对扩张，Uber 如何重写其司机申请系统",
          "link": "http://geek.csdn.net/news/detail/99750",
          "comment": "本文讲述了 Uber 是如何持续打造司机申请系统，以便让成千上万的用户可以申请成为司机合伙人的故事。Uber 构建了一套扩展性极强的系统，满足不同产品、国家和地区对于“司机”接入的差异化需求。",
          "tags": ["后端", "架构", "Uber"]
        },
        {
          "id": "2",
          "title": "Building Business Systems with DSLs atop OpenResty",
          "link": "http://openresty.org/slides/Building-Business-Systems-with-DSLs-atop-OpenResty.pdf",
          "comment": "OpenResty 作者 Agentzh 在 NginxConf 2016 上的演示文稿。",
          "tags": ["后端", "Nginx", "演示", "OpenResty", "Lua"]
        },
        {
          "id": "3",
          "title": "QQ 空间面向移动时代 Hybrid 架构设计",
          "link": "http://mp.weixin.qq.com/s?__biz=MzI4NzE1NTYyMg==&mid=2651101486&idx=1&sn=87a433baf963224870ccf8bcb28ae90b&scene=4#wechat_redirect",
          "comment": "本视频来自ArchSummit深圳2016腾讯社交平台高级工程师黄俊涛的分享演讲，主要介绍QQ空间Hybrid架构，包括如何提高H5页的加载速度以及稳定性，以及使用React Native如何提高体验，改善性能。",
          "tags": ["前端", "App", "演讲", "腾讯"]
        },
        {
          "id": "4",
          "title": "Commit message 和 Change log 编写指南",
          "link": "http://www.ruanyifeng.com/blog/2016/01/commit_message_change_log.html",
          "comment": "其实基于commit message可以做很多有意思的事情，前提是有个规范。",
          "tags": ["提交说明", "Changelog", "指南"]
        },
        {
          "id": "5",
          "title": "Android 动态加载技术三个关键问题详解",
          "link": "http://www.infoq.com/cn/articles/android-dynamic-loading",
          "comment": "不同的插件化方案各有各的特色，但是它们都必须要解决三个基础性问题：资源访问、Activity生命周期的管理和ClassLoader的管理。",
          "tags": ["App", "Android"]
        },
        {
          "id": "6",
          "title": "iOS App 组件化开发实践",
          "link": "http://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=2651112676&idx=1&sn=d89305910fd0e12f83299cfbc25dd662&scene=1&srcid=0907nDD6SgkKMnpXU9iDoFTc#rd",
          "comment": "作者详细介绍了其在组件化工程中的思路和经验。对初始化及二进制化中的两个难题给出了解决方案。并详细介绍了基于 CocoaPods 的二进制化方案。",
          "tags": ["App", "iOS"]
        },
        {
          "id": "7",
          "title": "接口限流算法总结",
          "link": "http://www.kissyu.org/2016/08/13/%E9%99%90%E6%B5%81%E7%AE%97%E6%B3%95%E6%80%BB%E7%BB%93/",
          "comment": "在开发高并发系统时，有三把利器用来保护系统：缓存、降级和限流。通过限流，我们可以很好地控制系统的qps，从而达到保护系统的目的。本文就介绍了常用的限流算法以及他们各自的特点。",
          "tags": ["后端", "服务化"]
        },
        {
          "id": "8",
          "title": "PHP&#39;s Not Dead - PHP7 In Practice",
          "link": "https://speakerdeck.com/szymanskilukasz/phps-not-dead-php7-in-practice",
          "comment": "PHP 7 实践。我们看了很多关于 PHP 7 如何提升性能的文章，但其实 PHP 7 在语言层面也有很多令人印象深刻的改动，这些都是实践迁移时很需要注意的。️",
          "tags": ["后端", "PHP", "English"]
        },
        {
          "id": "9",
          "title": "How To Scale React Applications",
          "link": "https://www.smashingmagazine.com/2016/09/how-to-scale-react-applications/",
          "comment": "还在为不知道如何开始第一个 react 项目发愁，还不清楚 react 有哪些最佳实践，懒得自己动手搭建一个新项目的基础设施，如 react-boilerplate 官方所言，它提供了一个高扩展性的 react 最佳实践脚手架。",
          "tags": ["前端", "React", "English"]
        },
        {
          "id": "10",
          "title": "The future of web apps",
          "link": "http://www.creativebloq.com/features/the-future-of-web-apps",
          "comment": "原生客户端和 WebApp 之间的鸿沟正在缩小。本文探寻 WebApp 如何帮助我们的应用“升级”。",
          "tags": ["前端", "Native", "WebApp", "English"]
        },
        {
          "id": "11",
          "title": "谷歌推出云自然语言 API",
          "link": "http://www.infoq.com/cn/news/2016/09/google-nlpaas",
          "comment": "Google：Google 将自己的 NLP 先进成果分享以 API 形式给了世界。它基于深度学习算法，它的特性有：情感分析、实体识别、语法分析。",
          "tags": ["NLP", "新闻", "Google"]
        },
        {
          "id": "12",
          "title": "Lumen 5.3 已发布 - Lumen 为速度而生的框架",
          "link": "https://phphub.org/topics/2786",
          "comment": "Lumen 是一个由 Laravel 组件搭建而成的微框架，非常适用于构建 API 接口，由 Laravel 官方维护。",
          "tags": ["PHP", "新闻", "Lumen", "Laravel"]
        },
        {
          "id": "13",
          "title": "Twitter 机器学习平台的设计与搭建",
          "link": "http://mp.weixin.qq.com/s?__biz=MzI4NzE1NTYyMg==&mid=2651101493&idx=1&sn=5c058bf8a936ada350efcb9f54ae8cd6&scene=1&srcid=0824lV5VFBuDBHjZj9FFGTaL#wechat_redirect",
          "comment": "来自 Twitter 机器学习平台组负责人郭晓江的演讲。帮助大家了解 Twitter 机器学习的发展历史与变迁以及超大规模(日万亿量级请求)的在线机器学习系统的设计。",
          "tags": ["机器学习", "演讲", "Twitter"]
        }
      ]
    },
    {
      "id": "29",
      "date": "2016-09-06",
      "count": "19",
      "articles": [
        {
          "id": "1",
          "title": "微信序列号生成器架构设计及演变",
          "link": "http://www.infoq.com/cn/articles/wechat-serial-number-generator-architecture",
          "comment": "微信序列号生成器 seqsvr 的架构设计和演变，用简单优雅的模型，为微信的其它模块提供了一种简单可靠的一致性解决方案。",
          "tags": ["后端", "文章", "腾讯"]
        },
        {
          "id": "2",
          "title": "gRPC 1.0发布",
          "link": "http://www.infoq.com/cn/news/2016/08/grpc-1-0",
          "comment": "Google 推出的基于 protobuf 格式的RPC框架。",
          "tags": ["后端", "新闻", "Google"]
        },
        {
          "id": "3",
          "title": "Getting Started with Icicle: Write asynchronous code in PHP with synchronous coding techniques using promises and coroutines",
          "link": "https://trowski.com/2015/10/21/getting-started-with-icicle/",
          "comment": "在PHP中用同步的写法写异步程序，支持promise风格和协程风格。",
          "tags": ["后端", "文章", "PHP", "English"]
        },
        {
          "id": "4",
          "title": "谈谈互联网后端基础设施",
          "link": "http://www.rowkey.me/blog/2016/08/27/server-basic-tech-stack/",
          "comment": "互联网后端基础设施的全面总结。",
          "tags": ["后端", "文章"]
        },
        {
          "id": "5",
          "title": "PHP The Right Way",
          "link": "http://laravel-china.github.io/php-the-right-way/",
          "comment": "php的最佳实践。",
          "tags": ["后端", "文章", "php"]
        },
        {
          "id": "6",
          "title": "PHP 程序员的技术成长规划",
          "link": "http://blog.csdn.net/heiyeshuwu/article/details/40098043",
          "comment": "一篇老文章了，但是仍然不失为当前php程序员成长路线的很好的参考。",
          "tags": ["后端", "文章", "php"]
        },
        {
          "id": "7",
          "title": "Why Learning to Code is So Damn Hard",
          "link": "https://www.vikingcodeschool.com/posts/why-learning-to-code-is-so-damn-hard",
          "comment": "非常系统的解释了为啥学代码这么难，以及如何会简单一些，里面的概念很有意思。",
          "tags": ["技术杂谈", "English"]
        },
        {
          "id": "8",
          "title": "蘑菇街 DevOps 实践及心路历程分享",
          "link": "http://www.infoq.com/cn/articles/mogujie-devops-practice-and-experience",
          "comment": "蘑菇街是如何做DevOps的。",
          "tags": ["后端", "DevOps"]
        },
        {
          "id": "9",
          "title": "Splunk vs ELK: The Log Management Tools Decision Making Guide",
          "link": "http://blog.takipi.com/splunk-vs-elk-the-log-management-tools-decision-making-guide/",
          "comment": "ELK和Splunk，两个业界最流行的日志管理系统对比。",
          "tags": ["后端", "文章", "English"]
        },
        {
          "id": "10",
          "title": "Growth: 全栈增长工程师指南",
          "link": "http://growth.phodal.com/",
          "comment": "一本全栈增长工程师的入门指南，涵盖前端、后端、开发、测试、上线、数据分析、架构设计等等各个方面。",
          "tags": ["增长工程师"]
        },
        {
          "id": "11",
          "title": "和 Vue.js 框架的作者聊聊前端框架开发背后的故事",
          "link": "http://teahour.fm/2015/08/16/vuejs-creator-evan-you.html",
          "comment": "Vue.js 作者亲自在 podcasting 中现身说法，讲述 Vue.js 是怎么设计的，还有与“竞争对手”们的关系和对比（Ember, Angular, React）。",
          "tags": ["前端", "播客", "Vue.js"]
        },
        {
          "id": "12",
          "title": "使用高斯模糊的效果逐步加载图片（仿 Medium）",
          "link": "https://segmentfault.com/a/1190000006743512",
          "comment": "国外知名自媒体平台 Medium 所使用的高斯模糊效果，对我们的产品实现有借鉴意义。",
          "tags": ["前端", "Demo"]
        },
        {
          "id": "13",
          "title": "如何编写你自己的 Virtual DOM",
          "link": "http://www.zcfy.cc/article/how-to-write-your-own-virtual-dom-1136.html",
          "comment": "",
          "tags": ["前端", "文章"]
        },
        {
          "id": "14",
          "title": "Android 7.0 for Developers",
          "link": "https://developer.android.com/about/versions/nougat/android-7.0.html",
          "comment": "面向开发者的 Android 7.0 新特性介绍。",
          "tags": ["Android", "文档", "English"]
        },
        {
          "id": "15",
          "title": "Android APK 签名比对",
          "link": "http://www.blogjava.net/zh-weir/archive/2011/07/19/354663.html",
          "comment": "这个文章主要是对Android APK签名机制进行了结构性的介绍。",
          "tags": ["Android", "文章"]
        },
        {
          "id": "16",
          "title": "Android插件化：从入门到放弃",
          "link": "http://www.infoq.com/cn/articles/android-plug-ins-from-entry-to-give-up",
          "comment": "插件化技术介绍及未来展望。",
          "tags": ["Android", "文章"]
        },
        {
          "id": "17",
          "title": "打造一个优雅的Timer",
          "link": "https://github.com/100mango/zen/blob/master/%E6%89%93%E9%80%A0%E4%B8%80%E4%B8%AA%E4%BC%98%E9%9B%85%E7%9A%84Timer/make%20a%20timer.md",
          "comment": "详细列举了NSTimer的缺陷，给出一个基于GCD的方案，解决了各种问题。有详细代码。让你对NSTimer和RunLoop有深入理解。",
          "tags": ["iOS", "文章"]
        },
        {
          "id": "18",
          "title": "git - 简明指南",
          "link": "http://rogerdudler.github.io/git-guide/index.zh.html",
          "comment": "助你入门 git 的简明指南，为迎接 SVN 下线做准备。",
          "tags": ["工具", "教程"]
        },
        {
          "id": "19",
          "title": "Git Magic",
          "link": "http://www-cs-students.stanford.edu/~blynn/gitmagic/intl/zh_cn/",
          "comment": "Git 使用魔法，实用的深度 Git 使用 tips。",
          "tags": ["工具", "教程"]
        }
      ]
    }
  ]
}
