시작만 100번 째, 다시 시작하는 프로그래밍

By | 2015년 9월 7일

날씨가 많이 선선해졌어요! 9월입니다. 미뤄 놓았던 일을 다시 찾아 해 볼만한 생각이 스멀스멀 밀려오는 달이죠. 🙂 ‘올해가 가기 전에 프로그래밍 꼭 배워야지!’하고 목표를 세우고, 주변이나 커뮤니티에서 조언을 구하거나 스터디를 시작하는 분들이 많이 계실 듯 합니다. 그런데 혹시… 그 다짐이 처음이 아닌 분 계신가요..?

시무룩(그게 바로 접니다.)

프로그래밍에 살~짝 발을 담가 본 분은 아시겠지만, “Hello world!”라는 경쾌한 첫 인사 뒤에는 생각보다 만만치 않은 세계가 펼쳐집니다. 특히 프로그래밍은 단순히 한 언어의 문법적 특성을 익힌다고 끝나는 게 아니죠. 프로그램을 지탱하는 이런저런 기반 기술도 들여다보게 되고, 저마다의 시행착오를 거치며 조금씩 성장하게 되는데요. 그 여정에서 어려움을 느껴 포기하고 싶은 순간이 오기도 하고, 지쳐서 잠시 쉬어 가고 싶은 마음이 생기곤 합니다.

그럴 때 프로그램을 만드는 과정 중 내가 어떤 단계에서 어느 부분을 배우고 있는지 확인도 하고, 더 알아야 할 것은 무엇인지 집약해 알려 주는 ‘프로그래밍 투어 가이드’가 있다면 어떨까요? 가이드에게 ‘내가 이걸 미리 알았더라면!’하고 무릎 칠만한 꿀팁도 듣고 말이지요!

(↓ 고통 끝에 만세를 외치는 우리의 초보 개발자ㅠㅠ)

다시시작하는프로그래밍_표지
『다시 시작하는 프로그래밍 : 자바스크립트로 배우는 웹 프로그래밍 A to Z』(스티븐 푸트 지음, 강덕진 옮김)

이 책은 프로그래밍을 배우는 데 어려움을 겪는 초보자를 대상으로 하고 있습니다. 상대적으로 쉽게 배울 수 있는 자바스크립트와 크롬 브라우저를 통해서 직접 프로그래밍을 실행해 볼 수 있게 안내합니다. 또한 우리가 자주 사용하는 웹 사이트 중 하나인 페이스북 페이지를 직접 수정하는 예제로 한층 재미를 더했습니다. 이 중에서 제가 특히 좋아하는 부분은 기반 지식을 자세히 설명해서 실전을 위한 올바른 기틀을 마련해 주는 점입니다.
예를 들어 깃(Git)과 같은 버전 관리 툴은 일반 입문 서적들은 소개하지 않는 경우가 많지만, 이 책에서는 상당히 자세히 다루고 있습니다. 사실 버전 관리 없이 개발하는 것이 얼마나 잘못된 것인지 많은 입문자들이 쓰디쓴 경험을 통해서 깨닫는 경우가 많습니다. 그래서 이 책은 힘들더라도 그 지식들을 미리 학습할 수 있도록 하여, 프로그래밍이라는 옷을 입기 위한 첫 단추를 잘 끼울 수 있도록 해줍니다.
– 옮긴이 서문 중

이 책은 저자의 삽질 체험을 바탕으로 쓰였습니다. 프로그래밍의 ‘프’도 모르는 상태로 개발 업무를 맡게 돼, 첫 코딩을 ‘MS Word’에서 했던 저자가 고군분투하며 프로그래밍을 익혀나갔던 경험이 담긴 책이에요. 무수한 시행착오를 거치고 난관을 이겨낸 끝에 ‘프로그래머’로 성장한 저자는 ‘프로그래밍 언어뿐만 아니라 기반 지식도 함께 배우면서 프로그래밍의 틀을 잡는 게 중요하다’고 말합니다. 그리고 그 관점이 이 책에 잘 녹아 있습니다.

지금까지 변수, 순환문 등등 프로그래밍 언어 문법을 중심으로 배우던 분이라면, 이 책의 학습 방법이 다소 낯설게 느껴질 수도 있습니다. 보통 프로그래밍 입문서라고 하면 떠오르는 구성과는 다른 방식으로 전개되기 때문이에요. 특정 언어를 중심으로 그 언어를 사용하는 방법, 즉 ‘코드를 작성하는 법’을 알려주는 게 일반적인 접근이라면 이 책에서는 ‘프로그램을 만드는 법’에 초점을 두고 진행합니다.

먼저 개발 환경을 구축하고, 일단 실행이 되기는 하지만 뭔가 턱없이 모자란, 첫 번째 프로그램을 만든 뒤 본격적인 ‘프로그래밍 수업’을 시작합니다. 프로그램이 동작하는 데 필요한 기반 기술을 설명하면서 조금씩 더 나은 코드로 수정해 나가고, 좀더 ‘개발자스러운’ 효율적인 작업 방식까지 알려줍니다. 자바스크립트를 도구 삼아 웹 프로그래밍의 전반적인 과정을 맛볼 수 있게 해주는 책입니다.

“프로그래밍, 코딩. 그게 그거 아니야?”

프로그래밍과 코딩은 미묘하지만 큰 차이가 있다. 코딩은 프로그래밍이라는 큰 과정의 한 부분이다. 왜냐하면 프로그래밍은 올바른 개발 환경을 구축하고, 코드를 올바르게 관리하고 문제가 없는지 테스트하는 과정, 문제가 발생하면 디버깅을 하는 과정, 다른 사람이 작성한 코드나 프레임워크를 사용하는 일, 코드를 배포 가능한 상태로 구성해서 사용자에게 배포하는 과정 등을 모두 포함하는 말이기 때문이다.
– 본문 중

여러 번 ‘배워야지’ 마음 먹었지만 비슷한 방식으로 입문 과정을 반복하면서 지친 분이라면, 이 책을 통해 다시 한걸음 나아갈 수 있는 힘을 얻어 보세요! 만만하지 않은 과정을 ‘쉽고’ ‘빠르게’ 넘어갈 수 있는 비법을 알려 주기보다는, ‘프로그래밍’을 제대로 마주하면서 스스로 뭔가 만들어 볼 수 있는 단계로 이끌어 줄 것입니다.

다시 시작하세요, 프로그래밍! 🙂

  • 다음 인터넷 서점에서 구입하실 수 있습니다.

[YES24] [교보문고] [알라딘] [인터파크]

댓글 남기기