Hi, former MI (Midshipman Instructor) here from one of last year's NSI cycles. Everyone above has already given solid advice, I just wanna add on and share my perspective on this. Of course, while I could break the whole three weeks down day by day, that ruins the actual experience of being placed in a new and unfamiliar environment.
NSI is hard. It is supposed to be difficult, and you will make mistakes. It is designed to make you experience failure so we can see how you deal with challenging and unfamiliar situations, and to see how and if you correct yourself. Yes, you will get yelled at, but it's not personal - unless you have some serious attitude problems. 'Pushback', poor attitude, and cockiness are what will actually cause problems. Make sure you have a good reason in your head for why you're there before you go - if you don't, you'll find it there.
You've already been told to 'not stick out.' I'm gonna expand on that a little bit and clarify what it means because I've seen plenty of candidates who take the wrong approach. This does not mean don't put out or try your hardest, because the instructors will notice. As a candidate, you simply do not want to attract any individual attention or 'special instruction' from your instructors. I would recommend not studying material beforehand - you will learn it at NSI, and I can guarantee your MIs will make your life miserable for 'trying to show off.'
NSI is a team game. You win as a team, and you lose as a team. If one person fails, your whole compartment will face the consequences. Physical fitness is important, but there is not a whole lot of emphasis placed on it. Show up on Day 1 ready to ace the PRT, and you'll be fine. Also, get enough sleep while you are there. Candidates are given sufficient time to sleep, they just choose not to for one reason or another.