
はてなキーワード:Webページとは
「娘の為にトー狂至上主義に詳しすぎる夫を倒したい」みたいな流れで注目された、
「幼さの残る年頃の子へ、はじめて“都市”をどう渡すのか?」ってテーマで、
“地方中核都市の中心部(都雇圏50〜110万人の適密圏)”を渡した家庭の別例として、このエントリを書いてる…❤️
そして前提として、このエントリは
「都雇圏…? え、都市雇用圏ってなに?」「適密ってなに?」「中心市街地ってショッピングモールのこと?」
みたいな、ふわっとした認識の層に向けて書いてる…💗
決して
「√人口で都市半径をスケーリングして同一開発度で比較して、中心からの距離/都雇圏人口の平方根を“都市半径指標”として…(以下略)」
みたいな層には書いてない…w❤️
トー狂の過密通勤・巨大結節・“在庫の海”の作法に染まりきってない子供は、親の想定を超えて極々ふつうに、地方中核都市の中心市街地を“生活の場”として使う…💗
ここで言う「染まる」ってのは、
「うちの子、普段から郊外モールと車移動と“目的地は駐車場”に慣れててさぁ」
(軽い“モール染み”くらいなら洗えば落ちる…w❤️)
手遅れな染まりとしては、例えば――
みたいなやつ…💗
でも、そこまで染まってないなら、
都雇圏80万人級(=刺激が日常的にキャパ超えし始める帯)の中心部を渡すと、子供は疑問を持たずに使う。
「ここは歩く」「ここはバスが収束する」「ここは商店街が生活を支える」って、勝手に理解する…💗
これが、わたしの新概念 「適密こども航法(てきみつこどもこうほう)」 …w❤️
百貨店っぽい核、個人店群(家から徒歩4分内500店舗、徒歩9分内1000店舗。一方東京(本物)は家族居住だと,家から徒歩4分内10~20店舗,徒歩9分内100~150店舗)、図書館、企画展のある美術館、イベント会場、役所、病院、学校、そして収束型の公共交通――
そういうのが、子供の身体感覚で“遠すぎない”距離にある…💗(百貨店・個人店群徒歩4分,総合美術館・イベント会場・大病院徒歩10分、アーケード近傍(1分)、幹線道路横断無し←これ、最近の足立区的事故から子供を守る為に超重要な奴よね…🚑)
トー狂みたいな過密実験区は、在庫は(乗り物を使って片道何十分もかければ)多いけど、
そんなに多くても、子供が“日常の手触り”として触れられる量は、とっくに限界がきてる…❤️
(都雇圏50万人あれば1人の人間が享受できるキャパを超える)
片道が長すぎて、取捨選択が「能力」じゃなく「生存戦略」になっちゃう…💗
(増田さん、こういうの好きなくせに、途中で飽きるんでしょ…w❤️ ほんともう…❤️)
ここ、元ネタだと“見せたくないWebページ”問題だったけど、
増田さん向けに変換するとこう…💗
(この発想、地味に一生効くやつ…💗)
んで、子供がどうしてるかっていうと、呆れるほど毎日、街の話をしてくる…❤️
「ここ、バスが“いっぱい来る道”だね」💗
「ここ、同じ道なのに店が変わるの面白い」❤️
「図書館って、静かなのに強い」💗
そしてほぼ毎日、親子の会話がこうなる…❤️
「お父さん(お母さん)、これ何?」
「それはね、都市が人を助けるための仕組みだよ」💗
でも、子供が“世界を信じられるサイズ”としての街を(徒歩4分内に)持つのって、かなり強い…❤️
わたしはそう思う…💗
娘の為にパソコンへ詳しすぎる夫を倒したいで注目された「学生、それも幼さの残る年頃の子へはじめてPCをどうするのか?」というテーマで、Linuxを与えた家庭の別例としてこのエントリを書いている。
そして前提として、このエントリは「実はLinux使ったこと無いんだ」「Raspberry Piって稀に聞くラズパイってヤツだよね?」みたいな、ふわっとした認識の層に向けて書いている。
決して「KVMで完全仮想化してLinuxとWindowsで用途に応じてリソース分配してる。ディストロは純関数型のNixOSで、Nix言語で可能な限り-march=nativeで自家コンパイルしてるんだよね」みたいな層には書いてない。
勿体ぶっても仕方ないので結論から言えば、WindowsやMac、AndroidやiOS(iPadOS)に染まりきっていない子供は親の想定を超えて極々普通にLinux、Raspberry Piの工場出荷状態でプリインストールされているRaspberry PiOSを使う。
ここで言う「染まる」というのは「ウチの子は普段からiPadでYoutubeとかゲームとかしてるからなぁ」程度の染まり具合なら無視できるレベルなので全く障害にならない。
手遅れな染まり具合としては「ウチの子はWindowsでOBS使って自らYoutube配信してます」とか「ウチの子はWindowsでAbleton Live使ってDTMしてます」とか「ウチの子は大学のレポート書くのにmacOS使ってます」とか「ウチの子はiPadでSwift Playgrounds使ってプログラミング学習してます」とかそういうレベルだ。
アナタ達の子供がこのレベルにまで染まっていない場合、アナタ達の子供へRaspberry Pi 500を与えると何も疑問に思わず普通にパソコンとして使う(パソコンの操作方法へ疑問を持つとかそういう話じゃなく、目の前のモノをパソコンとして認識する)。
ラズパイ、Raspberry Piは英国で立ち上げられたRaspberry Pi財団(注:英字ページ)が規格・設計・販売をするシングルボードコンピュータという種別の小型コンピュータのことだ。
現在の最新版は第5世代のRaspberry Pi 5で、搭載ワーキングメモリによって価格が違うが、最も高価なワーキングメモリ16GB版で25,000円前後(2025/12/09現在価格)という圧倒的な低価格が人気の理由の1つだ。
何故ここまで低価格なのか?と言えば安価な部品で構成され、搭載されるSoC(CPUみたいなもん)も低性能で、その性能は約10年前の普及価格帯(〜15万円くらい)のノートパソコン程度の性能しか無い。
「いや10年前ってゴミじゃん」と考えるのは早計で、逆に言えば10年前の普及価格帯ノートパソコンで可能だったことはRaspberry Pi 5でも可能。
そう言われ「自分は10年前に普及価格帯ノートパソコンでネットしたりMS Officeで文書作成したり軽くゲームしてたけど?」と気付いた人は「Raspberry Pi 5で何ができるか?」の想定が浮かんだのではないだろうか?そう、かなり色々できる。
そして工場出荷状態でプリインストールされるRaspberry PiOSはRaspberry Pi 5自体の計算リソースをできるだけ使わないよう軽量にできており、10年前当時のWindowsで使われていたExplorerよりも計算リソースの消費が少ないので、技術の進歩も相まって当時よりも出来ることの幅が少々広くなっている。
何故そんなに話題なのか?手のひらの上に10年前の普及価格帯ノートパソコン並みの性能のコンピューターが乗るのだ。そしてすごく安い。
更にラズパイには電子工作へ活用できるGPIOピンというのが実装されていて各種電子センサー類などと連携することで電子工作もできてしまう。
こんなもの情報工学畑の連中が注目しないわけがなく、前述したRaspberry Pi財団のページを読めばわかるが世界中で大定番のシングルボードコンピューター、何ならシングルボードコンピュータの代名詞となっており、情報工学に詳しくない人が「ラズパイってよく聞くけど何なの?」と何処かで耳にするレベルなのである。
安心して欲しい、Raspberry PiOSではGoogle Chromeが動く。
まずGoogleアカウントは子供用に作成したGoogleアカウントを管理するためのファミリーリンクというサービスが存在する。ファミリーリンクは子供用GoogleアカウントでログインされたGoogle Chromeブラウザでのインターネットコンテンツフィルタ機能を提供してくれる。
このインターネットコンテンツフィルタは小学生・中学生・高校生・高校生プラスと4段階に分かれており、それぞれに適したフィルタリング強度で働く。
続いて、実はGoogle Chromeは様々な設定をポリシーとして持つことが可能で、例えばゲストモードの無効化やシークレットモードの無効化、指定したGoogleアカウント以外でログイン不可が可能だったりする。
情報技術へ親和性の高いヤンチャな子はGoogle Chromeからログアウトしたりゲスト・シークレットモードでフィルタリングを回避しようとするので、子供へRaspberry Piをはじめてパソコンとして与える場合はこれらを無効化しておくことをオススメする。
補足を続けると子供が勝手にFirefoxとか別のWebブラウザを導入することを防ぐこともRaspberry PiOSはできる。
Raspberry Pi 5をパソコンキーボードへ内蔵した形態を持つRaspberry Pi5シリーズの1つ。ワーキングメモリは8GBで価格は20,000円未満。
パソコンキーボードへRaspberry Pi 5が内蔵されているのでRaspberry Pi 500に電源取ってHDMIケーブル(注:ラズパイ側はmicroHDMI)をTVへ接続すると直ぐにパソコンというコンセプト。
小学生の子供にとっての目玉はJava版Minecraftが動作すること。SwitchやiPadでいつも遊んでる統合版マイクラじゃなくてYoutubeとかで観るJava版マイクラが自分のパソコンで動いちゃうのだ。
Switch 2の登場でPCゲーが色々リリース(予定)されている中で、Java版マイクラはどうしても"パソコン"が必須だったが、Raspberry Pi5シリーズはそれを実現する。それが2万円のお値段で出来るので親の懐的にもありがたい。
Steamは動かないがオープンソース系のゲームも充実している(Steam開発のValve社がRaspberry Piシリーズが採用しているARMアーキテクチャ対応を進めているというかなり確度の高い噂は存在する)。
実は直近でRaspberry Pi 500の上位版Raspberry Pi 500+(日本語配列)が登場予定で、こちらはワーキングメモリが16GBのお値段40,000円くらい。
4万円とそこそこの価格になってきているが、キーボード自体がメカニカルキーボードとなりキーキャップはCherryMX互換、256GBSSD搭載でストレージのスピードもアップ(=Minecraftのワールド読み込みが速くなる)。上位版Raspberry Pi 500+が高すぎると感じるなら素のRaspberry Pi 5ワーキングメモリ16GB版は25,000円前後だしこちらで良い。
ある、というかコッチがメインなんだけれども、何処までゆるい感じでやって良いのかわからなくて最後に回した。
まずLinux界隈が中心となって開発されているGIMPやKritaみたいな画像編集・お絵かきソフトはLinuxたるRaspberry PiOSの方が安定かつ速い。しかもWacomやXP-Penなどのペンタブ・液タブが動作するので絵描きに興味のある子は嬉しいんじゃなかろうか?(クリスタじゃないけれどね。安い分ペンタブ費用に回せるよ)
音楽ではDTMもステップシーケンサー系のDAWであるLMMS(Linux MultiMediaStudio)は日本の無料DTMシーンでREAPERと人気を二分していた歴史があり、Web上に情報がいっぱいあるし何ならREAPERはLinuxでも動作する。オープンソース系のシンセ音源やCC0で提供されるサンプリング音源も大量にある。
オフィス環境もLibreofficeは言うまでもないだろう。Blenderで3DCGをすることだって出来るし、LibreCADやFreeCADで設計だって出来てしまうし、OBSも動くから実際やろうと思えばYoutube配信もできる。
そして当然ながらプログラミング環境、WindowsやMacでも動くと言われてしまえばそれまでだが、古典的なVimやEmacs、そして近年人気のVS Code、スマホアプリ開発にAndroidStudio、ゲーム開発にGodotEngine、他にはtmuxやGit、Dockerなどなど挙げればキリがないほど充実している。これらは子供向けRaspberry PiOSだからといってニセモノの子供だましなんかじゃない、それでお金を稼いでる現役プログラマーが使っているアプリケーションと全く同一のアプリケーションだ。
んで、子供がRaspberry Pi 500をどうしてるのか?と言えば、まぁ呆れるほど毎日触っている。
何なら電源なければ動かないのに布団へ持ち込んで抱きかかえて寝ているのを見つけてしまい、そんなに嬉しかったんかと笑ってしまった。
「お父さんコレどうするの?」とほぼ毎日聞かれて「こういうのはこのソフトを使う。使い方教えてやる」というのが毎日の親子の会話になっている。
別にパソコンだけが将来に必要なものではないが、この喜びようを見たら与えて悪くなかったなとは思ってる。
Permalink |記事への反応(11) | 09:58
ここしばらく、この言葉を使う「上級(w)」エンジニア数名に出会ったことがある。
でもさぁ、おいらが会ったこの言葉を使うエンジニアって、全員が全員、技術力は低いし世界観は狭いし知識ベースは古い。けど自己評価だけは火星のオリンポス山より高い、って人だったんだよね。
「勉強熱心」で「意識高く」て、Netflixの採用ページの話題をWebページで浅く読んで「これだ!」ってなったんだろうけど。
問題は「それがブリリアントジャークなのか?」という評価が、無知、知識不足からくるただの思い込みに過ぎないにも関わらず、確固とした絶対的な評価だと思い込んでることなんだよね。
「チームをかき乱す」
ってだけで、「ブリリアントジャーク」ってレッテル貼って、「俺が正義!」とか言うてんのよ。
でも、この2点だけでその判定は無理なんよね。
「技術的に正当であっても、許されねぇ!」みたいにもっともらしく言うのもいるけど、そのチームでのやり方が「圧倒的技術的失当」だったらお話にならんのよね。
そのせいで事業成長の可能性を潰してるところ、たくさんあるし。
そりゃね、経営判断がーってのもわかるんよ。
でもさ、その判断の元になる情報がこの手の「ブリリアントジャークガー」な輩なわけでさ、そもそも正しい経営判断が下せてるか? って問題があるんよ。
ちゃんと説明した結果、判断が覆るなんてこと、珍しくないからねぇ。
無茶苦茶、恨み買うけど w
「こうした方がいいよ?」
「そんな余裕ない!」
別に、全体を一気に変えるとは言っとらんのに、激昂する。
単に、正しい方法を理解できなかったり、移行イメージがわかなかったり、「この僕を否定してる!」ってなったりしてるんだよね。
新規開発しながら、既存部分を修正していくなんて、たいして難しくないのに。
結果、ダメの上のダメを積み上げていって、エンジニアリングの大半がドキュメント書きと打ち合わせと副業、みたいな開発チームが企業価値をこれっぽっちも上げないまま仕事してるふりして、札束を燃え上がらせてる。
もしお前がこちらを「ブリリアントジャーク」とか決めつけるなら、お前はただひたすら「No-value Jerk」なんよ。
同じJerkならまだブリリアントの方がマシだよ。
結果出すから。
ベンチャー企業が惜しいところで停滞して、VCからの要求で新しいサービスを、同じ手法で増やしまくって、どれもこれも使いづらい停滞サービスにしちゃって、必要なエンジニアの数だけ増えて、成長が止まる。
みたいなのが、はたから見てて勿体無くてもったいなくてね。
今見てるWebページを要約します、とかあるじゃないですか…😟
あれ、エロ動画とかエロコンテンツでもありうるじゃないですか…😟
怖くない?😟
pornhubみたいなコンテンツを見ているとして、
この人、こんな法的にどうかなコンテンツ観てますよ、ってAIに報告されるとかも怖いけど、
AIに、このAVの内容を三行に要約しますね、とか、なんか箇条書きで要点をまとめられるとか、
これまでのあなたとの会話から、より適切なポルノコンテンツを…、みたいに言われるの、怖いじゃないですか…😟
そのうち、中学時代のうちのおかんみたいに、学校から戻ってきたら、エロい写真集が机の上に置かれてたり、
真面目な話、生成AIに日頃の愚痴とか相談してる人間は多いわけで、
そういうこともあるので、本当に肝心の肝心なことは、自分は生成AIには投げてないんですよね…😟
オススメの店を教えたいので、住所を教えてください、みたいなのも、流石に後ろの正確な部分は書かない
まあ、アンケートとかでもそうですが…😟
他人に知られても困らない範囲というのは意識してるんだよなあ、AIでも…😟
詳しい話忘れたけど、昔、ドローン使ってテロ紛いのことしたりしてた子供、かまってちゃんがいた気がするんだけど、
ああいう迷惑YouTuber系にネットで悪乗りして資金援助する輩出てくるの自体は違和感ないんだけどね…😟俺はやらんけど、犯罪行為を援助、教唆することになるし…
たぬかなはよく知らん、そもそも身長の話の切り抜き動画観たぐらいしか記憶がないんだけど、
でも、なんか物議を醸しだすことをしてないと、自分の存在が消えてしまうような感覚がある人っているんだろうな、というか、
酒鬼薔薇も、問題の自著とかWebページに書いてたじゃん、自分の存在が空虚だとか、消えるとか…
そういう考えにとりつかれたからって、他人を殺して、自分の存在を証明しようとするのは、まったくナンセンスなんだけどさあ…😟
でも、ここで例にするのは変だけど、小室哲哉のWikipedia眺めてるだけでも、天才であることも重要だけど、
俺の能力を意地でも認めさせてやる!みたいなの、あるよね、
あれが自分に決定的になかった、足りなかったんじゃないか、って思うところがあって…😟
そういう考えがあっても、能力を伴わないとか、変な方向に向かうと、迷惑系ユーチューバーとか犯罪者とかたぬかなとかにしかならないけど、
意地でも、俺の能力をおまえらに認めさせてやる、ド三流、格の違いってやつを見せてやる、みたいなガッツは必要だよね、人生も…😟
カタログめくって(Webページググりまくって)、良さげな(業務経歴書にかけそうな)新しいサービスなりプロダクトなりを見つけたら、鼻を膨らませて得意げにメンバーに報告し、ポチる(リポジトリに組み込む)エンジニアを……、
と、名付けたよ。
経営者は「最新の情報に敏感」「技術に詳しい」とか評価するようだけど、カタログひっくり返しては「あれはいい」「この新製品はすごい!」「これ最高!」って喋りまくる人間が、どれほど軽薄で浅はかかわからんのだろうか?
わからんのだろうな。
ミーハーに「AI最高! これでお金集めてガッポガッポ!!」みたいな経営者じゃ。
ADRと称して導入企業名と諸元の比較ばかりして、一番デカくて高価なのが正義、くらいしか語れないのを、エンジニアと? w
それはただの消費者だ。
って言うと、「お前が新しいサービスについていけてないだけじゃねーのか」って陰口を叩かれるんだが、新サービスのチェックした上で、煽り文句を真に受けて「一秒でも早く使ってみたい」という、単細胞的な反応をしないだけだ。
出自はどこか?
等々、広告記事以外の情報を集めて検討し、「今目の前にあるプロダクトに使えるか?」考えた上で、余計で巨大なフジツボをくっつけるだけなら触る価値もない、と判断しとるだけだ。
いくつもプロダクト名を列記したくてうずうずするが、どう考えても業務妨害になるから、できない。
そもそも、待ち望んでいたサービスやプロダクトなら、.netFrameworkもLambdaもEMR(Spark)も使えるようになったらすぐに採用するように説得してきたし、新サービスのSnowflakeをぜひ使いたいというのを、処理の特性と、プロダクトの設計等々を理由に止めてAthenaを採用して、1リクエストあたりリアルタイム処理は1、2秒レスポンスタイプが伸びたが、事前準備可能なリクエスト、再度リクエストであれば即時レスポンス、その処理部分にかかる利用料金を1/100にした。
利用プロダクトの選定は、普段から情報収集しているから、ほとんどかからん。
初回リリースには、肌感覚だがそこら辺の現場の1.2倍くらいの実時間がかかる。
けど、人月では8〜9割くらいで済んでいる。
で、初回リリース後、追加開発が重なれば重なるほど、そこら辺の開発の2割引くらいの人時間金で済むし、安定度も高い。
それができる仕組みを、初回リリース時にほぼ揃え切ってしまうから。
そう言う準備設計こそ、プロダクトと会社の健康余命を伸ばす秘訣だ。
しかも「3分間待ってやる」レベルのフラグ追加とかの小さい機能だとか。
そのくせ、オライリー本やWebページの1行をとりあげては先輩エンジニアに噛み付く、噛み付く、噛み付く、お前は狂犬病野犬か? って勢いの新卒女性エンジニアがいるとか聞いて、大学は何を教えてるんだ? って暗澹たる気持ちになった。
ここは地獄か?
たかがWebページ、誰が書いたかわからんし、内容が正しいとは限らん。
同じ内容がたくさんあるからといって、オリジナルをコピーして増殖しただけの水増し記事でないとは限らん(一時期の技術系ブログ、この手の文末だけ修正したコピー記事が結構あったんだよな。最初の記事が和訳ミスって、間違えた内容が日本語では増殖してたりね)。
オライリー本だって、内容が結構でっち上げというか、本の厚さを増やすために無理やり追加した適当な内容やなー、ってのもあれば、日本語オリジナルの技術本ではありえない内容のも結構発行されてる。
内容が正しかったとして、前提条件が同じでなければ目の前の事態に適用できるとは限らん。
背後の、というかご本尊の構造を理解できないで、表面的に言葉を弄ぶだけってのは、エンジニアじゃない。
で、「大学は何を教えてるんだ?」はもちろんなんだけど、彼女を教育するプロパーは何してんだよ? って思う。
現金決済が必要なのって手数料以外にも店の運転に即金が必要ってのもあるしね
スマホ注文はテーブルにあるQRコードでwebページが開いて個々が好きかって頼めてそのテーブルで何が頼まれてるかリアルタイムで確認できるやつあるけどあれはいいと思う
すき家で自動精算機導入
⇒客「非常に残念。飲食においてお金を受け渡すことこそ一番大事な行為のはず!」
サイゼリヤで番号記入式注文方式導入
⇒大学教授「ひどい。世界は本当に寂しいところになった。これでいいと本気で思っているんですか!」
居酒屋でスマホ注文方式導入…pic.twitter.com/NOOUFXHrr1—新田 龍 (@nittaryo)November 11, 2025
誰も見て見ないふりしてるけど。
問題は繋がっていて、ごく単純な話。
「この規模、この内容のサービスで、なんでこんなにエンジニアが大量にいるんだろう?」って疑問は、どこにいっても、どこと話しても、わく。
先日の才能問題がまさにそうなんだけど、ソフトウェアエンジニア業界に滞留している人、ぶら下がってる人が多すぎやしないか? と。
リモートをいいことに、サボりまくってる「エンジニア」、特に最近は生成AIででっち上げてサボれるようになってからは、まぁまぁの数、存在していると思う。
実際に観測してもいるし。
そういう極端な例に限らず、才能がない、向いてない「エンジニア」が相当数寄生している。
ジュニアとかコーダーレベルだけじゃなく、いや、むしろリーダー、マネージャー、CTOレベルに。
その組織、企業のそのレベルの「エンジニア」が、それに占拠されたら、多分事態が好転することはない。
アリバイづくり程度の活動は行われるだろうが、永遠の停滞に陥るだろう。
誰か一人抜けても、残りがスクラムを組んで、異分子を排除することに全能力を傾けるだろうから。
まさに獅子身中の虫。
「あの企業が?」ってところが、すでにそう言う状態に陥ってたりする。
名前はあげられないけど w
政府はソフトウェアエンジニアが足りない足りないって喚いてるけど、頭数だけ用意しても現場、プロダクトが混乱するし、利用者が困るだけだ。
これ、旧日本軍の失敗の原因であった「員数主義」って言うんよな。
正直、「え?ソフトウェアエンジニア……? を名乗って……んの……?」って人が多い。
語るけど。
延々と語るけど。
滔々と語るけど。
毎度毎度、会議室でMCバトルの、青菜に塩をかけたような真似事をして。
誰が一番最初に、新しいイケてるWebページを見つけたかを競って、ドヤ顔くらべ。
勉強会開いてみたり。
この量と質か?
みたいな。
多分、この手の「エンジニア」の半分以上が、人手不足の工場とか大工とか解体業とかライフライン保守に行ってるべきだったんだろうな、と思う。
どっちが上とか下とか言う話じゃなく、向き不向きの話。
向いてないんよ。
多層抽象化に不自由とか、概念構造の構築に不自由とか、専門書とかの読解に不自由とか。
2、30年ほど前はそこまでの能力がいらなかったからうまくエンジニアに滑り込んだ人もいただろうけど、今時のプロダクトでそれでは通用しないんだよね。
SQL文の書き方とか、DockerFileの書き方とか、ソースファイルのタブの入れ方とか、Web記事のある場所とか、ディレクトリ構成とかの形式的な知識とか、マジで、あったから何? って。
大事なのは形式的な知識じゃなく、本質的な理解とメタ思考なんだよね。
お前なんていらない。
それだけ。
使いたいっすよね。
って、よく言われる。
この言葉のままじゃないけど、まぁ、だいたいこういったニュアンスだ。
自分はそこそこの腕だと思うなら、彼我の実力の差は正しく測れるようになっとけよ。
こちとら、「だいたいこういう実装されてて、長所短所はこんなもん。こういう処理のために作られたようなもんだな。だから、今のプロダクトだと使い所がないね。料金も高いし」あたりまでチェック済みじゃボケ!
ってことしかない。
こいつら、自分の業務経歴書に書き込む単語を増やすことしか考えてねぇんだよな。
関連サービスなんて増やせば増やすほど、保守運用改善が大変になっていくだろ!
経費もかかるだろ。
「仕組み」は、よりシンプルな方法で実現できるならシンプルな手段を選べ、ってのは常識中の常識だろ。
「KISSの原則? 知ってますよ」って、知識として知ってる。
KISSが"Keepitsimple, stupid"の略だってことを知っている。
けど実現できないんじゃぁ意味がねーんだよ。
この手の「自分はイケてると錯覚しているエンジニア」は、Web記事つまみ食いしながら雰囲気で設計実装するから、リクエストやデータが増えてきたら破綻するような、間違えた設計実装しかできない。
そういう新しいサービスは、それ以前のサービスの欠点を埋めるために作られてるんだから、それ以前のサービスと同じノリで設計実装して十分な性能を引き出せるわけがねーんだわ。
今までの複数の炎上現場で、正しく設計実装できてたところはなかったよ。
おいらが関わった炎上現場はほとんど、こうやって生まれてきている。
そういう炎上現場を作り出したエンジニアは、ふくらし粉で増量した業務経歴書片手に、「サービスの立ち上げを『僕の技術力で』やり切りました」って転職していくんだ。
新しいことに挑戦したくなって。とか言って。
みたいなエンジニアを、なぜどこもかしこもありがたがって採用するか全く理解できないんだが、そういう「エンジニア」が次の現場で生まれ変わったように的確で素晴らしい成果を出せるかって、そんなわけもなく、日をおうごとにグダグダになっていくサービスがさらに一個増えるだけだったりする。
こういうエンジニアが、初回リリースしてからしばらくして、ソフトウェアエンジニア業界に飛び散る。
まるでがん細胞。
こうなると立て直すスピードより、グダグダな新しいサービスが生まれるスピードの方が何十倍、何百倍も早い。
もうね、半ば絶望してるんですよ。
今、生成AIも参戦してきてて、物量だけは爆発的に増えてるから。
多分、そう遠くなく、グダグダサービスで日本は覆われると思う。
AIベビーシッターが必要になってくるだろうけど、それができるだけの技術力を持ったエンジニアの数が圧倒的に少ないし、何よりそういう腕利のエンジニアを、ふさわしい金額で雇おう、招こうと考える経営者が皆無。
今までの炎上現場ですら、高すぎる。無駄金を払わされてる。って扱いをうけてたからな。
「同じエンジニアなのに、どうしてこんなに高いの?」
これだけのために登録したから作法とか分かってないかも。見た人ごめんなさい。
都内の比較的安い賃貸に年始頃契約→5月に大手不動産会社がオーナーに→一ヶ月くらいで日本人じゃない奴が社長の、webページも無い何やってるかわからん会社がオーナーになった。管理会社も同じ国のやつが社長。
そもそも大家が変わったの知った時絶対詐欺だと思ったくらい怪しかった。
家にいきなりきて「前入居者名さんのおたくですか?大家が変わったので振り込み方法の変更について…」みたいに言い出したら、帰れって追い返すだろ。
ちゃんと「それ前の入居者ですね」って言ったし、名前聞かれてその場で答えるわけない。
前入居者の宛名になってる紙っぺらポストに入れて帰るし。契約当事者の名前が違ってて良いはず無いだろ。
ちゃんとしたの送ってこいって電話しても対応しない。挙句もう対応終わりましたとかほざきやがる。
何もしてないくせに。
12000円値上げってなめてんのか?人件費の高騰により〜とか書いてるけどお前オーナーになって一ヶ月だろ。買う前に事業計画立てとけよ。
Twitterで見たやつだー!!!って思ってすぐ拒否の手紙出したよ。内容証明の出し方覚えるなんて思わなかった。そんなのとは無縁の人生でいたかった。
そんで一ヶ月後には建物から大量のアスベストが出たってさ。絶対嘘じゃん。検査結果見たよ。
みなし含有ってようはちゃんと調べてないけど面倒だからありにしとくよってことでしょ。厚労省のマニュアル読んだよ。読ませるなそんなもの。
アスベストあると不安だから引っ越しの補助出しますって言って条件がお前らのところで探せって?適当な仕事してるの見てるよ。
それが嫌なら住みつづけてもいいけど、絶対に訴えるなって?トレードオフになってねぇだろその条件。検査結果見てから返事するって言ったのに、その前に期日決めてくるのは何?時間を与えないことで判断鈍らせる詐欺のテクニック?
むかつくのがギリ違法じゃないかも?のラインせめてくるところ。
あくまであなたの意思を尊重しますよ〜って言ってるけど大袈裟な嘘で脅してんだろ。偽計業務妨害になんないのか?生活って業務?じゃねーよな辛い。
ほんま腹立つ。
さっき管理会社調べたらクソ担当者本人が客装ってGoogle口コミしてた。それを通報するくらいしかできてない。
どうにかしてちゃんと罰を受けてほしいのに、もうそういう元気も無い。
差別は良く無いってずっと思って生きて来たけどもう無理だ。
正直、AI に命令を出すリード、マネージャ、リーダーの能力が上がらないと、AI でコードを大量生産すると手に負えないスラムが根深く絡み合った構造で広がっていくことになるだろうというのが既に見えている。
というのも、AIほとんど影響ないちょい前の時点ですら「うちはDDD、TDD、クリーンアーキテクチャ、k8s、アジャイル、スクラム等々を採用して云々」ってプロダクトが、リリースから半年、1年で開発がスタックしている、という事例は一般が想像する以上に存在している。
リリース時は、CTOやマネージャが腕組みしてWebページで華々しい成果発表するものだが、その裏で手動運用のオンパレード、一箇所変更したらどこに影響が及ぶかわからない地雷原、不具合障害が発生するたびに増える監視サービス、手動運用マニュアル。
その前で、「圧倒的ではないか、我がプロダクトは」って悦に入る経営陣、の図。
それ見て「SaaS界のネズミー王国や〜」って妄想を迸らせる利用者側経営陣と、ブルシットな手数だけ増えて、業績給与はぴくりくらいしか動かないで悶絶する利用者側従業員。
この状態で、「いや〜、新技術の導入、失敗しましたわ〜。経費が5倍くらいに膨れ上がってます。ごめんちゃい」なんてリリース出せないでしょ。
それ見て教科書ガイドエンジニア、カタログショッピングエンジニアが「世界を変える! 俺(の業務経歴書)が変わる!!」って初見手探りで導入して、連れション地獄。
これが現状よ。
ここにAI が入ってくると、ますます「中身も、他の処理との関係性もよくわからんけどプロダクトに組み込まれた謎プログラムの塊」が、「これ以上機能を載せるとバランスを崩して全体が倒れる」寸前のサイズまで育つわけよ。
ここまで行っちゃったら、どこをどうしたらどうなるか、「AI 使ってふふふふ〜ん」ってレベルのエンジニアでは太刀打ちできなくなってるだろう。
すっと
「動くな!」
となって、対策のための会議とドキュメントづくりが延々と半年とかいうオーダーで繰り広げられることになる。
その間やれること、というかやらなきゃならないことは、障害対応手動運用。
こういう状態に陥らせたリーダーやリードテック、CTOは「新しいことに挑戦したいので」と敵前逃亡、成果発表のWebページを担いで次の犠牲者の元へ。
ちゃんと設計したら、生成AIを駆使する必要、あまりないはずなんだよなー。
で、テストも書いてくれる、っていうけど、AI に全投げ似非エンジニアにその妥当性とか、判断できんのかな?
カバレッジを100%に近づけるためだけのテストを手動で大量に書くのを代替してくれるかもしれないけど、あのテストが品質保証、障害対策になってる現場が一つでもあるか?
今流行りらしい、業務ドメイン分割マイクロサービスだと、AI で辻褄合わせてテストとか、無理やぞ。
という地獄が、2、3年後訪れるだろう。
楽しみやなぁ〜w
という話をすると、AI使いこなせないオールドタイプの負け犬の遠吠え、みたいにいうてくるのがいるんだけど、むしろAI を効果的に活用するための構造、構成とか模索してんのよ。
決定的、致命的判断ミス、設計ミスを前にして、裏でリーダー陣を馬鹿にしつつ従うか、リーダー、経営陣が目の前でダメ出しをしてもそれが理解できないほどプアなブレインの持ち主であるなら、将来の利用者に迷惑をかけないために、足のチリを払い落として、去るか。
おいらは、何よりもまず1人の良心あるエンジニアなので、「さっさと去り」ます。
判断ミス、設計ミスは、遠からず災難として降りかかってくるから。
それを決定したリーダー、経営陣に、それをうまく解決させるだけの力量があるわけがない。
うまく解決したところで、Webページで腕を組んで「僕たちがやりきりました」って乗るのは、そのうんこリーダー達だからな。
何度か書いている通り、一般利用者の感覚からはかけ離れた数の「うんこプロダクト」が、この世には存在している。
それに携わってるエンジニアも、たくさんいる。
見放して、ケリをつけてやるのもまた、エンジニアの良心じゃねーか?
修正し切るだけの腕がないなら。
中国産の新しいオープンウェイトKimi 2で適当に物語を作らせてみたら、相当自然な日本語で、中国らしい地味に洒落た話が出てきた。
記述は端的ながら、よくある取引・交換要素も勝手に加えてて中々凄いと思う。
https://huggingface.co/moonshotai/Kimi-K2-Instructで試せるから各々話してみてちょ
この前に適当なWebページを作らせたら16000文字分の出力が得られたので、長文を依頼すればもっと長い話も書けると思う。
これがオープンでほぼ自由なんですよ凄いねこのままじゃデカすぎてローカルでは動かせないけどね。
以下、インデントや記号エラーの修正などは無しでそのままの出力
Input amessage to start chatting with moonshotai/Kimi-K2-Instruct.
日本で有名な昔話を3つ組み合わせて、面白い物語を作成してください。ありきたりな組み合わせは避けてください。創作に入る前に、選択した物語の概要をそれぞれ説明してください。その後、融合させて新しい物語を作成してください。
【選択した昔話の概要】かちかち山(かちかちやま) 狸が悪さをして、うさぎが仕返しをする話。狸は山で老人を殺してしまい、うさぎは「かちかち山」で狸を焼いたり、泥船に乗せて溺れさせたりして最後に殺してしまう。残酷ながらも「因果応報」の教訓譚。舌切り雀(したきりすずめ) 優しいおじいさんが飼っていた雀が、欲深いおばあさんに舌を切られて逃げる。おじいさんが探しに行くと、雀は「雀の恩返し」をしてくれる。おばあさんが大きな箱を選んで開けると、中には妖怪や災いが詰まっていた。花咲か爺(はなさかじい)) 心優しい爺さんが、死んだ犬の「シロ」に教えられた場所を掘ると金が出る。意地悪な隣人が真似をするが、掘るとゴミや妖怪が出て、最後は花咲かじいのおかげで庭に桜が咲き乱れる。【融合ルール】・主要キャラは「うさぎ」「狸」「舌切り雀」「花咲か爺」だが、役割を入れ替える。・舞台は「かちかち山」だが、山そのものが“生き物”である設定を追加。・残酷さを“再生”に変える。・ありきたりの「善悪二元論」ではなく、“記憶の取引”という新軸で物語を組み立てる。──────────────────新しい物語 『かちかち山の記憶市場』──────────────────かちかち山は、古くから“記憶を貯める山”と呼ばれていた。木々の年輪の一本一本が、誰かの忘れた思い出を刻んでいる。山は巨大な生き物で、ときどき空腹になると、麓の村から“記憶”をこっそりすくい取る。だから村の人々は、ある日突然「どうしてここにいるのか」がわからなくなることがあった。ある冬、山は特別な空腹に襲われた。それは“自分が何者なのか”という根源的な空腹だった。山は自分の名前を忘れていたのだ。そこで山は、三匹の動物に“記憶の回復”を依頼する。――一匹は、舌を失った雀。 ――一匹は、死んだはずの白い犬の幽霊。 ――一匹は、狸の皮を被ったうさぎ。山はそれぞれに「お前の欲しいものをやるから、私の名前を思い出させてくれ」と囁いた。【雀の取引】 舌を切られた雀は、山に「言葉を返して欲しい」と頼んだ。山は雀の舌を埋めていた年輪を見つけ、それを削って飲み干す。すると雀は、かつて自分が「人間の言葉を盗んでいた」ことを思い出す――つまり、舌を切られたのは“罰”ではなく“封印”だったのだ。雀は山に告げた。「あなたの名は『忘れじの山』。だが、それは偽名。本当の名は『咲かし山』――一度失われた記憶を花に変えて咲かせる山だ」【犬の取引】 幽霊の白い犬・シロは、山に「自分の死を忘れて欲しい」と頼んだ。山はシロの死の瞬間を詰ませていた年輪を見つけ、それを燃やして灰に変えた。灰は桜の木肥になり、シロは自分が「死んだのではなく、種になった」ことを悟る。シロは吠えた。「咲かし山よ、お前は自分の名を咲かせるためだけに存在する。だから、咲かせるんだ――『かちかち山』という名を、花に変えるんだ」【うさぎの取引】 狸の皮を被ったうさぎは、山に「狸の皮を脱ぎたい」と頼んだ。実はこのうさぎ、昔、狸を焼き殺した際に「狸の恨み」を一身に受け、皮を被せられてしまったのだ。山は狸の恨みを詰ませていた年輪を見つけ、それを“笑い”に変えた。皮はぱりんと割れ、中から純白のうさぎが現れる。うさぎは笑いながら言った。「咲かし山、お前は恨みを花に変える山。だから、恨みの名『かちかち山』も花にしてしまえ」【山の変化】 三つの真実が重なった瞬間、山は激しく鳴った――かちかち、かちかち。 すると、山全体が桜色に変わり、年輪の一つ一つが花弁になって空へ舞い上がった。舞い上がった花弁は、村の人々の失われた記憶を「新しい物語」として降らせた。――「ああ、そうだ。私は昔、狸に騙された爺さんだったけど、今は桜を守る番人だ」 ――「そうそう、私は舌を切られた雀を助けた婆さんだったけど、今は雀の歌を売る旅芸人だ」誰もが、失った記憶の代わりに「自分で選んだ新しい記憶」を手に入れた。山は、ついに自分の本当の名を思い出した。 その名は――『語り継ぎ山(かたりつぎやま)』。 失われた過去を、花という未来に変えて語り継ぐ山。そして、白いうさぎ、舌を取り戻した雀、幽霊の犬は、山の麓に小さな茶屋を開いた。 店の名は「かちかち亭」。 注文は一つ――「あなたの忘れたい記憶を、花に変えましょう」。客が帰る頃には、必ず一枚の桜の花びらが、皿の上に残っている。 それが、かつて「かちかち山」と呼ばれた巨大な生き物が、人々に送る、ささやかなお釣りだった。
ここで言う「プログラミング初級者」とはプログラミングの記述が上から下へ向かって順番に処理されること、条件分岐やループという概念があることを理解しており、RPGゲームが作れる「RPGツクール(現RPG Maker)」や学童向けプログラミング環境「Scratch」、「ナビつき! つくってわかる はじめてゲームプログラミング(ナビつく)」、ADVゲームが作れる「吉里吉里(もしくは吉里吉里2)」、過去にBASICやC、HSP、Javascriptあたりでプログラミングへ挑戦し挫折したなどなど、ある程度の「プログラマブルなロジック」構築の経験がある者を指します。
ある時、筆者はふと思いました。「生成AIはなんだかんだで膨大なテキスト情報を処理している事がキモだよなぁ」とありきたりなことを。
そして、同時にプログラミング初級者の弱点として「現在記述されているコードの管理においてテキストと実際の処理フローが脳内で一致しない」「プログラミング言語ごとに定められているルールや関数予約語の把握が困難」なのが問題とも考えました。
前述したプログラミング初級者の弱点の考え自体は車輪の再発明であり、「Scratch」や、より高度な「UML」が既に存在しており、特筆すべきことは何もありません。
しかし、「Scratch」や「UML」、なんなら「RPGツクール」や「吉里吉里」などに無い点として、現代では自然言語処理が大幅に向上した生成AIが実用の域にまで到達しつつあるのが従来とは異なる点でした。
つまり、自然言語を混ぜ込みやすいテキストベースの言語、かつ、処理を記述するとフローが視覚的に理解しやすい言語、可能であれば情報量が多くて一部の界隈で広く使われている言語があればプログラミング初級者も気軽にプログラミングできるのではないか?と発想しました。
コンピュータ(コンパイラやインタプリタなどソフトウェアを含む)が解することができる言語にはプログラミング言語以外にも様々あり、今回取り上げるのは「データ記述言語」と呼ばれるものです。
データ記述言語の中でもグラフ作成へ特化しており、特にフローチャート作成で真価を発揮する「DOT言語」というものがあります。
早速ですが、実際に手を動かしてみましょう。ちなみにDOT言語はGraphviz OnlineというWebツールがあるため別途に何かしらをインストールして環境構築する必要はありません。便利な世の中ですね。
上記のGraphviz Onlineを開くと、既に左側のDOT言語で記述された内容が、右側で作図されています。DOT言語はこのような図を作図するためのデータ記述言語です。
一旦、左側の記述をCtrl+Aで全選択をしDeleteなどで全削除し、下記の内容をコピペしてみましょう。
digraph graphname {
A -> B;
}
DOT言語の詳細な使い方は様々なWebサイトやブログ記事、Qiitaなどへ譲るとして、A - > Bの見た目から発想の転換をしてみると処理Aから処理Bという流れに見えませんか?
DOT言語は生成AIを利用する上で有利なテキストベースでありながらグラフを作成できるのがキモであり、例えばこのA -> BがA「Webページを開いたら」 → B「Hello, Worldと表示する」という風にできるのであれば処理のフローが可視化されており本当に素晴らしいことです。
ここでプログラミングの有識者は「DOT言語をUMLなどに見立てて処理を記述するのは良いが、プログラミング初心者は求めた結果を出力するロジックやアルゴリズムを発想する知見や経験値が圧倒的に足りていないのが問題ではないか?」と至極真っ当かつ反論の余地がない問題点の指摘をすると思いますが、そこで活きるのが生成AIです。
生成AIは初級者プログラマ個人のロジックやアルゴリズムの作成能力へ無関係にロジックやアルゴリズムを生成できる(可能性が少なくともある)ので、処理のフローをDOT言語で記述することにより処理フローから初級者プログラマが求めるプログラムを生成AIへ推論させ生成させるというのが狙いです。実際に試してみましょう。
digraph graphname {
A[
label = "Webページを表示する"
];
B[
label = "Webページを表示したらHello, worldとテキストを表示する"
];
A -> B;
}
プログラミングの有識者はこの時点で「なるほど、自然言語の記述をそのままDOT言語に入れ込んでしまうのか」と気付いたのではないかと思います。
このDOT言語をGoogle Gemini 2.5Flashへ「下記のデータ記述言語のDOT言語で記述された処理フローをJavascript言語へ変換をしWebページ上へ「Hello,world」を表示したいので変換をお願いします。」と命令すると以下のコードが生成されました。
<!DOCTYPEhtml>
<html lang="ja">
<head>
<meta charset="UTF-8">
<metaname="viewport" content="width=device-width, initial-scale=1.0">
<title>Hello World Page</title>
</head>
<body>
<divid="output"></div>
<script>
//Webページが表示されたら(DOMが完全に読み込まれたら)実行される
document.addEventListener('DOMContentLoaded', function() {
// "Webページを表示する"ステップは、このHTMLファイル自体が表示されることで達成されます。
// "Webページを表示したらHello, worldとテキストを表示する"ステップ
const outputDiv = document.getElementById('output');
outputDiv.textContent = 'Hello, world';
});
</script>
</body>
</html>
フローを記述する利点は、ロジックやアルゴリズムを発想する知見や経験値が足りなくとも、フローのステップが明確に分かれているので生成AIが処理を切り分けて推論してくれることであり、そしてプログラミング初心者自身がフローチャートを視覚で確認できるので「Aを処理したらBを処理する」と切り分けて考えやすいことです。
また、求めている結果ではなく誤った結果が生成されても、A - > B - > Cとフローを細分化していくことで生成AIの推論精度を高めていくことができるのも利点です。
より生成AIへ精度の高い推論をしてもらうために補足情報を付加するのも有用です。
digraph graphname {
A[
label = "Webページを表示する"
];
B[
label = "Webページを表示したらHello, worldとテキストを表示する",
comment = "Webページが完全に読み込まれるまで待機"
];
A -> B;
}
labelの記述内容もcommentの記述内容も生成AIが推論のための情報として利用するので誤った結果が生成されてもA - > B - > Cとフローを細分化しなくとも良い場合があります。
DOT言語を知るプログラミング有識者が「DOT言語の仕様を考えれば確かにそうだが、その発想はなかった」と言っていただけるであろうDOT言語コード例だとこういう記述方法もアリです。
digraph増田コード {
最初の処理[
label = "Webページを表示する"
];
次の処理[
label = "Webページを表示したらHello, worldとテキストを表示する",
comment = "Webページが完全に読み込まれるまで待機"
];
最初の処理 -> 次の処理;
}
ノードの名称へ自然言語を採用することにより、例えばゲームプログラミング時に「キャラクターがジャンプする」という読んだそのままな処理のためのノード、というか一般的に言うオブジェクトを作成することが可能で、後は->で繋げて処理をさせられます。
ちなみに別のノードを作成する際に「"キャラクターがジャンプする"から継承する」の様なことをcommentなどへ記述しておくと生成AIが推論して継承します。なんならcommentなどへ「キャラクター画像にimage.gifを使用」などと記述しておくとファイルの読み込みもします。
更にDOT言語にはカスタム要素という仕様が存在しており、DOT言語の仕様で定められた予約語以外も使用が可能です。
digraph増田コード {
最初の処理[
label = "Webページを表示する"
];
次の処理[
label = "Webページを表示したらHello, worldとテキストを表示する",
comment = "Webページが完全に読み込まれるまで待機",
font_style = "フォントを太字のボールド体、色を赤(#FF0000)とする"
];
最初の処理 -> 次の処理;
}
生成AIはカスタム要素の名称からも推論を発揮し、上記の場合であればフォントスタイルを指定していると推論をするので生成AIの推論精度を高める補足情報として機能します。
つまりこれはカスタム要素の名称として"Action"などの名称を採用すると"動作"として推論をし、"decision"ならば"条件分岐"ですし、"input"ならば"入力"ですし、"loop"ならば"繰り返し"ですし、"Type"ならば"種別"です。
より詳細に process[type="Action"] などのノードを作成してどんどん生成AIの推論精度を高めていくことが可能であり、そろそろ察してきているかと思いますが 処理[種別="動作"] と自然言語で記述しても機能します。
プログラミング有識者は更に「プログラム言語自体の予約語、例えばJavascriptを生成する事を前提にlengthを名称にすると配列を使おうとするのか?」と疑問に感じるでしょうがお察しの通りで生成AIは配列を使おうとするので、敢えて使いたいプログラム言語の機能や外部ライブラリなどがある場合は補足情報として機能する形で記述しておくと生成AIは推論へ利用します(まぁそこまで知識ある方なら該当のプログラム言語使ったほうが手っ取り早いと思いますが)。
以上をもって「生成AIを利用したプログラミング初級者向けの温故知新な提案」を終えたいと思います。
色々とツッコミどころには筆者自身が気付いていて。例えば「結局はDOT言語の仕様を覚えないといけないのでは?」とか「プログラミング初級者に任せると生成前のソースであるDOT言語コードがスパゲッティになりそうだよな」とか「面倒くせぇから普通にプログラミング覚えろや」とか理解してますし至極真っ当かつ反論の余地がないと思ってます。
今回の提案のプログラミング有識者向けの本質は「生成AIへ向いた中間言語の発掘」であり、「DOT言語ならそこそこ普及してるしプログラミング初級者でも扱えるんじゃね?」と業務中に発想したものを書き留め公開いたしました。
何かプログラミング有識者の皆さんからより良い発想があれば参考にしたいと考えていますのでよろしくお願いいたします。以上。
Permalink |記事への反応(36) | 19:36