Open Source Software, Open Source, Open Data

Posted on

Data.gov, OSS(Open Source Software), 개발 코드 공개(Open Source), 공공 데이터(Open Data) 3박자의 조합을 보여주는 대표적인 공공 웹사이트로, 보통 ‘미국 연방 정부 데이터 저장소’로 이야기합니다.

Data.gov

영국의 경우 공공정보 통합 포털 사이트 Data.gov.uk (Opening up government) 웹사이트를 운영하고 있으며, OSS(Drupal, CKAN)를 플랫폼으로 사용하고 있습니다.

Data.gov.uk

호주의 오픈 공공 데이터 서비스(Australian Government Data) Data.gov.au 웹사이트는 CKAN 오픈 소스 소프트웨어를 사용하고 있습니다.

Data.gov.au

워드프레스와 Data.gov

열린정부, 공공 데이터, 개방과 빅데이터 전략의 일환으로도 표현할 수 있는 ‘Data.gov’ 웹사이트는 워드프레스CKAN 오픈 소스 소프트웨어를 사용하고 있으며(여기), 모든 소스 코드는 GitHub 저장소에서 공개(공유)하고 있습니다. 말할 필요도 없이 데이터는 웹사이트에서 공개되고 있습니다.

  • Open Source Software : WordPress, CKAN
  • Open Source : GitHub(Theme, Plugins, etc)
  • Open Data : Tools, and Resources to Conduct Research, Develop Web and Mobile Applications, Design Data Visualizations, and more

GitHub 저장소를 보면 themes 및 plugins 디렉터리, acf.xml 파일이 눈에 먼저 들어옵니다. Data.gov 웹사이트에서 사용하는 테마와 플러그인이라고 짐작할 수 있는데 워드프레스 사용자라면 친근한 이름일 것입니다. 파일 acf.xml은 Advanced Custom Fields 플러그인을 사용하여 생성한 필드의 Export 파일로 짐작하는데 필드 데이터까지 공개한다는 것이 이례적입니다. 어쨌거나 정부 기관 웹사이트의 소스 코드를 체계적으로 관리하고, 저장소 서비스를 이용하여 그 소스를 공개, 공유하는 것은 ‘완전한 공공 데이터’의 완성이 아닐까 합니다.

Data.Gov GitHub

워드프레스에 충실한 Back-End

공개소스를 다운로드 받고, 테마와 플러그인을 설치해보면 워드프레스의 사용자 정의 기능인 ‘커스텀 포스트 타입(Custom Post Types)’, ‘분류(Taxonomies)’, ‘필드(Custom Fields)’를 조화롭고 간단하게 적용했으며, 필요한 워드프레스 공개 플러그인을 사용하여 불필요한 개발의 과정을 최소하기 위한 노력(생각)도 보입니다.

Back-end, Plugins
Back-end, Plugins

사용자를 위한 쉽고 단순한 Front-End

공개 테마(roots-nextdatagov)를 활성화하고 Front-end를 보면 단순함 그 자체입니다. 십 만개 가까운 데이터 셋(Data.gov 웹사이트에서 데이터 단위로 사용)이 존재하고 계속 증가하지만, 사용자가 원하는 데이터를 찾는 과정은 너무나 쉽고 편하다는 느낌이 듭니다. 또 실제 운영되는 Data.gov 웹사이트 템플릿과 똑같다는 것도 알 수 있습니다.

Front-end
Front-end

본질에 충실한…

오픈 소스 소프트웨어 기본에 충실한, 쉽고 간편한 웹사이트 구성은 ‘공공 데이터를 위한’ 본질에 충실한, 다시 말해 웹사이트 개발(정책) 자체에 거창한 의미를 부여하지 않았다는 것으로 생각합니다. 물론 이런 플랜을 구상(결정)하는 것은 쉽지 않을 것이며, 상황에 맞는 수정 개발 과정의 수고는 당연히 있었을 것입니다. 우리가 이 소스를 사용하려면 검토의 과정 등이 필요한 것은 당연하지만, 일부 요소만 활용해도 유용할 것으로 생각합니다. 그것은 기본에 충실한 소스(데이터)이기에 가능하리라 생각합니다.

Data.go.kr

우리나라에는 ‘공공데이터포털’이라는 이름으로 Data.go.kr 웹사이트가 있습니다. Data.gov 같은 정책 또는 데이터 활용과 수요 흐름에 발맞추기 위해 2011년 7월에 오픈했다고 합니다.

Data.go.kr

서울시에서 운영하는 ‘열린데이터 광장’ Data.seoul.go.kr 웹사이트도 있습니다.

Data.seoul.go.kr

피곤한 공공 웹사이트

Data.go.kr, Data.seoul.go.kr 웹사이트를 보면 우리의 웹사이트 표현의 습관을 또 확인할 수 있습니다. 첫 페이지에 많은 것을 노출하려는, 이미지로 특정 정보를 전달하는, 여백을 가만 놔두지 않는 관련 기관이나 서비스의 배너들, 회원가입•인증•약관 동의와 같은 지겹도록 반복되며 ‘공공’과 전혀 어울리지 않는 폐쇄적이고 어색하며 걱정 많은 안전 서비스 등 더 이상 나열하지 않아도 우리나라 사람이라면 충분히 상상할 수 있을 것입니다.

Data.go.kr 실명인증
Data.go.kr 실명인증
Data.seoul.go.kr 본인확인
Data.seoul.go.kr 본인확인

데이터를 다운로드 받는 것도 가입 또는 동의를 해야만 가능한데 어렵진 않지만 너무 피곤합니다.

Data.seoul.go.kr 약관동의
Data.seoul.go.kr 약관동의

개발을 위한 서비스?

위에 열거한 3개 나라의 공공 데이터 웹사이트에서는 느낄 수 없는, 실제 그렇지도 않지만 ‘개발자를 위한’ 웹사이트라는 느낌이 듭니다. 기술 요소(예, Open API) 공개로 공공 데이터를 활용한다는 방식은 좋지만 지나치게 강조하고 있으며, 공공 데이터를 이용하는 모든 이가 앱(Apps)이나 웹서비스 등의 개발을 목적으로 하지 않을 것이며, 개발자가 아니면 개발자가 만든 소프트웨어를 사용해야만 공공 데이터를 사용할 수 있다는 생각마저 듭니다. 데이터 제공자는 충실한 데이터 제공의 역할만 하고, 활용의 방안을 찾는 것은 각자의 역할이 아닐까 합니다.

Data.go.kr API

이왕 참고할 거면…

Data.go.kr, Data.seoul.go.kr 2가지 모두 오픈 소프트웨어를 사용한 것으로 보이지 않습니다. 그것이 중요한 것은 아니지만 재미있는 내용이 보입니다. 다음의 2가지 경로에 접속해 보면 오픈 데이터를 구글의 Fusion Table을 사용하여 활용하는 방법을 설명한 부분에서 서로 동일한 내용이 보입니다.

또 실제 데이터를 제공하는 Dataset 표현 방식을 보면 위의 3개 나라에서 사용 중인 방식과 유사합니다. 위의 3개 나라는 Data Catalog 표현에 CKAN 오픈 소스 소프트웨어를 사용하므로 표현 방식이 동일한것은 당연할 것입니다. 하지만 우리의 공공 데이터 Data.go.kr 웹사이트는 오픈 소스 소프트웨어를 사용하지 않지만 Dataset 표현에 다른 나라(또는 CKAN 오픈 소프트웨어)의 인터페이스와 방식을 참고한 것으로 보입니다.

방식은 참고하고 시스템은 직접 개발하는 것에 장•단점이 있을 것이며 그런 방식을 선택한 여러 이유가 있겠지만, 현재의 시스템 결과물을 보면 효율이나 본질보다는 정책 포트폴리오 추가에 가장 큰 우선 순위를 부여하지 않았을까 하는 생각이 듭니다.

Data.go.kr에서 Data.gov.kr로

Gov30.go.kr
정부 3.0, Gov30.go.kr

정부 기관의 웹사이트 또는 서비스는 어떻게 구성되었는지 궁금한 사람이 있을 것입니다. 만약 Data.go.kr 웹사이트가 Data.gov처럼 워드프레스와 CKAN 오픈 소스 소프트웨어를 사용하고, 그 소스 코드를 GitHub에서 공개한다면 공공 데이터를 떠나 그 자체만으로 많은 사람에게 유익하고 흥미롭지 않을까요.

Data.gov 웹사이트의 소스 코드를 다운로드 받고 자신의 상황에 맞게 활용하고자 할 때 가장 어려운 문제가 ‘언어’와 관련된 부분입니다. 정부 기관에서 해당 오픈 소스 소프트웨어를 사용하여 시스템을 구축할 때 번역 후 도입할 가능성이 높고, 공공 데이터 게재를 위해 생성한 분류나 항목들을 한글로 등록할것임은 확실할 것입니다. 그 소스를 활용하려는 사람이 그것만 참고해도 나름의 시스템을 구성하는데 큰 도움을 얻을 수 있으리라 봅니다.

거창한 Data.go.kr보다는 공공을 위한 Data.gov.kr이 되었으면 합니다.

7 thoughts on “Open Source Software, Open Source, Open Data”

  1. 또 왔습니다.^^
    공부를 하다가 데이터를 가져올려는데
    공공DB에서 데이터포멧 JSON+XML API 유형 REST
    이 유형으로 대부분되어 있는데
    워드프레스나 일반 코딩으로 데이터를 가져오고 싶은데
    PHP 로 가져오는 방법이 있는지요?

    자바라도 방법, 실제 소스를 보지 못해 이해를 못해
    조금 오랫동안 헤메고 있습니다.

    예제를 볼 수 있다면 부탁드립니다.

    1. 워드프레스 $wpdb 클래스로 외부 데이터베이스 연결하여 쿼리가 가능합니다.

      $ext_wpdb = new wpdb('username', 'password', 'database', 'host');
      $ext_wpdb->show_errors();
      

      바로는 안되고 다른 설정이 좀 필요할 겁니다.

      WordPress External database connect 키워드로 검색하여 플러그인도 좋고, 연결된 포스트를 따라 학습을 해야 합니다.

      워드프레스에서 데이터를 조작할려면 워드프레스 쿼리를 먼저 학습해야 합니다.

  2. 안녕하세요. 너무 좋은 자료 잘 읽고 있습니다.
    data.gov 를 설치해 볼려고 하는데, 설치법에 대해 궁금한 점이 너무 많은데, 서핑을 해도 잘 몰라서, 혹, 설치에 관련된 포스팅이 있으시면 초면에 실례를 무릎쓰고 부탁드리고합니다.

    최진백 드림

    1. 일반적인 테마 설치와 같습니다. 아래 링크에서 ZIP 파일을 받고 압축을 풀어 data.gov-master 폴더에 roots-nextdatagov 폴더가 있습니다. 이 폴더만 서버의 테마 경로에 올리세요. 그리고 이 테마를 활성화하면 됩니다.

      GSA/data.gov

      위 링크에서 roots-nextdatagov 폴더로 들어가면 해당 테마 설명이 있습니다.

      특별한 설치의 방법이 있는 것은 아닙니다. 파일들을 개별 기능으로 구분하여 인클루드하며, 템플릿 파일을 다양하게 만들어 놓은 것 정도입니다. 대신 대부분의 기능이 테마 파일에 직접 정의한 것이므로 이해가 필요합니다.

      functions.php 파일을 열면 인클루드 파일들의 위치와 간단한 설명을 확인할 수 있습니다.

      글을 작성할 때와 비교해서 변경된 부분이 많네요.

      1. 책 너무 잘 읽고 있습니다.
        덕분에 Custom Field 로 이제까지 어려웠던 많은 부분을 해결하고 있습니다.

        감사합니다.

        1. 감사합니다.

          워프13의 예제는 가능하다면 코드 편집없이 원하는 데이터를 표현한다는 기준으로 진행한 예제입니다. 배경지식이 있어야 하거나 코딩을 해야 특정한 표현이 가능함이 아님을 전달하기 위한 목적이 있습니다.

          하지만 템플릿 파일을 직접 편집하는 방법보다 어떤 부분에서 현실적, 실용적이지 못한 것은 사실입니다. 이것은 대부분의 웹 소프트웨어도 마찬가지고요.

          대신에 필드나 타입 등의 정의에 대해 프런트에서 선경험하는 것은 워드프레스를 사용한다면 꼭 필요하다는 생각입니다. 이 부분에서 도움을 얻으셨다니 기쁘네요.

          역시 간단하게, 이번에는 템플릿 파일 편집의 방법으로 구성한 예제의 전자책이 곧 나올 예정인데 진백님께 도움이 되지 않을까 합니다.

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.