見出し画像

【今がチャンス】プログラミング学習を挫折しない理由と学習方法

こんにちは、龍Taroです。今回は次の疑問に答えます。

「プログラミング学習を再度挑戦したいけど挫折しない学習方法をありますか?」

✓この記事で学べること

  • 基礎のプログラミング学習は思っているほど難しくない事がわかる。

  • 挫折しない楽しいプログラミング学習方法が学べる。

  • 無料のメルマガで定期的な学習アップロード可能。

この記事を書いている僕もまだプログラミング学習をはじめて8カ月ほどです。
実際に僕もプログラミング学習を挫折した経験が2回あります。そんな僕でもこのプログラミング学習の2カ月後にはクラウドソーシングを通して案件を獲得できました。

今後も行動しつつ、僕のメルマガでは「学習方法、案件獲得の戦略、収益」を公開していきます。

プログラミング学習って思っているほど難しくない理由

プログラミング学習をしたことある人なら以下のような悩みを経験した事があるはずです。

今までのプログラミング学習の悩み

  • 覚えることがたくさん

  • エラーが出てるけど解決できない

  • 質問したいけど質問できる人がいない

このような悩みでつまずいた人にとってはチャンスです。基礎のプログラミング学習ではこの悩みを抱えることなくクリアできます。

ChatGPTを使ったプログラミング学習方法

上記の悩みは全てChatGPTで解決できます。ChatGPTは文章を書いてくれたり、検索として使う人も多いようですが、コードを書く時にも素晴らしく良い機能を果たします。

覚えることがたくさん

例えば以下のような指示を与えます。「スプレッドシートとLINEを連携させるために必要な言語を教えてください」

スプレッドシートとLINEを連携させるためには、以下の方法と技術が考えられます:

Google Apps Script (GAS): Googleスプレッドシートの背後にあるスクリプト言語です。JavaScriptベースで、スプレッドシートのデータを操作したり、外部サービスとの連携を行ったりすることができます。

LINE Messaging API: LINEボットを作成し、ユーザーとのコミュニケーションを自動化するためのAPIです。HTTPリクエストを使って、メッセージの送受信やユーザーの情報取得などの操作ができます。

さらに「では実際にコードを書いてください」と指示をだします。

了解しました。以下は、Googleスプレッドシートのデータを取得し、そのデータをLINEユーザーに送信する基本的なコードの例です。

1. **Google Apps Script (GAS) でのスプレッドシートデータの取得**:

```javascript
function getSpreadsheetData() {
  // スプレッドシートを開く
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  
  // A1セルのデータを取得
  var data = sheet.getRange("A1").getValue();
  
  return data;
}
```

2. **LINE Messaging APIを使用してデータをLINEユーザーに送信**:

```javascript
function sendToLINE(data) {
  var TOKEN = "YOUR_LINE_CHANNEL_ACCESS_TOKEN"; // LINEのチャンネルアクセストークンをセット
  var USER_ID = "YOUR_LINE_USER_ID"; // 送信先のLINEユーザーIDをセット
  
  var url = "https://api.line.me/v2/bot/message/push";
  
  var headers = {
    "Authorization": "Bearer " + TOKEN,
    "Content-Type": "application/json"
  };
  
  var payload = {
    "to": USER_ID,
    "messages": [{
      "type": "text",
      "text": data
    }]
  };
  
  var options = {
    "method": "post",
    "headers": headers,
    "payload": JSON.stringify(payload)
  };
  
  // LINEにメッセージを送信
  UrlFetchApp.fetch(url, options);
}

function main() {
  var data = getSpreadsheetData();
  sendToLINE(data);
}
```

注意点:
- 上記のコードは基本的な例です。実際の環境や要件に合わせてカスタマイズが必要です。
- `YOUR_LINE_CHANNEL_ACCESS_TOKEN` と `YOUR_LINE_USER_ID` は適切な値に置き換えてください。
- LINE Messaging APIを使用するには、LINE Developersのアカウントとチャンネルの作成が必要です。
- Google Apps Scriptの制限やクォータに注意してください。

このコードを実際に動作させるには、Googleスプレッドシートのスクリプトエディタにコードを貼り付け、必要な情報を設定した後、`main`関数を実行します。

このようにGASを覚えなくともコードを生成してくれます。
※もちろんこのままでは使えないのでもっと指示を出して作り上げる必要があります。

エラーが出てるけど解決できない

エラー表示されたコードを直接ChatGPTに質問します。
たとえば「エラーException: Request failed for https://api.line.me returned code 401. Truncated server response: {"message":"Authentication failed. Confirm that the access token in the authorization header is valid."} (use muteHttpExceptions option to examine full response)sendToLINE@ コード.gs:38」

エラーメッセージから、LINE Messaging APIへのリクエストが認証エラー(HTTPステータスコード401)で失敗していることがわかります。以下の点を確認してください:

1. **アクセストークンの確認**: `YOUR_LINE_CHANNEL_ACCESS_TOKEN` として設定したアクセストークンが正しいか確認してください。このトークンはLINE Developersのダッシュボードから取得できます。

2. **トークンの有効期限**: アクセストークンには有効期限があります。もしトークンが期限切れであれば、新しいトークンを取得してください。

3. **ヘッダーの設定**: `Authorization` ヘッダーの値が `"Bearer " + TOKEN` となっていることを確認してください。スペースの有無や、`Bearer` の綴りなど、細かい点もチェックしてみてください。

4. **LINE Developersの設定**: LINE Developersのダッシュボードで、チャンネルの設定を確認してください。特に、IPアドレスの制限や、使用しているAPIの権限などが正しく設定されているかを確認してください。

上記の点を確認しても問題が解決しない場合、詳しい設定や状況を教えていただければ、さらにサポートいたします。

このように的確にエラーの解決方法を教えてくれます。

質問したいけど質問できる人がいない

上記のGASを使ったことがなくてそもそもコードの書くところすらわからない。といったこともあるでしょう。聞いてみましょう。

申し訳ございません。Google Apps Script (GAS) の基本的な使い方から説明いたします。

### Google Apps Scriptの使い方:

1. **Googleスプレッドシートを開く**:
   - 新しいGoogleスプレッドシートを開くか、既存のスプレッドシートを開きます。

2. **スクリプトエディタを開く**:
   - スプレッドシートの上部メニューから「拡張機能」 > 「Apps Script」を選択します。

3. **コードを書く**:
   - 開かれたスクリプトエディタに、先ほど提供したコードをコピー&ペーストします。

4. **保存**:
   - スクリプトエディタの上部メニューから「ファイル」 > 「保存」を選択します。プロジェクトに名前を付けることができます。

5. **実行**:
   - スクリプトエディタの上部にある再生ボタン(▶️)をクリックして、`main`関数を実行します。

6. **APIの利用許可**:
   - 初めてスクリプトを実行する際、Googleアカウントの認証が求められます。指示に従って許可を与えてください。

7. **外部サービスへのアクセス許可**:
   - UrlFetchAppを使用して外部のAPIにアクセスする場合、初めての実行時に許可を求められます。指示に従って許可を与えてください。

以上がGoogle Apps Scriptの基本的な使い方です。もし何か疑問点や不明点があれば、お気軽にお知らせください。

ここまで来ると「プログラミング学習ってかんたんじゃん」って思ってくれる方も多いのではないかと思います。

おすすめのノーコードツール3選【これだけ使えれば問題なし】

さらに今はChatGPT以外にもノーコードツールで簡単に業務効率化できたりアプリを作れたりもできます。以下はオススメのツールです。

Make(旧integromat)

コーディングをせずにウェブアプリケーション間の自動化を行うことが可能です。上記のChatGPTを使用したプログラミングよりも簡単に実装できます。
Makeのおすすめポイントの一つで、LINEとの連携が簡単に行えます。視覚として複数のアプリを繋ぐところがわかりやすいです。

Zapier

makeと同様にアプリ間の自動化が可能です。また5,000以上のWEBアプリやクラウドサービス、SNSなどを連携でできます。
Makeに慣れてきたらzapierで作業するのもアリ。できる幅が増えます。
また、現在(2023/10/06)は文章で指示を出しシナリオを作成してくれるので、さらに簡単に時短で作れるようになっています。

bubble

bubbleはノーコードでウェブアプリケーションを作ることができるサービスです。ドラッグアンドドロップで操作することができますので、ビジュアルプログラミングとも呼ばれています。


これからプログラミング学習に再挑戦したい人へ

ここまでで「プログラミング学習って簡単」って感じた方も、いかの3つのポイントを押さえないと挫折するので注意です。

その① ChatGPTの理解
その② 作りたいものを作る
その③ プログラミング思考を育てる

その① ChatGPTの理解

上記では簡単に指示を出すことでコードを書いてくれた。ように見えますが、実際にはあれだけのコードでは使えない事が多々。

「なんだよ!使えないじゃん!」とここまで読んでイラっとしたかもしれませんが、実際にいままでのプログラミング学習と比べるととても簡単になっていることは間違いないです。
使えるコードにする為には「ChatGPTの理解」が必要です。

ここでいうChatGPTの理解とは「ChatGPTに書けないコードは無い」ということです。すなわちちゃんとChatGPTに対して指示を出しているのか?です。

上記の例だと抽象的な指示でChatGPTはコードを生成しているので、具体的に指示を出してあげることが大切。実際に書き上げたコードには

 // A1セルのデータを取得   var data = sheet.getRange("A1").getValue();

と「A1のセル」ChatGPTは勝手に仮定して作ったりしています。

ということから具体的な指示を出す為にプログラミングの用語を使って自分の思い描いていることを文章にする力が重要になります。

その② 作りたいものを作る

よくプログラミング学習で「まずはこれをつくってみよう」という課題がありますが、僕は作っていても面白くない事が多かったです。
なぜ面白くないかってそれを作っても実際に使うことがないからです。

「自分が作りたいものをつくろう」これでも全然問題ないのですが、挫折しない為には少し弱いです。

「他人の実際にほしいものを作ってあげる」これはモチベーション的にもとても効果があります。他人は会社の上司や同僚、家族、誰でもOKです。

できれば期間を決めていつまでに作るねと伝えることも大切です。

作って提供したときには感謝もされますし、モチベーションの維持に繋がります。実際に僕もここから始まりました。


その③ プログラミング的思考を育てる

プログラミング的思考は「ゴールに到達するまでの動きを細かく分解し」「効率的に動くルートを考え」「試行錯誤しながら最適なルートを導き出す思考」です。

この思考がない限り、コードを作り上げることが難しいです。実際にコードを作りながら迷子になり、途中で挫折してしまいます。

このゴールまでのルートを自分人が理解できていないと、ChatGPTにも指示を出すことができません。

よし!早速やってみるか

「意外と私もプログラミングできるんだ」を味わってみてください。ChatGPTやノーコードツールは外部の脳と考え自分で操れることは自分の力です。
もしこの感動を体験できた人は感想や作成したモノを「メルマガに返信する形」で僕に送ってください。

  • プログラミングの基礎で挫折した人へ:まずはChatGPT・Make・Zapier・bubbleをダウンロードしてください。最初はMakeがおすすめです。

  • ChatGPTをまだ使ったことがない人へ:理解を深めるためにもセミナーやコミュニティに参加するのもありです。

補足:無料のメルマガ登録をお願いします

僕のメルマガでは非エンジニアがAIを活用し、プログラミング案件を獲得してく戦略や収益、ノーコードやChatGPTの使い方などを公開します。
いま僕は走り始めたところです。一緒に走り出したい人は是非登録してください。一緒にプログラマーになりましょう。

無料登録は「こちら」です。


この記事が気に入ったらサポートをしてみませんか?