some rules for writing well
Never confuse 'that' and 'who/whom'. There are many grammatical rules writers are allowed to break, but this is not one of them. Never break this rule. When you use 'that' to denote a person, you're taking away that person's agency as a human. People are 'who/whom' and inanimate objects are 'that'. Memorize this rule and do not break it.
Do not overuse characters' addressing of one another within dialogue. In real life, people do not always say, 'Tom, can you pass the butter?' (Unless one is trying to get Tom's attention among a group of people before asking for the butter.) People do not say things like, 'How was your day, Sarah?' as often as they seem to do in fiction. Do not follow the lead of lesser writers and have your characters address each other by name in every scene of dialogue. The reader is smart enough to know who is talking to whom, and if it appears the reader might be confused, then that means the writer might be confused, which means there is a good chance that there are too many people in the scene you are writing or it means you need to better orient yourself and the reader within the scene.
Give your female characters something to do besides fall in love. (This is a rule aimed primarily at male writers.) Women in your life have more going on with them than falling in love, so treat your female characters accordingly. Give them jobs that are not elementary school teachers, bakers, florists, designers, dog walkers, artists, manic pixie dream girls. Not every female character wants to be married or have children. She does not have to be physically beautiful or sexually attractive. She does not need to be saved. Do not always make your female characters more vulnerable than your male characters. You will be doing yourself a disservice as a creative person if you limit your female characters in any of these ways. You do not have to be the torch-bearer for feminist literature, but do not demean the female race by giving them shitty emotions and jobs.
Here is a short primer on apostrophes:
incorrect: Chris' car // correct: Chris's car
incorrect: I am at the Davis' house // correct: I am at the Davises' house
incorrect: I am at the Smiths house // correct: I am at the Smiths' house
Again, there are rules you can break, but this (like 'that' and 'who/whom') is not optional. Follow this rule. There are a great many people who consider this rule to be optional, archaic or even silly (and many of these people make menus and signs), but it's better to err on the side of following this rule. The number of readers who will stop reading your book because you followed this rule is going to be much smaller than the number of readers who will stop reading your book because you did not follow this rule.
Use profanity but use it sparingly. Each word in your arsenal comes equipped with varying degrees of power that your book's accompanying culture has assigned it. Learn how to harness this. Profanity is especially powerful, and has its place in fiction (and real life), so be aware that while you can use 'the' and 'and' almost infinitely and a reader won't bat an eye and those words' meanings will not have been diluted, the word 'fuck' is more powerful when used five times in a book as opposed to five hundred. Be provocative but don't let over-provocation get in the way. What I'm fucking trying to fucking say is don't fucking shortchange your fucking self.
(1) Be nosy for the sake of learning new words and expressions: walk in densely crowded areas, eavesdrop in bars and restaurants, read technical manuals, read informational pamphlets, listen to NPR and the BBC, listen to conservative talk radio, listen to your friends talk about their jobs that seem foreign to you, talk to strangers on planes, read pop culture magazines in doctor's office waiting rooms, listen to old folks talk about the past, read town histories written hundreds of years ago, read dictionaries, talk to people who passionately believe things you don't, take tours and listen to the tour guides. If you do any and/or all of these things, you will become a more equipped writer. (2) And learn when to tune out. Rise above the noise online. Ignore when a celebrity says something stupid or a congressperson says something outrageous. Don't get sucked into the quicksand of internet toxicity, and elude as best as you can the kind of armchair expertise articles written by apt pupils with internet connections. If you do not click on the link the people of the internet are clicking on or you don't read the article the people on the internet are talking about, everything will be all right. I promise. The world does not care what you have and have not consumed online, and every controversy does not need your voice. I am certain that you will miss out on some really cool things but being a writer means missing out on lots of really cool things. In the end, it will be worth it.
Do not use the word 'sans'. Almost always, people who use the word 'sans' do so because they want others to know that they know what 'sans' means. Do not be an advertisement for the words you learned your first year of college. See also: 'abstract' and 'subtle'. Banish these words from your vocabulary. And only use the word 'deep' literally. ('Deeply' is all right, if only used sparingly.)
Don't make your reader endure small talk between fictional characters. The reader has already made the leap of faith to invest even a modicum of interest in your story, so make it worth his or her while. The reader assumes that people greet and are introduced to each other the way people are in normal life, so it's not essential that every character says 'hello' and 'nice to meet you'. This is miserable. Writing these kinds of exchanges is criminally dull; the punishment is the reader throwing your book against the wall.
Don't use the word 'random', in either your writing or in conversation. Instead, use the word 'unexpected'.
When you can, avoid 'he said' or 'she said' in dialogue. There are better ways to signify who is talking. When you break from dialogue to say who is speaking, there are other things you can do that will enhance the scene. There is a time and a place for banalities such as 'Tom said', but it's better to describe the character's actions when you can. Name the character and tell the reader what he or she is doing. Add verve to an otherwise dull exchange of words.
Question marks are tonal. A question mark is not required for every question. A question mark indicates that the question ends on a high-pitched note. In reality, we do not deliver every question in the interrogative tone; we speak many questions as if they are declarative sentences. Trust your reader to understand context and know what is and is not a question. Your reader is smart.
Your English teachers were right about almost everything. Follow all the accepted rules of grammar and composition until you are confident enough and knowledgeable enough about the rules that you know how to break them to your advantage and do so with such panache that the reader silently cheers. For the love of God, just don't confuse 'who' and 'whom' with 'that'.