우리 막내는 아홉 살이에요(그리고 반!) (반은 잊지 마세요!) 그는 현재 로봇에 푹 빠져 있습니다. 그냥 가지고 노는 게 아니라, 프로그래밍하는 거죠. 부모님이 둘 다 컴퓨터 과학에서 고급 학위를 가지고 계시기 때문에 우리가 이 특정 추세에 대해 매우 기뻐하고 격려하는 것을 상상할 수 있을 것입니다.
그러니 쉽게 배울 수 있는 프로그래밍 모델을 제공하는 로봇이 지금 우리 집에 있는 건 당연한 일이죠. 이번 여름 장난감 중 하나는 Wonder Workshop 에서 출시한 것으로, 로봇은 '블록'과 같은 언어를 통해 프로그래밍할 수 있습니다.
요즘 아이들에게는 이게 일반적이에요. 이 아이는 다양한 기기에서 수많은 '게임'을 하고 있는데, 모든 게임은 프로그램을 구성하는 데 동일한 '블록'과 같은 모델을 사용합니다. 심지어 그의 레고 마인드스톰 Ev3 로봇도 비슷한 메커니즘을 사용하는데, 여기서 프로그래밍 구조는 블록을 연결하여 만드는 것입니다. 변수와 조건은 선택하여 설정하며, 화면에 실제 '코드'는 표시되지 않습니다.
하지만 그것이 거기에 있다는 걸 알고 있죠.
제가 BPM(비즈니스 프로세스 관리) 솔루션을 평가하던 시절에는 비즈니스 이해 관계자가 프로세스를 정의할 수 있도록 비슷한 패러다임을 사용했습니다. 그 인터페이스는 프로세스의 특성을 반영했습니다. 즉, 드래그 앤 드롭 모델을 사용하여 흐름도를 만들었지만, 오케스트레이션의 많은 구성은 배우기 쉬운 인터페이스를 통해 이루어졌습니다. 요즘 제 막내가 사용하는 것과 똑같은데, Visio와 더 비슷해요. 생각해보니 Visio와 훨씬 더 비슷하네요.
아이들은 잊어버리세요. 이것이 바로 IT 자동화가 나아가야 할 방향입니다. 오늘날 IT 자동화에 내재된 복잡성에는 이유가 없습니다. 그 이유는 아직 아무도 IT 자동화를 더 장려하고 싶어한다면(그리고 본래 코더가 아닌 사람들에 의해) IT 인프라를 배포, 관리 및 구성하는 데 사용되는 IT 프로세스를 나타내는 워크플로를 구성하는 더 나은 방법을 찾아야 한다는 사실을 인식하지 못했기 때문입니다.
우리가 동의해야 할 첫 번째 사항은 프로그래매틱이 반드시 "원하는 것은 무엇이든 할 수 있다"는 것을 의미하지 않는다는 것입니다. 가장 자유로운 의미에서 맞는 말이지만, 그것은 또한 프로그램을 통해 행동을 바꾸거나 정의할 수 있는 능력을 의미합니다. IT에서 워크플로를 실행하는 데 필요한 작업은 제한적이며, 대부분은 오늘날 (다른) API 경제를 통해 가능합니다. 제한된 일련의 작업을 캡슐화하고 명확하고 이해하기 쉬운 논리 구조(if/then, while, 반복 함수)를 제공하는 인터페이스를 제공함으로써, 과거 기업에서 개발된 대부분의 소프트웨어보다 IT 운영에 훨씬 더 많은 기술적 부채를 초래하는 비정형 스크립팅 메커니즘에 대한 경향을 표면적으로 없앨 수 있습니다. 이러한 수준의 제한된 추상화를 통해 네이티브가 아닌 코더(네트워크 및 스토리지 엔지니어와 아키텍트)도 유지 관리가 매우 용이한 잘 구성된 워크플로를 생성할 수 있습니다(표준화를 촉진하는 중요한 요소). 워크플로를 실행하기 위해 서버리스 백본 과 결합하면 이 모델은 IT 운영에 적합한 워크플로를 만들고, 유지하고, 실행하는 데 필요한 투자를 줄여줍니다.
지속 가능성을 염두에 두고 IT 자동화에 접근해야 하기 때문에 이는 중요합니다. 오늘날의 스크립트는 훌륭하게 작동하지만, 미래에 사람과 프로세스에 따라 확장될 수 있을까요?
아마도 이렇게 간단한(혹은 화려한) 솔루션은 필요하지 않을지 몰라도, 인터페이스가 설계된 전제는 IT 자동화의 미래를 바라보고 결국 IT를 구동 하는 코드를 어떻게 구축(유지관리)할지에 따라 적응하는 것이 중요하다고 생각합니다. 안타깝게도 우리는 기본 시스템의 복잡성을 이를 상호 작용하고 제어하는 시스템(그리고 인터페이스)의 설계로 전가하는 경향이 있습니다. 우리는 가능한 모든 손잡이와 버튼을 노출시키고 싶습니다. 최소한, CLI의 자연스러운 복잡성을 API를 더 이해하기 쉬운 운영 작업으로 집계하는 방법을 제공하는 API 브로커가 있다면, IT 네트워크와 앱 서비스를 자동화하는 업무를 담당하는 사람들에게 큰 도움이 될 것입니다. 로그인은 매번 반복되는 여러 단계로 구성된 복잡한 과정일 수 있습니다. 이들을 단일 "서비스"로 구성하면 일관성 외에도 반복 가능하고 무한히 더 감사할 수 있습니다. 이를 (더욱) 직관적인 인터페이스와 결합하면 IT 자동화 부문에서 우승하게 됩니다.
오늘날 어린이를 위한 "코딩" 앱의 인터페이스는 사용자가 설명서 없이 ENIAC을 응시하는 것 같은 느낌을 받지 않고도 코딩을 할 수 있음을 입증합니다. 우리는 더 잘할 수 있습니다. 사업에 맞춰 내부 디지털 혁신을 확장하려면 그렇게 해야 합니다.