I wrote safety critical industrial code in the past, and the rhythm felt about the same as writing perfect DeFi code. Correctness is hard work anywhere.
I think the biggest difference on the EVM is the constant resource constraints. The solidity compiler is inefficient, but most of the real constraints are from the EVM design and that the most basic operations on ethereum during it's heyday were so brutally expensive that you were forced to design for both correctness and simultaneously do stunts for gas efficiency.
You can't currently hand an average programmer solidity evm ethereum and not have critical bugs as the output. Now that may be true for most critical systems, but there are bug classes that could be removed at the compiler level and we should do this.
A month ago I realized that everything I took as concrete - Solidity, the EVM, how the blockchain works - could actually be changed. My biggest personal pain in solidity/evm was contract size limitations, so yesterday I worked on a Solidity PR that makes a 3% reduction in bytecode size.
Beyond policy, I feel like the two meta-problems that have slowed our industry down the most:
- Solidity. Shipping truly safe code on EVM is brutally slow.
- Talent attractiveness. Deep technical talent doesn't want to work in crypto. They don't see the impact they could create, they only see speculation. We've failed to make the substance of the work legible to people who could move the frontier.