@wfloh Thanks for your suggestions and feebacks. Butw when I played Qd3 its because opponent would play b5 to play b4 now if I take the pawn on b5, he would take the pawn on E4 which would make his centre a lot better.
For playing Bh6, I thought already of it but when my bishop was attacked I had to react to it, so it gave him time to move his rook, If I had played bh6 he would have played bh8 not giving up the dark square bishop.
I didn't see that Ng5 was the best move, even my engine said it's the best move but the answer for that threat is Ne5 and after f4 then nc4 attacking both queen and dark bishop and more importantly blockading the light square bishop.
But thanks for your tips though!
I'm not sure what your intentions were with your 15 Qd3.
At move 15,
You have the d file and contesting the c file. You have opportunity for Bh6 to trade the enemy dark sqr bishop and weaken the kingside. Your opponent just moved his rook from protecting f7, so Ng5 is a real possibility. The intention isn't to capture on f7.... the intention is to allow you to play f4. It's difficult to get an attack going on the Sicilian without the f-pawn.
So... 15. Rfd1 planning for e5,
15. Ng4 followed by f4 and then depending on circumstances you could try for e5 or f5 later.
15. Bh6 might be a bit hasty... as you go higher in rating (or rather, as your opponents go higher in rating), it gets more and more difficult to win with straight forward attack. Usually you will have to first create weaknesses elsewhere and draw enemy pieces away. Also, should the opponent defend correctly and trade off your attacking pieces, you would still have a good endgame if you had created weaknesses elsewhere earlier.
Your opponent, on the other hand, had made each move with purpose and conviction. You would do well to do the same :)
Just my 2 cts