• 这种 Unicode 符号,让百万人中招下了假应用……

    Posted by : lon.y@qq.com on 2018年2月2日

    2017年11月 BBC 报道了一个假冒 WhatsApp 的新闻。假应用似乎与官方应用属于同一个开发者名下。原来这些骗子通过在开发者名字中加入 Unicode 的非打印空格(nonprintable space),绕开验证。在 Google Play 维护人员发现之前,下载假应用超过 100 万人。 Unicode 是极其有价值的标准,使得电脑、智能手机和手表,在全球范围内以同样的方式显示同样的消息。不幸的是,它的复杂性使其成为了骗子和恶作剧者的金矿。如

    阅读全文...

  • 聊聊分布式事务,再说说解决方案

    Posted by : lon.y@qq.com on 2018年2月2日

    前言 分布式事务是企业集成中的一个技术难点,也是每一个分布式系统架构中都会涉及到的一个东西,特别是在微服务架构中,几乎可以说是无法避免,本文就分布式事务来简单聊一下。 数据库事务 在说分布式事务之前,我们先从数据库事务说起。 数据库事务可能大家都很熟悉,在开发过程中也会经常使用到。但是即使如此,可能对于一些细节问题,很多人仍然不清楚。比如很多人都知道数据库事务的几个特性:原子性(Atomicity )、一致性( Consistency )、隔离性或独立性(

    阅读全文...

  • 做 ML 有关的工作,需要哪些技能?

    Posted by : lon.y@qq.com on 2018年1月31日

    【导读】:有位网友在 Quora 上提问:做与机器学习有关的工作,需要些什么技能呢? 我是一个自学者,现在家中自学线性代数。希望有天能在机器学习领域工作,但是我不太确定: a) 这种工作/面试需要什么技术上的技能? b) 有没有什么(做这种工作)必须的相关工作经历 比起空想,我至少开始行动了。任何的建议/指导对我来说都很有用。十分感谢! 本文摘编了 2 位 Quora 网友的回答。 Jonathan A. Cox(机器学习和应用物理研究人员)的回答: 这里

    阅读全文...

  • 如何在 Linux/Unix/Windows 中发现隐藏的进程和端口

    Posted by : lon.y@qq.com on 2018年1月31日

    unhide 是一个小巧的网络取证工具,能够发现那些借助 rootkit、LKM 及其它技术隐藏的进程和 TCP/UDP 端口。这个工具在 Linux、UNIX 类、MS-Windows 等操作系统下都可以工作。根据其 man 页面的说明: Unhide 通过下述三项技术来发现隐藏的进程。 进程相关的技术,包括将 /proc 目录与 /bin/ps 命令的输出进行比较。 系统相关的技术,包括将 /bin/ps 命令的输出结果同从系统调用方面得到的信息进行比

    阅读全文...

  • 3 个可以替代 Emacs 和 Vim 的文本编辑器

    Posted by : lon.y@qq.com on 2018年1月31日

    Vim 和 Emacs 对于 Linux 桌面上进行文本编辑显然是重量级的,但是它们并非唯一之选。 Emacs 和 Vim 的粉丝们,在你们开始编辑器之争之前,请你们理解,这篇文章并不是为了贬低诸位最喜欢的编辑器。我是一个 Emacs 爱好者,但是也很喜欢 Vim。 就是说,我认为 Emacs 和 Vim 并不适合所有人。也许 编辑器之争 略显幼稚,让很多人失望了。也许他们只是想要有一个不太苛刻的现代化的编辑器。 如果你正寻找可以替代 Emacs 或者 V

    阅读全文...

  • 2017 年 JavaScript 现状调查报告总结

    Posted by : lon.y@qq.com on 2018年1月31日

    前段时间国外的开发者针对2017年JavaScript的现状做了一个调查并给出了相关调查报告。本文针对他的调查报告总结进行了翻译,如有问题欢迎留言。 我最近公布了2017年版年度JavaScript调查的结果,该调查覆盖了了23000多名开发者。 这份调查结果揭示了很多信息,从流行趋势到薪资细分。如果你还没有看过这边调查,你会想自己看一看。但在所有这些数据中,以下10点是我最令我关注的。 即使您已经看到了调查结果,您也可能希望查看我们刚刚添加的新特性和意见

    阅读全文...

  • 2017年 JavaScript 框架回顾 — 后端框架

    Posted by : lon.y@qq.com on 2018年1月31日

    本文是2017年 JavaScript 框架回顾系列的最后的一篇文章,主要介绍 JavaScript 的后端框架情况。 从上图中可以看到,Express 作为用 JavaScript 编写的后端服务的主流解决方案,占据了后端框架使用率的绝大部分,其次的四个最大框架对比于 Express 来说,占用率都很小。 到目前为止,我们所讨论的几乎所有框架的绝对使用量都在不断增加。自2013年以来,Express 的使用率已经增长了6000%。之所以 Express

    阅读全文...

  • 从0到1,开发一个动画库(2)

    Posted by : lon.y@qq.com on 2018年1月31日

    传送门:从0到1,开发一个动画库(1) 上一节讲到了最基础的内容,为动画构建“帧-值”对应的函数关系,完成“由帧到值”的计算过程。这一节将在上节代码的基础上谈谈如何给一个完整的动画添加各类事件。 在添加各类事件之前,我们先对_loop循环函数进行一些改进: _loop() { const t = Date.now() - this.beginTime, d = this.duration, func = Tween[this.timingFunction]

    阅读全文...

  • 揭秘 Quora 的 Web 服务器架构

    Posted by : lon.y@qq.com on 2018年1月30日

    【导读】:Quora 曾经在 2012 年 8 月使用了一种新的并行架构去渲染页面。相比以前, 3-10 倍的速度来渲染页面。如今,我们又对原来的架构设计做了一些改进,从而进一步提高了速度并节省了成本。Quora 工程师在本文和大家一起分享他们是如何改造的。 原来的并行架构:Webpara 原来的并行架构设计服从主从模式,它的设计和参数是在生产环境中经过一系列基准测试后选定的。该设计中的主结点和从结点在不同的层级里:主结点机器我们称之为 webpara,每

    阅读全文...

  • JS 在微信、微博、QQ、Safari 唤起 App 的解决方案

    Posted by : lon.y@qq.com on 2018年1月30日

    背景 最近在做微信、QQ、微博中使用js唤起App,之前也做过类似的功能,不过比较粗糙,考虑的情况不太全,而且那已经是很久之前的事情了,很多技术都已过时,现在有体验更好,功能更加完善的唤起技术,之前的很多的方案,到了现在都已是不太必要了,现在通过这篇文章分享给大家一个全面的、最新的唤起方案,希望对大家有帮忙。 最终实现的效果 用户点击H5页面的打开App或者下载按钮(这个按钮可能在一个下载入口页、各种分享页面的吸顶或吸底的banner),如果用户已经安装了

    阅读全文...