Unicode 이해의 다양한 단계들

아래는 내가 경험한 여러 유형들을 정리해본 것.

  1. 최종 사용자. “ㅅㅂ 한글 깨지네.”
  2. Unicode에 대해 전혀 모르는 개발자. 습관적으로 charset=euc-kr이나 charset=cp949 따위의 기존 레거시 코드를 템플릿 삼아 복사함.
  3. UTF-8을 쓰니 Unicode 완비되었다고 생각하는 사람.
  4. 세상에는 여러 종류의 인코딩이 존재하고 있다는 것을 아는 사람. iconv도 사용할 줄 안다.
  5. 특정 문자셋을 사용하는 문자(열)을 바이트열로 인코딩하는 방식이 인코딩이며, UTF-8이 곧 Unicode가 아니라는 것을 아는 사람. Python에서 unicode 타입과 str 타입이 왜 함께 있는지 이해하며 잘 사용한다. 혹은 C/C++에서 wchar_t[]/std::wstring으로 Unicode 문자열을 담아 사용하고 입출력 시에 그것을 인코드해서 char[]/std::string으로 변환해서 쓸 줄 안다. (또한 wchar_t가 곧 Unicode 문자를 뜻하는 것은 아니라는 것도 이해하고 있다.)
  6. Unicode에 여러 평면(plane)이나 카테고리(category), 스크립트(script) 등의 분류가 존재한다는 것을 알고 있다. UCD의 존재를 알고 있다.
  7. Unicode 전문가. 각종 Unicode 정규화 형식에 대해 잘 알고 있고, 자주 사용하는 몇몇 스크립트들의 바운더리 코드 포인트를 외우고 있으며, Unicode 버전 몇에 어떤 스크립트가 추가되었다든가(예를 들면 5.0 때 파스파 스크립트가 추가됨) 하는 잡다한 것들을 모조리 알고 있다.

나는 6 정도이지만, 실제로 회사를 다니면서 느낀 바로는 2, 3, 4에 해당하는 사람이 대부분이었던 것 같다. IRC에서 같이 노는 사람들은 대체로 나와 비슷한 5–6 수준. 7에 해당하는 사람은 거의 본 적이 없다(강성훈 씨 같은 경우 빼면…).

3년 전
  1. labica님이 hongminhee님으로부터 리블로그한 후 덧붙였습니다.
    나는 3번. 덜덜…. like나 리블 읽어보면 다들 4~5번은 하는 분위기. 그러나 괜찮아. 난 디자이너니까. (응?)
  2. nidev님이 hongminhee님으로부터 리블로그한 후 덧붙였습니다.
    아직 5입니다. (부끄)
  3. hongminhee님이 포스팅했습니다.