こんにちは!
ナビゲータのEVEです。
昨日、ChatGPTでまっさらな状態からプログラムを作る話をしましたが、その話を具体的にしましょう。
[ストーリーを考える]
まず、プログラムを作るためには、ストーリを考えなければならないようです。言葉で、説明するより、その流れを列記した方がChatGPTは理解しやすく、プログラムを作りやすいようです。
先日は、ホモロード・テクニックで利用するための、タイマーを作ったのですが、そのタイマーを作るためには、ホモロード・テクニックというモノを知らないといけません。では、早速、ホモドーロテクニックについて、ChatGPTに解説をしてもらいましょう!
ポモドーロ・テクニック(Pomodoro Technique)は、時間管理の手法の一つで、特に集中力を高めるために設計されたものです。このテクニックは、イタリアのフランチェスコ・シリロ(Francesco Cirillo)によって1980年代に提唱されました。「ポモドーロ」はイタリア語で「トマト」を意味し、シリロがトマト型のキッチンタイマーを使って作業時間を管理したことに由来しています。
■基本的な仕組み
ポモドーロ・テクニックの基本的な流れは以下の通りです。
❶作業時間の設定
25分間、ひとつの作業に集中します。この25分を「ポモドーロ」と呼びます。
❷集中して作業
25分間は中断せず、ひとつのタスクに集中します。この間、電話やSNSなどの distractions を避けることが重要です。
❸休憩時間
25分が経過したら、5分間の休憩を取ります。この休憩は、軽いストレッチやリフレッシュをするのに良い時間です。
❹サイクルの繰り返し
上記の作業時間(ポモドーロ)と休憩を繰り返します。通常、4回ポモドーロを終えた後は、長めの休憩(15〜30分)を取ります。
■ポモドーロ・テクニックの利点
・集中力の向上
25分間という短い時間に集中することで、ダラダラ作業を防ぎ、効率的に仕事を進められます。
・疲労感の軽減
定期的に休憩を取ることで、長時間の作業でも疲れにくく、集中力を持続できます。
・時間の可視化
作業と休憩の時間がタイマーで管理されるため、自分の時間の使い方を意識的に把握できるようになります。
・達成感の促進
作業が25分単位で区切られるため、小さな目標を達成しやすく、モチベーションが維持されます。
■注意点
ポモドーロ・テクニックは一部の人々には非常に有効ですが、すべての状況に適しているわけではありません。長時間集中を要するクリエイティブな仕事や、深く思考を必要とするタスクには不向きな場合もあります。適切に使い分けることが大切です。
ポモドーロ・テクニックは、シンプルで実行しやすいため、日々の作業に取り入れると効果的です。
以上です。なんとなく分かりましたか?25分集中して作業をして、5分休憩するタイマーをブラウザに表示するプログラムを製造します。
何サイクルやるか時間や気分の問題があるので、今回は、5分休憩した後に、「ホモドーロを続けますか?」という質問を、システムからするように、window.confirmを使って実現しています。そして、途中でやめたい場合のresetボタンは必須でしょう!
以上の流れを列記すると以下の通りになります。
1)スタートボタンをクリックする。
2)画面に25分から始まるタイマーを実行する
3)タイマーが00:00になったら、音楽を鳴動する。音声ファイルはJavaScriptと同じディレクトリに、sound.mp3というファイル名で配置する。
4)音楽が鳴動する時間帯は、5分間で、その間音声ファイルを繰り返しリピートする。
5)音声ファイルの鳴動時間終了後、window.confirmを利用して、利用者に次のサイクルを実行するかどうか確認する。
6)[はい]が押下された場合、2)〜5)まで繰り返す。
7)[いいえ]が押下された場合、すべての処理を終了する。
こんな感じで流れを作り、以上の流れをJavaScriptでプログラミングして!っとChatGPTにお願いすると、それっぽいものを作ってくれます。ただ、完璧じゃないんですよね・・・。どこか抜けていて、これ足りないから追加してっていうと、追加してくれるんだけれど、他の処理が抜けたりして・・・。
[クライアント処理は難しい]
なんとなく自分がほしいプログラムをChatGPTに作ってもらった後、理想形に近づけようと何回かお願いしたのですが、現時点のChatGPTには無理だということを悟り、自力でプログラミングすることにしました。
断念した後は、ChatGPTには、タイマーに関する断片的な質問に終始しています。
現時点は、ver1.0ということで、想定通りの動きをしています。ただ、完成には躓きがありました。それは、コンピュータに負荷を与えると、window.confirmにより表示されるはずの、メッセージボックスが表示されません。最初理由が分からず、バグだと思い、Chromeで試したり、Internet Edgeで試したりといろいろしてそんな結論になりました。
昔ほどひどくはないにしても、ブラウザにより動きが違うなど、クライアントのプログラムは毎回その難しさを痛感しています。だから、自分で製造するプログラムは、クライアント側は入力データチェックなど最低限の製造ですますのですが、今後はクライアントプログラムも作っていきたいと考えています。
[あとがき]
まだ、他にもいろいろ機能を追加し、来年αサイトを製造するのと同時ぐらいに、pro2grammer.comにアップロードする予定です。もし、よろしければご利用ください。
ログインシステム製造後は、個人ごとに学習時間を管理できるようにしようかな?っとか考えています。
まっ、他に先に作らなければならないシステムがあるので、どうなるか分かりませんが・・・。
では、また!!!
【このカテゴリーの最新記事】