﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-IT技术小屋-随笔分类-互联网</title><link>http://www.blogjava.net/menglee/category/49276.html</link><description>秋风秋雨，皆入我心</description><language>zh-cn</language><lastBuildDate>Sun, 13 Nov 2016 07:38:30 GMT</lastBuildDate><pubDate>Sun, 13 Nov 2016 07:38:30 GMT</pubDate><ttl>60</ttl><item><title>一些深度学习库：按Python和C++等语言分类</title><link>http://www.blogjava.net/menglee/archive/2016/11/13/431980.html</link><dc:creator>Meng Lee</dc:creator><author>Meng Lee</author><pubDate>Sat, 12 Nov 2016 16:45:00 GMT</pubDate><guid>http://www.blogjava.net/menglee/archive/2016/11/13/431980.html</guid><wfw:comment>http://www.blogjava.net/menglee/comments/431980.html</wfw:comment><comments>http://www.blogjava.net/menglee/archive/2016/11/13/431980.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/menglee/comments/commentRss/431980.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/menglee/services/trackbacks/431980.html</trackback:ping><description><![CDATA[<h2><div><font color="#333333" face="Microsoft YaHei, FreeSans, Arimo, Droid Sans, wenquanyi micro hei, Hiragino Sans GB, Hiragino Sans GB W3, FontAwesome, sans-serif"><span style="font-size: 10pt; font-weight: 100;">本文介绍了包括 Python、Java、Haskell等在内的一系列编程语言的深度学习库。<br /><br /></span></font></div><div><span style="font-size: 10pt;">Python</span></div><div><ul><li><span style="font-weight: normal; font-size: 12pt; color: #ff00ff;"><a href="http://deeplearning.net/software/theano"><span style="font-size: 10pt;">Theano</span></a></span><span style="font-weight: normal; font-size: 10pt;">是一种用于使用数列来定义和评估数学表达的 Python 库。它可以让 Python 中深度学习算法的编写更为简单。很多其他的库是以 Theano 为基础开发的。</span></li><li><span style="font-weight: normal; font-size: 12pt; color: #ff00ff;"><a href="http://caffe.berkeleyvision.org/"><span style="font-size: 10pt;">Caffe</span></a></span><span style="font-weight: normal; font-size: 10pt;">是一种以表达清晰、高速和模块化为理念建立起来的深度学习框架。它是由伯克利视觉和学习中心（BVLC）和网上社区贡献者共同开发的。谷歌的 DeepDream 人工智能图像处理程序正是建立在 Caffe 框架之上。这个框架是一个 BSD 许可的带有 Python 接口的 C++库。</span></li><li><span style="font-weight: normal; font-size: 12pt; color: #ff00ff;"><a href="https://github.com/dnouri/nolearn"><span style="font-size: 10pt;">nolearn</span></a></span><span style="font-weight: normal; font-size: 10pt;">包含大量其他神经网络库中的包装器和抽象（wrappers and abstractions），其中最值得注意的是 Lasagne，其中也包含一些机器学习的实用模块。</span></li><li><span style="font-weight: normal; font-size: 12pt; color: #ff00ff;"><a href="http://radimrehurek.com/gensim/"><span style="font-size: 10pt;">Genism</span></a></span><span style="font-weight: normal; font-size: 10pt;">是一个部署在 Python 编程语言中的深度学习工具包，用于通过高效的算法处理大型文本集。</span></li><li><span style="font-weight: normal; font-size: 12pt; color: #ff00ff;"><a href="http://chainer.org/"><span style="font-size: 10pt;">Chainer</span></a></span><span style="font-weight: normal; font-size: 10pt;">连接深度学习中的算法与实现，它强劲、灵活而敏锐，是一种用于深度学习的灵活的框架。</span></li><li><span style="font-weight: normal; font-size: 12pt; color: #ff00ff;"><a href="https://github.com/nitishsrivastava/deepnet"><span style="font-size: 10pt;">deepnet</span></a></span><span style="font-weight: normal; font-size: 10pt;">是一种基于 GPU 的深度学习算法的 Python 实现，比如：前馈神经网络、受限玻尔兹曼机、深度信念网络、自编码器、深度玻尔兹曼机和卷积神经网络。</span></li><li><span style="font-weight: normal; font-size: 12pt;"><a href="https://github.com/hannes-brt/hebel"><span style="font-size: 10pt;">Hebel</span></a></span><span style="font-weight: normal; font-size: 10pt;">是一个在 Python 中用于带有神经网络的深度学习的库，它通过 PyCUDA 使用带有 CUDA 的 GPU 加速。它可实现大多数目前最重要的神经网络模型，提供了多种不同的激活函数和训练方式，如动量，Nesterov 动量，退出（dropout）和 前期停止（early stopping）。</span></li><li><span style="font-weight: normal; font-size: 12pt;"><a href="https://github.com/dmlc/cxxnet"><span style="font-size: 10pt;">CXXNET</span></a></span><span style="font-weight: normal; font-size: 10pt;">是一种快速，简明的分布式深度学习框架，它以 MShadow 为基础。它是轻量级可扩展的 C++/CUDA 神经网络工具包，同时拥有友好的 Python/Matlab 界面，可供机器学习的训练和预测使用。</span></li><li><span style="font-weight: normal; font-size: 12pt;"><a href="https://github.com/andersbll/deeppy"><span style="font-size: 10pt;">DeepPy</span></a></span><span style="font-weight: normal; font-size: 10pt;">是一种建立在 Mumpy 之上的 Python 化的深度学习框架。</span></li><li><span style="font-weight: normal; font-size: 12pt;"><a href="https://github.com/vishwa-raman/DeepLearning"><span style="font-size: 10pt;">DeepLearning</span></a></span><span style="font-weight: normal; font-size: 10pt;">是一个用 C++和 Python 开发的深度学习库。</span></li></ul></div><div><span style="font-size: 10pt;">C++</span></div><div><ul><li><span style="font-size: 12pt; font-weight: normal;"><a href="http://eblearn.sourceforge.net/index.shtml"><span style="font-size: 10pt;">eblearn</span></a></span><span style="font-size: 10pt; font-weight: normal;">是一个机器学习的开源 C++库，由纽约大学机器学习实验室的 Yann LeCun 牵头研发。尤其是，按照 GUI、演示和教程来部署的带有基于能量的模型的卷积神经网络。</span></li><li><span style="font-size: 12pt; font-weight: normal;"><a href="http://www.comp.nus.edu.sg/~dbsystem/singa/"><span style="font-size: 10pt;">SINGA</span></a></span><span style="font-size: 10pt; font-weight: normal;">被设计用来进行已有系统中分布式训练算法的普通实现。它由 Apache Software Foundation 提供支持。</span></li></ul></div><div><span style="font-size: 10pt;">Java</span></div><div><ul><li><span style="font-size: 12pt; font-weight: normal;"><a href="http://nd4j.org/"><span style="font-size: 10pt;">N-Dimensional Arrays for Java (ND4J)</span></a></span><span style="font-size: 10pt; font-weight: normal;">是一种为 JVM 设计的科学计算库。它们被应用在生产环境中，这就意味着路径被设计成可以最小的 RAM 内存需求来快速运行。</span></li><li><span style="font-size: 12pt; font-weight: normal;"><a href="http://deeplearning4j.org/"><span style="font-size: 10pt;">Deeplearning4j</span></a></span><span style="font-size: 10pt; font-weight: normal;">是第一个为 Java 和 Scala 编写的消费级开元分布式深度学习库。它被设计成在商业环境中使用，而非研究工具。</span></li><li><span style="font-size: 12pt; font-weight: normal;"><a href="http://www.heatonresearch.com/encog"><span style="font-size: 10pt;">Encog</span></a></span><span style="font-size: 10pt; font-weight: normal;">是一种先进的机器学习框架，支持支持向量机（Support Vector Machines），人工神经网络（Artificial Neural Networks），基因编程（Genetic Programming），贝叶斯网络（Bayesian Networks），隐马尔科夫模型（Hidden Markov Models）和 遗传算法（Genetic Algorithms）。</span></li></ul></div><div><span style="font-size: 10pt;">Lua</span></div><div><ul><li><span style="font-size: 12pt; font-weight: normal;"><a href="http://torch.ch/"><span style="font-size: 10pt;">Torch</span></a></span><span style="font-size: 10pt; font-weight: normal;">是一种科学计算框架，可支持多种计算机学习算法。</span></li></ul></div><div><span style="font-size: 10pt;">Haskell</span></div><div><ul><li><span style="font-size: 12pt; font-weight: normal;"><a href="https://github.com/ajtulloch/dnngraph"><span style="font-size: 10pt;">DNNGraph</span></a></span><span style="font-size: 10pt; font-weight: normal;">是一个用 Haskell 编写的深度神经网络生成 DSL。</span></li></ul></div><div><span style="font-size: 10pt;">.NET</span></div><div><ul><li><span style="font-size: 12pt; font-weight: normal;"><a href="http://cran.um.ac.ir/web/packages/darch/index.html"><span style="font-size: 10pt;">Accord.NET</span></a></span><span style="font-size: 10pt; font-weight: normal;">是一种.NET 机器学习框架，包含声音和图像处理库，它完全由 C# 编写。它是一种为开发生产级的计算机视觉、计算机听觉、信号处理和统计应用而设计的完整框架。</span></li></ul></div><div><span style="font-size: 10pt;">R</span></div><div><ul><li><span style="font-size: 12pt; font-weight: normal;"><a href="http://cran.um.ac.ir/web/packages/darch/index.html"><span style="font-size: 10pt;">darch</span></a></span><span style="font-size: 10pt; font-weight: normal;">包可以用于建立多层神经网络（深层结构）。其中的训练方式包括使用对比发散法进行提前训练，或使用通常的训练方法（如反向传播和共轭梯度）进行一些微调。</span></li><li><span style="font-size: 12pt; font-weight: normal;"><a href="https://cran.r-project.org/web/packages/deepnet/index.html"><span style="font-size: 10pt;">deepnet</span></a></span><span style="font-size: 10pt; font-weight: normal;">实现了一些深度学习架构和神经网络算法，包括 BP、RBM、DBN、深度自编码器等等。</span></li></ul></div></h2><img src ="http://www.blogjava.net/menglee/aggbug/431980.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/menglee/" target="_blank">Meng Lee</a> 2016-11-13 00:45 <a href="http://www.blogjava.net/menglee/archive/2016/11/13/431980.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>我是如何进入谷歌</title><link>http://www.blogjava.net/menglee/archive/2014/06/13/414689.html</link><dc:creator>Meng Lee</dc:creator><author>Meng Lee</author><pubDate>Thu, 12 Jun 2014 18:00:00 GMT</pubDate><guid>http://www.blogjava.net/menglee/archive/2014/06/13/414689.html</guid><wfw:comment>http://www.blogjava.net/menglee/comments/414689.html</wfw:comment><comments>http://www.blogjava.net/menglee/archive/2014/06/13/414689.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/menglee/comments/commentRss/414689.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/menglee/services/trackbacks/414689.html</trackback:ping><description><![CDATA[<span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">今天，终于有时间静下心来回顾过去两年来所做的事情，感慨万千，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">一时之间竟不知从何说起。两年以来，遇到的困难着实不少，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">但每每遭遇挫折与不顺之后，却往往能柳暗花明，遇到新的转机，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">让我真真切切地感受到了功夫不负有心人这句话的含意。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">一、为什么要出国</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">其实，之前从来没有考虑过要出国，更没有想过能直接出国工作。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">回想一下，这个决定的做出，多半还是缘于自己骨子里的不安分。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我从很大程度上来说是一个闲不住的人，从小学、中学、</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">大学到研究生，我几乎每天都有明确的目标。然而，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">2013年从公司到事业单位工作以后，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我的生活发生了巨大地转变。简单的工作、空洞的公文、</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">无聊的活动占据了我全部的工作任务。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">有段时间几乎天天写材料搞活动。领导经常夸我材料写得又快又好，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">活动也搞得有声有色，心里感觉很有成就感。然而，时间一长，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">逐渐发现那些公文永远是一个套路，以至于我分门别类，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">摸索出了几个万能模板。而活动则千篇一律，让人疲于应付。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我甚至可以看到六十岁退休时我在干什么，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">于是一阵恐惧感常常会莫名袭来，因为我不安分、不满足于此。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我不能放弃所学所长，我不能庸庸碌碌在这里度过未来的几十年，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我还有梦想，我还要登高看世界。为了这个，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我走过了不平凡的两年。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">二、如何出国</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">对于普通人来说，出国大致有三条路。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">第一条路是申请去国外留学，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">取得学位之后以应届毕业生的身份找工作，然后留在国外生活。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">这是一条比较稳妥、简便的路，走这条路的人最多。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">第二条路是先进入跨国公司的中国分公司工作一段时间，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">然后找机会外派到国外总部工作。走这条路的要求比较多，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">首先要能够进入比较大的跨国公司工作，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">其次这个公司愿意将中国员工transfer到国外，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">同时还要外国总部有部门愿意接收你，所以还是需要一些运气。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">但是，如果成功，好处也显而易见。省去了读书的时间和学费，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">降低了家庭负担，对于家境一般的人是非常好的选择。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">第三条路是直接参加外国公司的面试，通过之后直接去国外工作。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">这条路要求最高，需要通过外国公司严格的面试，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">另外还要能够成功取得签证（美国工作签证就需要抽签）。因此，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">走这条路更需要实力、机遇和运气。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">鉴于第三条路非常难走，为了保证成功，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我选择了同时申请学校和参加外国公司面试的办法，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">这也注定了我将付出更多的艰苦努力。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">三、申请学校</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">申请学校从准备到最终完成，我大概用了一年时间。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">其间参加了三次GRE和一次托福考试。回想准备的过程，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">最大的敌人就是自己，最重要的法宝就是坚持坚持再坚持。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">记得第一次考GRE没有取得理想的成绩，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">因为是第一次参加英语考试，心情非常失落。幸亏当时有女朋友（</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">现在的老婆）的鼓励，我继续复习没有放弃。经过一个月的复习，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">取得了非常不错的托福成绩。记得托福出成绩的那天，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我紧张得不敢查，点开页面的那一刻，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我都不敢相信居然能有这么不错的成绩。特别是听力，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">考试的时候觉得好几个都没有听清楚，最后居然有27分，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">真是不可思议，可见功夫不负有心人，付出总有回报的。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">有了英语成绩之后，就是撰写申请文书。这方面我完全没有经验，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">所有的信息全部是通过一亩三分地论坛获得的。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">这个论坛信息非常丰富，基本上所有申请相关的内容都有涉及。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我每天都会花一些时间浏览别人的帖子，为自己定位选校，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">找文书灵感等等。非常感谢我的本科和研究生导师，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">还有蒋志诚为我递推荐信，没有你们的帮助，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我不可能完成申请工作。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">最后，我申请了美国和加拿大的十五所学校的计算机专业的研究生，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">拿到了CMU、USC和多伦多大学的offer。其中，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">CMU的Data Science program应该是世界数一数二的，录取率非常低，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">毕业后的去向也非常好，大多数都可以进入美国一流公司工作。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">多大也是加拿大排名第一的学校，计算机的就业也非常好。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">四、Facebook的面试</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">参加Facebook的面试也完全是无意的，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">在Linkedin上收到了Facebook HR的邀请信，于是也没有怎么准备就做了电面，居然反馈非常好，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">马上就给我安排了onsite面试，地点是印度的海得拉巴。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">但是，始终是没有做什么准备，而且和谷歌不一样的是，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">HR办事效率实在太高，每一轮间隔都非常短，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">导致我根本没有时间热身一下，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">连leetcode都没有做过就匆匆参加面试了，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">最终没有如愿通过面试。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">不过，这次面试还是很有收获。第一次出国，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">第一次参加美国公司全英文面试，学到了太多，积累了经验，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">可以说如果没有Facebook的失败，我是不可能进入谷歌的。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">五、Google的面试</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">参加谷歌的面试可以说完全是老婆的怂恿。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">从印度参加完Facebook面试回来之后，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我就开始专心于学校申请了。但是，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">老婆建议我试试面一下Google。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">由于Facebook的失利和Google近乎苛刻的面试流程，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我开始是抗拒参加的。最后，在老婆的一再要求下，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我终于找了一个在谷歌上海工作的师兄做了内推。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">四月底我收到了谷歌北京HR的第一通电话，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">也正式拉开了我为期一年的面试流程。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">和HR通电话不久，我进行了第一次电话面试。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">谷歌的电话面试和Facebook差不多，就是面试官打过来，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">把题目口述并且写在Google Doc上，然后我把程序写在Google Doc上。第一次电面的题目不难，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">但谷歌对代码效率和清晰度的要求远远超出了我的想像。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">第一轮面得磕磕绊绊，但是幸好面试官是中国人，非常nice，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">没有让我fail。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">于是，我又被要求进行第二次电面。期间由于面试官临时有事爽约，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我等了差不多一个月。但是，也就是这一个月，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我努力做了一些准备，虽然面试依旧不是十全十美，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">但是我还是有惊无险地进入到了onsite面试环节。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">虽然可以onsite面试了，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">但是我依旧对进入谷歌不报任何希望，因为我清楚的知道，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">谷歌面试实在是太难了，onsite面试的挑战将远远大于电面。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">因此，我去北京面试完全是想做一次免费旅游。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">面试前一天还许久不见的万威夫妇吃饭，聊得很开心，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">完全没有把面试放在心上。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">也许是放松的原因，我前一天晚上睡得很好，第二天我精神非常好。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">不过谷歌毕竟是谷歌，面试第一轮一上来就给了我一个下马威。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">一个coding题一个设计题，表面上很简单，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">但是做出来总是有这样那样的问题，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">第一轮完了之后我基本打算回家了。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">但是，不知道为什么，从第二轮开始，就越来越顺利，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">coding做得非常好，基本上是一次写完，没有涂改，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">也没有被面试官找到大的bug。突然之间，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">隐隐感觉出现了一丝希望。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">四轮过后，我结束了第一次onsite面试。但是，三天之后，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我被告知由于设计题做得不好，我被要求进行一次加面，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">地点在上海。于是，我又在上海做了一次面试，只有一个设计题。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我感觉答得还可以，但是心情真的是忐忑不安，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">特别是接下来的一个礼拜，几乎是坐立不安。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">记得是一个礼拜之后的礼拜五中午，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我正做准备主持下午的道德讲堂，突然接到了一个010的电话，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我知道是谷歌的电话。接通电话的那一刻，空气都几乎要凝固了，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">当听到通过HC的消息时，我激动得不能自已。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">不可能完成的任务居然完成了，虽然不知道能不能去美国总部工作，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">但是能进入谷歌已经非常不容易了，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">而且谷歌非常鼓励transfer去美国工作，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">因此机会还是很多的。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">然而，让我没有想到的是，接下来的team match却异常艰难，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">陆陆续续几个team都没有成功match上。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">转眼就到了2014年春季，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">半年的等待让我对何时进入谷歌非常悲观，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">加上申请学校工作十分繁重，我基本没有关注这个事情。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">就在我快要放弃的时候，拿到了美国一个公司的offer，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">他们答应给我办H1B签证。于是，我把这个情况告诉了谷歌，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">要求他们尽快给找到team，不然我就去美国了。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">结果谷歌居然在三天之内为我match上了英国office的一</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">个team，让人不得不感叹还是要offer多才好啊！于是，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我又经过了近三个月的签证办理流程，终于要启程赴英了。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">回顾两年来的努力，终于要实现自己的梦想了，感慨万千。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">在短短的人生中，能有这一段不寻常的经历，我觉得十分幸运。</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">展望未来，我想读万卷书不如行万里路，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">未来希望能够利用在伦敦工作的机会，尽量多去欧洲各国走走，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">丰富自己的阅历，开拓自己的眼界。</span><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><br style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;" /><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">最后要感谢老婆一直以来的支持和鼓励，你一直是我前进的动力；</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">其次要感谢父母的不理解和不支持，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">你们的反对让我更加完善了自己的计划，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">逼着我找到了一条最好的出路；还要感谢师长和朋友们的帮助，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">感谢杨老师和沈老师还有蒋志诚不厌其烦地帮我递推荐信，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">感谢万威夫妇多次在北京款待我，没有你们的美食，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">我是不可能完成面试的；还有许多帮助过我的人，</span><wbr style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;"><span style="color: #222222; font-family: arial, sans-serif; font-size: 13px; line-height: normal; background-color: #ffffff;">在这里就不能一一感谢了。</span><br /><img src ="http://www.blogjava.net/menglee/aggbug/414689.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/menglee/" target="_blank">Meng Lee</a> 2014-06-13 02:00 <a href="http://www.blogjava.net/menglee/archive/2014/06/13/414689.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于新浪微博开放平台API和Java客户端的吐槽</title><link>http://www.blogjava.net/menglee/archive/2011/07/31/355453.html</link><dc:creator>Meng Lee</dc:creator><author>Meng Lee</author><pubDate>Sun, 31 Jul 2011 12:49:00 GMT</pubDate><guid>http://www.blogjava.net/menglee/archive/2011/07/31/355453.html</guid><wfw:comment>http://www.blogjava.net/menglee/comments/355453.html</wfw:comment><comments>http://www.blogjava.net/menglee/archive/2011/07/31/355453.html#Feedback</comments><slash:comments>11</slash:comments><wfw:commentRss>http://www.blogjava.net/menglee/comments/commentRss/355453.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/menglee/services/trackbacks/355453.html</trackback:ping><description><![CDATA[<span class="Apple-style-span" style="color: #333333; font-family: Tahoma, Verdana, STHeiTi, simsun, sans-serif; background-color: #ffffff; ">
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="color: #333333; font-family: Tahoma, Verdana, STHeiTi, simsun, sans-serif; font-size: 14px; line-height: 21px; "></span></p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">周末用了下新浪微博开放平台API和官方发布的Java客户端，感觉可以用两个字形容：坑爹！</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">先说说遇到的几个极其弱智的bug吧：</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">1）分页</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">官方API文档里面对数据分页获取的说明是使用cursor和count这两个参数。其中，cursor指明了起始记录的位置，而count指明了当前每页的记录条数，请求第一页的时候cursor为-1。返回结果会给出next_cursor，指明下一页的起始位置。</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">这个设计看起来不错，问题是根据这个文档，得到的结果会有重复。也就是说同一条记录会出现在多个页面中，而且这种重复出现的频率是随机的。试想连程序的行为都无法预测，叫别人怎么开发应用？！</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">更搞笑的是，官方发布的Java客户端居然把cursor写成了page，导致了不管怎么设置参数，返回的都是很多重复的数据，但重复的比例又是随机的！难道新浪没有对这个客户端进行过简单的测试就发布了吗？无法想象！！</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">2）返回结果的解析</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">好不容易把用户信息得到了，新浪自己写了一个JavaBean用来表示一个User的信息。问题是把JSON解析成Java对象的时候，居然把布尔属性字段解析错了，导致每次返回都是false，好不容易得到的数据就这么泡汤了~~难道解析JSON很难嘛？？敢测试下再发布吗？</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">3）诡异的负数</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">我小学学到的知识告诉我，人的个数不可能是负数。于是我天真的在followers_count这个数据库字段上加了unsigned，本以为教数据库的老师应该很开心吧，这孩子设计的数据库还蛮严谨的，而且应该能够和新浪的数据很好地匹配。</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">于是我开心的运行程序，诡异的错误出现了：超出字段范围。晕，于是检查所有数字字段是否超过了表示范围，N遍检查过后确认数据库没问题，纠结~~于是看log，发现返回的数据里面，有一个项的followers_cout字段是-2，负数！！！尼玛这人虽然粉丝少了点，也不至于欠你新浪两个粉丝吧，我当时就凌乱了，于是加了很多异常数据的判断和检查。。。</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">4）诡异的版权信息</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">Java客户端里面很多文件的作者信息是：@author Yusuke Yamamoto - yusuke at mac.com，感觉这应该是一个苹果公司的员工开发的，然后新浪拿过来，没有code review，没有测试，就直接官方发布了。。。</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">这样不重视代码质量，把产品构建在志愿者的贡献之上，我觉得是新浪的耻辱，更是中国互联网产业的顽症恶疾。</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.8em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">以上只是我这两天试用了一小部分API的感受。由于各种bug，我不得不阅读源代码，并根据我的需求改写代码，甚至一度我准备抛弃这个客户端，直接用HTTP调用。反正最后严重降低了我的效率。<br /></p><div>回想起这两天传高铁出事是程序员的问题，我看要按照新浪这质量标准，不知道还要出什么大事~~</div><p>&nbsp;</p></span><img src ="http://www.blogjava.net/menglee/aggbug/355453.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/menglee/" target="_blank">Meng Lee</a> 2011-07-31 20:49 <a href="http://www.blogjava.net/menglee/archive/2011/07/31/355453.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>