I second the recommendation for Code Complete. If you're looking for tactical construction advice, better to take it from someone with an established history of having constructed software.
My preference is Kernighan and Pike's _The Practice of Programming_, TPoP, that's Kernighan as in the `k' in awk and K&R, and Pike as in Blit, sam, and now #golang. The book's home page has a sample chapter and a war story that didn't make it into the book. http://amazon.com/exec/obidos/ASIN/020161586X/mqq-20 http://cm.bell-labs.com/cm/cs/tpop/
In hindsight perhaps I shouldn't have bought the kindle edition of the book (Code Complete) because it's a very large book and it's not those kinds of books where we must read from cover to cover and I don't think it's very practical to read those books in a kindle but perhaps it's just me. Just my 2 cents.