One of the biggest inspirations for IguanaX’s design was looking at the problems we faced with the To/From File components in the product. In our support flow we’d often find customers having trouble with these components and need to switch them to implementing the logic they needed in Lua using the translator. This explains why:
The file components got very large and complicated
I would describe the file components resembling the dashboard of 747. All sorts of options and pull down lists. There is so much stuff that my laptop screen isn’t large enough to show the whole lot - I need to break it up into two screenshots:
It's difficult and time consuming to predict exactly what those options would do
Programming by selecting options in the long run turns out to be a very inefficient way solve problems.
It’s hard to know exactly what those options do. Quite often they would not so what you would want them to do.
They were difficult to maintain the code of
If you think the interface looks complicated - think about the complexity of the code underneath.
Trying to alter that code without breaking compatibility becomes very difficult. Eventually one has to stop.
And they could not do exactly what customers needed
And yet the components would always be short of a couple of features that customers needed.
It leads to a dead end eventually
In fact it can kill off products. I can think of major competitor right now that went that route. The were acquired and now the acquirer is killing off that product because in the long run this approach doesn’t work.
The product starts simple but gets more and more complicated and becomes harder and harder to use - no one is happy in that model.
So often have customers start with the To/From File components and then we would need them to switch to Lua
So that was a huge part of the design inspiration for IguanaX. Why not create a platform which made it seem natural and correct to start with simple To/From File components in Lua and then customize them when they didn’t do exactly what people needed to do?
This is why designed IguanaX around the idea of never having components hard coded into the platform. Instead build very simple components in Lua and make it super easy to customize them.