iphone 4.0 발표에 대해 국내 반응을 보면 꽤 호의적입니다.
그러나 국외에선 우려와 분노하는 꽤 강도높은 반응이 나오기 시작하고 있습니다.
단 그 목소리의 주체가 개발자들과 그들의 community라 아직 외부적으로 크게 반향을 일으키고 있지는 않습니다.
그러면 개발자들이 단지 우려하는 단계를 넘어 분노까지 하게 된 이유는 뭘까요?
바로 iPhone Developer Program License Agreement의 3.3.1 항목의 개정에 있습니다.
기존
3.3.1 Applications may only use Published APIs in the manner prescribed by Apple and must not use or call any unpublished or private APIs.
변경
3.3.1 Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).
이 개정은 iPhone App목록에 등록하려면 Object-C, C++, JavaScript(WebKit engine내 javascript만 인정)로만 무조건 개발하라는 의미입니다.
이렇게 무리하게 개정한 이유는 물론 Adobe flash입니다.
safari web browser의 plugin 형태의 flash player는 web browser의 안정성을 해칠 수 있다는 명목으로 허용을 하지 않았습니다만, 얼마전 발표한 최신 flash platform을 사용하면 plugin형태가 아닌 단독 app형태로 개발, 결과물은 native code로 변환하는 형태를 취하고 있어 기존 개발 라이센스 내용으로 딱히 제제할 방법이 없어 iphone 4.0 발표와 함께 은근 슬쩍 내용을 바꿔버렸습니다.
그러면 Adobe 소속이 아닌 다른 개발자들까지 왜 분노할까요?
이유는 개발 언어의 제한입니다.
더우기 원천 개발 언어를 제한함으로써, 어떤 형태의 언어 변환도 허용하지 않기 때문입니다.
즉 pyhon, lisp, java, C#등 다른 언어로 개발 후, Object-C등으로 변환하는 것 조차 허용하지 않습니다.
지금 스티브 잡스와 애플이 보여주는 모습은 마치 IBM-PC에 대해 오만한 자세를 견지하다 순식간에 몰락했던 과거 모습을 상기시키고 있습니다.
개발자 community와 생태계를 스스로 붕괴시키는 모습은 마치 현명한 리더가 독재자로 변신했을 때 망해가는 모습을 떠오르게 합니다.
더 이상의 iphone 프로그램 개발을 포기하는 개발자의 심정을 알려주는 글
Scheme is also dead on thi iPhone(이 분은 lisp언어 일종인 scheme으로 개발 후 portable c로 변환하는 형태를 취했습니다.)
ps)
License 변경으로 Flash의 iPhone 진입 원천 봉쇄 추가로 다음 내용은 또 다른 라이센스 항목으로, 애플이 아닌 그 누구도 Iphone으로 비즈니스를 하지말라는 내용으로
Google이 target으로 보입니다.
New iPhone Developer Agreement Bans the Use of Third-Party Analytics and Services
최근 덧글