We have determined how to translate coordinates between two observers in relative motion, and this tells us that the speed of light is a) finite, and b) the same for every observer, regardless of their relative motion. It has nothing to do with that. I am talking about the effect happening before the thing that causes it: rock hits window, window breaks. If causality is violated, the two events can happen in the reverse order: the window breaks before the rock hits it, and what is more, there is nothing else that causes the window to break.
The speed of sound is irrelevant; human senses are irrelevant. This is physics at the level of the fundamental laws of physics, which are there no matter it there is an observer or not. Take away all the life in the universe; the laws of physics are still there, and if things can move faster than light, causality goes out the window: a star can go supernova before it has started its gravitational collapse, for example.
For starters, you cannot reach the speed of light, so you cannot ever go past it. The only objects which can travel at the speed of light are those which have no mass. This is special relativity at its simplest, and it is well verified.
Secondly, those “faster than light” solutions to the equations of special relativity arise from taking a square root. They give you particles which have an imaginary mass (ie. something multiplied by the square root of minus 1). That is nonsense in classical physics, but it is quite meaningful in quantum theory. The “faster than light” solutions have been successfully interpreted in quantum theory as implying the existence of anti-matter — and this also has been well verified by experiment.
Yes, you are definitely getting something wrong here: you are assuming that your everyday experience still works when two observers are travelling at high speed relative to each other (and by “high speed” I mean a significant fraction of the speed of light, not some piddling 1000 mph or something).
When you get into this realm, you must use special relativity, which, as I said before, is well verified to an incredible accuracy. In fact, if Newtonian physics were used instead of relativity to synchronize the clocks onboard GPS satellites, in only a year, GPS coordinates on earth would be wrong by several miles.
All I will say on this is that relativity and elementary quantum theory are both verified to incredible accuracy; it is only when you get to the galactic level (for general relativity) or inside a proton or neutron (for quantum theory) that things go funny. This means that both theories must be taken very seriously, and if you are going to toss one or both out of the window, you had better have very compelling reasons for doing so.
Without such very compelling reasons, nothing can move faster than the speed of light, and elementary particles (not just photons) are simultaneously waves or particles, but it depends on how you observe them.
PS, you are making another mistake in comparing light with water waves. With water waves, the energy of the wave produces a displacement of water. Light travels in vacuum; it does not need any material substance to travel in, so with light, there is nothing corresponding to the water.
An effect can not in (absolute) reality happen before the cause. You may experience it from your point of view but it is only that.. your experience of reality.. which we know is always different from ‘what really is’. The light takes a certain time to travel into your eyes so the image you see is always a little or a lot outdated depending on how far the object is.
I get it and it does make sense if you use other theories. But what bugs me still is *why* exactly is it that this common sense physics does not work in certain situations and we need to use other theories to make sense of the world. When one theory breaks down and doesn’t work, we then invent a ‘special’ theory which applies when things get funny.
The way I see it is theoretically related to programming. When something unexpected happens you can simply write a new function to handle the exception instead of writing your *real code* in a better way so that the exception does not even happen.