Search
Write a publication
Pull to refresh
3
0
Обидин Михаил @mrsantak

User

Send message

Гугл-программисты. Как идиот набрал на работу идиотов

Reading time4 min
Views174K
В стародавние времена я, на постоянной основе, занимался техническими собеседованиями – отбирал кандидатов на должность программиста в компанию. У меня была простая, понятная, шикарная методика (не мной придуманная). Чувак сначала проходил длинное собеседование по куче разнообразных вопросов, потом решал несколько задач. На бумаге, как мы делали в ВУЗе.

Оглядываясь назад, понимаю – отбор действительно работал шикарно. Все, кого я тогда отобрал, стали уважаемыми в нашей деревне специалистами. Больше половины из них давно открыли собственный it-бизнес, в самых разных сферах – от 1С до разработки CRM-систем.

Вот этот опыт и замутил моё сознание. Настолько, что я решил поменять методику – подумал, что дело не в ней, а во мне. Я есть великий специалист по техническим собеседованиям.
Читать дальше →

320 ГБ вместо 6 ТБ: как могут невинно облапошить в онлайн-магазинах

Reading time7 min
Views106K
У моего друга Сереги была шикарная задумка – вместо обычных SATA-шных HDD Seagate емкостью 6 ТБ по 12 тыс. за штуку закупиться USB-шными накопителями по 8 тыс. с теми же HDD внутри. Затем вытащить их из USB-боксов и поставить в NAS, который затем использовать с минимальными нагрузками под бекапы. Разница на круг получалась хорошей – 16 тыс.

Заказ был сделан. На следующий день курьер привез четыре коробки с голографическими стикерами. И с этого момента все пошло не по плану.


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

Тупые и умные компоненты

Reading time4 min
Views16K

Меня зовут Илона, я Senior Experience Designer в EPAM. Работа для меня удачно совпадает с хобби в EPAM я проектирую интерфейсы для зарубежных заказчиков, читаю лекции для сотрудников и студентов лабы, менторю дизайнеров. В свободное время преподаю проектирование интерфейсов в магистратуре Университета ИТМО и веду Телеграм-канал о UX-дизайне.
В работе и преподавании я часто сталкиваюсь с проблемой: сложно организовать компоненты интерфейса так, чтобы было всегда понятно, какой компонент использовать, чтобы похожие компоненты не плодились и не путали дизайнеров и разработчиков.
Делюсь подходом, который помогает мне удобно организовать компоненты и упростить жизнь себе и разработчикам.

Читать далее

Парсинг сайта Умного Голосования и новый API на сайте ЦИК

Reading time21 min
Views24K
image

13 сентября 2020 года в России прошёл единый день голосования. В некоторых регионах оппозицией была применена стратегия «Умного Голосования», заключающаяся в том, что оппозиционно настроенные избиратели голосуют за единого кандидата, имеющего наивысшие шансы победить представителя от властей.

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

На сайте «Умного Голосования» нельзя получить список поддержанных кандидатов, указав, например, город и округ. Если кто-то захочет собрать данные по региону, ему предстоит монотонная работа по подбору адресов для каждого округа.

Ни в коем случае не упрекаю разработчиков сайта УмГ, он имеет весь требуемый функционал для реализации стратегии голосования. Но в связи с тем, что в 2019 году никто не занимался сбором и публикацией подробных данных по итогам УмГ (вне московских выборов), на этих выборах я решил взять инициативу в свои руки.

В итоге получилась вот такая сводная таблица. В данной статье я расскажу, как был получен приведённый набор данных, как собиралась информация с сайтов Умного Голосования и нового веб-сервиса ЦИК.

image
Читать дальше →

5 самых неприятных фич для слепого человека на сайтах

Reading time4 min
Views12K
Вот пять самых раздражающих своей недоступностью веб-элементов, с которыми я сталкиваюсь как слепая девушка-пользователь скринридера каждый день.

Для слепых и слабовидящих людей, таких как я, доступность — это не просто слово, это реальный выбор: или мы можем работать с сайтом, или не можем.

Как работают скринридеры


Скринридеры позволяют слепым и слабовидящим людям самостоятельно пользоваться компьютерами, телефонами и планшетами. В большинстве скринридеров работает движок Text To Speech (TTS), который преобразует текст с экрана в речь.
Читать дальше →

Украденное резюме, человек, который ушел в Кемерово, призыв кандидата и другие истории трэш-собеседований

Reading time6 min
Views51K
За время работы в IT-рекрутинге у нас накопилось много историй о смешных, нелепых и странных собеседованиях как от разработчиков, так и от HR. Поэтому решили запустить рубрику «Трэш-собеседования», где будем делиться подобным контентом. В этой статье собрали 13 + 1 историй: страшных, глупых и криповых. Авторы не указаны, но такое мы точно не сможем придумать сами. Если будет интересно — делитесь своим опытом в странных собеседованиях, а мы продолжим выпускать похожие статьи дальше.


Читать дальше →

Золотое кольцо скучнейших экскурсий: как это пытаются исправить

Reading time13 min
Views50K
Привет! Мы сейчас всерьёз упарываемся по развитию внутреннего туризма. Обычно я пишу про эту часть работы не на Хабр, но на днях появился один крутой пример, по которому можно отследить интересное продуктовое мышление и UX-подход. В реальном мире. В общем, компания внезапно поняла, что мир изменился, старые подходы не работают, и вообще-то вокруг есть много крутых технологий. Меня позвали как эксперта всё это оценивать и тестировать раннюю альфу турпродукта, и я просто хочу показать, как рациональное мышление может повлиять на туризм.

Итак, у нас есть экскурсии по Золотому кольцу России. Для пенсионеров это желанное приключение, для молодёжи — особый подвид предельно скучного и бессмысленного занятия. «20 храмов за 3 дня», «Самые нудные экскурсоводы, сыпящие датами», «Очереди в банальных местах вроде заселения в отель» — это из отзывов. Думаю, вы и сами можете себе всё это представить.


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

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

В примере подошли немного иначе: переписали всё, что бесит, и просто начали думать, как это убрать. Подход, очень знакомый мне по рознице — это способ резко поднять уровень сервиса до небывалых высот. Давайте пройдёмся по тому, что конкретно сделали в этом примере.
Читать дальше →

Вред хранимых процедур

Reading time3 min
Views55K

В чат подкаста «Цинковый прод» скинули статью о том, как некие ребята перенесли всю бизнес-логику в хранимые процедуры на языке pl/pgsql. И так как у статьи было много плюсов, то значит, есть люди, а может быть, их даже большинство, которые положительно восприняли такой рефакторинг.

Я не буду растекаться мыслью по древу, а сразу накидаю кучку минусов использования хранимых процедур.
Читать дальше →

Линус Торвальдс, Бьёрн Страуструп и Брендан Грегг контрибьютят в мой хобби-проект. Зачем?

Reading time8 min
Views70K

Смотрите сами: вот проект, вот история коммитов.



Список контрибьюторов с главной страницы репозитория:



Ссылки на аватарках ведут на странички профилей реальных людей.


Всё на месте. Кроме плашечки "Verified" как здесь:





Знатоки Git и GPG, не торопитесь проматывать ленту: эта статья не про необходимость подписывать свои коммиты. Она про неявные допущения, которые мы делаем, пользуясь "интуитивно-понятными" монстрами GitHub и GitLab и доверяя им контроль доступа к нашим репозиториям.

Читать дальше →

Синдром самозванца и эмоциональное выгорание

Reading time5 min
Views42K
Тема самозванцев и границ очень актуальна в мире IT. Я практикующий психолог, и знаю это, потому что практикую именно с людьми из IT.

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

Синдром самозванца




Никто, приходя к психологу, не говорит: «У меня синдром самозванца! Помогите». Жалобы обычно звучат так:

  • у меня проблемы с коллективом
  • меня не устраивает моя работа
  • я постоянно недоволен собой
  • не хочу ходить на работу
Читать дальше →

В какую сторону течёт вода?

Reading time4 min
Views77K
Пятничная статья про столкновение задачи из собеседования с реальным миром.

Есть довольна известная задача — перед вами находится металлическая труба с текущей внутри водой. Как определить, в какую сторону она течёт? Её всё ещё могут задать вам на собеседованиях.

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

Фольклор программистов и инженеров (часть 2)

Reading time22 min
Views55K

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

Как мы первыми в мире роботизируем кормоуборочные комбайны

Reading time5 min
Views26K
Недавно мой коллега рассказал как мы роботизируем зерноуборочные комбайны и чему научились за этот сезон.

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

Работа на комбайне во время уборки кормовой кукурузы похожа на езду в машине в густом тумане, только вместо тумана на протяжении всего пути высокая зеленая стена из растений, из которой может выскочить кабан, столб или человек. Перемолов человека (история есть в моей прошлой статье), комбайнеры седеют и больше не могут работать. Кроме этого, в этом «зеленом тумане» надо суметь не врезаться в рядом едущий силосовоз, следить за точностью загрузки силоса с хоботом длиной до 7 метров, из которого вылетает по 50-60 кг силоса в секунду, и равномерно заполнять фургон, чтобы он не гонял полупустым туда сюда.



Фактически один комбайнёр работает за троих, следит за процессом уборки кукурузы (одно рабочее место), ведёт технику (второе рабочее место), загружает силосовоз (третье рабочее место). В итоге что-то страдает. Если плохо вести, можно сломать дорогую технику (минимальная цена кормоуборочного комбайна 16 млн рублей, есть модели и по 50 миллионов), поэтому обычно ухудшается качество уборки и загрузки.

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

Структуры данных и алгоритмы, которыми я пользовался, работая в технологических компаниях

Reading time15 min
Views114K
Пользуетесь ли вы структурами данных и алгоритмами в повседневной работе? Я обратил внимание на то, что всё больше и больше людей считает алгоритмы чем-то таким, чем, без особой связи с реальностью, технические компании, лишь по собственной прихоти, интересуются на собеседованиях. Многие жалуются на то, что задачи на алгоритмы — это нечто из области теории, имеющей слабое отношение к настоящей работе. Такой взгляд на вещи, определённо, распространился после того, как Макс Хауэлл, автор Homebrew, опубликовал твит о том, что произошло с ним на собеседовании в Google:

Google: 90% наших инженеров пользуются программой, которую вы написали (Homebrew), но вы не можете инвертировать бинарное дерево на доске, поэтому — прощайте.

Хотя и у меня никогда не возникало нужды в инверсии бинарного дерева, я сталкивался с примерами реального использования структур данных и алгоритмов в повседневной работе, когда трудился в Skype/Microsoft, Skyscanner и Uber. Сюда входило написание кода и принятие решений, основанное на особенностях структур данных и алгоритмов. Но соответствующие знания я, по большей части, использовал для того чтобы понять то, как созданы некие системы, и то, почему они созданы именно так. Знание соответствующих концепций упрощает понимание архитектуры и реализации систем, в которых эти концепции используются.



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

Software v.s. Hardware. Или почему электронщику жить тяжело?

Reading time4 min
Views16K

С глубины прожитых лет, я уже давно понял, что различие между программированием и разработкой электроники в общем-то незначительные, а в конечном итоге это одно и тоже. В электронику уже давно проникли всякие контроли версий, регрессионное тестирование и прочие юнит-тесты, а программисты начинают считать надежность своих программ и проходить прочие сертификации и испытания. Программирование — это всегда новшества, новые технологии и новая философия. Электроника — это консерватизм и знание физики. Хороший программист помнит законы Кирхгофа, а хороший железячник умеет программировать. В любой более-менее сложной электронике уже есть программная часть, а любая программа требует аппаратуры на которой будет выполняться. Так что это одно и то же — обработка информации. Либо на уроне классов, массивов или переменных, либо на уровне аналогового сигнала на фоне шумов. И подходы должны быть одни и те же со стороны государства в части поддержки. Да, к сожалению поддержки, так как ковидная эпопея опять вбила клин между программистами и железячниками.
Читать дальше →

Инфракрасная видеокамера из подручных средств

Reading time5 min
Views50K

Прогулка с самодельной ИК-камерой в парке

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

Делаем копию карты-пропуска по фото

Reading time5 min
Views167K

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


Читать дальше →

Безумный безусловный обмен

Reading time4 min
Views3.9K

Безумный безусловный обмен


image


Недавно попалась мне задача иммутабельным способом поменять местами два элемента в массиве по их индексам. Задача довольно простая. Поэтому решив её разумным способом:


const swap = (arr, ind1, ind2) =>
  arr.map((e, i) => {
    if (i === ind1) return arr[ind2]
    if (i === ind2) return arr[ind1]
    return e
  })

Захотелось решить её безумным способом. Я подумал, что интересно было бы решить эту задачу:


  • Без операторов сравнения и логических операторов(&&, ||, ...)
  • Без циклов и if'ов и тернарных операторов
  • Без использования дополнительных структур данных
  • Без приведения типов
Читать дальше →

«Просто похудеть» — непросто

Reading time15 min
Views128K

Интернет наводнен статьями о том, как похудеть "просто съедая меньше чем потратил" и отчетами об успешном опыте некоторых везунчиков. Чего нету (ну или очень мало) в интернете — это отчетов о том, как миллионы людей безрезультатно пытаются просто "съесть меньше", садясь на все новомодные диеты и неизменно возвращаясь к тому, с чего начинали, а иногда и скатываясь по шкале индекса массы тела в еще более красную зону.


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

Хакнуть свой мозг

Почтовый агент. Ловушка для жены эмигранта

Reading time8 min
Views94K
Я уже больше четырех лет живу с семьей в Германии. Сегодня расскажу про то, как жены эмигрантов попадают в неприятные ситуации, желая подзаработать, сидя дома. Речь, конечно же, не только о женах, в такие неприятности может попасть каждый. Но в основном в эту ситуацию попадают люди, далекие от сферы информационных технологий, те, кто приехал в страну недавно и плохо знают язык. Я расскажу конкретно про одну знакомую семью из Берлина, назову мужа Вадимом, а его жену Мариной.

Как это было


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


Читать дальше →

Information

Rating
10,502-nd
Location
München, Bayern, Германия
Date of birth
Registered
Activity

Specialization

Backend Developer
Java