동시성과 멀티스레딩에 익숙하지 않은 개발자에게는 동시성이 그리 달갑지 않은 주제다. 그리고 그런 개발자는 무난한 코드를 가장 끔찍한 방식으로 동작하게 만든다. 경합 조건 등의 문제는 실제 제품에서든 데모에서든 항상 심각한 충돌을 유발한다. '스레드는 해롭다'고 잘라 말하면서 동시성을 아예 멀리하는 개발자도 있다. 동시성을 받아들여서 두려움 없이 사용하는 소수의 개발자도 있지만, 대부분의 개발자는 동시성 때문에 고통을 받은 경험이 있고 그런 경험은 쓴맛을 남겼다.
하지만 요즘은 동시성이 필요한 애플리케이션이 빠르게 늘고 있다. 사용자는 완벽하게 반응하는 인터페이스를 기대하며 서버 애플리케이션은 유례 없는 수준으로 규모를 변경할 수 있어야 한다. 동시성은 이 두 가지 문제를 모두 해결한다.
다행히 요즘은 동시성을 훨씬 쉽게 만들어 주는 라이브러리가 많다. 병렬 처리와 비동기 프로그래밍은 이제 마법의 영역이 아니다. 이런 라이브러리는 추상화 수준을 높여서 반응이 빠르고 규모 변경이 쉬운 애플리케이션의 개발을 실현할 수 있는 목표로 만들어 준다. 동시성이 지극히 어려웠던 과거에 쓴맛을 본 경험이 있다면 최신 도구로 다시 시도해 보기 바란다. 물론 동시성이 쉽다고 말할 수는 없지만 예전처럼 어렵지 않다고 확신한다.