Share via


Seductive Programming

On the topic of the previous post, we had long debates at Asymetrix about C++ versus OpenScript, and there were similar issues when AutoCAD switched  from AutoLisp to C.  I coined the term "Seductive Programming" to describe the way tools are marketed where they offer "Extension with simple scripting" or "Scripting instead of programming" in order to attract customers who are afraid of coding  The Seductive Programming environment starts out simple, you just write a few lines of code, with no design or architecture required, generally to handle events like "OnClick" or to calculate an expression like a spreadsheet macro.  But then, before you know it you've got 10,000 lines of the stuff, totally disorganized spaghetti, haunted with random bugs and plagued with performance issues.  And no debugger usually...

I've worked on a lot of systems like that:  AutoCAD, ToolBook, Visio.  Excel is another obvious example.

It's a cautionary tale, and btw, not one I think Python suffers from.  Python feels like it targets programmers who aren't afraid of coding and do design up front.  It just happens to have a low startup cost and interactive goodness of a scripting language.