일상/개발이야기

개발자가 글을 못 쓰는 이유

DevStory 2022. 12. 17.

개요

개발이라는 주제로 1년 6개월 동안 블로그를 운영하면서 779개의 포스팅을 발행했다. 포스팅에는 도움이 되었다고 댓글을 작성해주신 분들도 있었지만, 반대로 무슨 말인지 이해가 안 된다는 댓글을 작성해주신 분들도 많았다. 아이러니하게도 글 작성자인 나도 과거에 작성한 포스팅을 보면 무슨 내용인지 이해되지 않은 경우가 많았다.

몇 가지 문제점을 살펴보자면 다음과 같다.

  1. 방문 유입을 늘리고자 글 퀄리티를 크게 신경 쓰지 않음
  2. 줄 간격, 폰트 등 CSS 문제로 가독성이 떨어짐
  3. 글로 설명하지 않아도 되는 내용을 글로 설명하여 가독성이 떨어짐
  4. 강의할 수 있는 능력이 부족한데, 강의하듯이 글을 작성함

첫 번째 문제점은 블로그 방문 유입을 늘리려면 많은 글을 포스팅하는 것이 좋으므로 퀄리티 있는 글을 작성하기 위해 시간을 공들이지 않았다는 것을 말한다.

두 번째 문제점은 티스토리 스킨에 대한 문제점을 말한다. 개발자 블로그와 어울리는 스킨이 있고 어울리지 않은 스킨이 존재하는데 개인적으로 미넴 스킨은 개발 블로그와 적합하지 않다. 그럼에도 불구하고 내가 미넴 스킨을 사용하는 이유는 다른 스킨보다 레이아웃 배치가 잘 구성되어 있기 때문이다.

hello 스킨은 개발 블로그에게 적합한 스킨이지만, 카테고리에 애드센스를 추가하면 광고가 잘리는 문제가 발생한다. ccz-cross 스킨은 웹 페이지 로딩 속도가 느리고 더 이상 업데이트가 되고 있지 않다. 언급한 스킨 이외에도 다양한 스킨이 존재하지만 개발 블로그와 어울리는 느낌은 받지 못했다.

세 번째 문제점은 그림, 표로 설명할 수 있는 내용을 글로 구구절절 설명하다 보니 가독성이 떨어지는 것을 말한다.

네 번째 문제점은 남들에게 강의하듯이 글을 작성해서 발생하는 문제점을 말한다. 강의하듯이 글을 적다 보니 존댓말을 써야 했고 쉽게 설명하기 위해 되지도 않는 비유법을 쓰다 보니 글의 내용이 오히려 어려워지는 문제가 발생했다.

문제점은 알겠으나 문제점을 어떻게 고쳐야 할지 몰라서 「개발자의 글쓰기」를 독서 중이다. 해당 포스팅은 개발자의 글 쓰는 방법을 알아보기 전에 내 경험과 책 내용을 기반으로 개발자들이 글을 못 쓰는 이유부터 정리해볼까 한다.

개발자가 글을 못 쓰는 이유

글 쓰는 것은 힘들고 까다로운 작업이다. 내 생각을 명확하게 정리할 수 있어야 하고 남들이 내 글을 보았을 때, 쉽게 이해할 수 있어야 한다.

하지만, 개발자라는 직업은 글을 써야 하는 상황이 많지 않다. 기획자 또는 설계자는 글(문서, 엑셀, 파워포인트)로 보고하는데, 개발자는 개발이 완료된 산출물을 시연하면서 보고할 수 있기 때문이다.

개발자가 코드가 아닌 글을 써야 하는 상황을 나열해보자면 아래와 같다.

  • 장애 및 에러 리포트
  • 유틸리티(클래스 및 함수) 사용 가이드
  • 회의록
  • 개발 산출물 PPT 발표
  • 개발 진행 상황 리포트

회의록을 제외하면 글을 작성해야 하는 상황이 많지 않다는 것을 알 수 있다. 글을 작성해야 하는 상황이 많지 않으니 글을 잘 써야 한다는 생각을 가질 필요가 없고 자연스럽게 글을 못 쓰는 개발자가 될 수밖에 없다.

개발자가 글쓰기 어려워하는 이유

개발자가 글쓰기 어려워하는 이유는 많겠지만, 몇 가지 이유를 나열하자면 아래와 같다.

  1. 글을 작성해야 하는 상황이 많지 않다.
  2. 글쓰기 교육이 없다.
  3. 회사에서는 기초적인 보고서 작성 방법만 배운다.

글을 작성해야 하는 상황이 많지 않으니 글쓰기가 익숙하지 않으며, 막상 소요되는 시간은 본업(코딩)하는 것보다 몇 배로 소모된다. 글을 잘 쓰기 위해 노력하려고 해도 가르쳐주는 사람이 없으니 프로그래밍 언어를 배우는 것보다 쉽지 않다.

하지만, 글을 쓰는 개발자와 그렇지 않은 개발자는 분명한 차이가 있다. 나 같은 경우 더 많은 개발 서적에 흥미가 생겼고, 배운 내용을 블로그에 기록하려고 노력한다. 여러 블로그와 개발자 포럼을 탐방하면서 다른 개발자는 글을 어떻게 작성하는지 분석하는 것이 재밌으며 그들의 능력을 수용하려고 한다.

개발자의 글쓰기 특징

개발자는 글을 작성할 때 정확성, 간결성, 가독성이 중요하다.

정확성은 확실한 것을 의미하며 글에 쓰인 대로 동작해야 하는 것을 말한다. 간결성은 글에 핵심 내용이 반드시 포함되어야 하고 이를 단순하게 표현할 수 있어야 한다는 것을 말한다. 가독성은 쉽게 읽을 수 있는지를 뜻하는 말이다.

아이러니하게도 이 세 가지 특징은 서로 대치한다는 것이다.

정확성이 높으면 간결성과 가독성이 떨어지고, 간결성이 높으면 정확성과 가독성이 떨어지고, 가독성이 높으면 정확성과 간결성이 떨어진다.

예를 들어, JavaScript에서 for...in 문을 사용하여 배열의 합계를 구한다고 가정해보자.

var arr = [0, 1, 2, 3];
var sum = 0;

for(var index in arr) {
  sum += arr[index];
}

console.log(sum); // 6

위 예제는 문제없이 동작하지만 정확도가 떨어진다. JavaScript는 데이터 타입에 대해 유연한 프로그래밍 언어이므로 배열의 요소로 숫자 타입이 아닌 데이터가 존재할 수 있다.

아래는 배열의 요소로 객체, 문자열, 숫자가 존재했을 때, for...in문을 사용하여 배열의 합계를 구하는 JavaScript 코드다.

var arr = [{}, '1', '2', 3];
var sum = 0;

for(var index in arr) {
  sum += arr[index];
}

console.log(sum); // 0[object Object]123

이상한 값이 출력되므로 정확성이 떨어진다. 따라서, 배열의 요소가 숫자 타입인 경우에만 합계를 구하도록 코드를 수정한다.

아래는 숫자 타입인 경우 합계를 구하는 JavaScript 코드다.

var arr = [{}, '1', '2', 3];
var sum = 0;

for(var index in arr) {
  if(typeof arr[index] === 'number')
    sum += arr[index];
}

console.log(sum); // 3

위 예시처럼 다양한 케이스를 추가하고 유효성 검사 및 예외 처리를 하는 경우 글의 정확성은 높아지지만 코드가 복잡해짐으로써 간결성과 가독성이 떨어지는 문제가 발생한다. 위 예시가 억지처럼 보일 수 있지만 실제로 이러한 상황이 가~끔 발생한다.

위 예제처럼 코드를 작성할 때, 이상한 케이스가 생기다 보니 초보 개발자라면 글을 작성하기도 전에 "글을 얼마나 정확하게 써야 하지?", "글을 정확하게 쓰면 가독성이 떨어질 텐데..."라는 고민에 직면하게 되고 1시간 내로 작성할 수 있는 문서를 하루 종일 작성하게 되는 문제가 발생한다.

정확성 높고 간결하고 가독성 있는 글을 하루아침에 작성할 수는 없지만 꾸준히 글을 작성하다 보면 훌륭한 글을 작성할 수 있을 것이다. 이제 글을 처음 쓰는 개발자라면 본인이 사용하고 있는 프로그램의 설치 방법을 작성해보는 것을 추천한다. 시간이 충분하다면 OS마다 설치하는 방법과 에러가 발생하는 케이스도 정리해보자.

참고 자료

[1] 도서 - 개발자의 글쓰기
[2] kislayverma - Why programmers don't wirte documentation
[3] medium - Why Programmers Hate Documentation
[4] medium - Why I think Writing is Harder Than Coding
[5] stackexchange - What's with the aversion to documentation in the industry?
[6] linecorp - 왜 개발자는 글을 못 쓸까?
[7] branch - 개발자 글쓰기

반응형

댓글