Just say you're driving along in a 100km zone and then you see a speed limit sign coming up that reads 30km. Do you then slam on the brakes to get to 30 before you pass the sign? Answer: NO WAY. I think you'll find that nobody does this. But should they? Yes. After all when you pass that 30km sign you have to be going 30km all the way up untill you pass a sign that says otherwise. The trouble is that nobody, and I do mean nobody does this. And if you do you probably get honked at or passed before you reach the 100km sign.

(yes its happened to me) if not the drivers behind you would still get annoyed. (Especially at night - when you get off the gravel - that means go faster)
Some of you carefree drivers probably think I'm an idiot for bringing this up because you can easily get away with going faster than 30km at the start and finish sections of the 30km area. A cop will probably not pull you over for it will they? So what's your problem? That is exacly the problem: You don't know if you a cop will pull you up for going a bit too fast going in to or coming out of a 30km area. So I ask you how fast is too fast in a 30km area? Sounds like a silly question doesn't it? And it is, but the fact is everybody speeds in 30km areas.
And here is my solution:
A sign that gets you to start slowing down to 30km for the roadworks before the 30km sign. It would read: roadworks 30km area ahead. (This sign would go where there would usually be the first 30km sign - instead of it)
AND the 100km sign at the end of the roadworks is ALWAYS too far away from when the roadworks actually end so simply move it closer to the roadworks where the gravel actually finishes.