웹개발자로 일한지 10년이 넘었네요. 지금도 웹개발을 하고 있지만 웹개발자로서의 일은 아직도 그 끝이 보이지 않네요. 아니 점점더 할일이 많아지고 있다고 느끼고 있습니다.

최근 큰 인기를 누리고 있는 것이 모바일 관련 개발 건들일겁니다. 웹이라는 것이 한국에서 인기를 누릴때와 비슷할 정도라는 분도 있습니다. 뭐 암튼 최근에는 안드로이드 어플 개발 건들까지 늘어나면서 자바 개발자들을 필요로 하는 곳이 더욱더 많아 지게 되었습니다. 자바 개발자들 좀 있으면 어떤 일이든 맏아 올 수 있을정도니까요.

하지만 전 좀 다른 생각을 하고 있습니다. 뭐, 다른 개발자 분들도 같은 생각일 수 있고 아닐수도 있는 것입니다만, 이런 유행이 조만간 사라질 거라는 생각을 하고 있습니다. 이유는? 웹의 발전된 것과 같은 이유입니다.

단순히 볼 수 있던 HTML 형식으로 만들어진 글자와 그림이 들어 있는 문서를 제공 하던 곳이 월드 와이드 웹이라는 곳입니다. 웹페이지이죠. 정말 글과 그림을 전달하기 위한 수단이였죠. 이런 곳에 양방향의 어플리케이션들이 만들어 지기 시작했습니다. 흔하게는 게시판, 방명록, … 등이 그런것이죠. 이런 어플리케이션들은 점점더 발전하여 사내인트라넷 어플리케이션, 웹 이메일 솔루션 등등 웹 기반의 무수히 많은 어플리케이션들이 나오고 사용하게 되었습니다.

이유가 뭘까요?

이미 이런 어플리케이션들은 웹브라우저를 사용하지 않아도 PC에 설치되어 있었고 운영되고 있었습니다. C, C++, VB 등으로 만들어진 무수히 많은 어플리케이션들이 있었습니다. 그런데 왜? 웹이라는 문서를 전달하기 위해 만들어진 곳에 비슷한 어플리케이션들을 만들고 서비스를 하고 사용자들은 브라우저를 통해 해당 서비스를 이요하게 되었을까요? 이 질문의 답들은 무수히 많습니다. 중요한 것은 그 이유가 정확히 무엇이냐가 아니라 그 답들 때문에 기존에 사용하던 어플리케이션들을 사용하지 않고 웹에서 작동하는 어플리케이션들을 사용하게 되었다는 점입니다.

물론 MS Offic 군과 같은 아주 장수하고 있는 어플리케이션도 있지만 Google이 이러한 어플리케이션을 웹기반의 어플리케이션으로 변경하려는 노력을 했고 웹개발자를 상대적으로 개무시(좀 과장해서) 하던 MS 마저 웹 개발자들을 중요시 하는 세상이 되었습니다.

자 그럼 이제 모바일 쪽으로 시점을 돌려 볼까요? 지금은 아이폰, 안드로이드에서 작동하는 어플리케이션을 만드는 프로젝트들이 아주아주 많이 있습니다. 이들중 인턴넷을 이용하여 기존의 웹서비스를 하는 곳의 정보들을 이용하는 어플리케이션도 상당합니다. 특히 기존 서비스를 하던 기업의 모바일 버전들은 대부분이죠. 그런데 왜? 모바일 폰의 웹브라우저를 이용하여 서비스를 하지 않고 폰의 OS마다 따로 개발해 줘야 하는 어플리케이션으로 프로젝트를 진행할까요? 화면이 작아서, 폰의 하드웨어 성능이 낮아서, 브라우저로 웹사이트를 들어가면 글자가 작게 보여서, … 등등의 이유를 대고 있습니다. 그래서 따로 어플리케이션으로 만든다고 하죠.

하지만 생각해 보세요. W3C 에서는 이미 오래전부터 웹표준이라는 이야기를 하면서 다양한 장치에서 작동하는 웹을 준비했고 그중에는 모바일용 기기에서 작동 되는 웹도 포함되어 있습니다. 특정 기업에서 준비하고 있는 인터넷 TV 기기에서 작동되는 웹도 준비가 되어 있죠. 즉, 이미 웹 사이트 개발 기술은 브라우저가 실행되는 기기에 맞게 서비스를 할 수 있는 준비가 되어 있습니다. 웹서비스 하나로 PC, 모바일, TV, 프린터, … 어떤 기기가 들어오더라도 각각의 서비스에 맞도록 화면을 구성하고 서비스 할 수 있다는 것입니다.

거기에 어플리케이션의 단점이 부각 될것입니다. 이전에 웹으로 방향을 바꿨던 것과 같은 이유로 다시 웹브라우저로 작동하는 서비스가 늘어 나게 될거라 생각하고 있습니다. 물론 헛다리 집고 있는지도 모르죠. 그렇지만 그리 될것 같네요. 몇개 이야기 해볼까요?

아이폰용 어플리케이션 개발, 안드로이드용 개발, 삼성폰용 개발, … 이렇게 OS나 플랫폼마다 같은 기능을 하는 어플리케이션을 돈을 들여서 만들었다 칩시다. 일부 수정사항이 생기고 기능도 추가해야 하고 이러구 저러구 개발을 해야 한다면 다시 아이폰용, 안드로이드용, … 또 만들게 됩니다. 회사에서 이런 중복 지출을 좋아라 할 것 같지는 않습니다. 또 이야기 해볼까요? 버전이 올라가다보면 새로운 버전을 배포해야 하는데 이것 또한 관리가 쉽지 않습니다. 다른거 또 이야기 해볼까요? 아이폰 쓰시는분들 아시겠지만 그 많고 많은 어플 아이콘들 사이에서 필요로 하는 아이콘을 찾기는 쉽지 않을때가 있습니다. 그리고 그 많은 어플리케이션들 중에서 일부는 한두번 사용하고는 전혀 사용하지 않은 퇴물이 되고 나중에서 지워버리겠죠. 아. 이건 북마크도 같네요. 쏘리.

그래서 전 웹, 모바일, TV에서 모두 작동하는 웹사이트를 만드는 것으로 초점을 잡았습니다. 이러한 일은 적절한 AJAX를 사용하는 것으로 지금의 성능 떨어지는 모바일 하드웨어들에서도 flash를 사용하지 않고 충분히 구현 가능하며 지금도 많은 외국 개발자들은 javascript를 이용하여 어플리케이션을 만드는 방법을 고민하고 구현하고 개발하고 있습니다.

뭐, … 어찌되었던 점점 더 밥벌어 먹을 땅이 많아 지고 있다는 느낌에 기분이 좋네요. 지금까지 해왔던 걸 바탕으로 할일이 많아 좋습니다. 실제로도 내가 벌리지 않아도 일은 너무 많습니다.

참고로 요즘 보려고 적어둔 책입니다.

  1. Beginning Smartphone Web Development: Building Javascript, CSS, HTML and Ajax-Based Applications for iPhone, Android, Palm Pre, Blackberry, Windows Mobile and Nokia S60
  2. Building iPhone Apps with HTML, CSS, and JavaScript: Making App Store Apps Without Objective-C or Cocoa
  3. Pro iPhone and iPad Web Design and Development: HTML5, CSS3, and JavaScript with Safari
  4. Beginning iPhone Web Apps: HTML5, CSS3, and JavaScript for WebKit
  5. Learn iPhone & iPad Web App Development: Mobile Web Standards, UI Design, HTML5, CSS3, and JavasScript
  6. HTML5: Designing Rich Internet Applications (Visualizing the Web)

태클은 언제나 환영입니다. 누군가 이글을 본다면 어떤게 생각하시는지 알고 싶네요. ^^