In science, our careers are judged by the written word - dissertations, papers, grants, reports...
Of course, you can't write a good paper without good data. Although you can perhaps present good data in the absence of good writing, but bad writing can detract and even confuse the data.
Yet, in my experience, writing is often not a formal training element in postbac science programs. In my program, formalized training consisted of one course, which met one hour a week for one semester. As I recall, we covered the basic structure of scientific papers, went over a couple of examples, wrote an abstract, edited classmates' abstracts, and did a round of revisions. As I mentioned previously, most of the learning process was on the ground training - "The time is upon us. Go forth and write."
The iterative write-edit-revise approach worked well enough for me. In part, it worked because my adviser and I communicated reasonably well. I picked up on and integrated preferences through rounds of revisions. In part, it worked because I was pretty comfortable writing. I performed well on writing assignments in high school and college, and writing was something I did in my spare time. The writing style was different, but I understood the basic mechanics and structure. It wasn't easy, per se, but was certainly doable.
Sometimes, though, writing is a struggle - from the perspectives of writer, reader, and mentor. What then? Likely no single approach works for every person, every time. It's good to have options.
What resources do you turn (writers) to? For example, some grad programs and career development offices run intensive writing workshops, self-paced courses, and peer editing.
As a writer, what do you do to improve your work? Do you rely on revisions from mentors or colleagues? Do you look for outside help? Do you hire a professional editor? I typically rely on edits from multiple people, and I prefer if one is representative of the audience to which I'm writing.
As an editor (in the broad sense, e.g. reviewing a trainee's or colleague's paper), how do you change someone else's writing? Do you make sweeping changes? Do you provide comments and leave it to the writer to change? Personally I find the former makes it a little to easy to transform someone's writing style to your own. With the exception of typographical or grammatical errors, I try to stick with comments and, if I keep repeating particular points, provide global feedback on the paper.
What are your tactics?