Jacob Matson @matsonj.com · 07/05/2026I'm really excited to share some of the research I've been in doing on Data Agents - and no place better to do it then in SF. Join me to learn how to build your own data agent at 1pm on June 2nd! Register here: thedive.motherduck.com 040
Jacob Matson @matsonj.com · 24/04/2026me to the new OSS LLMs: "please don't spiral thinking forever about how hard this problem is" them: "you know i think i will just spiral" pic related 020
Jacob Matson @matsonj.com · 28/08/2025Finally implemented nfl tiebreakers in mdsinabox.com - so now teams have a much better outlook on playoff seeding. To wit: the Atlanta falcons mdsinabox.com/nfl/teams/At... 050
Jacob Matson @matsonj.com · 02/08/2025I've been screwing around with evals - here is my first one! I know many of you are AI haters but its here and its real. For this case I've looking at speed, accuracy and cost for solving hard NYT connections. GitHub repo: github.com/matsonj/eval... 091
Jacob Matson @matsonj.com · 18/03/2025fooling around with some nba dataviz (cc @aaronblackshear.bsky.social ) 2100
Jacob Matson @matsonj.com · 22/01/2025Today in “cursed workflows”, you can connect to rest end points with Power BI which means you can serve DuckDB requests to it, no odbc required! 2140
Jacob Matson @matsonj.com · 17/01/2025I think it was always there, just modify the tailwind.config.js file. 110
Jacob Matson @matsonj.com · 17/01/2025Marveling at how nice the new theme looks over on www.mdsinabox.com/nba/teams/LAC/ 3211
Jacob Matson @matsonj.com · 21/12/2024the above the fold page load is so clean! extremely tiny nit - the link to Codepen shows an underlined space. 000
Jacob Matson @matsonj.com · 20/12/2024a fun friday treat for the holidays (compete to win prizes) game.motherduck.com 080
Jacob Matson @matsonj.com · 18/12/2024you can always use DuckDB to make your R even faster. blog.stephenturner.us/p/duckdb-vs-... 210
Jacob Matson @matsonj.com · 13/12/2024fooling around with new themes on mdsinabox.com. trying to evoke looking at the sports page late 90s in the seattle times... 4132
Jacob Matson @matsonj.com · 13/12/2024i've changed the colors to make it a bit more obvious but its looking like they are landing in the play-in. really big spread between 5 and 7 seeds in the east 010
Jacob Matson @matsonj.com · 11/12/2024they are doing just about as well as expected... mdsinabox.com/nba/teams/ATL/ 110
Jacob Matson @matsonj.com · 07/12/2024now the fun part...we need to knit together our combination strings (binary text) with our number set. Again, my understanding of array formulas is not great, but I think this is possible. so I'll prompt chat gpt a bit. 110
Jacob Matson @matsonj.com · 07/12/2024so, why not use an array formula to identify the combination as a binary string? =TEXTJOIN("",,MOD(INT((C2-1)/2^(SEQUENCE(1,D2,D2-1,-1))),2)) C2 = scenario id, D2 = the length of the string (11, which is LOG(2048,2)) 100
Jacob Matson @matsonj.com · 07/12/2024i then unrolled the loop (by hand LOL) to get every scenario for test input in their own row 100
Jacob Matson @matsonj.com · 05/12/2024so this gives us this result =SUMIFS(mid_positon[Value],mid_positon[incl],1) 100
Jacob Matson @matsonj.com · 05/12/20241 - import rules (filter file on rows that contain |) 2 - import lists (filter file on rows that contain ,) 3 - join them together 4 - build a rule checker (see screenshot) 5 - aggregate it back to only show rows that pass 6 - get the midpoint for each row 7 - join datasets 5+6 and get the sum 110
Jacob Matson @matsonj.com · 04/12/2024ah of course i implemented tiebreakers for the #nba cup in a way that lead to wrong ranks in the Western Conf - tiebreaker in force for DAL / HOU is "total points scored in group play". 010
Jacob Matson @matsonj.com · 03/12/2024Regex Extract can take an optional parameter to return an array 110
Jacob Matson @matsonj.com · 02/12/2024part2 - had to use a macro in excel based on the SQL from @rotnroll666.bsky.social (obvious spoilers in the link) chatgpt.com/c/674e318a-7... 020
Jacob Matson @matsonj.com · 02/12/2024part1 screenshot (solving columnwise, which makes part 2 somewhat harder) 110