Pull to refresh
0
0
Светлов Александр @Mehalich

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

Send message

Обучаемся самостоятельно: подборка видеокурсов по Computer Science

Reading time11 min
Views127K
image

Содержание


  1. Введение в Computer Science
  2. Структуры данных и Алгоритмы
  3. Системное программирование
  4. Распределенные системы
  5. Базы данных
  6. Объектно-ориентированный дизайн и разработка софта
  7. Искусственный интеллект
  8. Машинное обучение
  9. Веб-разработка и интернет-технологии
  10. Concurrency
  11. Компьютерные сети
  12. Разработка мобильных приложений
  13. Математика для программистов
  14. Теория информатики и языки программирования
  15. Архитектура компьютера
  16. Безопасность
  17. Компьютерная графика
  18. Работа с изображениями и компьютерное зрение
  19. Интерфейс Человек-Компьютер
  20. Вычислительная биология
  21. Прочее

Total votes 78: ↑64 and ↓14+50
Comments23

Как создавались неуловимые цели в игре Hitman 2016 года

Reading time8 min
Views13K

Торбен Эллерт (Torben Ellert) — это ведущий онлайн-дизайнер эпизодической игры Hitman (2016) в Io-Interactive. Он подробно рассказал Gamasutra об неуловимых целях (Elusive Targets) в игре. Большинство целей можно устранить множеством способов и в любой момент, выбранный игроком. Неуловимые цели появляются в игре на короткий промежуток времени (48 часов), и у игроков есть только один шанс выполнить миссию.
Total votes 24: ↑21 and ↓3+18
Comments2

Преобразование типов значений в .NET

Reading time2 min
Views6.7K

Введение в проблему


Казалось бы, такая простая тема, как преобразование типов значений (value conversion), не достойна целой статьи. В C# есть подходящий оператор "(T)value", есть типы, которые его реализуют, и тему на этом можно считать закрытой. Но за 14 лет существования .NET разработчики BCL и другие программисты придумали еще 4 способа преобразовывать типы значений.


Читать дальше →
Total votes 12: ↑8 and ↓4+4
Comments9

Не «Танками» едиными – скучаем с пользой в стиле DIY

Reading time6 min
Views20K

image alt text


Навевающая ностальгию картинка взята с Pikabu


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


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

И да начнется DIY
Total votes 26: ↑22 and ↓4+18
Comments24

Названия больших чисел в idle-играх

Reading time5 min
Views23K


(Прим. пер.: приведённые в статье алгоритмы относятся к названиям степеней тысячи по короткой шкале.)

Некоторое время назад я получил возможность поучаствовать в разработке игры в жанре idle. Что же такое idle-игра? Если вы впервые слышите об этом быстро развивающемся жанре, попробуйте поиграть в Adventure Capitalist. На сайте Gamasutra также есть несколько статей (1, 2, 3, 4), позволяющих рассмотреть жанр немного глубже.
Читать дальше →
Total votes 32: ↑27 and ↓5+22
Comments9

Сотворение мира Опыт создания разумной жизни своими руками

Reading time23 min
Views27K
Иногда проводишь день в попытках без использования терминов «рекурсивный вызов» и «идиоты» объяснить главному бухгалтеру, почему на самом деле простое изменение учетной системы затягивается почти на неделю из-за орфографической ошибки, допущенной кем-то в коде в 2009 году. В такие дни хочется пооборвать руки тому умнику, который сотворил этот мир, и переписать все с ноля.

image

TL;DR
Под катом история о том, как я в качестве практики для изучения Python разрабатываю свою библиотеку для агентного моделирования с машинным обучением и богами.

Ссылка на github. Для работы из коробки нужен pygame. Для ознакомительного примера понадобится sklearn.
Читать дальше →
Total votes 46: ↑44 and ↓2+42
Comments31

Шесть стадий игрока в социальные f2p-игры

Reading time6 min
Views14K
image
Candy Crush — одна из тех игр, которые лучше всего понимают своих игроков

Перед разработчиками социальных игр стоит трудная задача: попытаться, чтобы игроки возвращались к игре как можно дольше. Но ни одна стратегия не сможет охватить всех, и в этом вам хочет помочь Optimove.
Читать дальше →
Total votes 19: ↑15 and ↓4+11
Comments23

Как построить гоночный коптер и не устать

Reading time6 min
Views24K
Многих интересует тема строительства мультироторных гоночных квадрокоптеров на раме ZMR250, но как только начинаешь исследовать тему, то обнаруживается просто тонна специфической информации, которая может только отпугнуть новичков, но никак не помочь при этом.

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


Читать дальше →
Total votes 25: ↑25 and ↓0+25
Comments55

7 аркадных игр, которые уже стали классикой, но всё ещё могут чему-то научить

Reading time6 min
Views35K
Contra, Dungeons & Dragons, Double Dragon, Q*Bert — эти классические аркады большинство из нас помнят и любят, ведь на них выросло целое поколение. Но чему они могут научить современного геймдизайнера?

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


Total votes 23: ↑16 and ↓7+9
Comments13

Делаем контур управления электродвигателем с заданием тока

Reading time4 min
Views18K

Постановка задачи


Это вторая, итоговая статья. Напоминаю цель: есть двигатель постоянного тока. Задача — разработать, собрать и протестировать устройство, позволяющиее реализовать контур управления с заданием тока применительно к этому двигателю. Желаемое время переходного процесса на застопоренном двигателе (без противо-ЭДС) — не более 10мс.

Текст разбит на две статьи:


Напоминаю, как выглядит макет управляющего железа:


Читать дальше →
Total votes 31: ↑31 and ↓0+31
Comments24

JavaFX и Spring. Вместе веселей

Reading time8 min
Views31K


В данной статье я хочу рассказать о своем опыте интеграции таких вещей как JavaFX и Spring. И заодно использовать базу данных Derby и Maven для сборки приложения.

Введение


JavaFX выглядит довольно удобной и привлекательной технологией для реализации десктопных решений на платформе Java. Начиная с версии Java SE 7 Update 6, JavaFX является частью реализации Oracle Java SE, т.е. никаких дополнительных установок на стороне пользователя не требуется.

Spring со своей стороны, дает удобные фишечки в виде IoC, управление транзакциями и т.д., которые не хочется реализовывать самому.

Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments9

Собираем Docker контейнер с http сервером при помощи Gradle

Reading time3 min
Views19K
imageПривет Хабр!

Возникла такая задача: Сделать простой web — сервер с минимальным числом зависимостей. При этом деплоиться он будет в виде docker контейнера. Для реализации самого сервера буду использовать GrizzlyWebServer. Для сборки Gradle c плагином для docker от Benjamin Muschko (bmuschko).

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

И так, начнем: сервер.
Читать дальше →
Total votes 17: ↑15 and ↓2+13
Comments5

Эволюционный дизайн баз данных

Reading time32 min
Views21K


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


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


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

Читать дальше →
Total votes 29: ↑27 and ↓2+25
Comments0

3D-печать миниатюр

Reading time6 min
Views31K
В этой статье речь пойдёт о том, что можно выжать из домашнего настольного принтера в области печати миниатюрных сложный объектов. Две недели назад я на спор взялся изготовить вот эту вещицу на домашнем FDM принтере.


Читать дальше →
Total votes 45: ↑45 and ↓0+45
Comments77

Приемы взятия сложных интегралов

Reading time3 min
Views40K

Интeгpaлы, чтo мoжeт быть вeceлee? Hу, вoзмoжнo нe для вcex, нo вce жe, я ужe дaвнo ничeгo нe пocтил тaкoгo cугубo мaтeмaтичecкoгo, тaк чтo пoпpoбую. Этoт пocт – пpo тo кaк бpaть «cлoжныe» интeгpaлы. Этoт пocт пoдpaзумeвaeт чтo читaтeль училcя тaки в шкoлe и знaeт тpивиaльныe пoдxoды (нaпpимep, интегрирование по частям). B пocтe мы будeм oбcуждaть тoлькo интeгpaлы Pимaнa, a нe интeгpaлы Лeбeгa-Cтилтьeca, Итo, Cкopoxoдa и тaк дaлee (xoтя я бы c удoвoльcтвиeм, чeccлoвo).


Becь этoт пocт — мaлeнькaя выбopкa peцeптoв или «пaттepнoв» кoтopыe мoжнo взять в кoпилку и пoтoм пpимeнять. Пocт peкoмeндуeтcя читaть нa high-DРI диcплee дaбы пpeдoтвpaтить глaзнoe кpoвoтeчeниe. Я пpeдупpeдил.


Если интересно...
Total votes 75: ↑66 and ↓9+57
Comments88

Как решить проблему ограничения в 64К методов в Unity3D

Reading time13 min
Views18K
Можете ли вы представить игру для Android, сделанную в Unity, которая использует больше 64K методов Java? Не удалось это и архитекторам байт-кода Dalvik. Возможно, у них получилось (я не читал спецификации), и винить следует другие элементы тулчейна. Как бы то ни было, если ваша игра превышает ограничение в 64K методов на файл DEX, вам придётся ковыряться в своих нативных плагинах и/или процессе сборки. Этот пост является попыткой показать различные способы решения проблемы.
Читать дальше →
Total votes 24: ↑22 and ↓2+20
Comments2

О сравнении объектов по значению — 2, или Особенности реализации метода Equals

Reading time9 min
Views12K
В предыдущей публикации мы рассмотрели общие принципы реализации минимально необходимых доработок класса для возможности сравнения объектов класса по значению с помощью стандартной инфраструктуры платформы .NET.

Эти доработки включают перекрытие методов Object.Equals(Object) и Object.GetHashCode().

Остановимся подробнее на особенностях реализации метода Object.Equals(Object) для соответствия следующему требованию в документации:

x.Equals(y) returns the same value as y.Equals(x).

Класс Person, созданный в предыдущей публикации, содержит следующую реализацию метода Equals(Object):

Person.Equals(Object)
public override bool Equals(object obj)
{
    if ((object)this == obj)
        return true;

    var other = obj as Person;

    if ((object)other == null)
        return false;

    return EqualsHelper(this, other);
}

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

В соответствии с примером, приведенным в документации, приведение производится с помощью оператора as. Проверим, дает ли это корректный результат.
Читать дальше →
Total votes 21: ↑16 and ↓5+11
Comments13

Измерение сопротивления и индуктивности двигателя постоянного тока

Reading time9 min
Views27K

Постановка задачи


Есть двигатель постоянного тока. Задача — разработать, собрать и протестировать устройство, позволяющиее реализовать контур тока применительно к этому двигателю. Желаемое время переходного процесса на застопоренном двигателе (без противо-ЭДС) — не более 10мс. Интерфес связи с внешним управляющим контроллером — SPI.

Двигатель постоянного тока, коллекторный, максимальное напряжение 24В, рабочий ток до 5А.

Что значит — контур тока? Самые распространённые драйверы для управления двигателями это всякие вариации полумостов, которые усиливают напряжение. А мне хочется, чтобы драйвер брал на вход не напряжение, а силу тока. Сила, развиваемая электроприводом, прямо пропорциональна силе протекающего тока. А значит, и прямо пропорциональна ускорению на валу двигателя. Такой контур тока позволит избежать извращений, на которые нужно идти без него, как я это делал тут.

Я разбил этот текст на две статьи:


Вот так выглядит макет управляющего железа:


Читать дальше →
Total votes 29: ↑28 and ↓1+27
Comments53

Руководство по созданию механических щупальцев в домашних условиях, часть 3

Reading time6 min
Views11K

Часть 1
Часть 2

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

» Файлы-схемы.

1. Всемогущий список материалов
2. Векторные рисунки для лазерного резака.
a. Файлы DXF со сдвигом в 0,003 "
b. Оригинальные файлы DFX
3. STL-модели для 3D принтера
4. Оригинальные CAD-модели щупалец
5. Оригинальные CAD-модели контроллера

Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments7
1
23 ...

Information

Rating
Does not participate
Location
Таллин, Эстония, Эстония
Date of birth
Registered
Activity