>  기사  >  기술 주변기기  >  가치 있는 소프트웨어를 작성하는 것이 항상 어려운 이유

가치 있는 소프트웨어를 작성하는 것이 항상 어려운 이유

DDD
DDD앞으로
2023-11-01 10:36:15966검색

저는 인공 지능이 앞으로 수십 년 동안 프로그래밍 산업을 어떻게 변화시킬지 관심이 있지만, 과장된 과장된 단기 예측에는 비판적입니다. AI는 지금으로부터 수십 년 후에도 여전히 가치가 있을 소프트웨어를 만들 수 없습니다. 이것은 해결하기 정말 어려운 문제로 남아 있습니다. 이는 우리의 효율성을 높이는 데 도움이 되지만 효율성 측면에서는 좋지 않습니다.

더 정확히 말하면 인공지능은 믿을 수 없는 직업이에요. 효과성은 올바른 것, 즉 인간으로서 우리에게 유익하고 우리에게 해를 끼치지 않는 것을 구축하는 것입니다. 자율주행차는 다른 차량이나 보행자와 충돌하지 않도록 설계되었지만 그 신뢰성은 기껏해야 미미합니다. 보안 조치는 지정하기가 상대적으로 쉽지만 구현하기는 매우 어렵습니다. 그리고 자율주행차의 수가 계속 증가함에 따라 일부 사람들은 매일 생사의 결정에 직면하게 될 것입니다. 기계는 다른 인간에게 가장 좋은 것이 무엇인지 결정하기 위해 순간적인 판단을 내려야 합니다. 한 사람의 필요보다 많은 사람의 필요가 더 중요하다고 주장합니다. 이와 같은 삶과 죽음의 결정에 있어서 우리는 확고하게 운전석에 앉아 우리가 원하는 미래를 형성해야 합니다.

현재 AI는 효율성 향상에 있어 훨씬 더 나은 작업을 수행합니다. 다양한 옵션을 대체하고, 상대적인 장점과 단점을 비교하고, 최적의 솔루션 조합을 제안할 수 있습니다. 그러나 AI가 더욱 똑똑해짐에 따라 판단이 필요한 논란의 여지가 있는 주제를 처리하는 데 AI를 더 이상 신뢰해서는 안 됩니다. 상황이 무서워질 수 있기 때문입니다. Nick Bostrom의 유명한 클립 메이커는 중요한 경고가 포함된 흥미로운 사고 실험입니다. AI는 사용자의 지시에 따라 최적화합니다. 만약 그것이 클립을 만드는 일이고 무한한 힘과 무한한 이타심을 가지고 있다면, 그것은 더 쓸모없는 문구류를 만들기 위해 은하계 전체를 벗겨낼 것입니다.

AI가 자기 인식을 하게 되더라도, 어두운 의도가 있든 없든 정의상 여전히 외계인이 될 것입니다(이는 "인공 지능"이라는 단어에 반영됩니다). 아이작 아시모프(Isaac Asimov)는 자율적인 인간 창조물에는 몇 가지 안전 조치가 내장되어 있어야 한다고 예측했습니다. 그의 로봇 공학 3원칙은 세계 최초의 전자 컴퓨터인 ENIAC보다 3년 앞서 나온 것입니다. 그러나 그는 사악한 천재가 첫 번째 로보캅 영화에서처럼 은밀한 펌웨어 업데이트를 통해 "해를 끼치지 마십시오" 규칙에 개인적인 예외를 추가할 것이라고는 예상할 수 없었습니다.

인공지능에 대한 비관적인 예측은 그만합시다. 제가 예측하는 것은(어떤 주요 이해관계자에게도 투자하지 않음) 프로그래밍 기술이 여러분의 요구 사항을 명확하고 모호하지 않게 표현하는 기술로 변모할 것이라는 것입니다. 개발자는 AI에 정통한 비즈니스 분석가가 되어 궁극적인 고급 프로그래밍 언어(예: 영어)로 AI와 대화하는 데 익숙해집니다. AI는 항상 작동하는 소프트웨어를 구축하며, 운이 좋으면 유용할 수도 있습니다.

작동하는 소프트웨어만으로는 충분하지 않습니다

애자일 선언문에서 작동하는 소프트웨어를 요구하는 것이 이상한가요? 마치 손상된 소프트웨어를 대체할 수 있는 것처럼 말입니다! 프롬프트에 의해 생성된 코드도 유용하고 가치 있다고 묻는 것은 무리인가요? 예, 아마도 너무 많은 것을 요구하는 것 같습니다. 가치는 무형이고 예측할 수 없기 때문에 작동하는 소프트웨어와 가치 있는 소프트웨어 사이에는 큰 격차가 있습니다. 완벽한 소프트웨어라 할지라도 자신의 잘못이 아닌 업그레이드로 인해 관련성을 잃을 수 있습니다. 여기 몇 가지 예가 있어요.

잊혀진 운영 체제 프로젝트 Chandler를 언급한 것은 이번이 처음이 아닙니다. Scott Rosenberg의 2007년 저서 Dreaming in Code는 Chandler 1.0을 향한 험난한 여정을 아름답게 설명합니다. 이는 지속적인 경고입니다. 최선의 의도, 헌신적인 최고 개발자로 구성된 팀, 관대한 후원자가 있더라도 성공이 반드시 보장되는 것은 아닙니다.

Chandler는 Microsoft Outlook 및 Exchange에 대한 무료 대안이 되기 위해 노력하고 있습니다. 완전히 다른 사용자 경험을 약속하며 메시지, 의제 항목 및 할 일 목록을 처리하는 방식에 혁명을 일으킬 것입니다. 데스크톱 애플리케이션을 통해 이 작업을 수행하고 P2P 프로토콜을 통해 통신합니다. 국민에게 힘을!

하지만 팀은 아키텍처 로드맵에서 실수를 너무 많이 했습니다. 이카루스처럼 그들은 태양에 너무 가까이 날아갔습니다. 세상이 그들을 따라잡았습니다. 더 뛰어난 브라우저 기능으로 인해 Python 기반 데스크톱 애플리케이션은 좋지 않은 선택입니다.

예기치 않은 GWT의 노후화

훌륭한 도구라도 원래의 고유한 장점이 더 이상 매력적이지 않기 때문에 쓸모없게 되는 경우가 있습니다. Google Web Toolkit(GWT)은 2006년에 강력한 주장을 했습니다. 당시 데스크톱 컴퓨터는 브라우저를 애플리케이션 플랫폼으로 지원할 만큼 강력했습니다. 소프트웨어를 설치하지 않고도 세금 신고를 완료할 수 있습니다. 그러나 당시에는 브라우저 호환성 문제가 있었으며 특히 끌어서 놓기나 두 번 클릭과 같은 고급 기능의 경우 더욱 그렇습니다. GWT를 사용하면 동일한 프로젝트에서 백엔드 및 프런트엔드 코드를 작성하고 데이터 전송 및 검증을 위해 공유 개체를 사용한 다음 이를 단일 웹 아카이브에 배포할 수 있습니다. GWT는 Java를 JavaScript로 컴파일하며 로컬 개발 서버를 사용하여 클라이언트 측 Java 코드를 디버깅할 수도 있습니다. 나는 그것을 즐겼고 그것으로 약간의 돈을 벌었습니다.

하지만 GWT 코드를 컴파일하는 데는 시간이 많이 걸립니다. 브라우저 공급업체는 점차적으로 호환성 문제를 해결해 왔습니다. Angular 및 React와 같은 프런트엔드 플랫폼은 빠르게 성숙해지고 있습니다. 프런트엔드 구축은 점점 더 중요한 직업이 되고 있으며, 이러한 개발자들은 프로그래밍 플랫폼으로서의 JavaScript를 거부하지 않는 것 같습니다. GWT는 관련성을 잃었고 인공지능이 이 문제를 예측하거나 해결하는 것은 불가능합니다. 문제는 코드가 아니라 코드와 주변 세계 사이의 불일치입니다.

코딩을 고수하세요

물론, 이 중 어느 것도 코드 작성을 방해해서는 안 됩니다. 진지한 소프트웨어는 상업적으로 유효하거나 실질적인 가치를 가질 필요가 없습니다. 나는 아마추어 오픈 소스 소프트웨어에 대해 이야기하고 있습니다. 저는 제가 자랑스러워하는 몇 가지 소프트웨어를 작성했지만, 그 소프트웨어에는 제가 받은 교육과 재미 외에는 사업 계획이나 로드맵, 다른 동기가 없었습니다. 새로운 개념을 가르쳐주는 데는 효과적이었지만, 제품 자체에는 관심이 없었습니다. GitHub에는 그러한 프로젝트가 많이 있습니다. 나는 누구에게도 기분을 상하게하려는 것이 아닙니다. 나는 단지 개인적인 경험에서 말하는 것입니다. 프로그래밍 자체에는 아무런 문제가 없지만 청중 앞에서 결코 연주하지 않을 밴드에서 연주하는 것과 같습니다. 계속 유지하기가 어렵습니다.

요약

인공지능은 앞으로 수십 년 동안 프로그래밍 산업에 큰 영향을 미칠 것입니다. 하지만 이것이 인간 개발자를 대체할 수는 없습니다. 대신, 보다 효율적이고 가치 있는 소프트웨어를 구축할 수 있게 될 것입니다. 그러나 우리는 AI의 한계를 인식하고 AI가 악이 아닌 선을 위해 사용되도록 해야 합니다.

위 내용은 가치 있는 소프트웨어를 작성하는 것이 항상 어려운 이유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 dzone.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제