转自李鑫慧|Bella: 233转自娄萌萌.py: 围观吃键盘地址 转自王葡萄.hs: 据说有人要吃键盘了叉姐内心想的是2013年被ITMO虐成了亚军,没想到退役了之后还能被ITMO虐吃键盘。。。 2015-05-21
上一篇     下一篇 共24篇  

Research at Google on G+: Lou Tiancheng shares his experiences with Code Jam, his research and ... 2013年04月19日 16:32:39




This week we sat down with Google Software Engineer +Tiancheng Lou, known by many in the programming community by his handle “ACRush”. Tiancheng joined Google shortly after obtaining his PhD in Computer Science in 2011 from the Institute for Theoretical Computer Science at Tsinghua University in Beijing. 

This year marks the 10th anniversary of Google’s Code Jam, our annual international programming competition that draws some of the top amateur and professional talent in the world together to solve algorithmic puzzles. Code Jam registration is currently open (, with the Qualification Round scheduled to begin on April 12th. With over 35,000 programming enthusiasts competing last year, we expect this year’s Code Jam to be even more exciting.

As a participant in five Code Jam competitions, and as the 1st place winner in 2008 and 2009, Tiancheng shares his experiences with Code Jam, his research and role at Google, and advice on how to come out on top in this year’s competition.

Research at Google:  Before we dive into your experiences with Code Jam and Google, can you tell us when you first developed an interest in programming?

Tiancheng Lou:  I was always interested in math, but during my first year in High School I took a programming class and learned how to code in Pascal. I really enjoyed the math aspect of programming - I liked the idea of learning ways to tell a computer what to do, how to control it; specifically, using math to tell a computer how to solve a problem. I believe strong mathematical skills are a prerequisite for being a good programmer.

R@G: So you began your interest in programming at a fairly young age. Can you tell us a little bit about how your interest in coding competitions developed, and your experience with them so far?

TL: My interest in coding competitions started early too; I began competing about 6 months after I started learning programming. I have always enjoyed solving challenging problems, but if you really want to improve your skills, the competition environment is very beneficial as it pushes you to think fast, and code with accuracy. Also, you see how other competitors solve problems. It gives you the chance to talk with the people you compete against and learn from them.  

I’ve placed 3rd in Facebook Hacker Cup for the past two years. Incidentally, the 2011 and 2013 first place winner, +Petr Mitrichev, is also a Googler. I have competed regularly in the TopCoder competitions since 2007 and won Codecraft in 2008 and 2009. In 2007 and 2009, my team came second in the ACM ICPC finals. I also competed in Code Jam five times from 2006 - 2011, placing 1st in 2008 and 2009.  I enjoy competing and now have many friends in the coding community - we get the opportunity to know most of the top coders, talk tech, and travel to different cities together.  

R@G: That’s an impressive record!  Do you think having your PhD in CS has helped you in coding competitions?

TL:  I would say, yes, my work on algorithms as a PhD student was very helpful. It allows me to understand the fundamental features of algorithms and how each one is different, letting me choose the optimal algorithm in determining a solution to a problem. It is very important to have good knowledge of number theory, discrete math, probability; most everyone who enters the competitions has good programming skills, so having a good understanding of the math will give you an advantage. But there is also practice, which is very important. 

R@G: How does Code Jam compare to the other competitions you’ve participated in? Do you think competitions like Code Jam are important to the coding community?

TL:  I think Code Jam is one of the best competitions. The tasks are very challenging, even in the preliminary online rounds. The problems ensure a balance between accuracy and speed when developing a solution, which is applicable to my work as well. Also, Code Jam allows you to use any programming language you feel comfortable with to solve a problem, so it is possible for someone with a less strong programming background but a strong math background to compete.

R@G: What is your programming language of choice?

TL:  I compete in C++. It’s my favorite language and what I use most at work.

R@G: Why did you decide to come and work for Google? Did your experience with Code Jam influence your decision? 

TL: I had interned with Google in the summer of 2007, so I already had a sense for how it might be. I like that Google values unique approaches and solutions to complicated problems. My experience with Code Jam definitely confirmed my sense of what Google was like. 

Another thing that influenced my decision was that I had read many industry papers, and found that papers presenting research from Google were very influential and had impactful results. I was very interested in large networks, so the opportunity to come to Mountain View and work on Google+ was ultimate


阅读(2042)| 评论(1)

  1. 江乐晚.noip 2013年04月19日 16:54:47 举报

玩转人人 公共主页 公众平台 客服帮助 隐私

商务合作 品牌营销 中小企业

公司信息 关于我们 人人公益 招聘

友情链接 经纬网 人人游戏 人人分期

人人移动客户端下载 iPhone/Android iPad客户端 其他人人产品