리액트가 올해로 벌써 출시 10주년을 맞이했다니 세월이 참 빠릅니다! 공개와 동시에 전 세계의 개발자 커뮤니티를 열광시킨 리액트는 지난 10년간 많은 변화를 거쳤습니다. 그리고 몇 달 전, 리액트 팀은 서버에서만 단독으로 실행되는 리액트 서버 컴포넌트(React Server Components)를 공개하며 또 한 번 패러다임을 전환했습니다. 저는 많은 실험을 통해 리액트 서버 컴포넌트에 대한 저의 궁금증을 해소했습니다. 그래서 이 글에서는 여러분의 이 패러다임에 대한 이해를 돕기 위해 리액트 서버 컴포넌트를 소개하려 합니다.
나는 비개발자의 일을 하고 있다. 그러나 일하면서 늘 '어느 정도의 프로그래밍은 알아야 한다'라는 생각을 한다. 그래서 다양한 시도 끝에 파이썬과 자바스크립트를 가볍게 활용하는 정도까지는 터득했다. 그리고 돌이켜보니 도움이 되는 강의와 그렇지 못한 강의에는 뚜렷한 차이가 있었다. 이번 글에서는 내 경험을 바탕으로 정리해 본 '프로그래밍 지식이 전혀 없는 비개발자를 가르칠 때 주의점'을 살펴보고자 한다. 프로그래밍 강의를 만드는 분들이나, 비개발자와 협업하는 개발자들에게 도움이 될 것이다.
개발자로 살다 보면 한 번쯤 ‘페어 프로그래밍’을 하게 된다. 페어 프로그래밍은 두 사람이 파트너가 되어 함께 의논하면서 코드를 작성하는 활동이다. 계속 대화하는 것도 쉽지 않은 일인데 말하면서 코드 작성까지 해야 하는 건 분명 체력적, 정신적으로 에너지가 많이 쓰이는 일이다. 그런데 페어 프로그래밍에 대해 검색하면 장점을 얘기하는 사람들이 정말 많다. 실제로 만나본 개발자 중에서도 페어 프로그래밍을 싫다고 하는 사람을 보지 못했다. 오히려, 어렵지만 꼭 해야 하는 일이라고 다들 말했다. 도대체 페어 프로그래밍이 무엇이길래, 그리고 어떤 장점이 있기에 좋아하는 걸까?