본문 바로가기
일상

[일상] 트위터의 추천 알고리즘 공개 (is_elon)

by IT황구 2023. 4. 1.
728x90
반응형

 

아주 재미있는 일이 있었습니다.

 

트위터에서 추천알고리즘을 오픈소스로 공개해버렸습니다.

 

처음에는 오픈채팅에 올라온 글을 보고 호기심에 커밋을 들어가봤는데.. 알고보니 일론 머스크가 의도적으로 소스코드를 공개한다고 공약을 했었더라구요.

 

빅테크의 핵심 소스코드 공개라.. 좋은 일입니다. 좋은것은 배우면 되니까요.

 

그런데...

 

소스코드에 이상한 내용들이 있었습니다.

 

글 작성자가 is_elon, is_power_user, is_democrat 등등..

 

정치 성향에 따라서 추천도 다르게 된다. 라는것도 놀랐고.. (정치 성향은 어떻게 판단하는거지?)

 

일론 머스크가 쓴 글인 경우도 추천 조건에 있었습니다. 이게 뭐지..?

 

어떤 기사에 일론 머스크가 자신의 게시글이 많이 추천되게 알고리즘을 수정했다는 내용이 있었는데.. 이게 진짜였다니..만우절 낚시일까요? 그러기엔 소스코드의 양이 너무 방대했습니다. 그리고 공개는 3.31로 되어있었구요.

 

  • 특정 집단이 얼마나 자주 좋아요 같은것을 받는지 체크하기 위해서 수집목적으로 코드를 넣었나봅니다. 흠....

 

저런 충격적인 사실 외에도 관종들이 우르르 나타나기 시작했습니다.

 

  • 트위터의 속도를 빠르게 하기 위해 추천 알고리즘의 모든 파일 삭제(?)
  • ㅋㅋㅋ "what is this garbage" 도 굉장히 웃겼습니다.

 

개발적인 내용으로 넘어가보면..

 

소스코드들이 너무 많아서 다 보기 어려웠지만, 2가지 정도 특징이 있더라구요.

 

1. twitter는 constant를 Pascal 케이스로 작성합니다.

일반적으로 const THIS_IS_CONSTANT = 'thisIsConstant' 는 많이 봤던것 같은데 여기는 Pascal 이구나.. 였습니다.

 

2. TODO에 이름을 써둔다.

TODO. 예약기능 추가 -> TODO (rbals). 예약기능 추가 이런 형태입니다.

개인정보가 들어가있어서 황급히 지우긴 했지만, 아 이런 스타일로 작업하는구나. 라고 알 수 있었습니다.

 

GitLens에서 어짜피 다 나오긴 할텐데, 파일이 계속 수정되고 덮어씌워지는 과정에서 찾기가 어렵기 때문이 아닐까? 라고 추측합니다.

 

JS 코드 같은것들이 많았다면 좀 더 배울것이 있었을텐데 아쉽습니다..

 

아무튼 재미있는 하루였습니다..

 

 

728x90
반응형