Arthur C. Clarke taught us that Any sufficiently advanced technology is indistinguishable from magic. Some wisecracker observed that Any technology distinguishable from magic is insufficiently advanced. I think this is a useful guideline for assessing the advancedness of any technology — and advancedness comes mostly from usability. Habitability. The only sufficiently advanced technology that springs to my mind right now is... Solar Cells. Photovoltaics packaged up into modules that we mostly call "solar panels". They work because of quantum weirdness. They need next to no expertise to use at a simple level. And they require next to no maintenance beyond a twice-yearly cleaning.
When I look at anything — almost everything — in the computing sphere, I see nothing that is sufficiently advanced. The computing world, from hardware to communications to software, callously shoves the complexity in our faces and says, "Deal with it." A very far cry from anybody's idea of magic.
I'm not equipped or educated to do anything about the hardware side of things, but I'm supposed to be somewhat able to do things with software. So:
How do we make software more magic?