How to be a great programmer | John Carmack and Lex Fridman - https://www.youtube.com/watch?v=xzPuGf89vpI 당신이 다시 한 번 역대 최고의 프로그래머 중 한 명이라고 하는데 좋은 프로그래머, 아마도 좋은 현대 프로그래머를 만드는 것이 무엇이라고 생각하세요? 그래서 저는 Meta에서 TPM 조직을 대상으로 긴 강연을 했는데 제가 강조한 가장 큰 포인트는 우리가 하는 모든 것이 정말로 사용자 가치에서 나와야 한다는 것입니다. 우리가 하는 모든 좋은 일들 말이죠. 우리는 기술자들입니다. 특정한 것에만 자부심을 가져서는 안 됩니다. 코드 골프 같은 것은 재미있는 퍼즐 게임이지만, 정말로 주요한 동기가 되어서는 안 됩니다. 우리는 사람들의 문제를 해결하거나 사람들에게 즐거움을 제공하고 있습니다. 사람들의 삶에서 다른 것을 대체하는 가치 있는 일을 하고 있는 것입니다. 그래서 우리는 그들이 할 수 있는 다른 것들보다 더 나은 가치를 제공하고 싶지만, 대신 그들은 우리 제품을 사용하기로 선택합니다. 그리고 거기서, 진부하거나 뻔하게 들릴 수 있지만, 근본적으로 그것이 세상을 더 나은 곳으로 만드는 방법이라고 생각합니다. 당신과 당신의 팀이 만드는 데 들인 것보다 더 많은 가치를 사람들에게 주었다면, 그러면 세상이 더 나은 곳이 됩니다. 사람들은 더 적은 가치의 것에서 벗어나 당신의 제품을 사용하기로 선택했고, 그들의 삶이 그로 인해 더 나아졌다고 느낍니다. 그리고 당신이 그것을 경제적으로 생산했다면, 그것은 정말 좋은 일입니다. 반면에, 당신이 터무니없현금을 나무 분쇄기에 넣는 것과 같으니, 당신이 하고 있는 일에 대해 좋게 생각하지 않았으면 좋겠습니다. 그러니까 특정 아키텍처나 특정 기술이나 당신이 작성한 특정 코드 시퀀스에 대해 자랑스러워하는 것은, 작은 미소를 짓고 작은 도파민을 얻는 것은 좋습니다. 하지만 최상위 지표는 당신이 가치 있는 것들을 만들고 있다는 것이어야 합니다. 이제 어떻게 사용자 가치가 무엇인지, 그것을 실제로 어떻게 정량화할 것인지에 대한 논쟁에 빠질 수 있습니다. 그것에 대해 큰 논쟁이 있을 수 있지만, 화난 사용자가 당신이 하는 일로부터 가치를 얻지 못하고 있다고 말하기는 쉽습니다. 저기 있는 얼굴에 큰 미소를 짓고 있는 사용자는, 무언가 일어났을 때 기쁨의 순간을 느끼고 있습니다. 거기에 가치가 발생한 것입니다. 즉, 사용자 가치라는 개념이 있다는 것을 최소한 인정해야 합니다. 정확히 정량화하기 어렵더라도, 보통 상대적인 논증을 할 수 있습니다. 이것이 저것보다 낫다고 말이죠. 우리는 것들을 개선했습니다. 그러니까 사용자의 종이 되는 것이 당신의 일입니다. 개발자가 되면 다른 사람들이 가치 있다고 생각할 것을 만들고 싶어하고 기술적 성향이 있다면 올바른 레버를 찾아서 최소한의 노력으로 최대 가치를 생산할 수 있는 디자인을 만들 수 있어야 합니다. 그리고 항상 나누어야 하는 비율이 있습니다. 메타, 구글, 애플과 같은 대형 기술 회사들의마이크로소프트, 아마존, 거의 무한한 자금을 가진 회사들이죠. CFO는 무한한 돈이 아니라고 불평하겠지만 대부분의 개발자 관점에서는 정말 그렇게 느껴집니다. 그리고 개발자로서 열심히 일할 때, 항상 이런 생각이 듭니다. 만약 내게 더 많은 자원, 더 많은 사람, 더 많은 램, 더 많은 메가헤르츠가 있다면 내 제품이 더 좋아질 것이라는 생각이죠. 그리고 특정 지점에서는 확실히 사실입니다. 정말로 이것 때문에 제약을 받고 있다면 장애물을 제거하는 것이 더 나은 제품을 만들고 더 많은 가치를 창출할 것입니다. 하지만 핵심 설계 결정을 치열하게 경쟁적인 방식으로 내리지 않는다면 기능 A와 기능 B 중에서 선택해야 할 때, 그냥 둘 다 하자고 할 수는 없습니다. 왜냐하면 그러면 그것들에 대한 가치 판단을 내리지 않는 것이거든요. 그냥 둘 다 좋아 보인다고 하는 거죠. 어느 것이 더 나은지 얼마나 더 나은지를 반드시 골라내고 싶지 않아서 팀 B에게 미안하지만 A가 더 중요하기 때문에 이건 하지 않을 거라고 말하기 싫은 거죠. 하지만 당신이 하는 일, 시간, 소비하는 자원, 심지어 다른 일을 할 기회비용까지도 항상 정말 비판적으로 평가해야 한다는 개념은 매우 중요합니다. 음, 당신이 언급한 가치를 측정하는 방법에 대한 큰 논쟁에 대해 물어보겠습니다. 그것을 수치적으로 측정하는 것이 가능할까요? 아니면 조니 아이브 같은 디자누군가가 무언가를 사용하는 모습을 상상하는 방식으로, 그들의 얼굴에 미소가 지어지는 모습을 상상하고, 당신이 그 물건을 사용할 때 느끼는 사랑과 기쁨의 경험을 상상하는 것입니다. 디자인 관점에서 보면, 또는 리눅스용과 같은 더 낮은 수준의 것을 만든다면, 이를 발견하고 사용해서 행복해질 장치 개발자를 상상하게 됩니다. 그것 때문에 더 나아질 수 있도록 말이죠. 그래서 이런 것들에 대해 어떻게 생각하세요? 측정 가능한 것일까요? 메타나 구글 같은 곳들은 아마 측정하려고 할 것 같습니다. 그들은 시도할 거예요. 참여도나 뭔가를 최적화하려 하죠. 참여도를 측정하자고 말이죠. 그리고 측정할 수 없는 미래를 생각하는 디자이너 윤리학이 있다고 생각합니다. 오늘과는 다른 미래에서 누군가를 행복하게 만들려고 노력하는 것 말이죠. 그래서 저는 보통, 좋은 지표를 얻을 수 있다면 무엇이든 좋으니 데이터에 귀 기울이는 것을 선호합니다. 하지만 거기서 너무 멀리 갈 수도 있어서 문제가 있었습니다. 새로운 고급 원격 측정 시스템이 이런 것들을 보관하기 위해 수많은 파일 쓰기를 하느라 성능 저하가 생겼던 것처럼 우리 계획이 좋은지 판단하기 위한 정보를 수집해야 했기 때문입니다. 그래서 정보가 있을 때는 절대 무시해서는 안 됩니다. 실제 사용자들이 그것을 사용하는, 인간들이 그것을 사용하는, 많은 수의 인간들이 사용하고 당신이어느 정도는 그렇죠. 정말로 새로운 일을 할 때 제로 투 원 문제가 있어서 추측을 해야 하는 경우가 있습니다. 하지만 제가 메타에서 계속 말하고 있는 요점 중 하나는 이제 우리에게는 누군가가 VR에서 시도하고 싶어하는 모든 것에 대해 충분한 사용자가 있다는 것입니다. 관심을 가질 사용자들이 있다는 것입니다. 완전히 백지상태에서 청사진 같은 제안을 하며 흥미로울 것 같아서 이걸 하겠다고 말할 수는 없습니다. 모든 사람에게 도전합니다. VR에서 작업하는 사람들이 있을 것입니다. 데스크톱 대체품처럼 말이죠. 또는 다른 방식으로 사람들과 소통하거나 게임을 하는 방식으로요. 아마 수백만 명의 사람들이 있을 것입니다. 또는 우리가 지금 다루지 않는 작은 틈새 시장을 선택한다고 해도, 여전히 수천 명의 사람들이 헤드셋을 가지고 있어서 당신의 타겟 마켓이 될 것입니다. 그리고 사람들에게 말합니다. 그들에게 주의를 기울이고, 가상의 사용자를 만들어내지 마세요. 시장을 세분화하고 싶은 성향의 매트릭스에 맞는 Alice, Bob, Charlie를 만들지 마세요. 함께 일할 수 있는 실제 사용자들이 있는데 가상의 사용자를 생각하는 것은 실수입니다. 하지만 반면에 제품에 대한 전체적인 비전을 갖는 것에는 가치가 있습니다. 그리고 메타 같은 회사들은 SpaceX나 스티브 잡스 시대의 애플처럼 매우 강력한 트레이드오프를 이해합니다.아주 세밀한 수준까지 관리할 수 있고, 이런 식으로 말할 수 있는 주도적인 성격의 리더 말이에요. "아니야, 저 손잡이는 달라야 해." 또는 "저 아이콘은 색조를 바꿔야 해." 그리고 그들은 분명히 거기서 많은 가치를 얻어냅니다. 하지만 그곳에서 일한 후 끔찍한 이야기들을 들려줄 많은 직원들을 혹사시키기도 하죠. 제 입장은 리더가 자신의 아래 있는 모든 것을 이해할 수 있는 한계에 있을 때 최고의 성과를 낸다는 것입니다. 그리고 그들이 진행되는 모든 일에 대해 정보에 입각한 의견을 가질 수 있어야 합니다. 그리고 30년, 40년의 경험을 가진 사람이라면, 그들이 이제 막 신병훈련소를 나온 기여자가 갖지 못한 지혜를 가지고 있기를 바라야 합니다. 그리고 그들이 "저기가 틀렸어, 그렇게 하면 안 돼" 또는 심지어 그냥 "그렇게 하지 말고 다른 방식으로 해"라고 말한다면. 그래서 거기에는 가치가 있습니다. 하지만 일정 수준을 넘어설 수는 없죠. 제 말은, 저는 스티브 잡스가 제 바로 앞에서 기술적인 것들에 대해 틀린 말을 하는 이야기들을 가지고 있습니다. 왜냐하면 그는 그 수준에서 운영되지 않았거든요. 하지만 그것이 효과가 있고 전체 제품에 대해 생각하고 그냥 정말 깊이 신경 쓰는 그런 열정적인 리더를 얻을 때, 아무것도 틈새로 빠져나가게 하지 않는다면. 저는 그것이 많은 가치가 있다고 생각합니다. 하지만 그것의 다른 면은 사람들이 말하는 것입니다. "우리는거의 반자본주의적이거나 자유시장에 반대하는 것 같습니다 위대한 리더가 나서서 모든 부분을 지시하겠다는 것은, 자유시장이 명백히 예상치 못한 것들을 만들어내는데 말이죠 VR에서도 우리는 많은 것들을 보았습니다만 초기에 사람들이 생각했던 핵심 애플리케이션과는 전혀 다르게 나타났고 스토어에 무엇이 들어갈지 결정하는 암흑 카발에 의해 승인되지 않았을 것들이 경우에 따라서는 극도로 성공적인 결과를 보여주었습니다 네, 저는 확실히 그렇게 되고 싶었습니다. 제가 제안을 했던 시점이 있었죠 "저를 VR 독재자로 만들어 주시면 들어가서 일을 해내겠습니다"라고 말이죠 하지만 그것은 메타의 문화에 맞지 않고 그들은 트레이드오프를 이해하고 있으며, 그런 방식이 아닙니다 그들이 원하는 회사도, 팀도 아닙니다 샘.