Pull to refresh
6
0.1
Babichev Oleg @obabichev

Пользователь

Send message

15 игр, которые прокачивают логику, алгоритмы, ассемблер и силу земли

Reading time8 min
Views108K


Есть «Super Mario», признанная классика видео игр. Есть «Doom», который запускают на чайниках и тестах на беременность. Есть супер-популярные по статистике twitch.tv игры («League of Legends», «GTA V», «Fortnite», «Apex Legends») которые стримят пятая часть всех стриммеров.

А есть игры, на которые очень мало обзоров, но они супер крутые — игры про алгоритмы. Игры, в которых можно кодить на ретро-компьютере; игры, которые надо взламывать; игры, где можно программировать контроллеры или поведение персонажей; игры, где можно создавать свою игру внутри игры.

Под катом подборка классных игр про алгоритмы за последние 10 лет. Если что-то упустила — буду рада дополнениям.

Еще я создала канал в Telegram: GameDEVils, буду делиться там клевыми материалами (про геймдизайн, разработку и историю игр).
Читать дальше →
Total votes 78: ↑73 and ↓5+88
Comments98

Что нужно знать, чтобы быть синьором?

Reading time11 min
Views90K

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

Ну-ка, ну-ка...
Total votes 165: ↑147 and ↓18+151
Comments258

«Меняем реальность в головах сотрудников», или Элементы манипуляции в трудовых отношениях

Reading time7 min
Views18K
image

«Иван, здравствуйте! Вы меня простите, что оторвал вас от задач, но дело крайне важное. У нас возникла очень сложная ситуация и я просто не знаю, как быть. Есть очень-очень-очень серьезная проблема, не решив которую у меня будут проблемы. Мне нужна в этом помощь. Я долго думал, к кому я могу обратиться… (пауза). В ком я могу быть на 100% уверен и кто меня никогда не подводил… (пауза).

Я знаю вас как близкого человека, вы очень профессиональны и лояльны. Вы неоднократно выручали компанию, и лично меня…. Как видите, я не отправил свою просьбу письменно, и хотел ЛИЧНО вас попросить. Нужно, чтобы вы вышли в субботу на работу и сделали…»

И продолжение, если вдруг сотрудник решит отказаться:
«Неужели я ошибся в вас? (пауза) Мне казалось вы также, как и я переживаете за дело. Я видел в вас свою замену….»



На самом деле все происходит более тонко, но некоторые фразочки, из предложенных мной в этом кейсе вы наверняка встречали.

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

Манипуляция — это действие, которое применяет один человек против второго, для достижения своей цели, при условии, когда истинная цель целенаправленно скрывается и выигрыш манипулятора достигается за счет проигрыша того, кем он манипулирует. Простыми словами, манипуляция — это способ получить скрытую одностороннюю выгоду за счет другого.
Читать дальше →
Total votes 41: ↑33 and ↓8+30
Comments46

Топ-20 самых упоминаемых книг на HackerNews

Reading time4 min
Views15K
image

На HackerNews пользователь tracyhenry проанализировал 40 000 комментариев и составил рейтинг самых упоминаемых в комментариях книг.

Автор рейтинга преисполнен благодарности тем книгам, про которые он узнал благодаря HackerNews и решил отдать долг и написать приложение, которое бы проанализировало все рекомендации на Hackerews. Такие попытки были неоднократно (раз, два, три), но в предыдущих попытках были ограничения по размеру выборки, либо были недостаточно четкие правила поиска и поэтому картина была не полна. Еще сложность представляли случаи, когда названия книги пересекалось с названием фильма («Первому игроку приготовиться») или название — это общеупотребительное слово/словосочетание: «Стив Джобс» или «Медитация».

Автор рейтинга использовал NLP-модель BERT для повышения точности распознавания (и 4000 вручную размеченных комментариев). Новая версия извлекает в 9-50 раз больше упоминаний, чем предыдущие решения.

Ограничения текущей модели: 1) не различает две разные книги с одинаковым названием («Гарри Поттер» и «Гарри Поттер и методы рационального мышления»). 2) не понимает, что это гневный комментарий.

Книги из топ-20 очень известные, и нет смысла давать их краткое описание, это уже делали много раз. Привожу здесь список из топ-20 (более полный см тут), чтобы вы могли свериться, насколько вы «соответствуете повестке мировой ИТ элиты» и отзывы/конспекты/упоминания про эти книги на Хабре.

Что вы уже давно прочитали, а что упустили из вида и почему?
Читать дальше →
Total votes 18: ↑13 and ↓5+10
Comments9

Как работать с Big Data быстрее и эффективнее: Kubernetes для Data Science

Reading time10 min
Views9.9K


Big Data by Batjorge


Традиционный подход к построению работы с большими данными — развернуть Hadoop-кластер, установить дополнительные инструменты и построить на нем платформу для работы с данными. Но в таком подходе есть несколько ограничений, вроде невозможности разделения Storage- и Compute-слоев, сложностей масштабирования и изоляции сред для разных приложений. Даже несмотря на то, что Hadoop можно арендовать у облачного провайдера как сервис (aaS), такой подход все равно мало чем отличается от развертывания на собственном оборудовании.


Однако есть другой, Cloud-Native подход работы с большими данными. Он позволяет решить эти проблемы, а также получить дополнительные возможности от облачных технологий. Для этого используют Kubernetes, интегрируя его с различными инструментами.


Я Александр Волынский, архитектор облачной платформы Mail.ru Cloud Solutions. Расскажу, как Kubernetes помогает в работе с Big Data, какие используются инструменты и какие преимущества можно получить по сравнению с классическим развертыванием.


Также вы можете посмотреть видеовыступление на митапе «Большие данные: не хайп, а индустрия».
Читать дальше →
Total votes 17: ↑17 and ↓0+17
Comments4

Перевод Курса по стартапам и бизнесу от Стэнфордского Университета. Лекция №3. Подготовка к созданию стартапа

Reading time3 min
Views4.3K

Почему Курс по стартапам и бизнесу от Стэнфордского Университета, является одним из самых лучших в мире для стартаперов? Дело в том, что лекторами данного курса являются лучшие из лучших стартап-предприниматели, такие как: Сем Альтман – президент самого известного венчурного фонда Y Combinator, Дастин Московиц – сооснователь Facebook, Питер Тиль – сооснователь PayPal и первый инвестор, который вложил деньги в Facebook, Брайан Чески – основатель Airbnb, Альфред Лин – основатель Zappos, Алан Кей – отец ООП и много других гуру современного интернет-бизнеса.

В этом курсе отсутствуют сложные теории, а присутствуют только практические примеры и советы.
Например, как найти бизнес-идею и оценить её, как привлечь клиентов и постоянно увеличивать свои продажи, как построить успешную бизнес-стратегию и подобрать сильную команду и т. д.
В первой лекции будут выступать Сэм Альтман – гений-программист, который сейчас возглавляет венчурный фонд Y Combinator, с чьей помощью успешно реализовано более 400 стартапов и также Дастин Московиц — сооснователь Facebook.

В этой небольшой статье я хочу кратко описать содержимое лекции №3 - Подготовка к созданию стартапа из курса по стартапам и бизнесу от Стэнфордского Университета.

Итак, из Лекции №3 - Подготовка к созданию стартапа вы узнаете следующее:

01:30 – Инстинкты которые необходимы стартаперам?

02:40 – Первая нелогичная истина стартапов – В стартапе не допустимы инстинктивные действия.

03:25 – Почему стартаперы игнорируют советы?

04:35 – Одна из самых больших ошибок стартаперов?

Читать далее
Total votes 4: ↑2 and ↓20
Comments1

Компьютерное зрение на WebRTC-сервере с аппаратным ускорением от Intel OWT

Reading time10 min
Views7.8K

WebRTC упростил (в большинстве своем) получение и отправку видеопотоков в реальном времени. А значит, можно немного поразвлекаться с ними при помощи машинного обучения. В прошлом месяце я показал, как запустить компьютерное зрение (Computer Vision – CV) локально в браузере. Как я уже упоминал, локально – это, конечно, хорошо, но иногда требуется более высокая производительность, и для этого нам понадобится удаленный сервер. В данном посте я расскажу о том, как запускать серверные модели OpenCV с аппаратным ускорением на чипсетах Intel с помощью Open WebRTC Toolkit (OWT) с открытым исходным кодом.
Читать дальше →
Total votes 38: ↑38 and ↓0+38
Comments1

1 CPU 1 Гб – а я хочу мониторинг, как у больших дядей

Reading time14 min
Views55K


Я обожаю читать на хабре статьи про то, как устроены системы больших интернет-компаний. Кластеры SQL-серверов, монг и редисов. Тут у нас кластер ELK собирает трейсинг, там – сборка логов, здесь балансер выдает входящим запросам traceID и можно отслеживать, как запрос ходит по всем нашим микросервисам. Класс. Но, допустим, у вас совсем маленький проект и вы можете себе позволить лишь VPS минимальной конфигурации. Реально ли на ней сделать мониторинг не хуже, чем у больших проектов? Я решил – надо попробовать.
Читать дальше →
Total votes 64: ↑62 and ↓2+78
Comments82

Нейросеть с нуля своими руками. Часть 1. Теория

Reading time6 min
Views121K

Здравствуйте. Меня зовут Андрей, я frontend-разработчик и я хочу поговорить с вами на такую тему как нейросети. Дело в том, что ML технологии все глубже проникают в нашу жизнь, и о нейросетях сказано и написано уже очень много, но когда я захотел разобраться в этом вопросе, я понял что в интернете есть множество гайдов о том как создать нейросеть и выглядят они примерно следующим образом:

Читать далее
Total votes 17: ↑15 and ↓2+18
Comments17

Парочка доступных бандлов с устройствами для аудиозаписи — что в комплекте и кому подойдет

Reading time4 min
Views7.1K

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

Читать далее
Total votes 8: ↑5 and ↓3+4
Comments4

Приключения с Ansible: уроки, извлеченные из практики

Reading time5 min
Views6.5K

Ansible — это мощный инструмент ИТ-автоматизации и, аналогично другим подобным инструментам, его освоение требует времени.

Я использовал Ansible для автоматизации развертывания и управления корпоративными приложениями и извлек ряд уроков, с которыми хотел бы поделиться, чтобы помочь другим. В конце концов, это open source — принцип.

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

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

Читать далее
Total votes 8: ↑5 and ↓3+3
Comments1

Изучаем внутренние компоненты Docker — Объединённая файловая система

Reading time12 min
Views20K

Создавать, запускать, просматривать, перемещать контейнеры и образы с помощью интерфейса командной строки Docker (Docker CLI) проще простого, но задумывались ли вы когда-нибудь, как на самом деле работают внутренние компоненты, обеспечивающие работу интерфейса Docker? За этим простым интерфейсом скрывается множество продвинутых технологий, и специально к старту нового потока курса по DevOps в этой статье мы рассмотрим одну из них — объединённую файловую систему, используемую во всех слоях контейнеров и образов. Маститым знатокам контейнеризации и оркестрации данный материал навряд ли откроет что-то новое, зато будет полезен тем, кто делает первые шаги в DevOps.

Приятного чтения
Total votes 14: ↑13 and ↓1+14
Comments1

Как Контур балансирует нагрузку в микросервисах

Reading time10 min
Views6.5K

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

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

Читать далее
Total votes 20: ↑20 and ↓0+20
Comments2

Нейросети в большом городе. Разбираемся, как они помогают идентифицировать людей, и запускаем собственную нейросеть

Reading time7 min
Views20K
Алгоритмы по детекции лиц плотно вошли в нашу жизнь, хотя и не все это замечают. Началось всё в 2015 году со сферы развлечений. Shapchat купил стартап Looksery, в котором разрабатывали AR-фильтры. Приложение распознавало лицо человека на фотографии и накладывало на него весёлые рожицы. Чуть позже, в начале 2016 года, Facebook купил белорусский стартап MSQRD и запустил маски в Facebook Stories. Но это можно считать только обкаткой таких технологий.

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


Приятного чтения!
Total votes 24: ↑23 and ↓1+30
Comments26

Открытый курс машинного обучения. Тема 1. Первичный анализ данных с Pandas

Level of difficultyEasy
Reading time15 min
Views1.1M


Открытый курс машинного обучения mlcourse.ai сообщества OpenDataScience – это сбалансированный по теории и практике курс, дающий как знания, так и навыки (необходимые, но не достаточные) машинного обучения уровня Junior Data Scientist. Нечасто встретите и подробное описание математики, стоящей за используемыми алгоритмами, и соревнования Kaggle Inclass, и примеры бизнес-применения машинного обучения в одном курсе. С 2017 по 2019 годы Юрий Кашницкий yorko и большая команда ODS проводили живые запуски курса дважды в год – с домашними заданиями, соревнованиями и общим рейтингом учаcтников (имена героев запечатлены тут). Сейчас курс в режиме самостоятельного прохождения.

Читать дальше →
Total votes 44: ↑43 and ↓1+42
Comments61

Четырёхмерный лабиринт с видом от первого лица

Reading time4 min
Views31K

Существует более 30 игр с дополнительным пространственным измерением (список на википедии), которые разнообразными способами визуализируют и пытаются сделать доступной для понимания наличие четвёртой координаты. Но среди тех игр, с которыми я ознакомился, не нашел для себя такой, которая сочетала бы в себе следующие факторы:

- вид от первого лица

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

- простая и привычная графика, с текстурами и освещением

- отсутствие лишних геймплейных элементов и бóльшая направленность игры на исследование четырёхмерного мира

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

Читать далее
Total votes 122: ↑122 and ↓0+122
Comments72

11 инструментов для разработки микрофронтендов, о которых стоит знать

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



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

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

Существует много подходов к разработке микрофронтендов: от интеллектуальной интеграции компонентов во время сборки проекта до организации совместной работы разных частей приложения во время выполнения кода путём использования особых подходов к маршрутизации. В этом материале я собрал самые заметные инструменты, направленные на разработку микрофронтендов.
Читать дальше →
Total votes 21: ↑19 and ↓2+26
Comments17

Отказ от create-react-app и создание собственного шаблона для React-приложений

Reading time9 min
Views46K
Автор статьи, перевод которой мы сегодня публикуем, предлагает React-разработчикам отойти от использования create-react-app (CRA) и создать собственный шаблон для React-приложений. Здесь речь пойдёт о преимуществах и недостатках CRA, а так же будет предложено решение, которое способно заменить create-react-app.


Читать дальше →
Total votes 16: ↑14 and ↓2+22
Comments12

Java-модель памяти (часть 2)

Reading time4 min
Views36K
Привет, Хабр! Представляю вашему вниманию перевод второй части статьи «Java Memory Model» автора Jakob Jenkov. Первая часть тут.

Аппаратная архитектура памяти


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

Вот упрощенная схема аппаратной архитектуры современного компьютера:

Современный компьютер часто имеет 2 или более процессоров. Некоторые из этих процессоров также могут иметь несколько ядер. На таких компьютерах возможно одновременное выполнение нескольких потоков. Каждый процессор (прим. переводчика — тут и далее под процессором автор вероятно подразумевает ядро процессора или одноядерный процессор) способен запускать один поток в любой момент времени. Это означает, что если ваше Java-приложение является многопоточным, то внутри вашей программы может быть запущен одновременно один поток на один процессор.

Каждый процессор содержит набор регистров, которые, по существу, находятся в его памяти. Он может выполнять операции над данными регистрах намного быстрее, чем в над данными, которые находятся в основной памяти компьютера (ОЗУ). Это связано с тем, что процессор может получить доступ к этим регистрам гораздо быстрее.
Читать дальше →
Total votes 8: ↑6 and ↓2+9
Comments5

Information

Rating
3,060-th
Registered
Activity