프로그래밍을 공부해야하는 분들을 위한 ‘나의 첫 프로그래밍’ 가이드 글 1탄입니다.
1탄에서는 아래 세가지 항목으로 글을 작성해보았습니다. 2탄에서는 인터넷 강의 추천 리스트가 정리되어있습니다.
1. ‘나의 첫 프로그래밍’ 가이드 글을 쓰게 된 배경
제가 이 글을 쓰게 된 이유는 주변에 다양한 직업군에 계신 분들께서 개발 공부 자체에 관심이 많으셨고 + 어떻게 공부하면 좋을지 알려달라고 하신 분들이 많았기 때문입니다.
저는 문과 출신으로 대학교 2학년 겨울방학부터 프로그래밍을 독학해서 시작해서 IT 회사에 입사해서 AI 개발자 4년차로 일하고 있습니다. 아무것도 모르던 상태에서 많은 독학 시간과 개발 업무에서 부딪혀가면서 배웠던 경험이 있기 때문에 전공이 아니더라도 관심만 있으시다면 원하시는 분야의 개발을 잘하게 되실 수 있다고 응원드리고 싶습니다 🙂
요즘 시대처럼 모든 정보가 오픈된 시대에는 ‘배운 적이 없는데 어떻게 하면 개발을 배울 수 있을까요?’ 라는 질문은 ‘어떻게 하면 한 번도 여행을 가본 적이 없는 슬로바키아의 유명 관광지를 가볼 수 있을까요?’ 라는 질문과 비슷하다고 볼 수 있습니다.
보통 여행가기 전 많은 분들이 검색창에 ‘OOO 맛집’, ‘OOO 여행 일정’를 치시면 금방 많은 정보를 아실 수 있게되는데요, 프로그래밍도 마찬가지입니다. 검색창에 물어보면 무수히 많은 개발 공부를 하는 사람들이 내가 궁금한 코딩에 대한 똑같은 질문을 이미 올려놨고 그에 대한 답을 몇 십개씩 달아놓은 것을 확인할 수 있습니다. 그렇기 때문에 ‘내가 전혀 개발을 해본 적이 없어서 모르겠다’에 대해서는 전혀 걱정하실 필요가 없이 검색부터 시작하신다면 개발과 관련된 풍부한 정보를 금방 얻으실 수 있습니다.
2. 초보자가 개발을 공부하고 싶은 이유들에 대한 정리 (Feat. 주변에 계신 많은 분들)
제가 다양한 장소에서 만난 다양한 분들께 들은 개발을 공부하고 싶은 이유는 다음과 같았습니다. 그 이유를 들을 때마다 개발 초보자 공부 가이드를 꼭꼭 시간을 내어 정리해야겠다는 동기부여가 많이 되었습니다.
1) 개발이 적성에 맞다면 개발자로 일해보고 싶다
2) 원래 하던 업무에서 단순 반복적인 일이 많아서 개발을 배워서 단순화 시켜보고 싶다
3) AI 시대에 개발을 해야할 것 같다
4) 현업 업무에 데이터 분석 스킬을 적용해보고 싶다
예를 들어 2)은 제 주변 지인의 코딩을 공부하고 싶은 이유였는데요, 그 분이 어느 홈페이지에 들어가서 1pg부터 100pg까지 글 하나하나를 다 눌러보면서 그 글에 있던 특정 정보를 긁어서 엑셀에 복사 붙여넣기를 했다고 합니다. 참 쉽지 않은 일입니다. 그런데 크롤링이라고 하는 (크롤링이란 웹페이지의 html 태그를 기준으로 특정 정보를 기계적으로 한꺼번에 긁어올 수 있도록 하는 개발 영역입니다.) 것을 할 수 있다면 한꺼번에 긁어올 수 있습니다.
예전에 어떤 프로젝트에서 상품페이지별로 이미지 썸네일 링크를 몇 십페이지를 긁어왔어야 했어서 그 때 처음 크롤링을 본격적으로 적용해봤는데요 보통 Python의 라이브러리 중에 크롤링에 특화된 유명한 것이 Beautiful Soup과 Scrapy 사용하면 쉽게 적용할 수 있습니다. 구글이나 네이버, 유투브에 “크롤링 튜토리얼”, “크롤링 강의” 이렇게만 치셔도 많은 정보가 친절하게 오픈되어 있습니다.
3. How to Start ?
그런데 개발을 아예 해보지 못한 분들은 개발 공부를 하기가 어려울까요? 아닙니다 ^^ 가능하십니다!!! 개발 공부를 바로 Start 하실 수 있고, 잘 하실 수 있다고 말씀드리고 싶습니다. 대신 개발 공부를 하면서 가지면 좋을 방향성을 크게 2가지로 정리하면 다음과 같습니다.
1) 꾸준히 한다
개발을 처음 시작할 때, 꾸준히 하기 가장 좋은 방법은 인터넷 강의 또는 스터디 같습니다. 운동과 마찬가지로 아무리 좋은 것도 꾸준히 하기가 어려운데요 예전에 몽골어, 마케도니아어를 비롯한 각종 중국어, 프랑스어, 아랍어 등등 다양한 외국어를 구사하는 분을 봤는데 그 분이 하시는 말이 있었습니다. 본인은 할아버지 생일 잔치에 가더라도 10분은 현재 공부하는 외국어를 공부한다고 했습니다. 즉 매일 10분 외국어라는 자신과의 약속을 반드시 지킨다고 하네요. 그 당시에는 몽골어를 공부하기 시작해서 이번에 할아버지 생일 잔치 가면 몽골어를 10분 할 예정이라고 말하는 모습이 참 인상 깊었습니다.
매일 아침에 10분 인강 듣기 또는 매주 토요일 10-12시는 개발 공부하기 또는 매주 개발 스터디에 참여하기처럼 일정한 시간에 하는 것을 추천드립니다. 저같은 경우에 자격증을 따야하거나, 스터디를 하는 경우 아무리 바빠도 시간을 내게되어서 그런 강제성이 좋긴했었는데요 자신의 페이스에 맞게 하루 1분 이어도 꾸준히해보면 분명 어느순간 익숙해지실 겁니다!! 습관처럼 코딩하는 것이 중요한 것 같습니다.
2) 프로젝트성으로 재밌을 것 같은 것 개발해보기
아예 개발을 공부해보지 못했는데, 프로젝트성으로 재밌을 것 같은 것을 개발해보라는 것이 당황스러우실 수도 있는데요, 자전거를 잘 타는 것이 자전거를 타는 이론을 많이 알아서가 아니라 그냥 타보다보니 넘어져가면서 타게되는 것처럼 프로그래밍도 이론과 문법을 먼저 배우는 것보다는 개발해보고 싶은 영역을 정해서 우선 다른 사람들이 정리한 튜토리얼대로 따라해보면 흥미가 생기기 때문에 에러를 중간에 만나더라도 해결하고 싶어지고 꾸준히 공부할 수 있는 힘의 동력이 됩니다. 경험상 오히려 그렇게 실전에서 배우면, 이론을 왜 배우는지 피부로 체감하기 때문에 공부에 동기부여가 잘 되었던 것 같습니다.
예를 들어, ios 앱 개발에 관심이 있으신 분들은 검색창에 ios 앱 개발 튜토리얼 이라고 치시면 쉽게 따라해보실 수 있습니다.
저는 언제나 다양한 분들의 다양한 개발 공부 니즈를 들을 때마다 하실 수 있다고 말해왔는데 그 다음에 이어지는 질문은 어떻게 하는가? 였던 것 같습니다.
개발 업무를 하다보면 전혀 해보지 못한 개발, 보기만해도 머리가 띵해지는 개발을 해야하는 때도 있지만 이렇게 친절한 인터넷의 도움을 받다보면 기적적으로 해결이 되는 경우가 많았습니다. 초보자 개발자분도 마찬가지로 가능하십니다~!!
이 글이 개발 공부를 시작하시는데에 조금이나마 영감을 줄 수 있으면 좋겠습니다. 감사합니다!!