순간을 기록으로

[코드스테이츠] 백엔드 부트캠프 1일차 TIL 본문

코드스테이츠 백엔드 부트캠프

[코드스테이츠] 백엔드 부트캠프 1일차 TIL

luminous13 2022. 4. 25. 21:08

어떻게 학습할 것인가?

부트캠프에 본격적으로 들어가기에 앞 서 학습하는 방법에 대해 배웠다. 많은 시간을 학습에 쏟아야 하기 때문에 무작정 학습하기보다는 한 걸음 뒤로가 숲을 보면서 학습방법을 수립했다.

 

1.메타인지하기

메타인지란 '생각에 관한 생각'이다. 즉 내가 어떤 생각을 하는지에 대해 파악하는 능력을 말한다. 내가 계획한 플랜이 올바른지 스스로 객관적으로 평가할 수 있어야 한다. 

그럼 어떻게 하면 내가 객관적으로 올바른 방향으로 나아가는지 아닌지 알 수 있을까? 정답은 글쓰기(회고)다. 글을 쓰면서 머릿속에 있던 모호한 나의 생각을 명확히 할 수 있다. 또한 회고를 작성하면서 기억하고 싶은 지식들도 더 오랫동안 기억할 수 있다. 부트캠프를 진행하면서 배울 수많은 지식들을 머리에 저장하지 말고 글로 저장하자. 우리에 머리는 그렇게 뛰어나지 않다.

2.페어프로그래밍

페어프로그래밍은 왜 해야 할까? 취업을 하기 위해 지식을 습득하는 시간도 부족한데 말이다. 하지만 중요한 점이 있다. 개발 능력(문제 해결 능력)을 키우는 것도 중요하지만 커뮤니케이션 능력 또한 중요하다. 취업을 하고 기업에서 프로젝트를 진항하게 되면 다양한 사람들과 협업을 해야 하고 소통을 해야 한다. 개발 능력만 뛰어난다고 해서 프로젝트를 올바르게 진행되지 않는다. 프로젝트는 모든 사람들의 노력이 함께 모여야 성공할 수 있다. 그렇기 때문에 페어프로그래밍을 함으로써 나의 생각을 상대방에게 정확히 전달하는 연습을 할 수 있다. 

 

또한, 페어프로그래밍을 함으로써 내가 이 지식을 정말로 알고 있는지 확인할 수 있다. 단순히 문제를 풀어서 정답을 맞히는 것과 남에게 설명하는 것은 다른 수준이다. 그렇기 때문에 문제가 쉽다고 해서 넘어가지 말고 최대한 쉽게 상대방이 이해할 수 있도록 노력해보자.

3.수도코드

수도코드는 문제 해결 과정을 코드 레벨이 아닌 사람의 언어 수준으로 논리적으로 작성하는 것을 말한다. 왜 바로 코드를 작성하지 않고 수도 코드를 먼저 작성하는 것을 연습해야 할까? 왜냐면 수도코드를 작성함으로써 컴퓨터의 동작방식을 더 잘 이해할 수 있기 때문이다. 컴퓨터의 동작방식을 더 잘 이해하면 알고리즘 문제나 문재해결 능력 등을 키울 수 있다.

 

컴퓨터는 똑똑하지만 바보다. 역설적인 말이지만 맞다. 컴퓨터는 계산 능력은 인간보다 뛰어나다. 하지만 연산만 할 줄 알뿐 하나부터 열까지 문제해결 과정을 알려줘야 한다. 컴퓨터는 바보이니깐. 그렇기 때문에 우리가 대신 문제해결 과정을 논리적으로 작성해야 한다. 

 

4.검색하고 질문하기

인터넷에는 방대한 지식이 모여있다. 우리가 고민하는 대부분의 문제는 이미 인터넷에 정답이 있다. 그렇기 때문에 문제에 부딪혔을 때 적극적으로 검색하자. '핑거프린스'라는 말이 있다. 검색만 하면 쉽게 찾을 수 있는 정보를 남에게 그 책임을 떠넘기는 사람을 말한다. 핑거프린스가 되면 좋은 개발자가 될 수 없다. 

 

질문하기 전에 먼저 구글에 검색하고 깊이 분석해보자. 만약 검색을 해도 정말 원하는 답을 찾을 수 없을 경우 질문을 한다. 대신 좋은 질문을 해야 한다. 좋은 질문이란 응답자가 빠르게 이해할 수 있는 질문이다. 지금 내가 무엇이 문제인지, 어떤 환경인지, 무엇을 시도해 봤고 그 결과가 어떠했는지 등 구체적으로 작성한다. 친절한 질문이 더 응답받기 쉽다.

 

Comments