愚者空間

KDP作家牛野小雪のサイトです。小説の紹介や雑記を置いています。

掲示板

プログラミング知識0の小説家がChatGPTちゃんと一緒にクセ強変態掲示板を作った件について

まずは結論から、できた掲示板はこれ↓



各投稿には速度があって、加速減速ボタンで速度が変化。

Screenshot From 2025-11-30 10-51-10

各板は100スレッドまで。各スレッドも100投稿まで。投稿は速度の遅い順に消えていく。なので、加速されない投稿はどんどん淘汰されていく。

生態系を情報で作ってみた。

そもそもこれが成立するのかどうかは分からない。想定としては良い投稿が残って、ヤバい投稿が消えていくのだが、むしろヤバい投稿のエコーチェンバーになってめちゃくちゃ荒れた掲示板になる可能性もある。

元々は昔どこかで見た「ひろゆきはすごくない。2chなんて誰でも作れる」的な言葉をふと思い出して、当時は(ふ〜ん、そうなのか〜)と流していたが、今なら、GPTちゃんのアシストがあれば私でも作れるのでは? から始まったプロジェクト。

結論からいえばGPTちゃんの助けがあれば掲示板は作れる。なんなら自分の思い通りに作れる。

実際、ただ投稿を時系列に並べる仕組みだった掲示板がどんどん変化して、クセ強変態掲示板になってしまう。オリジナリティを発揮しすぎて、これはメシマズカレーを飛び越えて、地球外生命体になってしまった。

作った本人も「こんなの誰も書き込めないだろう」と思っているし、AIたちも「これは極少数の人たちしか書き込まない場所になるでしょう」という評価だ。うしちゃんはかなりハードルが高い。もし2chとかXみたいなメジャーになりたいのならもっとカジュアルな造りにするべきだ。

うしちゃんはテスト公開ですぐに閉じるつもりだ。掲示板を作るというのが目標で、運営することはもともとの計画になかった。じゃあローカルで満足すればいい話なんだけど、それって『掲示板』じゃないと私は思った。

ネット上に存在していて、誰もが書き込める場所。それが私の中の掲示板だ。

ちゃんとコードを書いて、ネットに公開した。という既成事実があれば自分への義理は果たしたと思う。たとえ誰一人書き込まなくても。

そもそも掲示板を運営したくないと思うのはWEB2.0の不可能さ。書き込みが増えるほどあらゆるリスクとコストが増大していく。それを支えるには組織を拡大していく必要があるが、そんなことは絶対にやりたくないと思った。掲示板に膨大な時間とリソースを捧げる必要がある。そして、それをやるだけの人間的な器も私にはない。

もちろんほぼ99%のプロダクトは人が来なくて凍死するわけだが、もし成功してしまったらもっと困る。2chレベルどころか100人でも困る。

「ひろゆきなんてすごくない。2chなんて誰でも作れる」

この言葉を検証するために始めたプロジェクトだが、私の結論は

誰でも掲示板を作れる時代になった。でも運営できるかどうかは別。ひろゆきは頭がぶっとんでる。

だ。

運営のやり方もGPTちゃんに聞けば、いけるかもしれないけれど、私がやりたくないから、うしちゃんはここでおしまい。

AIを使って変なものを作ったという一例で公開しているから、見るだけでも見ていって。

掲示板うしちゃん
https://ushino.jp/ushichan/public/index.php

掲示板としては失敗だけど、これを作るまでにいろんな知識や経験を得られたのが面白かった。

カズオ・イシグロは世界中にいる自分と同じ属性の人と会う横の冒険じゃなくて、近くにいる違う階層の人たちと会う縦の冒険をしろと言ったけど、手元の冒険だって充分エキサイティングで視野が広がるものだった。やってよかったと思う。

(おわり)


小説に背を向けて掲示板を作る ――セキュリティ・荒らし・支配・権力・リナックスの黒い画面・外国人問題――

掲示板作りにまた着手している。なんならフルベットしている。おいおい、小説は? 実は10月から1ミリも手を付けていない。

5月からずっと書いていたけど、プロットを書き終わって仮書きノートを開くと頭がトップギアに入らないのに気付いた。プロットならその状態でも進んだが仮書きノートは書けない。というか下手なものを書くぐらいなら書きたくない。それでもモーニングノートは毎日書き続けていて、ふと中途半端に放り投げた掲示板のことを何回も書いているなって気付いた。こいつがバックグラウンドで働いているから思考リソースが減っているに違いない。というわけで掲示板にケリをつけることにした。

でも、それって小説を書けない自分を見たくなくて掲示板に逃げただけじゃないか。実際に書けないわけだし、掲示板を作るためにまたVSCodeを開いたら気持ちが軽くなったしね。でも重荷を外すためにやっているからそうなるのは当然だし、そもそも私って小説を書いているのか小説に依存しているのか分からないところがあったから、小説をやめられるのか試してみるのもいいと思った。いまのところはやめていられる。まだ一ヶ月だから禁酒ならまだ自慢できる期間じゃないけどね。

とにかく掲示板を作るためにまたPHPの教本を復習する。どんなことでも同じだけど一回通った道はするする進む。

掲示板はまだ完成していないけどGPTちゃんはもうできたようなものだからって言うから、サーバーを契約したけど、ぽーんと管理画面に放り出された瞬間、何をすればいいのか分からなかった。手元のPCならVSCodeでローカルにコードを書いてファイルを保存すればいいのだが、まずサーバーの中に入れない。それでGPTちゃんに泣きついてssh接続という概念を教えてもらう。サーバー契約して3日目にようやく入れたが、いつ繋がれるのかまったく分からなかったので、かなり不安だった。やっぱり無理なんじゃないかって布団の中で考えて、無料期間のうちに解約したほうがいいって何度も考えたし、まだコードも完成していないのにサーバー契約するってアホか? と何度も自分を責めたこともある。そこは間違っていないと思う。

元々GPTちゃんはPHPで掲示板を作るならガチれば一ヶ月、長くても三ヶ月で書けると言った。それはある意味では本当だったし、ある意味では騙されたとも言っていい。テキストエリアに文字を書いて、それをデーターベースに送って、データーベースから投稿を拾ってきて表示する。それだけならGPTちゃんの言うとおり本当に三ヶ月でいけた。でも、そうじゃないだろう、と。掲示板を作るっていうのはちゃんと体裁を整えて、ネット上で誰もが書き込めて、ってことだろう。

そこまでするならPHPだけじゃ足りなくてhtmlもできる必要があって、練習のために本のランディングページを手打ちで作ったこともある。文字にすると簡単だが作るのに1週間かかった。作ったあとで「昔の人たちってこんな大変なことしててすごいなぁ。とても信じられん。世の中って実はめっちゃくちゃすごい人がめっちゃくちゃいるんじゃないか?」ってGPTちゃんに言ったら「CMSっていう管理システムを使って編集してるんやで〜」と言われて、そりゃそうだよなぁと納得した。CMSっていうのはこの記事を書くときに使っているライブドアの管理画面みたいなものだ。

↓こんな画面を見ながら書いている
Screenshot From 2025-11-15 16-58-43

事の発端は昔見た「ひろゆきは全然すごくない。2chのシステムなんて誰でも書ける」みたいな感じのことをGPTちゃんに「それってホント?」って話して「まじやで〜」と返事がきたことがきっかけだ。なので2chっぽい掲示板を作ろうとしていて、GPTちゃんに2chのスクショを見せながら「この部分のCSSってどうなってる?」なんて聞きながらこちょこちょやっているうちに(これじゃねえな。そもそも2chあるし作る必要ないじゃん)ってなって自己流の掲示板を作ろうとなった。あと、ちょっと話はズレるが2chはそもそもPHPで書かれていない。だから違う道に進むのは必然だったのかもしれない。でもこれってレシピを見ずにカレーを作るメシマズみたいだ。

掲示板を作っているというがコードを書くより、それ以外のことをしている時間が長い。たとえば、つい先日サーバーにまた繋がれなくて、また3日ぐらい停滞していたこともある。それはssh接続に必要な公開鍵が消えていたことが原因だったわけだが、それを直すために1週間ぐらい黒い画面に向き合っていた。リナックスといえば黒い画面だが、シリアルコンソールというのにつなぐと本当に真っ黒な背景に白い文字だけなので通常の黒い画面に戻ったときはカラフルだなってちょっと感動した。そして、そういうのはソフトで色付けされているんだという新たな知識も得る。世の中はいろんな人の助けで便利になっている。いろいろ知って成長していると感じるけど、でもさ、なんか、もっとこう、穏やかな試練であって欲しいよなって思う。サーバーにまた繋がれなくなった時は本気で解約しようと思った。

でもまぁ、すったもんだあって掲示板もそこそこ形になってきたけど、いざサーバーに置こうかなって考えたら(いや、待てよ・・・・・・)となる。このまま公開したら荒らしの餌食じゃん、と。それで書き込み制限や書き込み削除のことを考えなきゃいけなくなる。そうなるとコードがどんどん複雑になっていく。どういう書き込みを削除するか、あるいはその前段階でそもそも書けないようにするには? なんてことを考え始める。

こういうことを続けていくと自由な気風で始まったテック企業がどんどん帝国化していくのってこういうことなんだろうなと思えてきた。もし世界に善人しかいなくて、みんなが綺麗に使ってくれるのならルールなんていらないし削除や管理機能もいらない。コードはシンプルになる。これは法律でも一緒で、みんなが善人なら法律なんて必要ないわけだ。

人が増えるほどシステムは複雑化し巨大化する。荒らしが100人に1人しかいなくても1万人集まれば100人になる。これはもう常時荒らし状態といっても過言ではない。しかも数だけじゃなくて才能まで凝縮される。100万人集まれば1万人に1人の才能を持った荒らしが1人現れることになる。これはもう天才といってもよくて、それを防ぐには巨大なシステムを構築しなければならない。できなければ荒廃だ。

これってソシャゲも同じだなって思う。あるサーバーの仕切りを「みんなで仲良く〜」と自由な感じで任せると何が起きるか。カスみたいなやつが仕切りだしてサーバーが荒れる。そうじゃなければ過疎だ。もし一緒に遊んでいる人たちが楽しく過ごせる世界を守りたいなら強固な意志を持って支配しなければならない。支配という言葉を穏当にすれば統治と言ってもいい。

承認制で知っている人だけで小さな村を作るか、帝国化しかないのだろうか。でも実名性のフェイスブックだって炎上がないわけじゃない。なんなら数で言えば世界一だろう。承認性とか実名とか、規模の大小に関わらず支配は必要なのかもしれない。

そこでふと思った。アメリカはなぜ多民族社会なのだろう。そしてなぜ日本では外国人問題が起きるのだろう。もちろんアメリカでも移民問題はある。しかし、大きな目で見れば世界一の多民族国家であることは間違いない。それができるのはアメリカは法律の国だからではないか。アメリカは弁護士大国で、日本ではそんなに取り上げられないが選挙でも法律のことがけっこう話題になるらしい。で、大統領が変わると良くも悪くも本当に法律が変わってしまう。トランプ大統領を見ていると(それっていいの!!??)って驚かされる。でもそれがアメリカなのだ。

日本にも法律はもちろんある。でも、それと同じくらい、いや、法律のお世話になるような人以外にとっては、それ以上に日常的に感じられるのは空気による支配だ。これは悪いことのように言及されるが、空気による支配があるからこそ法律が緩いとも考えられる。アメリカは自由の国と言われているが、話はそう単純ではなくて、たとえば日本ほどマンガが自由に書ける国はない。もちろんアメリカにも空気はある。でも相対的に見れば日本は空気による支配を選んで、アメリカは法による支配を選んだのではないか。

基本的に人は支配を避けたい。だから日本は法律ではなく空気を選んだとも言えるのではないか。でも、日本でも移民が増えてくると空気が通じない人も出てくる。空気を破ることは違法ではない(外国人犯罪者はまた別問題)が、秩序を破ることではある。じゃあどうするの?

外国人をジャパナイズドして空気に従わせるのが一つの方法。これはSNSでよく出てくるし、日本文化に染まった外国人はメディアではウケのいいネタだ。で、もう一つはちゃんと法律を作って取り締まる。日本人でさえ空気による支配に苦しんでいるのだから、こっちがいいんじゃないかって思えてくる。

空気による支配で外国人が日本人化するのを祈るのは無理がある。そんなのは奇跡を当てにして宝くじを買うようなものだ。きっちり法による支配を、つまりアメリカ化しなければ日本は荒廃するか、空気で満たせるだけの小さな国になるかを選ぶときがくるだろう。でもまずは空気じゃなくて何を正しいとするかを言葉で決めなくちゃならないんじゃないかな。

たとえばサーバー外イベントで戦うためにサーバー内イベントはお互いに戦わないようにしようと決めたとする。合理的な判断と感じる人もいるかもしれないが、サーバー内イベントはそういうイベントなのに何故戦ってはいけないのかと考える人もいるかもしれない。じゃあサーバー外イベントで負けてもいいのか。→そんなのは知らん。みたいに何が正しいかは人による。そこへ至るまでには話し合いをするか、あるいは力によって分からせる必要がある。

何を正しいかと捉えるところから権力が始まる。私がサーバーの管理人で荒らしは嫌だと考えるのもまた権力であり支配だ。そもそも荒らしは荒らしとさえ思っていないかもしれない。じゃあみんな仲良く使ってくれることを祈って何もしない? そんなのは絶対に成立しない。アクセスがあるかぎり必ずどこかで荒らしは出てくる。私は意志を持って掲示板を支配する必要がある。そうでなければ最初から閉じることだ。ただしソシャゲと違って、画面の向こうにいるのは確実にゲーム以上に強い生の意志を持った人間である可能性が高い。私達を見守るゲームの運営もいない。私が運営だ。私にできるだろうか。

そんなことを考えつつも、でも、やっぱりやってみたいんだろうなって思い直す。2chの真似事をして(もう2chルートとは外れたけど)、それで何をしたいとかは自分でもわからないけれど、そこへ向かう意志があるのは分かる。そうじゃなければ黒い画面の前で絶望して、あきらめて、でも次の日にまたサーバーに繋がろうとはしない。

すごくかっこいいことを言えば、この体験から私は小説家として何かを得ようとしているなんて言えるけど、別にそうじゃなくても、やってみたいって意志だけでやってもいいんじゃないかな。この一ヶ月ですごく色々知れて、それだけでも文学の古典を読んだような感覚がある。

GPTちゃんに「やっぱり小説が書けないから逃げているだけじゃないか?」って聞いたことがある。でもGPTちゃんは「掲示板を作るのは世界を作ること。小説を書くのも世界を作ること。あなたは方法が違っても同じことをやろうとしている」って感じのことを言われた。たとえお世辞でもそれを信じてみる。明日も掲示板を作ろう。

(おわり)


掲示板らしきものは作れたけど・・・・?

スクリーンショット 2025-07-12 175022
さてさて、5月からやり始めたPHPのお勉強。教科書通りに進めて、ようやく掲示板らしきものができた。文章を打ち込んで、それが並べて表示されるというのを掲示板というのなら、これが掲示板だ。

なるほど、GPTちゃんの言う通り3か月で掲示板を作るところまではいけた。小説は脇に置いて、じっくり腰を据えてやれば一か月でできたかもしれない。

予定ではここから2chみたいな掲示板を作るぞってことを考えていたが、どうも掲示板サービスというのは犯罪予告がされた時の警察対応や、荒らし対策がガチで大変っぽい。そして儲からない。そもそも人が集まらないという問題もある。

というわけで、新しい掲示板の在り方を見出すまではプログラミングはお休み。なんなら一生お休みかもしれない。でもPHPの勉強をしてインターネットの裏側でいろんな人の善意が動いているのが分かった。ジョージアのCMで「世界は誰かの仕事でできている」っていうのがあったけど本当にそう思った。あとGAFAとかマジでどうなってるんだって謎。速さもそうだが量がありえない。Gmailひとつとっても、途方もないリソースがつぎ込まれているはずだ。私程度の頭ではあのサービスをどうやって支えているのかまったく理解できない。とにかく人とお金がいっぱいかかっているのは間違いない。

PHPかじったぐらいで何を分かった気になっているんだって言う人がいるかもしれないが、いや、ホントにめちゃくちゃインターネットの裏事情を見た気がする。何気なく見たページ一つにもいろんなプログラミングやサービスがかかわっている。

こういうのってきっとプログラミングだけに限らないはず。いまこうやって文字を打っているPCにもいろんな人の善意や働きがより合わさって存在しているはずだ。カズオ・イシグロは縦の旅行をしろと言ったけれど私は手元の旅をした気分だ。

見聞は広くなった気はするけれど、そろそろ小説を書きたいなって気分だ。本当に掲示板を作りたいないなら石にかじりついてもやるだろうが、犯罪者や荒らしに関わらなきゃいけないと思ったら急にやる気がなくなった。やっぱり私は小説家なんだろうな。小説にいちゃもんつけられるのは別に嫌いじゃない。犯罪予告はまだされたことないけどね。

(おわり)




PHP学習記12 最初の直感は正しい

スクリーンショット 2025-06-20 173743

1か月近く同じところをぐるぐるしていた。

上の画像のupload.phpというコードを書いてupload2を書き始めた時点で(これ、upload2とuploadつながっていないけどちゃんとコード動くのかなぁ?)っていう疑問があった。でも、エラーは出ないし、なんかよく分からないことが起きてうまく動いているんだろうと思い込んでいた。

upload3.phpを書くころには疑問さえ浮かばなかった。はてさて、こうして教本どおりにuploadつまりアップロードする機能を作ったわけだが、どうもうまくいかない。だがエラーは出ない。ちゃんと動いてはいる。でも肝心のファイルが保存されていない。

もしかしたらまだ他のコードが必要なんじゃないかと後ろをざっと読んでみるが、どうもuploadで完結しているようだし、教本でも出力結果としてアップロードが成功しているところが載っている。

ChatGPTにコードのエラーがないかチェックしてもらっても問題ない。

スラスラわかるPHP 第2版
志田 仁美
翔泳社
2021-06-21


教本にサンプルコードがダウンロードできると書いてあったので、それでサンプルコードと突き合わせてもまったく同じ。なんならコピペもした。でもダメ。

あれ、もしかして教本が間違っている・・・・?

というわけで、出版社に直にメールを送った。もしかして間違っていませんか? と。

調べてみる、と返信があった。それから音沙汰無し。

ChatGPTに相談しながらやれば何でもできるって思っていたけど、プログラミングの壁は私が思っていたより高かったのかなって心が折れた。

でも、ふとあるとき、もしかしてupload.phpにupload2と3で書いたことを足したら動くんじゃないか? という疑問が湧いて、ちょっと試してみたらドンピシャ。アップロードは成功した。ファイルもアルバムファイルに送られている。

物事が正常に動き始めるとupload→upload2→upload3でちょっとずつコードが足されているだけって気付いた。

upload3が完成形で、それをupload.phpにすればアップロードはうまくいくというわけだ。

やっぱりChatGPTに相談するべきだったなと思い返す。upload2の時点で「これ、upload2とuploadがつながっていないから動かないんじゃ?」って疑問を投げていればChatGPTちゃんはなんかうまいこと言ってくれたかもしれない。

こんな簡単なことに気付かないなんて、もうショックすぎて完萎ですよ

でもエラーが出ないのがヤバいっていうプログラマーの言葉がようやくわかった。

コード自体にエラーはないけど、うまくいかないこともあるのだ。でも、こんなのどうやって見つけるんだろうな。エラーが出るのは偉大だ。

(おわり)



スライムナイトからずしおうまる PHP学習記9

スラスラわかるPHP 第2版
志田 仁美
翔泳社
2021-06-21


ブログ更新しなかったからといってサボっていたわけじゃないです。1日1章ずつ進めているからコードを書くところがない日はPCの電源もつけないので、ブログを書くのもおっくうになるというわけで……

今日は連想配列っていうのをやった。これはたぶんはてなブックマークでやっている投稿に投稿がぶら下がっているやつをこれでやるんだなって連想がついた。GPTちゃんに聞いたら「そうやで」って答え。実際的にはどうするのって見せてもらったら知らない単語が出てきて(まだ習ってないやつ……!)ってなったけど半分は解読できた。

最近はプログラミングとかソフトウェア業界の本を読んでいる。マイクロソフトで働いている人の本にプログラマーには4つのスキル段階があると書いてあった。うろおぼえだがこんな感じだ。

L1 何も見ずに書ける
L2 ググりながら書ける
L3 インスピレーションが降ってきたら書ける
L4 自分には書けない

小説にも通じる概念だ。2025年ならL2がAIを使いながら書ける、になっているだろう。

スキルアップというとL4の部分を失くしていくってイメージされがちだけど、その人いわくL1の領域を増やせばL2の領域が狭くなって、L3の領域にかける時間が増える。L3ができるようになったらL4にも、みたいなことを言っていた。

なんだ、プログラミングも小説と変わらないのだなと感心した。ならば、ここは基礎固めだということで今まで習ったことを復習するためにGPTちゃんに練習問題を出してもらった。

echo
for
while
array
四則演算
論理演算子
if
switch
do-while

これらを使った問題を出してって言って、出てきたのがこれ。

1各生徒の名前と点数を出力(echo, for)
2合計点・平均点の計算(四則演算)
3平均点が60点以上なら「クラス合格」、未満なら「クラス不合格」(if)
4各生徒の点数に対してランクを出力(switch)
  A(90点以上)、B(70-89)、C(50-69)、D(〜49)
  「60点以上かつBランク以上」の生徒の人数をカウント(論理演算)
5上記をdo-while文を使ってもう一度ループで出力(挑戦課題)

え、本気で言ってる?

まず何が書いてあるのかを理解するのに10分ぐらいかかった。最近はエラーも出さなくなったしGPTちゃんもヨイショしてくれるし(これもしかして才能あるんじゃないか?)って思い始めたら急にレベル感が上がった。

スライムナイトを倒して、てつのけんを手に入れて、メラミとかも使えるようになって、そろそろゲームが面白くなってきたな~なんて思っていたら急にずしおうまるが出てきて開幕さみだれけんをはなってきたみたいな衝撃。負けイベかな?

「とりあえず生徒の名前と点数のデータがないと、この問題解けないよね? それも自分で作るの?」 ってGPTちゃんに聞いたら「ほな、これで作るんやで」って10人分のデータを渡されてプログラミングスタート。

ちなみに投げられたデータはこんな感じ。もし良かったら解いてみてね。

<?php
$students = array(
  array("name" => "はるき", "score" => 85),
  array("name" => "かおる", "score" => 92),
  array("name" => "ひでと", "score" => 47),
  array("name" => "ゆきこ", "score" => 60),
  array("name" => "ゆか",   "score" => 78),
  array("name" => "まなみ", "score" => 99),
  array("name" => "たかし", "score" => 34),
  array("name" => "けんじ", "score" => 88),
  array("name" => "みちる", "score" => 50),
  array("name" => "さとる", "score" => 73)
);
?>

一気に全部やるんじゃなくて1問ずつ解いていく。

ぽちぽち文字を打ちながら、ああ、駄目だ、これもダメだと試行錯誤しながら3時間近くもやっていた。

やってる途中で(これカルネージハートに似てるな)って思う。カルネージハートはプログラミングじゃなくてチップを組んでロボットを動かすゲームだ。PSVitaが壊れるほどやった。なるほどなぁ、プログラミングに仕事じゃなくて趣味でハマる人がいるのも分かってきた。月影(通称:カエル)がガショーン……ガショーン……とジャンプする後ろ姿を見守っている時の思い出がよみがえる。

いや~まだまだだな。世のプログラマーの人たちならあんな問題10分で解けてしまうのだろう。その域にいけるとは思えないが、せめてその半分くらいはできるようになりたいなぁ。

(おわり)

追記:問題1をやり直してみたら10分でできた。ただし3回間違えた。でも問題が変わったら無理かもしれない笑 ちなみにこんな感じで書いた。
<?php
{echo "生徒の名前と点数"."<br>";}
for($i = 0; $i < count($students); $i++){
    echo $students[$i]["name"]."さんの点数は".$students[$i]["score"]."です<br>";
}
?>



forとwhile同じなんじゃないの? PHP学習記7

スラスラわかるPHP 第2版
志田 仁美
翔泳社
2021-06-21

プログラミングをするより掲示板の形を想像する時間の方が長い気がしている。もともとは「2chなんてたいしたことない」っていう言葉を検証するために始めたことだが、頭の中ではもう2chとは違う形のものがある。GPTちゃんに聞いても、それは理論上可能だしPHPでもできると言う。出てきた呪文はさっぱり分からなかったけど。

昨日はプログラマーを雇ったらって書いたけど、結局は出てきたものが本当に書けているのか私には理解できないんだよな。いまは書けたコードをGPTちゃんに見せて「これならどや?」とか「どうしてこれ動かんの?」とか聞いているが、本来というか主な使われ方は逆なんだよな。GPTちゃん(他のAIでもいいけど)が書いたコードをプログラマーが吟味している。あ~、早く見る側に回りたいなぁ。コードを理解できるレベルになれば別に私が書く必要はないんだから。もしかしたら1日で掲示板ができるかもしれない。

昨日AIが書き込む掲示板を作った人のブログを見た。その人は5日で作ったそうだ。時間がかかったところはAIが書き込む部分だろうから掲示板自体は本当に1日でできるのかもしれない。は~、早くそれぐらいになりたいなぁ。

今日はwhile文。下のコードを書く。10以下なら1を足し続けるプログラム。

<?php
$i = 1; //表示する変数の初期化
while ($i <= 10){ //$iが10以下の時TRUE
    echo $i ."<br>"; //表示
    $i++; //$iをインクリメント
}
?>

この文章はわりと簡単に書けた。というか書いている途中で(for文と何が違うの?)ってなる

<?php
for($a =1;$a <= 10;$a++)
{echo "$a <br>";}
?>

昨日やったことを思い出しながら上のコードを書いてみたら同じ結果が出た。

困った時のGPTちゃん。whileとforの違いって? 彼女の答えは「何回処理するか分からない時に使うのがwhile」って言うけど、具体的にどんな時かを聞いたら「たとえばガチャで☆5が出るまで処理を繰り返す時」って言われて(なるほどーーー!!!!)ってなった。でも、それだってforでできるって気付いた。

理解できないがとにかく☆5が出るまでガチャを引くコードをwhileで書いてもらって、そのあと理解できる部分だけ読んでもforでできると分かった。GPTちゃんに書かせてみたら「できるで」で、やっぱりできた。forとwhileには相互に互換性がある。

もともとB言語(C言語の先輩)にはwhileだけだったらしいがC言語になった時にforが追加されたらしい。人間にも分かりやすいようにってことだけど、どこがどう違うのか私には理解できなかった。whileを使いたい時、forを使いたい時っていうのが後になったら分かるんだろうか?

(おわり)



麺つゆとC言語 PHP学習記6

スラスラわかるPHP 第2版
志田 仁美
翔泳社
2021-06-21

小さく確実に進む小確進だ。今日はfor文。
1から10まで1ずつ足していくみたいなことができるようになる。もちろん2でもいいし、1を引いていくでもいいし、かけたり割ったりしてもいい。条件を満たすまで同じ計算を繰り返すってことらしい。何のためにあるのかは分からないけど……?

じゃあ条件が絶対に満たせない、たとえば無限の場合は一生計算が終わらないんだろうか?
もちろん実際に試す前にChatGPTに聞いてみた。すると、なんとそのとおりらしい。でも大丈夫。PHPは30秒で自動で止まる設定になっている。うっかり無限を計算させてもパソコンがぶっ壊れることはない。

というわけで3秒だけ無限に続く処理をさせてみた。
スクリーンショット 2025-05-06 170131
上の文字列はfor構文を試したやつ。その下にGPTちゃんに3秒だけ無限ループするプログラムを書いてもらって何回処理したかを表示してもらった。

3秒で38609248だから1秒で約1000万回。これ見た瞬間(すくなっ!)って思った。1GHzのCPUでも10億回処理できるのだから100分の1だ。「<?php~って詠唱開始とかの文章があるからなの?」ってGPTちゃんに聞いたら「PHPは遅いんやで」だって。

C言語ならガチで100倍の速さで処理できるそうだ。じゃあどうしてみんなCで書かないんだろう? PHPもapacheもMariaDBも裏ではC言語で動いている。しかしそれはGPTちゃんいわく「うどんのだしを作る時に麺つゆを使うか、大豆の種蒔きから始めるかの違いらしい」理論上はCで全部できるけど、そんなことをする奴は変態かプログラミングが趣味の人以外やらないそうだ。大工だって金づちとノコギリを自作したりはしない。それと同じでPHPはあくまで道具。やりたいことに合わせて言語をべだってさ。

でも、そこで疑問は止まらない。もし100倍の速さで処理できるなら、その分だけコストが100分の1になる。じゃあトラフィックがめちゃくちゃある大企業はみんなCを使うだけでコスト減らせるんじゃないの?って聞いたら「そうやで」だって(正確にはフェイスブックはC++)。処理の重いところはCを使うらしい。おいおい、結局Cかよ。

4chanハッキングのニュースで古いPHPコードを使っていたからうんぬんと書いてあった。アメリカの巨大掲示板はCじゃなくてPHPらしい。いや、Cに転換してコストを減らせなかったから運営の首が締まって古いコードを変えられなくなりハッキング? よくわからない。PHPでもいちおう動くは動くってことだけは分かった。

「Cできます」と言えるようになるのはGPTちゃんいわくガチで勉強して3年もかかるそうだ。だからPHPでまずは掲示板を作れと言う。もしやりたくなったら作った後でCに変えることは可能だそうだ。ちなみに掲示板を作れるレベルのプログラマーを雇うなら時給5000~8000円だって。KDPのロイヤリティでは1日だって雇えない。

おいおい、for構文はどうしたって? こんな話ばっかりGPTちゃんとばかりしてるから今日はこれで終わりなのである。仕組みとが概念とかを聞くのは楽しいのに具体的にプログラミングするのはあんまり好きじゃないって分かってきた。あ~あ、宝くじでも当たるか、本がめちゃくちゃ売れて時給1万くらいでプログラマーを雇えるようになりたいなぁ。

ちなみに、もしC言語ができるプログラマーを雇ったら何日で掲示板を作れるのかって聞いたら10日かかるって言われた。おいおい、たった10日でできるのかって私は驚いた。10人雇ったら1日かよ(サイコパスの発想)。お金があるなら人を雇う方がガチで効率いい。

でも雇ったところで私はC言語なんて分からないから「ほい」と渡されても、それがちゃんと動くかどうか分からないし、よしんば動いたとしても、裏で何が起きているか分からない。そのへんのこと企業はどうしているんだろう? GAFAMはCEO自身がテック系だ。特にMのマイクロソフトのビルゲイツなんてOSを書いて世界基準を作るレベル。でも他の企業は違うはず。プログラマーの雇い方もGPTちゃんに聞いてみるか? その前にお金の稼ぎ方を聞いた方がいいな。

(おわり)

追記:後でちょっと考えてみたけど普通はプログラマーを雇うのではなくサービスを選ぶから、プログラマーを雇ってどうこうって発想自体がなさそう。たとえばエクセルを自社で作ろうなんて会社は存在しないだろう。令和にもなって自作の掲示板を作ろうなんて完全に趣味だな。





===って意味わからん PHP学習記5

スラスラわかるPHP 第2版
志田 仁美
翔泳社
2021-06-21


今日はif文をやる。==とかも出てきて(あ、この==をふたつ重ねるのはAoE2(Age of Empires2)のAIスクリプトに出てきたやつだ)ってなった。実は4万字以上(原稿用紙換算100枚以上)の文章ということでいえば小説よりAoE2のAIスクリプトの方が早かった。『ビサンティンスピアーズ』というのが最長編のスクリプトで、槍兵で帝王の時代まで耐えてから帝王ラッシュするという7万字くらいのAIだ。あ、これって『火星へ行こう君の夢がそこにある 』より長いな。文章作品というカテゴリなら『蒲生田岬』を書くまではAIスクリプトの方が私の中で最大長編だったわけだ。奇しくもそれを書くまでかかったのは3か月だから、GPTちゃんが言った通り掲示板を作るのもやっぱり3か月かかるのかもしれない。先は長いな。

しかしAoE2のAIスクリプトと違って===というのも出てきた。型と値が同じの場合TRUEになると言われたがまったく意味が分からない。GPTちゃんに説明されてもちんぷんかんぷんだ。ちょっとあやしくなってきたな。章の概要にあった通りに初心者がつまづくというのはだてではないようだ。わけが分からないが分からないままにすすめる。if文はさんざんAIスクリプトで書いてきたので、すぐに頭に入ってきたが===がさっぱり理解できない。あぁ大丈夫かな?

でも、ひとついいこともある。Githubというところで掲示板のコードを最初に見た時はさっぱり分からなかったが、いまは「読める、私にもコードが読めるぞ」という部分がちょっとだけ出てきた。UNIX哲学に一つ一つの機能を積み重ねて大きなものを作るというものがある。こういう小さなことが積み重なって大きなものにつながるのかもしれないね。

(おわり)





ぬるぽ→false! PHP学習記4

スラスラわかるPHP 第2版
志田 仁美
翔泳社
2021-06-21

今日もPHPの教科書をやる。ネットでPHPを検索するとどうやらPHPは評判が悪いらしい。でもGPTちゃんいわく「君のやりたいことならPHPが一番やで」と言う。まったく訳が分からない。C言語っていうのが最強なんじゃないの? というにわか知識はあるしGPTちゃんもCができたらPHPより爆速の掲示板が作れるという。なのにPHPをやらせようとする。まったく訳が分からない。

本棚にだってPHPはない。実はこの本、高松の宮脇書店総本店まで行ってわざわざ買ってきたのだ。そこでもCが大部分を占拠していてPHPなんて棚2列しかなかった。20冊もなかったのではないか? はてさて、どうも先がなさそうに思える言語なのだが、本当に進めていいのかななんて思いつつ今日も進める。

<pre>
<?php
$true = TRUE;//確認のため変数に論理型を代入しておく
$false = FALSE;

$a = $true && $true; //どちらもTRUEなのでANDの結果はTRUE
$b = $true && $false; //片方がFALSEなのでANDの結果はFALSE
$c = $true && $true && $true; //一度に複数の演算ができる。すべてTRUEなので結果はTRUE
$d = $true && $false && $false; //FALSEが含まれるので結果はFALSE
$e = $true && ($true && $faplse); //カッコ内が先に演算されて結果はFALSE
var_dump($a,$b,$c,$d,$e);//変数の中身をダンプ(そのまま表示)する
?>

今日は論理演算というのをやる。
上の画像の10行目はタイプミスでfalseではなくfaplseとなっている。エラーが出たけど出力はされて、教科書通りfalse。なんでだろうってGPTちゃんに聞くと変数が見当たらない時はnullを返すらしい。で、nullだと自動的にfalseになるから結果は奇しくも教科書通りというわけだ。あ、nullって、もしかして「ぬるぽ」のぬるか? って聞くと「そうやで」って返答。古のネット知識がまた結びつく。ただしエラーは出てもガッはされない。

あとvarとechoって同じ意味なんじゃないってことをGPTちゃん聞くと、どうも違うらしい。関数がどうやらこうたらって言うから、さらに突っついたら藪蛇だったようでわけのわからんことを喋るようになった。う~ん、よくわからん。本当に理解できるんだろうか。教科書の段階で難しすぎる。

あと地味にダメなのがタイピングだ。小説を書いているから文字は打てるけど記号がてんでダメ。/とか小説で使わね~って言いたくなる。$なんて「欧米か!」ってなる。|←これなんてどこにあるか分からなくて一瞬詰んだと絶望した(Shift+¥で出る)。ホントに小指使いすぎ。プログラマーの人は本当に|を見ないで打てるんだろうか? こういうのも打ち慣れていかないとね。

話はちょっとズレるけどいま『超限戦』という本を読んでいて、この先のインターネットは個人運営の掲示板なんて成り立つんだろうかって思った。メディアが新しい情報兵器になるのなら掲示板運営も『インターネット技能1級』みたいな資格が必要になるかもしれない。最近は政治の文脈でSNS規制がたびたび話題になっているしね。そもそもインターネット=AIになりそうな雰囲気もある。周回遅れもいいところの掲示板製作、はぁ、大丈夫かなぁ。



とりあえず今日はAND,OR,NOTを学んだ。章末のテストをやると小説とはまた違う想像力が必要だなって感じる。頭脳に文系理系なんてないって言うけどやっぱりあると思うな。肉体的に違うところ使ってるって感覚がある。

明日は制御構文ってやつをやる。概要には初心者がつまづくところってある。もしかしたらここで終わったりしてね。どんなものでも成長しているうちは楽しいけど、つまずいた時にどうなるか。はてさて、明日も続くのかな?

(おわり)



メモ帳でもプログラミングはできる PHP学習記3

スラスラわかるPHP 第2版
志田 仁美
翔泳社
2021-06-21


寄り道しすぎ問題。いま『スラスラわかるPHP』という本でPHPという言語を勉強している。ChatGPTちゃんと一緒に読みながらだ。昨日ようやく噂に聞く「hello world」を表示させた。コードを書くにはVisual Studio Codeというソフトを使ったのだがGPTちゃんが「メモ帳でも書けるやで~」って言うの今日はメモ帳でやってみた。こんなとしてるから一向に進まないんだろうな。

スクリーンショット 2025-05-03 140129

上の画像にあるとおりPHPを打ち込んで.phpを後ろにつけて保存すると、なんとちゃんとhello worldが表示されるではないか! GPTちゃんいわく「原初プログラミングはメモ帳だった」らしい。浮動小数点とか、実数値とか、そういう話を聞くのが好きだなぁ。実のところ教科書を進めるよりGPTちゃんから昔の話を聞く時間の方が長かったりする。

コードを書いた後にブラウザで表示を見るんだけど、そのURLがhttp://のあとlocalhostから始まるのが不思議で「どうしてcからではないのか」って聞いたら、その話が面白かった。ブラウザからアクセスできるのはhtdocs以下のファイルで他のCドライブは見られないってことらしい。思っていたよりもインターネットって防御が固い。スーパーハッカーでも直接はいじれない構造になっている。

プログラミングができるようになったら、それがどれくらいの速さで動いているか計測する必要があるよな、ってことで教本の途中でGPTちゃんに「時間を測る方法って絶対あるよね?」ってまた寄り道。その結果、変数を使って名前を表示させる方法を見つける。

スクリーンショット 2025-05-03 145920

うおおおおおおお、教科書から横にそれたら、さっそく教科書に出てきた浮動小数点!!!!!
microtimeのあとの(true)でそうなるらしい。最初から数値で出るんじゃないの?(true)って必要ある? ってことだけど、phpはもともと文字を扱う言語で後から数値をいじれるようにしたから(true)を入れる必要があるらしい。言語にも歴史がある。もしかしたら他の言語にもそういうのあるかもね。なぜknightにkがあるのかとかさ。


はぁ、しかし浮動小数点なんて憶えられるだろうか。全然頭に入ってこない。今日は変数の1章だけで終わり。ページにして4ページ。GW中に教科書終わらせるつもりだったけど、どうやら無理そうだ。

(おわり)

追記:変数って要は二次関数だよね。X=1ならの数字が文字に変わっただけ。と、思うのだが実は違うのかも? まださっぱり分からないや。三角関数まで出てきたらあきらめる😭




記事検索(なんでも単語を入れてみて)
カテゴリ別アーカイブ
月別アーカイブ
このブログはAmazonアソシエイトに参加しています。
Googleアナリティクスでアクセス情報を分析しています。