Chapter 2 문과생, 코딩을 배우다
HTML부터 시작해서 기초를 배우던 중 갑자기 개인 프로젝트가 주어졌다. 코딩을 시작한 지 이제 한 달 정도 되었을 뿐 아직 제대로 할 수 있는 게 없다고 생각하던 시점이었다. 기초임에도 코딩 머리가 제대로 정립이 되어 있지 않아서 그런지 이해도가 떨어져서 조금은 의기소침하던 시기이기도 했다.
주변 수강생들은 바로 알아듣고 응용까지 하는 동안 개념도 겨우 이해하는 수준이었기 때문이다. 저녁 6시에 수업이 끝나고도 마음이 편치 않아 남아서 공부를 하고 귀가하곤 했다. 점심은 학원 구내식당을 주로 이용했지만 저녁까지 제공해주지는 않아 굶거나 근처 편의점에서 삼각김밥이나 샌드위치를 사다 먹었다.
프로젝트 주제를 처음 듣고 ‘왜 하필?’이라는 생각을 했다. 첫 프로젝트 주제는 지금까지 배운 내용을 활용해서 게임 만들기였다. 게임 개발 과정도 아니고 왜 굳이 게임 만드는 프로젝트를 해야 하는지 의문이었지만 강사님이 금방 부연설명을 해주었다. 1달 동안 배운 내용은 대부분 복잡한 로직이라기보다는 코딩을 하면 화면상에 바로 보이는 부분이 많았다. 배운 내용을 확실하게 자신의 것으로 만들기 위해 간단한 로직을 포함해서 화면을 제어하는 연습을 하는 프로젝트라고 했다.
무작정 시작하면 프로젝트가 산으로 가버릴 수도 있기에 먼저 기획안을 작성하는 방법에 대해 실제 프로젝트 기획안을 예시로 설명을 들었다. 기획안 작성을 마치면 강사님에게 피드백을 받은 뒤 개발을 시작할 수 있었다. 난생처음 진행하는 개발 프로젝트였지만 확실히 게임을 주제로 한 효과는 나타났다.
게임을 주제로 하고 있기에 개발을 하면서도 지루함이 거의 느껴지지 않았다. 다들 밤 10시까지 남아서 작업을 하면서도 서로의 프로젝트에 대해 토의도 하고 게임을 함께 하면서 서로 피드백을 주는 과정을 거쳤다. 어떤 학원, 기관에서 배우는지 그리고 어느 강사에게 배우는지에 따라 프로젝트 시간 활용은 확연히 차이가 난다.
수강생들에게 프로젝트를 진행하라 시키고 방치하는 학원, 강사에 대한 이야기를 전해 들었다. 프로젝트 기간 동안 장소는 제공하지만 따로 가이드를 해주지 않는 경우이다. 강사가 교육장에서 자리를 비우기도 하고 또는 자리를 지키고는 있지만 기타 다른 행정업무를 하면서 시간을 보낸다고 했다. 좋은 프로젝트 결과물을 모아서 포트폴리오로 제작해서 취업 시 활용해야 하는 수강생 입장에서는 최악의 분위기이다.
기본기를 쌓았다면 시간은 더 걸리겠지만 개발 공부는 혼자서도 가능하다. 하지만 대부분 인원이 프로젝트 경험이 한 번도 없는 상황이라면 강사는 적극적으로 수강생들의 방향을 잡아줘야 한다. 내 경우에는 쉬는 시간, 점심시간 그리고 저녁 6시 이후에도 남아 수강생의 작업을 도와주는 강사님을 만나 수월하게 프로젝트를 완료했다.
A부터 Z까지 모든 내용을 질문할 수는 없으니 구글 검색을 많이 활용했다. 어려운 기능을 사용하는 게 아니라 N사 포털 사이트로도 충분했지만 구글링에 익숙해지라는 말을 듣고 억지로라도 활용을 해봤다.
대부분 수강생이 일정에 맞게 프로젝트를 완료했고 한 명씩 앞에 나와 마이크를 들고 기획안에 대한 설명 및 시연을 했다. 공부 이해도에 따라 퀄리티는 달랐지만 프로젝트를 하면서 실력이 좋아진 게 눈에 띄었다.
당시 수준 높은 인디게임이 만들어지면 나중에 앱으로도 출시를 해보겠다고 게임 제작에 필요한 이미지나 배경을 모두 상업적 활용이 가능한 것만 찾아 사용했는데 지금 생각하면 이불 킥을 할 정도로 부끄럽다. 아쉽게도 당시 개발 소스코드가 남아 있지 않지만 기초 중의 기초로 어설프게 만든 게임이란 것 정도는 알고 있기 때문이다.
혼자 하기 벅찬 프로젝트였지만 개발에 대한 흥미가 더 커진 의미 있는 작업이었고 이후 진행된 로직이나 데이터베이스 관련 교육도 지치지 않고 공부할 수 있는 원동력이 되었다.