소프트웨어 업그레이드의 필요성

geekforum의 이미지

하루에 쏟아져 나오고 있는 소프트웨어가 얼마나 될까 궁금해 했습니다. 우리는 끊임없이 쏟아져 나오는 업그레이드 버전에 왜 그래야 되는지 이유도 모르면서 발을 맞추기 위해 새버젼을 구입하고 그 버전에 익숙해지기 위해 시간과 정성을 쏟고 있습니다.

소프트웨어에서 독점을 과시하고 있는 MS 제품들은 몇 년이 멀다하고 새버전을 내놓아서 소비자들을 진퇴양난에 빠트립니다. word 91과 호환이 되지도 않는 word 97이 나와서 어쩔수 없이, word 91을 사용하자니 97을 사용하는 사람과 호환이 되지 않고 새로 구입을 하자니 별 차이도 없는거 같은데 생돈을 들이는 것 같고....

저는 기술의 발전과 새로운 문명에 반대하는 사람은 아닙니다만 심할 정도로 저에게 업그레이드를 요구하는 사회에 대해 저항감을 느낍니다. 소프트웨어는 왜 이렇게 업그레이드가 되어야만 하는 걸까요?

익명 사용자의 이미지

머 업글이라... 문제가 없다면 필요성은 없는데...
이 세상엔 완벽한게 없습니다.
만약 인간이 완벽한 것을 만든다면 그것은 일대의
큰 실수 입니다.
글구 우리나라 같은 불법복제의 천국에선 업글은
아주 당연한 일이져...
마이크로소프트가 돈버는 방법을 개발한 것처럼
우리도 프로그램에 돈쓰지 않는 방법을 개발하져...
세상의 논리가 그렇듯이 언제나 선과 악은 공존...
그래서 서로 다른 입장의 위치에 서면
또다른 세상이 보이져... 에궁 무슨 이야기를...
가장 중요한 우리의 논점는 지금 현재의 우리져...

아직 새벽이군여... 언제 날이 밝을려는지...

익명 사용자의 이미지

몇가지 이유가 있을 것으로 보이네요.

첫번째, 선점 또는 최고는 진보하지않으면 밀려나게됩니다. 최고를 유지하기 위한 소프트 웨어업체의 노력인 것이죠. 아마 그들입장에서도 별다르게 개발하지 않고 놔두고도 매출이 유지된다, 그리고 직원들이 그냥 놀아도 월급을 줄 수 있다면 개발을 왜 하겠습니까? 업그레이드는 왜하구요.
주가관리도 해야하고, 주주들에게 잘보여야하는것이 기업체의 업무이고 매출이 곧 기업의 성패와 직결되는것 아니겠습니까?

직원을 고용하구서 제품하나 만들어내고 그냥 놀려둘 순 없겠죠? 순수하게 소프트웨어 개발만 생각할 것이 아니라 맞물린 전반적인 경제상황도 이해를 해야 할 겁니다. ^ ^

익명 사용자의 이미지

진화는 아니고, 변화겠죠!
사람이 편하게 쓰기위해 만든 것들이
때로는 더 불편하거나, 사람을 힘들게 합니다.
병원이 환자를 만들거나, 자동차가 교통체증을
유발하며, 세탁기가 생겨나서, 빨래가 늘어났다는 것.
제가 뭔가 착각하고 있나요?
병이군요!

익명 사용자의 이미지

새로운 버젼이 항상 성공한다고는 생각하지 않습니다. 새로운 버젼이 소비자들에게 먹히지 않아 그대로 사장되는 경우도 많으리라 봅니다. 그렇다면 결국 과도한 업그레이드의 문제는 개발자측의 장사속보다는 소비자들이 유인하는 측면이 크다고 봅니다.

김세권의 이미지

결국은 컴퓨터 자체가 진화하는 때가 오게 되겠죠.

즉, 우리가 하드 웨어라고 불리는 것 자체가 진화하는

것이죠. 그런 때가 오길..

익명 사용자의 이미지

제가 보기에는 업그레이드라는 부분이
문제라는 생각입니다.
좀,,,,, 황당하지만
진화할수는 없을까하는 생각.
OS도 어플도 진화하는 것이라면
업그레이드가 필요없겠죠

지금의 프로그램을 보면서
그런 답답함을 느낍니다.

프로그램과 문명이 지니고 있는 한계상황의
끝을 보는 느낌이라서 지금의 프로그램에는
항상 실망합니다.

익명 사용자의 이미지

진화는 생명현상에서 나타나는 것입니다.
소프트웨어에서는 나타날 수 없습니다.
컴퓨터에도 나타날 수 없습니다.

스스로 문제를 처리하는 소프트웨어는 있습니다.
인공지능과 인공생명을 기술을 적용하여 사용되고 있다고 들었습니다.
예를들면 시스템에 락이 발생하면 데드락이 발생하기 전에 제거하고
에러가 발생하면 에러유형에 따른 처리루틴으로 에러방지와 같은
에러 발생을 감소시키는 것으로 알고 있습니다.

얼마전 IBM에서도 자신들의 OS(AIX용이 맞는지는 모르겠지만)에 일부
그러한 기능을 탑재한 제품을 개발했다는 기사를 본 적이 있습니다.

분명한 것은 소프트웨어는 스스로 진화할 수 없습니다.
진화는 생명현상에 나타나는 것입니다.
다면 스스로 오류정도는 수정할 수 있습니다.

익명 사용자의 이미지

컴퓨터는 이미 진화하고 있습니다.
생명체의 진화와의 차이점은, 생명체의 진화가 자연선택에 의해서 이루어지는
데 반해, 컴퓨터의 진화는 사람의 선택에 의해서 이루어진다는 점이죠.
"진화" 라는 단어는 꼭 생명 현상에만 국한된 단어가 아닙니다.

소프트웨어는 스스로 진화할 수 없다는 말은 맞습니다.
그렇지만 생명 역시 스스로는 진화할 수 없습니다.

토론 주제와는 관계 없는 글이 되어버렸지만 "진화"라는 단어에 대해
오해하고 계신 분이 많이 있는 것 같아 몇 자 적었습니다.

익명 사용자의 이미지

글쎄요...

하드웨어 보다는 소프트 웨어가 더욱 진화하기 쉬울 겁니다.
소프트웨어에는 일반적으로 생각하는 생명의 속성이 없지만.
진화에 필요한 속성은 충분히 만들 수 가 있습니다.

진화의 현상에서 중요한 것은 생명 그 제체가 아닙니다.
정보의 유전, 변이, 도태의 과정입니다.

이는 충분히 구현할수 있으며(지금 당장은 어떤지 모르지만. 만들수 는 있을 겁니다.) 오히려 시간이 많이 필요하면 많은 제약이 따르는 생명체 보다 더 빨리 더 다양하게 진화할 수 있는 것이 소프트웨어입니다.(물론 아무리 진화해도 하드웨어 속에서만 살수 있겠죠.)

애니메이션 공각 기동대에서 사이보그에 들어간 소프트 웨어가 가 스스로 망명을 신청하면서 자신을 생명체라 주장하는 근거가 정보의 유전, 변이, 도태에 있습니다.

그리고 벌써 한쪽은 학자들은 그런 소프트웨어(하드웨어도 섞여 있겠죠)에 "인공생명"이란 이름을 부여했고 생명체로 간주하는 학자들도 있습니다.
제가 알기로는 "스티븐 호킹"박사도 그런 학자중 하나인듯 합니다.

현재 진화하는 소프트웨어의 대표적인 예로 "유전자 알고리즘"이 있습니다.
그것은 바로 진화의 핵심 알고리즘을 이용하는 겁니다.

저도 소프트웨어가 생명체처럼 취급받는 것은 그리 좋지는 않지만 연구가 많이 진행된 듯 합니다.

분명 인간은 진화하는 소프트웨어를 만들 것은 뻔하고
그것이 매트릭스가 되여 우리를 지배할 지도 모르죠....

그래서 전 atx 스타일의 전원보다는 at 스타일의 전원을 선호 합니다.
언제든지 한번에 꺼버릴 수 있으니까요.

서지원_의 이미지

원래 게시한 분의 논의와는 약간 어긋난 것 같지만,
용어가 제가 알고 있는 바와 다른 점이 있어 글을 올립니다.
(제가 잘못 알고 있는 것일지도 모르지만 ^^;;;)

진화하는 소프트웨어의 대표적인 예로 "유전자 알고리즘"을 드셨는데요, 제가 알기로
"유전자 알고리즘" 즉 "Genetic Algorithm"의 방식에서는 소프트웨어가 진화한다고
보기는 매우 힘듭니다. 소프트웨어가 진화하는 것이 아니라 소프트웨어 내부의
"Data"가 진화하는 것이겠지요.(굳이 말하자면..) 즉, 주로 스트링으로 표현되는
데이터(염색체)가 crossover, mutation 을 통해 다음 세대의 염색체 후보가
만들어 지고, 특정한 function에 의해(즉, 환경..) 선택이 되어 다음 세대가
만들어 지는 방식입니다. (대충 말하자면...)

님께서 말씀하시는 진화하는 소프트웨어는 제 생각에는 "Genetic Programming"인 듯
합니다. 주로 Lisp 같은 언어를 사용하는 걸로 알고 있는데요, if/else 구문과 조건,
action들을 random하게 나열하고(tree 형식이 되겠죠..) GA에서와 마찬가지로
crossover/mutation등을 하고, 만들어진 코드 중에서 조건을 더 잘 만족시키는 코드
를 선택하는 방식인 것으로 알고 있습니다.

최근에는 GP 연구는 약간 쇠퇘한 듯하구요, GA쪽으로 연구가 활발히 진행되는 것으로
압니다. 얼마 전에 우리나라 컴공과 교수님께서 TSP문제를 GA를 이용해서 좋은 해를
얻을 수 있는 방법을 찾았다고 했었죠...

어쨋건, "소프트웨어가 진화" 하는 것에 대한 연구는 크게 많이 진행되지 않은 것으로
알고 있는데... (GA쪽은 활발한 듯 하지만...) 아닌가요? ^^;;;

익명 사용자의 이미지

소프트웨어에서 말씀하신 것과 같은 유전,변이,도태가 스스로 일어나려면
먼저 소프트웨어가 사고능력을 갖추어야 가능하지요.

그런데 현재와 같은 컴퓨터의 소프트웨어로 사고능력을 부여하는 것은 불가능하죠.
그 때문에 신경망 컴퓨터를 개발하는 것이고....

지금의 컴퓨터는 1억년 정도 가동시켜도 사고능력이 생기지는 않습니다.

익명 사용자의 이미지

지금늬 텀퓨터도 가능합니다. 단지 소프트웨어의 문제일 뿐이지...

익명 사용자의 이미지

그딴소리 나도하겠다.

난 컴퓨터 1000000개 사는것도 가능하다

단지 돈이문제일 뿐이지.

익명 사용자의 이미지

마져요~~

익명 사용자의 이미지

전 업그레이드가 더 디는 프로그램은 정말 시러!!!

커널 몇주면 업그레이드 되죠...

dselect 는 update , Install 정말 쥑입니다.

하루에 20메가 정도 업글 되구...

한 3~4일 업글 않하니 90메가가 구 버전 이더라구요!!!

업글은 매일 되어야 한다.... 쭉~~~~~~~~

익명 사용자의 이미지

첨부터 완벽한걸 어떻게 만들어요.

만들면서 버그 수정하고 사용자가 써보구 필요로 하는거 집어 넣구 불필요한 기능 빼고 프로그램 최적화하고 암튼 업그레이드 불필요하다고 주장하시는 님들은 최고의 프로그래머겠죠(모든이들의 요구사항을 개발할때 미리 알고 추후 어떻게 나아갈지 예언자적 능력을 지니셨으니까)

익명 사용자의 이미지

워드91은 없는디요...

워드버전은 ... 4,5,6,95,97...이런식인디여..

익명 사용자의 이미지

한가지 어플이나 OS를 만든 회사는..
(머.. 물론 MS처럼 많이 많들수 있습니다.)
만들만큼 만들고.. 팔았을때..
그뒤에... 약.. 2~3년이 지난뒤에..
수익이 없겠죠...
수익을 내려면.. 무언가를 또 팔아야는데..
새로운걸 만들자니 배보다 배꼽이 더 커지겠고..
기존의 것에 패치를 하고.. 테이터 포멧을 약간 바꿔주고
새로운 기능 2~3가지를 넣고 업그레이드 버전이라고
팔거나 새 버전이라고 팔면.
또 2~3년 견디고.. 또 그러고.. -_-;;

익명 사용자의 이미지

소프트웨어 업그레이드 자체가 그리고 업그레이드 비용이 필요한 것이 문제가 아니라 업그레이드를 유도하는 마켓팅 전략이 문제인 것 같습니다.
확장된 기능과 개선된 인터페이스등등 자연스럽게 소비자의 업그레이드를 유도하는 방법만 쓰는게 아니라 데이터 포멧의 변환이라던가 이전 버전에 대한 지원 중단 등으로 거의 반 강제적으로 업그레이드를 유도하는 방식이 문제라는 겁니다.
특히 소위 말하는 킬러어플이라는 것들이 그런 성향을 강하게 보이고 있어서 때로는 거부감마저 듭니다.
소비자 입장에서는 분명 손해니까요..

익명 사용자의 이미지

동의합니다.
소프트웨어 업그레이드 그 자체는 개발자 입장에서 보면 당연한 일입니다.
하지만, 업그레이드 전략이 마케팅과 결부되어 횡포를 부리게 되는
면이 문제라고 봅니다.

익명 사용자의 이미지

우선 기능이 개선되거나 새로운 기능이 추가되는 것이 새로 만드는 것 만큼 인력과 비용이 투자됩니다.

소프트웨어를 개발해 보시면 아실 것입니다.

그래서 업그레이드에 비용이 발생하는 것이지요. 일부 기능 패치나 수정시에 비용을 받고 있는 경우도 있습니다.

그리고 새로운 업그레이드 구입의 필요성은 당연해 집니다. 이전 버전에서 동일한 기능을 제공한다면 구태여 업그레이드 할 필요성은 없으나,

대부분 이전보다 새롭고 이전기능을 더 편하게 개선한 제품이기 때문에 사용중인 제품의 새버전이 나온다면 경제적 비용이 허락된다면 누구나가 다 새버전을 원할 것입니다.

예를 들어서 당신이 워드를 사용하고 있다고 합시다. 표그리기가 가끔은 사용되는데 불편하다, 새버전에서는 그 기능을 편하게 사용할 수 있도록 해 놓은 동시에 그 표그리기에다가 그림도 넣을 수 있도록 해 놓았다. 당신은 경제적 구입이 가능하다. 어떻게 하겠습니까?

아마도 당신은 사용중인 이전버전을 계속 고집하겠죠. 왜냐하면 당신의 질문 의도가 그것이 왜 필요한지 모르니깐요.

거의 대부분 일부러 넣을 수 있는 기능을 돈을 벌기위해서 새버전에 넣는 경우는 없습니다. 당시의 개발기술능력이 그 정도가 최대이기 때문에 그렇게 한 것이고 그것이 만들어진 다음에는 그것을 다듬을 능력이 생긴 것이지요.

처음부터 완전하게 업그레이드가 불필요한 제품개발같은 것은 불가능합니다. 한번 머리속으로 구상해 보세요.

기술은 이전 것을 바탕으로 계속 발전하는 것입니다. 특히 소프트웨어는 사람들의 머리속에서 발전하는 것이어서 처음부터 완전해 질수는 없기 때문에 부득불 새버전이 나오는 것입니다.

익명 사용자의 이미지

새로운 기능이 필요가 없다면 업그레이드는 필요가 없죠.

필요없는 기능을 가진 프로그램을 쓰는 것은 가장 최악이라고 생각합니다.

그 최악을 당연하게 선택해야하는 ms사의 마케팅도 최악이구요.

익명 사용자의 이미지

뭐가 그렇게 불필요한 기능인가요?

블루스크린? 같은 거 말구요 :-(

익명 사용자의 이미지

Internet Explorer에서 ftp를 폴더처럼 보기, Active Desktop, Visual Basic Scripting .. 저는 저것들은 죽어도 안씁니다.

ftp는 자세히 보고있고..
Active Desktop은 TweakUI를 써서 거의 원천봉쇄(?)하고 있고..
Visual Basic Scripting을 쓰느니 차라리 bat파일이나 본셸 스크립트(!)를 돌리겠습니다..

익명 사용자의 이미지

재밌는건 최악의 마케팅전략을 가진 회사가 가장 많은 수익을 올리는거죠?:)

익명 사용자의 이미지

그래서 우리가 MS를 욕하는 거죠. :)

익명 사용자의 이미지

그럼, 엔지니어가 아닌, 세일즈맨으로썬 존경할 수 있다는말?