ТОП 5 онлайн-валидаторов кода: HTML, CSS, XML, W3C

Проверка кода на ошибки

W3C — это Всемирный Консорциум Веб-паутины, определяет стандарты для всех веб-сайтов и веб-приложений. С помощью онлайн-валидаторов W3C можно проверить веб-код на ошибки.

Инструмент поможет:

W3C Validator

Форк этого валидатора размещен в сервисах Site24x7. Кому интересно, может попробовать.

W3C CSS Validator

Бесплатный сервис проверки CSS-кода от W3C. Может проверить страницу по указанному URL, загруженному файлу или набранному коду. Поддерживает все версии CSS.

CSS W3C Validator

W3C RSS Validator

Бесплатный сервис для проверки синтаксиса RSS/ATOM ленты от W3C.

W3C Rss Validator

FIND-XSS. NET

Онлайн-сервис с базовым набором инструментов для проверки веб-страниц. Имеет достаточно простой и понятный в использовании интерфейс. Прекрасно подойдет для всех, кому в W3C валидаторах сложно разобраться.

HTML Validator

Dr. Watson Validator

Неплохой, простенький инструмент, который помимо проверки синтаксиса HTML, дает еще такую информацию как: код ответа страницы, проверка количества слов в тексте, анализ ссылок, проверка совместимости с поисковыми системами и так далее.

validator webcode

XML Schema Validator

Сервис проверяет XML документы, а также XHTML.

XML Validator

Code Beauty Java Script Validator

Простой онлайн-валидатор Java Script, который позволит быстро проверить код на ошибки, указав URL, вставив в форму или с помощью загрузки файлом.

JS code Validator

PHPLint Online

Онлайн-валидатор PHP кода от итальянского веб-разработчика Умберто Сальси. Умеет проверять PHP-код (5.6, 7.4), так и различные php-модули. Содержит много интересных для применения настроек.

PHP validator

Знаете другие инструменты, которые не попали в данный список? Пожалуйста, напишите в комментариях!

Зачем нужен валидный код и как устранить ошибки валидации

Валидация является одним из самых важных аспектов хорошего веб-дизайна. Давайте рассмотрим, что это такое и как проверить HTML код на валидность. В качестве примера возьмем самую распространенную систему управления контентом (CMS) – WordPress. После чего мы поделимся перечнем ошибок, с которыми столкнулись на практике и, самое главное, предложим свои, проверенные, методы по их устранению.

Зачем необходима проверка на валидность сайта

Проще говоря, проверка веб-страницы позволит определить, соответствует ли она стандартам, разработанным Консорциумом Всемирной паутины (W3C). Обычно это делается путем проверки отдельных страниц на валидность с помощью онлайн-сервиса проверки от W3C.

Подобно правилам грамматики на разных языках, есть также правила в программировании. Проверка позволяет увидеть, соответствует ли страница этим правилам, а в случае наличия ошибок и предупреждений будут предоставлены рекомендации по их устранению. Подробнее о необходимости такой проверки рассмотрим ниже.

На что влияет валидность сайта

Вы когда-нибудь задумывались о том, как браузеры “читают” веб-страницу? У них есть “двигатели” для анализа кода и преобразования его в визуальный вид для людей. К сожалению, у каждого браузера есть собственный механизм обработки кода, и это может привести к отображению ваших страниц по-разному.

Некорректная веб-страница может быть прочитана браузерами по-разному. Это приведет к тому, что ваши посетители, возможно, даже не смогут правильно увидеть контент страницы в своих браузерах. Валидация в дальнейшем позволит исправить почти все основные различия и делает вашу веб-страницу доступной для чтения почти всеми веб-браузерами (чаще всего исключением становится Internet Explorer старых версий). Отсюда и появился термин “кроссбраузерная верстка” – т. е. верстка, которая одинаково хороша (совместима) для всех популярных браузеров.

А как же это повлияет на SEO? Важно понимать, что роботы поисковых систем любят семантические веб-страницы. Семантическая верстка, согласно данным Википедии, – это подход к созданию веб-страниц на языке HTML, основанный на использовании HTML тегов в соответствии с их семантикой (предназначением). Кроме того, структурная семантическая веб-страница позволяет поисковым роботам более точно определять значимость, как отдельных элементов веб-страницы, так и всего текста в целом. По заверению Google, валидный код никак не влияет на ранжирование страниц. Но при этом наличие ошибок в коде способно негативно повлиять на сканирование микроразметки и адаптированностью под мобильные устройства.

Так что, если в SEO-аудите вы встретите рекомендации по устранению ошибок, выявленных в процессе валидации, то лучше их исправить, а как это сделать мы вам расскажем.

Инструменты проверки для вашего сайта

Понимая необходимость отсутствия ошибок валидации на страницах сайта, давайте рассмотрим, как осуществить поиск данных ошибок.

Существует множество бесплатных сервисов для проверки сайта, такие как Markup Validation Service W3C, Web Page Analyzer, Browsershots и другие.

Служба проверки HTML разметки W3C, вероятно, является самым простым и популярным инструментом для проверки валидности веб-страницы. Используя этот инструмент, вы можете обнаружить ошибки валидации, начиная от отсутствующих атрибутов ALT для ваших IMG-тегов и заканчивая размещением элементов блок-уровня внутри встроенных элементов (например, <p> внутри <span>).

Вы можете оценить HTML код, указав адрес своей веб-страницы, загрузив файл HTML или вставив HTML код напрямую.

Служба проверки HTML разметки W3C

Сервис проверит указанные вами данные на ошибки и сформирует отчет с их перечнем и рекомендациями по исправлению.

Условно ошибки и предупреждения можно разделить на два основных типа: шаблонные (связанные с выбранной темой и установленными плагинами) и ошибки, допущенные при оформлении уникального контента.

Проверяя веб-страницу в первый раз, не пугайтесь возможному большому количеству ошибок! Как правило, большинство из них многократно повторяются на анализируемой странице. А это значит, что если убрать ошибку в одном месте шаблона или страницы, то она исчезнет и во всех однотипных.

Откуда берутся ошибки

Огромное количество ошибок связано с используемой темой сайта, а также установленными плагинами. Большинство из нас устанавливает бесплатную тему и плагины, не задумываясь, что в них скрыто. Во многих темах при более глубоком изучении приходится сталкиваться с типичными ошибками.

Как исправить ошибки, и улучшить валидность сайта

Исправить выявленные ошибки можно двумя способами: обратиться к специалистам, заплатив N-ную сумму денег, либо исправить их самостоятельно. Рассмотрим последний вариант на реальных примерах и устраним все неточности, следуя подробным инструкциям.

Важно, резервное копирование.
Перед осуществлением каких-либо изменений в исходном коде сайта необходимо произвести резервное копирование файлов сайта и базы данных. А нужно это для того, чтобы в случае, если после проведенных манипуляций нормальная работа сайта будет нарушена, восстановить его.
Редактирование файлов шаблона темы.
Редактирование исходников можно осуществлять несколькими способами: редактирование файлов по FTP, через файловый менеджер хостинга либо через административную панель WordPress. Мы рекомендуем использовать последний вариант, т. к. он является самым быстрым и простым.

Предупреждение. Атрибут “type” элемента <script> не является обязательным для JavaScript ресурсов.

Предупреждение, использование устаревшего атрибута type для элемента script

Warning: The type attribute for the style element is not needed and should be omitted.

Предупреждение. Атрибут “type” для элемента <style> не нужен и его следует опустить.

Предупреждение, использование устаревшего атрибута type для элемента style

Для устранения данных двух предупреждений необходимо удалить атрибут type=”text/javascript” во всех тегах <script>, а также type=”text/css” во всех тегах <style>. В помощь нам приходит простая функция PHP preg_replace в паре с чудесной возможностью фильтрации данных в WordPress. Код выглядит так:

Встроенный редактор в админ панеле WordPress

Дополнительно удалим данный атрибут в некоторых файлах вашей WordPress-темы.

Ошибка. Тег <center> устарел. Используйте соответствующие CSS стили.

Предупреждение, использование устаревшего тега center

HTML 5 активно взаимодействует с CSS (язык описания внешнего вида документа, написанного с использованием HTML), поэтому запрет на многие теги и атрибуты, начатый в HTML 4 в пользу стилей, только усилился. Такого рода теги и атрибуты уже не поддерживаются некоторыми браузерами и должны исключаться из кода. Одним из таких тегов является тег <center>, а также атрибут “frameborder” тега <iframe>. При решении данных ошибок нам необходимо будет немного “поколдовать” над нашей Базой данных сайта.

Для этого необходимо зайти в панель управления вашего хостинга, перейти по ссылке в phpMyAdmin и авторизоваться.

Панель управления хостингом

Панель управления phpMyAdmin

Первым делом экспортируем всю базу данных в качестве резервной копии! Для этого нажимаем кнопку “Экспорт” в панели веб-интерфейса для администрирования. Далее выбираем закладку “SQL” для осуществления SQL запросов к базе данных, в нашем случае поиск и замена устаревших тегов и атрибутов. Прописываем следующие запросы:

SQL запросы в панели управления phpMyAdmin

Рассмотрим более подробно выше представленные SQL запросы.

Редактирование таблицы стилей

Второй строчкой SQL запроса заменяем закрывающийся тег </center> на закрывающийся </div>. А третьей – производим замену атрибут frameborder=”0” на класс “ag_border_zero” элемента <iframe>.

SQL запросы можно оптимизировать, сведя в один, однако проще для понимания и наглядности разбить задачу на несколько запросов, как мы это и сделали. Вам, конечно, могут попасться другие устаревшие теги, которые необходимо будет заменить на универсальный тег <div> и перенести прямое его назначение в стилевой файл.

Перечень тегов, которые более не поддерживаются и должны исключаться из кода:

Ошибка. Атрибут “width” элемента <th> устарел. Используйте соответствующие CSS стили.

Ошибка, использование устаревшего атрибута width элемента th

В случае если данная ошибка несет массовый характер в статьях вашего проекта, воспользуемся поиском и заменой атрибута “width” в панели phpMyAdmin следующим SQL запросом:

После чего необходимо добавить стилевой класс width_ten_percent в файле style. css:
.width_ten_percent

Следует отметить, что при массовой замене устаревших атрибутов на стилевые классы в панеле phpMyAdmin, при наличии уже прописанного класса у элемента (например, <img />), может возникнуть другая ошибка – дублирование атрибута “class”. Подобная ситуация обстоит и с атрибутом “style” (например, <img style=”width: 300px” style=”height: 200px”>). Поэтому, нужно быть уверенным в отсутствии ранее указанного другого атрибута “class” / “style”, либо отказаться от редактирования БД SQL запросами в пользу ручной проверки и редактирования каждой отдельной статьи в редакторе админ панели WordPress.
Для примера, рассмотрим добавление дополнительного класса / свойства атрибута “style”, придерживаясь стилевых правил. Добавим дополнительный класс width_ten_percent к уже имеющемуся color_red (class=”color_red”), и получаем: width_ten_percent” (перечисляем имена классов через пробел). Добавим ширину в 10% к уже имеющемуся style=”color: red;”, в итоге у нас должно получиться так: style=”color: red; width: 10%;” (стилевые свойства разделяются между собой точкой с запятой и пробелом).

Также хотелось бы отметить частое ошибочное использование атрибута “width” для элемента <tr>, атрибута “height” для элемента <td>.

Периодически проверяйте новый контент на наличие данных ошибок, и в случае необходимости повторите процедуру исправления.

Перечень атрибутов, которые более не поддерживаются и должны исключаться из кода:

Устаревшие атрибуты Элемент
charset, coords, shape, methods, name, rev, urn <a>
nohref <area>
alink, bgcolor, link, marginbottom, marginheight, marginleft, marginright, margintop, marginwidth, text, vlink <body>
clear <br>
name <embed>
profile <head>
version <html>
longdesc <iframe>
longdesc, lowsrc, name <img>
usemap <input>
charset, methods, rev, target, urn <link>
scheme <meta>
name <option>
archive, classid, code, codebase, codetype, declare, standby <object>
type, valuetype <param>
event, for, language <script>
datapagesize <table>
abbr, axis <td> и <th>

Ошибка. Неприемлемое значение “300px” для ширины атрибута в элементе <img>: Ожидалась цифра, но вместо этого прочитал “px”.

Ошибка, неприемлемое значение для ширины атрибута в элементе img

Атрибуты элементов являются важной частью HTML разметки. Некоторые атрибуты элементов могут принимать практически любое значение, другие могут принимать только значения определенного типа, а третьи – принимать значение только из заранее определенного набора.

В контексте <img width=”300px” /> атрибутом “width” допускается принимать любое целое положительное число. Необходимо установить допустимое значение для правильной разметки, а именно 285, без указания единицы измерения (px).

Редактирование содержимого виджетов в административной панели WordPress

Дополнительно встречается ошибочное указание параметра атрибута “height” элемента <img>.

Использование имени стилевого идентификатора (id=“имя”) более одного раза на одной странице.

Ошибка, использование стилевого идентификатора более одного раза на одной странице

Стилевой идентификатор — уникальное имя элемента, которое используется для изменения его стиля и обращения к нему через скрипты. Идентификатор в коде документа должен быть в единственном экземпляре, т. е. встречаться только один раз.

Имя класса и идентификатор должен обязательно начинаться с латинского символа (A–Z, a–z). Может содержать цифры (0–9), символ дефиса (-) и подчеркивания (_), но не в начале слова. Использование русских букв в именах идентификатора недопустимо.

Тег noindex используется для исключения контента, который необходимо скрыть от поисковой системы Яндекс. Например, дубли элементов навигации. Однако многие используют его неверно:

<noindex>Текст или код, который нужно исключить из индексации</noindex>

Для того, чтобы сделать код с noindex валидным, рекомендуется использовать следующую конструкцию:

Отсутствует открывающий или закрывающий тег.

Ошибка валидации, отсутствует открывающий или закрывающий тег

В синтаксисе тегов обычно используются парные теги для обозначения начала и конца элемента. Закрывающий тег похож на открывающий, но содержит слэш (/) внутри угловых скобок и указывается сразу за открывающейся скобкой. Если вы открыли тег в HTML документе, его необходимо закрыть в соответствующем месте. В противном случае, это может вызвать проблемы с корректным отображением элемента в браузере.

Блочные элементы внутри строчных.

Ошибка валидации, блочные элементы внутри строчных

Согласно спецификации блочный элемент запрещено вставлять внутрь строчного. Например, <span><p>Lorem ipsum…</p></span> не пройдёт валидацию, правильно вложить теги наоборот — <p><span>Lorem ipsum…</span></p>.

Наиболее часто используемыми блочными элементами являются:

Встроенные (строчные) элементы:

Отсутствует атрибут “alt” у изображения.

Отсутствие атрибута alt у изображения

Каждое изображение (даже если оно служит для дизайнерских целей) в документе HTML должно иметь атрибут “alt” с описанием содержания картинки. Данный атрибут индексируется поисковыми роботами и используется ими для определения содержимого обнаруженных картинок. А это, в свою очередь, важно как для улучшения релевантности веб-страниц, так и для привлечения на сайт дополнительного трафика из «поиска по картинкам».

Памятка для контент-менеджеров

Для наших контент-менеджеров мы подготовили памятку о том, как правильно оформить веб-страницу, используя валидный код. Делимся ею и с вами, пользуйтесь на здоровье:

Памятка для контент-менеджеров

Завершение

Результатом кропотливой работы над ошибками мы должны увидеть следующее: Проверка документа завершена. Каких-либо ошибок и предупреждений не выявлено (“Document checking completed. No errors or warnings to show.”).

Результат успешного прохождения проверки веб страницы на валидность

Что вы думаете о важности валидации? С какими ошибками сталкивались Вы и как их решали? Добавьте к этой статье свои комментарии!

Как отсеивать плохих программистов. 10 лучших автоматических инструментов проверки качества кода

Проверка технических навыков кандидатов — неотъемлемая часть IT-найма. Нужно хорошо отделить зерна от плевел. Можно сделать это заранее, посмотрев, пишет ли человек достойный код. Это умеют специальные инструменты, зачастую частично бесплатные. В этой статье мы собрали десять лучших из них.

Такие сервисы позволят вам сэкономить много времени и денег. Ведь довольно неприятно, когда вместо того, чтобы заниматься делом, разработчики вынуждены проверять кандидата, у которого откровенно нет шансов. Кстати, это ещё и отличный способ попрактиковаться в выполнении различных заданий.

Использование таких инструментов тестирования особенно полезно, когда проверка кандидата ведётся онлайн. У нас в Rubrain больше десяти тысяч разработчиков в базе, все уровня Middle и Senior. Это политика компании: не брать тех, кто ещё не научился писать хорошо. И автоматические сервисы экономят нам тысячи часов на веттинг кандидатов. Мы за несколько минут узнаем, если человек, который стучится к нам в двери, нам не подходит. Причем провести проверку может рекрутер или эйчар. На таком этапе ещё ни к чему подключать технических специалистов.

Онлайн-инструменты для проверки разработчиков

Платформы для тестирования качества кода генерируют тесты в соответствии с необходимыми вам техническими знаниями и опытом кандидата. Результаты этих тестов помогут вам решить, подходит ли такой кандидат команде вашего IT-проекта.

1. HackerRank

Платформа для технических собеседований, которая помогает своим клиентам находить и нанимать разработчиков с нужными им навыками. Среди её клиентов — PayPal, Atlassian, LinkedIn и многие другие.

HackerRank предлагает следующие продукты:

CodeScreen: позволяет работодателям оценивать навыки разработчиков, приглашая кандидатов участвовать в онлайн-тестах программирования.

CodePair: позволяет оценить способность кандидата решать проблемы и проверить его коммуникативные навыки с помощью парного онлайн-программирования в реальном времени.

Projects: кандидат выполняет реальную задачу, необходимую компании. Работодатель может оценить, способен ли он выполнять роль разработчика на проекте, и насколько комфортно ему в этой роли.

Insights: решение на основе искусственного интеллекта, которое помогает отслеживать прогресс ваших кандидатов во время тестов, и предлагает, как можно улучшить вашу воронку найма.

Вы можете выбрать задачу, которую создали в HackerRank, или написать свою собственную. Затем, когда кандидаты придут и решат задачи, вы сможете просмотреть их результаты, посмотреть на оценку и детальный отчет, сравнить друг с другом.

HackerRank создан как платформа для поддержки всей вашей воронки IT-рекрутинга. Они подбирают кандидатов, проверяют их квалификацию (резюме, рекомендации). И даже позволяют кандидатам улучшиться, натренироваться, решить некоторые проблемы с кодированием.

Поддерживает больше 40 языков программирования.

2. Codility

Codility — вторая по популярности онлайн-платформа для оценки технических навыков. Она состоит из двух компонентов:

CodeCheck — инструмент для проверки фундаментальных навыков программирования и технических знаний.

CodeLive — онлайн-комната для сотрудничества и написания кода с кандидатами на технических собеседованиях в режиме реального времени.

И Codility, и HackerRank не показывают кандидатам их результат. Они не знают, выполнили ли они задачи в целом лучше или хуже, чем другие претенденты. Правда, в HackerRank они видят, какие вопросы они провалили, и почему (неверный результат, слишком неэффективный код и т. д). У них появляется возможность улучшить код — исправить баги, поменять алгоритм. Поэтому HackerRank может также использоваться для тренировки кандидатов.

У Codility таких возможностей нет. Кандидату специально не показывают, что он выполнил неверно. Обычно там демонстрируют один тестовый пример, и дальше кандидат может проверять свой код только самостоятельно, не зная, всё ли верно, или нет. Как в реальной жизни.

Подробнее о других особенностях каждой платформы на английском можно почитать тут: разница между Codility и HackerRank.

3. Coderbyte

Coderbyte тоже позволяет тестировать знания разработчиков и качество их кода. Можно как выбрать готовые тесты из библиотеки Coderbyte, так и загрузить на платформу свои внутренние тесты. После каждого теста вы получаете подробные отчеты с решениями и даже видеозаписи кандидатов, проходящих тест.

Coderbyte доверяют более 600 организаций, включая Shopify, AngelList, Zoom, HBO и Microsoft. Большинство переходят сюда с HackerRank, Codility или Coderpad. Чаще всего здесь проверяют на DevOps, бэкенд, фронтенд, Data Sicence. Здесь также нередко подбирают команду для разработки мобильных приложений.

4. CodeSignal

Платформа основана в 2014-м в Сан-Франциско. Раньше, до 2018-го, называлась CodeFights и была заточена на соревнованиях 1х1 между разработчиками. Сейчас позволяет проводить рекрутинг кандидатов и оценивать уровень их технических навыков. Свои силы здесь пробуют больше 1 млн разработчиков.

У CodeSignal есть три основных продукта:

Test — проверка знаний кандидата. Можно делать тесты самому или использовать стандартные наборы, предложенные системой. Они быстро проверяют наличие у кандидата навыков, необходимых для конкретной должности. Можно сразу узнать, нужны ли вам услуги такого программиста.

Interview — видеоинтервью в прямом эфире в расширенной среде совместного кодирования. Тоже используются созданные пользователем или заранее определенные тесты. Удобно, чтобы проверить, как человек вольется в состав команды разработчиков. Как он общается и реагирует на ситуации.

Certify — проверка качества и скорости кодирования, позволяющая быстро проверить любое количество программистов. Подходит для больших компаний, ежедневно сканирующих тысячи резюме. Дает рекрутерам возможность принимать объективные решения о приеме на работу. Отправляете задание кандидатам, и смотрите, кто может с ним справиться, и кого стоит приглашать на следующий этап собеседования.

Здесь есть такие функции как архив заданий (+ можно видеть программистов, которые их выполняли), портал для кандидатов, рассылка приглашений, групповые интервью, база данных с вопросами, запись собеседований, выставление оценок. Поддерживается 38 языков программирования.

CodeSignal предлагает предварительно записанные собеседования, где вопросы и задания постепенно выдаются кандидатам в режиме реального времени. Испытуемые могут даже не знать, что с другой стороны нет человека. Всё это активно используют большие компании, вроде Uber, Evernote, Dropbox, Asana, Quora, чтобы набирать программистов на позиции Middle и ниже.

5. СoderPad

Простая, минималистичная платформа, которая в первую очередь выступает как среда программирования. В одном окне можно писать и компилировать любой код (поддерживается более 30 языков и технологий). То, что делается, и какой результат выдается, видит как испытуемый программист, так и его рекрутер. Просматривать код и результаты можно как в режиме реального времени, так и потом, по записи (среда детально записывает каждое собеседование). Начать видеозвонок с кандидатом тоже можно прямо из вкладки браузера CoderPad, можно не заморачиваться с Zoom/Skype.

Тесты и вопросы придется придумывать самому (или подгружать с другой платформы). Но у CoderPad достаточно функций, которые выделяют среду среди конкурентов. В том числе:

возможность привлечь любое количество соавторов к документу;

режим рисования, позволяющий прямо в том же окне более наглядно показывать, что вы хотите/что кандидат имеет в виду;

функция записи и воспроизведения процесса написания кода — чтобы видеть не только конечный результат, но и то, как разработчик до него дошел;

приятная для работы онлайн-среда: подсветка синтаксиса, номера строк, отступы и так далее.

Бесплатный триал короткий, всего 7 дней.

На Indie Hackers можно почитать интервью с основателем CoderPad — как он к этому пришел, в чём особенность технологии, какие планы на будущее, сколько выходит зарабатывать. Как обычно, начиналось всё с простого парня-программиста из Калифорнии и его пет-проекта. А выросло в миллионные доходы и международный успех.

6. ChallengeRocket

Здесь, наоборот, нет почти ничего, кроме проверки кода. Компания набирает кандидатов, и тестирует их, чтобы понять, подходят ли они компаниям. Разработчиков оценивает искусственный интеллект, вмешательство человека не требуется (разве что нужно выбрать или создать задания). Есть и просто случайные тесты, развивающие сообщество и позволяющие программистам немного размяться. Например, можно порешать задачи, дававшиеся на собеседовании 1960 года в IBM. Или решить один из старых вопросов от Google.

У ChallengeRocket есть следующие продукты:

Skill challenge: автоматически генерирует тест для кандидатов и потом оценивает их результаты (скорость и точность решения).

Creative challenge: расширенная версия, которая помогает работодателям находить скрытые таланты и продвигать инновационные идеи.

Hackathon: онлайн-конструктор хакатонов, которые также можно использовать в виде инструментов для отбора персонала.

В целом база крутых девелоперов у ChallengeRocket не такая большая, как у Kaggle, TopCoder или русского CodeForces. Но если вы ищете, где найти программистов для стартапа, или вам нужен персональный подход к задаче, ChallengeRocket будет неплохим и недорогим вариантом.

В числе клиентов сервиса — IBM, Nvidia и ING.

Бесплатный триал — 30 дней.

7. CodinGame

Тестирование разработчиков в более веселой среде — с помощью видеоигр! Здесь кандидаты отбиваются от врагов, бегают от монстров, собирают ресурсы по карте или избегают препятствий на гоночном треке. И всё это — за счет своих знаний любого из языков программирования.

Проходить такие челленджи — намного веселее, особенно группой или командой. Более крутой программист реально показывает, что он босс: только его персонаж выживает в игре, он буквально физически побеждает всех своих конкурентов. Результатами можно делиться в соцсетях, скриншоты получаются довольно эпические и эстетически приятные. Некоторые компании проводят такие конкурсы даже для существующих разработчиков — чтобы их развеселить, сделать совместный ивент, а заодно (незаметно) найти у себя слабые звенья.

На платформе есть около 1900 игр-задачек. Поддерживаются 42 языка/технологии. Один из больших плюсов — очень подробные и наглядные отчеты по результатам тестирования, показывающие слабые и сильные места кандидата.

Среди клиентов CodinGame — Facebook, Nintendo, Adobe, Bank of America, EA, Deloitte, Warner Bros.

Аккаунт для бизнеса стоит от €249 в месяц. Бесплатный триал — 14 дней.

8. Qualified

Сервис от CodeWars, сообщества инженеров-программистов, старающихся повысить свои навыки за счет соревнований друг с другом. Qualified позволяет оценить технические навыки кандидата, заставляя их решать проблемы, основанные на реальных проектах. Одна стандартная проверка разработчика занимает от 50 минут до 5 часов (в зависимости от языка), и включает в себя от двух до четырех задач.

Платформа поддерживает широкий спектр языков программирования и технологий, а также позволяет вам детально, по строкам проверять выполненные задания. Тесту квалификации Qualified доверяют такие компании, как Apple, Accenture, Domino’s и другие.

9. Quizful

Единственный русский сервис более-менее достойного уровня (есть ещё InTester, но там полно багов, а интерфейс внутри при прохождении тестов всё равно будет английский). Quizful подойдет, если у кандидатов (или рекрутера) с английским всё очень грустно, пользоваться гугл-транслейтом желания нет, а денег на детальную проверку кандидатов тоже жалко. При этом тесты здесь встречаются довольно сложные. Даже самые опытные специалисты в вашей команде разработки проекта правильно ответят далеко не на все вопросы по своей дисциплине.

В целом это сервис больше для программистов: здесь есть своё небольшое сообщество, проверяющее или улучшающее свои навыки. Вопросы создаются самими пользователями, и супер-продвинутым сайт не назвать. Работодатель со своей стороны прохождение тестов не видит, программисту нужно либо шарить экран, либо по окончании отсылать скриншоты. Но для подбора кого-то с фриланса на временный проект — сойдет. К тому же, здесь можно проверить уровень знания администрирования, дизайна, компьютерных сетей, английского и других смежных с IT дисциплин.

10. Codeassess

Codeassess существует уже двадцать лет. Это проект, созданный ExpertRating, компанией, проводящей онлайн-сертификацию сотрудников для таких гигантов как Walmart, Gap, UPS, IKEA, Citrix и тысяч других. Codeassess специализируется конкретно на разработчиках. Это первый в мире (в плане длительности существования) сервис, который занялся их онлайн-тестированием. Им предлагаются задачки-проблемы, и программистам, желающие получить статус эксперта, предлагается их решать. Помимо проверки навыков, можно также настроить виртуальное онлайн-собеседование с кандидатами.

Система опробованная, рекомендации рекрутеру выдает грамотные, и в целом западные стартапы, с которыми мы сотрудничаем, ей вполне доверяют. Нас нередко просят проверить наших специалистов на Codeassess, когда они нанимают человека с языком, который не понимают. Если проходит тест самого высокого уровня — значит, он и станет тем, кто потом будет проверять других.

К сожалению, общий минус онлайн-сервисов проверки программистов — большинство из них (особенно самые популярные) заботятся только о скорости и точности программирования. Они не ставят высокие оценки за написание понятного кода, который приятно потом читать человеку. Их не волнуют имена переменных, им не интересно, есть ли описания того, что делают те или иные фрагменты.

А на реальном проекте это зачастую важнее, чем то, с какой скоростью написан отдельный участок программы. Мы при наборе на показатели скорости при принятии решения вообще не смотрим. Если человек справился со своим заданием в установленные тестом несколько часов — этого вполне достаточно. На наш взгляд, скорость программирования важна только для грустных джунов или для каких-то фабрик разработчиков

К счастью, вы тоже можете не обращать внимания на те параметры, которые вас не интересуют. А оценить читабельность кода быстро может и человек. Огромных знаний и детального погружения это не требует.

Источники:

https://krasheninin. tech/html/top-validatory-web-code/

https://apollon. guru/seo/validnost-html-koda/

https://habr. com/ru/post/539332/

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: