“오늘 우산 필요해?” 사이트를 만든지 1년 3개월이 지났다. 이 사이트는 공공데이터포털의 API 3가지를 사용하는데, 각각 “기상청_단기예보 ((구)_동네예보) 조회서비스” , “기상청_기상특보 조회서비스”, “한국환경공단에어코리아대기오염정보” 이다.
그런데, 이 API들은 툭하면 응답시간이 10초 이상 걸린다.
가장 큰 문제는 단기예보 API에 있는 “초단기예보조회”인데, 이 API는 300초 이상 걸리는 경우도 하루에 몇 번 정도 있다. 날씨가 안 좋은 날에는 부하가 걸리는지 아예 timeout 이나 500 서버 오류가 나기도 한다.
“초단기예보조회”의 정확도도 문제인데, “초단기실황조회”에서 현재 날씨가 비가 오는데, “초단기예보조회”에는 비 예보가 하나도 없다던지 식으로 두 API가 안 맞는 경우가 많다. 뭐 예보가 틀릴 수도 있지만, 문제는 하루종일 비가 와도, 맑다는 예보는 수정을 안한다. 계속 맑음이란다. 네이버 날씨에 있는 기상청 자료는 그런 경우에 2,3시간 안에 새로운 예보로 갱신을 하던데, 단기예보 API는 수정되는 경우를 보지 못했다. 갑자기 날씨가 바뀌어도 항상 아침에 본 예보가 저녁까지 그대로이다. 비오는 것 뿐 아니라, 온도나 습도도 자주 틀린다.
이래서야 공공데이터로 유용한 사이트를 만들기는 힘들지 않을까? 혹시라도 개선될까 하고 지켜봤지만 그럴 기미가 없다. 그렇다고 해서 국내 날씨 정보가 정확하고 빠른 무료 API가 있는 것도 아니고…
파이어폭스 확장 기능 중에는 크롬처럼 페이지 전체를 번역해주는 확장기능이 있는데, 아쉽게도 파이어폭스 안드로이드에는 설치가 안된다. 파이어폭스 안드로이드에는 정해진 확장기능만 설치할 수 있기 때문.
방법이 있긴 한데, 파이어폭스 안드로이드 정식 버전은 안되고, 베타 버전과 나이틀리 버전에서만 가능하다.
방법은 다음과 같다.
파이어폭스 베타를 설치한다.
파이어폭스의 “설정” 메뉴로 들어가 맨 아래 “Firefox Beta 정보”를 선택한다.
정보 페이지에서 파이어폭스 로고를 5번 누른다. 그러면 디버그 모드가 활성화 된다.
다시 설정 화면으로 돌아가면 “고급” 항목에 “사용자 지정 부가 기능 모음집”이라는 메뉴가 추가되어 있다.
여기에 아래 그림 처럼 아이디 “13306517” 이름 “first”를 넣는다. (내가 모아 놓은 파이어폭스 안드로이드 기본 확장기능 + TWP 모음집이다.)
확인을 누르면 파이어폭스가 종료되고 재시작되는데, 부가 기능을 확인해 보면 TWP 번역 확장 기능이 추가되어 있다. +를 눌러 설치해서 사용한다.
위의 스크린샷 처럼, 외국어 사이트를 잘 번역해 주는 것을 볼 수 있다. 단점이라면 항상 아래쪽에 번역바가 성가시게 떠 있어서, 필요 없는 사이트 별로 “이 사이트 번역 안함”같은 설정을 해 주어야한다. 아니면 확장기능의 옵션중에 손가락 3개를 터치했을 경우 번역바가 뜨게 하는 기능이 있으니 그걸 써도 좋다.
결론부터 말하자면 “구글링을 확 줄여줄 정도로 아주 발전되고 편리한 자동완성 기능” 그 이상 이하도 아닌 듯.
예를 들어 a만 쳐도 a로 시작하는 함수와 메소드가 나오고, 어떤 변수를 넣어야 하는지 알려주는 자동완성 기능은 원래 편집기에 있었다. 그 덕분에 str로 시작하는 함수가 어떤 것은 _가 들어가고 어떤 것은 안들어가도, strpos에는 찾는 단어가 두번째 인자인데, preg_match에는 찾는 단어가 첫번째 인자인 식으로 개판이어도 우리는 매번 구글 검색 안해도 별로 실수를 하지 않는다.
깃헙 코파일럿은 여기에서 더 나아가서, 함수를 만드는 단위도 자동완성을 시켜준다. 주석을 영문으로 해도 좋지만, 한글로 쳐도 꽤 자동완성을 시켜준다. 또한 반복적이거나 뻔한 내용이면 아주 지능적으로 다음에 입력할 몇 줄을 변수명 바꿔가며 자동완성 시켜주기도 한다.
하지만 함정이 있다. 유튜브에서는 마치 주석만 입력해도 개발을 다 해줄 것처럼 묘사하는 영상이 있지만 생각처럼 그런 경우는 많이 없다. 오히려 자동완성된 함수에서 미묘하게 틀린 부분이 있어서 그걸 찾아내는데 시간이 더 걸린 경우도 있다. 배열로 받아야 하는데서 boolean으로 받아 놓고 한참 뒤에 그거 foreach 돌리고 있는데 예외처리까지 되어 있어서 에러는 안나고 왜 결과가 안나오지? 하게 만든다던지, 한번 쓱 보기엔 문제가 없고, IDE의 기능으로도 문제를 검출하지 못하는데 자세히 봐야 결함을 알 수 있는 경우가 많다. 자동완성식으로 작동하는 AI의 특징인듯.
즉 코파일럿은 디버깅이나 코드 읽는 것이 꽤 되는 사람이 쓸 수 있는 기능이다. ‘부조종사’라고 하기엔 좀 무섭다. 조종간은 꼭 붙잡고 있어야 하는 것이 테슬라의 오토파일럿과 비슷하달까. php말고 파이썬 같은게 훨씬 정확하다는 말도 있던데 글쎄 안써봐서…
의외로 좋았던 점은 주석 넣기 자동완성이었다. 개인적으로 주석을 쓰고 코딩을 하기도 하지만 마구 코딩을 하고 나서 나중에 주석을 추가하는 경우가 많은데, //를 입력하면 해당 코드에 적절한 주석을 제안해주는 경우가 꽤 많았다. 심지어 내가 자주 사용하는 날짜 이름 내용 형식까지 흉내 내서 주석을 제안해주니 편하더라.
어째튼 저작권 문제를 논외로 하면 편하고 쓰면 좋은 서비스인데, 월 10달러는 너무 심하고, 5달러면 아깝지 않겠는데…싶다. ChatGPT로 눈높이가 높아져만 가는 상황이라 더더욱.
ps. Tabnine 도 써봤는데, 코파일럿의 하위호환이다. 한글로 소통이 안된다는게 가장 단점이고, 무료로도 제한적인 기능(한줄 완성)으로 쓸 수 있다는 점 정도가 장점.
ps. 깃헛 코파일럿은 유로라서 쓰기 싫고, 무료 중에 비슷한 것을 원한다면 Codeium이 가장 나은 선택이다. 똑똑함은 깃헙 코파일럿보다 20% 모자라긴 한데, 언어 지원도 좀 더 폭 넓고 나름 비슷하게 자동완성을 해주고, 한글도 잘 인식한다. 채팅기능도 있어서 ChatGPT처럼 활용 할 수도 있고 코드 리뷰도 해준다.