연필과 키보드

Sinf·2022년 1월 31일
0

생각정리

목록 보기
7/15

엘리스 2차 프로젝트

10월부터 시작했던 엘리스 SW 트랙 과정이 이제 마무리를 향해 달려가고 있습니다. 트랙의 마지막은 새로운 팀원들과 프로젝트를 진행합니다.

벌써 프로젝트가 1주 진행된 상황에서 고민한 것들을 정리합니다.

연필과 키보드

코드를 작성하다가 이해가 되지 않을 땐 그림을 그리는 편입니다.
흐름을 그림으로 그리다보면 머릿 속으로만 그리는 것보다 더 이해가 쉽고 구현하는데 더 도움이 됩니다.

익숙함에 속다

최근 코딩에 자신감이 붙었는지 구현할 것이 있으면 에디터부터 키는 습관이 되었습니다. 먼저 코드로 작성하고 기본적인 기능이 동작하면 다시 코드를 손보는 흐름으로 이어졌습니다. 이번 프로젝트 또한 처음부터 바로 코드를 작성했습니다.

머릿 속에 그려둔 흐름으로 코드를 작성하다보면 어느새 눈 앞에 큰 벽이 있습니다. '간단한 CRUD니깐' 하는 마음으로 작성하다보면 코드는 이미 커졌고, 기능을 추가할 부분에서 크게 고민하게 됩니다.

일주일 간 진행하면서 기획과 코드에 대해 고민하게 되었습니다.
아래는 지극히 개인적인 주관이며, 제가 경험한 부분입니다.

연필? 키보드?

키보드가 먼저일 때

머릿 속에 그려진 그림으로 코드가 빠르게 작성되어갑니다. 이미 익숙했던 기능들은 아주 쉽고 빠르게 작성합니다.

빠르게 쌓이는 코드들이 더 자신감을 붙게 하고 앞으로 달려갑니다.

잘 모르는 부분이나 처음 구현하는 로직이 나오면 그때 그때 구글에 검색하고 리서치를 통해 더 좋은 구현 방식을 채택해 구현합니다.

요청부터 응답까지 로직을 계속 머릿 속에 두어야 해서 길을 잃을 때마다 코드를 조금 오래 쳐다보게 되었습니다.

연필이 먼저일 때

기획 단계에서 서비스에 대한 큰 그림을 그립니다. 이에 따라 필요한 API에 대해 먼저 정의하고, 요청에 따라 응답하기까지의 로직을 대략적으로 기록하고 진행하게 됩니다.

서버에서 처리하는 로직들을 한 눈에 큰 흐름으로 볼 수 있는 장점이 있습니다. 한 번 시작하면 더 빠르게 코드를 작성할 수 있습니다.

길을 잘 잃지 않게 되는 것 같습니다.

뭐가 좋아? 아마도 나는 연필

사실 저는 아직 장단점을 판단할 수 있는 경험이 있지 않습니다. 그래서 무엇이 좋다 나쁘다 판단하는 것이 어렵지만, 짧은 경험에서 나온 결정은 연필이 앞서는 것이 좋을 것 같다는 생각입니다.

하나의 경험

저는 성북동에 한 고등학교를 졸업했습니다. 그 학교는 성북동 달동네 안 쪽에 있는 학교입니다. 어느 날, 친구와 함께 학교의 쪽문으로 나왔는데 달동네 길은 정말 어려웠습니다.

집과 집이 연결되어 있고, 길은 구불 구불, 중간 중간 튀어나오는 낮은 높이의 문, 여기가 골목인지 마당인지 구분하기도 어려운 길.

친구가 데리고 가지 않고, 혼자 이 길을 처음 걷게 된다면 아마 지도에 의지해 걸었을 것입니다. 다시 그 길을 가라고 한다면? 못 가겠죠.

코딩도 이와 비슷하지 않을까?

저는 어려운 초행길을 걷는 것이 처음 개발에 발을 내딛는 것과 비슷하지 않을까 생각했습니다.

원하는 기능을 구현하기까지 파일과 파일이 연결되고, 디렉터리는 여기 저기, 중간 중간 튀어나오는 버그, 내가 지금 뭘 작성하는지 잊는.

그리고 구글을 도움을 받지 않으면 걷지 못하는 길.
매번 다시 열어보는 구글.

그래서 왜 연필이 먼저일까?

먼저 큰 그림을 그리는 것은 내가 가야할 길을 멀리서 대략적으로 보는 것과 같다고 생각합니다. 대략적인 지도를 그려보고, 어디에 떨어져도 어느 방향으로 가면 출구가 나오는지 정도는 먼저 보고 가는 것과 같다고 생각합니다.

그리고, 어디쯤에 내가 어려워하는 것이 나올 것 같다는 것도 미리 예상해볼 수 있다고 생각합니다. 미리 준비를 할 수 있죠. (하지만 해결할 수 있다고 말하진...)

기록은 중요하다

저는 여러 계기를 통해서 기록이 중요하다는 점을 느끼고 있습니다.

개발에 앞 서 큰 흐름을 그리는 것도, 개발 후에 배운 것을 정리하는 것도 모두 중요합니다.

이것들이 결국 다음에 이 길을 갈 때, 어떻게 가야하는지 지도로 그리는 것과 같다고 생각합니다. 가기 전에 대략적인 지도를 그려두고, 그 길을 다녀온 후에는 지도가 완성되는 것이죠. 그렇다면 그 다음부터는 지도를 보고 더 빠르게 길을 찾을 수 있는 것이죠.

더 빠른 길, 더 좋은 길을 찾는 것도, 이미 지도를 갖고 있는 상황일 때 할 수 있는 일입니다.

결론

마음만 앞서 코드를 쭉 작성하다보면 어느새 이상한 나라에서 길을 잃게 될 것입니다. 자주 길을 물어보게 되죠. 간단한 지도라도 손에 들고 간다면 큰 도움이 될 것입니다.

키보드를 잡기 전에 연필을 잡고 큰 흐름을 그려보는 것이 더 좋다고 생각합니다.

profile
주니어 개발자입니다. 🚀

0개의 댓글