Рубрика «Программирование» - 395

Как мы добавили подъезды на карту и сократили размер баз на 10% - 1

В конце прошлого месяца 2ГИС начал отображать подъезды. Входы в организации мы показываем аж с 2013 года, а подъезды — вроде бы те же входы. Так почему только сейчас? Все внутренние продукты и процессы готовы, всего-то нужно дособрать ещё чуть-чуть да подправить отображение в UI.

Кроме стандартного ответа «Были другие приоритеты» есть и не совсем стандартный: «Не всё так просто». Эта статья про то, какие были сложности и как мы их решили.
Читать полностью »

PHP 8: чего ждать. Письмо Зеева Сураски - 1

Привет, меня зовут Николай Крапивный, я руковожу отделом server-side разработки в Badoo. В Badoo PHP —  один из основных языков, на нем написана бóльшая часть бизнес-логики нашей системы. Поэтому мы следим за новостями из мира PHP, активно участвуем в развитии языка и стараемся развивать сообщество вокруг PHP.

Сегодня я бы хотел поделиться переводом письма Zeev Suraski, одного из основателей Zend Technologies, которое обрисовывает дальнейшее развитие PHP и проливает свет на то, чего нам ждать в PHP 8.
Читать полностью »

Привет! Я — Илья Кулебякин, iOS Team Lead в e-Legion и участник Программного комитета MBLT DEV 2018. Пока вы выкраиваете время на просмотр сессий WWDС, мы выкраиваем программу будущей конференции.

В посте расскажу о первых спикерах из Netflix, The New York Times & GDE, которые уже подтвердили участие. И поделюсь лучшим, на мой взгляд, докладом прошлого года.

MBLT DEV 2018: первые спикеры и последние early bird билеты - 1
Читать полностью »

«Божественный» код (GOD'S code) - 1

«Божественный» код — громкий термин, который может показаться желтым заголовком, но всё же именно о таком коде будет идти речь: из каких частей он состоит и как его писать. Это история о моих стараниях сделать так, чтобы задачи не возвращались с code review с пометкой: «Всё хе*ня — переделать».

У меня нет профильного образования, и учиться программированию приходилось на практике, через ошибки, ссадины и ушибы. Непрерывно работая над улучшением качества написанного кода, я вырабатывал некоторые правила, которым он должен соответствовать. Хочу ими поделиться.
Читать полностью »

В начале 2018 года мы провели наш ежегодный опрос JetBrains Developer Ecosystem 2018, чтобы выяснить, чем сейчас живет мир программирования и как он изменился по сравнению с 2017 годом. Здесь мы поделимся самыми интересными результатами.

image
Читать полностью »

Анонс DevOps-конференции DevOops 2018 - 1

Прошло уже как минимум несколько лет с тех пор, как слово «DevOps» стало у всех на слуху. Кто только не внедрял его, и чего только не делал.

Между тем, область это весьма неизведанная, таящая в себе множество открытий. Например, в русскоязычном сообществе всё еще не определились с терминологией: кто-то уже сейчас нанимает людей на должность «девопс», а кто-то всегда рассказывает, что «девопс» — это культура и практика, призванная объединить разработку, эксплуатацию и кого-то ещё, поэтому называть так должность некорректно.

Многие ищут ответ в книгах, благо в последнее время их появилось множество. Например, одними из наиболее значимых мне кажутся Devops Handbook, автором которой является наш спикер Джон Виллис, и Google SRE Book, доступная в интернете бесплатно. Однако, читая эти книги, я обнаружил следующую вещь: сухой текст не очень подходит для передачи знаний, очень сильно основанных на реальной работе живых людей. Получается слишком абстрактное знание.

Например, мы берем 14-ю главу, «Managing Incidents». Нам приводят два примера: вначале красочно рассказывается история одного инцидента, с которым разбирались неправильно. Потом рассказывается та же история, но с правильной структурой и хорошим исходом. Хороший исход наступает, если соблюдать важные практики:

Читать полностью »

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

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

Рассмотрим некоторые возможные методы трансформации при предобработке и их реализацию через Keras.

AI, практический курс. Предобработка и дополнение данных с изображениями - 1Читать полностью »

Команда разработчиков Rust рада сообщить о выпуске новой версии Rust: 1.27.0. Rust — это системный язык программирования, нацеленный на безопасность, скорость и параллельное выполнение кода.

Если у вас установлена предыдущая версия Rust с помощью rustup, то для обновления Rust до версии 1.27.0 вам достаточно выполнить:

$ rustup update stable

Если у вас еще не установлен rustup, вы можете установить его с соответствующей страницы нашего веб-сайта. С подробными примечаниями к выпуску Rust 1.27.0 можно ознакомиться на GitHub.

Также мы хотим обратить ваше внимание вот на что: перед выпуском версии 1.27.0 мы обнаружили ошибку в улучшении сопоставлений match, введенном в версии 1.26.0, которая может привести к некорретному поведению. Поскольку она была обнаружена очень поздно, уже в процессе выпуска данной версии, хотя присутствует с версии 1.26.0, мы решили не нарушать заведенный порядок и подготовить исправленную версию 1.27.1, которая выйдет в ближайшее время. И дополнительно, если потребуется, версию 1.26.3. Подробности вы сможете узнать из соответствующих примечаний к выпуску.

Что вошло в стабильную версию 1.27.0

В этом выпуске выходят два больших и долгожданных улучшения языка. Читать полностью »

Всем доброго времени суток! image

Меня зовут Станислав, и я люблю писать код. Это моя первая статья на Хабре, на написание которой меня сподвигло несколько факторов:

  • Недостаток статей технического плана в хабе ReactOS
  • Недавнее возвращение Geektimes на Хабр
  • Возможность собрать ReactOS в ReactOS
  • Довольно интересный случай исправления проблемы в ReactOS, в котором я принимал непосредственное участие

Позвольте представить вам виновников данного торжества (исправленного бага, который мешал запуску Git в ReactOS) — хорватский разработчик Hermès Bélusca-Maïto (далее просто Гермес, с ником hbelusca), и собственно я (с ником x86corez).

История начинается со следующих сообщений из IRC-канала разработчиков ReactOS:

Jun 03 18:52:56 <hbelusca> Anybody want to work on some small problem? If so, can someone figure out why this problem https://jira.reactos.org/browse/CORE-12931 happens on ReactOS? :D
Jun 03 18:53:13 <hbelusca> That would help having a good ROS self-hosting system with git support.
Jun 03 18:53:34 <hbelusca> (the git assertion part only).

Читать полностью »

image

10 лет назад SEMrush начинался как стартап двух SEO-шников. Сегодня продукт предлагает около 40 инструментов для digital-маркетолога, и произошло это благодаря тому, что в команде всегда поощрялись новые идеи. Поддержание такой среды, в которой идеи драйвят процесс развития – одна из главных задач компании.

Творчество вне рабочей недели


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

В 2016 и 2017 мы провели Неделю Инноваций. Участники делились на команды и создавали инструменты для решения внутренних задач. Каждый выбирал сам, над чем ему интереснее работать: над ботом, подсказывающим, сколько дней отпуска осталось, или над сервисом для создания визиток. Но такой формат получался несколько затянутым, и мы решили попробовать что-то новое.

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

Наш хакатон


Разработчики, UX-дизайнеры, аналитики и маркетологи объединились, чтобы воплотить в жизнь свои задумки. Итого у нас было 60 часов работы и 30 участников в 7 командах. Помня о Неделях Инноваций, мы знали, что у команд может не все пойти гладко. Однако в этот раз все дошли до конца и успели зарелизиться к понедельнику. Итак, вот результаты рабочих выходных наших ребят.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js