저는 웹 프로그래머입니다.
초딩때부터 HTML을 시작했으니 벌써 15년이나 웹과 함께 살아왔네요.
물론 중간에 디자이너를 꿈꾸며 웹을 멀리하기도 하고, 입시 프로그래밍(?) 덕분에 C랑 친해지기도 하고..
실제로는 20살부터 웹 SI에 뛰어들기 시작했는데, 올해가 5년차 입니다.
닷넷과 자바를 택하자면 자바를 주로 하고, 오픈 소스를 좋아라 합니다.
뭐 그렇긴 한데..
여튼 저도 웹에 관심이 하도 많아서, 특히 2년 전 RIA에 관해 깊히 빠져들면서
웹 상에서도 이렇게 일반 어플리케이션 처럼 만들 수 있다는 점에 얼마나 기뻤는지 모릅니다 ^^
그때는 닷넷을 하고 있어서, WPF로 만들어진 이쁘장한 Vista계열의 UI가 Silverlight에서도 쓰일 수 있다는 겁니다!
그래서 보다 보니 Adobe에서 플렉스가 있더군요. 이 또한 나름대로 이쁘장한(?) UI를 가지고 웹에서 어플리케이션 처럼 만들 수 있다는 매력에 푹 빠졌었습니다.
그런데 UI만 이쁘장하게 하면 뭐합니까. 뒷단에 로직이 잘 돌아가야죠.
그래서 보면 참 개인적으로 Adobe Flex에 낑겨 맞출 수 있는 오픈 소스 기술들, 특히 BlazeDS에 매료됬었었죠.
따로 XML이나 JSON을 통해 C/S통신을 할 필요도 없고, 설정만 슥삭슥삭 세팅만 잘 해주면 심지어 플랙스 내에 Class랑 DB객체가 맞물리게 되더랍니다… 거 참 신기하네. 마치 JNDI처럼 말이죠.
그렇게 Flex어플을 만들었고, 또한 Adobe Catalyst를 통해 딱히 플래시를 안써도 Animation 및 custom ui를 구현했었습니다.
그런데 문제는 플래시의 속도와 호환성이었습니다. 뭣보다 스마트폰이 이렇게 엄청나게 보급된 시점에서, 특히 아이폰에서 플래시 안되는 것은 치명적이더군요. 제가 아무리 컨텐츠를 잘 만들면 뭐합니까, 폰에서 보이지가 않는걸요..
웹을 통해 접근하는 사람들은 어떤 특정한 PC에 앉아서, 컨텐츠를 탐색하다가 들어오는 것이 대부분입니다. 하지만 요즘 사람들은 스마트폰을 사용해서 인터넷을 검색합니다. 최근에 나온 아이폰 4S의 Siri의 경우, 엄청나게 쉽게 스마트하게 웹의 정보를 찾습니다. 여기에는 심지어 html 페이지 조차 필요하지 않습니다. Text로 된 정보만 있으면 되니깐요.
그런 구조화되면서도, 브라우저에 모두 맞게 돌아갈 수 있는 컨텐츠를 만들어 주는 것이 html5 인 것 같습니다. 사실 html5의 테그들만 봐도 지금까지는 솔직히 canvas나 video, audio, form 테그 외에는 문서를 완전히”구조화”시켜주는 테그가 대부분입니다.
그리고 CSS와 요즘 나오는 자바스크립트 프렘워크를 통해 사이트를 만들어 나갑니다.
사실 개발자에게 html5가 큰 의미가 있을까요? html5가 나와도 저희는 ajax를 만들고 어쨌든간에 back-end단을 만들고 데이터를 표준화된 포멧으로 전달해 줘야 합니다. 그런데 프로그래머가 기존과 다르게 할 일이 있을까요?
글쎄요. 하지만 이제 웹은 점차 2D에서 벗어나려고 하고 있습니다. 아니, 기존 웹들은 2D조차 아니였죠. 글,이미지,동영상 등으로 구성된 문서였죠. 하지만 이제 점차 다이나믹 해지고 있습니다.
이런 상황에서 개발자들은 어떻게 해야 경쟁력을 가질까요?
글쎄요, 저는 일전에 게임개발 업체에 있으면서 그곳에서 게임이 만들어지는 과정을 지켜봤는데, 프로그래밍은 서버/클라이언트 로 나뉘면서 또 서버는 AI니 NPC니 그런 인공지능 서버가 있고 분산처리 프로그래밍 하는 쪽이 있고 클라이언트는 코어가 있고 UI가 있고 툴 개발자 등등.. 뭐 그렇게 세분화 되더랍니다.
아마 웹 프로그래밍 세계도 이렇게 변하지 않을까 싶습니다. 그럼 html5가 가장 직접적으로 영향을 끼치는 부분은 다름아닌 UI개발이 아닐까요.
점점 뭐랄까, 표준화된 UI들, 이쁘장한 UI들이 무료로 배포되고 있습니다. 특히 모바일 부분에서 말이죠. 나름 Sencha Touch니 jQuery Mobile이니 얘들 참 이쁩니다. 이런 식으로 스킨만 입히면 완성되는 프렘워크들이 슉슉 나오고 있지요.
그런 환경 속에서 저희들은 어떻게 해야 할까요. 음..
갠적으로는 개발자는 또한 디자인도 알아야 하고, 퍼블리싱도 알아야 하고 기획도 알아야 하고..
그런 슈퍼 웹 개발자가 되어야 할 것 같다는 느낌이 듭니다.
아무래도 그게 개발자가 경쟁력을 갖출 수 있는 요소가 아닐까..
그런 생각을 해보게 되네요 ^^
주저리주저리 해봤습니다. html5가 도래해도, 딱히 개발자 입장에서 뭐가 달라질 것이 있는가 싶네요. 그 전에, 제 포지션좀 정리좀 해야겠습니다. 포커스 온을 해야 하는가, 두루 알아야 하는가..