
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:
❌ "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:
❌ "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:
❌ "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
✅ "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):
❌ "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):
❌ "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:
❌ "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 repositoryPhrasal Verbs (Verb + Preposition)
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:
❌ "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:
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:
❌ "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/are4. Uncountable Nouns:
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:
❌ "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:
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:
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"
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):
Singular: "a bug," "one server"
Plural: "bugs," "servers"
Many/Few: "many bugs," "few servers"Uncountable (can't count them):
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, knowledgeThis/These, That/Those
❌ "This bugs need fixing"
✅ "These bugs need fixing"
❌ "That are the issues"
✅ "Those are the issues"
Pattern:
- this/that = singular
- these/those = pluralModal Verbs
Common Modals in Tech
can/could (ability):
"We can implement this feature"
"Could you review my PR?"should/would (advice/preference):
"We should refactor this"
"I would suggest using Redis"must/have to (necessity):
"We must fix this bug" (strong)
"We have to deploy by Friday" (required)might/may (possibility):
"This might cause issues"
"We may need to redesign"Modal Mistakes
1. Double Modals:
❌ "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):
❌ "We should to implement this"
✅ "We should implement this"
❌ "You must to review the code"
✅ "You must review the code"3. Past Modals:
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
✅ "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
✅ "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
✅ "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
"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
❌ "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
✅ "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
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
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
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
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
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
❌ "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
❌ "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
❌ "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:
- Articles (most noticeable)
- Subject-verb agreement
- Tense consistency
- Prepositions
- 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:
Often omitted:
❌ "Database is slow"
✅ "The database is slow"Noun-Adjective Order:
❌ "A library good"
✅ "A good library"Chinese Speakers
Articles:
Chinese has no articles:
❌ "I fixed bug"
✅ "I fixed the bug"Plural:
❌ "Three bug"
✅ "Three bugs"Tense:
❌ "Yesterday I fix the bug"
✅ "Yesterday I fixed the bug"Japanese Speakers
Articles:
No articles in Japanese:
❌ "Server is running"
✅ "The server is running"Plural:
❌ "Many developer"
✅ "Many developers"Subject:
Often omitted in Japanese:
❌ "Is working"
✅ "It is working"Russian Speakers
Articles:
No articles in Russian:
❌ "Application is deployed"
✅ "The application is deployed"Present Tense of "be":
Omitted in Russian:
❌ "Server fast"
✅ "The server is fast"Practice Exercises
Exercise 1: Articles
Add articles where needed:
"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:
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, withExercise 3: Tense
Correct the tense errors:
"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:
- Practice Technical Vocabulary
- Master Email Writing
- Improve Technical Writing
- Build Communication Skills
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.