좋은 프로그래머가 되기 위한다면

nGyu·2022년 7월 14일
5

기초를 탄탄히

목록 보기
2/4

게을러진 나, 더 나은 개발자가 되기 위하여라는 글을 작성하고 다짐을 한지 6일이 지났다. 거의 1주일이 지났는데 어제 책이 왔다. 사실 중고로 구매를 해서 월요일에 도착하는것으로 되어 있었으나, 판매자의 부재로 새 책을 다시 주문하느라 시간이 조금 걸렸다.. 이럴거면 처음부터 새거 살걸
어쨋든 책이 왔다. 오늘부터 제대로 공부를 시작하도록 하겠다.

이 책을 읽기 전

필자는 여태 공부를 하면서 아무런 생각 없이 코드만 잘 짜면 되는거 아닌가? 라는 생각으로 공부했다.
하지만, 점차 공부를 하면 할 수록 기초 지식이 없다면 좋은 코드가 나오기는 어렵다는 생각이 필자의 생각에 크게 들어와 기초 지식을 쌓아야 겠다는 생각을 하게 되었다.

대표적으로 Race Condition이나 Dead Lock 같은 경우이다. OS에 관련하여 공부를 하기 전에는 이러한 부분에 대해서는 전혀, 걱정을 하고 있지 않았으나 최근 학교 선배의 멘토링 덕분에 이 부분까지 신경을 쓰며 코드를 작성하고 있다.

이 후 CS지식의 중요성을 알게 되었고, “한 권으로 읽는 컴퓨터 구조와 프로그래밍 이라는 책을 자습서로 채택 후 공부를 시작하게 되었다.

프로그래밍, 제대로 배워야하는 이유

목차를 넘기고 조금 읽다보니 프로그래밍을 제대로 잘 해야하는 이유라는 타이틀이 바로 보여 읽어보았다.
읽어보는 내내 이게 개발자구나 라는 생각에 충격을 받았고, 생각부터 고쳐야겠다고 다짐을 했다.

저자도 Stephen Wolfram의 How to Teach Computational Thinking? 이라는 블로그 글에 적혀있는 말을 잠시 인용하였다.

울프람은 컴퓨팅 사고를 “컴퓨터가 할 일을 지시하기 위해 충분히 명확하게, 충분히 시스템적으로 사물을 수식화하는 방법" 이라고 정의를 해 두었으며, 이 책을 쓰게 된 계기 중 큰 부분을 차지한다.

라고 적어 둔 구절이 있는데, 필자도 이 부분에 격하게 공감을 하고있다.

중간에 많은 내용이 있지만, 이에 관련된 내용은 직접 책을 구매하여 읽어보았으면 좋겠다.

그래도 마지막으로 이 부분에 대해 이야기를 해 주고 싶다. 이 책에서 언급한 사람들은 대부분 흥미로운 문제를 한 가지 이상 해결한 사람들 이며, 해결을 위해 어떻게 접근을 했는지 배워볼만한 가치가 있는 사람들 이라고 한다.

이 글을 읽는 사람들 중 대부분이 문제에 부딪히면 Stack OverFlow에 질문을 올리거나, github에서 패키지를 검색하거나 Google 에 검색을 하거나 일 것이다. 하지만, 개발자란 어느 누구도 해결하지 못한 문제를 푸는 방법을 배우는 것이 가장 중요한 기술이라고 생각을 한다고 적혀있다.

profile
지금보다 내일을, 모레를 준비하자

0개의 댓글