태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

해외에 소프트웨어를 팔려면 이것이 꼭 필요하다.

2010/12/14 18:42 by 전규현
 All of Software 블로그를 RSS Feed에 등록을 해 놓으시면 편리하게 받아보실 수 있습니다. rss RSS Feed


연초에 소프트웨어의 국제화와 지역화를 언급하면서 조만간 이에 대한 글을 올리겠다고 했는데, 벌써 10개월이 지났네요.
2010/02/11 - [소프트웨어이야기] - 애플은 한국어와 한글을 구분하지 못한다?

그래서 간단하게 정리를 해보려고 합니다.

일단 다음의 기본 용어는 알아두는 것이 좋습니다.
 i18n(internationalization) - 국제화를 말하며 i와 n사이에 18개의 알파벳이 있어서 i18n으로 줄여말합니다. 소프트웨어가 여러 언어(locale)를 지원하기 용이한 형태로 만드는 것을 말합니다. i가 소문자인 이유는 알파벳엘(l) 또는 숫자일(1)과 혼동되기 때문입니다.

 L10n(localization) - 지역화를 말하며 l과 n사이에 10개의 알파벳이 있어서 L10n으로 줄여말합니다. 소프트웨어를 해당 지역에서 사용할 수 있도록 메시지나 기능을 해당지역에 맞춰주는 것을 말합니다.

Locale - 지역화의 단위입니다. 한국어를 공식적으로 쓰는 나라는 우리나라밖에 없어서 (북한예외) Locale과 나라를 동일시하기도 하는데 영어만 아더라도 여러나라에서 쓰고 캐나다에서는 영어와 프랑스어를 모두 쓰게 됩니다. 따라서 Locale에는 언어 정보와 지역정보가 같이 포함되어 있습니다. 제 글에서는 국가와 혼영해서 사용했으니 알아서 이해하세요.

최근의 소프트웨어들을 보면 국경은 의미가 없어진지 오래입니다. 특히 스마트폰이 폭발적으로 보급되면서 개발자들과 세계 각국의 사용자들은 더욱 가까워졌습니다.

그래서 지역화된 소프트웨어가 더욱 절실해졌습니다. 그런데 우리나라 상황을 보면 아직도 많은 소프트웨어들이 국제화와 지역화에 관심을 기울이지 않고 있습니다. 그러다보니 국내에서 성공한 제품들을 들고 해외에 진출을 하다가 국제화와 지역화의 어려움에 막혀서 좌절하곤 합니다.

 국제화, 지역화 방법은 표준을 따라야 합니다.

국제화와 지역화에대한 소프트웨어 개발의 표준(De facto)이 정립된지는 매우 오래되었지만, 국내에서는 별로 관심을 받지 못하는 것이 사실입니다. 그렇게 어렵지 않은 기술임에도 관심들이 별로 없고 관심이 있다고 하더라도 흩어져 있는 정보를 모두 모아서 하나의 그림으로 보기 어려운 상황입니다. 어렵지는 않다고 했지만 매우 복잡하기 때문에 처음에 이해하기란 쉽지 않습니다.

대부분의 소프트웨어 회사들은 국제화와 지역화 과정에서 표준적인 방법을 따르지 않고 스스로 연구한 방법을 사용하다가 큰 낭패를 보게 됩니다. 왜냐하면 국제화와 지역화에 대한 방대한 지식을 소수의 개발자가 연구해서 체계화 하기란 불가능합니다. 전세계 수백명의 개발자들이 십수년간 모여서 완성한 것을 우습게 보면 안됩니다.

그래서 스스로의 방법은 대부분 실패하게 됩니다. 

 초기부터 국제화와 지역화를 고려해야 합니다.

소프트웨어 개발 초기부터 국제화와 지역화를 신경쓰지 않다가 제품을 다 완성한 후에 나중에 반영을 하게 되면 또 엄청난 비용이 들고 그 방법이 잘못되었다면 비용을 많이 들이고도 또 실패합니다.

소프트웨어가 다른 언어를 지원해야 할 가능성이 단 1%라도 있다면 저는 국제화와 지역화를 적용하여 소프트웨어를 개발합니다. 초기부터 적용하는 것은 비용이 추가로 거의 들지 않기 때문입니다.

 소프트웨어는 하나로 만들어야 합니다.

여러개로 지역화된 소프트웨어 별로 Master가 별도로 존재한다면 이를 관리하는데 또 엄청난 비용을 지불해야 합니다. 표준적인 방법들은 대부분은 하나의 소프트웨어에서 여러개의 언어(locale)을 지원할 수 있도록 미리 준비되어 있습니다.

Locale별로 여러벌의 소프트웨어가 존재한다면 이를 관리하는 비용은 기하급수로 증가하여 혼돈의 상태를 경험하게 됩니다. 이 과정에서 수많은 오류가 발생하고 해외 진출 실패의 주요 원인이 되곤 합니다.

 메시지 번역이 지역화의 전부가 아닙니다.

흔히들 우리나라에서 성공한 제품을 가지고 해외에 진출한다고 영어버전을 만들고 일본어, 중국어 버전을 만들곤 합니다. 이때 그냥 메시지만 번역을 해서 지역화된 제품이라고 생각하곤 합니다. 하지만 이런 제품을 해외에 가지고 나갔다가는 낭패를 보기 일쑤입니다. 외국과 우리나라가 그렇게 비슷하다고 생각하면 착각입니다.

숫자만하더라도 우리나라에서는 1,234.56이라고 쓰는 것을 독일에서는 1.234,56이라고 씁니다. 즉 콤마와 소숫점을 반대로 사용합니다. 

이런식으로 언어(locale)이 고려해야 할 것은 메시지외에도 Collate, Ctype, Monetary, Numeric, Time이 있습니다. 이것들은 표준적으로 정해 놓은 것이고 비표준적인 요소는 이보다 훨씬 많습니다. 비표준적인 요소들은 제품마다 별도로 분석해야 합니다.

 메시지도 단순히 번역하는 것이 다가 아닙니다.

간단한 예로 나라마다 어순이 다르고 단수, 복수의 표현이 다릅니다.

우리나라에는 단수, 복수에 따른 차이가 거의 없지만, 영어에는 복수가 있지요. 하지만 폴란드어는 1개일때 2~4개일때, 5개 이상일 때 서로 표현이 다릅니다. 게다가 12~14개로 넘어가면 또 반복이 됩니다.

이렇듯 거의 모든 요소에서 다른 나라에서는 과연 이대로 쓰는지 의심을 해봐야 합니다. 경험도 많이 필요합니다. 그러면서 자연스럽게 문장의 표현 방법도 글로벌하게 문제가 없는 방법을 사용하게 됩니다.

또한, 번역을 했을 때 문장의 길이가 천차만별이기 때문에 UI 디자인시 문장의 길이를 충분히 길다고 생각하고 디자인을 해야 합니다.

이러한 모든 것이 습관이 되어 있다면 간단한 일이지만 초기에는 매우 귀찮은 일이 됩니다.

 유니코드는 기본입니다.

지역화된 소프트웨어를 개발하다보면 항상 부딪히는 것이 문자코드의 충돌입니다.
유니코드를 사용하지 않아도 지역화된 소프트웨어를 개발할 수 없는 것은 아니지만, 여러 군데에서 매우 귀찮은 일이 발생하게 됩니다.
따라서 유니코드를 기본으로 생각하면 복잡한 문제들이 대부분 해소가 됩니다.
기존에 ANSI 프로그램만 작성을 하다가 유니코드 프로그램을 작성하는 것이 낯설고 어려울 수 있지만 이 또한 적응이 되고 나면 그렇게 어려운 일도 아닙니다.

단, 유니코드 및 문자셋, 코드셋, 인코딩 등 복잡한 컨셉을 모두 제대로 이해하는 것은 보통 어려운 일이 아닙니다. 그렇지 않다면 개발을 하다가도 "어찌어찌 하니 우연히 되더라"하는 식의 개발이 되기도 합니다.

유니코드가 적용된 지역화된 소프트웨어를 개발하려면 갖춰야할 기본 지식이 매우 많습니다.

 꾸준히 유지보수 할 수 있는 프로세스를 만들어야 합니다.

지역화된 소프트웨어를 만들때 흔히 발생하는 문제점이 처음에 한번 개발은 어떻게든 해 냈는데, 유지보수 단계에서 상당히 곤란한 상황에 처한다는 겁니다. 한국어를 포함해서 영어, 중국어, 일본어 그러고 여러 언어를 지원하다보면 패치를 만들어가 업그레이드를 할 때 매번 새로 추가된 메시지와 삭제, 변경된 메시지를 추려서 각각의 언어로 번역을 하고 제품에 반영해서 또 테스트를 해야 하는데 그게 잘 안되고 뒤죽박죽되기 일쑤입니다. 툭하면 어떤 언어에서는 메시지가 제대로 안나오곤 합니다.
지역화 프로세스는 번역과정을 빼고는 모두 자동화를 해서 추가로 비용이 들지 않아야 합니다.

각 개발자나 회사에서 스스로 만든 지역화 방법을 사용하면 좋지 않은 결정적인 이유가 유지보수 입니다. 대부분의 개인들이 만든 지역화 방법은 유지보수까지 완벽하게 반영하지 못한 것이 대부분이기 때문입니다.

 결론

필자는 무슨 소프트웨어를 만들지간에 국제화는 무조건 생각합니다. 이미 알고 있는 마당에서 비용이 추가로 들것도 별로 없습니다.
하지만, 초기에 국제화를 생각하지 않고 나중에 영업이 잘되서 해외 진출을 한번 해보려고 하면 국제화와 지역화는 큰 걸림돌이 될 겁니다. 
이 또한 알면 무지 쉬운데 모르면 한없이 어려운 분야 중 하나입니다.
"유비무환". 미리미리 준비해서 언제든지 글로벌 소프트웨어 회사들과 경쟁할 준비를 해놓읍시다.

이번 글에는 소프트에어의 국제화와 지역화의 필요성과 개념만 정리를 했는데, 그 구체적인 방법은 너무 광범위 해서 블로그 글로 모두 적기는 어려울 것 같습니다. 하지만 기회가 되면 한가지씩 올려 볼 수는 있을 것 같습니다.

혹시 소프트웨어의 국제화와 지역화가 필요하기는 한데 어려움을 겪고 있거나 이미 스스로 방법을 만들어서 쓴맛을 본 분들이 있으면 연락해주세요. 도움이 되어 드리면 좋겠습니다. :)

 * 이 포스트는 blogkorea [블코채널 : 꿈꾸는 소프트웨어 개발자 세상] 에 링크 되어있습니다.
image by chrys
저작자 표시 비영리 변경 금지

전규현 개발문화 i18n, L10n, 국제화, 지역화

Trackback Address: http://allofsoftware.net/trackback/202 관련글 쓰기
  1. 2010/12/15 10:47
    Web 2.0과 세계화(Globalization) Tracked from 세상을 보는 또 다른 시선
  2. 2011/03/04 10:45
    국내 소프트웨어 업계의 미래는 밝다! Tracked from 클로인의 일상로그
  1. Blog Icon
    정도유

    더 중요한 것은 timezone 설정입니다.

  2. 안녕하세요. 정도유님
    Time zone은 이미 OS에서 설정이 되고 있고 이를 이용할 수 있습니다.
    제품에서 별도의 time zone을 설정할 필요가 있다면 기능이 필요하곘네요. 또한 섬머타임도 고려를 해야 하고요.
    그리고 소프트웨어의 성격에 따라서 시간의 저장은 Local time이 아닌 절대 시간으로 기록을 하고 필요에 따라서 Local time의 변환해서 보여기도 합니다.

  3. Blog Icon
    김영규

    UI도 중요한 부분이라고 생각됩니다.
    UI에 표시되는 텍스트만 보더라도 각 언어마다 텍스트 길이나 배치가 달라져 제대로 확인하지 않으면 UI가 제대로 표시되지 않으니깐요.

  4. 김영규님 안녕하세요.
    동감합니다. 게다가 각 나라마다 선호하는 UI방식이 다른 것은 정말 골치 아프거든요. 그런 경우는 UI를 Flexible하게 바꿀 수 있게 하기도 하는데 점점 복잡해집니다. - -;

  5. Blog Icon
    김정민

    안녕하세요.
    위에 국제화와 지역화에대한 소프트웨어 개발의 표준(De facto)이 정립된지는 매우 오래되었지만 이라고 하셨는데요. 이 표준이 어떤건지 알려주실수 있는지요?

  6. 안녕하세요. 김정민님
    가장 널리 쓰이는 업계 표준은 gettext를 비롯화여 이와 관련된 여러가지를 말하는 겁니다.
    유니코드포럼에서 표준을 정립한 PO파일과 MO파일 그리고 이를 썬마이크로시스템즈에서 gettext로 구현을 해 놓았고, xgettext나 po에디터등 이와 관련된 여러가지 툴이 있고, 프로세스도 상당히 표준화 되어 있습니다.
    gettext는 현재 광범위하게 여러 플랫폼과 개발언어에 포팅이 되어 있어서 왠만한 개발에 거의 모두 사용할 수 있습니다.
    gettext를 제대로 사용하려면 국제화, 지역화에 대한 일반 지식을 모두 잘 알아야 합니다. 또한 관련된 툴의 사용법과 다국어 프로세스 또한 잘 알아야 합니다. 그렇지 않으면 반쪽짜리가 되어서 어디에선가 구멍이 생기게 됩니다.
    모든 케이스를 염두해 두고 방안을 마련해야 합니다.

  7. 아.. 몇번 해외 오픈소스 번역을 해보다 느낀 점들이 잘 정리 되어있네요.

    UFO:AI 라는 오픈소스 게임과 VtigerCRM 번역을 진행해보았는데
    확실히 영어권에서 만들다 보니 어순이 다른 한글에서는 번역에 어려움이 많아지더라구요
    UFO:AI는 리눅스 기반으로 gettext - poedit 이라는 것을 사용해서 조금은 편했지만
    VtigerCRM은 php 라서 그냥 단순 텍스트 파일을 번역을 해야 하는데 언어구성을 잘못해놔서
    모듈별로 중복되는 메시지들도 많다보니 번역도 짜증나고 그리 속도가 안나더군요

    물론 개발자측에서 추가적으로 개발해야할 내용이겠지만
    번역을 감안해서 프린트 할 내용의 순서역시 변경가능하도록 하면 좋지 않을까 생각이 들더라구요
    예를 들어서 "%n of %n" 이런 문장은 한글로 번역 하자면 "%n개 (총 %n개)" 이런식으로 번역하는데
    한글어순에 맞추려면 "%1n of %2n"은 "%2n 중에 %1n개" 이런식으로 되어야 하니 말이죠.

    이런 것들에 대한 프레임워크가 이미 나와있는지는 모르겠지만 gettext는 이런건 지원하지 못하니 아쉬운 감이 있습니다.

  8. 안녕하세요. 구차니님
    gettext에서도 말씀하신 모든 것이 지원이 됩니다.
    이러한 예가 broken sentence의 한 종류입니다. 비슷한 경우는 수많은 케이스가 있습니다. gettext를 제대로 쓰르면 "%1$d of %2$d"와 같이 처음부터 그렇게 코드를 작성해야 나중에 번역만 하면 됩니다.
    gettext와 관련된 툴들도 계속 업그레이드가 되고 있어서 새로운 기능이 계속 추가 되고 있습니다.

  9. 이 글을 읽다 보니 이런 궁금한 점이 생겼습니다.

    MSDN 같은 개발 참고 문서들은 어떻게 국제화를 하는 것일까요?

    언어를 한 개만 지원한다면 그냥 Doxygen으로 만들어 버리면 되겠지만,

    언어가 2개 이상이 된다면 이것도 마냥 쉬운 일은 아닐 것 같은데요.

    HTML 보고 번역하는 것일까요?

  10. 주의사신님 안녕하세요.
    저도 이러한 경험은 없네요. ^^
    보통 Doxygen은 회사 내부에서 사용하기 위한 것이라서 어떻게 번역이 이루어지는지 저도 궁금하네요.
    보통 번역의 가장 어려운 점은 처음에 번역하는 것이 아니고 수정될 때 입니다.
    단순히 번역만 하는 것 가지고는 어려움이 있을 것 같습니다.
    표준적이 방법이 있는지는 저도 좀 알아봐야 할 것 같습니다.
    감사합니다.

  11. 글 잘 보았습니다.
    좋은 하루 되십시오.

  12. 이장석님 감사합니다.

애플이 아이폰4에서 한글을 바꾼 이유는...

2010/07/07 11:47 by 전규현
 All of Software 블로그를 RSS Feed에 등록을 해 놓으시면 편리하게 받아보실 수 있습니다. rss RSS Feed


얼마전 아래와 같은 아이폰의 Localization에 대한 글을 올린적이 있습니다.

심각한 내용은 아니었고, 아이폰의 다국어 설정 화면에서 우리말을 선택하는 항목이 "한국어"라고 적혀 있어야 하는데 "한글"이라고 적인 것에 대한 포스트였습니다. 그뒤로 'Localization(L10n)과 Internationalization(i18n)에 대한 글을 한번 작성해야 지'하고 마음만 먹고 있었는데 너무 바빠서 블로그에 글 자체를 자주 못올리고 있습니다.

그런차에 아이폰을 iOS4.0으로 업그레이하니 제 블로그의 글 때문은 절대로 아니겠지만(^^), 아이폰의 다국어 설정 화면에서 "우리말"을 지칭한 항목이 "한국어"로 바뀌었더군요.


iOS3


iOS4

사소한 변화이기는 하지만 애플이 우리말을 조금 더 잘 이해하게 된 것 같습니다. 아니면 한국어 담당 개발자를 더 뽑았을 수도 있고요. 아무튼 좋은 변화입니다.

* 이 포스트는 blogkorea [블코채널 : 꿈꾸는 소프트웨어 개발자 세상] 에 링크 되어있습니다.
저작자 표시 비영리 변경 금지

전규현 소프트웨어이야기 i18n, L10n, 다국어, 아이폰, 한국어, 한글

Trackback Address: http://allofsoftware.net/trackback/193 관련글 쓰기
  1. 구글 서비스에선 한국어를 뜻하는 Korean이 '한국의'로 오역되어 있기도 하더라구요.
    구글 코리아에서 이런 부분은 본사에 적극 어필해주면 좋을텐데요. ^^

  2. 안녕하세요. 편집장님
    "한국인"이라고 표기될 수도 있겠네요. ^^

  3. Blog Icon
    애매한

    북한이 있기 때문에 한국어라고 쓰기도 사실 좀 애매합니다.
    북한에서는 조선말 이라고 쓰니까요.

    서방국가 시각에서 보면 한국어 라고 쓰는게 자연스럽기도 하지만 일본이나 중국에서 일하면서
    뉴스 같은 걸 보면 남북 양쪽의 눈치를 같이 보는 경우가 많더군요.

    현지인이 그렇게 이야기 하더군요... 한국어 라고 표현하기도 좀 애매하다고...
    애플이 거기까지 생각하고 일부러 한글이라고 했을리는 없을 것 같습니다만...

  4. 안녕하세요.
    Localization에서 정확한 표기를 하려면 Locale을 사용해야 합니다.
    Locale에는 문자체계와 사용하는 지역으로 표기가 됩니다.
    즉, 영어_영국, 영어_미국, 한글_대한민국, 한글_북한, 한글_중국(조선족) 이와 같은 식이죠.
    따라서 en_UK, en_US, ko_KR, ko_PK, ko_CN 이렇게 표기합니다.
    하지만 이렇게 표기하면 일반인들이 알아보기 힘듭니다.
    따라서 영국영어, 미국영어, 한국어, 조선어, 중국조선어 등으로 표기할 수 있습니다. 여기에는 딱히 표준이 없는것 같습니다.

    하지만 한국어의 주요 소비국은 대한민국이라서 대부분의 외국제품은 대한민국만을 기준으로 Localization을 하고 있습니다.

  5. 음.. 그냥 훈민정음이라고 표기하면 북한 남한 눈치 안봐도 되려나요 ^^;

  6. 구차니님 안녕하세요.
    ㅎㅎ 그래서 애플이 한글이라고 표기를 했었나보군요.

  7. 아이폰 4이지 아이폰4G 가아닙니다^^...

  8. 맞습니다. ^^

  9. Blog Icon

    비밀댓글입니다

애플은 한국어와 한글을 구분하지 못한다?

2010/02/11 15:44 by 전규현
 All of Software 블로그를 RSS Feed에 등록을 해 놓으시면 편리하게 받아보실 수 있습니다. rss RSS Feed


아이폰을 사용하기 시작한지 오늘로 꼭 2달이 되었습니다. 
2달동안 아이폰을 사용하는 재미, 아이폰 앱 개발 관련 공부하는 재미에 빠져있었습니다. 그런데, 아이폰 다국어 설정에서 이상한 것을 발견했습니다.

언어어 설정에 떡하니 "한글"이라고 나와 있는 겁니다. 대부분의 사람들은 그냥 지나쳤겠지만, 저야 소프트웨어 전문가이고 Localization의 중요성을 알고 있는터라서 눈에 확 거슬리더군요. 
아시는 분들도 많겠지만, 여기에는 "한글"이 아니고 "한국어"라고 나와야 맞습니다.


그럼 "한글"과 "한국어"가 다른지 알아보겠습니다. 

"한국어"는 몇 천년전부터 조상 대대로 사용해 오던 우리 말입니다. 
"한글"은 1443년 세종대왕께서 만드신 자랑스러운 우리 고유의 문자체계입니다. 한글이라는 이름도 1910년 주시경선생이 붙인 것이고요.

"영어", "English"는 말이고 "알파벳"은 문자체계죠.
"일본어"는 말이고 "히라가나"는 문자체계죠.

영어로 얘기해도 엄연히 다름니다. 
"한국어"는 "Korean" 이지만 "한글"은 "Korean Alphabet" 또는 "Hangul"입니다.

물론 한글은 자랑스러운 우리의 글자체계입니다. 전세계적으로 고유의 문자체계를 가지고 있는 나라는 몇 안되고, 알파벳이나 한자의 영향을 거의 받지 않고 완전히 독립적인 문제체계를 가진 나라는 그렇게 많지는 않습니다.. 게다가 한글은 매우 과학적이고 배우기 쉬워서 "언어"는 있는데 "표기방법"을 가지고 있지 않는 나라들에게 "한글"을 보급하기 위한 활동도 진행중입니다. 세종대왕께서도 한글(훈민정음)은 슬기로운 사람은 아침 나절이 되기 전에 익힐 수 있고, 어리석은 사람도 열흘 안에 배울 수 있다고 했죠. 

한글이 그렇게 우수하다고 하더라도 말과 글을 혼동해서 쓰는 것은 안되겠죠. 일반인들은 흔히 한글과 한국어를 혼동해서 얘기를 하고 별 문제될 것도 없지만, 수천만명이 쓰는 디바이스에 잘못된 오류가 있는 것은 고쳐야 할 것 같습니다.

아이폰의 Internationalization(i18n) Localization(L10n)을 진행한 사람들이 전문가들일텐데, 단순 실수라고 믿고 싶습니다.

i18n과 L10n 얘기가 나온차에 조만간에 이에 관련된 글을 올려보도록 하겠습니다. 잠깐 미리 조금 얘기를 드리자면 흔히들 소프트웨어를 개발해서 해외에 진출하기 위해서 영어로 번역을 한다, 일본어, 중국어를 지원한다라고 하지만, 단순히 메시지 좀 번역하는 것이 Localization이 아닙니다. 또한 대충 해 놓았을 경우 발생하는 유지보수 비용은 만만치가 않습니다. 그래서 Localization은 스펙작성시부터 고려가 되며, 아키텍쳐에 반영이 되며 단순히 메시지 뿐만 아니라 많은 부분을 고려해야 하고, 개발 및 유지보수를 위한 프로세스와 툴들이 필요합니다. 자세한 내용은 다음에 올리도록 하겠습니다.

* 이 포스트는 blogkorea [블코채널 : 꿈꾸는 소프트웨어 개발자 세상] 에 링크 되어있습니다.
image by laura padgett
저작자 표시 비영리 변경 금지

전규현 소프트웨어이야기 i18n, L10n, 다국어, 일본어, 한국어, 한글

Trackback Address: http://allofsoftware.net/trackback/173 관련글 쓰기
  1. 음.. 번역은 어짜피 외주주지 않을까요?
    저도 UFO:AI 라는 opensource 게임의 한글화를 부분적으로 자발적으로 지원하는 중이지만, 번역이 쉽지는 않더라구요. 아무튼 메시지ID 기반으로 하는 번역 시스템의 한계도 있고, 이래저래 번역도 쉬운일은 아니더라구요.

    그러고 보니, 문자체계와 언어는 구분을 해야겠군요. 좋은 내용 감사합니다.
    저도 번역 작업에 주의를 더 기울여야겠습니다.

  2. 구차니님 안녕하세요.
    번역이 다국어 지원의 전부는 아니죠 ^^ 메시지ID기반의 다국어 작업은 전통적으로 MS가 좋아하는 방식이지만, 실제 적용해보면 많은 문제들이 있습니다. 구체적으로는 다음에 블로그 글로 올려보도록 하겠습니다. 감사합니다.

  3. 이 부분은 좀 다른 사정이 있을겁니다. '조선어(북한)'와 '한국어(대한민국)' 양쪽으로 두 번 로컬라이징 하는 번거로움을 덜기 위해, 외국 회사에서 제작한 프로그램이 언어 선택 옵션에 '한글'을 제시하는 것은 매우 흔한 일입니다. 물론 아이폰이 북한에 출시될 가능성은 희박합니다만, 일종의 관행적인 일이라고 보아도 될 것 같습니다.

  4. 안녕하세요. Chatmate님
    물론 이유는 있을 것 같네요. 말쓴 하신 이유도 그럴듯합니다. 북한말과 우리말을 소프트웨어를 개발할때 같은 언어로 봐야할지도 이슈네요. 상당부분 이해는 되지만, 다른 단어들어 너무 많아서요. 그래서 영어도 미국, 캐나다, 영어 다 Locale을 따로 가지고 있습니다. 그렇다면 외국의 소프트웨어 회사들에게 북한과 우리의 차이를 이해시켜야겠네요.

  5. 그리고 보니까 소프트웨어 관련 블로그를 가지고 계시네요. 바로 RSS Feed 등록했습니다. 감사합니다.

  6. 저도 chatmate님과 비슷한 의견을 가지고 있습니다.
    일본에서 한글(한국어) 교제에는 한글로 표기되고 있습니다.
    처음에는 한국어가 많았는데 조총련에서 딴지를 걸어서
    한글로 쓰고 있다는 말을 방송국에서 일할때 들었었습니다.

    Ray.전규현님의 언급처럼 언어와 문자체계로 나룰수도
    있겠지만 한국어와 조선어를 포괄하는 개념으로 한글을
    사용할 수도 있다고 생각되네요.

    어찌되었던 로컬라이징은 그 나라의 문화와 역사를 모르면
    가장 어려운 부분이 아닐까 싶군요 ^^

  7. Blog Icon
    Desac

    알파벳이나 한자의 영향을 거의 받지 않고 완전히 독립적인 문제체계를 가진 나라는 대한민국을 제외하고는 거의 없습니다.
    ------
    아랍어, 태국어 등등 여럿 있습니다.

  8. 안녕하세요. Desac님
    저도 몇개 있는 것으로 생각은 하고 있으나 그쪽 전문가는 아니라서 이런 표현을 했는데, 제가 생각한 것보다는 많나보네요. 몇개로 바꾸는 것이 나을 것 같습니다. 감사합니다.

  9. Blog Icon
    그런데

    실질적으로 언어인 말을 가지고 있는 나라는 많지만 글자를 가진 나라는 그리 많지 않습니다
    주로 영어로 많이 쓰죠

  10. 전세계에 6800개의 언어가 있고, 그중 절반이 사라질 위기에 있다는 군요. 그중 글자를 가진 언어는 100개 정도라네요.

  11. Blog Icon
    김종국

    좋은 지적입니다. 미쳐생각지도 못했는데..

  12. 김종국님 감사합니다. 가수는 아니시죠? ^^

  13. 애플만 그런게 아니라 솔까말 한국인들 대개가 그렇습니다. 예전에 컬투가 웃찾사에서

    "아름다운 우리말 누가 만들었나 세종대왕이지 어쩌고..."

    우리 말을 세종이 만들었댑니까. 글을 만들었지..

    국어국문학과 출신(현재 교직 시험보는) 아가씨가 글과 말을 헷갈리길래 함 지적했더니 답변이라고 하는게 어디서 줏어들은 풍월은 있어가지고...

    "말과 글은 떼어놓고 생각 할 수 없는 법이다"

    물론 그 말 자체만 놓고 치면 맞는 말입니다마는 지가 한글과 한국어를 헷갈린건 어디까지나 쪽팔릴 일이지 그딴 궤변으로 빠져나가려 드는 모습이 참 안쓰러웠습니다.


    그건 그렇고 locale에 대한 지적은 chatmate님 말씀이 거의 정확할겁니다.

  14. 지금 제 아이폰을 확인해보니, 설정->일반->다국어->언어에는 "한글"이라고 나와있지만, 언어 아래항목인 음성으로 조절하기에는 "한국어"라고 되어있네요.
    단순실수인지, 둘을 구분한 이유가 있는건지, 갑자기 저도 궁금해집니다.
    좋은 지적 잘 보고 갑니다. ^^

  15. 안녕하세요. 예문당님
    아마 애플에서도 나름대로 이유가 있을 것으로 추측은 하고 있습니다.

  16. Blog Icon

    비밀댓글입니다

  17. 감사합니다. 맞춤법은 최대한 맞게 쓰려고 하는데도 가끔 실수로 또는 몰라서도 틀리곤 합니다.

  18. Blog Icon
    오르페

    이래서 제가 개발자분들을 존경합니다. 잘 봤습니다.

  19. 존경씩이나 - -; 일반인이 섞어 쓰는 것은 별 문제 없다고 생각합니다. 누군가가 혼동한다고 굳이 지적할 내용은 아니라고 봅니다. 개발자로 사는 것은 피곤하죠?

  20. 좋은 글 잘읽고 갑니다. ^^ 우리 팀 동료들에게도 "한글"과 "한국어"의 차이에 대해 물어보니 누구도 쉽게 대답하지 못하더군요. 평상시에 놓치기 쉬운 부분이지만 꼭 구분되어야 하는 사항 같습니다.

  21. 안녕하세요. 검은왕자님
    소프트웨어 개발자라면 알아야 한다고 생각합니다.

  22. Blog Icon
    카일

    최근 한글을 표기언어로 채택한 짜이짜이족에 아이폰을 판다면 같은 한글을 쓰더라도 분명이 다른 언어로 표현되기 때문에 "짜이짜이어"라는 옵션이 들어갈 것입니다. 표기문자는 한글이지만 언어가 다르니까요. 만약 한글이라고 한다면 짜이짜이족이 햇갈리지요.

  23. 안녕하세요. 카일님
    짜이짜이족 이외에는 아직 한글이 보급된 민족이나 나라는 없나요? 한글 보금이 성과를 빨리 내기는 어려운 것 같군요.

  24. 좋은 글 잘 보고 갑니다. 말씀하신대로 한국어와 한글을 구별할 줄 알아야 하겠네요. 좀 다른 얘기지만, 유독 localization은 하찮은 잡무로 취급되는 경향이 없지 않나 생각됩니다. 그것도 자세히 들여다 보면 전문적으로 해야 할 일이 많고, 어려운 일들도 있는데 말이죠.

  25. 도모네님 안녕하세요.
    메시지 좀 번역하면 Localization인줄 알다가는 큰코 다칩니다. 그동안 해외에서 장사가 잘 안되서 큰 문제들이 없던 겁니다. 이걸 다행으로 알아야 하나...

  26. 애플만의 문제가 아닙니다. 대부분의 회사에서 나타나는 문제이지요. 심지어 윈도조차도 "한국어 윈도"가 아닌 "한글 윈도"라는 말하는데요. ㅡㅡ;
    심지어 한국 사람조차도 "한글화"라는 엉뚱한 말을 하는데, 외국 기업인 애플이야 더 말해 무엇하겠습니까?

  27. koc/SALM님 안녕하세요.
    그러고 보니까 한글/한국어 혼용이 광범위 하게 사용되고 있네요.

  28. Blog Icon
    푸른고래

    좋은글 잘 봤습니다.

  29. 푸른고래님 반갑습니다.

  30. Blog Icon
    김계승

    의미있는 문제제기 잘 봤습니다. 다만, 위에서 제시하신 화면은 아이폰에서 처리할 문자체계를 어떤걸로 할껀지 선택하는 대화상자라고 봤을때 "한글"이라고 표기하는게 문제되지 않아 보입니다. 영어 알파벳 글자를 제대로 표현하고 싶으면 "English"를, 히라가나든지 가타가나든지 일본 글자를 제대로 표현하고 싶으면 "일본어"를 선택하는 것이겠지요. 한국어든 짜이짜이어든 한글 글자를 제대로 표현하고 싶다면 "한글" 옵션을 선택하는게 어쩌면 당연해보이네요. 저의 짧은 생각~

  31. 김계승님 안녕하세요.
    Locale이라는 것이 개념이 좀 복잡하세요.
    언어의 속성은 말, 글, 지역, 시대가 있습니다.

    말 - 한국어, 영어, 중국어, 일본어
    글 - 한글, 알파벳, 간체, 번체, 히라가나
    지역 - 한국, 북한, 영국, 미국, 타이완, 중국본토, 홍콩
    시대 - 과거, 현재

    Locale은 지역과 말을 다루고 있고 글자체계는 따라옵니다.
    물론 언어를 한글로 표시한다고 해도 누구나 이해는 가능하지만, 엔지니어링 관점에서 정확한 표현을 쓰는것이 좋다는 것을 의미입니다.

  32. Blog Icon
    김계승

    오늘도 또 하나 배우고 갑니다. ^^
    트윗도 잘 보고 있답니다.

  33. 이런 일이... 이런 사전도 있군요. - -;

스펙을 제대로 작성하는 것은 구식이다?

'소프트웨어 개발 방법이 얼마나 발전했는데 아직도 스펙을 제대로 작성하고 개발을 하는가?' 라고 하면서 스펙 작성에 반대하는 주장을 하는 사람들이 있다. 스펙, 설계를 작성하고 구현을 하고 테스트를 하는 방식으로 개발하는 것..

내가 개발에 집중할 수 없는 이유

우리나라에서는 개발자들이 개발에 집중할 수 없는 환경인 곳이 참 많다. 정도의 차이가 있지만 거의 대부분이라고 봐도 무방하다. 그 결정적인 이유는 개발자 혼자서 북치고 장구치고 다해야 하는 상황이기 때문이다. 원래는 이렇게..

설계가 필요할까?

최근에 Software Architect의 정체에 대해서 혼란을 겪고 있는 것 만큼 Software 설계에 대해서도 혼동스러운 것은 마찬가지인 것 같다. 그래서 설계에 대해서도 깔끔하게 정의를 해보자. 흔히 설계에 관한 다음..

Software Architect를 양성하는 나라

우리나라에서는 종종 SW Architect를 양성한다고 한다. 정부에서 막대한 예산이 지원도 되며 SW Architect를 양성하는 학원도 생기고 야단법석이다. 그럼 도대체 SW Architect는 무엇인가? SW Archi..

우리에게 지금 필요한 것은? 바로 이것

우리나라 대부분의 소프트웨어 회사들에게 가장 시급하게 필요한 것은 "기초 체력"이다. 히딩크가 우리나라 국가대표 축구팀을 처음 맞았을 때 강조한 것이 기초 체력이었다. 그전까지 우리는 국가대표 축구팀이 체력은 세계 어디를 내..

프로토타입을 재활용하면 될까? 안될까?

며칠 전 프로토타입에 관해 올린 글에 대해서 프로토타입 재사용에 대해서 여러 의견이 있어서 이 내용에 대해서 조금더 설명해보려고 한다. 2011/11/03 - [프로젝트/요구사항분석] - 프로토타입이란? 소프트웨어공학의 목적..

프로토타입이란?

프로토타입 (경제/경영) 양산(量産)에 앞서 제작해보는 원형(原型)을 '프로토타입'이라 하는데, 프로토타이핑이란 개발자들과 사용자들의 의사소통상의 효과를 증진시키기 위하여 취하는 시스템개발상의 기법이다. 일반적인 분석방법을..

같이 일하려면 적어라.

"협업은 말로 하는 것이 아니라 문서로 하는 것이다." 동서고금을 막론하고 개발자들은 적는 것을 싫어하고 또 잘 적지 못한다. 우리나라 개발자들은 그 정도가 훨씬 심하다. 우리나라에서는 회사가 크던 작던 상관없이 대부분 5년..

우리 식대로
우리 식대로 2011/10/30

"우리 식대로" 마치 북한에서 하는 얘기 같지만, "우리 식대로"를 주장하는 소프트웨어 회사는 의외로 많다. 체계가 하나도 없이 완전 주먹구구 방식의 소프트웨어 회사가 있는가 하면 "우리 식대로"를 주장하여 정말 많은 일을..

문서는 얼마나 적어야 할지?

소프트웨어 개발 프로젝트에서 문서는 적게 적어야 한다. 다시 말하면 "보통의 회사에서는 문서는 필요한만큼만 가장 적게 적어야 한다." 물론 문서를 많이 적으면 여러 각도에서 상세히 적기 때문에 중복은 많이 발생하지만 잘못된..