Как стать автором
Обновить

Конкурс по программированию на JS: Классификатор слов (дополнение)

Время на прочтение3 мин
Количество просмотров18K
Спасибо всем, кто уже поучаствовал или собирается участвовать в нашем конкурсе по программированию!

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

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

Для отправки работ осталась ещё неделя. Если этот пост помог Вам найти ошибку, ещё есть время её исправить.

Английская версия этого поста размещена на GitHub.

Часто задаваемые вопросы

Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии75

Конкурс по программированию на JS: Классификатор слов (о ходе тестирования)

Время на прочтение7 мин
Количество просмотров13K
Прежде всего, мы приносим всем участникам конкурса по программированию извинения за задержку с результатами. Сегодня мы публикуем все присланные решения и официальные скрипты для генерации тестов и тестирования, а также рассказываем, как идут дела с проверкой решений.

Английская версия этого поста размещена на GitHub.

Протестировать 312 решений


Большое спасибо всем участникам! Мы получили 603 решения от 312 участников. Поскольку мы принимаем к тестированию самое последнее из присланных в срок решений, то протестировать надо 312 решений. Это был неожиданный результат. Надеюсь, это немного объясняет, почему это занимает так много времени.
Читать дальше →
Всего голосов 22: ↑20 и ↓2+18
Комментарии103

Конкурс по программированию на JS: Классификатор слов (предварительные результаты)

Время на прочтение2 мин
Количество просмотров9.9K
Спасибо за ожидание! Публикуем предварительные результаты конкурса по программированию.

Протестировано 312 решений, из них 50 упало или зависло, ещё 3 оказались слишком медленными, чтобы пройти все тесты. Из оставшихся 259 решений 12 по разным причинам были объявлены «вне конкурса»: решения не работали без поправки типа файла данных (авторы забыли галочку «gzip») или были присланы сотрудниками Hola.

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

Решение победителя конкурса показало результат в 83.67% правильных ответов. Полные списки решений с результатами тестирования находятся в английской версии поста на GitHub.

Там же мы публикуем «сырые» машиночитаемые результаты тестирования каждого из решений, где разнообразной информации больше, чем в сводных таблицах. На основе этих данных Вы можете провести собственный анализ результатов, чему мы будем очень рады.
Читать дальше →
Всего голосов 22: ↑22 и ↓0+22
Комментарии33

Конкурс по программированию на JS: Классификатор слов (окончательные результаты)

Время на прочтение1 мин
Количество просмотров9.1K
Сегодня мы публикуем окончательные результаты конкурса по программированию и награждаем победителей.

По случайности, все трое призёров предпочли участвовать под псевдонимами. Мне кажется, с такими результатами им нечего стесняться. Если вы хотите представиться в комментариях, милости просим!

Итак, призовые места заняли:
  1. Antelle — 83.67% правильных ответов. Приз 3000 USD.
  2. SHB — 83.11% правильных ответов. Приз 2000 USD.
  3. chianti — 83.00% правильных ответов. Приз 1000 USD.

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

Полную таблицу результатов смотрите в английской версии на GitHub.
Всего голосов 14: ↑14 и ↓0+14
Комментарии21

Арестован оператор tor exit-node в России

Время на прочтение1 мин
Количество просмотров95K
Последние несколько дней различные источники сообщают об аресте математика Дмитрия Богатова в связи с размещением материалов в интернете с его IP-адреса.

За несколько часов до опубликованного времени обыска (примерно 11 вечера 5 апреля по Московскому времени) из сети пропал работавший более полутора лет выходной узел сети Tor, администрируемый Dmitry Bogatov <KAction /at/ gnu /dot/ org> (Atlas удаляет информацию о выключенном больше недели узле, но страница доступна в архиве). Судя по обновлённой за три часа до выключения exit-ноды веб-странице Дмитрия, учитель математики, KAction@gnu.org и арестованный Дмитрий Богатов — одно лицо.
Читать дальше →
Всего голосов 96: ↑90 и ↓6+84
Комментарии372

Конкурс по программированию: Торговля

Время на прочтение7 мин
Количество просмотров28K
UPDATE: Объявления для участников.
UPDATE 2: Промежуточные результаты и объявления.

Компания Hola вновь объявляет конкурс по программированию! Победителей ожидают призы:

  1. Первое место: 3000 USD.
  2. Второе место: 2000 USD.
  3. Третье место: 1000 USD.
  4. Жюри может присудить по своему усмотрению специальный приз в 400 USD.
  5. Если Вы отправите кому-то ссылку на этот конкурс, поставив наш адрес в CC, и этот человек займёт призовое место, Вы получите половину суммы приза (разумеется, не в ущерб награде победителя). За одного победителя такую награду может получить только один человек — тот, кто отправил ссылку первым.

Авторы интересных решений будут приглашены на собеседования.



Правила


Условия конкурса на английском языке размещены на GitHub. Ниже — перевод на русский язык.
Читать дальше →
Всего голосов 42: ↑37 и ↓5+32
Комментарии207

Конкурс по программированию: Торговля (объявления)

Время на прочтение2 мин
Количество просмотров3.5K
Объявления для участников конкурса по программированию.

Порядок окончательного тестирования


Изначально мы стремились к тому, чтобы провести турнир по принципу «каждый с каждым». Однако несколько участников заявили о своём намерении подать на конкурс множество слабых решений-«спойлеров», против которых основное решение участника хорошо играет, или же высказали опасения, что так поступят другие. Такие действия явно запрещены правилами, но даже если правила так или иначе обойти, это противоречит духу конкурса. Это соревнование о том, кто лучше напишет одну программу, а не кто прогнёт под себя «ландшафт», закачав больше «спойлеров».

Читать дальше →
Всего голосов 8: ↑6 и ↓2+4
Комментарии11

Популярный VPN-плагин Hola скомпрометирован

Время на прочтение2 мин
Количество просмотров12K
Популярный VPN-плагин для Chrome и Android под названием Hola, которым пользуется более 50 млн человек по всему миру, был скомпрометирован. Целью атаки являются пользователи MyEtherWallet — одного из крупнейших горячих онлайн-кошельков для держателей эфира. Атака длилась примерно пять часов и за это время Hola собирал информацию о кошельках пользователей MEW с целью последующей кражи криптовалюты.


В единственной рекомендации, поступившей от администрации кошелька, советуется завести новый кошелек MEW и перевести туда свои средства в случае, если вы являетесь пользователем Hola и совершали действия в MyEtherWallet в последние 24 часа.
Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Комментарии15

Конкурс по программированию: Торговля (промежуточные результаты и объявления)

Время на прочтение3 мин
Количество просмотров5.8K
Большое спасибо всем участникам конкурса по программированию! Приём решений ещё не закончен, но в полночь на 17 июля мы взяли тот набор решений, который был на тот момент, и провели между ними мини-турнир. В него попали 82 решения.

Но сначала — несколько объявлений.

Конкурс продлевается на неделю


Срок приёма решений продлевается до 27 июля 2018, 23:59:59 UTC. Также на неделю вперёд сдвигаются сроки, в которые будут объявлены результаты конкурса. Мы продлили конкурс для того, чтобы улучшить охват в сезон отпусков.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии124

Конкурс по программированию: Торговля (итоги)

Время на прочтение3 мин
Количество просмотров3.2K
Большое спасибо всем участникам конкурса по программированию! Мы рады объявить окончательные результаты конкурса.

В конкурсе участвовали 186 решений. Мы провели между ними турнир в два раунда, как объявляли ранее. Поздравляем победителей:

  1. Asta — приз 3000 USD.
  2. Silent Bob — приз 2000 USD.
  3. Robert Speed — приз 1000 USD.

Специальный приз 400 USD получает участник под псевдонимом indutny за разработку альтернативной арены для онлайн-тестирования решений с большей пропускной способностью, чем у предоставленной нами. Спасибо!

Официальную таблицу результатов вы найдёте на GitHub.
Читать дальше →
Всего голосов 14: ↑13 и ↓1+12
Комментарии24

Portaller

Время на прочтение2 мин
Количество просмотров17K
Несколько недель назад у любителей американских онлайн радио- и видео-сервисов случилась беда: замечательный сервис Tunlr, который позволял обходить дискриминацию по IP-адресу, приказал долго жить. О причинах говорится мутно: мол, зарабатывать деньги нам не интересно, а поддерживать качество на должном уровне — обременительно. Проблема понятна — передавать через свои сервера такие объемы трафика весьма накладно.

Под катом подробнее об альтернативе
Читать дальше →
Всего голосов 25: ↑23 и ↓2+21
Комментарии34

VPN-расширение Hola продает пользовательский трафик и содержит уязвимости удаленного выполнения кода

Время на прочтение2 мин
Количество просмотров173K
4 дня назад администратор борды 8chan (доска /beast/ которой заблокирована в России) сообщил о DDoS-атаке на сайт, которая выглядела как стократный приток обычных посетителей. Самое большое увеличение нагрузки получил скрипт для постинга post.php (капчи на борде не было); DDoS привел к падению PHP-FPM, под которым выполнялся скрипт. В ходе исследования трафика выяснилось, что для совершения атаки были использованы каналы пользователей с Hola — популярным браузерным расширением для доступа к заблокированным сайтам, пользующееся популярностью как за рубежом, так и в России.

Пользователи расширения, сами того не зная, отдавали свои интернет-каналы дочерней фирме Luminati, которая, по сути, владела более 9 миллионами уникальных выходных нод, за счет расширения и каналов пользователей. Зарабатывают они, судя по всему, очень неплохо: первые 100 гигабайт трафика обходятся клиентам в $20 за гигабайт.

В FAQ проекта не было никаких упоминаний об использовании каналов пользователей, однако в Hola быстро добавили несколько пунктов на этот счет. Теперь, если вы не хотите отдавать свой канал Limunati, вам придется заплатить $5 в месяц.
Архивная версия FAQ
Текущая версия FAQ

После опубликования данной информации администратором 8chan, группа ребят нашла 4 уязвимости в данном расширении:
  • Чтение произвольных файлов до NULL-байта (/file_read.json)
  • Раскрытие уникального идентификатора пользователя (/callback.json)
  • Раскрытие адресов некоторых функций (/procinfo/ps, для последующего обхода ASLR)
  • Удаленное выполнение кода (/vlc_mv.json и /vlc_start.json)
  • Повышение привилегий до SYSTEM под Windows
Читать дальше →
Всего голосов 53: ↑52 и ↓1+51
Комментарии64

Hola и Ваша безопасность

Время на прочтение3 мин
Количество просмотров17K
В последнее время о продуктах Hola можно прочитать много разного на тему безопасности. От имени компании я попытаюсь ниже отделить правду от домыслов и преувеличений, а в комментариях — ответить на вопросы.

image

Напоминаю, что наши продукты для конечных пользователей позволяют обходить региональные блокировки, установленные как самими веб-сайтами, так и администраторами, провайдерами и государствами.
Читать дальше →
Всего голосов 33: ↑22 и ↓11+11
Комментарии11

Итоги летнего конкурса Hola по программированию на JS

Время на прочтение2 мин
Количество просмотров6.4K
Спасибо всем, кто участвовал в нашем конкурсе по программированию! Мы подвели его итоги и наградили победителей.

Задача состояла в том, чтобы улучшить реализацию двусвязного списка из исходников Node.js. Этот код быстрый и эффективный, но он был написан под конкретное применение — хранение списков неактивных таймеров. Поэтому прямо в хранимые объекты там добавляются поля idleNext и idlePrev. Перед участниками конкурса стояла задача сделать код универсальным (так, чтобы один элемент мог принадлежать одновременно нескольким независимым спискам) без потери производительности.

Читать дальше →
Всего голосов 21: ↑13 и ↓8+5
Комментарии4

Конкурс по программированию на JS: Почтовые фильтры

Время на прочтение4 мин
Количество просмотров47K
UPDATE: Опубликованы итоги конкурса.

Компания Hola снова объявляет конкурс по программированию на JS с солидным призовым фондом:

  1. Первое место: 1500 USD
  2. Второе место: 1000 USD
  3. Третье место: 500 USD
  4. Возможно, мы решим отметить чьё-то чрезвычайно оригинальное решение специальным призом в 350 USD.
  5. Если Вы отправите кому-то ссылку на этот конкурс, поставив наш адрес в CC, и этот человек займёт призовое место, Вы получите такую же сумму, как и он.

Мы ищем талантливых программистов, поэтому авторы интересных решений будут приглашены на собеседования.



Правила


Некоторые из тех, кто помнит наши предыдущие конкурсы, были недовольны тем, что условия задач были сформулированы нечётко, и от участника требовалось «угадать», что мы имели в виду. На этот раз условие сформулировано предельно однозначно, а в распоряжении участников — эталонная реализация решения. Победит тот, чей код будет самым быстрым при условии прохождения тестов на корректность.

Условия конкурса на английском языке размещены на нашем сайте. Ниже — перевод на русский язык.

Читать дальше →
Всего голосов 42: ↑28 и ↓14+14
Комментарии189

Итоги конкурса по программированию на JS: Почтовые фильтры

Время на прочтение2 мин
Количество просмотров20K
Объявление: Мы решили пересмотреть итоги конкурса из-за серьёзных недостатков, обнаруженных в тестовой системе. Подробности в новом посте и окончательные результаты.

Спасибо всем участникам нашего последнего конкурса по программированию!

Мы получили 408 решений от 237 различных участников (в конкурсе участвует только одно, последнее из решений от каждого участника, и мы публикуем именно последние варианты). Кроме того, 7 решений было отправлено нам либо после окончания срока приёма работ, либо сотрудниками Hola, и мы рассмотрели их вне конкурса.
Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии121

Разбор решения занявшего второе (пока что) место в конкурсе Hola по программированию почтовых фильтров на JavaScript

Время на прочтение5 мин
Количество просмотров11K
В ноябре прошлого (уже) года, Hola объявила конкурс по программированию почтовых фильтров на js, и недавно опубликовала его результаты.

Я разделил второе место с Ильей Макаровым, и сейчас я расскажу…

Как это было

Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии10

О пересмотре результатов конкурса по программированию на JS

Время на прочтение4 мин
Количество просмотров16K
Спасибо участникам конкурса по программированию за долготерпение. Я пишу этот пост, чтобы признать и исправить серьёзную ошибку, которую мы допустили при подведении итогов.

Мы получили множество замечаний о методике тестирования решений. Ниже наши ответы на эти замечания.

Тесты на корректность неполны


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

Тесты на производительность дают искажённые результаты из-за особенностей методики тестирования


Читать дальше →
Всего голосов 38: ↑25 и ↓13+12
Комментарии50

Окончательные итоги конкурса по программированию на JS: Почтовые фильтры

Время на прочтение2 мин
Количество просмотров7.8K
Спасибо всем участникам нашего последнего конкурса по программированию! Публикуем окончательные, исправленные результаты конкурса.

Мы получили 408 решений от 237 различных участников (в конкурсе участвует только одно, последнее из решений от каждого участника, и мы публикуем именно последние варианты). Кроме того, 14 решений было отправлено нам либо после окончания срока приёма работ, либо сотрудниками Hola, и мы рассмотрели их вне конкурса.

64 решения, или 16% от общего числа, были отправлены в течение последних суток до окончания срока. Из них 15 были отправлены в течение последнего часа, а самое последнее «проскочило» за 34 секунды до дедлайна.

Тесты на корректность прошли 92 программы, что составляет 39% от числа протестированных. Кроме того, корректными признаны 10 из внеконкурсных решений.

Самое короткое решение уместилось ровно в 666 байт, а самое длинное растянулось на 90274 байт.

Один из участников был дисквалифицирован за попытку обмануть тестовую систему. Забавно, что его результат всё равно уступил честным результатам победителей конкурса. Ещё один участник прислал решение с говорящим названием volkswagen.js: оно работает медленно, но корректно при малом размере входных данных, и быстро выдаёт фальшивые результаты при большом размере.

Поздравляем победителей:
Читать дальше →
Всего голосов 18: ↑11 и ↓7+4
Комментарии16
1