テキストでの質問の書き方
ストーリー
「田中さん、Slackで質問するときってどう書けばいいですか?対面と同じ感じ?」
「基本は同じだけど、テキストならではのコツがあるよ。画面を見せられない分、文章で伝える工夫が必要なんだ」
「文章だけで伝えるの、難しそう...」
「スクリーンショットやコードブロックを使えば、対面よりわかりやすくなることもあるよ」
テキスト質問の基本ルール
対面との違い
| 比較 | 対面 | テキスト |
|---|---|---|
| 情報量 | 画面を見せながら説明できる | 文章で伝える必要がある |
| タイミング | 相手の反応を見ながら | 相手が読むタイミングは不明 |
| やりとり | リアルタイムで往復 | 返答に時間がかかることがある |
| 記録 | 記録に残りにくい | 自動的に記録が残る |
テキスト質問の3原則
- 1つのメッセージで完結させる -- 何度もやりとりしなくて済むように
- 視覚的にわかりやすく -- 箇条書き、コードブロック、スクリーンショット
- 相手のアクションを明確に -- 何をしてほしいかを書く
Slackでの質問フォーマット
基本テンプレート
@田中さん お忙しいところすみません。
[タスク名]について質問です。
【やりたいこと】
ログインフォームの送信処理を実装したい
【現状】
送信ボタンクリック時に以下のエラーが発生します
```TypeError: handleSubmit is not a function```
【試したこと】
- 公式ドキュメントで関数の定義方法を確認 → 問題なさそう
- console.logで関数の存在を確認 → undefinedと表示された
【コード】
```javascript
const LoginForm = () => {
const handleSubmit = (e) => {
e.preventDefault();
// ログイン処理
};
return <form onSubmit={handleSubmit}>...</form>;
};
アドバイスいただけますか? お手すきの際にお願いいたします。
---
## コードブロックの使い方
### Slackでのコードブロック
**インラインコード(短いコード):**
変数名 や 関数名() のように書く
表示: `変数名` や `関数名()`
**複数行のコードブロック:**
javascript
const greeting = "Hello";
console.log(greeting);
### コードを共有するときのポイント
```
○ エラーが発生している部分のコードを貼る
○ 関連する部分だけを抜粋する(長すぎない)
○ 言語名を指定する(シンタックスハイライト)
× ファイル全体を貼る(長すぎて読めない)
× スクリーンショットでコードを貼る(コピーできない)
```
---
## スクリーンショットの活用
### スクリーンショットが有効な場面
| 場面 | なぜ有効か |
|------|-----------|
| 画面のレイアウトが崩れている | 文章では伝えにくい |
| エラー画面が表示されている | 見た目でわかる |
| 期待する表示と実際の表示の比較 | ビフォーアフターで伝わる |
### スクリーンショットの撮り方
| OS | ショートカット | 説明 |
|-----|-------------|------|
| Windows | `Win + Shift + S` | 範囲選択してキャプチャ |
| Mac | `Cmd + Shift + 4` | 範囲選択してキャプチャ |
| Mac | `Cmd + Shift + 5` | スクリーンキャプチャメニュー |
### 良いスクリーンショットのポイント
```
○ 必要な部分だけを切り取る
○ エラーメッセージが読める大きさ
○ 矢印や赤枠で問題箇所を示す(可能なら)
× デスクトップ全体を撮る(情報過多)
× 小さすぎて読めない
× 個人情報が写り込んでいる
```
---
## テキスト質問のNGパターン
### NG 1: 「ちょっといいですか?」だけ送る
```
× 「田中さん、ちょっといいですか?」
(相手: 「何の用だろう?とりあえず返事しなきゃ...」)
→ 待ち時間が発生
○ 「田中さん、ログイン機能の実装について質問です。
[質問内容をすべて書く]
お手すきの際にお願いいたします。」
→ 相手が都合の良いときに回答できる
```
### NG 2: 情報を小出しにする
```
× メッセージ1: 「エラーが出ました」
メッセージ2: 「ログイン画面です」
メッセージ3: 「TypeErrorです」
メッセージ4: 「handleSubmitが...」
→ 相手は全部読まないと状況がわからない
○ 1つのメッセージにまとめて書く
→ 相手は1回読むだけで全体を把握できる
```
### NG 3: 曖昧な表現
```
× 「なんか変です」「うまくいきません」「微妙です」
○ 「送信ボタンをクリックしても画面が遷移しない」
○ 「期待値は200だが、実際には404が返ってくる」
```
---
## 返信をもらったら
### すぐにできること
```
1. お礼のリアクション(Slackの場合)
→ 絵文字で「読みました」を伝える
2. 試した結果を報告
→ 「教えていただいた方法で解決しました!
ありがとうございます」
3. 追加質問がある場合
→ スレッドで続ける(チャンネルを汚さない)
```
### スレッドの使い方
```
チャンネル(メインの投稿):
→ 質問を投稿
スレッド(返信の中):
→ やりとり、追加質問、結果報告
→ チャンネルが質問で埋まらず、整理される
```
---
## まとめ
| ポイント | 内容 |
|----------|------|
| 3原則 | 1メッセージで完結、視覚的にわかりやすく、アクション明確 |
| コードの共有 | コードブロックを使う、関連部分のみ |
| スクリーンショット | 必要な部分だけ切り取る |
| NG | 「いいですか?」だけ、情報小出し、曖昧表現 |
- [x] テキストでの質問フォーマットを理解した
- [x] コードブロックとスクリーンショットの使い方がわかった
- [ ] 実際に質問文を書く練習をする
---
## 次のステップへ
テキストでの質問の書き方がわかりましたね。
次のセクションでは、5つのシナリオで実際に質問文を作成する演習です。
学んだフォーマットを使って実践しましょう。
---
*推定読了時間: 30分*