(1) There have been several of these cases over the years. I’ve just built workarounds or gone without the desired functionality, and moved on. I don’t recall their specifics.
(2) I’m sure your proposed solution for Giovanni is solid. It might very well be the way to go in his use case.
I added that comment because this is such a common question here in the forum, and I’ve grappled with it in my own projects repeatedly, and there are always two solutions offered in the forum to address it, and after much experience with this particular problem I’ve accrued enough data that I felt it was time to bump this conversation to the next level, which to my mind is this:
“Given that these are the two widely recognized solutions to this particular problem, what does it actually look like in practice to implement them, over many various implementations?”
And so I shared the rough data set of my experience. The data sets of others will certainly skew differently than mine.
In general I promote correct schema as the cure for most problems in Coda, because it’s the foundation upon which everything is built. Wonky foundation == wonky build out.
But this issue of users wanting programmatic access to columns is not truly solved via schema restructuring – at least in my experience. From a data structure standpoint, schema restructuring does technically solve the problem. However, from a human user standpoint, it will often gin up more data structure than the user actually wants, or has the time and resources, to manage and maintain, just to accomplish one programmatic task, which is often the decisive factor for the user.
It’s an interesting problem that many users run into (it’s got to be one of the most frequently asked questions in this forum). And yet, there’s no clean answer to it.
Programmatic access to column values cuts against the grain of how relational db’s are designed. I’ve never seen this functionality in any other app (though it may well exist). But there’s clearly demand for it.
Coda is already successfully reimagining the UX for working with relational data (thank you!). I think they could tackle this problem at some point. I think the Coda engineers could write this algorithm and expose its results via formula and UI. And then users could have their cake and eat it too!
(3) I never incorporate those kinds of wild hacks into my business. It’s bad practice and I strongly advise against it. I meant that I would try to build a solution that did not require that level of access to the columns.