Grammar Mistakes

Grammar Mistakes

Avoid common grammar mistakes that developers make. Learn the most frequent errors in technical English and how to correct them.

Common Grammar Mistakes Developers Make

Technical English requires clarity and precision. These are the most common grammar mistakes developers make and how to fix them—focus on patterns that matter for professional communication, not obscure rules.

Articles (a, an, the)

The Challenge

Many languages don't have articles, making them difficult for non-native speakers. Yet article mistakes are highly noticeable in professional English.

Common Errors

1. Missing "the" with Specific Things:

code
❌ "I fixed bug in authentication module"
✅ "I fixed the bug in the authentication module"

❌ "Code review is on GitHub"
✅ "The code review is on GitHub"

❌ "Database is running slow"
✅ "The database is running slow"

2. Using "the" with General Things:

code
❌ "The software development is challenging"
✅ "Software development is challenging"

❌ "The developers need to learn constantly"
✅ "Developers need to learn constantly"

❌ "The Python is popular for data science"
✅ "Python is popular for data science"

3. a vs. an:

code
❌ "An URL" ✅ "A URL" (sounds like "you-are-el")
❌ "A hour" ✅ "An hour" (h is silent)
❌ "An user" ✅ "A user"

Rule: Use "an" before vowel SOUNDS, not vowel letters
- "an API" (sounds like "ay")
- "a European standard" (sounds like "yoo")

Simple Rules

Use "the":

  • Specific, known thing: "the server crashed"
  • Previously mentioned: "I deployed an app. The app works."
  • Unique things: "the production database"
  • Superlatives: "the best solution"

Use "a/an":

  • One of many: "a database," "an API"
  • First mention: "I found a bug"
  • Job/role: "I'm a developer"

No Article:

  • General concepts: "code quality matters"
  • Programming languages: "Python," "JavaScript"
  • Technologies in general: "I love Docker"
  • Plural general: "developers," "servers"

Tech-Specific Patterns

code
✅ "the API" (specific API you're discussing)
✅ "an API" (any API, general)
✅ "APIs" (plural, general concept)

✅ "the repository" (your repo)
✅ "a repository" (any repo)
✅ "Git repositories" (general concept)

✅ "the production environment"
✅ "a staging environment"
✅ "development environments" (general)

Prepositions

Common Preposition Errors

1. on, in, at (Time):

code
❌ "in Monday" ✅ "on Monday"
❌ "at 2025" ✅ "in 2025"
❌ "in 3pm" ✅ "at 3pm"

Pattern:
- at: specific time (at 3pm, at noon)
- on: days/dates (on Monday, on Jan 15)
- in: months/years/periods (in January, in 2025, in the morning)

2. on, in, at (Place):

code
❌ "in GitHub" ✅ "on GitHub"
❌ "in the server" ✅ "on the server"
❌ "at the codebase" ✅ "in the codebase"

Pattern:
- at: specific point (at the office, at home)
- on: surface/platform (on GitHub, on the website)
- in: contained space (in the database, in the repository)

3. Technical Prepositions:

code
❌ "written by Python" ✅ "written in Python"
❌ "work as a project" ✅ "work on a project"
❌ "experience at React" ✅ "experience with React"
❌ "depend from X" ✅ "depend on X"
❌ "integrate to the API" ✅ "integrate with the API"

Common Patterns:
- written IN a language
- work ON a project
- experience WITH a technology
- depend ON something
- integrate WITH something
- deploy TO production
- merge INTO main
- commit TO the repository

Phrasal Verbs (Verb + Preposition)

code
Common in Tech:
- set up (configure): "set up the environment"
- log in/out: "log in to the system"
- back up: "back up the database"
- roll back: "roll back the deployment"
- break down: "break down the task"
- figure out: "figure out the bug"
- look into: "look into the issue"
- come up with: "come up with a solution"

Can't be separated:
❌ "look the issue into"
✅ "look into the issue"

Subject-Verb Agreement

The Rule

Subject and verb must match in number (singular/plural).

Common Errors

1. Compound Subjects:

code
❌ "The server and database is down"
✅ "The server and database are down"

❌ "Each developer have their own setup"
✅ "Each developer has their own setup"

❌ "Neither option work"
✅ "Neither option works"

2. Collective Nouns:

code
US English (singular):
"The team is working on it"
"The company has decided"

UK English (can be plural):
"The team are working on it"
"The company have decided"

In tech writing, US convention is more common.

3. There is/are:

code
❌ "There is several bugs"
✅ "There are several bugs"

❌ "There is a bug and a typo"
✅ "There are a bug and a typo"

Pattern: Match to the noun after is/are

4. Uncountable Nouns:

code
Always Singular:
- Information: "The information is correct"
- Software: "The software is buggy"
- Data: "The data shows..." (formal)
- Data: "The data show..." (less common)
- Code: "The code is clean"
- Work: "The work is done"
- Feedback: "The feedback is helpful"

Can't Say:
❌ "informations," "softwares," "codes"

Tense Consistency

Choose One Tense and Stick With It

1. Mixing Past and Present:

code
❌ "I reviewed the code and find three bugs"
✅ "I reviewed the code and found three bugs"

❌ "The server crashed and returns an error"
✅ "The server crashed and returned an error"

2. Documentation Tense:

code
Consistent Present:
"The function takes two parameters and returns a string.
It validates the input and throws an error if invalid."

Not:
"The function took two parameters and will return a string.
It validated the input and throws an error if invalid."

3. Commit Messages:

code
Convention: Present tense (imperative)
✅ "Add authentication"
✅ "Fix login bug"
✅ "Refactor database layer"

Not:
❌ "Added authentication"
❌ "Fixing login bug"
❌ "Will refactor database layer"

Present Perfect vs. Simple Past

Present Perfect (have/has + past participle):

  • Action in past, relevant now
  • Unspecified time
  • "I have fixed the bug" (it's fixed now)
  • "We have deployed 3 times this week"

Simple Past:

  • Specific time
  • Completed action
  • "I fixed the bug yesterday"
  • "We deployed at 3pm"
code
Common Pattern:
❌ "I already fixed the bug" 
✅ "I've already fixed the bug" or "I already fixed it yesterday"

❌ "Did you finished the feature?"
✅ "Have you finished the feature?" or "Did you finish it yesterday?"

Singular vs. Plural

Countable vs. Uncountable

Countable (can count them):

code
Singular: "a bug," "one server"
Plural: "bugs," "servers"
Many/Few: "many bugs," "few servers"

Uncountable (can't count them):

code
No Plural: "information" not "informations"
Much/Little: "much code," "little progress"
A piece of: "a piece of advice," "a piece of information"

Common Uncountable in Tech:
- information, data, software, hardware
- code, work, research, advice, feedback
- progress, experience, knowledge

This/These, That/Those

code
❌ "This bugs need fixing"
✅ "These bugs need fixing"

❌ "That are the issues"
✅ "Those are the issues"

Pattern:
- this/that = singular
- these/those = plural

Modal Verbs

Common Modals in Tech

can/could (ability):

code
"We can implement this feature"
"Could you review my PR?"

should/would (advice/preference):

code
"We should refactor this"
"I would suggest using Redis"

must/have to (necessity):

code
"We must fix this bug" (strong)
"We have to deploy by Friday" (required)

might/may (possibility):

code
"This might cause issues"
"We may need to redesign"

Modal Mistakes

1. Double Modals:

code
❌ "We should can do this"
✅ "We should be able to do this"

❌ "It might can work"
✅ "It might work"

2. Modal + Base Verb (not infinitive):

code
❌ "We should to implement this"
✅ "We should implement this"

❌ "You must to review the code"
✅ "You must review the code"

3. Past Modals:

code
Present: "We should fix this"
Past: "We should have fixed this" (but didn't)

Present: "This might work"
Past: "This might have worked" (uncertain past)

Conditional Sentences

Type 1: Real Future Possibility

Structure: If + present, will + base verb

code
✅ "If we deploy today, users will see the changes tomorrow"
✅ "If the test fails, the build will break"

❌ "If we will deploy, users will see"
❌ "If the test will fail, the build breaks"

Type 2: Hypothetical Present

Structure: If + past, would + base verb

code
✅ "If we used Redis, the app would be faster"
✅ "If I were you, I would refactor this"

❌ "If we use Redis, the app would be faster"
❌ "If I was you" (informal OK, formal use "were")

Type 3: Hypothetical Past

Structure: If + had + past participle, would have + past participle

code
✅ "If we had tested it, we would have caught the bug"
✅ "If I had known, I would have helped"

❌ "If we tested it, we would have caught"

Tech Examples

code
"If the API returns an error, we show a message"
"If we implement caching, performance will improve"
"If we had more time, we would add tests"
"If I had reviewed the code, I would have spotted that"

Word Order

Questions

Structure: Auxiliary + Subject + Verb

code
❌ "You can review this?"
✅ "Can you review this?"

❌ "The server is running?"
✅ "Is the server running?"

❌ "When you will deploy?"
✅ "When will you deploy?"

Adjective Order

Pattern: Opinion → Size → Age → Shape → Color → Origin → Material → Purpose

code
✅ "A new Python framework"
❌ "A Python new framework"

✅ "An interesting small startup"
❌ "A small interesting startup"

✅ "A beautiful old European library"
Not "An old beautiful European library"

Adverb Placement

code
Usually: Between subject and verb
"I always test my code"
"We usually deploy on Friday"
"The server sometimes crashes"

Not:
❌ "I test always my code"
❌ "Always I test my code" (emphatic only)

Commonly Confused Words

it's vs. its

code
it's = it is
"It's a bug" = "It is a bug"
"It's working" = "It is working"

its = possessive (belonging to it)
"The app is slow. Its database needs optimization"
"The server lost its connection"

❌ "Its a bug"
❌ "The app lost it's connection"

their, there, they're

code
their = possessive
"Their code is clean"

there = place, or "there is/are"
"The bug is there"
"There are three issues"

they're = they are
"They're working on it"

❌ "There working on it"
❌ "They're code is clean"

affect vs. effect

code
affect = verb (to influence)
"This change affects performance"

effect = noun (result)
"The effect is noticeable"

Trick: Affect is an Action (both start with A)

then vs. than

code
then = time (next, after)
"First deploy, then test"

than = comparison
"Redis is faster than MySQL"

❌ "Faster then MySQL"
❌ "First deploy, than test"

Sentence Structure

Run-on Sentences

code
❌ "I fixed the bug I deployed the code it works now"

✅ Options:
"I fixed the bug. I deployed the code. It works now."
"I fixed the bug, deployed the code, and it works now."
"I fixed the bug. After deploying, it works now."

Fragments

code
❌ "Because the server crashed."
✅ "The users saw errors because the server crashed."

❌ "Which is deployed on AWS."
✅ "The application, which is deployed on AWS, is running well."

Parallel Structure

code
❌ "We need to refactor, testing, and deploy"
✅ "We need to refactor, test, and deploy"

❌ "The code is fast, efficient, and has clean syntax"
✅ "The code is fast, efficient, and clean"

Fixing Your Grammar

1. Tools

Grammarly:

  • Real-time checking
  • Explanations
  • Browser extension

LanguageTool:

  • Open source
  • Multi-language
  • IDE integration

Hemingway Editor:

  • Readability
  • Sentence complexity
  • Passive voice detection

2. Practice

Daily Writing:

  • Technical blog
  • Documentation
  • Code comments
  • Slack messages

Review:

  • Read your writing aloud
  • Use grammar checker
  • Ask native speaker
  • Rewrite unclear sentences

3. Priority Learning

Focus On:

  1. Articles (most noticeable)
  2. Subject-verb agreement
  3. Tense consistency
  4. Prepositions
  5. Plural/singular

Don't Worry Much About:

  • Perfect comma placement
  • Advanced punctuation
  • Obscure grammar rules
  • Native-like idioms

4. Patterns Over Rules

Learn Phrases:

Instead of grammar rules, memorize common patterns:

  • "I'm working on X"
  • "We need to improve X"
  • "The code is written in X"
  • "This depends on X"

5. Read Technical English

Sources:

  • Technical documentation
  • GitHub README files
  • Tech blogs (Martin Fowler, etc.)
  • Stack Overflow answers
  • Technical books

Notice:

  • How sentences are structured
  • Common phrases
  • Tense usage
  • Professional tone

Common Mistakes by Native Language

Spanish Speakers

Articles:

code
Often omitted:
❌ "Database is slow"
✅ "The database is slow"

Noun-Adjective Order:

code
❌ "A library good"
✅ "A good library"

Chinese Speakers

Articles:

code
Chinese has no articles:
❌ "I fixed bug"
✅ "I fixed the bug"

Plural:

code
❌ "Three bug"
✅ "Three bugs"

Tense:

code
❌ "Yesterday I fix the bug"
✅ "Yesterday I fixed the bug"

Japanese Speakers

Articles:

code
No articles in Japanese:
❌ "Server is running"
✅ "The server is running"

Plural:

code
❌ "Many developer"
✅ "Many developers"

Subject:

code
Often omitted in Japanese:
❌ "Is working"
✅ "It is working"

Russian Speakers

Articles:

code
No articles in Russian:
❌ "Application is deployed"
✅ "The application is deployed"

Present Tense of "be":

code
Omitted in Russian:
❌ "Server fast"
✅ "The server is fast"

Practice Exercises

Exercise 1: Articles

Add articles where needed:

code
"I found bug in authentication module. Bug was caused 
by typo in code. After fixing bug, I deployed 
application to production."

Answer:
"I found a bug in the authentication module. The bug 
was caused by a typo in the code. After fixing the bug, 
I deployed the application to production."

Exercise 2: Prepositions

Fill in correct prepositions:

code
1. I work ___ Google.
2. The code is written ___ Python.
3. We'll deploy ___ Friday.
4. The bug is ___ the database layer.
5. I have experience ___ React.

Answers: at, in, on, in, with

Exercise 3: Tense

Correct the tense errors:

code
"Yesterday I work on the authentication feature. I 
wrote some code and test it. Today I will deployed 
to production."

Answer:
"Yesterday I worked on the authentication feature. I 
wrote some code and tested it. Today I will deploy (or 
I'm deploying) to production."

Next Steps

Improve your English:

Grammar improves with practice and feedback. Use grammar tools, write daily, and focus on the patterns that matter most for professional communication. Perfection isn't necessary—clarity is.