I would like to get some advice on how I should build my PC. This is my first PC and I want to get started with a good build. Mostly for Gaming and programing. I'm majoring in computer engineering and I hope to keep this PC for a long time. I want to stay below $900 (including my peripherals) , without getting rid of my gigabyte GV -N970G1 graphics card, but if someone knows better, I'm willing to hear them out.
My build so far is: http://pcpartpicker.com/p/Cr8WjX
I swapped some parts in your build but tried to stay whithin the budget of your original PCpartPicker-list.
I went with a better CPU (newer architecture), a higher quality motherboard (recently had very bad experiences with MSI FM2+ mobos, ordered 3, one was DOA and one died within the first 10 minutes), a higher quality PSU, a faster HDD. I also took out the GTX 970 and swapped it for an R9 290. Not because I favor the red team over the green team, but for budget builds like this, the R9 290 is just dirt cheap an will handle everything you throw at it in 1080p on high to ultra settings just fine. The GTX 970 is more power efficient but only slightly faster. In some benchmarks the R9 290 will even be on par or even faster than the 970. The Sapphire Tri-X is factory overclocked and is one of the quitest R9 290s on the market.
I also changed the keyboard in your list because I simply think when building on a budget 150$ for a keyboard is just a waste, so I went with a much cheaper Steelseries keyboard that gets pretty good reviews as well.
As for the monitor I opted for something a little bigger (24 inch) with an IPS panel.
If you want to shave off some more dollars, visit the buy/sell/trade thread here at the forum for a cheap copy of windows 8.1. There is a guy selling them that seems to be legit. (I bought Windows Server 2012 from him and it was fine).
This is about as cheap as ChrisG's but it keeps the 970 as OP suggested...
http://pcpartpicker.com/p/BTCB7P
Same basic upgrades: newer CPU, much better mobo, much better PSU, swapped around the monitor and keyboard (though this one is still mechanical, unlike ChrisG's)... the RAM was pointlessly too expensive... I took Windows off because we have a vender in the buy/sale/trade forum who is cheap and legit...
You're not going to get much cheaper including keyboard, mouse, monitor, OS, ALONG WITH a 970... I will say the 970 seems to throw the whole build a good bit out of balance... but I was complying with your wishes :)
I could probably work a bit more magic but my lunch break is over... back to work....