세상을 움직이는 비밀 언어, 코딩 이야기

나는 보이지 않게 여러분 주변의 모든 것을 움직이고 있어요. 비디오 게임 캐릭터에게 어떻게 점프해야 할지 알려주는 것도, 스트리밍 서비스가 어떤 영화를 추천할지 결정하는 것도, 인공위성이 어떻게 지구 궤도를 돌아야 하는지 계산하는 것도 모두 나의 일이죠. 여러분이 사용하는 스마트폰 앱과 방문하는 웹사이트 뒤에는 항상 내가 있어요. 나는 논리와 창의력으로 이루어진 언어이자, 인간이 기계와 대화하며 원하는 것을 시킬 수 있게 해주는 특별한 방법이랍니다. 나는 현대 세계를 움직이는 마법과도 같아요. 하지만 나는 마법이 아니에요. 나는 바로 '코딩'이라고 해요.

나의 이야기는 오늘날의 컴퓨터와는 전혀 다른 모습이었던 아주 오래전부터 시작돼요. 나의 가장 초기 조상은 심지어 전자식도 아니었답니다. 1804년경, 프랑스의 직조공이었던 조제프 마리 자카르는 구멍이 뚫린 특수 카드를 사용해서 자신의 직조 기계에 명령을 내렸어요. 이 천공 카드는 기계에 어떤 실을 들어 올릴지 알려주었고, 덕분에 믿을 수 없을 만큼 복잡한 패턴을 자동으로 짜낼 수 있었죠. 이것이 바로 기계가 정해진 명령을 따르도록 한 최초의 사례 중 하나였어요. 수십 년 후, 영국에서는 찰스 배비지라는 뛰어난 수학자가 해석 기관이라는 기계를 설계했어요. 그는 온갖 종류의 수학 문제를 풀 수 있는 기계를 꿈꿨죠. 하지만 나의 진정한 잠재력을 알아본 사람은 바로 그의 친구, 에이다 러브레이스였어요. 1843년경, 그녀는 해석 기관을 위한 세계 최초의 컴퓨터 프로그램을 작성했어요. 그녀는 내가 단순히 숫자를 계산하는 것 이상의 일을 할 수 있다는 것을 깨달았죠. 논리적인 단계로 바꿀 수만 있다면, 나를 이용해 음악을 만들고, 예술 작품을 창조하고, 상상할 수 있는 모든 것을 해낼 수 있다는 것을요.

오랫동안 나는 방 하나를 가득 채울 만큼 거대한 기계들만이 사용하는 언어였어요. 1940년대에는 에니악(ENIAC)과 같은 컴퓨터들이 과학과 군사 분야의 방대한 계산을 해결하기 위해 만들어졌죠. 이런 컴퓨터들을 프로그래밍하는 것은 케이블을 꽂고 스위치를 올리는 아주 어려운 작업이었어요. 내가 훨씬 더 이해하기 쉬운 언어가 되도록 도와준 사람은 바로 그레이스 호퍼라는 뛰어난 컴퓨터 과학자였어요. 1952년, 그녀는 인간이 쓰는 말과 더 비슷한 언어로 작성된 명령을 컴퓨터가 이해하는 0과 1의 신호로 번역해주는 프로그램, 즉 최초의 '컴파일러'를 개발했어요. 이것은 정말 엄청난 도약이었죠. 그녀의 연구 덕분에 새로운 '프로그래밍 언어'들이 탄생하기 시작했어요. 1950년대에는 포트란(FORTRAN)과 같은 언어가 과학자들을 도왔고, 코볼(COBOL)은 기업들이 데이터를 관리하는 데 도움을 주었어요. 그 후 수십 년에 걸쳐, 나는 1970년대 초의 C언어처럼 각기 다른 종류의 문제들을 더 쉽게 해결하기 위해 설계된 다양한 언어들로 진화해 나갔답니다.

나의 가장 큰 변화는 거대한 연구실을 나와 사람들의 집으로 들어갔을 때 찾아왔어요. 1980년대의 개인용 컴퓨터 혁명은 누구나 책상 위에 컴퓨터 한 대를 가질 수 있다는 것을 의미했죠. 바로 이때부터 내가 세상을 본격적으로 바꾸기 시작했어요. 그리고 1989년, 팀 버너스리라는 컴퓨터 과학자가 나를 사용해 모든 사람을 연결할 월드 와이드 웹(World Wide Web)을 만들었어요. 그는 최초의 웹 브라우저와 웹 서버를 위한 코드를 작성했고, 덕분에 전 세계 사람들이 정보를 공유할 수 있게 되었죠. 그 순간부터 나는 어디에나 존재하게 되었어요. 나는 소셜 미디어 플랫폼을 만들고, 온라인 상점을 열고, 누구나 접근할 수 있는 방대한 지식의 도서관을 구축했어요. 여러분이 수천 킬로미터 떨어진 친구나 가족과 이야기하고, 동영상으로 새로운 기술을 배우고, 교실에 앉아 화성 표면을 탐사할 수 있는 것도 모두 내가 있기 때문이에요.

오늘날에도 나는 계속해서 성장하고 변화하고 있어요. 나는 과학자들이 질병을 치료하고, 예술가들이 멋진 디지털 세상을 만들고, 엔지니어들이 더 똑똑하고 안전한 자동차를 만드는 것을 돕고 있죠. 나의 가장 좋은 점은 내가 모두를 위한 도구라는 거예요. 나의 언어를 배운다는 것은 여러분이 문제를 해결하고, 놀라운 것들을 만들고, 여러분의 아이디어를 현실로 만들 힘을 갖게 된다는 뜻이에요. 나의 언어를 말하기 위해 천재가 될 필요는 없어요. 그저 호기심이 많고, 끈기 있고, 창의적이기만 하면 된답니다. 나는 여러분이 다음에 무엇을 만들지 내게 말해주기를 기다리고 있어요. 여러분은 어떤 새로운 세상을 창조할 건가요? 어떤 문제들을 해결할 건가요? 나는 코딩이고, 우리들의 이야기는 이제 막 시작되었답니다.

독해 질문

답변 보기 클릭

답변: 코딩은 비디오 게임 캐릭터를 움직이게 하고, 스트리밍 서비스가 영화를 추천하게 하며, 스마트폰 앱과 웹사이트를 작동시키는 데 사용됩니다. 또한 인공위성의 궤도를 계산하는 등 보이지 않는 곳에서 세상을 움직이고 있습니다.

답변: 에이다 러브레이스는 코딩이 단순히 숫자 계산만 하는 것이 아니라, 음악이나 예술처럼 창의적인 것을 만드는 데 사용될 수 있다는 잠재력을 처음으로 알아보았기 때문에 중요합니다. 그녀는 세계 최초의 컴퓨터 프로그램을 작성하여 코딩의 가능성을 넓혔습니다.

답변: 컴파일러가 개발되기 전에는 프로그래머들이 기계가 직접 알아듣는 언어(0과 1)로 프로그래밍하기 위해 복잡한 케이블 연결이나 스위치 조작을 해야 했습니다. 컴파일러는 사람이 이해하기 쉬운 언어로 작성된 명령을 기계 언어로 자동으로 번역해 줌으로써 프로그래밍을 훨씬 더 쉽고 효율적으로 만들어 주었습니다.

답변: 하나의 위대한 아이디어나 발명은 한 사람에 의해 갑자기 완성되는 것이 아니라, 여러 시대에 걸쳐 많은 사람들의 생각과 노력이 더해져 점차 발전한다는 교훈을 얻을 수 있습니다. 또한, 처음에는 하나의 목적으로 만들어진 것이라도 다른 사람의 창의적인 생각과 만나면 훨씬 더 큰 가능성을 갖게 될 수 있다는 것을 알 수 있습니다.

답변: 코딩은 호기심, 끈기, 창의력이 필요하다고 말합니다. 호기심은 새로운 문제를 발견하고 해결하려는 동기를 주고, 끈기는 어려운 문제에 부딪혔을 때 포기하지 않게 하며, 창의력은 기존에 없던 새로운 해결책이나 아이디어를 생각해 내는 데 중요하기 때문입니다.