Why do shifts 186 and 187 have 0 blocks?
Those shifts are still Open. Since you posted, 2 blocks have been found, and now 186 and 187 have 2 blocks currently paid to them. Here's a simplified version of how PPLNS works (there are a few other pools already using this, just slightly different accounting methods):
10:00:47: Shift #185 is finished. Shift #186 is now starting. You started submitting shares in #186 (for this example).
11:00:47: Shift #186 is finished. Any blocks found after 14:00:47 will have part of their payment sent to this shift (until 10 new shifts are done). Shift #187 begins.
12:01:41: Shift #187 is finished. No blocks have been found yet, so #186 still has had 0 payments. All blocks found after 15:01:41 will have part of their payment sent to this shift (until 10 new shifts are done). Shift #177 is now expired since blocks are only paid to the 10 most recent shifts (30m shares). Shift #188 begins.
12:18:44: Block #7674 is found. The block is split proportionally to the currently open shifts (#178-187).
13:03:39: Shift #188 is finished. Shift #189 begins.
13:43:12: Block #7675 is found. The block is split proportionally to the currently open shifts (#179-188).
Looking at shifts currently 'Open' gives you an idea of luck, but until the shift is closed, you cannot determine how the shift will end up on variance. If you look right now, Shift #178 just closed (since 10 new shifts have completed since that one). Only 8 blocks were found in that time, so it made slightly less than PPS (0.00000652 PPLNS vs 0.00000690 PPS). However, luck did turn around. Shift #179 is still open, and has had 9 blocks found since it was finished, meaning that shift was paid HIGHER than PPS (0.00000733 PPLNS vs 0.00000690 PPS).
This is just classic pool variance like you'd see with any non-PPS system. In the long run, you should expect to make roughly 3% more on PPLNS. This is because the fee is 2% lower than PPS, and transaction fees so far have been close to 1% of the total block reward, giving you an extra 1% in payout as well.
Why do shifts 186 and 187 have 0 blocks?
the pool had bad luck during the shifts.... no guarantee that a shift will actually find a block.
While there is no guarantee the pool will find a single block, it is EXTREMELY rare for a shift to have 0 payments. The current setup uses ~9x difficulty as the value for 'N'. That means the pool would need to take roughly 27 million shares without finding a single block. That almost happened last night, where the pool took nearly 10 hours to find one block. These are VERY rare circumstances though, and I purposely chose a high value for 'N' to avoid having times where a shift receives 0 payments. It's a careful balancing act. The higher the value of "N", the lower the variance, but the longer it takes for your shares to receive their full value. Luckily, BTC Guild is still a very large pool, which means I can use very high 'N' value while still being able to have the shares mature in a reasonable time frame.