Ask Mode: The Art of Questions

Ask Mode is where most people start—and where most people stay. It’s the conversational interface: you ask, AI answers. Simple in concept, but there’s surprising depth to doing it well.

What Ask Mode Is For

Ask Mode excels at:

  • Learning concepts: “Explain how JWT authentication works”
  • Getting information: “What are the WCAG accessibility guidelines?”
  • Clarifying understanding: “What’s the difference between margin and padding?”
  • Exploring topics: “What are the pros and cons of microservices?”
  • Troubleshooting: “Why might my React component re-render unnecessarily?”

The common thread: you’re seeking knowledge, not action.

The Anatomy of a Good Question

flowchart LR
    A[Context] --> B[Core Question]
    B --> C[Desired Format]
    C --> D[Constraints]

1. Context

What does the AI need to know to answer well?

Without context:

“How do I handle errors?”

With context:

“I’m building a Node.js REST API using Express. How should I handle errors consistently across all endpoints?”

Context transforms generic answers into relevant ones.

2. Core Question

What exactly do you want to know? Be specific.

Vague:

“Tell me about databases”

Specific:

“What factors should I consider when choosing between SQL and NoSQL databases for a new project?“

3. Desired Format

How do you want the information presented?

  • “Explain like I’m a beginner”
  • “Give me a technical deep-dive”
  • “Summarize in bullet points”
  • “Provide a comparison table”
  • “Walk me through step by step”

4. Constraints

What limitations or focus areas apply?

  • “Focus on performance implications”
  • “Keep it under 200 words”
  • “Consider only free/open-source options”
  • “Assume I’m using TypeScript”

Ask Mode Patterns

The Explainer Pattern

Use when you need to understand a concept.

Template:

“Explain [concept] to someone who [experience level]. Focus on [specific aspect]. Include [examples/analogies/use cases].”

Example:

“Explain event-driven architecture to someone who understands basic web development. Focus on when it’s beneficial versus traditional request-response patterns. Include a real-world analogy.”

The Comparison Pattern

Use when evaluating options.

Template:

“Compare [option A] and [option B] for [use case]. Consider [criteria 1], [criteria 2], and [criteria 3]. Format as a table.”

Example:

“Compare React and Vue for building a dashboard application. Consider learning curve, performance, and ecosystem maturity. Format as a table with my use case recommendations.”

The Troubleshooting Pattern

Use when debugging or solving problems.

Template:

“I’m experiencing [problem] when [context]. I’ve tried [what you’ve attempted]. My setup is [relevant details]. What might be causing this?”

Example:

“I’m experiencing slow initial page loads on my Next.js app. I’ve tried optimizing images and enabling compression. My setup is Next.js 14 with Vercel deployment. What might be causing this and how can I diagnose it?”

The “Why” Pattern

Use when you need deeper understanding.

Template:

“Why does [thing] work the way it does? What’s the underlying reason or design decision?”

Example:

“Why does JavaScript use prototypal inheritance instead of classical inheritance? What’s the historical and technical reasoning?”

The Boundary Pattern

Use when you need to understand limits.

Template:

“What are the limitations of [thing]? When would it be the wrong choice? What are common pitfalls?”

Example:

“What are the limitations of using localStorage for state management? When would it be the wrong choice? What are common pitfalls developers encounter?”

Conversational Depth

Ask Mode is inherently conversational. Don’t treat it as one-shot Q&A. Build on responses.

Initial question:

“What’s the Repository pattern in software design?”

Follow-up 1:

“How would I implement this in a TypeScript Node.js application?”

Follow-up 2:

“Show me how this would work with a PostgreSQL database using Prisma.”

Follow-up 3:

“What are the testing implications of this pattern?”

Each question narrows focus and increases practical relevance.

Ask Mode for Different Domains

Technical/Development

"I'm implementing [feature] using [technology]. 
My current approach is [description]. 
What are the best practices I should follow?
Are there any common mistakes to avoid?"

Business/Strategy

"I'm considering [business decision].
My context is [situation details].
What questions should I be asking myself?
What factors am I potentially overlooking?"

Learning/Education

"I want to learn [skill/topic].
My current level is [experience].
What's the most effective learning path?
What are the key concepts I must understand first?"

Creative/Writing

"I'm writing [type of content] about [topic].
My audience is [description].
What angles or perspectives should I consider?
What makes this topic interesting to readers?"

Common Ask Mode Mistakes

1. Questions That Should Be Commands

Ineffective: “Can you write a function that validates email addresses?” Better approach: Use Edit or Agent Mode: “Write a TypeScript function that validates email addresses.”

Ask Mode is for learning, not doing. If you want output, switch modes.

2. Overly Broad Questions

Too broad: “Tell me about machine learning” Focused: “What are the key differences between supervised and unsupervised machine learning, and when would I use each?”

Broad questions get broad answers. Narrow for relevance.

3. Missing Context

Context-free: “Is this a good approach?” With context: “For a high-traffic e-commerce site expecting 10K concurrent users, is using session-based authentication a good approach? What should I consider?”

The AI can’t read your mind. Provide the information needed for a useful answer.

4. Not Following Up

One question rarely gets you everything you need. Ask follow-ups. Dig deeper. Clarify.

5. Accepting the First Answer

AI responses aren’t always correct or complete. Challenge them:

  • “Are there any exceptions to this?”
  • “What’s the opposing viewpoint?”
  • “Is this still current best practice?”

Ask Mode Examples

Example 1: Technical Learning

I'm learning about WebSockets for a real-time chat application.

Questions:
1. How do WebSockets differ from HTTP long-polling?
2. What are the main challenges in scaling WebSocket connections?
3. When would Server-Sent Events be a better choice?

Please explain assuming I understand basic HTTP but haven't worked with real-time systems before.

Example 2: Decision Support

I'm deciding whether to build a mobile app as native (Swift/Kotlin) or cross-platform (React Native/Flutter).

Context:
- Small team (2 developers)
- Need iOS and Android
- App involves camera access and local storage
- Timeline is 4 months

What questions should I be asking to make this decision? What are the key tradeoffs I'll face?

Example 3: Debugging

My PostgreSQL query is running slowly (15+ seconds):

SELECT * FROM orders 
JOIN customers ON orders.customer_id = customers.id 
WHERE orders.created_at > '2024-01-01'
ORDER BY orders.total DESC
LIMIT 100;

The orders table has 5M rows, customers has 500K rows.

What could be causing the slowness? What should I check first?

Practice Exercise

Write three Ask Mode prompts for your current work or learning:

1. Concept Explanation Write a prompt to understand a concept you’ve been confused about. Include context, specific aspects you want covered, and desired format.

2. Comparison Question Write a prompt comparing two options you’re evaluating. Include your use case, criteria that matter, and constraints.

3. Troubleshooting Question Write a prompt about a problem you’re experiencing. Include what you’ve tried, your setup, and specific symptoms.

Review your prompts. Do they include context? Are they specific? Do they indicate desired format?

Key Takeaways

  • Ask Mode is for learning and understanding, not executing
  • Good questions include context, specificity, and format preferences
  • Use patterns (Explainer, Comparison, Troubleshooting) for common scenarios
  • Build conversations—follow up, dig deeper, challenge assumptions
  • Know when to switch to other modes (Edit, Agent) for action

Next lesson: Edit Mode—transforming what exists into what you need.

What is Ask Mode best suited for?

Getting information, explanations, and understanding concepts
Executing multi-step tasks
Modifying existing code or content
Creating long-term strategic plans

What are the four components of a well-structured question?

Who, What, When, Where
Input, Process, Output, Feedback
Context, Core Question, Desired Format, Constraints
Problem, Solution, Implementation, Testing

What's wrong with asking 'Can you write a function that does X?'

It's too long
It's phrased as a question when you want action—should use Edit/Agent Mode
It doesn't include enough context
AI can't write code

How should you handle an AI response that might not be complete?

Accept it and move on
Start over with a new question
Report the AI as broken
Ask follow-up questions to dig deeper and challenge assumptions