10 Prompts for ChatGPT and GPT-4: From Code Snippets to System Architecture

Introduction

ChatGPT and GPT-4 have transformed how developers approach coding. Whether you're debugging a cryptic error, refactoring legacy code, or designing a microservices architecture, the right prompt can turn an AI assistant into a productive pair programmer. This article curates 10 actionable prompts, ordered from basic to expert, with real code examples and explanations. Each prompt follows best practices from OpenAI's Prompt Engineering Guide and the GPT-4 Technical Report.

1. Generate a Function from a Description

Task: Convert natural language requirements into a Python function.
Prompt:

Write a Python function validate_email(email: str) -> bool that checks if the string contains exactly one @, a domain with at least one dot, and no spaces. Use regex. Include docstring and type hints.
Example Result:

import re

def validate_email(email: str) -> bool:
    """Validate email format using regex."""
    pattern = r'^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$'
    return bool(re.match(pattern, email))

This prompt is effective because it specifies the language, function signature, constraints, and expected output format.

2. Explain a Complex Code Block

Task: Understand an unfamiliar algorithm.
Prompt:

Explain the following Python code line by line, focusing on the time complexity. Assume I know basic Python but not dynamic programming.
def fib(n, memo={}): if n in memo: return memo[n] if n <= 1: return n memo[n] = fib(n-1, memo) + fib(n-2, memo) return memo[n]
Example Result: GPT-4 will annotate each line: memoization dictionary, base cases, recursive calls with caching, reducing O(2^n) to O(n). This approach is recommended by industry practitioners like those at Stack Overflow for onboarding new team members.

3. Debug an Error Message

Task: Fix a runtime error.
Prompt:

I'm getting KeyError: 'username' when running this Django view. Traceback: [...] The request.POST contains {'email': 'a@b.com'}. Why does this happen and how to fix?
Example Result: GPT-4 identifies missing key check and suggests using request.POST.get('username') or a form validation. According to a 2024 study by GitHub, 64% of developers report faster debugging with AI assistance (source: GitHub Blog).

4. Write Unit Tests for a Function

Task: Create test cases covering edge conditions.
Prompt:

Write pytest tests for the validate_email function above. Include tests for valid emails, missing @, multiple @, empty string, and Unicode characters. Use parameterized tests.
Example Result:

import pytest
from email_validator import validate_email

@pytest.mark.parametrize("email,expected", [
    ("user@example.com", True),
    ("user@@example.com", False),
    ("", False),
    ("user@例子.测试", False),  # Punycode not handled
])
def test_validate_email(email, expected):
    assert validate_email(email) == expected

This prompt reduces boilerplate and ensures coverage of edge cases, aligning with the Testing Chapter of pytest docs.

5. Refactor for Readability and Performance

Task: Improve messy code.
Prompt:

Refactor this JavaScript function to use modern ES6+ features, reduce nesting, and improve performance. Add comments explaining changes.
js function getUsers(ids) { var result = []; for (var i = 0; i < ids.length; i++) { var user = getUserFromDB(ids[i]); if (user) { if (user.active) { result.push(user); } } } return result; }
Example Result: GPT-4 will output const getUsers = (ids) => ids.map(getUserFromDB).filter(user => user?.active);. This leverages arrow functions, optional chaining, and chaining. A 2025 survey by JetBrains found that 72% of developers use AI for refactoring (JetBrains Developer Ecosystem 2025).

6. Design an API Endpoint

Task: Create a RESTful endpoint with validation.
Prompt:

Design a Flask endpoint POST /api/register that accepts JSON {username, email, password}. Validate: username 3-20 chars alphanumeric, email valid format, password at least 8 chars with one number. Return appropriate HTTP status codes and error messages. Provide full code including imports.
Example Result: GPT-4 generates a complete Flask route with marshmallow or custom validation, returning 201 on success and 400 with errors on failure. This prompt works because it specifies HTTP method, data structure, validation rules, and output format.

7. Convert Code Between Languages

Task: Translate a function from Python to TypeScript.
Prompt:

Convert the following Python function to TypeScript with strict types. Ensure the same recursion and memoization pattern. Do not use any.
python def fib(n: int, memo: dict[int, int] = {}) -> int: if n in memo: return memo[n] if n <= 1: return n memo[n] = fib(n-1, memo) + fib(n-2, memo) return memo[n]
Example Result: TypeScript version with Record<number, number>. Such cross-language translation is common when migrating services, as noted in Microsoft's AI-assisted code migration guide.

8. Analyze Security Vulnerabilities

Task: Identify potential SQL injection and XSS.
Prompt:

Review this PHP code for security flaws. List each vulnerability, its severity, and how to fix. Focus on OWASP Top 10 (2021).
php $id = $_GET['id']; $query = "SELECT * FROM users WHERE id = $id"; $result = mysqli_query($conn, $query); echo "Welcome " . $user['name'];
Example Result: GPT-4 flags SQL injection (critical) and XSS (medium), suggests prepared statements and htmlspecialchars(). According to OWASP, injection remains #1. This prompt is essential for secure code reviews.

9. Generate a Docker Compose Setup

Task: Create a multi-service development environment.
Prompt:

Write a docker-compose.yml for a web app with a Python Flask backend, PostgreSQL database, and Redis cache. Include health checks, volumes for persistence, and environment variables. The Flask app should wait for Postgres and Redis.
Example Result: GPT-4 provides a YAML file with services, depends_on, healthcheck, and a custom entrypoint script. This prompt accelerates DevOps tasks, a use case highlighted in Docker's AI assistant documentation.

10. Propose a Microservices Architecture

Task: Solve a broad design problem.
Prompt:

I'm building an e‑commerce platform. Propose a microservices architecture with 5‑7 services. For each service, describe its responsibility, API endpoints, data store, and communication patterns (sync/async). Include a diagram description in text. Address eventual consistency and fault tolerance.
Example Result: GPT-4 outlines services: User, Product, Order, Payment, Inventory, Notification, and API Gateway. It suggests using message queues (RabbitMQ) for async flows and retry mechanisms. This demonstrates how GPT-4 can assist in system design interviews or early planning stages.

Conclusion

These 10 prompts cover the spectrum from simple code generation to architectural design. The key to getting high‑quality output is specificity: include language, expected output, constraints, and context. As noted in OpenAI's documentation, iterative refinement further improves results. Use these prompts as templates, adapt them to your stack, and always review generated code for correctness. Start with the first prompt today and see how GPT-4 can elevate your development workflow.

For more advanced use cases, explore the OpenAI Cookbook and Anthropic's Prompt Design.

← All posts

Comments