В рамках моих постоянных попыток заниматься благотворительностью и обменом знаниями я выступал на конференции Develop:Brighton в 2015 и 2016 годах.
Я подумал, что пришло время сделать слайды доступными где-нибудь, чтобы их было легко найти, поэтому я разместил ссылки здесь, в блогатроне.
Надеюсь, вы найдете их полезными. Не стесняйтесь спрашивать меня о них в Твиттере, если вам нужна дополнительная информация — @darbotron
2015: Портирование игр Unity на консоли
[ "Скачать здесь" ]
Первый разговор касается переноса игр Unity с ПК на консоль — некоторые мелкие детали в нем изменились за прошедшее время, когда Unity перешла с 4.x на 2017.x, но в целом содержащиеся в нем советы по-прежнему актуальны. теперь как тогда.
Это также содержит множество слайдов, которые мне пришлось вырезать из фактического выступления, чтобы сделать это за 45 минут, которые у меня были…
2016: Как НЕ потерпеть неудачу в программной инженерии
[ "Скачать здесь" ]
Я вмешался в последнюю минуту, чтобы выступить с этим докладом после того, как другой оратор отключился, поэтому в нем немного меньше деталей, чем в предыдущем.
Как человек, который портирует игры и/или помогает исправлять проблемы в играх, которые собираются выпустить, я вижу несколько похожих классов проблем практически в каждой кодовой базе, которую я просматриваю, и многие из них, кажется, имеют одни и те же — предотвратимые — первопричины.
Эти проблемы обычно коренятся в том, что я называю ежеминутным кодом. Недостаточно низкий уровень, чтобы привлечь внимание, чтобы избежать проблем с производительностью, или достаточно значимый с точки зрения архитектуры, чтобы гарантировать детальное планирование. Вид кода, написанный для объединения модулей или интеграции какой-либо новой функции, чтобы уложиться в срок; код «заставьте его работать», который мы не всегда забываем привести в порядок перед передачей в систему управления версиями.
Это работает, но на самом деле никто не «владеет» им. Он строится, изменяется, переназначается, а в худших случаях проникает во всю кодовую базу игры до того, как становится очевидным, что с ним есть проблема. Это такие проблемы, которые обычно становятся очевидными только тогда, когда вы пытаетесь освоить, а затем то, что звучит как простое изменение или легкое исправление ошибки, заканчивается значительным рефакторингом, затрагивающим 30 с лишним процентов кодовой базы. Мы все были там.
В этом выступлении я выступаю за идентификацию и применение минимально жизнеспособной программной инженерии, соответствующей этому уровню программирования, и предлагаю свое мнение относительно отправной точки для нее — набора инструментов, помогающих нам заранее предотвращать эти случайные безвредные кодовые бомбы путем не писать их в первую очередь, а помочь выявить и исправить их до того, как они станут проблемами.