1. Writing lessons? Not really.
Writing source code is different enough from writing a book.
While both pursue the same goals: being as unambiguous as possible and being easy to understand, they are doing it in a very different manner, and things a writer should learn are not the same as things a software developer should learn.
Example 1:
Figures of speech are valuable when writing novels, poetry, etc., since they increase the expressiveness of the writing.
What is the last time you've seen an oxymoron or a litotes in source code? Would it help to have them, or would it rather be extremely harmful for any developer who will have to maintain such source code later?
Example 2:
Rich vocabulary is highly appreciated in literature. Vocabulary of William Shakespeare, for example, is 20 to 25 words. Richer vocabulary makes it more interesting to read a novel or a poem.
When you write source code, you expect it to be read by people who don't speak English very well. Showing how well you know English would be extremely harmful for your code. If you know a fancy word which means exactly what you need but you know that lots of people don't know the meaning of this word, you should rather find a less expressive synonym or a set of words which explain the meaning. A vocabulary of a few thousands of words is often largely enough for a given project.
2. Lessons to write expressive source code? Sure.
Any developer should learn how to write expressive source code.
Any developer should explain why the comment in:
int j = i + 1; // Creating i and adding 1 to it.
is bad, even aside the fact that it's totally wrong.
Any developer should be able to understand the basic refactoring and how it helps making the source code more expressive.
Any developer should remember that 20% of the time is spent developing code, and 80% of the time maintaining it. For some projects, it's more like 5% - 95%.
etc.
In essence, programming is close to technical documentation. Does a person who writes a spec sheet for a bolt need to take writing lessons? Not really. The same applies for developers. Anyone should write without making spelling mistakes in every word, and anyone should be able to communicate her ideas clearly enough. Aside that, I'm not sure how writing lessons would be more useful than, let's say, a course in Computer science or in IT security or whatsoever.
The expressiveness of the source code can be learnt by other means. superM mentioned one of them in his answer: reading good code. I can mention a few others:
Reading books like Beautiful Code or Code Complete,
Asking for a more experienced developer to review your code,
Understanding patterns and how and when to use them.