답변받기 쉬운 질문 작성하기

찰스의 안드로이드 오픈채팅방은 안드로이드 앱 개발에 대해 자유롭게 질문하고 토론하는 공간입니다.
먼저, 현재 오픈채팅방에 고수분들이 많이 계시고, 여러 질문에 대해 답변을 잘 해주셔서 감사하다는 말씀드리고 싶습니다.

그런데, 아마 누군가는 이렇게 생각하실지도 모릅니다.

“제가 한 질문에는 답변 안 해주시던데요?”

다들 현업에 종사하시고 있고, 틈틈이 바쁘신 시간 쪼개서 답변해주십니다. 답변을 못 해주셨다면 아마 정~말로 바쁘신 시간을 보내고 계시기 때문일 겁니다. 또는 답변하기 어렵거나 난해한 질문인 경우일 수 있습니다. 그래서 오늘은 답변받기 쉬운 질문을 작성하는 요령에 대해서 살펴보겠습니다.

1. 요구사항을 명확하게 작성하자.

본인이 무엇을 개발 또는 구현하고자 하는지 명확하게 이야기를 하는 게 좋습니다. 
궁금한 점에 대한 개발 배경과 기대하는 결과를 설명해주시는 편이 좋습니다. 

간혹 해당 앱을 구현하기 위해 사용할 수 있는 시간, 인원, 자원 등 환경적인 요인에 의해 답변이 달라질 수 있는 경우도 있습니다. 이런 경우 환경적인 요인까지 명시해주신다면 답변하기 수월해집니다.

예를 들어 다음과 같은 질문은 답변하기가 어렵습니다.

  • “메모장 앱을 만드려고 하는데요 저장이 안 되네요. 왜 그럴까요?”
    -> 이런 형식의 질문은 문제의 원인을 파악하기 힘듭니다.
  • “데이터 저장을 하려는데 Room을 써야 하나요 SharedPreferences를 써야 하나요?”
    -> 정답이 없는 질문. 상황에 따라 사용법이 다르므로, 현재 주어진 상황을 좀 더 자세히 설명할 필요가 있습니다.
  • “카카오 지도 or 구글지도 API 써보신 분??”
    -> 무언가를 써봤냐고 묻는것 보다, 문제의 핵심을 질문하는 것이 더 좋습니다.
  • “당근마켓 같은 앱 만드려면 시간이(또는 돈이) 얼마나 들까요?”
    -> 질문의 주제가 너무 광범위 합니다.

질문을 하기 전에 본인의 질문을 정리하는 습관을 기르고, 피질문자의 입장에서 해당 질문이 이해하기 쉬운 질문인지 다시 한번 생각해보면 좋을 것 같습니다.

2. 작성한 코드 또는 로그를 첨부하자.

질문자에게 요구사항을 명확하게 공유하여 Consensus가 이루어졌다면, 질문자는 추가적인 정보를 제공하면 답변자에게 좀 더 확실한 답변을 받으실 수 있습니다. 다음과 같은 질문은 답변하기 힘든 질문입니다.

  • “서버로부터 데이터 받아서 RecyclerView에 뿌려주는데 화면에 안 나와요. 왜 그럴까요?”
  • “버튼 클릭이 안 되는데 왜 그럴까요?”

위 질문은 그 어느누구도 명확한 해답을 드릴 수 없습니다. 본인이 작성한 코드 또는 로그를 포함한 시도했던 내용을 공유해주신다면 빠르게 답변을 얻는 데 도움이 됩니다.

3. 더 나은 질문을 위한 방법들

Deprecated 된 API 또는 오래된 기술을 피하기

간혹 Android SDK 내에서 Deprecated된 내용에 대해서 질문하시는 경우가 있습니다. 이런 경우 보통 고수분들은 새로운 기술을 언급하고, 공유합니다. 예를 들면 AsysncTask에 대한 질문을 받으면 RxJava나 코루틴을 제안할 수도 있고, Camera API에 대해 질문을 한다면 Camera2를 사용해야 한다고 이야기합니다. 항상 새로운 것이 좋다는 의미는 아닙니다. 하지만 Deprecated 된 API는 정책 또는 보안상으로 그만한 이유가 있기 때문에 더 사용되지 않는 것입니다. 배우는 것을 두려워하거나 귀찮아하는 개발자는 금방 도태됩니다. 새로운 변화를 수용하고 고찰하는 개발자가 진정한 ‘개발자’ 아닐까요?

나만 아는 키워드로 질문하지 않기

나만 아는 키워드로 질문하는 경우 답변드리기 어렵습니다.

  • 변수의 타입도 불분명하고, 변수명도 질문자만 아는 경우
    -> 코드를 공유해도 내용을 파악하기 힘듦
  • 3rd party 라이브러리에 대한 질문
    -> 라이브러리에 대한 사용 방법 및 리포팅은 해당 라이브러리를 배포하고 있는 개발자에게 질문하는 것이 좋습니다. github라면 issue를 생성하여 리포팅 및 건의할 수 있습니다.
    Dagger, Glide, Databinding 등과 같은 대부분의 안드로이드 앱 개발자들 사이에서 통용되고 있는 유명 라이브러리에 관한 질문은 오픈채팅방에서 해주셔도 답변을 받으실 수 있을 겁니다.

개발자가 아닌 사용자 관점에서 질문해보기

위의 내용을 잘지키며 질문을 하고 답변을 받지만, 일부의 경우 사용할 기술 스택, 아키텍처, 구현 방법을 고정해둔 채 특정 이슈와 연관된 부분에 대해서만 질문하는 경우가 있습니다. 문제를 쉽게 해결할 수 있음에도 불구하고, 먼길을 돌아가는 경우가 있을 수 있습니다. 사용자 관점에서 해당 앱 UI/UX에 대해서 질문하시면 그것을 구현하기 위한 좀 더 나은 방법들을 얻으실 수도 있습니다.

카테고리: etc

0개의 댓글

답글 남기기

Avatar placeholder

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.