고등학교(High School) 시절, 그리고 앱 인벤터 (2015~2017)

프로그래밍에 본격적으로 관심을 갖기 시작하며, 저의 미래를 고민하던 시기였습니다.

[관련 블로그 글 보기]

저의 소중한 은사님

  • 1-4 오준근 선생님
  • 2-6 김보두 선생님
  • 3-7 나상현 선생님

고등학교 시절은 어떻게 보면 지금의 삶에 가장 영향을 많이 끼쳤던 시기라고 볼 수 있겠네요. 제가 소프트웨어공학과를 희망하고, 관련 도구들을 접하면서 이곳이 내가 앞으로 수십 년 머물 분야일지 깊이 고민했던 것 같습니다. 특히 제가 고등학교 생활을 편안히 할 수 있도록 도와주신 담임선생님과, 늘 맛있는 급식을 준비해주신 조리원분들이 생각나네요. 늘 감사합니다.

[스크래치의 한계… 그리고 앱 인벤터와의 첫 만남]

고등학교 1학년, 남들은 국영수에 집중하고 전혀 관심 없어 했던 한 교과목이 있었습니다. “정보” 과목입니다. 전공자 입장에서 이 과목을 돌이켜보면, 생활 컴퓨터 내용 (ppt, excel 등)이 좀 들어가 있고, 아주 기초적인 컴퓨터공학 내용을 일부 다뤘던 것으로 기억합니다. 하지만 굳이 여기서 언급하는 결정적 이유는, 이 과목 교과서 한켠에서 ‘스크래치’를 소개해줬기 때문입니다. 제가 중3 때 다뤘던 그것이요.

하지만 저는 스크래치의 한계를 알고 있었습니다. 저는 웹에 종속된 스크래치 앱보다도, 직접 어딘가에 설치해서 실행할 수 있는 프로그램을 만들고 싶어했습니다.

이것저것 조사해보던 저는 새로운 것을 발견했는데, 그것은 당시 IT계의 주류였던 안드로이드 앱 개발을 손쉽게 할 수 있도록 도와주는 “앱 인벤터”였습니다. 지금 찾아보니 발표일이 2010년이고 제가 2015년 10월에 이걸 알았으니 출시된 지 5년 지난 서비스였지만, 그 당시만 해도 그렇게 막 대중적이진 않았던 것 같습니다. 나름 앱 인벤터의 역사를 보며 살아온 셈이네요.

위 제 계정 목록을 보시면 아시겠지만, 빛을 보지 못하고 계획으로만 남은 게임들도 제법 있습니다. 벽돌깨기 게임도 있고요, 소코반(상자 밀기 게임)에서 아이디어를 벤치마킹한 게임도 있었습니다. 그러나 구현 실력이 없어서 한두 단계만 시범적으로 구현하고 완성하지는 못했습니다.

핑퐁 게임

관련 블로그 글 보기

2015년 12월 제작된 저의 앱 인벤터 첫 작품인 1인용 핑퐁 게임, 일명 싱글 핑퐁입니다. 당시 앱 인벤터는 멀티 터치를 제대로 지원하지 않아서 1인용 게임밖에 만들 수 없었고, 그래서 생각한 방법입니다. 점수는 시간으로 측정하되, 아래쪽 빨강 막대를 좌우로 드래그하면 위쪽 초록 막대가 반대 방향으로 움직이게끔 하여 혼자서도 핑퐁 게임을 즐길 수 있게 하였습니다.

해당 앱의 블럭 지도를 궁금해하는 분이 있었어서 공개한 바 있습니다.

1초 게임

관련 블로그 글 보기

2016년 1월 제작된 저의 두 번째 작품인 1초 게임입니다. 이후 스크래치 버전과 안드로이드 스튜디오 버전으로 이식된 나름 역사가 깊은 게임입니다. (안드로이드 버전은 현재 스토어에서 내린 상태.. 궁금하시면 문의… 별로 궁금하지 않으실 겁니다) 게임의 구조는 매우매우 단순한데요, 제한 시간 30초 동안 정확히 시간이 x초 00에 도달했을 때 버튼을 누르면 됩니다. 100점에서 시작하고 어긋난 100분의 1초당 1점씩 깎이는 구조입니다. (예: 29.05초에 눌렀으면 5점 감점) 0점 이상 남기기 생각보다 쉽지 않습니다.

절대음감 게임

관련 블로그 글 보기

2016년 5월 제작된 저의 세 번째 작품인 절대음감 게임입니다. (당시 플레이 스토어에 절대음감 게임이 있었는데, 난이도가 저한테는 너무 쉬워서 그 게임에서 전 세계 1등(…)을 했습니다. 난이도 천장이 명확해서 얼마나 오래 시간을 쓰느냐 개념이었는데…)

앱을 열면 즉시 게임이 시작되며, 피아노 반주가 나옵니다. 1단계는 두 개의 음을 들려줍니다. 다 들으면 건반이 활성화되며, 해당하는 음 버튼을 누르면 됩니다. 음은 텍스트 형식으로 화면에 표시됩니다. 저는 암기 기준으로는 4단계(한 번에 5개 재생), 종이에 쓰는 트릭을 활용하면 7단계(한 번에 15개 재생)까지 도달했습니다.(단계별 난이도 설명은 위 블로그 글에 있습니다) 그러나… 의미 없습니다. ㅋㅋㅋㅋ;;

Space Travel

관련 블로그 글 보기

2017년 1월 제작된 저의 네 번째이자 마지막 작품인 우주 여행(Space Travel) 게임입니다. 시기가 시기인 만큼(고3…) 여기가 한계였습니다. 그래도 나름 새로운 기능을 추가하려고 애썼습니다. 기본적으로는 우주선이 우주 여행을 하면서 날아오는 블럭을 피하는 게임이며, 방어막 아이템을 추가하여 충돌 시에도 계속 진행할 수 있게 하였습니다. 방어막과 충돌시 Crash, 최종 충돌시 Booooom! 전혀 잔인하지 않은 연출을 넣었습니다.

여담으로 이 게임은 제 앱 인벤터 역사에서 가장 성공한 게임이 되었는데요, 이 게임을 본 저의 한 블로그 이웃님이 무려 이 게임을 벤치마킹(!)하여 플레이 스토어에 출시해서 저보다 더 큰 성공(100+ 다운로드!)을 거뒀기 때문입니다. 원작은 이제 스토어에서 내렸기 때문에, 이걸 대신 공유드립니다.

가랏 오월이

저보다 어리신 것 같던데, 열심히 공부해서 꼭 멋진 개발자가 되세요!

또한 대학교 들어가서 이 게임을 만드는 방법을 영상과 사진으로 찍어 블로그로 올리기도 했습니다. 전역 후 블로그 개편 전까지 제 블로그 유입 1위!



[Android 앱 개발의 꿈]

이렇게 여러 개의 앱 인벤터 기반 안드로이드 앱을 만들다 보니, 저는 점점 ‘진짜’ 안드로이드 앱을 만들어보고 싶었고, 그것이 바로 프로그래밍이라는 것을 깨달았습니다. 이것만이 이유는 아니겠지만, 중학교 말까지 갖고 있던 요리사의 꿈보다는, 그거는 취미로 놔두고, 조금 더 전망이 밝아보이는 직업이 개발자였던 것 같기도 합니다. 그때 IT 지식 중 AI의 가능성을 깨닫고 있었다면 엔비디아 사두는 건데 ㅋㅋㅋㅋ

그래서 그해 입시에서 전남대 소프트웨어공학과에 소신 지원하게 되었고, (6개 지망 칸 중 이거 하나만 썼습니다) 1차 추가합격되었습니다. 저의 최종 내신이 2.96이었는데 그해 평균이 2.84등급이였습니다. 2015년 기준 입시가 3.2등급이었는데 2020년에는 2.4까지 급상승했으니 어찌 보면 시기를 잘 타고난 것 같기도 합니다… 물론 이것도 God’s Plan이겠지요.


그렇게 저는 대학에 들어갔고, 대학교 1학년 때 안드로이드 개발의 선제조건인 Java 언어 공부를 틈틈이 하면서 보냈고, 군 전역 후 본격적으로 시작하게 됩니다.


[P.S. 내 인생 첫 코딩 (Visual Basic?)]

한동안 잊고 있었는데, 고1(2015년) 때 Visual Basic 언어로 이런 것도 만들었더라고요. 미니 메모장. 나름 텍스트 저장, 글꼴 크기 조정 같은 기능도 갖추고 있었습니다. 아마도 튜토리얼을 참고했거나 어디선가 코드를 긁어온 것 같습니다.

comments powered by Disqus