About

I am a software developer in Seattle, building a new AI software company.

Ads

August 2009

Sun Mon Tue Wed Thu Fri Sat
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          

Ads


« Verification | Main | Hard Problems, Simple Solutions »

December 27, 2006

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00d8345242f069e200d83507ac9c69e2

Listed below are links to weblogs that reference Fabricated Complexity:

Comments

John Rusk

"Fabricated Complexity" is good term (and by no means limited to academia, unfortunately).

John Rusk

Good as in "a good description of a bad phenomenon"

NoiseEHC

If you want to see a C# like functional language then check Nemerle. It rocks!
nemerle.org

Drazen Dotlic

Actually, the quote about simple solution is from the book "Positioning" (I'm positive you've read it as a future ISV).

More details and some of my observations about complexity of problems related to simplicity of solutions can be found in this post: http://drazen.dotlic.name/weblog/archive/2004/09/27/183.aspx

Wesner Moise

I believe there is another source (not just positioning) and that it is also tied to computer science.

Here's another one:
For every complex problem, there is a solution that is simple, neat, and wrong.

mgsloan

The problem with 'anonymous function' is that it doesn't imply that it may use variables from the parent scope. This is, indeed why closures are called closures - they capture the lexical environment.

I disagree, though - certainly many things are overcomplicated due to reasons you state, but this doesn't mean every hard problem has a seemingly simple solution.

Jonathan Aquino

Amen to good naming. Blocks over closures! Good semantics are invaluable.

Lance FIsher

In one sentence you've explained lambdas and closures to me. Thanks.

Kevin Greer

Good Article. This could help to explain why OO had better adoption than functional programming (FP), despite being more complex. The Smalltalk gang were creating a system for children and so they described it simply. The FP crowd on the other hand took a less accessable academic/mathematical approach to describing their work.

Chris W.

From Richard W. Hamming [http://en.wikipedia.org/wiki/Hamming], the creator of the Hamming code and author of 'You and Your Research' [http://www.cs.virginia.edu/~robins/YouAndYourResearch.html]:

"It is better to solve the right problem the wrong way than to solve the wrong problem the right way."

I would suggest that a simple solution to a hard problem is almost always found by reconceiving the formulation of the problem. Having done this, the first attempt at a solution may be wrong, but it helps one see the strength of the problem formulation---that one is on the right track to achieving a simple and correct solution.

(The downside is that one actually has to think hard.)

Jim

Naming of types and members is so incredibly important. Having worked with an English as a second language programmer, I saw first hand how she struggled to name methods and variables - the end result was that the exact meanings of these members was unclear to her and other people.

Likewise, a strong vocabulary is useful for disecting a problem, and arriving at a solution - (infact, isn't there some doubt whether humans could have reasoned thought without language...)


On the one hand powerful vocab is useful, but on the other it has to reach it's audience, otherwise it's no more helpful the impricise language.

Verify your Comment

Previewing your Comment

This is only a preview. Your comment has not yet been posted.

Working...
Your comment could not be posted. Error type:
Your comment has been posted. Post another comment

The letters and numbers you entered did not match the image. Please try again.

As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

Having trouble reading this image? View an alternate.

Working...

Post a comment