관리 메뉴

지구별에서 - Things Old and New

우리 문명은 무른모위에서 돌아가고 있다. (Our civilization runs on software.) 본문

IT 와 gadget들

우리 문명은 무른모위에서 돌아가고 있다. (Our civilization runs on software.)

샛솔 2009. 2. 5. 23:44

우리 문명은 무른모위에서  돌아가고 있다. (Our civilization runs on software.)  

 

프로그래밍 언어 C++의 창시자  비아느 스트루스트롭 (Bjarne ­Stroustrup) 가 한 말이다.

 

나는 온라인 쇼핑을 하고 온라인 뱅킹을 하고 온라인으로 뉴스를 읽고 온라인에서 주식거래도 한다.  

 

온라인으로 세금도 내고 온라인으로 여행계획을 짠다.   

 

온라인으로 항공기 좌석도 지정하고 온 라인으로 호텔도 예약한다.  

 

온라인으로 렌탈카를 예약하고 온라인으로 목적지의 일기를 확인한다.

 

온라인으로 지도를 보면서 온라인으로 다음날 갈 길을 안내 받는다.   

 

온라인으로 음악도 듣고 놓진 TV 방영을 온라인으로 "다시보기"한다.  

 

모르는 것이 있으면 온라인으로 구글에게 물어 본다.   

 

난 또 컴에 깔린 나모웹페이지 편집기로 강의록을 작성하고 PhotoDelux 로 사진을 편집하고 컴퓨트레이너로 실내자전거시뮤레이션 코스도 만든다.

 

윈도우즈에 끼어 있는 무비메이커로 동영상을 편집하고 윈도우즈에 끼어 있는 스파이더 게임을 즐긴다.  

 

가끔 엑셀로 표계산도 하고 마이크로소프트 워드로 문서 편집도 한다.

 

그러니 컴퓨터와 인터넷이 없다면 어떻게 살까?  

 

그런데 그 모든 것이 무른모에 의해서 돌아 가고 있는 것이다.   

 

내 컴퓨터에는 마이크로 소프트의 윈도우즈가 깔려 있고 인터넷인스플러러가 돌고 있다.

 

윈도우즈 미디아 플레이어가 동영상을 보여 준다.   

 

이 모든 컴퓨터에서 내가 하는 일들은 그 바탕에 눈에 보이지 않는 무른모 있어 가능한 것이다.

 

내 컴퓨터엔 무수히 많은 무른모가 깔려 있다.  어떤 것은 항시 쓰지만 어떤 것은 깔려 있다는 것도 모르는 것이 있다.  

 

Program Files 라는디렉토로엔 이름도 생소한 무른모들이 나열되어 있다.  언제 무엇 때문에 깔은 거지?  내게 반문해 본다.

 

어떤 것은 엄청히 비싼 값을 치르고 산 것도 있고 어떤 것은 프리웨어로 그냥 인터넷에서 내려 받아 깐 것도 있다.

 

이렇게 난 아니 우리 모두는 무른모에 의존해 세상을 살고 있고 따라서 오늘의 문명이 무른모에 의존해 굴러 간다고 한 말이 지나치지 않다는 것을 알 것이다.

 

전산망이 다운되면 주식시장이 마비되고 은행이 업무를 보지 못한다.   기차표도 사지 못하고 항공기도 예약할 수 없다.  그런데 그 전산망을 돌려 주는 것이 무른모다.   

 

그 무른모에 흠이 생겨 시스템이 붕괴되면 전기가 끊긴 도시와 같이 모든 것이 정지된다.

 

무른모가 없으면 전화도 할 수 없고 우리 휴대폰의 각종 기능도 보이지 않는 무른모 덕이다.  그것이 없다면 문자도 보낼 수 없고 인터넷 통신도 안된다.

 

그런데 그 무른모들은 안전하고 안정적이고 신뢰할 수 있을까?   

 

대답은 "No"  다.

 

2007년 1월호 Technology Review 에 쓴 Scott Rosenberg 의 글을 보자

 

...... 어디를 둘러 봐도 무른모는 예정 스케쥴을 지키지 못하고 불안하고 신뢰할 수 없고 사용하기 어렵다.

어떤 기관이 새 시스템을 도입하거나 낡은 시스템을 업글하려고 하면 엄청난 위험을 감수하지 않으면 안되게 되어 있다. 오늘날 대규모 IT 프로젝트는 자칫 그 기관을 수렁에 빠뜨려 꿈쩍도 할 수 없게 만드는 무서운 함정이 되기 일수다.

 

최근의 연구결과에 의하면 그런 프로젝트의 셋중의 둘은 예정계획일을 지키지 못한 채 지지부진하고 그 비용도 예산을 훨씬 초과하는 문제를 일으키고 있다.

 

미국 정부는 10여년 넘게 미 연방항공국의 새 시스템으로 업글을 계획하고 있으나 아직도 요원한 상태이고 FBI 는 그 과정에서 완전 혼돈의 늪에 빠져 붕괴하는 수모를 겪었다.

 

이 문제는 정부기관에만 한정된 것이 아니다. 기업에서도 상황은 마찬가지다.  

 

그중에 한 예만 봐도 알 수 있다.  맥도날드의 경영자들은 웹기반 새 경영시스템을 꿈꾸고 세계의 모든 맥도날드지점의 햄버거, 프렌치프라이, 치킨너겟의 실시간 판매량을 기록하는 시스템을 구축하려고 했다.

 

그들 역시 1억7천억불의 손해를 보고 그 무른모 프로젝트를 포기하고 총 10 억불의 손해를 감수해야 했다.

 

이런 무른모의 실패 사례는 수두룩하다. 2002년 미 국립 표준 및 기술연구소의 연구 결과에 의하며 무른모의 실패로 야기된 손해는 한해에 595억불에 달한다고 조사되었다.

 

그런데 그런 실패 사례는 비단 금전적 손해에 국한되지 않는다는데 문제의 심각성이 있다.  무른모의 실패는 사람의 삶에 끼치는 불행까지 아니 사람의 생명을 위협하는 데까지 미치고 있는 것이다.

 

1991년 걸프전쟁 당시 패트리오트 미사일은 무른모의 실패로 날아오는 스커드 미사일을 향해 발사되지 못했고 그 결과 스커드 미사일은 미군 막사에 떨어져 28명의 미군의 전사자를 내고 말았다. .................

 

****************************

아래의 코드는

플래시 비디오의 길이를 재는 Flex 의 ActionScript 3.0의 코드다.   Joey Lott 외2인이 지은 Cookbook 책(Flex2.0용)에 있는 것을 Flex3.0에 맞게 약간 수정한 코드다.

 

그런데 가끔 22초짜리 무비를 돌리면 2초만 돌다 서 버린다.  어딘가에 버그가 있는데 아직 찾지 못했다.  패트리오트 미사일을 제어하는 무른모였다면 어땠을까  2초만 날아가다 아군 진지에 떨어질지도 모른다.

 

 package {

    import flash.text.TextField;
    import flash.media.Video;
    import flash.net.NetConnection;
    import flash.net.NetStream;
    import flash.events.NetStatusEvent;
    import flash.text.TextFieldAutoSize;
    import flash.display.Sprite;
    import flash.events.Event;
   
    public class Main extends Sprite {
        private var _stream:NetStream;
        private var _video:Video;
        private var _playbackTime:TextField;
        private var _duration:uint;
       
        public function Main() {
            _video = new Video(640, 480);
            _playbackTime = new TextField();
            _playbackTime.autoSize = TextFieldAutoSize.LEFT;
            _playbackTime.y = 480;
            _playbackTime.text = "test";
            _duration = 0;
            var connection:NetConnection = new NetConnection();
            connection.connect(null);
            _stream = new NetStream(connection);
            _stream.play("http://mfiles.naver.net/9b4bac72613157e4c99a/data43/2009/2/1/28/stp80427-dcknsk.flv");
            var client:Object = new Object();
            client.onMetaData = onMetaData;
            _stream.client = client;
            _video.attachNetStream(_stream);
            addChild(_video);
            addChild(_playbackTime);
            addEventListener(Event.ENTER_FRAME, onEnterFrame);
        }

        private function onMetaData(data:Object):void {
            _duration = data.duration;
        }
       
        private function onEnterFrame(event:Event):void {
            if(_duration > 0 && _stream.time > 0) {
                _playbackTime.text = Math.round(_stream.time) + " / " +
                Math.round(_duration);
            }
        }
               
    }
}

 

 

이 파일에 의해 돌아 가는 플래시 무비는

 

첨부한파일이다.  

 

 2007년 겨울 미국여행 때 찍은 동영상이다.      

 

'IT 와 gadget들' 카테고리의 다른 글

Apple 의 CarPlay 가 나온다는데...  (2) 2014.03.18
내 끈질김 - 내 플래시의 첫 작품 주사위  (7) 2014.03.05
윈도우즈 젖 떼기  (4) 2014.02.14
Windows 의 운명  (0) 2014.02.09
한망필망 (韓網必亡)  (4) 2013.12.22
좋아진 세상  (0) 2013.12.03
어른의 장난감  (2) 2013.11.21
주사위 미리 보기  (0) 2004.07.05
Comments