Tales from the Evil Empire
Bertrand Le Roy's blog
-
Clay: malleable C# dynamic objects – part 1: why we need it
When trying to build the right data structure in
Orchard to
contain a view model to which multiple entities
blindly contribute, it became obvious pretty fast that
using a dynamic structure of sorts was a must.
-
Optional named parameters work pretty well
Rob has found a use for dynamic:
http://blog.wekeroad.com/2010/08/06/flexible-parameters-with-csharp -
Orchard 0.5 is out
Before I joined Microsoft seven years ago, I had spent
a couple of years building a Web CMS. It wasn’t
open-source unfortunately but the experience convinced
me that most public-facing web sites would shortly use
some form of CMS. I also forged strong opinions about
the right level of component granularity that a CMS
must implement.
-
What did you start programming on?
There’s some kind of controversy going on today in our
microcosm. I don’t want to enter that controversy
because I think nobody’s willing to listen to anybody
but themselves.
-
Oh yeah, CallStream is great to express monads
It has been pointed out by several commenters that CallStream was a reinvention of monads. Not quite so, but the nuance is subtle.
-
How I understood monads, part 2/2: have we met before?
The first post in this series can be found here:
http://weblogs.asp.net/bleroy/archive/2010/06/16/how-i-understood-monads-part-1-2-sleepless-and-self-loathing-in-seattle.aspx -
How I understood monads, part 1/2: sleepless and self-loathing in Seattle
For some time now, I had been noticing some interest
for monads, mostly in the form of unintelligible (to
me) blog posts and comments saying “oh, yeah, that’s a
monad” about random stuff as if it were absolutely
obvious and if I didn’t know what they were talking
about, I was probably an uneducated idiot, ignorant
about the simplest and most fundamental concepts of
functional programming. Fair enough, I am pretty much
exactly that.
-
How Orchard works
I just finished writing a long
documentation topic
on the Orchard project wiki that aims at being a good
starting point for developers who want to understand
the architecture, structure and general philosophy
behind the Orchard CMS.
-
When failure is a feature
Warning: this post is going to be slightly off-topic
and non-technical. Well, not computer science
technical at least.
-
Writing the tests for FluentPath
Writing the tests for
FluentPath
is a challenge. The library is a wrapper around a
legacy API (System.IO) that wasn’t designed to be
easily testable.