I agree with pretty much everything, except designers using Git. Sadly, Git doesn't work for PSD files properly. Some of the PSD files I've worked with before (900mb+) for larger websites and applications would definitely not be a good fit for Git. Although I think the blame lies mostly on Photoshop's end not being the right tool for web design, but being used by designers anyway. I think whatever tool ends up replacing Photoshop as the de-facto standard (if it happens) should ideally have a visual re-visioning system built in a la Adobe Creative Cloud.
We aren't quite at that point where designers are saving out all of the assets for you, then that would be different. You can source control individual assets, but not a large PSD file properly. I've begun to train the designers at my work to save out assets for pretty much everything leaving me to solve the engineering problems like how everything is going to work and less time cutting out images from a PSD file, but we aren't quite there yet where this is a universal thing that designers just know and willing do.
Some people might disagree with point #6, but I wholeheartedly agree as someone who works for a company where designers design and developers develop. I think to be truly great at design, you need to devote at least 90% of your time (minimum) to bettering your design skills. If you're a developer, the opposite rings true. I think it is important for design/dev to have a mutual understanding of one another, but I don't think you can truly be a great designer and great developer in one. Having an understanding of the other perspective is important. You'll never meet a surgeon who specialises in brain and heart surgery, why should design and development be any different?
Fortunately, the employer I work for doesn't compartmentalise the teams from one another. There is nothing more horrible than working in a place where design and development teams are on separate sides of the office or even different floors with the only communicative layer being a project manager or team leaders. Designers and developers sit down and tackle problems together and educate one another in the process. This is something that happens through the whole process from wire-framing to prototyping to final build. I think designers and developers should work together at every step. I have met talented design/developers, but great ones of both fields are extremely rare.
PS. Joshua, if you're reading this comment, you might want to reconsider the 670kb background image on your site. I loaded your blog on my slow ADSL connection and it was painful.