I was working on my Linq To SimpleDB provider today and I received this error message:
"Modifying a ‘operator’ which contains a lambda expression will prevent the debug session from continuing while Edit and Continue is enabled."
Talk about feature interaction! So, if we are in an operator, that has a lambda expression, and we are debugging, with "Edit and Continue" enabled, then this error will appear. My head just hurts thinking about all of the code that must be in there to catch these little edge cases like this. What about if my method starts with "A" and I am drinking a diet soda? Do they have checks in there for that?
It really makes you wonder how long can we continue like this. I wrote a blog post recently which touched on the issue of feature laden software and how as we add more and more features to software we are heading down a road where the interactions are going to become so complex that we will have an almost impossible time managing them. There are certain companies out there that are going the simple software route, and a few are quite successful with it. But will this tactic work for all software? Probably not. Will we need a fundamental shift in how we design software in order to deal with this growing complexity? I don’t know. What I do know is that something will have to change. Software teams cannot keep expanding in order to try to keep up with software’s growing complexity.
Also, with the shadow of massive parallelism looming on the horizon, things could get more complicated really quickly. If we can barely deal with the complexity that we have now, how are we going to move forward?
Loved the article? Hated it? Didn’t even read it?
We’d love to hear from you.