Как подобрать лучшую экипировку в любимой игре? Конечно, можно банально перебрать все её возможные сочетания (например, для разбойника из World of Warcraft) и найти наилучшее. Без всякой магии и машинного обучения. Но можно ли добиться этого результата не «в лоб», а при помощи генетических алгоритмов, не примеряя каждую комбинацию? Интересно узнать, как размножаются и эволюционируют разбойники? Поехали.
TM @tim_leon
Начинающий
Как карантин влияет на рынок труда в IT
3 мин
22KКаким будет мир после изоляции? Что будет с IT-индустрией? Что будет с каждым из нас, увеличатся или уменьшатся наши возможности, вырастет или упадёт доход, поменяются ли наши привычки и образ жизни? Что происходит прямо сейчас и можно ли уже увидеть контуры мира, который нас ждёт, когда всё это закончится?
На все эти вопросы мы захотели найти хоть какой-то ответ и запустили большой опрос по IT-специалистам. На данный момент мы собрали и проанализировали 2500 анкет. Сегодня покажем текущую ситуацию на рынке труда IT-специалистов в общем.
+51
Большие требования к памяти в Android – что делать?
7 мин
7.3KПеревод
Здравствуйте, уважаемые читатели.
Сегодня предлагаем вашему вниманию небольшой материал о грамотном использовании памяти в Android.
Приятного чтения!
Сегодня предлагаем вашему вниманию небольшой материал о грамотном использовании памяти в Android.
Приятного чтения!
+5
Как мы научились делить видео на сцены с помощью хитрой математики
7 мин
16KЗа 10 лет существования ivi мы собрали базу из 90000 видео разной длины, размера и качества. Каждую неделю появляются сотни новых. У нас есть гигабайты метаданных, которые полезны для рекомендаций, упрощают навигацию по сервису и настройку рекламы. Но извлекать информацию непосредственно из видео мы начали только два года назад.
В этой статье я расскажу, как мы разбираем фильмы на структурные элементы и зачем нам это нужно. В конце есть ссылка на репозиторий Github с кодом алгоритмов и примерами.
В этой статье я расскажу, как мы разбираем фильмы на структурные элементы и зачем нам это нужно. В конце есть ссылка на репозиторий Github с кодом алгоритмов и примерами.
+65
Коллеги: и не друг, и не враг, а как?
16 мин
64KНа самой заре карьеры мой молодой начальник сказал в отделе: «Дружбы на работе не бывает». У нас был классный коллектив вчерашних студентов и принять этот тезис было сложно — все мы больше походили на однокашников или garage brothers, смотрящих в безоблачное будущее. Романтика! Однако после смены верховного руководства компании нам пришлось узнать, что начальник чертовски прав — а каждый из нас стал другим, просто коллегой, конкурентом, кто-то не выдержал и ушёл… Прошло 12 лет. Я успела побывать начальником, сменила 5 официальных мест работы и примерно столько же неофициальных и, кажется, знаю, какие бывают коллеги. А вы знаете?
+29
Дизайн — это проектирование, а не красота картинок
8 мин
9.2KКомпании с правильными дизайн-процессами зарабатывают существенно больше.
Я бы хотел рассказать про три базовые вещи с позиции пятилетнего исследования и своей практики в российских и международных компаниях:
- Мало кто воспринимает дизайн как способ проектирования продукта и как полноценный бизнес-процесс. Чем глубже этот процесс интегрирован, тем лучше финансовые результаты бизнеса в целом.
- Часто складывается ситуация, что в дизайне никто не играет за клиента.
- Нет особой финансовой разницы между плохим, посредственным и хорошим дизайном: рынок вознаграждает только компании с отличными процессами.
Меня зовут Николай, я дизайн-директор в McKinsey & Company. Одна из моих рабочих задач — показывать и объяснять компаниям, что такое дизайн. Вопреки распространённому мнению, это не «картинка» или «нарисованный интерфейс». Это проектирование, которое ведёт к тому, что будет решаться основная задача бизнеса. А основная задача бизнеса — максимально удовлетворять потребности клиентов, зарабатывая при этом или накапливая какой-то другой ресурс.
На практике в России (да во всем мире) часто встречается схема с обратной логикой: сначала что-то произвели, а потом это пытаются спроектировать. Точнее, скорее произвели и пытаются убедить, что людям это нужно. Или просто произвели и насильно заставляют пользоваться, не оставив другого выбора. Возможно, вам хорошо знакома эта особенность дизайна приборов: берётся уже готовая разработка, и к ней придумываются корпус-инструкция-упаковка-маркетинг.
Правильное проектирование начинается с другого: ищется потребность клиента, и к ней придумывается решение, а потом уже кросс-дисциплинарная команда (включающая RnD) решает, как можно это сделать. Пример из другой сферы: если банк захочет сделать открытие брокерских счетов для физлиц, то лучше сначала нарисовать все по шагам, посмотреть насколько это: a) нужно и б) понятно клиентам. И только потом начать писать код.
Давайте расскажу чуть подробнее и с числами исследования.
+28
Про фразовые глаголы-3 (on/off)
4 мин
24KПеред этой статьёй рекомендуется прочитать две предыдущие части:
1. habr.com/ru/post/495794
2. habr.com/ru/post/496190
On и Off обычно имеют противоположный смысл, поэтому мне показалось хорошей идеей совместить обзоры этих частиц.
И предлог, и частица on соответствуют русскому «на». Тут логика вполне очевидная: «на» – это и предлог (говорим о поверхностях: «на стене/столе»), и приставка – НА-сыпать (сыпать на поверхность).
Put – класть, put on – «на-кладывать». Например, put on makeup – «на-кладывать» грим. Любой предмет одежды, обуви, головной убор носители английского языка тоже накладывают, а не надевают, как у нас: put on a hat – надеть шляпу. У них даже вес тела накладывают: put on weight по-английски «набрать вес».
Часто ON соответствует русской приставке «про-». «Про-» обычно означает «двигаться вперёд»: про-двигаться, про-лезать, про-двигать. Возьмём фразовый глагол (ФГ) get on. Get означает «двигаться, перемещаться», get on буквально «про-двигаться». Или в пространстве, или, метафорически, в жизни или карьере: Young people try to get on in life – Молодые люди стараются продвигаться в жизни.
1. habr.com/ru/post/495794
2. habr.com/ru/post/496190
On и Off обычно имеют противоположный смысл, поэтому мне показалось хорошей идеей совместить обзоры этих частиц.
И предлог, и частица on соответствуют русскому «на». Тут логика вполне очевидная: «на» – это и предлог (говорим о поверхностях: «на стене/столе»), и приставка – НА-сыпать (сыпать на поверхность).
Put – класть, put on – «на-кладывать». Например, put on makeup – «на-кладывать» грим. Любой предмет одежды, обуви, головной убор носители английского языка тоже накладывают, а не надевают, как у нас: put on a hat – надеть шляпу. У них даже вес тела накладывают: put on weight по-английски «набрать вес».
Часто ON соответствует русской приставке «про-». «Про-» обычно означает «двигаться вперёд»: про-двигаться, про-лезать, про-двигать. Возьмём фразовый глагол (ФГ) get on. Get означает «двигаться, перемещаться», get on буквально «про-двигаться». Или в пространстве, или, метафорически, в жизни или карьере: Young people try to get on in life – Молодые люди стараются продвигаться в жизни.
+41
Приглашаем на Robot Operating System MeetUp
2 мин
1.5KЛаборатория робототехники Сбербанка и российское ROS-сообщество при поддержке Intel приглашают на очередной, третий MeetUp по Robot Operating System, который состоится в субботу, 18 апреля. И пусть по всем очевидным причинам мероприятие на этот раз пройдет в онлайн формате, настроя это не испортит. Тем более, что призами за лучшие доклады станут продукты Intel для робототехников.
+9
Плавная сортировка
8 мин
19KПродолжаем погружение в разнообразные кучи.
Сегодня разберём элегантный метод упорядочивания, использующий специальные кучи, основанные на числах Леонардо.
Многие слыхали про эту сортировку, однако мало кто знает как именно она работает. Сегодня увидим, что ничего сложного в ней нет.
Метод изобрёл легендарный Эдсгер Дейкстра. Помимо многочисленных ярчайших достижений в теории алгоритмов, он также является автором такого остроумного высказывания:
«Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации.»
Надеюсь, не будет кощунством, что анимация в статье создана с помощью VBA :-)
+22
Разработка в Wargaming – встреча с Максимом Барышниковым, Head of Platform (ч.I)
25 мин
11KВсе побежали, и я побежал. Недавно я запустил серию онлайн-митапов, куда приглашаю на дискуссию экспертов в области разработки крупных IT-проектов. Нашим первым гостем был Максим Барышников, Head of Platform из Wargaming. Ниже – расшифровка нашего разговора, вернее, её первая часть, посвященная архитектуре.
Из этой части вы узнаете, например:
- сколько людей работает в Wargaming и сколько строк кода в «Танках»
- как, какие и куда едут байты во время боя в «Танках»
- какие подходы используют в Wargaming для обеспечения масштабируемости и отказоустойчивости
- какие архитектурные боли испытывают и на какие компромиссы между геймплеем и инженерными практиками идут
- почему в Python приходится отключать garbage collector, и где используется Erlang
- какие у Wargaming open source policies, и что они открывают в паблик
Разговор получился достаточно длинным, но подробным, если вам интересна тема разработки больших игровых проектов — прошу под кат.
+43
Как я самостоятельно выучил новый язык за 12 месяцев: тотальный гайд
31 мин
159KПеревод
От А0 до B2 за год
Чуть больше года назад я был полностью монолингвом, говорящем только на английском, с нулевыми познаниями во французском языке. А спустя двенадцать месяцев, я с лёгкостью сдал международный экзамен DELF B2. Если вы не знаете, что значит «В2», посмотрите шкалу CEFR.
Более того, все мои успехи — это результат домашнего обучения и практики. Моё обучение было полностью самостоятельным, без каких-либо специальных учебных программ. Это стало возможным только благодаря множеству удивительных ресурсов, доступных в Интернете, многие из которых бесплатны. Немаловажно, такой результат был достигнут потому, что я отдавал предпочтение продуктивному общению, в частности, проводя много времени за разговорами с теми, кто хорошо знает французский.
Стоит отметить, что мой темп обучения был несколько агрессивным, поскольку за последний год я посвятил изучению французского много времени, однако, это всё ещё значительно меньше, чем фултайм обучение.
Не могу сказать, что полностью свободно говорю, но чтобы вы лучше понимали, каких результатов удалось достичь, приведу список того, что больше не вызывает у меня проблем:
Конечно, я всё ещё очень далёк от уровня носителя. У меня точно есть слабые места, и я не могу выражаться на французском так же хорошо, как на английском. Тем не менее, я очень даже доволен своим уровнем владения французским и думаю, что многие изучающие язык тоже были бы довольны.
Чуть больше года назад я был полностью монолингвом, говорящем только на английском, с нулевыми познаниями во французском языке. А спустя двенадцать месяцев, я с лёгкостью сдал международный экзамен DELF B2. Если вы не знаете, что значит «В2», посмотрите шкалу CEFR.
Более того, все мои успехи — это результат домашнего обучения и практики. Моё обучение было полностью самостоятельным, без каких-либо специальных учебных программ. Это стало возможным только благодаря множеству удивительных ресурсов, доступных в Интернете, многие из которых бесплатны. Немаловажно, такой результат был достигнут потому, что я отдавал предпочтение продуктивному общению, в частности, проводя много времени за разговорами с теми, кто хорошо знает французский.
Стоит отметить, что мой темп обучения был несколько агрессивным, поскольку за последний год я посвятил изучению французского много времени, однако, это всё ещё значительно меньше, чем фултайм обучение.
Не могу сказать, что полностью свободно говорю, но чтобы вы лучше понимали, каких результатов удалось достичь, приведу список того, что больше не вызывает у меня проблем:
- Беседа на французском в течение нескольких часов;
- Понимание различных видов французских СМИ (например, новости и видео на YouTube);
- Чтение статей, написанных для носителей французского языка;
- Построение мыслей на французском;
Конечно, я всё ещё очень далёк от уровня носителя. У меня точно есть слабые места, и я не могу выражаться на французском так же хорошо, как на английском. Тем не менее, я очень даже доволен своим уровнем владения французским и думаю, что многие изучающие язык тоже были бы довольны.
+44
Как начинающему инвестору законно снизить налоги: 4 работающих способа
3 мин
14KИзображение: Unsplash
Во времена нестабильной ситуации на рынках у инвесторов появляется естественное желание минимизировать затраты. В том числе, благодаря снижению налоговой нагрузки. Сегодня мы разберем несколько практических способов законного снижения налогов, которые подойдут начинающим биржевым инвесторам.
+14
Скребём Github: поиск «секретов» разработки
4 мин
5.8KПри разработке софтверного продукта или облачного SaaS-сервиса достаточно трудно отслеживать сторонние активности всех специалистов, вовлеченных в процесс разработки. Достаточно открыть Github, ввести в поиске «<имя_домена_компании.com> pass» и оценить выдачу. В том случае, если вдруг Github действительно показывает в своей выдаче что-то интересное, то мы рассмотрим сценарии, которые могут помочь злоумышленникам нарушить бизнес-процесс твоей компании. А если Github все же молчит, то рассмотрим альтернативные варианты атаки на цикл разработки продукта, при которых точкой входа в инфраструктуру могут стать не только разработчики, но даже Security-инженеры.
+10
Илья Якямсев: Эффективность не работает
19 мин
66KС точки зрения проект-менеджера и с точки зрения управления людьми, люди в депрессии — идеальные работники.
Привет, Хабр.
Недавно посмотрела выступление одного scrum-мастера и stand up комика по совместительству. Выступление оказалось эмоциональное, с большим количеством непечатных слов и долей здравого смысла.
В каждой шутке только доля шутки, но все же прошу не относиться к этому материалу слишком серьезно. Предлагаю для ознакомления свое изложение в «очищенном» формате. Увидеть полное выступление Ильи Якямсева «Эффективность не работает» на конференция FrontDays 2018 можно по ссылке.
Эффективность не работает
Этот доклад скорее жизнеутверждающий, позитивный, и он про жизнь, не про программирование. Хотя много будет про программирование, но косвенно.
Я работаю менеджером проекта. Начинал я в Тольятти, в 96 году, на должности «эй, пацан, принеси пиво». С 99 года я начал программировать front, тогда это называлось «верстак». Потом я открыл контору, закрыл ее, многое произошло, и сейчас я менеджер проектов.
Мой доклад называется «Эффективность не работает». И я объясню почему.
Жизнь после 30
Дело в том, что мне сорокет в этом году. Я работаю в основном с людьми помоложе себя, и они у меня часто спрашивают: «Илья, как она жизнь в IT после 30? Ну, то есть, что с ней происходит?». Я отшучиваюсь: как говорится, баб поменьше, детей побольше.
Но я всерьез задался этим вопросом, подумал, что случилось со всеми людьми, с которыми я начинал, с которыми продолжаю. Всем моим друзьям около 40, все по-разному живут. Какое у нас общее свойство? О чем стоит рассказать людям? На что им ориентироваться в процессе работы? Каким образом это будет у них? И я вывел то общее, о котором хочу сегодня рассказать.
+101
Николай Прохоров: «В Финляндии был огромный отдел Внешторга, который поставлял наши машины в капстраны»
15 мин
15KПрофессор Николай Прохоров больше 20 лет возглавлял Институт электронных управляющих машин, с 1984 года был генеральным конструктором СМ ЭВМ. В первой части интервью музейному проекту DataArt Николай Леонидович вспоминает учебу в МЭИ, работу в ИПУ РАН и ИНЭУМ, машины, способные управлять АЭС или универмагом, встречи с Норбертом Винером, Исааком Бруком, Баширом Рамеевым.
Начало
— Я родился в 1936 году, учился в железнодорожной школе под Москвой, занимался в кружке при детской железной дороге, был стрелочником, начальником смены и машинистом. У меня есть права машиниста паровоза на узкоколейных дорогах. В 1953-м поступил в Московский энергетический институт, тогда — имени Молотова. Считаю, что мне очень повезло — по составу преподавателей вуз был выдающимся. Кроме того, в МЭИ кипела спортивная и общественная жизнь.
Детская железная дорога в Подмосковье была заложена в 1936 году. Еще раньше похожие проекты запустили в Тифлисе, Днепропетровске и Гомеле
Получив специальность инженера-электрика, я распределился в Институт автоматики и телемеханики Академии наук — теперь он называется Институтом проблем управления РАН.
+33
«Красная» корпоративная культура — главная проблема российского бизнеса (Часть 1)
6 мин
102K«— Скажите, пожалуйста, куда мне отсюда идти? — А куда ты хочешь попасть? — ответил Кот. — Мне все равно… — сказала Алиса. — Тогда все равно, куда и идти, — заметил Кот.» (С) «Алиса в стране чудес»
Низкая производительность труда в России
Думаю, что те из вас, кто был в Греции, ни за что не согласятся, что греки работают лучше россиян. Тем не менее, по исследованиям Организации экономического сотрудничества и развития (ОСЭР) Россия со своим показателем производительности труда на уровне $26,5 в час уступает всем странам ОЭСР (по сути все развитые страны), включая Грецию, кроме Мексики, где он составляет $21,6. Средний для ОЭСР показатель — $54,8, а у лидеров — Ирландии и Люксембурга — на уровне $99 в час.
+108
Какие английские слова IT-лексикона мы неправильно произносим чаще всего
5 мин
172KПока пара новых статей на технические темы еще в процессе написания, я решил опубликовать небольшой лингвистический материал. Достаточно часто замечаю, что коллеги, у которых английский язык — не родной, неправильно произносят некоторые характерные для IT сферы слова. И дело здесь не в том, насколько аутентично произносятся отдельные звуки, а именно в транскрипции. Регулярно встречал ситуации при общении с носителями, когда неправильно произносимое слово приводило к недопониманиям.
Дальше я приведу несколько наборов слов, сгруппированных по типовым ошибкам. К каждому слову будет приложена транскрипция, приблизительная транскрипция на русском и ссылка на более детальную информацию в словаре. Так как большинство IT компаний все-таки работает с Северной Америкой, то транскрипции будут из US English.
Дальше я приведу несколько наборов слов, сгруппированных по типовым ошибкам. К каждому слову будет приложена транскрипция, приблизительная транскрипция на русском и ссылка на более детальную информацию в словаре. Так как большинство IT компаний все-таки работает с Северной Америкой, то транскрипции будут из US English.
+307
10 признаков того, что хороший программист из вас не получится
11 мин
331KПривет, Хабр! Представляю вашему вниманию перевод статьи «10 Signs You Will Suck at Programming» автора Jonathan Bluks.
Очень часто на Reddit или Quora я вижу вопросы вида «Как понять, смогу ли я стать успешным программистом?» (На самом деле, эта статья является расширенным продолжением моего недавнего ответа на Quora.) Когда кто-то задумывается о смене карьеры или интересуется разработкой и хочет знать, что для этого требуется, неизбежно возникает этот самый вопрос.
Вообще, я думаю, что это главный барьер в умах людей, которые не получали фундаментального образования по программированию. Думать, что программист из вас так себе, совершенно естественно, и это мешает вам взяться за новое дело. Это как мечтать стать актером, но сомневаться, что вы вообще умеете играть.
Будучи преподавателем на курсе «Full-stack Web-development», я работал со многими программистами-новичками. Хорошая новость в том, что мне редко встречались студенты, которые вообще не могли научиться программировать. Я считаю, что умение программировать — такой же базовый навык, как умение читать, писать и считать. Это под силу любому, так как это одна из способностей человека, но этому действительно надо учиться.
За два года преподавания, я наблюдал мучения студентов в процессе обучения и видел у них несколько схожих проблем. Если вы взглянете на их список и почувствуете, что это все про вас, можете быть уверены — хороший программист из вас точно не получится и, возможно, вам стоит заняться чем-то другим. Однако, если вы останетесь верны своей цели стать разработчиком, вы сможете преодолеть все препятствия.
Этот список поможет вам понять, сможете ли вы стать хорошим программистом, а также что делать, если вы решите это изменить.
Очень часто на Reddit или Quora я вижу вопросы вида «Как понять, смогу ли я стать успешным программистом?» (На самом деле, эта статья является расширенным продолжением моего недавнего ответа на Quora.) Когда кто-то задумывается о смене карьеры или интересуется разработкой и хочет знать, что для этого требуется, неизбежно возникает этот самый вопрос.
Вообще, я думаю, что это главный барьер в умах людей, которые не получали фундаментального образования по программированию. Думать, что программист из вас так себе, совершенно естественно, и это мешает вам взяться за новое дело. Это как мечтать стать актером, но сомневаться, что вы вообще умеете играть.
Будучи преподавателем на курсе «Full-stack Web-development», я работал со многими программистами-новичками. Хорошая новость в том, что мне редко встречались студенты, которые вообще не могли научиться программировать. Я считаю, что умение программировать — такой же базовый навык, как умение читать, писать и считать. Это под силу любому, так как это одна из способностей человека, но этому действительно надо учиться.
За два года преподавания, я наблюдал мучения студентов в процессе обучения и видел у них несколько схожих проблем. Если вы взглянете на их список и почувствуете, что это все про вас, можете быть уверены — хороший программист из вас точно не получится и, возможно, вам стоит заняться чем-то другим. Однако, если вы останетесь верны своей цели стать разработчиком, вы сможете преодолеть все препятствия.
Этот список поможет вам понять, сможете ли вы стать хорошим программистом, а также что делать, если вы решите это изменить.
+116
О работе ПК на примере Windows 10 и клавиатуры ч. 1
16 мин
111KМеня зовут Андрей Артемьев, я работаю в Microsoft над ядром ОС Windows 10, ранее я работал над Windows 10x (WCOS), XBox, Windows Phone и Microsoft Edge. Я хочу популярно в образовательных целях рассказать о том как работает компьютер на примере клавиатурного ввода и Windows 10. Данный цикл статей рассчитан в первую очередь на студентов технических специальностей. Мы рассмотрим какой путь проходит информация о нажатой клавише от клавиатуры до отображения в Notepad.exe. В виду обширности и междисциплинарности темы в статьях могут быть неточности, о которых сообщайте в комментариях. Какая-то информация может быть устаревшей в виду скорости с которой развивается Windows.
+71
Гибкие процессы в IT команде
4 мин
7.4KВсем привет, меня зовут Алексей Федоров, я тимлид команды финансов в Ситимобил. В этой статье я хочу поделиться тем, как устроен процесс гибкой разработки в нашей команде.
+26
Информация
- В рейтинге
- Не участвует
- Зарегистрирован
- Активность