Hacker News 의견
  • YAML 설정 파일에 대한 불만이 많음. GitHub Actions에서도 가장 나쁜 부분으로 여겨지며, 다른 독점적 설정 언어들(HCL, ASL 등)에 대해서도 비슷한 느낌을 받음. 선언적 API는 좋지만, 선언을 프로그래밍적으로 생성할 수 있게 해달라는 요구가 있음.

  • 코드로 설정을 선언하고 생성하는 것이 더 나은 경험을 제공함. AWS CDK가 이 부분을 정확히 이해하고 있으며, 타입 안전한 언어와 IDE 지원을 통해 설정과 클라우드 인프라의 선언적 정의를 작성할 수 있음.

  • YAML 템플릿이 비합리적이라는 데 동의하며, 복잡한 로직이 필요할 때는 실제 프로그래밍 언어를 사용하여 YAML/JSON 등을 생성해야 한다고 주장함. 이렇게 하면 많은 문제를 해결할 수 있음.

  • Kubernetes에 대한 논의가 있었으며, Kubernetes API가 직관적이고 잘 정의된 JSON 스키마를 가지고 있음에도 불구하고, 사람들은 Helm 차트 사용법을 배우는 데 시간을 많이 소비함. Jsonnet, Ksonnet, Nu, CUE는 큰 인기를 얻지 못했으며, 대부분의 사람들이 kubectl에 내장된 Kustomize를 사용하는 것으로 보임.

  • 개발자들이 설정을 어떻게 올바르게 처리해야 하는지에 대해 충분히 고민하지 않는다는 지적이 있음. 모든 프로그래밍이 사실상 설정의 문제라고 할 수 있으며, 모든 설정은 결국 어떤 함수의 매개변수로 전달됨. 설정을 중앙 데이터베이스에 저장하는 것이 더 나을 수 있음.

  • CI/CD에서 YAML이 거의 프로그래밍 언어처럼 사용되는 경우가 있는데, 이는 매우 장황하고 직관적이지 않으며, 제대로 정의되지 않은 벤더 특정 언어로 여겨짐.

  • Helm이 승리한 것에 대해 유감을 표함. Helm 차트 작업은 매우 불편하며, 에디터가 도움을 줄 수 없고, 모든 데이터를 'indent 4'를 통해 올바르게 정렬해야 함. Helm이 Kubernetes의 종말을 가져올 것이라는 예측이 있음.

  • 문자열 보간을 사용하여 기계가 읽을 수 있는 코드를 생성하는 것은 바람직하지 않다는 개인적인 철학을 가짐. SQL 인젝션과 크로스사이트 스크립팅과 같은 문제가 계속 발생할 것임. HTML을 생성하기 위해 템플릿 파일을 사용하지 않아야 한다고 주장함.

  • YAML을 선택하는 사람들이 문제를 인식하지 못하는 것 같다는 의견이 있음. 인간 중심의 데이터 표현과 컴퓨터 중심의 데이터 표현 사이에는 직접적인 충돌이 있음. YAML과 JSON은 실제로는 서로 다른 데이터 형식임.

  • YAML을 좋아하지만 Helm 차트 작업 시 매일 저주를 내린다는 의견이 있음. Helm을 싫어하면서도 모두가 사용하기 때문에 여전히 사용할 것이라는 입장을 보임.

  • cuelang으로 전환하는 것을 고려하고 있으며, 이는 Jsonnet보다 더 잘 설계되었다고 생각함. Kubernetes에는 이미 상태 조정 기능이 있으므로 삭제 기능만 추가되면 됨.