Absolutely. Everything can be designed better.
Worth reading:
http://www.joelonsoftware.com/articles/LeakyAbstractions.html
I won't debate that technology is designed poorly.... I can't pass judgement since as a developer and electrician, compared to most people I'm an expert, even if I'm terrible.
Have you ever realized how simple concepts can be combined in patterns that result in complex and useful results? This is most evident in science and mathematics, which basically are devoted to these patterns. Some examples:
Biology studies the cell, the building block of life
Chemistry studies the atom, the building block of matter
Physics studies how objects move according to simple rules --- but result in complex and beautiful patterns
Mathematics studies formal systems, from which simple axioms bring useful(?) results
Computer science studies computation --- sometimes digital computation, in which patterns of connected switches are used to express a solution to _any_ solvable problem
No one claims that the deep results of biology, chemistry, mathematics and physics are trivially simple, but here we are parading computer systems as easy-to-use and understand.
Your computer is essentially billions of switches flicking on and off millions of times a second, special-purpose electronics powered by signals moving at nearly the speed of light --- so how do we claim simplicity?
The same way mathematicians do: we define things in terms of themselves and combine them in clever ways, hide that complexity behind notation and hope that we don't have to remember details about what lies underneath the disguise. Then we do it again, and again. Eventually you end up with a concept such as the "mouse cursor".
Unfortunately, the problem is that
The idea of a "mouse cursor" completely fails to consider the massive amount of information required to represent it --- any failure at all in a conceptual component below will lead to unforeseen behavior: not only that, but
1. Users make mistakes
2. Engineers make mistakes
3. Stuff just breaks, and
4. _Theoretical results never exactly match experimental results_
When a computer doesn't do what I want it to, it's _probably my fault_. Even if not, diagnosis means I might have to know a hell of a lot about what's underneath, since an error describing the mouse cursor doesn't necessarily tell me about what actually went wrong.
We can only simplify complicated things so much. The solution is to compartmentalize and abstract --- which has costs of it's own, in efficiency, complexity, and required knowledge.