Haskell People
Nice post.<p>A monoid is an interesting and underrated 
&quot;pattern&quot; for objects where you can have a &quot;nothing&quot; and an operator that smashes two values together. The operator may be &#x27;lossy&#x27; as in 3 + 4 = 7, or it might preserve the originals to some extent as in &quot;3&quot; + &quot;4&quot; = &quot;34&quot;.<p>I realized the power of this when working with a new library and thinking &quot;how do I concatenate these&quot;, all I had to do was check that the data was a Monoid and used mappend. There is something very satisfying about that.<p>Plus if you build some utilities on monoids, they&#x27;ll work with lots of distinct objects, from parsers to numbers to lists to all sorts of other things.<p>What Haskell lacks in the community is people blogging about how to get more mundane things done like setting up a CRUD website, API, or desktop app. I have a site in my profile that attempts to fill that gap.