성공하는 프로그래밍 공부법
Table of Contents
'성공하는 프로그래밍 공부법'의 내용 요약
- 알고리즘을 공부할까요? 자료구조를 공부할까요?
- 파이썬을 공부할까요, 자바를 공부할까요?
- 이렇게 6개월 동안 공부하면 취직할 수 있을까요?
- 이직준비하려는 데 어떤 책을 읽으면 도움이 될까요?
'어떤 것을, 어떻게 공부해야 하는가' 는 많은 개발자들이 고민하는 사항이다. 근본적인 지식과 최신 기술 사이에서 무엇을 공부할지. 책을 봐야 알지 인터넷 강의를 봐야할지 실제로 무언가를 만들어 가면서 몸으로 익힐지. 공부의 내용과 방법에 관한 문제는 정답이 없기 때문에 더 어렵게 느껴진다.
이 책은 그 어려운 문제에 대한 정답을 주지는 않지만, 각자가 정답을 내리는 데에 도움을 준다.
-
프로그래머가 진정 즐거움을 느끼고, 재미를 느끼려면 특정 기능에 대한 전체를 개발할 때 즐거움이 최고조에 달한다는 이야기였다. - 87
-
보다 구체적이고 짧은 주기로 성취할 수 있는 목표가 필요하다. - 139
-
나는 TDD, 리팩토링, OOP를 연습하기 좋은 프로그램의 세 가지 조건이 있다고 생각한다. 첫째, 게임과 같이 요구사항이 명확한 프로그램이 적합하다... 둘째, 의존관계가 없는 프로그램으로 연습할 것을 추천한다... 셋째, 약간은 복잡한 로직이 있는 프로그램이어야 한다. - 68
-
저자는 우선, 프로그래밍을 공부하는 데 가져야할 최소한의 마음가짐에 대해 이야기한다. 프로그래밍은 재밌어야 한다, 재밌게 느낄 수 있는 사람이 프로그래밍을 계속해서 공부할 수 있다, 재미를 찾을 수 있는 각자의 공부방법을 찾아야 한다, 라고.
-
내가 정한 길이 있다면 내가 만족하는 수준까지 걸어가 보라는 것이다. 수많은 정보와 유혹 속에서 선택과 집중이 필요하다. - 53
-
“일의 전체 맥락을 늘 염두에 두고 자신의 행동이 전체에 미칠 영향을 이해한다면, 아무리 사소한 직업이라도 세상을 전보다 살 만한 곳으로 탈바꿈시키는 인상적 변화를 이끌어낼수 있다.” - 93
-
불교적 관점은 일의 기능을 최소한 셋으로 본다. 그것은 사람의 재능을 활용하고 발전시킬 기회를 주는 것, 다른 사람들과 공동 작업을 함으로써 자기 중심성을 극복하는 것, 생산 과정에 필요한 재화와 용역을 만들어내는 것이다. - 89
-
우리가 잘하고 있는 것은 무엇인가, 우리가 잘 하지 못하는 것은 무엇인가, 아직도 우리를 괴롭히는 것은 무엇인가, 회고는 되돌아보는 작업이기 때문에 위와 같은 질문을 통해 자세히 보려고 하게 된다. - 174
저자는 '직장인' 개발자로서, 다른 사람과 협업하면서 가져야 할 마음가짐에 대해서도 이야기한다.
컴퓨터로 코드를 짜는 것은 정해진 요구사항을 지키면 되기 때문에 쉽지만, 다른 사람과 커뮤니케이션 하면서 생길 수 밖에 없는 문제들을 푸는 것이 사실 훨씬 어렵다.
이 부분은 혼자만 잘해서 되는 것이 아니고, 각자의 마음가짐, 속한 조직의 문화, 같이 일하는 사람 과의 대화 방식과 분위기 등 맞물려 있는 요소들이 많다. 결국 커뮤니케이션 능력을 늘리기 위해서는 개인의 성찰과 여러 상황을 마주하는 경험 뿐이지 않을까.
- 동작하는 소프트웨어뿐만 아니라, 정교하고 솜씨 있게 만들어진 작품을, 변화에 대응하는 것뿐만 아니라, 계속해서 가치를 더하는 것을, 개별적으로 협력하는 것뿐만 아니라, 프로페셔널 커뮤니티를 조성하는 것을, 고객과 협업하는 것뿐만 아니라, 생산적인 동반자 관계를, - 192
저자는 프로그램을 하나의 '작품'으로 대하는 장인정신을 가져야 한다고도 말한다.
- 결국 ‘무엇을 공부할 것인가?’, ‘무엇이 공부하고 싶은가?”라는 것보다 ‘무엇이 하고 싶은가?’, ‘내가 멋있다고 생각하는 일은 무엇인가?’를 먼저 생각하고 그것을 실천하는 과정에서 필요한 것을 공부해서 채워가는 것이 진짜 공부가 아닐까 생각해 봅니다. - 230
이 책을 통해 '초심으로 돌아가 프로그래밍을 즐기자, 작은 무언가를 만들며 성취감을 느끼자, 다른 사람과 협업할때 배려하는 마음을 가지자' 이 세 가지 교훈을 얻을 수 있었다. 저자가 프로그래밍을 먼저 공부하면서 느꼈던 바를 이야기하는 선배의 이야기를 듣는 기분으로 이 책을 즐겁게 읽었다.