칸 아카데미 - Go언어 50만 라인으로 동작중
(blog.khanacademy.org)- 2019년에 Python2 에서 Go로 이관하는 Goliath 프로젝트 시작
- 시작할때는 아무도 Go를 몰랐지만, 이제는 많은 엔지니어들이 "읽고 쓰기 쉬움", "일할수록 Go가 좋아짐" 이라고 얘기함
- Generic 이 없는게 불만이었지만, Go팀이 만드는 중
- Go의 언어 기능이 부족해서 Python 코드 포팅시에 더 많은 노력이 필요하지만, 코드는 더 일관되고 빠르게 읽을 수 있음
- 파이썬 대비 엄청난 속도 형상
ㅤ→ Google Cloud Datastore 의 contention warning 이 한시간에 100여개씩 뜨던 벌크 업데이트 파이썬 코드를 Go로 바꾸고 warning 거의 하나도 없이 동작
- 일반적으로 파이썬에 비해 더 많은 코드를 작성해야 하긴 하지만 (Verbose), 더 빠르고, 툴들이 좋고, 프로덕션에서도 잘 동작함
Go 의 장점인 심플함이 좀 사라지는 느낌이긴 하지만,,
제네릭으로 해결할 수 있는 문제들을 지금은 interface 패턴으로 만드는게 깔끔해보이지 않아서
전 제네릭 추가에 긍정적이긴 합니다.. ㅎㅎ
- 칸 아카데미, 백엔드언어를 Python2에서 Go로 변경 https://news.hada.io/topic?id=1128
Go 개발자가 없는데 언어 변경을 시작했다는게 나름 놀랍기도 하네요.
처음에 변경 시작 한다는 글에서는 그런 내용이 없어서 Go 개발자도 꽤 있나 보구나 했거든요.
일반 조직에서라면 저런 시도를 하겠다고 하면 아마 엄청난 반발이 있었을텐데, 비영리 조직이어서 가능했던게 아닐까 생각도 듭니다.