We conducted user studies to compare different designs of the Obsidian language to see which is best for programmers. If you participated, thank you!
Obsidian detects bugs involving loss of assets and improper invocation of transactions in smart contracts. We recruited 20 programmers. We asked 10 of them to complete a programming task in Solidity and 10 to complete the same task in Obsidian. Of 9 programmers who thought they finished the task in Solidity, 7 inserted bugs that lost assets! None of the 8 who thought they completed the task in Obsidian lost any assets. You can read more about this study in our OOPSLA paper.
We also conducted formative studies so that we could base the design of Obsidian on data from users. We summarized these formative studies in an upcoming TOCHI paper.