Twitch에서 생방송 첫 해의 교훈

편집 : 최신 업데이트 된 실시간 스트리밍 설정에 관심이있는 경우 새 기사 "My Twitch Live Coding Setup"에서 해당 내용을 읽을 수 있습니다.

지난 7 월에 처음으로 스트리밍을 진행했습니다. Twitch의 대부분의 스트리 머가하는 게임 대신 개인 시간에 내가하는 오픈 소스 작업을 스트리밍하고 싶었습니다. NodeJS 하드웨어 라이브러리에서 공정한 작업을 수행합니다 (대부분 내 자신의 것). 내가 이미 Twitch에서 틈새 시장에 있다는 것을 감안할 때 JavaScript 기반 하드웨어와 같이 더 작은 틈새 시장에 있지 않는 이유는 무엇입니까?

물론이 일을 처음하는 사람은 아닙니다. Handmade Hero는 온라인에서 코드를 본 최초의 프로그래머 중 하나였으며 Vlambeer의 개발자들은 Twitch에서 Nuclear Throne 라이브를 개발했습니다. 특히 Vlambeer에 매료되었습니다.

내가 실제로 그것을 할 수 있기를 바라는 것의 가장자리에 나를 기울인 것은 나의 친구 인 놀란 로손에게 공헌한다. 나는 주말에 그의 오픈 소스 작업을 스트리밍하는 것을 보았습니다. 그는 자기가하는 모든 일을 설명했다. 모두. GitHub의 문제에 대한 답장, 버그 심사, 분기의 코드 디버깅에 이름을 지정합니다. 놀란은 많은 사용과 활동을 얻는 오픈 소스 라이브러리를 유지하기 때문에 매력적이라는 것을 알았습니다. 그의 오픈 소스 생활은 나와 다릅니다.

당신은 내가 그의 비디오 아래에 남겨둔이 의견을 볼 수 있습니다 :

나는 Twitch 채널을 설정하고 OBS 사용을 통해 혼란스럽게 한 주일 정도 후에 나 자신에게 갔다. 스트리밍하는 동안 자주 작업하는 Avrgirl-Arduino에서 일했다고 생각합니다. 거친 첫 흐름이었습니다. 나는 매우 긴장했고, 전날 밤하려고 할 모든 것을 늦게 리허설했습니다.

토요일에 시청 한 소수의 시청자들은 정말 고무적 이었으므로 계속 시청했습니다. 요즘에는 추종자가 천명 이상이며, 그중 일부는 내가“noopkat fam”이라고 부르는 일반 방문자입니다.

우리는 많은 재미를 가지고 있으며, 라이브 코딩 파트를 "대규모 멀티 플레이어 온라인 페어 프로그래밍"이라고 부릅니다. 나는 주말마다 나와 함께하는 모든 사람들의 친절과 재치에 진심으로 감동합니다. 내가 겪었던 가장 재미있는 순간 중 하나는 마이크로 칩이 보드에 없기 때문에 내 아두 이노 보드가 내 소프트웨어와 작동하지 않는다는 사실이 가족 중 한 명이 지적했을 때입니다.

스트림을 여러 번 로그 오프했습니다.받은 편지함에서 누군가 내가 내가 시작할 시간이 없다고 언급 한 일부 작업에 대한 풀 요청을 보냈 음을 알았습니다. Twitch 커뮤니티의 관대함과 격려 덕분에 오픈 소스 작업이 개선되었다고 솔직하게 말할 수 있습니다.

Twitch에서 스트리밍하면 얻을 수있는 이점에 대해 훨씬 더 많이 말하지만 다른 블로그 게시물에 대한 것일 수 있습니다. 대신, 이런 식으로 라이브 코딩을 시도하고 싶은 다른 사람들을 위해 배운 교훈을 공유하고 싶습니다. 최근에 개발자 몇 명에게 시작하는 방법에 대한 질문을 받았으므로 그들에게 제공 한 것과 동일한 조언을 게시하고 있습니다.

먼저, "Twitch에서 스트리밍 및 찾기 성공"이라는 가이드에 연결하는 데 많은 도움이되었습니다. 특히 Twitch 및 게임 스트림에 중점을두고 있지만 여전히 관련 섹션과 유용한 조언이 있습니다. 채널 시작에 대한 다른 세부 사항 (예 : 장비 또는 소프트웨어 선택)을 고려하기 전에이 내용을 먼저 읽어 보시기 바랍니다.

내 자신의 조언은 다음과 같습니다. 내 자신의 실수와 동료 깃발의 현자 지혜 (당신은 누구인지 알고 있습니다)에서 얻었습니다.

소프트웨어

스트리밍 할 무료 스트리밍 소프트웨어가 많이 있습니다. OBS (Open Broadcaster Software)를 사용합니다. 대부분의 플랫폼에서 사용할 수 있습니다. 나는 일어나고 나가는 것이 정말 직관적이라는 것을 알았지 만 다른 사람들은 때때로 그것이 어떻게 작동하는지 배우는 데 시간이 걸립니다. 귀하의 마일리지가 다를 수 있습니다! 다음은 오늘 OBS‘데스크톱 장면’설정의 모습입니다 (더 큰 이미지를 보려면 클릭하십시오).

스트리밍하는 동안 본질적으로 '장면'을 전환합니다. 장면은 서로 계층화되고 합성 된 '소스'모음입니다. 소스는 카메라, 마이크, 데스크탑, 웹 페이지, 라이브 텍스트, 이미지 등이 될 수 있습니다. OBS는 매우 강력합니다.

위의 데스크톱 장면은 모든 라이브 코딩을 수행하는 곳이며 대부분 스트림 기간 동안 여기에 살고 있습니다. 나는 iTerm과 vim을 사용하고 GitHub 등의 문서를 찾고 심사하기 위해 전환하기 편리한 브라우저 창을 가지고 있습니다.

아래쪽 검은 색 사각형은 웹캠이므로 사람들은 내가 일하고보다 개인적인 관계를 맺을 수 있습니다.
 
장면에 대한 소수의 '라벨'이 있는데, 그 중 다수는 상단 배너의 통계 및 정보와 관련이 있습니다. 배너는 개성을 추가하고 스트리밍하는 동안 정보를 지속적으로 제공합니다. 김프에서 만든 이미지이며 장면에서 소스로 가져옵니다. 일부 레이블은 텍스트 파일 (예 : 최신 팔로어)에서 가져 오는 실시간 통계입니다. 다른 레이블은 내가 만든 방의 라이브 온도와 습도를 보여주는 맞춤형 레이블입니다.

또한 장면에 '경고'를 설정하여 누군가가 돈을 따거나 기부 할 때마다 스트림 상단에 귀여운 배너가 표시됩니다. 웹 서비스 Stream Labs를 사용하여이를 브라우저 웹 페이지 소스로 가져옵니다. Stream Labs는 배너에 표시 할 최근 팔로어 라이브 텍스트 파일도 만듭니다.

생방송을 할 때 사용하는 대기 화면도 있습니다.

비밀 토큰 또는 API 키를 입력 할 때 추가로 장면이 필요합니다. 웹캠에는 나를 표시하지만 재미있는 웹 페이지로 데스크탑을 숨기므로 프라이버시에서 일할 수 있습니다.

보시다시피 스트리밍 할 때 너무 진지하게 고려하지는 않지만 시청자가 내 스트림을 최대한 활용할 수 있도록 좋은 설정을하고 싶습니다.

그러나 실제 비밀은 : TBS가 기대하는 것과 동일한 비디오 크기 비율을 유지하면서 OBS를 사용하여 화면의 아래쪽과 오른쪽 가장자리를 잘라냅니다. 그러면 하단의 이벤트 (팔로우 등)를보고 오른쪽의 채널 채팅 상자를보고 응답 할 수있는 공간이 생깁니다. Twitch를 사용하면 대화 상자를 새 창에서 '팝 아웃'하여 정말 유용합니다.

이것이 내 전체 데스크탑의 실제 모습입니다.

몇 달 전에이 작업을 시작했지만 되돌아 보지 않았습니다. 시청자가 이것이 설정이 작동하는 방식임을 인식하지 못합니다. 나는 바쁜 프로그래밍 중에 실제로 스트리밍되는 것을 볼 수는 없지만 모든 것을 볼 수 있다고 생각합니다.

왜 하나의 모니터 만 사용하는지 궁금 할 것입니다. 스트리밍하는 동안 내가하고 있던 다른 모든 것보다 두 대의 모니터를 관리하기에 너무 많았 기 때문입니다. 나는 이것을 빨리 알아 냈고 그 이후로 하나의 화면으로 붙어 있습니다.

하드웨어

나는 싼 물건을 사용하여 시작했고 스트리밍이 내가 붙어있는 무언가가 될 것이라는 것을 깨달았을 때 천천히 좋은 물건을 샀다. 노트북에 내장 된 마이크 및 카메라 인 경우에도 시작할 때 가지고있는 것을 사용하십시오.

요즘에는 마이크 충격이있는 마이크 암에 Logitech Pro C920 웹캠과 Blue Yeti 마이크를 사용하고 있습니다. 돈이 있다면 결국 돈의 가치가 있습니다. 스트림의 품질에 차이가있었습니다.

이전에 두 대의 모니터를 사용해도 효과가 없었기 때문에 대형 모니터 (27 ")를 사용합니다. 두 번째 랩톱 화면을 충분히 살펴 보지 않아서 채팅 내용이 누락되었습니다. 마일리지는 여기에서 다를 수 있지만 한 화면에 모든 것을 두는 것이 모든 일에주의를 기울이는 열쇠였습니다.

하드웨어 측면에서는 그 정도입니다. 설정이 매우 복잡하지 않습니다.

당신이 관심이 있다면, 내 책상은 독보적 인 룸 마이크를 제외하고는 꽤 평범 해 보입니다.

이 마지막 섹션에는 내가 선택한 일반적인 팁이 포함되어있어 내 스트림을 전반적으로 더 좋고 즐겁게 만들었습니다.

패널

멋진 패널을 만드는 데 시간을 보내십시오. 패널은 모든 사용자의 채널 페이지 하단에있는 작은 콘텐츠 상자입니다. 나는 그것들을 새로운 MySpace 프로파일 박스로 본다. 패널 아이디어는 채팅 규칙, 스트리밍 시간에 대한 정보, 어떤 컴퓨터 및 장비를 사용하는지, 좋아하는 고양이 품종 등이 될 수 있습니다. 개인적인 손길을 만드는 모든 것. 아이디어를 얻으려면 다른 채널 (특히 인기있는 채널)을보십시오!

내 패널 중 하나의 예 :

잡담

채팅은 정말 중요합니다. 사람들이 중간에 스트림에 참여할 때마다 같은 질문을 받게되므로 채팅 '매크로'가 도움이 될 수 있습니다. "무엇을하고 있습니까?"는 코딩하는 동안 가장 일반적인 질문입니다. Nightbot으로 만든 채팅 바로 가기 '명령'이 있습니다. ! whatamidoing과 같은 작은 단어 명령을 입력하여 미리 입력 한 내용에 대한 설명을 넣습니다.

사람들이 질문을하거나 좋은 의견을 남길 때 다시 대화하십시오! 감사합니다. Twitch 손잡이를 말하면 관심과 인정에 진심으로 감사드립니다. 스트리밍을 처음 시작할 때 최고를 유지하기는 어렵지만 더 많이할수록 멀티 태스킹이 더 쉬워집니다. 채팅에서 새 메시지를 확인하려면 몇 분마다 몇 초가 걸립니다.

프로그래밍 할 때 수행중인 작업을 설명하십시오. 많이 말해봐 농담하다. 갇혀있을 때도 "오, 멍청이,이 방법을 사용하는 방법을 잊어 버렸습니다. Google 하하하"라고 말하면 사람들은 항상 친절하며 때로는 당신과 함께 읽고 도움을 줄 것입니다. 재미 있고 매력적이며 사람들이 계속 지켜보고 있습니다.

스트리 머가 자동 입력 코드에 앉아 채팅 및 새로운 팔로어 알림을 무시하고 프로그래밍 스트림을 시청할 때 빠르게 관심을 잃습니다.

채널을 찾는 사람들의 99 %가 친절하고 호기심이 많을 가능성이 높습니다. 가끔 트롤을 얻지 만 Twitch와 Nightbot에서 제공하는 중재 도구는 실제로 이것을 막는 데 도움이됩니다.

준비 시간

설정을 최대한 자동화하십시오. 내 터미널은 iTerm이며 창 배열 및 글꼴 크기를 저장하여 나중에 다시 복원 할 수 있습니다. 스트리밍과 비 스트리밍에 대해 하나의 창 배열이 있습니다. 시간을 크게 절약 할 수 있습니다. 나는 하나의 명령을 쳤고 모든 것이 완벽한 크기이며 올바른 위치에 있으며 준비가되었습니다.

거기에는 모든 앱 창 배치를 자동화하는 다른 앱이 있으며 그 중 어느 것도 도움이 될지 살펴보십시오.

모든 사람이 볼 수 있도록 터미널 및 코드 편집기에서 글꼴 크기를 크게 만드십시오.

정격

일정에 따라 규칙을 지키십시오. 일주일에 한 번만 스트리밍하지만 항상 같은 시간에 스트리밍합니다. 평소처럼 예상 한 시간 동안 스트리밍 할 수없는 경우 사람들에게 알려주세요. 이로 인해 나는 정기적 인 청중을 얻었습니다. 어떤 사람들은 일상을 좋아하며 친구를 따라 잡는 것과 같습니다. 당신은 당신의 지역 사회와 사귀기 때문에 그렇게 대우하십시오.

더 자주 스트리밍하고 싶지만 여행으로 인해 일주일에 한 번 이상 커밋 할 수 없다는 것을 알고 있습니다. 도로에있을 때 고품질로 스트리밍하는 방법을 찾고 있거나 일상적인 일요일 스트림을 위해 캐주얼 한 채팅을하고 프로그래밍을 저장하려고합니다. 나는 아직도 이것을 알아 내려고 노력하고 있습니다!

어색함

시작할 때 이상하게 느껴질 것입니다. 코드를보고있는 사람들에 대해 긴장감을 느끼게 될 것입니다. 정상입니다! 대중 연설 경험이 있어도 처음에는 강하게 느꼈습니다. 숨길 곳이없는 것 같은 느낌이 들었습니다. "모든 사람이 내 코드가 잘못되었다고 생각하고 개발자가 나쁘다"고 생각했습니다. 이것은 내 경력 전체를 괴롭힌 생각 패턴이며 새로운 것은 아닙니다. 이를 통해 GitHub로 푸시하기 전에 코드를 리팩터링 할 수 없다는 것을 알았습니다. 이는 개발자로서의 명성에 비해 훨씬 안전합니다.

Twitch에서 라이브 코딩을 통해 프로그래밍 스타일에 대해 많은 것을 배웠습니다. 나는 확실히 "작동하게하고, 읽을 수있게하고, 빨리 만들어라"유형이라는 것을 배웠습니다. 더 이상 전날 밤에 연습을하지 않기 때문에 (처음에는 3 ~ 4 개 스트림 이후에 포기했습니다), Twitch에 꽤 거친 코드를 작성해야합니다. 생각만으로도 대화 상자를 보지 않고 큰 소리로 이야기하지 않으면 최고의 코드를 작성해도 괜찮습니다. 수천 번 사용한 메소드 서명을 잊어 버리고 거의 모든 스트림에서 '실리적인'실수를합니다. 대부분의 경우 최상의 생산성을 제공하는 환경이 아닙니다.

내 Twitch 커뮤니티는이 점을 판단하지 않으며 저를 많이 도와줍니다. 그들은 내가 멀티 태스킹을 이해하고 있으며 실용적인 조언과 제안에 정말 좋습니다. 때때로 그들은 나를 구제하고, 때로는 다른 사람들의 제안이 효과가없는 이유를 설명해야합니다. 정규 페어 프로그래밍과 같습니다!

저는이 매체에 대한 '사마귀와 모든 것'이 강점이 아니라 강점이라고 생각합니다. 보다 안정적인 관계를 제공하며 완벽한 프로그래머 나 완벽한 코드 같은 것이 없다는 것을 보여주는 것이 중요합니다. 새로운 코더에게는 새로운 경험이 될 것이며 아마도 경험이 풍부한 코더로서 겸손 할 것입니다.

결론

Twitch에서 라이브 코딩을하고 싶다면 시도해보십시오. 어디서부터 시작해야하는지 궁금하다면이 게시물이 도움이 되었기를 바랍니다.

일요일에 나와 함께하고 싶다면 Twitch에서 내 채널을 따라갈 수 있습니다. :)

마지막으로, 스트리밍 여행 초기에 Mattias Johansson의 지혜와 격려에 개인적으로 감사하고 싶습니다. 그는 매우 관대했으며 FunFunFunction YouTube 채널은 지속적인 영감의 원천입니다.

업데이트 : 많은 사람들이 내 키보드와 내 워크 스테이션의 다른 부분에 대해 묻고 있습니다. 다음은 내가 사용하는 전체 목록입니다. 관심을 가져 주셔서 감사합니다!