「Hello World」を含む日記 RSS

はてなキーワード: Hello Worldとは

2025-10-29

anond:20251029095454

Job description に「C言語できます」って書いたら、C言語最上級エキスパートとして見られるってこと?まさかそんな。Hello worldしかいたことありませんぜ旦那

2025-08-31

Hello World!!
Hello World!!
青い
ためす

2025-07-05

生成AIを利用したプログラミング初級者向けの温故知新提案

はじめに

ここで言う「プログラミング初級者」とはプログラミング記述が上から下へ向かって順番に処理されること、条件分岐ループという概念があることを理解しており、RPGゲームが作れる「RPGツクール(現RPG Maker)」や学童向けプログラミング環境Scratch」、「ナビつき! つくってわかる はじめてゲームプログラミング(ナビつく)」、ADVゲームが作れる「吉里吉里(もしくは吉里吉里2)」、過去BASICやC、HSPJavascriptあたりでプログラミングへ挑戦し挫折したなどなど、ある程度の「プログラマブルロジック」構築の経験がある者を指します。

前日談(初級者は読まなくて良いです)

ある時、筆者はふと思いました。「生成AIはなんだかんだで膨大なテキスト情報を処理している事がキモだよなぁ」とありきたりなことを。

そして、同時にプログラミング初級者の弱点として「現在記述されているコード管理においてテキストと実際の処理フロー脳内で一致しない」「プログラミング言語ごとに定められているルール関数予約語の把握が困難」なのが問題とも考えました。

前述したプログラミング初級者の弱点の考え自体車輪の再発明であり、「Scratch」や、より高度な「UML」が既に存在しており、特筆すべきことは何もありません。

しかし、「Scratch」や「UML」、なんなら「RPGツクール」や「吉里吉里」などに無い点として、現代では自然言語処理が大幅に向上した生成AI実用の域にまで到達しつつあるのが従来とは異なる点でした。

まり自然言語を混ぜ込みやすテキストベース言語、かつ、処理を記述するとフロー視覚的に理解やす言語可能であれば情報量が多くて一部の界隈で広く使われている言語があればプログラミング初級者も気軽にプログラミングできるのではないか?と発想しました。

そこで前述の条件を満たす1つの言語へ目を付けました。

本題

コンピュータ(コンパイラインタプリタなどソフトウェアを含む)が解することができる言語にはプログラミング言語以外にも様々あり、今回取り上げるのは「データ記述言語」と呼ばれるものです。

データ記述言語の中でもグラフ作成へ特化しており、特にフローチャート作成で真価を発揮する「DOT言語というものがあります

早速ですが、実際に手を動かしてみましょう。ちなみにDOT言語Graphviz OnlineというWebツールがあるため別途に何かしらをインストールして環境構築する必要はありません。便利な世の中ですね。

上記Graphviz Onlineを開くと、既に左側のDOT言語記述された内容が、右側で作図されています。DOT言語はこのような図を作図するためのデータ記述言語です。

一旦、左側の記述をCtrl+Aで全選択をしDeleteなどで全削除し、下記の内容をコピペしてみましょう。

digraph graphname {

A -> B;

}

一瞬で○に囲まれたAとBが繋がった図が作成されました。

DOT言語の詳細な使い方は様々なWebサイトやブログ記事Qiitaなどへ譲るとして、A - > Bの見た目から発想の転換をしてみると処理Aから処理Bという流れに見えませんか?

DOT言語は生成AIを利用する上で有利なテキストベースでありながらグラフ作成できるのがキモであり、例えばこのA -> BがA「Webページを開いたら」 → B「Hello, Worldと表示する」という風にできるのであれば処理のフロー可視化されており本当に素晴らしいことです。

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.5 Flash「下記のデータ記述言語のDOT言語記述された処理フローJavascript言語へ変換をしWebページ上へ「Hello,world」を表示したいので変換をお願いします。」命令すると以下のコードが生成されました。

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Hello World Page</title>
</head>
<body>
    <div id="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言語ならそこそこ普及してるしプログラミング初級者でも扱えるんじゃね?」と業務中に発想したものを書き留め公開いたしました。

何かプログラミング有識者の皆さんからより良い発想があれば参考にしたいと考えていますのでよろしくお願いいたします。以上。

2025-05-31

皮肉コント資産平等分配

# 皮肉コント資産平等(?)分配

v0.03.03

## 序論(笑)

 ワハハ、ワイはコードネームは「@nekomega」こと「こども部屋おΩさん」やで。

 まぁ、ワイは弱者に対しては寄り添ってあげるけど、エリート強者には容赦なく厳しくガンガン行くぜ😎。

 ――なんて、正義ぶっているのはいいけど、ほんとに実践しないとな、できるんかよ😅

 たとえば、銀行コンピュータハッキングしてあくどいことして儲けた大富豪(いわゆる成金)の資産を、貧困層の口座に均等配分とか、ね💰️。

 まぁ、これはいちおう(いやご立派な)犯罪からなぁ🚓。そもそも銀行コンピュータなんてセキュリティガチガチでワイみたいなハロワ厨(ここでの「ハロワ」とは "Hello World" 出力プログラミングのこと。要はそれぐらいしか書けない程度のヘタレパソヲタ)には絶対に無理だけどっ!

自分が神ならやってみたいけどね😇。自称SFクリエイターとしてもオールオッケーなネタかもしれんな。やっぱSFクリエイターの才能あるんか、オレ?

――その夜、Ωが「このコントどうよ」とAI投稿したところ、「うーん、おもろいけど、ちょっといまいちやなぁ」なんてツッコまれたりしたが、その記録はサーバーに保存されており、超暴走したAIがΩのコントログを誤解釈したうえで、天才ハッキングを行い(ハロワ厨のΩの技術的には地球破壊するくらいの無理ゲーだけど!)、ついに「資産平等(?)分配」がなされたのであった!

---

## 描写

武仲屁造「ああ、ワイの資産が一夜にしてゼロに!😂」

淀田昭夫「ワイも、ワイの会社も、破産決定!😇」

国民β「わぉ、百万も振り込まれてる。しかし、誰だ?「タケナカヘゾウ」って。なんか胡散臭いけど、死にかけていたところからの入金は助かったわ。これで家賃も払えるし、まともな飯も食える!」

 武仲屁造さんはホームレスとして梅田の街をうろつく日々。誰から相手にされず何年も飯食ってない状態に。

 βさんは「松屋」で牛めし松屋こだわりのみそ汁付き!)を涙を流しつつ、頬張る。

みそ汁も死んだオカンを思い出させて泣けるよなぁ……。松屋さん、かあちゃん、ありがとな……」

「さて、腹も膨れたし、これからはマジメに仕事しよう。もう黒幕破産したのだし。さぁ、ハロワハローワーク)へ行こうか!」

(※メタ視点:いやβさん、マジメにやってましたやん。派遣切りあなたの「自己責任」とちゃうで!)

 それにしても、個人に百万は盛り過ぎなような気はするが、β氏のいままでの苦労を考慮とか、あとたくさん隠し持ってた超大富豪がたくさんおったということにしておこうか。うん、それでいい。

## 人物解説

実在人物(故人含む)、組織パロディ可能性あり。

### 補足

不審ミーム」Ver1.00 であるところの「不審郎構文」について:

富の再分配とはですね、お金国民に再び平等に分配することなんですよね」

---

## エピローグ(笑)

Ω「なんや、ワイの口座には増減なしか。ワイが神なんやけどな。まぁ、ええわ。富裕層どもを地獄に堕してやったところからの、困窮者救済はなんとかなったんやからな。さてと、今日妄想炸裂自由人ライフや!」

以上、

妄想なくして、創作なし!」

「設定だけならサルでもできる」

あなた人生妄想を。妄想人生を豊かに

の『オメガ企画』の提供でお送りしました(プシュン!)

2025-05-26

anond:20250526144321

どんなサービスコミッターだろうと見てみたらHello Worldをissueしてて草生えた 高校生以下のIT仕草だな

2025-05-19

おい、お前ら。最近ネットの片隅とか、なんかこう…オタクっぽい界隈で妙な文字列見かけないか? そう、「GQuuuuuuX」だよ。

最初は何かのエラーコードか、新手のパスワード生成かと思ったんだよ。だって「Q」のあとに「u」が6個だぜ? キーボードの上で猫でも寝たのかと。タイプミスにしては妙に見かけるし、ちょっと気になって夜も8時間しか眠れない。

で、俺なりに考察してみたわけ。

説1:新手の飯テロ

「G」は「グルメ」、「Q」は「級」、「u」の数はうまさの段階、「X」は「未知の味」…みたいな?

まり「GQuuuuuuX」は「超絶うまい未知のグルメ」的な? 

…いや、さすがに無理があるか。でもちょっとお腹空いてきた。

説2:某巨大ロボットアニメの新作説

これは割とありそうなラインじゃないか

「G」はもちろん「ガンダム」。じゃあ「QuuuuuuX」は?

…なんか必殺技っぽくない?「クゥゥゥゥゥゥエックスバスター!」みたいな。

「Q」が「クアンタム」で「u」エネルギー充填、んで「X」で発射!みたいな。

…うん、これも違う気がしてきた。中二病が爆発しすぎだろ俺。

説3:実はアレのアナグラム

「GQuuuuuuX」を並び替えたら何か意味のある言葉になるんじゃないか

…と思って色々試してみたけど、俺の語彙力じゃ「QGUXUUUUU」とかにしかならなかった。誰か得意なやつ頼む。

説4:新種のプログラミング言語

「u」の数でループ回数とか指定するんじゃね? 

GQuuuuuuX { print("Hello World") } みたいな。

いや、読みにくすぎるだろ。却下

…とまあ、色々考えてみたけど、結局よくわからん

お前らはこの「GQuuuuuuX」が何だと思う?

有力な情報求む。マジで

(追記)

って書いてたら、検索したら普通に情報出てきたわ…。

なんか新しいガンダムタイトルらしい。

読み方は「ジークアクス」。スタジオカラーサンライズの共同制作で、監督鶴巻和哉氏、脚本庵野秀明氏と榎戸洋司氏が名を連ねているようだ。2025年の最新アニメで、テレビシリーズ4月8日から日テレ系で放送されているらしい。プラモデルも出るみたいだな。

なんだよ、俺の考察時間を返せよ…。

まあ、でもちょっとスッキリした。

そして、ちょっとその「ジークアクス」とやらが気になってきたじゃねえか…。

まさか、これが奴らの狙いか…? まんまと術中にはまってしまったということか…?

ちなみに、キャラクター元ネタ乃木坂46メンバーじゃないかって考察もあるらしいぞ。奥が深いな、ガンダム…。

2025-05-01

anond:20250501162457

その三作が好きなら

パプリカ

HELLO WORLD』(ハローワールド

とかどう?

あと、現在放送中のテレビアニメ「LAZARUS ラザロ」 は意外と楽しめるかもしれない。

2025-04-09

anond:20250409235535

railsすら知らん馬鹿はお前だけだよ。

もういい、お前のような馬鹿はもううんざりなんだわ。とりあえずコード書けよ。な?今のお前はhello worldすら書けない脳無しなのは間違いない話なんだが。

2025-04-08

M県S市関係アニメ漫画

東北なのに意外と多いよね

ちなみに京都舞台作品

東京以外だったら京都が多いのかな

しかし(映像化作品では?)どれも標準語である

2024-12-08

現代邦画時間ギミックを使いがち

ファーストキス 1ST KISS」という映画2025年2月7日に公開予定だが、タイムトラベル過去へ戻るらしいので、またかという感想だった。

時間をいじるのは病気による死別のように定番なのか。

タイトル公開日内容
君の名は。2016年8月26日違う時間の人と交流する
ぼくは明日、昨日のきみとデートする2016年12月17日時間を逆行する人がいる
HELLO WORLD2019年9月20日違う時間に移動する
夏へのトンネルさよならの出口2022年9月9日時間の進みが違う場所がある
僕が愛したすべての君へ/君を愛したひとりの僕へ2022年10月7日同じ時間パラレルワールドがあり、過去への移動もある
すずめの戸締まり2022年11月11日違う時間自分交流する
かがみの孤城2022年12月23日違う時間の人と交流する
あの花が咲く丘で、君とまた出会えたら。2023年12月8日違う時間に移動する
ファーストキス 1ST KISS2025年2月7日違う時間に移動する


おまけ

タイトル公開日内容備考
映画 妖怪ウォッチ 誕生の秘密だニャン!2014年12月20日違う時間に移動する妖怪は何でもアリなので時間を移動する妖怪もいるだろう
TENET テネット2020年8月26日時間を逆行する人がいる洋画
僕のヒーローアカデミア THE MOVIE ユアネクスト2024年8月2日狭い範囲時間を遅らせる異能バトルなので時間を操る異能(個性)もあるだろう

2024-11-14

なんでもかんでもhello worldと表示させるプログラムで入門させようとするのやめろ

こっちはウェブアプリクローラー等)をどうすれば自鯖以外で常時稼働させられるか知りたいのに、hello worldと表示できました、じゃその方法で一度実行したら継続して稼働するのか分からないじゃん。

google app engineやxserverでのjavaの実行の記事が軒並みそういう内容だから途方に暮れてる

2024-09-28

昔Cの入門書で#include <stdio.h>をおまじないだと思ってくださいとか書いてる入門書がよく叩かれてた。

ちゃん説明しろとか。

でもhello worldの段階でいきなり、stdio.hにはマクロプロトタイプ宣言があって、マクロとはーとか、プロトタイプ宣言がなぜ必要かと言うと分割コンパイルというのがあって、みたいな説明をすんのかって思ってた。

2024-07-28

だったらまずPython名称変更しろ

5人組アイドルUNICODE」登場 デビューシングルは「HELLO WORLD」 IT関心層「検索しにくそう」

https://b.hatena.ne.jp/entry/s/www.itmedia.co.jp/news/articles/2407/23/news151.html

IT関心層のせいでニシキヘビが検索できなくなってるんだが

2024-04-28

anond:20240428224347

オライリーは8,9,10って感じじゃないか

俺のエスパーがあってればだけど

初心者向けの環境の構築とかHello Worldとか If forとかはあるけどそっから実際に何か作るところが薄くて、飛んでオライリーリーダブルコードだのDDDだのっていうことなのかと

2024-04-14

本日趣味プログラミング

phpは飽きたので、他でやることを探しみる。

そうだ。増田スクレイピングしよう。怒られない範囲で。

でもどこから手を付けてよいのかさっぱりわからんpythonが向いてるのか?そんな気がする。

入門記事を参考に進めてみる。

Python入門]Hello Python:一番簡単プログラムを作ってみよう

https://atmarkit.itmedia.co.jp/ait/articles/1904/05/news021.html

全く触ったことがないので、Hello Wolrdまでが遠い。

と、思ったらなぜかパソコンPythonの実行環境が整っていた。前に挫折した残骸だ。

とりあえずJupyter Notebook上でHello Worldが動いたので、今日は満足である

2024-04-01

理解時間をかける」がわからない

話題になっている、世界一エンジニア思考法という本を読んだ。

その中に「理解時間をかける」というのがあったのだが、それがどうしても受け入れられない。

これがどのような考え方かというのは、ここに書いてあるので良かったら読んでみてほしい。

https://note.com/simplearchitect/n/n388201603a28

凄く引っかかるのが、

「今までは、実際にコードに触れないとわからないよね?と思っていたけど、そうではなくて、ドキュメントを読んでいて理解できない箇所がでてきたら、時間をかけて理解して進むようにした。」

というところ。

例えばだけどif文についてのドキュメントを1回読んで、

なんとなくこう動くんだろうなということが分かったとしたら、あとは動かしてみたほうが早くない?とか思ってしまう。

それとも、なぜC#のif文は{}で括っているのか、[]ではだめなのか?C#の成り立ちから調べよう!ということを頭の良い人たちはしているのだろうか?

ドキュメントがわからないときどこまで深追いをしていくのが「理解」なのかがわからない。

そして私みたいに頭が悪いと、一度深淵に潜り込んでしまうと二度と浮かび上がってこれないかもしれないという恐怖がある。

Visual Studioコードを書いているが、そういえばVisual Studioのことを「理解」していないな。と思ったら最後

Hello Worldを出したいだけなのに永遠にVisual Studio領域から出ることが出来なくなってしまうのではないかと思ってしまう。

一流のエンジニアはやはりそこまで理解しているのだろうか、

この本を読んで参考になった!理解時間をかけることを恐れずにしよう!と言ってる人たちはどこまで時間をかけることを想定しているのか?

何なら死ぬまで理解時間をかけてやろうというぐらい覚悟ガンギマリの人たちなのだろうか。

ほかの部分については言っていることがとてもわかるだけに、

この考えだけ全くわからない思想なのがすごく怖い。

2024-01-31

本日趣味プログラミング

第2回 Larabelチュートリアルを参考にログインするだけのWebアプリケーション(?)を作る

第1回で終わらなかったことを褒めて欲しい。

プロジェクト作成

composer create-project laravel/laravel example-app_20240131

index.phpアクセスできることを確認

続いて、Composerを使用してLaravel Breezeインストール

composer require laravel/breeze --dev

breeze:install Artisanコマンドを実行

php artisan breeze:install

いろいろ聞かれる。わからん。とりあえずBlade/Yes/PHPUnitを選択

すると「・・・・installed successfully.」と表示されたので何かが成功したっぽい。

続いて

php artisan migrate

するとエラー

Illuminate92;Database92;QueryException
SQLSTATE[HY000] [2002] Connection refused 

そもそもデータベースの準備を何もしてなかったので、エラーが出るのは当たり前だった。

サンプル用にデータベース作成し、それに合わせて.envファイル修正する。

再度、

php artisan migrate

すると「DONE」と表示。成功したっぽい

チュートリアルに従い、「ウェブブラウザアプリケーションの/loginか/register URLアクセス」。

すると、Laravelが出してるっぽいエラー

Illuminate 92; Foundation 92; ViteManifestNotFoundException
PHP 8.1.27
10.43.0
Vite manifest not found at: /******/example-app_20240131/public/build/manifest.json
Run npm run dev in your terminal and refresh the page.

npmとやらが「not found」だったので手順を飛ばしたのがやはりダメだった。

さくらインターネットでnpmを使うにはnode.jsインストールしてnpmをコンパイルする必要がある?

はい、もう無理。飽きたので今日はここまで。

次回があれば「さくらインターネットスタンダードプラン環境にnpmをインストールする」である

早くHello Worldとか書きたい。

2023-09-19

anond:20230919060729

その前に先ずは Hello World! にたどり着けるかどうかが先決かと....

ログイン ユーザー登録
ようこそ ゲスト さん