Taming Program Complexity

Posted by ludamad on June 30, 2012, 3:19 p.m.

So I wrote a blog about the issue of program complexity.

Its aimed at novice to intermediate programmers, and I hope it stirs some thought about how you can better write code without getting drowned in details. Nothing too new, so excuse if some of it is a 'duh' to you.

I'd post the blog inline, but it's a little long and would be a bit hard to format.

http://adam-dev-blog.blogspot.ca/2012/06/taming-program-complexity.html

Comments

Zac1790 12 years, 5 months ago

I'm reading it now but I have to ask you something I always wondered.

Did you pick the name ludamad to mean game-crazy? I was in a game design class once where they explained that ludus (latin) means "game" and ludology is the science of games. So my immediate thought was, "So that's what ludamad means." But then I decided I was probably wrong.

Zac1790 12 years, 5 months ago

Quote:
The greatest complexity occurs from interaction of program components, not from the components themselves. Keeping the interaction between program components as straight-forward as possible makes it far easier to manage change in code.

I was wondering where you were going with what was amounting to the philosophy of scripting but the conclusion nailed it and was practical.

Castypher 12 years, 5 months ago

Quote:
"So that's what ludamad means."
The maddest of all the ludas.

ludamad 12 years, 5 months ago

Ha. Ludamad is a portmanteau of three names, that's all. LUcas DAMian ADam.

To make the origins even more humble, I picked it for runescape …

I've heard other good ones though. Like luda = feminine version of 'mad' in Czech (I think it was).

Thanks for reading the blog! I may just post a followup today…

ludamad 12 years, 5 months ago

Also. It's appalling how hard it is to apply the ideas expressed in my blog post to GML… Unless it's changed and suddenly has flexible, lightweight functions with sane memory management. If you actually want to return a data structure, you technically can, with the ds_ collections. However, the data structure 'numbers' GM assigns may as well be pointers, with no types to make matters worse, that have to be explicitly freed.