第二十一話「AIのうまい使い方」
どうも、こんちくわ。
近くの自販機に炭酸の飲み物が多く入って嬉しいものの、買いすぎないようにしなくちゃ、と思っている唐揚げのおがたです。
カリッとあがると美味しいですよね。
二度あげとかすると、カリカリになるらしいです。
今日は、午前中は眠くて眠くて寝てしまいました。
そして、4ページをアナログで描きました。そして今――です。
アナログで4ページ描いて、デジタルでなぞって清書するというのは、かなりめんどくさいですね。笑
だけど、クオリティが上がるので、もうそのやり方を変えることはないと思います。
背景もアナログで描きます。
だけど、素材があったら、それを使いたいと思います。
素材を作るときも設けたほうがいいのかなと思います。
最近、AIがなかったら、何かを作ることができるのだろうか?と思いました。
ということで、それについて語っていきたいと思います。
「AIがなくても作ることは可能?」
「AIの正しい使い方」
「これから来るプロダクト」
「これからのスケジュール」
「AIがなくても作ることは可能?」
ぼくはこれをすごく前からずっと考えてて。
AIがなかったら、作れなかった?それからわからなかった?と考えてました。
実際に、ChatGPTに、tkinterのコードを聞いてたことが最初でした。
ぼくがエンジニアリングに興味を持ったのは、Pythonでゲームを作ったことが始まりです。
青い本がぼくの最初のエンジニア書籍で、ゲームの作り方の本でした。
その次が、オライリーのPython3入門でした。
そう。Pythonだったのです。
そして、550円で売って、卸値が250円ですから、4本くらい売って、一週間も経たずに消してしまったので、1000円弱儲かったら、やめてしまいました。
なぜ消してしまったか、販売をやめてしまったかというと、起動が遅すぎてどう思われてるんだろうと思って、心配になって、やめたのです。
でも、そのとき、すごく楽しかったのです。
PythonでtkinterのコードをChatGPTに聞きながら、標準ライブラリでのみの縛りで作ってました。
そのあと、パズルゲームとか、シューティングゲームとか作って、今も、その名残は、GitHubにあります。
Pythonではほぼサードパーティ製のライブラリを使いますが、標準ライブラリのみでは、配布において、PSFLというライセンスの扱いになり、GPLとかの他のライセンスにならないので、標準ライブラリでのみで作ろうと思ってました。
ライセンスまわりが、結構販売においてめんどくさいので、一回調べてみて下さい。
たぶん、Python ゲーム 商用利用とかで調べるとどういうふうにライセンスを書いたり、含めたりすればいいのかとか出てくるので、調べてみてください。
答えを書いちゃうと、まずライセンス全文をLICENSEと書いてファイル群に含める。
コードのところに、ライセンス下ですよと英語で書いて含めておく。
READMEにもそれを書いておく。
これだけです。
PSFLという標準ライブラリでのみの場合のライセンスまわりの話です。
Pythonのコードには、商用利用は可能です。
つまり、Pythonのファイル群を売ることは可能です。
でも、pipとか、標準ライブラリをパッケージとして含めるとかの場合に再配布にあたるので、ライセンス通りのことをしないといけません。
MITライセンスは、クレジットを書いておけば、再配布・改良などが可能ないちばん緩いライセンスです。
GPLとか、いろいろありますので、それぞれで調べてみてください。
だから、ぼくはPython発でエンジニアリングに興味を持ったという人です。
ChatGPTに聞いたり、自分で考えたりしました。
使い方をあとで書きますので、それの通りにやればいいと思います。
tkinterのコードというのは、簡単です。
デスクトップアプリを作るためのライブラリがtkinterです。
JavaでいうSwingクラスですね。
C#でいうVisual C#とかですね。
それでゲームなんて作れるの?
作れます。パズルゲームみたいに、マウスでピースを適切なところにはめると、クリアするみたいなゲームも作れるし、クリックゲームがいちばん作りやすいし、落ちものゲームとかも作れるし、RPGも作れます。デスクトップでできる2Dゲームは作れます。シューティングゲームも作れるし。
3Dは、また別のライブラリで作れます。
工夫すれば、tkinterで作れます。
tkinterでのみで作ることで、PSFL下になります。
さっきのようにライセンス文を書いておけば、大丈夫です。
書かないと見つかったとき問題になるので、含めてなかった人は今すぐ確認してください。
Pythonに限らず、JavaScriptとか、Javaで作ったときも同じことになります。
それぞれで変わってきます。でも、Pythonが緩いので、Pythonで作るほうがいいでしょう。
それでAIなしで作ることは可能なのか?
というと、可能です、と答えます。
でも、今の時代、見ながら調べながらではなく、AIに聞きながらのほうが速いので、そうしたほうがいのかなと思います。
次の話に繋がります。
「AIの正しい使い方」
AIをどう使えば、正しい使い方になるのか。
0から1を生み出すものがAIであると、ぼくはずっと言ってきました。
しかし、ぼくはこれは危ないかなと思います。
理解できないからです。知らないものだから。
そもそも。
ぼくのおすすめの使い方は、1は作ってしまう。それをリファクタリングさせる使い方。
次の二つの使い方にわかれると思います。
・0から1を作ってもらい、それを自分でリファクタリングする
・0から1を自分で作り、それをAIにリファクタリングさせる
このどっちかだと思います。
これ以外のやり方は、いわゆるVibeコーディングと言われます。
で、この二つの中でさらにおすすめなのが、二つめ。
たたき台を自分で書いて、それをAIに直してもらう使い方。
これなら、「ああ、そっか。その書き方あるか」と気づけて、かつ、内容がわかるように書けます。
最初からたたき台を作ってもらうということをAIにさせると、ふーん……という感じで終わってしまいます。理解できてません。100%。
これだと何をしたくて開発しているのかわかりません。
AIに書いてほしいだけ?となるので。
ぼくは開発を自分の手で書いていった経験のほうが楽しいので、そうしましょう。
tkinterでも、自分で考えて書いて、それをAIに直してもらったときは、「なるほど……」と思う時もあれば、それだとうまくいかないんだよなとか、標準ライブラリ以外で作ろうとしてくるときがあって、それをさらに自分で直すということもしてました。
だから、おすすめは、AIに代替案を作らせることで、それを自分なりにマージするイメージでしょうか。
AIにPRを作らせて、それをマージするのを、Gitとかではなく、AI間でやらせるというやり方。
これが最強にいい使い方です。AIの。
Agentコーディングでも、このやり方がいいと思います。
まず、0→1の作業を自分でやる。
そのあと、AIに直してもらう。
骨子はわかっているので、特に差分は生まれません。
そんなやり方があったか!と気づかされます。
でも、どうしてもわからないときがあったら、聞いてもいいのです。
別に法律で聞いてはいけませんということはないので。
ただ、縛りを入れてやったほうがいいものができるし、いい経験になります。
「これから来るプロダクト」
これから来るプロダクトって、どういうものか想像できますか?
今、直近できているのは、AIによって、Vibeコーディングをセキュリティ含めて自動化するという自動化系のプロダクトです。
アプリが作れますというものが多いです。
そうなってきたら、次どういうものが来るのか?ということになります。
自動化ができてきました。バックエンド系は、CLI系のAgentで事足ります。
なので、次は、現実世界に則したものになっていくか、AIを作れますとか、かなと。
現実世界に則したものというのは、いわゆる組み込みシステムやIoTですね。
もうあるかもしれません。
プロダクトとアイデアとの間がかなり短くなると思います。
AIを作れますという感じになってきます。
各々のAIです。
そして、問題になってきていることから、次のいちばん有力な候補は、
セキュリティ
です。
これを自動化できたら、素晴らしいことだとは思います。
ミュトスというものが出てきているので、それがいちばん最初で、これからは、セキュリティ特化の自動化アプリもしくはAIが出てきます。
それでIoTの方面へ進み、最終的には、AIでAIを作るほうになるのでは?と予想します。
ぼくがやってほしいのは、AIでAIを作ることから、物理学の問題を解く特化型AIとかあったら、結構躍進的だなと思います。もうあるかもしれませんが。
もっと、いろんなAIを作ってほしいですね。技術の方には。
それでもっとすごいことをしてほしいです。
音声UIが出てきているので、会話できるAIとかですね。記憶もある。
アマデウスみたいな。
で、最終的には、ボトムアップ型AIを、トップダウン型AIの集合で作るほうになると予想します。
今のAIは学習をさせて、それで主に、強化学習という得点で報酬を与える学習のプロセスでやっておりますが、赤ちゃんのように、学習をさせていくという、もうデジタルな人間みたいなAIを作るほうになると思います。
SAOでいうアンダーワールドに暮らすAIたちですね。
でも、これは暴走もするので、かなり危ないです。
でも、確実にそっちへ行くと思います。そのとき、セキュリティ特化型AIがいっぱいあれば、何とかなる感じですね。
うまくできています。
予想はただの方便なので、ここらにしておいて。
もっとすごいものを作りましょう!
「これからのスケジュール」
これからの個人的なスケジュールを語って、終了としたいと思います。
基本情報の勉強を再開し、特に、計算問題を今月は解いていきたいと思います。
毎日30題くらいずつ解きたいと思います。
MIPSって何だっけとか、思い出しながら解きたいと思います。
それから、開発も再開します。
基本的には、さっきのような作り方で、JSONパーサーを作ります。Javaで。
その次は、TOONとかYAMLとかのパーサーを作ります。
XMLもいいですね。
そういうデータフォーマット形式をパースするパーサーを作ります。
すべてJavaで作ったあと、C++でも作ります。
それがぼくのOSSのスケジュールですね。
それで、技術の勉強を再開し、独自のAIをPyTorchで作ります。
これはロボットをいつか作ろうと思ってますので、それ用のAIです。
これは、ライブラリを含むので、OSSにはできません。GitHubにものっけません。
というわけで、あとはいいコードを書くために、デザインパターンを学びます。
技術系がこんなところで。
シナリオを本格的に勉強しながら、手とかデッサンを学びます。
毎日。
これは漫画に活かすためだけの行為です。
それで、毎日5ページ相当の作業をすることにします。
下書きが、0.5ページですから、かけ4の、4ページ清書で、だいたい5か6ページになります。
そういうふうに計算してやっていきます。だから、アナログだけの日もあると。
とにかく、予告を出してしまっているので、今月中に同人を出さないといけません。あと10ページくらいです。
Javaの勉強も引き続きやっていきます。
だけど、開発を優先したいと思います。
あとは、Javaでアルゴリズムを組むとかもやりたいですね。
いろいろやりたいことはありますが、基本情報、JSONパーサーづくり、PyTorch、シナリオ、同人などの作業という感じでやっていきます。
エンジニアには、SESとかが未経験ですしいいのかなと思います。
副業OKだと大企業のホワイト企業か、派遣的な働きたかたのSES、SIerとかになるのかなと。
それも来年くらいですね。
まず、基本情報をとって、Java SilverとGoldをとって、AWSのSAAあたりをとることで、応募します。
それであとはポートフォリオを作って、応募ですね。
今年中にできるのなら、それは嬉しいですね。
で、ウェブ漫画を描きまくって、出しまくって、お声がけをいただいたら、同人はやめて、副業としてやる漫画作業は、その連載とかの漫画のみに切り替えて、SESはフルで入っても、両立できるようにします!
というわけで、今回はここまで!
頑張ってまいります!AIをうまく使いましょう。
ではでは。




