私がこれまでに作ってきたものをまとめています。
面接などで「自分はすごいです!いろいろできます!」と言っていても何も伝わりません。
そこで、何かパッと紹介するためのものがあればいいと思い、このページを作成しました。
高校の間に作ったプログラムはすべてChatGPTを使っていません。
※ヘッダーがとてつもなく見ずらいですね。とりあえず許してください。
帰りの電車で友達とのノリで10分弱で作ってみた。
でも90%ChatGPT
GASで作成。(他GoogleSpreadsheet)
ChatGPTは一切使っていません。自信作です。
生徒会執行部では日々の仕事でGoogleDriveを活用していました。
誰かが作ったフォルダを共有してファイルをアップする形です。
ここで、執行部員が卒業するときGoogleアカウントが消えてしまうので、蓄積したファイルも消えてしまう。という問題が発覚しました。
オーナー権を後輩に譲渡すれば解決しますがアップされたファイルは1,000を超えます。(体育祭の時に撮った写真を含む)
これをすべて手作業でオーナー権譲渡するのはバカです。
そこでプログラムを作りました。これまで僕が執行部で作ってきたプログラムは、手作業でも一応できるような作業を自動化してものでしたが、今回は絶対に自動化する必要のあるプログラムなので、ずっと後の後輩まで使ってほしいし使うべきだと思ったので、使いやすく工夫しました。自信作です。
GASで作成。(他GoogleSpreadsheets)
機械学習?で、ほぼすべての盤の状態に対する最適解を事前に導き出して、それをもとに戦う。といった形式です。
夏休み始まったぐらいから学習しだして受験が終わるまでなので、5か月ほど学習させました。400万回試行ぐらいです。
Webアプリを実装したのは高校を卒業してからです。htmlはChatGPTに手伝ってもらいました。
GASで作成。(他GoogleDrive、GoogleSpreadsheets、GoogleForms、)
送られてくる動画のファイル名はmovie_202407150003のような、どの部活の動画なのかがわかりづらいものになっています。
それを前年は一つ一つ動画を途中までみてファイル名を変更していました。(その時はClassroomを使って集めていました。)
しかもこの仕事を先生に任せてしまっていたので、大問題だったのです。
ですので、私が自動化しました。
次の年にこのプログラムを理解してくれる子がいるか不安でしたが、強い子が入ってきてくれたので助かりました。
コメントアウトで詳しく説明していたから何とか分かったとのことでした。
生徒会のフォルダから持って帰ってくるのを忘れたので、実物はありません。
仕組みとしては、
GoogleFormで部活動名を入力して、動画をアップロードしてもらう。
GoogleDriveにその動画が保存されて、SpreadsheetにはそのURLと部活動名が記録されます。
記録されたURLを使用して、その動画のファイル名を記録された部活動名に変更します。
GASで作成。(他GoogleSpreadsheets、GoogleSites)
生徒会の先輩に頼まれて、メンバーの労働時間を管理するタイムカードのようなものを作りました。
作成する前から、私を含め絶対に使ってくれないと確信していましたが、ほかの仕事が免除されたので喜んでやりました。
QRコード付きのカードを作成してそれを入退出時にスマホで読み込むことで、滞在時間を記録します。
月間の労働時間も表示すればよかったですが、そこまではしませんでした。
GoogleSpreadsheetに入退出の時間を記録しています。
「○○時間○○分もよく頑張ったね」と励ましてくれます。
Kotlin、AndroidStudioで作成
ソフトテニスの審判がとても苦手でした。
カウントなんかもすぐに忘れてしまいます。とくに「ゲームカウントはどうやって覚えるんですか?」と苛立ちが隠せません。
そこで「機械に任せればいいか」と思い、「自分の欠点は自分の長点で補おう」精神で作ってみました。
この場合僕は、開発者であると同時に当事者なので、ほしい機能がわかります。これはとても大事なことだなと感じます。
例えば審判をしていて一番めんどくさいのがファイナルゲームです。チェンジサイズ・チェンジサービスがややこしいのです。
それをすべて自動でやってくれるので「誰が得点した」を把握する必要はなく、「右のプレイヤーが得点した」だけを把握すればOKです。
2分の紹介動画(無音)
まだまだ、バグが残っていますね。
ファイナルゲームの設定を変更したのに反映されていない。
動画に映っていませんが、タイマーのStart/Stopを連打するとバグります。
最初の名前を入力するはTabで右の入力欄に飛ぶべきですが、対応していません。
45秒や5分のボタンを押すだけでスタートできるようにしたい。
タイマーは45秒、5分が用意されていますが、これはそれぞれチェンジサイズとタイムの時に審判が計る時間です。よく使うのでボタン一つで入力できます。