{"id":1713,"date":"2015-12-13T00:50:00","date_gmt":"2015-12-12T16:50:00","guid":{"rendered":"http:\/\/www.brofive.org\/?p=1713"},"modified":"2018-05-19T20:08:46","modified_gmt":"2018-05-19T12:08:46","slug":"%e8%bd%ac%e8%bd%bd%e8%af%84yahoos-engineers-move-to-coding-without-a-net","status":"publish","type":"post","link":"http:\/\/www.brofive.net\/?p=1713","title":{"rendered":"[\u8f6c\u8f7d+\u8bc4]Yahoo&#8217;s Engineers Move to Coding Without a Net"},"content":{"rendered":"<p><a href=\"http:\/\/www.brofive.net\/wp-content\/uploads\/2018\/05\/image-42.png\"><img loading=\"lazy\" decoding=\"async\" title=\"image\" style=\"border-top: 0px; border-right: 0px; border-bottom: 0px; border-left: 0px; display: inline\" border=\"0\" alt=\"image\" src=\"http:\/\/www.brofive.net\/wp-content\/uploads\/2018\/05\/image_thumb-42.png\" width=\"242\" height=\"155\"><\/a>  <\/p>\n<p><font size=\"4\">\u8fd9\u5c31\u662f\u88ab\u79f0\u4e3a\u300aYahoo\u53d6\u6d88QA\u300b\u7684\u6807\u9898\u515a\u539f\u6587\uff08<strong>\u9700\u8981\u8bf4\u660e\uff0c\u6587\u4e2d\u7684QA\u8bf4\u7684\u662fQC<\/strong>\uff09\u3002\u4ed4\u7ec6\u770b\u770b\uff0c\u8fd8\u662f\u5f88\u6709\u610f\u601d\u7684\uff0c<font color=\"#ff0000\">Yahoo\u57282014Q2-2015Q1\u4e4b\u95f4\u53d6\u6d88\u4e86\u6d4b\u8bd5\u56e2\u961f\uff0c\u8d28\u91cf\u7684\u804c\u8d23\u4ece\u539f\u5148\u8d28\u91cf\u56e2\u961f\u8f6c\u4ea4\u7ed9\u7814\u53d1\u56e2\u961f\uff0c\u8fd9\u9879\u6539\u9769\u7684\u6548\u679c\u662f\uff0c\u903c\u7740\u5f00\u53d1\u56e2\u961f\u7528\u66f4\u4e3a\u81ea\u52a8\u5316\u7684\u65b9\u5f0f\u8fdb\u884c\u6d4b\u8bd5\u5de5\u4f5c\uff0c\u5e76\u4e14\u4e3a\u6700\u7ec8\u8d28\u91cf\u8d1f\u8d23\uff0c\u65e0\u8bba\u9020\u6210\u7cfb\u7edf\u6545\u969c\uff0c\u8fd8\u662f\u762b\u75ea\u3002<\/font>\u8fd9\u79cd\u65b9\u5f0f\u8fdb\u4e00\u6b65\u53d8\u6210\u4e86\u6301\u7eed\u4ea4\u4ed8CD\u3002\u5f53\u7136\u4e5f\u6709\u4eba\u8bf4\u8fd9\u662f\u56e0\u4e3aYahoo\u8981\u88c1\u5458\u800c\u9020\u6210\u7684\u3002<\/font> <\/p>\n<p><font size=\"4\">\u4e1a\u754c\u5bf9\u7011\u5e03\u3001\u654f\u6377\u548cCD\u4e5f\u8ba8\u8bba\u4e86\u5f88\u4e45\uff0c\u6709\u4e9b\u56e2\u961f\u4e00\u4e0b\u5b50\u5c31\u4ece\u654f\u6377\u5f00\u59cb\uff0c\u4e5f\u6709\u56e2\u961f\u4eceCD\u5f00\u59cb\uff0c\u4f46\u662f\u4f30\u8ba1\u90fd\u50cf\u6211\u4eec\u7684\u51e0\u4e2a\u5c0f\u7ec4\u4e00\u6837\uff0c\u9047\u5230\u4e86\u8d28\u91cf\u95ee\u9898\u3002\u5404\u79cd\u65b9\u6cd5\u548c\u56e2\u961f\u7684\u5b9e\u9645\u90fd\u662f\u5bc6\u5207\u76f8\u5173\u7684\uff1a\u5bf9\u4e8e\u4e00\u4e2a\u6210\u719f\u7684\u7011\u5e03\u56e2\u961f\uff0c\u5f88\u5bb9\u6613\u5b9e\u73b0\u654f\u6377\uff1b\u7ed3\u5408\u81ea\u52a8\u5316\u6d4b\u8bd5\uff0c\u4ee5\u53ca\u9002\u7528\u4e8e\u4e92\u8054\u7f51\u7684\u7070\u5ea6\u53d1\u5e03\uff0c\u8f6c\u578b\u4e3aCD\u4e5f\u662f\u5b8c\u5168\u53ef\u80fd\u7684\u3002\u5982\u679c\u8fdb\u8fc7\u591a\u5e74\u79ef\u7d2f\uff0c\u4ee3\u7801\u6210\u719f\u5ea6\u76f8\u5bf9\u8f83\u9ad8\uff0c\u90a3\u4e48\u4e0a\u8ff0\u8fc7\u7a0b\u4e5f\u4f1a\u5f88\u987a\u5229\uff0c\u5bf9\u4e8e\u65b0\u9c9c\u4ee3\u7801\uff0c\u90a3\u5c31\u5f88\u96be\u4fdd\u8bc1\u8d28\u91cf\u4e86\u3002<\/font> <\/p>\n<p><font size=\"4\"><\/font>&nbsp; <\/p>\n<p><strong><font color=\"#ff0000\" size=\"4\">2018\u5e74Review\uff1a\u5bf9\u4e8e\u4ea4\u4ed8\u7c7b\u4ea7\u54c1\uff1a\u4e0d\u80fd\u628a\u8d28\u91cf\u4ea4\u7ed9\u7814\u53d1\u56e2\u961f\u3001\u53ef\u4ee5\u628a\u8d28\u91cf\u4ea4\u7ed9\u90e8\u95e8\u7ea7\u8d28\u91cf\u63a7\u5236\u56e2\u961f\u3001\u751a\u81f3\u8981\u8003\u8651\u628a\u8d28\u91cf\u4ea4\u7ed9\u516c\u53f8\u7ea7\u8d28\u91cf\u63a7\u5236\u56e2\u961f\u3002<\/font><\/strong> <\/p>\n<p><font size=\"4\"><\/font>&nbsp; <\/p>\n<p><font size=\"4\">\u8fd8\u662f\u90a3\u53e5\u8bdd\uff1a\u6ca1\u6709\u94f6\u5f39\uff01<\/font> <\/p>\n<p><font size=\"4\">\u539f\u6587\u6765\u81eaIEEE\uff0c<\/font><a href=\"http:\/\/spectrum.ieee.org\/view-from-the-valley\/computing\/software\/yahoos-engineers-move-to-coding-without-a-net\"><font size=\"4\">http:\/\/spectrum.ieee.org\/view-from-the-valley\/computing\/software\/yahoos-engineers-move-to-coding-without-a-net<\/font><\/a> <\/p>\n<h5><font size=\"4\">Yahoo\u2019s Engineers Move to Coding Without a Net<\/font><\/h5>\n<p><font size=\"4\">By Tekla Perry<\/font> <\/p>\n<p><font size=\"4\">Posted 11 Dec 2015 | 17:00 GMT<\/font> <\/p>\n<p><font size=\"4\">What happens when you take away the quality assurance team in a software development operation? Fewer, not more errors, along with a vastly quicker development cycle.<\/font> <\/p>\n<p><font size=\"4\">That, at least, has been the experience at Yahoo, according to Amotz Maimon, the company\u2019s chief architect, and Jay Rossiter, senior vice president of science and technology. After some small changes in development processes in 2013, and a larger push from mid-2014 to the first quarter of 2015, software engineering at Yahoo underwent a sea change. The effort was part of a program Yahoo calls <strong>Warp Drive<\/strong>: <strong>a shift from <font color=\"#ff0000\">batch releases<\/font> of code to a system of <font color=\"#ff0000\">continuous delivery<\/font>.<\/strong> Software engineers at Yahoo are no longer permitted to hand off their completed code to another team for cross checking. Instead, the code goes live as-is; if it has problems, it will fail and shut down systems, directly affecting Yahoo\u2019s customers.<\/font> <\/p>\n<p><font size=\"4\">\u201cDoing that,\u201d Rossiter told me, \u201ccaused a paradigm shift in how engineers thought about problems.\u201d<\/font> <\/p>\n<p><font size=\"4\">It has also, he said, forced engineers to develop tools to automate the kinds of checks previously handled by teams of humans. An engineer might go through an arduous process of checking code once\u2014but then would start building tools to automate that process.<\/font> <\/p>\n<p><font size=\"4\">I met with Maimon and Rossiter at Yahoo\u2019s annual TechPulse conference on Tuesday in Santa Clara. This private get together gives some 850 of Yahoo\u2019s researchers and engineers an opportunity to publicize their projects by presenting papers and participating in poster sessions.<\/font> <\/p>\n<p><font size=\"4\">It was an odd time to be surrounded by Yahoo\u2019s tech staff\u2014all of whom were focused on software developments\u2014because in that day\u2019s newspapers and in news reports I heard on the car radio as I drove to the meeting, rumors swirled about Yahoo\u2019s imminent restructuring. The researchers believe that any change will take some time to affect their operations, so they continue on, business as usual. (There may have been more of a buzz about the company\u2019s future the following day, when <\/font><a href=\"http:\/\/www.bizjournals.com\/sanjose\/news\/2015\/12\/09\/yahoo-confirms-plans-for-reverse-spinoff-board.html?ana=e_sjo_rdup&amp;s=newsletter&amp;ed=2015-12-09&amp;u=gIpJfGsUMZUF0FclXk5dJw0b6e351a&amp;t=1449681509\"><font size=\"4\">Yahoo announced<\/font><\/a><font size=\"4\"> that it had decided to go forward with a reverse spinoff: that is, transferring all its businesses and liabilities except for its stake in China\u2019s Alibaba group to a new company.)<\/font> <\/p>\n<p><font size=\"4\">Those structural and financial maneuvers notwithstanding, <strong>Yahoo\u2019s decision to take away the safety net the company\u2019s software engineers had come to rely upon was big news<\/strong>. The shift wasn\u2019t easy, Rossiter recalled. It required some tough parenting, with no exceptions, he says. \u201cPeople would come in and say I\u2019m special, I\u2019m working in UI, I\u2019m on the back end, I\u2019m this, I\u2019m that.\u201d But by consistently refusing to give any concessions, it forced a rethink. \u201cWe said \u2018No more training wheels,\u2019 and it made a huge difference. We forced excellence into the process.\u201d<\/font> <\/p>\n<p><font size=\"4\">\u201cIt was not without pain,\u201d Maimon says\u2014though the problems were not as big as he feared. \u201cWe expected that things would break, and we would have to fix them. But the error that had been introduced by humans in the loop was larger than what was exposed by the new system.\u201d<\/font> <\/p>\n<p><font size=\"4\">\u201cIt turns out,\u201d Rossiter chimed in, \u201cthat when you have humans everywhere, checking this, checking that, they add so much human error into the chain that, when you take them out, even if you fail sometimes, overall you are doing better.\u201d<\/font> <\/p>\n<p><font size=\"4\">Of course, <strong>taking away the quality assurance jobs meant, well, taking away jobs<\/strong>. \u201cSome of the engineers really cared about system performance types of things,\u201d Maimon explained, \u201cso they joined related teams. Some started working on automation [for testing], and they thought that was great\u2014that they didn\u2019t have to do the same thing over and over. And others left.\u201d<\/font> <\/p>\n<p><font size=\"4\">Now, a year after the change, \u201c<strong>It\u2019s 100 percent working<\/strong>,\u201d Maimon says. \u201cIt\u2019s amazing. Even people who didn\u2019t think it could ever work now think it\u2019s great, and we are applying it to everything we do in the company.\u201d<\/font> <\/p>\n<p><font size=\"4\">\u76f8\u5173\u8fde\u63a5\uff1a<\/font> <\/p>\n<p><a href=\"http:\/\/coolshell.cn\/articles\/6994.html\"><font size=\"4\">http:\/\/coolshell.cn\/articles\/6994.html<\/font><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u8fd9\u5c31\u662f\u88ab\u79f0\u4e3a\u300aYahoo\u53d6\u6d88QA\u300b\u7684\u6807\u9898\u515a\u539f\u6587\uff08\u9700\u8981\u8bf4\u660e\uff0c\u6587\u4e2d\u7684QA\u8bf4\u7684\u662fQC\uff09\u3002\u4ed4\u7ec6\u770b\u770b\uff0c\u8fd8\u662f\u5f88\u6709\u610f\u601d\u7684\uff0cY&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[73,204,156],"tags":[362,363],"views":3860,"_links":{"self":[{"href":"http:\/\/www.brofive.net\/index.php?rest_route=\/wp\/v2\/posts\/1713"}],"collection":[{"href":"http:\/\/www.brofive.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.brofive.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.brofive.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.brofive.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1713"}],"version-history":[{"count":1,"href":"http:\/\/www.brofive.net\/index.php?rest_route=\/wp\/v2\/posts\/1713\/revisions"}],"predecessor-version":[{"id":1714,"href":"http:\/\/www.brofive.net\/index.php?rest_route=\/wp\/v2\/posts\/1713\/revisions\/1714"}],"wp:attachment":[{"href":"http:\/\/www.brofive.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1713"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.brofive.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1713"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.brofive.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1713"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}