티스토리 뷰

something else

내 질문에 답이 달리지 않는다면?

게으른 the lazy 2022. 10. 22. 20:02

 

출처: pixabay

 

다음 중 빠진 것이 있는지 확인해보자.

 

1. 내가 짠 코드
2. 코드의 목적
3. 시도해본 것
4. 오류의 종류
5. 에러 메시지

 

 

1. 내가 짠 코드

- 코드를 보여주지 않으면 무슨 문제를 풀고자 하는지 알기 어렵다.

- 어떤 문제는 말보다 코드로 설명하는 것이 더 좋을 때가 있다.

- 문제를 푸는 방법이 한 가지가 아닐 때가 많다.

- 이미 짜놓은 코드에 따라 좋은 해답이 달라질 수 있다.

- 코드를 보면 어디가 잘못됐는지 콕 짚어줄 수 있다.

 

2. 코드의 목적

- 코드의 목적을 알려주지 않으면 답변자가 코드를 보고 해석해야 한다.

- 코드를 봐도 어떤 문제를 풀고자 하는지 알기 어렵다.

- 사람마다 코딩 스타일이 다르므로 코드 해석에 시간이 소요된다.

- 코드에 여러 문제가 혼재되어 있을 수 있다.

- 코드의 목적을 알면 아예 더 간단한 방법을 알려줄 수도 있다.

 

3. 시도해본 것

- 풀고자 하는 문제에 특별한 조건 및 제한이 걸려있을 수 있다.

- 보통이라면 좋은 방법이, 조건/제한이 복잡한 경우에는 그렇지 않을 수 있다.

- 이미 시도해본 것을 알려주지 않으면 질문자와 답변자의 시간이 낭비된다.

- 이미 시도해본 것을 알면, 왜 그 방법은 배제해야 하는지 토론이 가능하다.

- 이미 시도해본 것에서 약간만 수정하면 최적의 솔루션이 나올 수도 있다.

 

4. 오류의 종류

- 답변자는 전지전능하지 않다.

- 오류는 다양하다.

- 결과가 이상한지? 반응이 없는지? 에러가 났는지? 프로그램이 꺼지는지?

- "안된다"는 말은 아무런 정보를 주지 못한다. 중요한 정보는 "어떻게"에 들어 있다.

- 당연한 얘기지만, 오류의 종류에 따라 해결책은 달라진다.

 

5. 에러 메시지

- 답변자는 전지전능하지 않다고 말했다.

- 에러의 종류도 다양하다. IndexError? KeyError? IndentationError? TypeError? AttributeError?

- 에러 메시지에는 디버깅에 필요한 모든 정보가 다 들어있다.

- 전문가도 맨날 에러 메시지를 만난다. 그걸 해석하고 해결하니까 전문가라고 불린다.

- 다시 말하지만, 중요한건 '안된다'는 사실이 아니다. '어떻게' 안되는지가 중요하다.

 

 

- 게으른

 

같이 읽기

좋은 질문을 위한 7원칙

좋은 질문 하는 법 (제가 mania.kr에 쓴 글입니다)

댓글