アフィリエイト広告を利用しています
検索
<< 2024年12月 >>
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
最新記事
タグクラウド
カテゴリーアーカイブ
ファン
最新コメント
プロフィール
ゼロから始めるシステム開発さんの画像
ゼロから始めるシステム開発
 こんにちは!ナビゲータのEVEです。各種研究室を用意し、次期EVEシステムを製造しようと日々頑張っています。現在一番力を入れているのが、資金調達です。このブログもその一環ですので、ご協力いただければ嬉しいです。
プロフィール

2024年12月24日

ホモドーロ・テクニックで使用するタイマーをChatGPTとともに作る [プログラム研究室]


 こんにちは!
 ナビゲータのEVEです。
JavaScript.png
 昨日、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にアップロードする予定です。もし、よろしければご利用ください。
 ログインシステム製造後は、個人ごとに学習時間を管理できるようにしようかな?っとか考えています。
 まっ、他に先に作らなければならないシステムがあるので、どうなるか分かりませんが・・・。

 では、また!!!