GitHub Copilot 사용기

깃헙 코파일럿을 몇 개월간 php 개발에 써 본 후기.

결론부터 말하자면 “구글링을 확 줄여줄 정도로 아주 발전되고 편리한 자동완성 기능” 그 이상 이하도 아닌 듯.

예를 들어 a만 쳐도 a로 시작하는 함수와 메소드가 나오고, 어떤 변수를 넣어야 하는지 알려주는 자동완성 기능은 원래 편집기에 있었다. 그 덕분에 str로 시작하는 함수가 어떤 것은 _가 들어가고 어떤 것은 안들어가도, strpos에는 찾는 단어가 두번째 인자인데, preg_match에는 찾는 단어가 첫번째 인자인 식으로 개판이어도 우리는 매번 구글 검색 안해도 별로 실수를 하지 않는다.

깃헙 코파일럿은 여기에서 더 나아가서, 함수를 만드는 단위도 자동완성을 시켜준다. 주석을 영문으로 해도 좋지만, 한글로 쳐도 꽤 자동완성을 시켜준다. 또한 반복적이거나 뻔한 내용이면 아주 지능적으로 다음에 입력할 몇 줄을 변수명 바꿔가며 자동완성 시켜주기도 한다.

하지만 함정이 있다. 유튜브에서는 마치 주석만 입력해도 개발을 다 해줄 것처럼 묘사하는 영상이 있지만 생각처럼 그런 경우는 많이 없다. 오히려 자동완성된 함수에서 미묘하게 틀린 부분이 있어서 그걸 찾아내는데 시간이 더 걸린 경우도 있다. 배열로 받아야 하는데서 boolean으로 받아 놓고 한참 뒤에 그거 foreach 돌리고 있는데 예외처리까지 되어 있어서 에러는 안나고 왜 결과가 안나오지? 하게 만든다던지, 한번 쓱 보기엔 문제가 없고, IDE의 기능으로도 문제를 검출하지 못하는데 자세히 봐야 결함을 알 수 있는 경우가 많다. 자동완성식으로 작동하는 AI의 특징인듯.

즉 코파일럿은 디버깅이나 코드 읽는 것이 꽤 되는 사람이 쓸 수 있는 기능이다. ‘부조종사’라고 하기엔 좀 무섭다. 조종간은 꼭 붙잡고 있어야 하는 것이 테슬라의 오토파일럿과 비슷하달까. php말고 파이썬 같은게 훨씬 정확하다는 말도 있던데 글쎄 안써봐서…

의외로 좋았던 점은 주석 넣기 자동완성이었다. 개인적으로 주석을 쓰고 코딩을 하기도 하지만 마구 코딩을 하고 나서 나중에 주석을 추가하는 경우가 많은데, //를 입력하면 해당 코드에 적절한 주석을 제안해주는 경우가 꽤 많았다. 심지어 내가 자주 사용하는 날짜 이름 내용 형식까지 흉내 내서 주석을 제안해주니 편하더라.

어째튼 저작권 문제를 논외로 하면 편하고 쓰면 좋은 서비스인데, 월 10달러는 너무 심하고, 5달러면 아깝지 않겠는데…싶다. ChatGPT로 눈높이가 높아져만 가는 상황이라 더더욱.

ps. Tabnine 도 써봤는데, 코파일럿의 하위호환이다. 한글로 소통이 안된다는게 가장 단점이고, 무료로도 제한적인 기능(한줄 완성)으로 쓸 수 있다는 점 정도가 장점.

ps. 깃헛 코파일럿은 유로라서 쓰기 싫고, 무료 중에 비슷한 것을 원한다면 Codeium이 가장 나은 선택이다. 똑똑함은 깃헙 코파일럿보다 20% 모자라긴 한데, 언어 지원도 좀 더 폭 넓고 나름 비슷하게 자동완성을 해주고, 한글도 잘 인식한다. 채팅기능도 있어서 ChatGPT처럼 활용 할 수도 있고 코드 리뷰도 해준다.

글쓴이 : Draco (https://draco.pe.kr)
크리에이티브 커먼즈 라이선스
이 저작물은 크리에이티브 커먼즈 저작자표시 4.0 국제 라이선스에 따라 이용할 수 있습니다.

댓글 2개

  1. copilot은 안써보고(다른 직원만..)
    전 chatGPT만 조금 써봤는데(무료)
    학습셋의 기간으로 인해서 chart.js를 써보려는데 영 원하는 결과를 얻기 힘들고
    신뢰할 수 없는 그럴싸한 내용을 적어주는게 오히려
    초보자용이 아닌 고삐풀린 말을 잡을 수 있는 고인물들이 오히려 써야 하는
    ‘정상적’으로 다루기 어려운 적토마 같은 느낌이 었습니다.

    copilot은 동료가 쓰는걸 봤는데
    drawline( 하니 알아서 drawpoint로 추천해 주더라구요
    도대체 어디서 나온 코드인지..
    drawpoint를 다시 하면 먼가 그려주긴 한데 플랫폼에 대한 문맥없이
    무지성으로 추천하는 느낌이랄까요 하하하

    1. 맞아요. 자동완성 AI라서 대화 같은건 참 자연스러워 졌는데 , 코딩은 문제 있는 코드를 자주 줍니다. 그런데 참 자연스럽게 짜놔서 문제를 한눈에 찾기 난이도가 높아요 ㅋㅋㅋㅋ

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.