admin 18 июля 2017

Делаем стримы кодинга: чему я смогу научиться?

Мы перевели для вас пост Сьюзан Хинтон, которая работает в Microsoft. В нем она поделилась опытом, который приобрела после года стрима кодинга на Twitch.



Автор начала стримить в прошлом июле. Вместо игр, которыми занимается большинство стримеров на Твитч, она хотела делать трансляции работы с открытым исходным кодом, которым она занималась в свободное время. Разработчик работала над аппаратными библиотеками NodeJS. Будучи в теме, она решила еще больше сузить свою нишу и выбрала JavaScript.

Конечно, наш автор не первопроходец в этом деле. Handmade Hero был одним из первых программистов, кто программировал в трансляции. Затем последовали трансляции разработчиков Nuclear Throne.
Друг разработчика помог определиться с тем, как должны были происходить трансляции. Она смотрела его стримы и была под большим впечатлением. Он объяснял все, что делает, отвечал на вопросы о ГитХабе, исправлял баги, занимался отладкой кода. Все это очень вдохновило девушку, и в результате она оставила комментарий под одним из его видео:

Спустя неделю или немного позже после того, как Сьюзан настроила канал Twitch она потерпела фиаско. Тогда она работала над Avrgirl-Arduino, с которым до сих пор ведет трансляции. Это было очень неуклюже. Девушка очень нервничала и возможности отрепетировать все заранее у нее не было.
Хотя зрителей в ту cубботу было немного, они её очень воодушевили, и она продолжила трансляцию. На сегодняшний день у разработчицы более тысячи подписчиков, самых верные зовутся noopkat fam.
Сью считает стримы веселым занятием, и ей нравится называть текущие части транслируемого кода «массовым многопользовательским онлайн-программированием». Её восхищает доброта и остроумие всех, кто присоединяется к ее трансляции каждые выходные. Один из самых забавных моментов, которые случались за все это время, был случай, когда один из членов семьи девушки заметил, что её Arduino не работает с софтом, потому что микрочип пропал с доски.

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

Во-первых, я советую вам гайд под названием Стримы и успех на твитч“Streaming and Finding Success on Twitch” , который очень мне помог. Он ориентирован на Twitch и игровые трансляции, но здесь много полезных разделов и крутых советов. Я бы рекомендовала сначала прочитать его, прежде чем рассматривать любую другую информацию о запуске вашего канала (например, выбор оборудования или программного обеспечения).
Мои советы ниже, основаны на личном опыте и советах мудрых соратников – стримеров.

Софт

Есть много софта для трансляций. Я использую Open Broadcaster Software (OBS). Он доступен на большинстве платформ. Я интуитивно разобралась со всеми настройками и прочим, но у некоторых это может занять некоторое время. Вот скриншот того, как выглядит моя настройка рабочего стола OBS на сегодняшний день:

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

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

У меня есть несколько «лейблов» для моих сцен, многие из которых связаны со статистикой и информацией в верхнем баннере. Баннер просто добавляет индивидуальности и является хорошим постоянным источником информации во время стрима. Этот лейбл я сделала в GIMP и импортировала его в качестве источника в своей сцене. Некоторые из них- это живая статистика, которая извлекается из текстовых файлов (например, самый последний подписчик). Другой лейбл, который я сделала, показывает текущую температуру и влажность в помещении, из которого я веду трансляцию.

У меня также есть «предупреждения», созданные в моих сценах, которые показывают милые баннеры поверх моего стрима всякий раз, когда кто-то подписывается или жертвует деньги. Я использую веб-службу Stream Labs для этого, импортируя ее в качестве источника веб-страницы браузера в сцену. Stream Labs также создает текстовый файл на основе новых подписчиков, который будет отображаться в моем баннере.
У меня также есть экран ожидания, который я использую, когда я собираюсь начать стрим:

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

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

Но теперь настоящая тайна: я использую OBS, чтобы вырезать нижний и правый края моего экрана, сохраняя при этом тот же размер видео, который требует Twitch. Это оставляет мне пространство внизу для просмотра происходящих событий (подписчиков и т. д.) и отвечать в чате справа. Twitch позволяет вам «выскочить» из чата в новом окне, что действительно очень полезно.
Вот как выглядит весь мой рабочий стол:

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

Оборудование

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

В настоящее время я использую веб-камеру Logitech Pro C920 и микрофон Blue Yeti на микрофонной панели. Это все полностью окупится, потому что это очень сильно влияет на качество моих стримов.
Я использую большой монитор (27 "), потому что, как я упоминала ранее, использование двух мониторов просто не работало со мной. Я пропускала много вещей в чате, потому что я не смотрела около двух секунд на экран. Размер монитора может варьироваться, но наличие всего на одном экране было ключевым для меня, чтобы обращать внимание на все происходящее. Это все на счет оборудования; у меня нет очень сложной настройки.
Если вам было интересно, мой стол в принципе выглядит нормально, за исключением неприятно маячащего микрофона:

Советы

В последнем разделе есть несколько общих советов, которые я выбрала, именно помогли мне сделать трансляции лучше и приятнее.
Панели
Потратьте некоторое время на создание больших панелей. Панели - это небольшие боксы контента внизу страницы канала каждого пользователя. Я рассматриваю их как новые поля профиля MySpace (lol, но правда). На панелях вы можете, например, отображать правила чата, информацию о том, когда вы ведете трансляции, какой компьютер и оборудование вы используете, вашу любимую породу кошек; Все, что позволит наладить личный контакт. Посмотрите на другие каналы (особенно популярные) для поиска идей!
Пример одной из моих панелей:

Чат

Чат очень важен. Вы будете получать одни и те же вопросы снова и снова, когда люди присоединятся к вашему стриму на полпути, поэтому частые «макросы» могут действительно помочь. «На чем вы работаете?» - это самый распространенный вопрос, заданный во время кодирования. У меня есть чат-ярлык «команды» для этого, который я сделала с Nightbot. Он представит объяснение того, что я ввела заблаговременно, набрав небольшую команду из одного слова, например, whatamidoing

Когда люди задают вопросы или оставляют приятные комментарии, реагируйте на них! Скажите спасибо, ведь они действительно ценят внимание и признание. ОЧЕНЬ сложно оставаться на вершине, когда вы начинаете вести трансляции, но многозадачность облегчит вам работу, так как вы будете больше успевать. Старайтесь просматривать чат с какой-то периодичностью, чтобы видеть новые сообщения.
Когда вы кодите, объясняйте, что вы делаете. Много говорите. Шутите. Даже когда я застреваю, я говорю: «Ох, черт, я забыла, как использовать этот метод, подождите пока я загуглю» , и люди всегда добры, и иногда они даже ищут вместе с вами и помогают вам. Это весело и интересно, и люди продолжают смотреть.
Я быстро теряю интерес, когда я смотрю трансляции, где стример сидит в тишине, набрав код, игнорируя чат и новые уведомления о подписчиках.
Очень вероятно, что 99% людей, которые находят путь на ваш канал, будут дружелюбны и любопытны. Случаются тролли, но инструменты модерации, предлагаемые Twitch и Nightbot, помогают с этим справиться.

Время подготовки

Автоматизируйте свои настройки, как можно больше. Мой терминал iTerm, и он позволяет вам сохранить расположение окон и размеры шрифтов, чтобы вы могли вернуться к ним позже. У меня есть одна компоновка окна для стрима и одна не для него. Это очень экономит время. Я ввожу одну команду, и все будет идеального размером и в правильном положении, готово к работе.

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

Регулярность

Придерживайтесь расписания. Я работаю только раз в неделю, но всегда в одно и то же время. Дайте людям знать, если по каким-то причинам вы не сможете вести трансляцию в обычное время. Это помогло мне обрести постоянную аудиторию. Вы в социальном кругу с вашим сообществом, поэтому относитесь к ним как к друзьям.
Я хотела бы вести трансляции чаще, но из-за путешествий не могу себе этого позволить. Я пытаюсь найти способ вести трансляцию высокого качества, когда я в пути, или хотя бы подключаться к чату, а программирование оставлять на привычное время. Я все еще пытаюсь понять, как это сделать!

Неловкости

Вы будете странно себя чуствовать в самом начале. Вы будете нервничать по поводу того, что люди смотрят ваш код. Это нормально! Я чувствовала это очень сильно в самом начале, хотя у меня есть опыт публичных выступлений. Я чувствовала, что мне некуда спрятаться, и это меня пугало. Я думала: «каждый будет думать, что мой код плох, и что я плохой разработчик». Эта мысль преследовала меня всю мою карьеру, но это не ново. Я знала, что с этим я не смогу спокойно реорганизовать код, прежде чем пушить его на GitHub, что, как правило, намного безопаснее для моей репутации разработчика.

Я многое узнала о своем стиле программирования, используя онлайн-программирование на Twitch. Я узнала, что я определенно тип «заставлю его работать, а затем сделаю его читаемым, а затем быстрым». Я больше не репетирую за ночь перед стримом (я делала это после 3 или 4 трансляций в самом начале), поэтому я пишу довольно грубый код на Twitch и воспринимаю это нормально. Я пишу код лучше, когда я наедине со своими мыслями, а не смотрю чат + разговариваю вслух, и все в порядке. Я забываю сигнатуры методов, которые я использовала тысячу раз, и делаю «глупые» ошибки почти в каждом стриме. Для большинства это неэффективная среда для того, чтобы выдавать лучшей результат.

Мое сообщество Twitch никогда не судит меня и очень помогает мне. Они понимают, что у меня много задач, и действительно хороши в прагматичных советах и предложениях. Иногда они меня выручают, а иногда мне приходится объяснять им, почему их предложение не сработает. Вообще это очень похоже на обычное парное программирование.

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

Вывод

Если вы хотите создать трансляцию в Twitch, я советую вам попробовать! Надеюсь, что этот пост помог вам, если вам было интересно с чего начать.

МЕРОПРИЯТИЯ

Комментарии

ВАКАНСИИ

Добавить вакансию
Продуктовый аналитик
Екатеринбург, по итогам собеседования
Аналитик данных
Екатеринбург, по итогам собеседования

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ