B2B 강의를 하다보면 4주, 12주와 같이 길게 진행하는 강의도 있지만, 기초 문법만 다루는 경우가 있다.
지금 진행하고 있는 모기업 B2B 강의도 3일짜리 파이썬 기초 문법을 매주하고 있다.
부트 캠프나 온라인 강의는 대부분 목표가 명확히 있지만 이런 강의는 목표가 “프로그래밍 입문”인 경우가 많다.
만약 당신이 개발자라면, 3일동안 “프로그래밍 입문”을 가르친다면 무엇을 가르치겠는가.
내 경우엔, 내장 함수를 활용하는 것이나 외부 라이브러리를 사용해서 어려운 로직 없이 그럴듯한 프로그램을 만드는 것보다 로직을 표현하기 위한 연습을 많이 다루고 있다.
그래서 실제로 문법은 변수와 제어문, 함수까지만 진행하고 그 이후로는 전부 실습이다.
만약 다른 곳에서 “파이썬 기초”라는 주제로 강의를 듣게 되도 비슷할 것이라고 생각한다. 경우에 따라서 turtle 라이브러리를 써서 좀 더 흥미를 갖게 될 수도 있지만 결국 이 모든 과정이 머리 속 로직을 코드로 표현하는 연습이라고 생각한다.
이런 강의를 통해 프로그래밍을 입문하는 사람들은 (경험상) 대부분 개발자가 되려는 것은 아니다. 개발자가 되기위한 시작일 수도 있겠지만, 대부분 자기계발에 가깝다.
강의를 듣고 흥미가 생겨, 조금 더 공부하고 싶은 사람들은 어떻게 공부를 이어나가면 될까.
영어에 빗대어 생각해보자. 우리는 이제 영어회화 초급1을 수료했다.
완전 내 적성이다. 영어 선생님이 되어야겠다.
조금 더 정석(?)으로 배워야 할 필요가 있을 것 같다. 영어회화 초급2, 중급, 고급, 문법에 이어 나아가서 영문학을 공부할 수도 있고 유학을 갈 수도 있다.
이 경우엔 개발자가 될 생각이라고 볼 수 있다. 대학교를 다시 들어가 컴퓨터를 전공할 수도 있고, 부트캠프에 들어가 6개월 이상 기간동안 찐-한 학습을 할 수도 있겠다. 온라인 강의로 정말 타이트하게 관리할 수도 있지만 개인적으로는 부트캠프에 들어가는 것이 가장 좋아보이고, 부트캠프에 들어가기 위해 온라인 강의를 듣는 정도가 좋겠다. (인프런에 좋은 강의가 많다.)
여행 다닐정도면 충분하다.
여행에 필요한 회화를 중점적으로 배우게 된다. 그리고 영어를 완벽하게 구사하지 않더라도 맥락과 단어 조합만으로도 어찌어찌 의사소통을 할 수 있다.
이 경우엔 프로그래밍 언어를 특정 환경에서 조금씩 활용해보고 싶다고 볼 수 있다. 이럴 때 권장하는 강의는 업무 자동화나 웹 크롤링과 관련된 책이나 강의이다. 이 강의나 책은 흥미를 가질법한 분야면서, 프로그래밍 자체가 어렵진 않기 때문에 기초 문법을 아는 상황에서 접근하기 좋다. 실제로 내가 업무 자동화를 강의할 때도 3일 정도 프로그래밍 기초 강의를 하고 바로 업무 자동화와 관련된 라이브러리로 강의를 진행한다.
영어도 기본 문법이나 어떤 정해진 커리큘럼대로 학습하지 않고, 여행 다니면서 영어를 자주 쓰기만 해도 느는 것 처럼 프로그래밍도 마찬가지다. 결국 언어이기 때문에 많이 사용하면 늘 수 밖에 없다.
영어권 친구를 사귀고 싶다.
여행에서 그치지 않고, 친구를 사귀고 싶다. 어려운 표현을 알 필요는 없지만 그래도 일상 대화는 나눌 정도가 되고 싶다.
이 경우엔 앞서 얘기한 내용보다는 조금 더 언어를 잘 써야 한다는 의미이다. 이럴 때는 나만의 웹 사이트를 만들어 보는 것이 좋겠다. 파이썬 웹 프로그래밍으로 Flask나 Django를 활용한 입문 강의들이 많이 있다. 웹 사이트를 만들기 위해서는 사실 꽤 많은 내용을 이해해야 하는데, 다행히 프레임워크의 튜토리얼대로 진행한다면 어렵지 않게 그럴듯한 웹 사이트를 만들 수 있다. 이 역시도 마찬가지로 인프런에 강의가 많고, Udemy나 노마드 코더 등 여러 강의 플랫폼에서 제공하고 있다.
개발자라는 직종이 인기를 얻으면서 개발과 관련된 강의가 많이 생기고 있지만, 의외로 입문 강의도 최종 목표가 개발자인 경우가 많다. “논리적 사고”를 위해 프로그래밍을 배우는 초등교육 처럼, 꼭 개발자가 되기 위한 프로그래밍이 아니라 다양한 목표를 가진 강의도 많이 있으니, 기초 문법을 마쳤다면 자신의 목표를 설정하고 조금씩 나아가보는 것도 좋지 않을까.