Рубрика «Промышленное программирование» - 30

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

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

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

Все этапы Яндекс.Алгоритма в этом году пройдут в онлайне, так что поучаствовать в нём смогут и те, кто не готов куда-то ехать. Алгоритм состоит из нескольких отборочных раундов, в каждом из которых нужно решить пять задач за 100 минут. В финал, который состоится 6 августа, выйдут 25 лучших по результатам отбора. Тренировочный раунд, до которого стоит зарегистрироваться, пройдет 3 мая.

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

image Илон Маск врывается в автомобильную и космическую индустрию с Tesla и SpaceX. Интересно, что первая полностью отказывается от двигателей внутреннего сгорания, в то время, как вторая наоборот, пытается изобрести новые технологии для сжигания топлива и осуществить пилотируемый полёт на Марс.

На последней конференции GPU Technology Conference, организованной компанией Nvidia, мы узнали, что доставка группы людей на Марс и обратно – задача непростая. Одна из проблем такой миссии – необходимость в большом и эффективном ракетном двигателе, который сможет доставить много материала на орбиту, — так объяснил нам Адам Лихтл, директор исследовательской группы SpaceX. С командой из нескольких десятков программистов он пытается справиться со сложной задачей улучшить симуляцию сгорания внутри ракетного двигателя. Для укорачивания полётов к Марсу также нужен большой двигатель.
Читать полностью »

HP BURA (HP BackUp, Recovery and Archiving) — предложение HP для организации системы резервного копирования и архивирования данных - 1

В этом обзоре описан подход Hewlett-Packard по организации системы управления данными и их защите.

Резервное копирование и восстановление

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

К основным метрикам систем резервного копирования данных относятся:
— RPO (Recovery Point Objective) – «точка восстановления», момент актуальности, на который та или иная система должна быть восстановлена.
— RTO (Recovery Time Objective) – время, за которое система должна быть полностью восстановлена.
— Окно резервного копирования – временной период, в течение которого должно быть выполнено резервное копирование системы.
— Retention Policy – политика и срок хранения резервных копий (дневных, недельных, месячных, годовых) системы.

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

Давно идут споры о том, что такое работа программиста — ремесло, навык или искусство. При этом постоянно встаёт вопрос оценки результата. О том, как разные разработчики и руководители в Яндексе подходят к вопросу оценки работы программиста, мы поговорим в этом посте.

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

Сталкиваясь с автоматизацией, часто приходится слышать о «волновой сборке» и «волнах заказов». Для начала, маленькая вводная о том, каким образом появился термин «волна». Представим себе график, где по оси X – время, а по оси Y – некоторый показатель. Мы ждем, пока значение показателя по оси Y не увеличится до заданной максимальной величины, и начинаем выполнять действия, приводящие к уменьшению значения. Затем, «упав» до заданного минимального значения, снова ждем накопления. Таким образом, у нас появляется график в виде своеобразных «волн». Приведу простой пример, когда использование таких «волн» нам может быть выгодно при сборке заказов:
Читать полностью »

Небольшое вступление

Узкопроходная технология – одна из тех, мнение о которой сильно разнится: одни специалисты утверждают, что она абсолютно неэффективна, другие – что с ее помощью можно сделать настоящие чудеса. Как бы то ни было, увеличить ёмкость склада с её помощью можно весьма значительно — есть живые примеры, когда 1200 палетомест превращались в 1800. Однако, узкие проходы налагают невероятное количество ограничений: если нет опыта настройки или разработки системы автоматизации именно под такие склады, то есть шанс, что «взлететь» не получится.
Читать полностью »

Чтобы не перегружать данную статью, разобью ее на 2 части:

1. Постановка задачи и методы реализации;
2. Программное распознавание и электроника.

Инженер

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

Через некоторое время я получил задачу в любимом для многих свободном формате. Мне было позволено пофантазировать на эту тему и через некоторое время предоставить свои «мисли» по этому поводу.
Читать полностью »

WMS — аббревиатура от английского «Warehouse Management System», или «система управления складом». Часто можно встретить русскоязычную аббревиатуру СУС, а некоторые производители относят свои системы даже не к WMS, а к IMS (inventory management system), WCMS (warehouse complex management system), и так далее. Те, кто чуть больше остальных погружен в складскую тематику, при упоминании об управлении складом сразу вспоминают радиотерминалы, этикетки, штрихкоды и прочие обязательные атрибуты внедрения. Те, кто погружен меньше, ассоциирует выражение «управление складом» со «складским учетом», что порой приводит к некоторым терминологическим разногласиям: если штрихкоды — это отсылка на технологии автоматической идентификации, то «складской учет» чаще ассоциируется с оформлением товаросопроводительной документации и ведением информации о складских остатках.

Перед тем, как мы перейдем к первому разделу, хотелось бы сказать, что статья не ставит перед собой цель рассмотреть весь возможный функционал. Она является, скорее, ознакомительной – как раз для тех, кто слышал или знает общие слова о WMS, но хочет узнать больше.
Читать полностью »

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

Вопрос для внимательных: сколько модулей отломится от корабля на старте?

А еще год назад у меня в жизни была вроде бы похожая, но в то же время совсем другая ситуация — времени на хобби не хватало, задач было много, но они не приносили мне никакого удовольствия. В итоге я решился на перемены. На самом деле, эта позиция в Яндексе не была первой, которую я рассматривал. За то время, которое прошло до моего первого рабочего дня, я освежил в голове очень много тем. И перед финальным собеседованием мне пришлось взяться ещё за несколько. Сейчас я понимаю, какие ошибки совершил в этом процессе, поэтому хочу поделиться своим опытом с вами. Буду рад, если кому-то это будет полезно. Хочу сказать, что это не официальные рецепты от рекрутеров Яндекса, а только мои собственные выводы. В конце поста я поделюсь списком литературы, которая мне помогла в подготовке, и еще добавлю те источники, которые считаю полезными, оглядываясь назад.

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

Антипаттерны проектирования: Dead End - 1В статье описываются возможные проблемы, которые могут возникнуть при модификации повторно используемых компонентов. Также приводятся рекомендации, как эти проблемы избежать. Перевод является вторым в серии (один антипаттерн — одна статья), ссылка на первый перевод находится в конце статьи.

Наименование: Dead End (тупик)
Другое наименование: Kevorkian Component (мертвый компонент)

Суть проблемы

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


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