[{"data":1,"prerenderedAt":165},["ShallowReactive",2],{"page-orbit-news":3,"navigation":70},{"id":4,"title":5,"body":6,"date":57,"description":58,"draft":59,"extension":60,"hideYear":59,"meta":61,"navigation":64,"path":65,"readingTime":66,"seo":67,"stem":68,"__hash__":69},"projects/projects/orbit-news.md","Orbit - News analytics",{"type":7,"value":8,"toc":52},"minimark",[9,18,26,37,42],[10,11,12],"p",{},[13,14],"img",{":sizes":15,"alt":5,"format":16,"src":17},"400px sm:800px","webp","img/apps/orbit.png",[10,19,20,21,25],{},"I built scalable infrastructure (GCP) to scrape ",[22,23,24],"strong",{},"1.2M news articles per month"," from over 40 news sources across the web.",[10,27,28,29],{},"With TensorFlow machine learning (yes pre LLM days) I was able to classify news into distinct categories, sentiment and political leaning. I built a consumer-facing app to browse and surface trends, while also running experiments with real-time analysis. Orbit ran for two years. The most similar project to date is ",[30,31,36],"a",{"href":32,"rel":33,"target":35},"https://ground.news/",[34],"nofollow","_blank","Ground News",[38,39,41],"h2",{"id":40},"example-data-analysis-abortion-law","Example data analysis: Abortion law",[10,43,44],{},[13,45],{":sizes":15,"alt":46,"format":16,"src":47,"className":48},"Orbit - Abortion law","img/apps/orbit-abortion-law.png",[49,50,51],"border","border-gray-200","shadow-sm",{"title":53,"searchDepth":54,"depth":54,"links":55},"",2,[56],{"id":40,"depth":54,"text":41},"2018-01-01","News analytics",false,"md",{"tags":62},[63],"projects",true,"/projects/orbit-news",1,{"title":5,"description":58},"projects/orbit-news","EyIPMRYv4hFy8nr3f1ZqwUtdAtV_P2GD9GMUa0uOlvk",[71],{"title":72,"path":73,"stem":74,"children":75,"page":59},"Articles","/articles","articles",[76,82,88,94,100,106,112,118,124,130,136,142,148,154,159],{"title":77,"path":78,"stem":79,"description":80,"date":81},"Still haven't found what you're looking for?","/articles/ai-search","articles/ai-search","AI-powered search is transforming web search.","2024-10-31",{"title":83,"path":84,"stem":85,"description":86,"date":87},"Big Emoji","/articles/big-emoji","articles/big-emoji","Building an app for my kids.","2024-06-23",{"title":89,"path":90,"stem":91,"description":92,"date":93},"It probably won’t be you","/articles/it-probably-wont-be-you","articles/it-probably-wont-be-you","An interactive exploration of our lottery instincts.","2024-06-11",{"title":95,"path":96,"stem":97,"description":98,"date":99},"My memory is shot","/articles/my-memory-is-shot","articles/my-memory-is-shot","Discovering the link between writing and memory.","2024-04-28",{"title":101,"path":102,"stem":103,"description":104,"date":105},"Quotes","/articles/quotes","articles/quotes","A collection of quotes I've heard and written down at some point in my life.","2024-03-29",{"title":107,"path":108,"stem":109,"description":110,"date":111},"TikTok goes your clock","/articles/tiktok-goes-your-clock","articles/tiktok-goes-your-clock","What I learned from quitting TikTok","2024-03-26",{"title":113,"path":114,"stem":115,"description":116,"date":117},"User testing fail","/articles/user-testing-fail","articles/user-testing-fail","Attempting to think like a kid when designing a kids app.","2024-03-20",{"title":119,"path":120,"stem":121,"description":122,"date":123},"George Harrison's hands","/articles/george-harrisons-hands","articles/george-harrisons-hands","You can replicate the setup, but not the experience.","2023-01-17",{"title":125,"path":126,"stem":127,"description":128,"date":129},"Things I learned in 2022","/articles/things-i-learned-in-2022","articles/things-i-learned-in-2022","Aside from all the emergence of AI.","2022-12-20",{"title":131,"path":132,"stem":133,"description":134,"date":135},"Counting unique visitors without using cookies, UIDs or fingerprinting.","/articles/cookieless-unique-visitor-counts","articles/cookieless-unique-visitor-counts","on withcabin.com","2022-11-30",{"title":137,"path":138,"stem":139,"description":140,"date":141},"Hang up.","/articles/hang-up","articles/hang-up","Steps for for avoiding scam calls.","2022-05-06",{"title":143,"path":144,"stem":145,"description":146,"date":147},"The “yes” transaction","/articles/yes","articles/yes","Why my contact lens service is my favourite transaction.","2022-01-04",{"title":149,"path":150,"stem":151,"description":152,"date":153},"One line of code","/articles/one-line-of-code","articles/one-line-of-code","How I built an API for the London 2012 Olympics with one line of code.","2021-05-11",{"title":155,"path":156,"stem":157,"description":158,"date":153},"The potential energy savings of deprecating Cloudflare's cfduid cookie.","/articles/the-deprecated-cookie","articles/the-deprecated-cookie","How removing a tiny cookie can have a big impact on carbon emissions.",{"title":160,"path":161,"stem":162,"description":163,"date":164},"Never launching","/articles/never-launching-products","articles/never-launching-products","It's not just about the launch, it's about the process.","2021-04-09",1772188378505]