'아이폰 1년'에 해당되는 글 1

  1. 2010.11.24 아이폰 1년, 다시 SW를 진지하게 돌아보다 (6)

아이폰 1년, 다시 SW를 진지하게 돌아보다

보안라이프/IT트렌드 2010.11.24 09:27
11월 28일은 아이폰이 우리나라에 들어온 지 1년이 되는 날이다. 그 동안 많은 변화가 있었고, '앱(애플리케이션'이라는 세계를 매개체로 그 동안 별다른 생각 없이 사용하던 소프트웨어에 대한 새로운 생각이 자리매김했다.

나에게는 얼마 전, 아이패드용 애플리케이션을 개발 프로젝트를 진행하는 과정에서 소프트웨어어의 중요성을 실감하는 계기가 있었다. 프로젝트의 이름은 '아툰즈'로, 플래쉬로 제작된 동화를 아이패드에 옮기는 것이었다. 처음 프로젝트의 시작은 막막하였다. 이런 작업을 하기 위해서는 iOS에서 지원하는 애니메이션 관련 프레임워크인 코어 애니메이션을 사용해야 하는데, iOS의 기반 언어인 objective-C도 제대로 이해하지 못한 상태에서 이것을 이해하려고 하니 많은 어려움이 따랐다.

그런 어려움을 뒤로 한 채 다시 한번 프로젝트에 집중하기 시작했고, 그리고 2~3주 가량의 시간이 흐른 뒤, 데모 정도라고 할 수 있는 프로젝트 결과물을 만들어냈다. 꽤 그럴싸 해보였다. 플래쉬에서 시연되던 동화의 내용이, 시뮬레이터에서 비슷하게 구현됐기 때문이다.

이렇게 데모 작업을 끝내고, 실제로 아이패드 위에서 제대로 돌아가는지 테스트하기 위해서 동화를 아이패드 위에 올려보았다. 그러자, 큰 문제점이 발견되었다. 총 14장으로 이루어진 동화의 내용 중 3-4장 정도만 진행되고 툭 꺼져버리는 것이었다.
왜 그런지 궁금해 몇 번이고 실행해 보았지만 결과는 항상 같았다.

우리는 아이패드에서 제공되는 여러가지 환경을 조사했고, 메모리가 256MB밖에 제공되지 않는다는 사실을 알아내 이 사실을 중심으로 동화가 꺼지는 원인을 조사하기 시작했다. 디버깅 툴을 설치하고, 동화를 테스트해본 결과 우리의 예상대로 iOS가 메모리를 정상적으로 해제하지 않고, 계속 그 메모리를 물고 있는 현상을 발견했다.

막막한 결과이기도 하거니와, 다시 프로젝트를 처음에서 생각하게 되었다. 뷰를 전환하는 구조를 바꾸고, 리소스를 최대한 줄이고 뷰가 넘어간 순간 잡고 있던 메모리를 강제로 해제하는 등 여러 가지를 실행해 보았더니, 서서히 넘어가는 페이지가 늘어나기 시작했다. 어떤 순간에는 일이 진척되지 않아 몇 날 며칠을 고민한 적도 있지만, 프로젝트가 시작된 두 달 만에 동화가 꺼지지 않고 아이패드에서 정상적으로 돌아가는 것을 확인할 수 있었다.

스티브 잡스는 한 강연회에서 "People who are really serious about software should make their own hardware. (소프트웨어를 진지하게 생각한 사람은 그들만의 하드웨어를 만든다.)"라는, 퍼스널 컴퓨터의 아버지이자 미래학자인 알렌 케이(Alan Kay)의 말을 인용한 적이 있다. 
IT를 잘 알지 못하는 나를 포함해 많은 사람에게 IT는 지금까지 주로 하드웨어만을 의미했다. 특히 나는 이번 프로젝트를 경험하기 전까지 이 말을 제대로 이해하지 못했다. 하지만 프로젝트를 위한 소프트웨어의 결함을 진지하게 생각하고, 그것의 원인을 하드웨어까지 아우르며 생각하게 되니, 잡스의 이 말이 조금은 이해가 가기 시작했다. 물론 소프트웨어를 위해서 하드웨어를 만들지는 않았지만 말이다. 

아이폰 덕분에 지난 1년 간 우리나라에서도 소프트웨어의 가치와 중요성을 다시 보게 되었다. 하지만 개발자부터 그것을 사용하는 최종 사용자까지 진지한 고민은 많이 부족한 게 현실이다.

최근 www.kandroid.org의 운영자인 닉네임 들풀, 양정수씨의 강의를 듣고 있다. 그는 강의에서 안드로이드 마켓에 존재하는 대부분의 애플리케이션은 수준이 높지 않다고 말했다. 왜 그런지 생각해보니, 잡스의 이 말이 해답을 주었다. 소프트웨어에 대한 진지한 고민이 부족하고, 그리고 그럴 수 있는 사회적 환경이 조성되지 않았기 때문이다.

불과 1년 만에 많은 일이 일어났고, 앞으로도 누구도 알 수 없는 신세계는 우리를 기다리고 있다. 이러한 시대에 필요한 것은 개발자들이 소프트웨어를 진지하게 고민할 수 있고, 그들이 맘 편히 이런 생산적인 고민을 할 수 있도록 해주는 사회적 분위기일 것이다. 만약 이런 기반이 갖춰진다면 대한민국이 멀지 않은 미래에 진정한 IT 강국이 되지 않을까 생각한다.  
Ahn

대학생기자 이종현 / 숭실대 컴퓨터학부
감성이 없었던 시절 유일하게 브라운 아이즈를 참 좋아했습니다. 
그런 브라운 아이즈의 2집 앨범명은 'Reason 4 Breathing?'이었습니다. 
지금도 10년이 지난 지금도 저 자신에게 'Reason 4 Breathing?'라고 외치며 하루 하루를 가슴 떨리게 살고 있고, 그 정답을 찾을 때까지 계속 가슴 떨리게 살고 싶습니다.


댓글을 달아 주세요

  1. 라이너스 2010.11.24 10:22  Address |  Modify / Delete |  Reply

    사회적 환경도 많은 영향을 미치는군요.
    잘보고갑니다^^

  2. 널새 2010.11.24 15:02  Address |  Modify / Delete |  Reply

    소프트웨어는 전문 개발자가 아니라 누구나 쉽게
    자기가 생각하는 아이디어를 구현할 수 있도록 진화하고 있습니다.

    즉 개발자는 서비스에 집중하고 실제 내부에서의 동작은
    시스템이 알아서 처리하도록 하는 방향으로 발전하고 있죠.
    플래시나 유명 프레임워크가 인기를 끌 수 있는 이유도 그런 이유가 아닌가합니다.

    그래도 일부 시스템 프로그래머는 하드웨어에 대한 고민을 해야겠죠.
    하지만 일반 응용프로그램 개발자는
    그런 고민 없이 개발할 수 있는 환경이 올거라 생각합니다.

  3. 상상하는열이 2010.11.25 18:41  Address |  Modify / Delete |  Reply

    같은학교학생이여기서활동하는게자랑스럽네요잘읽고갑니다

    • 보안세상 2010.12.01 09:13 신고  Address |  Modify / Delete

      안녕하세요 상상하는열이님~ 반갑습니다~ ^^ 보안세상은 안랩인들과 대학생 기자, 독자가 함께 만들어가는 커뮤니케이션 블로그랍니다~ 자주자주 놀러오세요 :) 좋은하루 되세요!