> We need to actually write (and purchase) better software.
Ransomware is not a software problem, this is a human problem.
We keep putting up barriers to make it harder for malicious software, but so long as you put a prompt infront of users saying "Whoa, this looks dodgy, are you sure?" they're going to click yes. Even if you make clicking yes more difficult and the warnings more obvious, they'll blame the software for being difficult and run it anyway.
The only long term 'solution' to this from a computing perspective is to run only signed applications from trusted publishers on a restricted list which are sandboxed to such a high degree. No scripting beyond very basic building blocks. Effectively an end to general-purpose computing.
Every time something like this comes along though, everyone loses their minds.
They don't. As the parent said, the problem with the internet is that billions of people have access to your office door. Cut the external cable, and it's right back down to the number of people who literally have access to your office door. It's not a good fix, but it absolutely does make random or semi-targeted attacks far less likely, which leaves only someone with a specific bone to pick who is targeting you--and even they'll have more barriers to jump to get there.
We need to actually write (and purchase) better software.