PinnedChris SmithElection Monoids And “Equal” VotesI care a lot about the best ways to run elections. I also care about mathematics, and algebra in particular. What happens when you mix the…Jun 196Jun 196
Chris SmithThe Semigroup of Exponentially Weighted Moving AveragesThis is just a quick note about some more interesting algebraic structure, and how that structure can help with generalizing an idea. None…4d ago4d ago
Chris SmithApproval and Score Voting are Intrinsically TacticalMy previous post was a large-scale comparison of approaches to voting based on modeling voters and simulating elections. I ran into a…Jul 11, 20238Jul 11, 20238
Chris SmithSimulating Elections with Spatial Voter ModelsDemocracy: a concept almost universally revered, underpinned by the foundational act of voting. However, interpreting voting results to…Jul 9, 202314Jul 9, 202314
Chris SmithWeekend Project: Voronoi MosaicsMy employer, Groq, gave us a three day weekend for Juneteenth, so I decided to use the time for a fun weekend programming project. Here…Jun 20, 20232Jun 20, 20232
Chris SmithPair Programming with ChatGPT & HaskellHere, I present the (lightly edited) story of using ChatGPT conversationally to solve a non-trivial problem in Haskell. It definitely gets…Jan 26, 2023Jan 26, 2023
Chris SmithGeometry, Dimensions, and ElectionsI found this to be an interesting way to ponder the theory of elections and group decision-making, so I’m writing to share. I have not done…Aug 13, 2022Aug 13, 2022
Chris SmithMonoids are Composable List SummarizersThe standard definition of a monoid goes something like this: a monoid is any set (if you’re a mathematician) or type (if you’re a Haskell…Jan 24, 20221Jan 24, 20221
Chris SmithSeptember Virtual CoHack RecapThe September chapter of the Virtual Haskell CoHack is now past. Here’s how it went:Sep 25, 20211Sep 25, 20211