Copilot 사용 소감

소개 및 셋업방법: https://hackmd.io/@hpmsmt/github-copilot-setup

  • AI 코딩 툴인 Copilot을 개발팀에 도입하고자 소수의 인원으로 사용테스트해보고 결과를 공유하고자 합니다.

  • 아래 예시를 보시고 사용 소감을 작성해 주세요. 꼭 예시처럼 쓰지 않고 마음대로 써도 됩니다. 의견도 좋구요.

:warning: 가감없이 솔직하고 편하게 적어주시길 부탁드립니다.


박신영 2022.10.28

  • 소감:
    -반복작업이 필요 시 유용 합니다.
    -단순 로직의 경우 추천 로직이 의외로 정확할 때가 있습니다.
    -속도가 느립니다.
    -의도하지 않은 로직추가로 인해 오류가 발생 할 수 있습니다. 이 경우, 오히려 업무에 지장을 줍니다 (Critical)
    -복잡한 로직의 경우 사용할 수 없기에 아직까지는 크게 효율성이 없는 것 같습니다.
    -아직 모든 IDE지원이 되지 않습니다.(비주얼스튜디오의 경우 2022부터 제공)

  • 확대적용의견 : 단순 작업의 경우 유용하게 쓸 것 같습니다.


김숙진 2022.11.01

  • 소감:

    • 코드 정리작업 시, 기존의 로직에 맞추어 정리된 코드를 추천해줍니다. - 정리시 편리함.
    • 사용자의 로직 작성 패턴을 분석해서 추천해주는 것으로 보입니다. 본인의 작성 스타일에 맞추어 셋팅해주기 때문에 타이핑을 줄일 수 있으며, 때때로 의도했던 부분을 정확하게 셋팅해줄 때가 있습니다.
    • 한글/영문 함수 검색이 가능하며, 기본적인 구문까지 함께 추가해주는 점이 편리합니다.
    • 자동완성 tab과 기능이 중첩되기 때문에 종종 의도치 않은 로직이 추가될 때가 있어 위험합니다.
  • 확대적용의견 : 생각했던 것 이상으로 소소하게 도움이 되는 편입니다.


박상지 2022.11.03

  • 소감:

    • Visual Studio Assist 같은 느낌입니다.
    • 제시해 주는 코드는 맞을때도 있고, 전혀 다를때도 있지만 참조해서 코딩할 수 있어 도움이됩니다. 함수명, 변수명만 제시하는 것 아니라 구문으로 제시해 주어 좋습니다.
    • 자동완성(?) 개념이 아니라서 더 좋은 것 같습니다. 제시된 코드를 확인해서 typing하면서 수정할 수 있어서 편한 것 같습니다.
    • 생각보다 정확한 구문과 사용된 변수명을 제시합니다.
    • Ctrl+Enter Key Combination을 활용하면 "Open Copilot"이라는 option이 활성화 됩니다.
      이미 다 작성된 코드의 함수부분에 클릭 후 실행하면 함수내의 전체 코드를 분석하여 코드를 추천해줍니다. 추천하는 코드내용은 오른쪽 화면에 최대 10개까지 제시해줍니다.
      불필요한 코드라인 정리, 사용하지 않는 변수 삭제 등 Code refactoring에 활용하면 좋을 것 같습니다.
  • 확대적용의견 : VS Code 사용자이면 개발에 도움이 될 것 같습니다. 비용적인 부분이 고려되어야 겠지만 확대적용 찬성입니다.


이정은 2022.11.04

  • 소감:

    • 간단한 함수나 구문을 자동완성할 수 있게 해주어 도움이 된다고 느꼈습니다.
    • 데이터 분석을 주피터 노트북이라는 웹 플랫폼을 이용해 하고 있는데, VS Code와 연동하면 주피터에서도 동일하게 코파일럿을 사용할 수 있어 좋았습니다.
    • 주피터와 코파일럿의 단축키(Ctrl+Enter)가 겹쳐 해당 기능을 사용하지 못하는 점은 조금 불편했습니다.
    • 주석을 좀 더 쓰게 되어 친절한 코드 작성이 가능합니다.
  • 확대적용의견 : 전반적으로 도움이 된다고 느껴 확대적용 찬성합니다.


추가로 확인해 보면 좋을 것들

  • 코파일럿을 반복작업/단순작업에 활용하여 괜찮다는 의견이 많은것 같습니다.
  • 잘 모르는 부분을 새롭게 시작할때에 코파일럿이 유용하다는 전문가들의 의견이 있으니 다음과 같은 분야에 한번 사용해 보시기를 권유드립니다. (자세한 내용 링크: https://github.blog/2022-09-14-8-things-you-didnt-know-you-could-do-with-github-copilot/)
    • 새로운 언어(Rust, Go 등) 사용시
      • 특히 정규표현식(RegularExpression)사용시 유용
      • SQL 문법 작성시 유용
    • 새로운 플랫폼(node, pytorch 등) 사용시
    • 새로운 API(카톡, 구글지도API 등) 사용시
    • 테스트 코드 작성시
  • 12월 초에 관련하여 소감을 한번 더 모아보겠습니다. 감사합니다.

박형근 2022.11.21

  • 사이드 프로젝트에 Copilot을 사용해 보았는데 현재까지 거의 90%의 코드를 코파일럿이 작성해줌 ㅎㅎㅎㅎ
  • HTML, CSS 도 코파일럿이 작성해줌
  • 아주 세세한 부분은 내가 수정해야 함. 그래도 처음에 뭘해야 할지 모를때 강력하게 도움이 된다.
  • 사이드 프로젝트 사이트 : https://add-svr.herokuapp.com/room
  • 깃헙 : https://github.com/phg98/add-server

박홍균 2022.11.21

  • 반복적인 작업(버튼 만들기, AJAX 호출함수 만들기 등등)을 하다보면 자동으로 만들어주는 코드셋트가 아주 편리합니다.
  • 'Confirm' 알림창을 생성할때, 변수명에 따라 자동 한글로 '삭제하시겠습니까?', '추가하시겠습니까?' 와 같은 코멘트를 자동으로 만들어주어서 놀랐습니다.
  • 구글링 하기가 귀찮을때 도입부 몇자만 입력해놓고 코파일럿이 만든 코드가 나타나길 기다린 적도 더러 있습니다.

박상지 2022.11.21

  • VS Code에 적용하여 사용중인데, 반복적이거나 현재 작성하는 코드 이전에 작성한 적이 있는 코드를 추천해주는 기능이 코드작성에 매우 도움이 됩니다.(편하다)
  • 배열형태를 list에 append할때 배열의 행이나 열의 idx를 알려주기도 해서 놀랐습니다.
  • 쓰면 쓸수록 Copilot이 코드스타일이나 내용을 학습하는 것 같고, 그에따라 추천해주는 코드 내용도 코드를 작성한 시간과 비례하여 진화(?) 하는 것 같습니다.

박형근 2022.11.23


박형근 2022.11.30

  • 이제 마지막으로 사용 소감 및 최종 의견을 부탁드립니다. 최종의견은 하기 4가지 중 하나를 선택해 주세요.

    • 2점 : 계속 사용하고 싶고, 아주 좋아서 다른 개발자들도 사용하길 권장한다.
    • 1점 : 계속 사용하고 싶다. (굳이 다른 개발자에게 권장할 정도는 아니다.)
    • 0점 : 굳이 유료로 사용할 만큼은 아니다.
    • -1점 : 사용 안하는게 낫고 다른 개발자들도 안 쓰는게 좋겠다.
  • 예시 : AAA 작업을 할 때 BBB를 도와줘서 편리했음. 근데 CCC 작업을 할 때에는 DDD 현상이 있어서 더 안 좋았음. 최종의견은 1점 입니다.


박상지 2022.12.01

  • VS Code로 Deep Learning 알고리즘 구현할때, 필요한 함수나 라이브러리 추천되어 도움이 많이되고, 사용법을 인터넷으로 찾아봤을때 이해가 쉽게 됨. 추천해줄때 코드의 라인수가 많아지면 한줄 내지 두줄 정도만 적용되면 좋겠는데, 한꺼번에 적용되어 수정하는 것이 불편할 때도 있음. 최종의견은 2점 입니다.

이정은 2022.12.01

  • 데이터 분석 시 VS Code를 통해 주피터 노트북 지원하는 것은 좋으나, 익숙하지 않아 아무래도 잘 사용하지 않게 되었습니다.
    • 주피터 노트북 자체에서 지원이 되면 더 많이 사용하게 될 것 같습니다.
  • 그래도 처음 데이터 분석을 시도하는 분들께는 필요한 모듈이나 패키지를 추천해줘서, pilot project 하실 때 유용할 것 같습니다.
  • 최종의견은 1점입니다.(필요에 따라 사용하시면 좋을 듯 합니다.)

김숙진 2022.12.06

  • React, Node.js 환경에서 사용해보았습니다.
  • 작업 또는 리팩토링 시 기존에 본인이 사용하던 코딩스타일에 맞추어서 자동 셋팅해주는 부분이 편리하였고, 간혹 더 좋은 로직을 추천해주기도 하여 도움이 많이 되었습니다.
  • 모듈/함수를 사용할 때 구문을 셋팅해주어 구글링하는 일이 줄었습니다.
  • javascript 계열 언어를 사용하는 분들은 편의성이 많이 향상될 것으로 보이고, 특히 새로 시작하는 분들에게는 상당히 많이 도움이 될 것으로 보입니다
  • 최종의견은 2점입니다. (타 언어 사용자분들은 확인이 더 필요할 것으로 보이며, javascript 사용자에겐 추천!)

김연민 2022.12.06

  • Python에 Copilot을 적용하면 좋을 것 같고, 특히 AI 분야, 데이터 분석 하는 곳에 적용하면 좋을 것 같습니다.
  • Pandas, Numpy, 시각화하는 코드는 사람들 마다 조금씩 하는 방법이 다르고 기능이 많기 때문에 매번 인터넷에 찾아보는 부분이 많은데 Assist를 잘해주면 좋을 것 같습니다.
    • 아직 Jupyter Notebook을 지원하지 않는 것 같아 사용하기 어려웠습니다.
    • VSCode나 PyCharm에서 Jupyter Notebook을 띄우면 될 것 같은데… 해보지는 않았습니다.
  • 집에서는 개인적으로 사용할 것 같은데, 회사에서는 결제 프로세스가 복잡할 것 같아 사용이 꺼려집니다.
  • 최종 의견은 1점입니다. (비용이 크지 않아서 사용할 사람만 사용하는 것도 좋을 것 같습니다.)

박신영 2022.12.06

  • java, javascript 환경에서 사용해보았습니다.
  • 반복작업 및 swap sort 같은 간편 데이터 정제 작업 시 많은 도움이 됩니다.
  • 변수명 짓기가 어려웠는데 많은 도움 되었습니다.
  • 하지만 회사의 주 언어인 C++과 C#의 경우 테스트 케이스가 부족한 것 같습니다.
  • 또한, 회사 내부 사용 시 Github접속 관련하여 결제가 필요하기 때문에 기존 회사 프로세스상 많인 어려움이 있을 것 같습니다.
  • 최종 저의 의견은 1점입니다.

최종 결정 2022.12.12

원하는 사람에 한하여 적용하기로 함.

활용신청한 사람은 아래와 같습니다. 추가로 원하는 분은 박형근에게 알려주세요.

  • 박형근 수석
  • 박신영 선임
  • 김숙진 선임
  • 박상지 책임
  • 문철곤 수석