전산학부 수업을 듣다 알게 된 특정 개념은 일상생활에 적용해 생각해보기도 합니다. 공부하는데 그다지 도움이 되는 것은 아니지만 흥미로운 경우가 있습니다.
 예시를 들어보자면 시스템 분야에는 스케줄링(Scheduling)이라는 개념이 있습니다. CPU가 어떤 순서로 여러 가지 작업들에 자원을 투자할지 계획하는 기법이라고 생각하시면 됩니다. 이 방법에도 상당히 다양한 접근 방식이 있습니다. 단순히 작업이 발생한 순서대로 처리할지, 작업 처리 시간이 짧은 순서대로 처리할지, 모든 작업에 돌아가면서 공평하게 자원을 제공할지 등 다양한 방법이 있습니다. 이런 방식들은 과제가 밀려드는 시기에 적절히 활용하면 도움이 되기도 합니다. 합리적인 방식의 스케줄링을 통해 효율적으로 과제들을 제때 마무리할 수 있겠죠.
 요즘 주목하고 있는 개념은 바로 타입(Type)이었습니다. 코드의 안전한 실행을 위해서 데이터의 타입을 정확히 맞추어야 합니다. 정수(Integer)끼리 더하는 연산을 하려고 했는데, 뜬금없이 문자(Character)가 오면 저희가 기대하던 더하기가 안될테니까요. C같이 타입을 신경 써야 하는 언어를 사용하다가 비교적 타입 활용이 자유로운 Python을 사용하면 괜히 불안해질 정도입니다.
 공교롭게도 최근 스스로 불안했던 적이 있었습니다. 학내 학업 성취도에서도 부족함이 느껴지고, 비슷한 나이의 사람들이 경험하고 생각하는 것에 비해 뒤처지는 것 같다는 고민에 휩싸여 있었습니다. 그럴 때마다 다른 사람, 혹은 정도(正道)와 비교하며 제게 어떤 문제가 있었기에 이런 차이가 나는 건지 기억을 뜯어가면서 원인을 찾아 헤맸습니다.
 그러던 중 다시 생각해보니 제 모습은 어떤 타입에 정확히 맞추기 위해 스스로를 디버깅(Debugging)하고 있는 꼴이었습니다. 원인을 찾으려 거슬러 올라가고 어떻게 고쳐야 할지 고민하는 것이 말이죠. 20대 초반 남자라는 타입, KAIST 학생이라는 타입 등에 들어맞지 않는다, 혹은 부족하다고 생각되는 저를 억지로라도 끼워 맞추려 애를 쓰고 있었습니다. 이를 깨닫고 나니 오히려 마음이 편해졌습니다.
 인간은 컴퓨터가 아니라는 점, 굳이 스스로를 이런저런 타입에 옭아매지 않아도 된다는 점을 아이러니하게도 컴퓨터를 들여다보며 알게 되었습니다. 모두 각자를 어느 타입에 맞추려 하며 힘들어하지 말고, 자신만의 타입으로서 살아갈 수 있다면 좋겠습니다.
 

저작권자 © 카이스트신문 무단전재 및 재배포 금지