Digital Hourglass reverse led

but i am curious to know if there is no better solution ( i am sure there is)

Of course there is. Think about how YOU would turn the LEDs on in increasing order, and then in decreasing order. All you have is a watch, a pad of paper, and a pencil.

You'd note (on the paper) what time you last turned an LED on (or off). Periodically, you'd see if it was time to turn the next one on (or off). You could use the paper to keep track of what the next state will be, in case you fall asleep and forget.

The blink without delay example shows how to use millis() in place of the watch, and a couple of variables in place of the pencil and paper.

Google state machines to learn how to deal with keeping track of the next state (in case you fall asleep). It's pretty simple, really.