Desbloqueando o

Desbloqueando o "Algoritmo" do Twitter - Introdução a Grafos

135.931 Lượt nghe
Desbloqueando o "Algoritmo" do Twitter - Introdução a Grafos
O Twitter liberou parte do código que chamou de "The Algorithm", que forma o sistema que popula a aba de recomendações "Para Você". Vamos entender qual é o contexto de ciência da computação e história necessários pra começar a entender esse código todo. E uma pequena introdução à ciência por trás de recomendações e grafos em geral. Finalmente, vou poder mostrar na prática a diferença de "código de curso" e "código de verdade" e exatamente porque software nunca acaba. ## ERRATA Vira e mexe eu falo nó e vértice mas o correto são nó e arestas. Eu estou acostumado a falar em inglês só nodes e edges e traduzi errado em português. ## Capítulos 00:00:00 - Intro 00:00:57 - CAP 1 - Avisos e Descrevendo o Repositório 00:02:51 - CAP 2 - Interpretando Errado: Não Acredite em Blog Posts 00:07:14 - CAP 3 - Derrubando o Meme: Pessoas Idiotas 00:11:30 - CAP 4 - Objetivos do Video: derrubar os Clones. Código de Verdade 00:16:37 - CAP 5 - Entendendo Grafos. Introdução a Relevância 00:21:47 - CAP 6 - Primeira Geração de Relevância: WTF 00:27:49 - CAP 7 - Relevância nos Primórdios da Web: PageRank e HITS 00:35:43 - CAP 8 - Segunda Geração de Relevância: RealGraph e SALSA 00:39:22 - CAP 9 - Escalando com Hadoop e MapReduce: HDFS e Pig 00:43:15 - CAP 10 - Algoritmos Escaláveis de Grafos: Relembrando Mergesort 00:46:58 - CAP 11 - Terceira Geração de Relevância: GraphJet 00:50:36 - CAP 12 - Earlybird: Light Ranker. Apache Lucene 00:51:37 - CAP 13 - Ids para Sistemas Distribuídos: Snowflake 00:55:23 - CAP 14 - Serialização Eficiente sem JSON: Thrift e Protobufs 01:01:07 - CAP 15 - A Controvérsia do "Rails Não Escala". Por que Scala? 01:07:37 - CAP 16 - Introdução a Similarity Clusters: Similaridade de Cosseno 01:16:08 - CAP 17 - Resumindo os demais Projetos: Aplicando o que Aprendemos 01:20:22 - CAP 18 - Qualidade do Código: Mini-Assessment 01:22:43 - CAP 19 - Sendo Educado na Web: Memes Idiotas 01:24:32 - CAP 20 - Refletindo sobre o Código: Lições a Aprender 01:27:31 - Bloopers ## Links * Fio no Twitter (https://twitter.com/AkitaOnRails/status/1641887891327537158?s=20) * Twitter: The Algorithm (https://github.com/twitter/the-algorithm) * Twitter: The Algorithm ML (https://github.com/twitter/the-algorithm-ml) * Twitter's Recommendation Algorithm (https://blog.twitter.com/engineering/en_us/topics/open-source/2023/twitter-recommendation-algorithm) * Steven Tey: # How the Twitter Algorithm works in 2023 (https://steventey.com/blog/twitter-algorithm) * Aakash Gupta: The Real Twitter Files: The Algorithm (https://aakashgupta.substack.com/p/the-real-twitter-files-the-algorithm) * Earlybird: Real-Time Search at Twitter (https://stephenholiday.com/notes/earlybird/) * Twitter Search is Now 3x Faster (https://blog.twitter.com/engineering/en_us/a/2011/twitter-search-is-now-3x-faster) * Paper: GraphJet: Real-Time Content Recommendations at Twitter (https://www.vldb.org/pvldb/vol9/p1281-sharma.pdf) * Paper: RealGraph: User Interaction Prediction at Twitter (https://www.ueo-workshop.com/wp-content/uploads/2014/04/sig-alternate.pdf) * Paper: Real-Time Twitter Recommendation: Online Motif Detection in Large Dynamic Graphs (http://www.vldb.org/pvldb/vol7/p1379-lin.pdf) * Paper: Discovering Similar Users on Twitter (http://snap.stanford.edu/mlg2013/submissions/mlg2013_submission_20.pdf) * GitHub: FlockDB (https://github.com/twitter-archive/flockdb) * GitHub: Cassovary (https://github.com/twitter/cassovary) * GitHub: GraphJet (https://github.com/twitter/GraphJet) * Twitter: Finagle (https://twitter.github.io/finagle/) * Apache Avro (https://avro.apache.org/) * AkitaOnRails: Chatting with Blaine Cook (Twitter) (https://www.akitaonrails.com/2008/6/17/chatting-with-blaine-cook-twitter) * Fireship: Vector databases are so hot right now. WTF are they? (https://www.youtube.com/watch?v=klTvEwg3oJ4) * Slideshare: Restrição == Inovação (https://www.slideshare.net/akitaonrails/devconf-2019-so-carlos) * Elastic: Vector Search (https://www.elastic.co/what-is/vector-search) * Transcript: https://www.akitaonrails.com/2023/04/11/akitando-140-desbloqueando-o-algoritmo-do-twitter-introducao-a-grafos * Podcast: https://podcasters.spotify.com/pod/show/akitando/episodes/Akitando-140---Desbloqueando-o-Algoritmo-do-Twitter---Introduo-a-Grafos-e225io4