Библиотека Google для создания роботов теперь в открытом доступе (+видео)
Намереваясь сделать более доступной разработки на базе технологий локализации и отображения (SLAM), Google выкладывает в открытый доступ свою библиотеку Cartographer для работ по картографированию окружающего пространства в форматах 2D и 3D.
SLAM, конечно же, является одним из важнейших компонентов для роботов-пылесосов, БПЛА, автономных транспортных средств и других автономных платформ. Алгоритмы SLAM объединяют данные от датчиков для определения их позиций и создания карты окружающей среды. Например, возьмем робота iRobot Roomba. Очищая пол, он использует датчики и камеры для отображения среды в помещении.
«В настоящее время Cartographer ориентирован, в первую очередь, на лазерные датчики (LIDAR SLAM), — отмечает Google. — Последующее развитие совместно с другими участниками рынка, мы надеемся, добавит поддержку большего числа датчиков и платформ, а также новые функции, включая постоянное отображение и локализацию на уже существующей карте».
Google сообщает об открытом доступе к собранным за три года данным на основе лазерных и инерциальных датчиков, полученным с помощью платформы на базе рюкзака для 2D и 3D отображения, созданной во время разработки и тестирования Cartographer.
Google представила Cartographer в 2014 году как инструмент картографирования в рюкзаке для использования внутри помещений. Человек с таким рюкзаком просто гуляет по любому зданию и план каждого этажа автоматически генерируется в режиме реального времени. В дополнение к рюкзаку можно также использовать приложение для добавления интересующих зон во время прогулки вокруг здания.
Окей, Гугл! Как устроиться в Google? | GeekBrains
Как начинающему программисту стать сотрудником крупной зарубежной IT-компании?
https://d2xzmw6cctk25h.cloudfront.net/post/1720/og_cover_image/f1ada9d2b7c1044754b6f534295303a0
Какой язык лучше изучить, какие знания и навыки потребуются? Как подготовиться к собеседованию и вести себя на нем? На эти вопросы порталу GeekBrains ответил сотрудник Google Сергей Березин.
Сергей живет в США с 1995 года, в Google работает с января 2014-го в отделении Google Chrome. Занимается IT-поддержкой разработчиков Chrome.
— Добрый день, Сергей! Расскажи, как ты оказался в США?
— Это был август 1995 года. Я закончил Новосибирский государственный университет и поехал в Штаты — продолжать обучение в университете Карнеги-Меллон. В американские вузы можно поступать удаленно (в России сейчас действует такая же система). Сдаешь стандартизованные тесты, пишешь заявление и рассылаешь сразу в десяток университетов — в какой возьмут. Эта программа для поступающих работает и сегодня. Нужно еще внести сравнительно небольшую сумму за подачу документов (в 1995 году было около 50 долларов). И остается только ждать результатов. Если тебя приняли — собираешься и едешь учиться. В некоторых вузах придется платить за обучение — значит нужно будет еще и работать. Другие сами предлагают стипендию. В Карнеги-Меллон, например, она была.
— Сложно ли устроиться на работу в IT-компанию в Штатах? Какие могут быть преграды для соискателя из России?
— После учебы я успел поработать в нескольких компаниях, прежде чем попал в Google. Корпорации постоянно нуждаются в кадрах. Особенно сейчас востребованы программисты и другие специалисты высокой квалификации. И прием новых сотрудников в компаниях — особенно крупных — не прекращается.
В общем-то неважно, откуда специалист приедет. Взять могут и русского, и китайца — ни национальность, ни страна большого значения не имеют. Нанять американца проще, но если за рубежом найдется полезный компании специалист, его могут пригласить. Для этого работодатель готов даже оформить за свой счет рабочую визу.
В США очень серьезно относятся к трудоустройству иностранных граждан. Чтобы взять на работу иностранца, компании нужно выполнить два условия. Во-первых, доказать, что найти американца с аналогичным набором знаний, умений и навыков не удалось или это вообще невозможно. Иностранец, претендующий на рабочее место, должен быть незаменимым. Таково требование законодательства.
Во-вторых, потратить немалые деньги на оформление кучи документов — в том числе рабочей визы. Когда люди едут на работу в США, они могут ожидать, что компания спонсирует им вид на жительство, так называемую грин-карту. Это обходится работодателям в несколько тысяч долларов, и с оформлением много волокиты. Но компании выгодно, чтобы человек остался, а не ушел к конкурентам или, еще хуже, увез наработки коллектива в другую страну.
Получить грин-карту можно и самостоятельно, без помощи компании — я пытался. Но оформить ее сложнее, чем даже гражданство. Есть много критериев, по которым иностранца оценивают. Штаты могут дать вид на жительство, если человек выдающийся в своем деле. Но важно четко определить — в какой области ты незаменим. Чем более узкой будет эта сфера и чем значимее ты в ней — тем выше шансы. Не угадаешь — и ничего не получится.
Так что выгоднее, чтобы грин-карту оформила компания-работодатель. Она сама будет доказывать чиновникам, что именно этого иностранца невозможно заменить американцем. Наниматели прибегают к хитрости — пишут список требований к кандидатуре, что необходим специалист, говорящий на таком-то языке, знающий такие-то технологии… Разве что не указывают рост и цвет волос. В результате взять невозможно никого, кроме именно этого специалиста. Значит он необходим, и ему нужно дать грин-карту.
Существуют еще иммиграционные квоты — это уже государственная система, довольно сложная и жесткая. За год в страну может въехать по рабочим визам ограниченное количество людей. Если квота исчерпана, вы не сможете приехать на работу в США — даже если компания готова нанять вас и оплатить все расходы на визу и прочее.
— Что еще работодатель может оплатить, помимо оформления документов и билета на самолет? На что можно рассчитывать?
— Если компания приглашает соискателя на интервью — оплачивает по крайней мере часть расходов в поездке. Могут оплатить гостиницу, аренду автомобиля. С иностранцами расходы получаются в целом существенно выше, так что не стоит рассчитывать, что компания возьмет на себя вообще все траты.
Если вас приняли на работу — могут частично оплатить переезд. Если очень постараться — даже помочь с жильем на первые несколько дней. Но с момента трудоустройства уже будут платить зарплату — так что дальше эти расходы уже на самом сотруднике.
— Общежитий для сотрудников не предусмотрено?
— У компании Google таких общежитий нет.
— В Google работает много иностранцев?
— Довольно много. Сложно сказать навскидку, но более 10 % и точно меньше половины. У меня много знакомых, кто получал визы и работал над грин-картами.
— Специалисты каких направлений наиболее востребованы сейчас в IT-компаниях?
— Я не изучал нынешнее состояние рынка, но исходя из того, что вижу, сегодня наибольшим спросом пользуются спецы низкого уровня. Молодые люди, которые неплохо разбираются в компьютерах и программировании, смышленые, но без большого опыта работы. Для таких много мест.
В любой компании масса не особенно интеллектуальных, рутинных задач — где нужно писать много кода, поддерживать работу систем. Это не требует ни высокой квалификации, ни глубоких знаний, ни опыта. Но сотрудник должен понимать, что именно он делает и зачем, что происходит на его участке работ. Он должен быстро учиться, оперативно разбираться, как починить неработающий код или достроить его. И главное — уметь и стремиться делать все это качественно. Вот таких специалистов требуется много. По количеству набираемых сотрудников — это самая популярная ниша.
Когда на работу берут человека, у которого за плечами большой опыт — есть риск, что его труднее обучить новому. Он будет пытаться работать, как привык. А то и вовсе скажет: «Вы тут все делаете неправильно, давайте я вам переделаю, как надо… И зарплату мне дайте в два раза больше». Так что компаниям, вероятно, выгоднее нанимать людей с минимальным опытом.
Если говорить о специализации, по большей части IT-компании нуждаются в программистах, причем востребованы спецы всех направлений: и front end, и back end, и поддержка стабильности систем. Обычно все это описывается термином software engineer — «инженер программного обеспечения». Когда такой человек попадает в компанию, ему находят место. Иногда его будут перекидывать с одного проекта на другой, давать разнообразные задачи в зависимости от текущих потребностей компании. Так что чем быстрее учишься новому — тем лучше.
Для компании важен не столько объем знаний, с которым новичок придет, сколько их качество. И что из себя представляет сам человек, его личностные характеристики.
— А специалисты по компьютерному «железу» (hardware) востребованы?
— Для них могут найтись места в отдельных компаниях типа Intel, Nvidia, Broadcomm, у других известных производителей. Я в свое время много с ними работал. Но они обычно не такие большие, как софтверные гиганты. В Intel больше 100 000 человек, но остальные менее крупные. Так что и новых сотрудников там требуется не так много. Насколько я знаю, система там примерно такая же, как в Google — если человек с головой и умеет работать, у него есть шанс туда попасть.
IT-компаний, занимающихся софтом, куда больше. Это и понятно — на одном «железе» можно создать сколько угодно программ. Так что и программистов в этой области нужно больше.
— Какие еще направления деятельности доступны IT-специалистам?
— Сейчас есть «горячие области», куда людей берут охотно и на большие деньги. Это в основном обработка данных. Популярный термин для таких специальностей — Data scientists. Часто под этим подразумевают специалистов по искусственному интеллекту и смежными технологиям. Это люди, которые умеют работать с big data, пишут сложные конвейеры обработки данных — занимаются Business intelligence. Это работа с большими данными в бизнесе. Тут и оптимизация бизнеса, и обработка данных по клиентам, и сбор информации о том, какие продукты пользуются популярностью. Для этих задач требуется анализ огромных объемов данных — их изучают и вылавливают из этого моря информации шаблоны.
Специалистов такого класса пока мало, и они всюду нужны. Если у человека есть подобные навыки — его возьмут на работу, в какой бы точке мира он ни находился — хоть в России, хоть в Бангладеш.
Никто не поручится, что эта профессия будет востребована и дальше. Но если говорить про «здесь и сейчас» — это хороший способ устроиться на работу в США.
А.Б: В США средняя заработная плата для Data scientist — от 90 000 долларов в год. Специалисты топового уровня могут зарабатывать до 1 000 000 долларов.
— Поговорим о работе программистов. Какой язык будет максимально востребован при устройстве на работу в IT-компанию в США?
— У каждой компании есть свои предпочтения. Это зависит и от сферы деятельности, и от программного обеспечения, которое она разрабатывает и применяет.
Наиболее широко используются Java, C++, Python, Ruby, JavaScript — в частности, node.js. В меньшей степени — PHP. Мне кажется, он уже потихоньку уходит. Это только самые популярные.
— Что насчет Swift?
—Насколько мне известно, Swift используется только у Apple, больше на нем практически никто и не пишет. Если разработчик собирается делать программы для iPhone или Macintosh, ему этот язык будет полезен. Пригодится ли он в других компаниях — сложно сказать. Скорее всего, там это знание будет не очень востребовано.
Вообще говоря, раньше в Apple использовали Objective-C, а потом разработали более современный Swift, который, вроде бы, быстрее и проще в программировании.
Google при разработке Chrome для iOS изначально использовал Objective-C. Так исторически сложилось — когда начинали проект, Swift еще не существовал. А потом переделывать не стали. На Objective-C написана только оболочка, интерфейсная часть, чтобы программа выглядела по-эппловски. А большинство «начинки» выполнено на C++, который тоже превосходно работает на iPhone.
— Вероятно, этим списком языков дело не ограничивается?
— Можно вспомнить множество языков, которые могут быть полезны. Тот же Google Go. Его иногда называют Golang — по этому ключевому слову его проще отыскать в сети. Go переживает пик популярности. В Google на нем пишут очень много, но он используется и в других IT-компаниях: Docker написан на Go. Это система, которая используется для управления контейнерами. Контейнеры — своеобразные виртуальные машины, только очень легкие. Они стартуют за пару секунд, их можно запустить одновременно на множестве компьютеров, и они гарантируют одну и ту же среду на них всех. Docker ими «дирижирует»: запускает, управляет и контролирует. Все это написано на Go.
Есть и другие языки — конкретный выбор всегда будет зависеть от целей и задач, которые надо решить. Вообще, я бы не уделял этому вопросу такого уж большого внимания. Ведь хороший разработчик может освоить практически любой язык достаточно быстро — в течение нескольких дней. Гораздо важнее понимать принципы алгоритмов, архитектуры и правильного программирования, на которых строится разработка. Необходимо понимать, как организовывать системы и делать их стабильными, уметь мониторить их состояние. Вот этому — что действительно важно — за три дня не научишься. Это требует месяцев, а порой и лет изучения.
Так что важнее не выучить конкретный язык, с которым «точно возьмут » — это не так работает. Надо понимать базовые принципы, основы. И уметь адаптироваться к новому.
— Как проходит трудоустройство в крупных IT-компаниях?
— На этот вопрос я могу ответить довольно подробно. По крайней мере, в той части, которая касается Google. Я много интервьюирую людей, так что видел эту систему с обеих сторон.
Сначала надо переступить порог компании. Это один из самых сложных шагов. Как и в другие крупные IT-компании, в Google ежегодно поступает несколько миллионов заявлений от соискателей.
Их анализируют преимущественно автоматически. Кстати, это пример задач, которые решают Data scientists. Вручную такую работу выполнить невозможно. Заявления, которые проходят через этот фильтр, поступают к эйчарам.
Лучший способ, чтобы тебя заметили — получить рекомендацию внутри компании. Это когда сотрудник может сказать о вас: «Есть у меня один знакомый. Не знаю, насколько он хорош как программист, но говорит умные вещи и вообще производит впечатление дельного парня. Вы бы к нему пригляделись!»
Дело здесь не в том, чтобы получить «блат» и устроиться «по знакомству». Если человек работает в Google или подобной компании давно и успешно — скорее всего, он умный. И тусуется с себе подобными. Это древнее, как мир, наблюдение — и им здесь активно пользуются. Если «свой» сотрудник упоминает, что у него есть знакомый, который может быть полезен компании — такая рекомендация многократно повышает шансы соискателя. Это не гарантирует трудоустройство — ему просто легче будет попасть на интервью.
Окей, предположим, заявление соискателя заметили. Эйчар — менеджер по работе с персоналом — позвонит ему, чтобы просто побеседовать и выяснить, что это за человек.
Если впечатление хорошее — будет еще телефонное интервью, иногда два. Цель — выявить уровень знаний и отсеять тех, кто совсем не подходит компании. Здесь могут предложить решить несложные задачи.
Если и эти интервью прошли хорошо — предстоит серьезное собеседование в офисе. Кандидата пригласят в компанию и в течение дня будут с ним плотно работать.
Все это, прошу заметить, только первый шаг. И на нем «заваливается» большинство.
— На что смотрят в первую очередь — уровень и качество знаний или личные качества?
— Смотрят на все. Сначала будет техническая часть. Если человек устраивается работать софт-инженером, ему предлагают выполнить задачу, написать программу для ее решения. Или более сложное задание — разработать архитектуру системы, которая могла бы решить задачу.
Компании важно понять, будет ли кандидат эффективным, когда его возьмут в штат. Но пока человек не поработает, трудно выяснить, на что он способен. Такие задачи — это попытка приближения, чтобы определить его уровень.
Был период, когда задачи были «олимпиадного» уровня: от соискателя требовалось додуматься до чего-то нетривиального, найти хитроумное и изящное решение, без которого невозможен результат. Но подобные задания мало что говорят о специалисте и плохо прогнозируют. Ведь не придется же сотруднику, в самом деле, ежедневно сталкиваться с такими головоломками? Гораздо важнее выяснить, как он справляется с рутинными делами. Поэтому сейчас используется другая система: 4–5 человек дают соискателю более простые задачи — зато разнообразные. Для решения достаточно здравого смысла и определенного уровня знаний.
Смотрят и на то, как человек себя ведет, как общается с окружающими и позиционирует себя, интересно ли ему заниматься этими задачами.
Когда я начинаю интервью, не имею представления о человеке. Предполагаю, что он умный, но хочу сразу определить его уровень. Первым делом даю очень простую, прямо-таки позорную задачу — и рассчитываю на то, что он решит ее за минуту. Кто-то начинает возмущаться: «Что это за ерунда? Зачем ты мне это даешь? Я что, первоклассник?» Все, такого можно сразу вычеркивать. Его больше беспокоит не работа, а собственный престиж, он будет «качать права» и требовать к себе особого отношения, а хорошо работать не будет. Это наблюдение из опыта. С подобными ребятами я работал в других компаниях. До Google они, как правило, не добираются, но на интервью их временами можно встретить.
Мораль тут простая: не надо пытаться на интервью строить из себя крутого спеца. Если вам дали задачу — решайте ее. В реальной работе именно так и будет — большинство задач тупые и скучные, но их надо выполнить. Покажите, что не боитесь «черной работы» и готовы браться за любые проблемы.
Потом сложность «накручивается». Задача может показаться простой, и человек радуется — сейчас я ее в момент решу! Решил, отлично. А теперь то же самое, но для другого случая. Или сделай, чтобы работало быстро — а оптимизировать скорость выполнения иногда бывает непросто.
Таким вещам можно научиться только через практику, опыт. По-быстрому «натаскать» человека перед интервью невозможно. Тут нужна голова на плечах и знания — теорий компиляторов, сложности, алгоритмов, основы структур данных. Это стандартные вещи, которым обучают в колледже — и эти понятия должны отлетать от зубов, на каком бы языке вы ни программировали.
Предположим, молодой человек прослушал курс в университете, сдал экзамены и все благополучно забыл. Потом начинает программировать. Написал алгоритм, запустил: расчетное время до окончания работы — сто миллионов лет. Начинает вспоминать: что-то такое нам профессор рассказывал, был способ ускорить, какая-то математическая хитрость. Подумал, вспомнил, допилил — и все стало решаться за секунду. Вот это — отличительная черта хорошего программиста.
Мой знакомый математик хотел сделать программу для расчетов. Он не программист, но что-то все же написал. Запустил. Программа «висит» и ничего, вроде бы, не делает. Попросил меня посмотреть, в чем дело.
Программа оказалась правильно составленной, задачу она решала. Только вот в ней 13 уровней расчетов, и в каждом по 56 вариантов следующего уровня, то есть 13 в 56 степени. На выполнение требовалось невероятное количество времени. Хороший программист заметит такие вещи сразу и сумеет оптимизировать. Это знание теории и опыт, который можно получить, только программируя. Например, в процессе обучения.
— Если претендент выполняет все задачи, он поступит на работу?
— Это не единственный решающий фактор. Смотрят, какие интервью человек прошел и насколько успешно, сравнивают разных претендентов. Анализируют, насколько уверенно он справлялся с задачами, сколько времени затратил, как себя вел.
На работу принимают далеко не всех, кого пригласили на интервью. Счет идет на единицы процентов — точную цифру не назову. Но в Google принято так: если есть хоть небольшое сомнение в человеке — лучше сразу отказать. И это на пользу не только компании, но и соискателю. Он пойдет в другое место, а там отлично знают, как хорошо в Google фильтруют претендентов. Сам факт, что кандидат побывал на интервью в Google — большой плюс при трудоустройстве. К нему присмотрятся.
Подыскивая работу в американской компании, вполне можно упомянуть — был на интервью в Google, но не взяли. Конечно, если интервью правда было — могут и проверить. Если человек написал заявление в Google, а ему даже не ответили — о таком не стоит говорить. Но если компания оплатила билет на самолет, чтобы пообщаться с претендентом — это уже повод похвастаться.
— Чем ты занимаешься в Google?
— Я работаю в отделении Google Chrome, если конкретнее — Chrome operations. Это IT-поддержка разработчиков Chrome.
Chrome работает на множестве устройств под управлением различных систем — это и PC, и Mac, и смартфоны. На каждом типе архитектуры нужно прогнать кучу тестов. Все тестирование выполняется в облаке. Используется большое количество софта для тестов, много виртуальных машин. Вот эту систему мы и поддерживаем в работоспособном состоянии.
Сейчас у нас большой отдел, за сотню человек. Но Chrome вообще масштабный проект. Если посмотреть статистику, сколько людей вносили в его код правки в недавнем прошлом, можно насчитать более 1000 — и это только разработчики!
— Разработка таких крупных проектов ведется удаленно? Есть ли возможность работать, не выезжая из России?
— Chrome — довольно распределенная команда, они работают во многих частях мира: кто-то есть в Европе, кто-то даже в Индии. Но наш отдел, Chrome operations — в основном в Маунтин-Вью. (Mountain View — город, в котором находится главный офис Google — А.Б.)
К сожалению, в России инженеров Google не осталось, разработки там больше не ведутся. Есть офис, занимающийся продажами, но софт-инженеров больше нет.
— Какие еще подразделения есть в Google? Если человек устраивается работать, нужно ли ему знать их специализацию?
— У клиентов есть проблемы и задачи, и все IT-компании предоставляют им решения. Внутри Google работа организована с разбивкой по классам этих решений, по проектам.
Один из самых старых отделов Google — рекламный. Он первым начал зарабатывать деньги, да и по сей день делает больше всех выручки. Там много и продуктов, и программного обеспечения. В каком-то смысле Chrome — тоже часть этой экосистемы.
Но тому, кто хочет устроиться в Google, об этом думать рано. Главное — попасть «внутрь», а дальше специалисты разберутся, к какому делу его приставить.
У меня вообще не было предпочтений по поводу конкретной работы. Мне просто позвонили и спросили: «А не желаешь ли поработать в Google?» Я подумал: «Почему бы нет».
Рекрутеры даже не сообщили, в каком отделе они предлагают мне работу. Так что устраивался я фактически просто в Google. А уже потом команды, работающие над разными проектами, смотрят портфолио и решают, кому ты нужнее. Дерутся за тебя. Нет, не буквально — в переносном смысле.
— То есть это не ты устраивался в Google — это Google предложил тебе работу? Так тоже бывает?
— Бывает и так. Меня кто-то «продал» внутри Google. Это обычная практика у крупных компаний: как только ты туда попадаешь, к тебе подходит HR-менеджер и мягко вытягивает контакты знакомых хороших айтишников.
Правда, если ты перешел из конкурирующей компании, примерно в течение года не имеешь права порекомендовать кого-то оттуда. Это просто дурной тон — переманивать людей. А через год уже можно.
Получилось так, что из компании, где я раньше работал, несколько человек ушли в Google. И как раз через год с небольшим мне оттуда позвонили с предложением. Подозреваю, кто меня «сдал», но не обижаюсь.
— Предположим, соискатель получил работу. Следующий логичный шаг — гражданство. Работодатель может помочь с этим?
— Попробую вкратце объяснить систему. Сначала нужно получить рабочую визу. Максимальный срок ее действия — 6 лет. Если человек отработал этот срок и не получил других оснований оставаться — придется выехать из страны, и новую визу он сможет оформить только через год.
Это неудобно компаниям — терять работника на год. Поэтому они частенько сами начинают оформление грин-карты, когда принимают на работу иностранца. Процесс недешевый, так что такой сотрудник обходится компании дороже, чем американец. Но если грин-карта есть, уже не нужна виза, чтобы жить и работать в США. На ее оформление в среднем уходит около 3 лет.
Через 5 лет после получения вида на жительство можно подавать на гражданство. В этом компания вряд ли будет оказывать помощь. Можно этого и не делать, потому что жить с грин-картой в стране можно фактически неограниченное время.
— Зависит ли шанс на получение гражданства от профессии, места работы?
— Вряд ли тут большая зависимость. Но есть факторы, влияющие на получение гражданства.
Если уже есть вид на жительство — гражданство могут дать практически «автоматом». Но можно и тут все испортить — например, если человек совершенно не говорит по-английски. Например, он китаец и все время проработал в китайской компании. Но подобное совсем маловероятно в IT-сфере.
Необходимо сдать тест на гражданство — это сотня вопросов в основном по истории Штатов. Их нужно просто знать. Это не так уж сложно.
Самое важное — отсутствие криминала в личном деле. Речь о серьезных правонарушениях. Если просрочил библиотечную книжку или однажды неправильно запарковался — не повлияет. А из-за ареста за неаккуратное вождение могут быть проблемы. Не говоря об уголовном преследовании или розыске ФБР.
В целом, если ты честный труженик и ведешь себя по-человечески — все будет хорошо.
— Сергей, спасибо за обстоятельный рассказ! Какое напутствие ты можешь дать молодым специалистам, обучающимся в России и желающим работать в США?
— Учитесь тому, что любите делать, и радуйтесь неудачам — ошибки, как правило, лучшие учителя!
Есть английская поговорка: good judgement comes from experience, and experience comes from bad judgement. 🙂
Удачи!
Как мы тестировали робота Google | Вовкин seo блог
Google – очень влиятельная поисковая система, уделять время которой просто необходимо. Именно в эту сторону я направил сегодня свой взор и хотел бы обратить ваше внимание на работу робота системы. Именно поэтому публикую перевод статьи голландского SEO-специалиста, опубликованный на seomoz.org. В статье описываются результаты тестирования робота Google — скорость обхода, влияние карты сайта, количества ссылок на странице и так далее. Итак, читаем…
Поисковую систему Google отличает высокое качество ранжирования результатов поискового запроса. Из чего складывается такой уровень интеллекта его алгоритмов? Многие SEO-специалисты время от времени тестируют различные особенности процесса индексации и (намного чаще) факторы, влияющие на присвоение ранга (PR) проиндексированным страницам. Нашу команду интересовал вопрос, насколько умен сам робот Google. Для этого мы решили исследовать соответствие действий робота некоторым широко распространенным принципам поисковой оптимизации. Некоторые из полученных результатов неоднозначны и требуют для уточнения исследовательскую базу из несколько сотен доменов, но в целом результаты исследования получились довольно интересные.
1. Скорость обхода.
Первое, что мы исследовали – это утверждение сотрудника Google Мэтта Каттса (Matt Cutts): «… количество загружаемых нами страниц примерно пропорционально вашему PR».
Одна из частых проблем, свойственных сайтам с большим количеством контента – индексация всех страниц сайта. Если представить, что Amazon.com – недавно созданный сайт, то роботу Google понадобилось бы довольно много времени для загрузки 48 миллионов страниц, причем индексации не было бы вообще (согласно утверждению Мэтта), если бы на сайт Amazon.com не было обратных ссылок.
Для проверки мы взяли чистый домен (не регистрировавшийся, не имеющий истории и обратных ссылок) и создали для него страницу с 250 ссылками. Эти 250 ссылок вели к страницам, на которых также было по 250 ссылок (и т.д.). Анкоры и ссылки были пронумерованы от 1 до 250 в порядке расположения на странице. Мы добавили домен через «addurl» и стали анализировать активность робота. Так как домен не имел обратных ссылок, его PR был равен нулю. Если утверждение Мэтта верно, то робот должен был очень скоро прекратить обход страниц.
На графике видно, что робот начал обход сайта со скоростью около 2500 страниц в час (стр/час). Через три часа скорость снизилась до 25 стр/час и оставалась такой в течение нескольких месяцев. Для контроля мы проделали этот тест еще с двумя доменами. Оба теста показали примерно такие же результаты. Единственная разница – небольшой пик при первом заходе робота.
2. Влияние карты сайта.
Исследования показали, что карты сайтов – очень важный инструмент повышения скорости обхода. Мы добавили карту со ссылками на 50 000 вновь добавленных страниц (уровень индексации 0). Робот Google поместил страницы, добавленные через карту, в начало очереди обхода. То есть, эти страницы загружались раньше, чем страницы уровня F. Но что более примечательно – это увеличение скорости обхода. Вначале она сохранялась на уровне 20-30 стр/час. После загрузки карты в Центре веб-мастеров Google скорость увеличилась до 500 стр/час. Через несколько дней был достигнут максимум 2224 стр/час. Если до загрузки карты скорость была в среднем 26,59 стр/час, то после скорость была 1257,78 с/час, то есть прирост составил 4630,27%. Скорость не снизилась даже после загрузки всех страниц карты. Все другие страницы уровней F и 0, не включенные в карту, загружались на той же скорости.
Во время загрузки карты сайта очередь обхода была заполнена страницами уровня F. Тот факт, что Google резко увеличил скорость обхода после загрузки карты, может означать, что карта является важным фактором для робота.
Как же наши тесты соотносятся с утверждением Мэтта Каттса? Всего за 31 день робот Google загрузил около 375 000 страниц сайта. Если считать в пропорции с PR (у нас PR = 0) , то у сайта с PR = 1 за 31 день будет загружено 140 625 000 000 страниц. Напомню, что PR – экспонентная величина. Другими словами, можно утверждать, что вам не следует волноваться из-за низкого PR, даже если у вас самый большой сайт в сети. И еще один вывод: не следует верить всему, что говорят сотрудники Google.
3. Количество ссылок.
Рэнд Фишкин (Rand Fishkin) утверждает: «… вы вполне можете превысить рекомендованный предел в 100 ссылок на страницу, имея высокий PR. Например, с PR = 7,5 вы можете себе позволить 250-300 ссылок на страницу».
Предел в 100 ссылок всегда был очень чувствительной темой для сайтов с большим количеством страниц. История возникновения этого мифа связана с тем, что когда-то Google индексировал только первые 100 Кбайт страницы. На странице объемом 100 Кбайт размещение 100 ссылок казалось вполне разумным и достаточным. Если страница была больше, то робот Google с большой вероятностью мог ее обрезать, не прочитав до конца. Сейчас робот может загружать страницы объемом более 1,5 Мбайт, поэтому рекомендация «100 ссылок на страницу» – это, очевидно, просто забота Google об удобстве пользователей.
Как было показано выше, робот без проблем загружал наши страницы с 250 ссылками, даже на сайтах без обратных ссылок. Но существует ли предел? В следующем нашем тесте мы увеличили количество ссылок до 5000 на страницу (все остальные условия были идентичные). Когда робот пришел на сайт, мы увидели удивительную картину. Он начал загружать страницы:
— http://example.com/1/
— http://example.com/10/
— http://example.com/100/
— http://example.com/1000/
На каждом уровне, на который переходил робот, мы наблюдали одно и то же. Было, похоже, что робот не знает, как обрабатывать такое количество ссылок и пытается следовать чисто компьютерной логике.
4. Семантический разбор.
Один из устойчивых мифов SEO, применяемый практически на каждом оптимизированном сайте, это больший вес ссылок, помещенных в заголовочные тэги. Этот фактор упоминается также в связи с патентом «разумного серфера» Google. У нас были большие сомнения, поэтому мы решили проверить, так ли это на самом деле. На странице с 250 ссылками мы поместили некоторые из них в заголовочные тэги. Эту операцию мы проделали на нескольких уровнях. По прошествии нескольких недель абсолютно ничего не указывало на то, что робот Google как-либо выделяет «заголовочные» ссылки. Это не значит, что робот не делает семантический разбор, но, очевидно, он не считает заголовочные ссылки более важными.
5. Индексирование Javascript.
Программисты Google утверждают, что постоянно совершенствуют распознавание и выполнение кода Javascript роботом. Использование Javascript – не лучший вариант, если вам необходима полная и правильная индексация сайта, но он вполне оправдан, если вы ставите себе обратные цели. Например, Javascript может быть использован для того, чтобы какие-то ссылки были видны только посетителям, но не роботам. В этом случае вебмастер должен быть в курсе того, что Google может распознать и выполнить, а что нет. Для проверки способностей робота к распознаванию Javascript мы использовали код, описанный в статье «Профессиональное руководство по оптимизации PR».
Единственный участок кода, выполненный и распознанный роботом, был ссылкой в строчке «document.write». Это не означает, что робот не умеет распознавать более сложные конструкции. Возможно, роботу требуются дополнительные условия (например, наличие обратных ссылок) для включения более глубокого анализа Javascript.
6. Индексация «хлебных крошек».
«Хлебные крошки» или навигационные цепочки (breadcrumbs) – один из часто используемых элементов, повышающих юзабилити сайта. У нас были подозрения, что робот Google очень неохотно обходит сайты снизу вверх, поэтому следующий наш тест был посвящен этой проблеме. Была создана страница глубокой вложенности с некоторым контентом и ссылками на несколько уровней вверх (http://example.com/lvl1/lvl2/lvl3/). Мы установили несколько обратных ссылок на эту страницу и стали ждать посещения робота. В результате, робот посетил страницу 3 раза, но на страницы верхнего уровня не перешел ни разу.
Для контроля мы провели такой же тест на другом домене. Страница была размещена еще глубже (http://example.com/lvl1/lvl2/lvl3/lvl4/lvl5/). На этот раз робот посетил несколько страниц, находящихся выше в структуре сайта, но даже через несколько недель не все страницы верхних уровней были загружены. Очевидно, робот предпочитает обходить сайт сверху вниз, а не снизу вверх, так что «хлебные крошки» бесполезны для улучшения структуры сайта.
Выводы.
Один из главных выводов – вы можете повлиять на скорость обхода страниц с помощью карты сайта. Это НЕ значит, что вам всегда нужно загружать карту. Карта может быть полезной при первой индексации страниц. Робот намного медленнее обращается к странице уровня F, чем к проиндексированной странице. Так что, если ваши страницы были обработаны роботом, но выпали из индекса, вам может понадобиться получить больше обратных ссылок перед тем, как загрузить карту. Лучше всего отслеживать дату последнего посещения робота для каждой страницы – так вы сможете легко выявить неполадки в структуре сайта.
Количество ссылок на странице не ограничено 250 (даже если у сайта нет обратных ссылок), но 5000 ссылок – это, очевидно, слишком много. Мы не ставили целью определить точный предел.
Ссылки в заголовочных тэгах не имеют никакого смысла в целях оптимизации. Они могут использоваться для улучшения юзабилити, тем более что WordPress поддерживает эту технику, а может быть они даже имеют какой-то очень небольшой ранжирующий вес, который мы не смогли обнаружить.
Еще один вывод – робот плохо обрабатывает «хлебные крошки», он неохотно переходит на верхние уровни с нижних, поэтому использование этой техники для улучшения структуры сайта не имеет смысла.
Вы можете использовать Javascript для наращивания PR. Робот Google сильно ограничен в своих возможностях по распознаванию кода Javascript. Однако, помните, что программисты Google постоянно совершенствуют алгоритмы робота, поэтому нельзя быть уверенным, что код, который вы сегодня используете для манипуляций с PR, не будет распознан через год или два.
И последний вывод связан с длиной ссылок — в наших тестах короткие ссылки обрабатывались раньше длинных, вывод здесь очевиден.
Вот такая интересная статья. А у вас есть свои наблюдения по теме? Если есть, то обязательно напишите в комментариях.
Информация: вебдизайн и создание сайтов уже покоряют СНГ полным ходом. Вот и создание сайтов казахстан подтверждают мои слова.
ОФФпост:
Вовочка приходит домой:
— Пап, у нас сегодня в школе такое случилось, что твоей зарплаты не хватит! 😀
Робот из Google SCHAFT Bipedal Robot Climbs
Японская робототехническая компания SCHAFT, принадлежащая Google представила нового двуногого робота, который может ходить вверх и вниз по лестнице, носить тяжелые предметы.
Новый новый робот из Google SCHAFT появился на конференции «Новый экономический саммит» (NEST) в Токио. SCHAFT доминировал в 2013 году DARPA Robotics Challenge, но был вытащен из финала DRC 2015 года, и компания до сих пор не слышала об этом.
IEEE сообщил, что неназванный робот SCHAFT «предназначен для помощи обществу». Он может поднимать 60 кг, путешествовать по неровной местности.
В видеоролике, снятом членом аудитории NEST, вы увидите, что двуногий робот поднимается по лестнице, избегает падения на трубе. Подробнее о демонстрации на конференции, по данным IEEE:
«Соучредитель и исполнительный директор SCHAFT Юто Наканиши поднялся на сцену, чтобы представить нового робота своей компании. Он объясняет, что робот может подняться по лестнице, нести 60-килограммовую полезную нагрузку и наступить на трубу и сохранить равновесие. Он также может перемещаться в узких местах, и видео показывает, как робот поднимается по узкой лестнице, позиционируя ноги за своим телом (1:22). В любопытной части демонстрации (1:36) роботу показана очистка набора лестниц с помощью вращающейся щетки и, по-видимому, вакуум, прикрепленный к его ногам. Наконец, робот может ходить на открытом воздухе, проходя грубую местность, скользкие скалы и снег».
Интересно, что открытие двунаправленного робота SCHAFT произошло во время выступления NEST Энди Рубина. Рубин, конечно же, возглавлял программу робототехники Google, когда в 2013 году он начал расходовать средства и купил несколько робототехнических компаний. Google также владеет Boston Dynamics , которая, как сообщается, продается. Возможно, этот робот-робот SCHAFT является причиной того, что Boston Dynamics находится на измельчительном блоке, или, может быть, вскоре SCHAFT будет выставлен на продажу. Поделитесь с нами вашими мыслями.
Даже у работы в Google есть недостатки — Офтоп на vc.ru
Работа или стажировка в Google — карьерный рай и мечта нормального человека. Оспорить этот тезис берется топик на Quora, в котором бывшие и нынешние работники Google жалуются друг другу на недостатки любимой компании (вот тут можно почитать, чем расстраивает работа на Facebook).
Для рутинной работы нанимают высококлассных профи
В этой работе все отлично, руководители Google нанимают действительно лучших людей. Правда, зачастую, в тех сферах, где это просто не требуется (шутка про уборщицу с двумя высшими образованиями на самом деле не шутка?).
Худший момент в работе на Google – это то, что люди слишком профессиональны для своей деятельности. У компании высокие запросы при найме персонала, в том числе из-за брендовости и престижности позиций. Как результат, блестящие кандидаты получают ничего не решающие и малозначимые места. Студенты 10 лучших колледжей США в Google занимаются тем, что обеспечивают техсаппорт рекламным продуктам, модерируют контент на YouTube или пишут базовый код и тестируют цвета кнопочки ОК где-то в глубине сайта.
Работники Google слишком особенные
Среди сотрудников компании ходит такая шутка: «Мы часто шутим с коллегами, что Ларри Пейдж и Сергей Брин выезжают на своих яхтах — связывают их вместе, садятся на такие же кресла, которые есть у них в самолётах, каждый на своей яхте, курят сигары и разглядывают фотографии сотрудников со смешками типа: «Этот был топом мультинациональной телекоммуникационной компании, имеет степень MBA из Гарварда, а теперь работает в техподдержке Orkut». А потом они срываются на гогот и чокаются сигарами-вискарём. Но это, конечно, маловероятно, они ведь вряд ли когда-нибудь курят или выпивают. Хотя кто ж их знает».
Google уже не стартап. Это гигантская корпорация
В компании уже давно нет хваленой атмосферы стартапа. Чтобы получить повышение, достаточно работать правильно над правильным продуктом.
Программисты стали эгоистами
Справедливости ради, уровень программистов Google на самом деле довольно посредственный. Но почти каждый из них эгоистичен. Каждый считает, что он лучше, чем его сосед. По этой причине со многими программистами Google, если они не являются твоими близкими друзьями, очень сложно общаться. Обычно Властителям Кода нет дела до глупого мнения обычных смертных и интересные объективные дискуссии с ними случаются редко.
Вы не можете влиять ни на что
Несомненно, Google – это просто гигантская машина по печатанию денег. Если ты не являешься вундеркиндом, который изобрел супер-крутую штуку, которая даст компании еще больше денег, то, скорее всего, ты просто паренек, который смазывает шестеренки в отла