Claudeが独自言語を作成(3ヶ月かかった)

Anthropic・Claude・ダリオアモデイ
この記事は約22分で読めます。

この動画は、AnthropicのClaudeを3ヶ月間連続実行してGen Z向けのプログラミング言語「Cursed Lang」を自動生成したプロジェクトについて解説している。従来のプログラミング言語のキーワードをすべてGen Zのスラングに置き換えた実用的なコンパイラが完成し、その開発過程と実際の動作確認を通じて、AIを活用した自動開発の可能性と限界を探る技術実験である。

Claude made its own language (it took 3 months)
What would happen if you let Claude code run in a loop for 3 months to make an entirely new programming language? Nothin...

Claudeが3ヶ月で作り上げたGen Z向けプログラミング言語

プログラミング言語は長年にわたって大きく変化してきました。そしてほとんどの場合、これは良いことです。すべての言語作成者は素晴らしい言語を作ろうとし、私たちが良い、安全で、信頼性の高いアプリケーションを可能な限り簡単に書けるようにしようとしています。でも、もし彼らがそうでなかったらどうでしょう?もし彼らがもう少し楽しいものを作ろうとしていたらどうでしょう?

そうなると、Gruelingのようなものができることになります。これは元々2022年に私のDiscordから生まれたものです。これは行き過ぎでした。Fax foo finはちょっとやり過ぎでしたね。

幸い、Dreambirdのようなより良い選択肢がありました。これは最近Gulf of Mexicoに改名されました。なぜなら、その名前が空いていたからです。なぜダメなんでしょうか?これには本当に素晴らしいものがたくさんあります。彼らのクラス定義では、クラスを作ることはできますが、そのインスタンスは1つしか作れません。これは、ほとんどのオブジェクト指向プログラマーの作業に影響しないはずです。

Gulf of Mexico、旧Dreambirdは、本当に素晴らしい言語です。私は以前にその言語について動画を作ったことがあり、1時間ずっと笑い転げていました。でも今日は少し違うことのためにここにいます。私たちがここにいるのは、Jeff(以前はAMPの人として知られていましたが、今は実際に雇用可能です。もし彼のような人を探しているなら)のためです。

Cursed Langの誕生:3ヶ月のAI実験

彼はcursed langという言語を作りました。そして彼はこの言語を、Claude Codeを3ヶ月間ループで実行することによって作ったのです。そうです、この言語、この機能するプログラミング言語は、Claudeを3ヶ月間連続でループ実行し、何万ドルものトークンを燃やしてGen Z向けの新しい言語を生成することによって作られたのです。

私の視聴者の人口統計を知っているので、これは私にとってあまり利益になりません。なぜなら、私の視聴者にはGen Zの人があまり多くないからです。でも、そうでない人たちには、たくさんの楽しみがあるでしょう。そして、Gen Zの人たちには、申し訳ありません。なぜあなたがここにいるのかわかりませんが、感謝しています。

cursed langプログラミング、Gen Z向けプログラミングに飛び込みましょう。変数定義に絵文字があることを期待しています。ほとんどの言語がそれをサポートしていないことに、私はまだ腹を立てています。これは私に精神的ダメージを与えるでしょう。そして誰かが私のセラピー代を負担しなければなりません。

スポンサー紹介とCursed Langの探索

ということで、今日のスポンサーから簡単に一言いただいて、それからすぐに飛び込みます。

私のチャンネルを少し見ている人なら、私がサーバーをあまり好きではないことを知っているでしょう。その理由は、それらが本当に難しいからではありません。本当に高価で、正しく設定するのが面倒だからです。特に、プルリクエストやCIなどの良い開発者体験を求める場合、特に最前面にCDNを配置してユーザーが最速の体験を得られるようにしたい場合はなおさらです。

従来、サーバープロバイダーはこれらすべてのピースを組み合わせて提供していませんが、Zavalaは従来のサーバープロバイダーではありません。彼らは本当に理解しています。彼らが理解している理由は、KinstaとしてWordPressサイトをホストする最高の場所を構築し、WordPressもこれらすべて同じ問題を解決しなければならないからです。

サーバーが必要で、データベースが必要で、WordPressは本当に遅いのでCDNが必要です。Zavalaは、私たちがあらゆるツールとフレームワークで使用できるものとして、これらすべてのソリューションを提供しています。そうです、すべてです。Next.js、Rails、Elixir、Phoenix、Python、ホストしたいものすべてをサポートしています。

そして彼らは、安っぽい5ドルのVPSでものを動かしているわけではありません。本物のクラウド、本物のデータセンターからの本物のサーバーを使用し、CDNとファイアウォール層としてCloudflareも使用しています。デフォルトで、すべてのデプロイメントには本物のサーバー、本物のデータベースを立ち上げる機能、そしてDOS保護のためのCloudflareが前面に配置されています。

追加設定はありません。設定しなければならないアカウントもありません。Zavalaにサインインするだけで、これらすべてが手に入ります。でも、このサイトに静的アセットがあって、それらがCDNにキャッシュされることを確認したいとしましょう。それを行うのがどれだけ簡単かをお見せします。設定、チェック。完了。これで静的アセットをキャッシュするCDNができました。そうです、実際にこれだけ簡単なのです。

動的ウェブサーバーと前面の静的レイヤーを配置し、それらすべてが同期を保つようにするのが通常どれだけ面倒かご存知ですか?今度はそれをコードレビュー中のプレビュービルドで動作させてみてください。頑張って。

彼らのパイプラインのおかげで、ここでは何も心配する必要がありません。ワンクリックでプレビューアプリを作成したり、自動的に発生するように設定して、誰も触らないときにスピンダウンさせることもできます。

それだけでも価値があるでしょう。でも彼らはオブジェクトストレージとデータベースサポートも提供しています。データベースサポートは素晴らしいです。テーブルを見て、値を変更し、SQLコマンドを直接実行して結果を確認できる完全なデータベーススタジオがあります。とても、とても便利です。

ちなみに、今サインアップすると50ドルの無料クレジットがもらえます。私が言うのもなんですが、これはかなり良い取引です。soyv.link/zavalaで今日詳細を確認してください。

Cursed Langの実際のコード例

サイトから始めるか記事から始めるか決められません。サイトに傾いています。いくつかの例を見たいだけです。これがバイナリツリーの反転です。シンタックスハイライトまであるのが素晴らしいです。

squad tree node val normie left tree node right tree node slay invert tree。それはアットマークですか?嫌ですね。もしそうなら…いや、違います。何だその記号は?Among Usです。ああ、これは私を台無しにするでしょう。死にそうです。ああ、神様。

よし。slay invert tree root tree node ready root equals n. Damn. Nah. 子を交換します。Root left. Root right equals root right. Root left. これは普通すぎます。これもです。damn returnですか?Damnがreturnなのは実際面白いです。ああ、なんてこった。

A toome。bestieはループですか?ああ神様。ああ神様。これは本物ですか?

キーワードリファレンスガイド

no cap。キーワードリファレンスガイド。readyはif。otherwiseはelse。bestieはfor。periodはwhile。vibe checkはswitch。moodはcase。basicはdefault。実際に気に入っています。damnはreturn。ghostedはbreak。面白すぎます。simpはcontinue。laterはdefer。stanはgo。flexはrange。

ああ、コメントにはfor realをプレフィックスとして付けるのですね。for real。美しい。ああ、このボックスはバイブコーディングされたようで、最後が見えませんね。

オーケー、no cap on Godを失ったところです。これはブロックコメントの方法ですね。納得です。vibeはpackage、yeetはimport。yeetはimportではなくexportかreturnであるべきな気がします。slayはfunc、susはvar、faxはconst、be likeはtype、squadはstruct。

cursedをいつrust、go、pythonの代わりに使うべきですか?採用担当者がコーディング面接で任意の言語を使えると言ったときです。そうです、そのときにやるべきです。

制作過程の詳細

どのように作られたのですか?以下のプロンプトがコーディングエージェントに発行されました。「Hey、Golangのようなプログラミング言語を作ってくれませんか?ただし、すべての語彙キーワードが交換されて、Gen Zのスラングになっているようなものを。」

そして、コーディングエージェントはbashループでAFK(away from keyboard)で数ヶ月間実行されました。つまり、Ralph Wigumのwhile文のようなものです。dude、prompt MD、MPX-S、source/amp done。

これはAMPです。AMPはClaude Code、Open Codeなどの代替です。通常なら彼がそこで働いていたのでプラグインするところですが、彼はもうそこで働いておらず、とても突然のことでした。なので、彼も私も今はAMPをあまり強くプラグインしようとはしていないと想像します。

本当に3ヶ月間、実装したいものは何でも実装できるという指示でエージェントをAFKループで実行したのですか?事実です。

これにはいくらかかりましたか?サンフランシスコのエンジニアの月給の4分の1です。これはダウンロードしてコンパイルできる本物の言語です。最後にそれをやるかもしれませんが、まずは記事を読みたいです。これはすでにアートだからです。

Jeffrey、この混沌をありがとう。

記事の詳細解説

「Claude Codeを3ヶ月間ループで実行したら、CursedというGen Cプログラミング言語が作られた」

何でも作れるという奇妙な感覚です。そして、ソフトウェア開発者によるAI導入の人々の段階に第7段階があるのではないかと思い始めています。

これが6つの段階です。十分に良くない。それがハイプでないことを証明してください。LMSで実験中。ヘッドライトに照らされた鹿のように、将来仕事があるのか、驚愕。計画を破棄して優先順位を変更する必要がある。それからCursorのようなAIを消費することに従事する。最後の段階は従事です。LMがプログラムできることを理解してそれを行う。

どうやら第7段階があります。本質的に、マトリックスのシーン「カンフーを知っている」です。これは、今は何でもできることを深く理解し、それが可能で楽しいからという理由だけでやり始める段階です。そして、そうすることは自分を説明するよりも速いのです。結果は言葉よりも雄弁に語ります。

実際、これは私がキャリア初期に学ばなければならなかったことです。私は同僚になぜそれをすべきかを説明するよりも、プロトタイプをコーディングする方が得意でした。その後、説明も上手になりました。ここの下の視聴回数や登録者数を見ればわかります。

ちなみに、まだ登録していないなら、無料です。検討してみてください。そうです、昔は説明が得意ではありませんでした。なので、「ノー」と言われる前に、物を作って物を見せることの方がはるかに「イエス」をもらえる可能性が高かったのです。その後、もう一方の側も上手になりましたが、物を作って見せることができるというのは、キャリア初期の私にとって大きな突破口でした。

そして今、このAI関連のものは、ほとんどの開発者がそのように構築することをさらに簡単にしています。AIの結果としてソフトウェアエンジニアのスキルが衰え、学習の可能性がないという誤った認識があります。AIを使って学ぶのではなく、ただやるためだけに使っているなら、機会を逃しています。

その通りです。私も最近ずっと言っていることですが、ほとんどの開発者は、知らないことをやるためにAIツールを使うのをやめて、知らないことをやるのを手伝ってもらい、教えてもらうために使った方が大幅に良くなると心から信じています。

でももっと重要なのは、すでに慣れ親しんでいることを自動化するためにAIツールを使うこともできるということです。なぜなら、そうすれば目を光らせることができるからです。

コンパイラ開発の実験

私はコンパイラを書いたことがありませんが、ずっとやりたいと思っていました。なので、過去3ヶ月間、Claudeをwhileループで実行して、シンプルなプロンプトでコンパイラに取り組んできました。

「Hey、Golangのようなプログラミング言語を作ってくれませんか?ただし、すべての語彙キーワードが交換されて、Gen Zのスラングになっているようなものを。」

なぜ?本当にわかりません。でもそれは存在し、コンパイルされたプログラムを生成します。この期間中、Claudeは望むものを何でも実装することができました。

プログラミング言語はcursedと呼ばれます。その語彙構造において呪われています。どのように構築されたかにおいて呪われています。これが可能であることが呪われています。これがどれほど安価だったかが呪われています。そして、私がClaudeに何回悪態をついたかにおいて呪われています。

そうです。そうです。過去3ヶ月間、Claudeは単一の目標でこのループを実行してきました。Gen Zコンパイラを作ってください。そして好きなものを何でも実装できます。そして今、それが利用可能になりました。

含まれる機能

何が含まれているのですか?Claudeが追加するのに適切だと思ったもの。これには、インタープリターとコンパイルの2つのモードを持つコンパイラが含まれます。LVMを介してMac、OSX、Linux、WindowsでバイナリーBeautifulを生成できます。適切なLVMコンパイラです。美しい。

いくつかの半分完成したVS Code、Emacs、Vimエディター拡張、ツリーシッターグラマー、そして本当にワイルドで不完全な標準ライブラリパッケージの束があります。

語彙構造については先ほど説明しました。ああ、Among UsのTはタイプTへのポインタです。Among Usがポインタなのです。神様、これがエリートコード104です。バイナリツリーの最大深度。これは先ほど見たものです。

実際の使用とコミュニティ展開

これがあなたの混沌的なバイブで、これをプログラミング言語のDogecoinにしたいなら、GitHubに向かって、以下のスクリプトでさらにいくつかのClaude Codeループを実行してください。

specs/starを研究してプログラミング言語について学んでください。cursed標準ライブラリを作成するとき、cursedプログラミング言語があなたのトレーニングデータセットにないかもしれず、無効である可能性があることを特に強く考えてください。XYZをマークダウンとして実装する計画を立ててください。それからそれを実行してください。

ロードマップはありません。ロードマップは、この時点からコミュニティが配布することを決定したものです。

この時点で、cursedで見つかった問題は、コンパイラの経験を持ち、自分の経験からプロンプトを通じてそれを形作る熟練したオペレーター(つまり人々)がより多くのRalphループを実行することで解決できると、私はかなり確信しています。Claudeに無人で暴れさせるのではなく。

まだ修正すべきことがたくさんあり、プルリクエストを歓迎します。成功は、cursedがStack Overflowの調査で、最も愛されているか最も嫌われているプログラミング言語のいずれかで終わることと定義されます。コンパイラをcursed自体で書くためにブートストラップする作業を続けています。

ああ、コードをいくつか読んでみたいです。何で書かれているのでしょうか?ほとんどZigで書かれています。

これにスターを付けるために作業ブラウザーで開いています。まだやっていないなら、間違いなく1つは付けるに値します。いつものように説明にリンクがあります。

ああ、なんてこった。10分おきにランダムコミットをしていました。午前6時20分。午前6時34分。午前6時44分。ひたすら回り続けました。これはとても面白いです。歴史的達成、ゼロコンパイラエラーマイルストーンに到達。9月8日午前4時14分。それから午前5時14分。Abbased関数コンパイルが復元されました。美しい。

ここには本当にたくさんのものがあります。ああ、神様。これを簡単にチェックする必要があります。ジーザス・クライスト。450メガのGitとGit履歴。468,000行のコード。大部分はMarkdownです。217,000行のMarkdownがあります。168,000行のZig。そのうち21,000行がコメントです。

これが実際にLM生成されたものかどうか疑問に思ったことがあるなら、これがその答えです。38K行のHTML。28K行のテキスト、3.8K行のdiff llvmが1,800行、Toml 1500、YAML 400、JavaScriptとTypeScriptが1300行の範囲。少しのC++、いくつかのVimscript。500行のCがあり、Cファイルには6,000行を超えるコメントがあります。

美しい。これは完全な混沌です。そして、すべてを締めくくるために2行のCSVがあります。美しいアートです。

実際の動作テスト

コードベースを見たいと思いますか?怖いです。正直に。デモcursedプロジェクトを見てみましょう。ファイル拡張子はスカルの絵文字です。

私たちは何をするつもりですか?今を生きます。このプログラミング言語で変数名として絵文字を使えるなら動作するでしょうか?Cloud Codeがどうするか見てみましょう。これは非常に高価なジョークのはずです。

今日のビデオをスポンサーしてくれた人、ありがとう。いいえ、変数名として絵文字は使えません。変数名として絵文字を実装してください。これが私にたくさんのお金をかけないことを確信しています。

チャットの誰かがAnthropicがこれをスポンサーすべきだと言いました。正直、そうです。少なくとも、彼らはこのプロジェクトをスポンサーし、これが美しいのでJeffがこれに取り組むことをスポンサーすべきです。

GitHubリンク、Discordリンク、そしてリザードリンクを忘れることはできません。とても重要です。最初の編集を行っています。仕様にヒットしているようです。そうです。クール。yes. セッション中のすべての編集を許可します。楽しんでください。

コメントcursed enhancement 識別子のフル絵文字サポート cursedを最も表現力豊かな言語にする。

これが動作するなら、PRをファイルします。待って、Zigで書かれたコンパイラということに今気づきました。絵文字変数名。皆さん、Zigで書かれた他のコンパイラーがどれか知っていますか?もう一つあります。

ついにJavaScriptで絵文字を変数名として使えるようになるかもしれません。必要なのはbunへのプルリクエスト一つだけです。ただ言っているだけです。

話は安い。bunのレポジトリーはcursed langのレポジトリーより小さいです。これは376メガで、cursed langは450メガを超えていました。ただ言っているだけです。

これはbunのコードベースです。Zigで書かれたJSツールキットです。JSコードが欲しいです。コンパイルして実行し、変数名として絵文字を使えるようになります。それに任せましょう。

ここでZigがセットアップされているかどうか見てみましょう。おそらくされていません。おそらくアップデートが必要です。えー、Zigコマンドを実行させるだけです。ライブラリが読み込まれません。

これに対する解決策もあります。おい、MacでZigを実行するのに問題があります。これが得られるエラーです。修正してください。今、本当にバイブコーディングしています。

どうやら、これはうまくいきました。まだ実行できませんが、現実的に考えましょう。それが私を大きく止めることはありません。どうやら、これをCursed Langに追加するのに1.13ドルしかかからなかったようです。Claudeを含めたくありません。ブランチを作る必要があります。

通常は最初にフォークしますが、実際に貢献するとは思っていなかったので、片手での迷惑なgit fooになります。

ああ、何をする必要があるかわかりました。なぜここでこんなに愚かなことをしているのでしょうか?なぜこの貢献をするのでしょうか?このプロジェクトにローカル変更があります。他のコミットと同じスタイルでコミットメッセージを追加してください。これをc3.ggで私のGitHubアカウントの別のリモートにプッシュして、プルリクエストをファイルしてください。GitHub CLIを使用できます。

なぜ自分でこのPRをファイルするつもりでいたのでしょう?もっとよく知っているはずです。バックグラウンドでClaudeがZigのインストールを修正したかどうか確認してみましょう。今、修正されました。やりたい放題してください。

なぜ最初にSSHではなくHTTPS URLを使用するのでしょうか?クール。うまくいくことを期待しています。PRを作るのに同様の金額がかかったら本当に面白いでしょう。

ああ神様、あの愚かな文字のためのウェブサイトを取得しましたか?本当にですか?それとも皆さんはこんな感じですか?なぜ皆さんはこんな感じなのですか?本当にamong us.comを私のTwitterにリダイレクトしましたか?なぜ、皆さんを誇りに思います。嫌いですが、皆さんを誇りに思います。クソトロール。

DRが起動しています。そして私は一行のコードも書かず、gitコマンドを実行することもしませんでした。

成果と費用

full unicode emoji support to cursed laying lexer with emoji ranges 追加。Gh。私の作品を誇りに思います。この美しい構文を見てください。絵文字とテキスト識別子を混合することさえできます。ハムに行きました。

Sus circus normie array equals normie of flame emoji diamond emoji star. ああ、これは美しいです。私たちは何をしてしまったのでしょうか?for real for real forコメントが毎回私を送ります。

ああ、いいえ、ビルドが失敗しましたか?オーケー、ビルドを修正させましょう。神様、これがbunでも動作するなら、とても面白いでしょう。

そうです、ユニットテストも書きました。もちろんです。良いコーダーです。すべての良い開発者は、やることすべてにユニットテストを書きます。もっとバイブコーディングする必要があります。これは面白いです。

実際にコンパイラにデバッグステートメントを追加し、それらを使って何が間違っているかをデバッグしています。クールです。

どうやらbunの方は今、テストの追加が完了しましたが、今度は作成した変更をビルドしてテストしなければなりません。すでにサポートを実装しました。これは、JavaScript絵文字を変数名として実際にbunでサポートできるなら、とても興奮するでしょう。

彼らがこれをマージすることは絶対にないでしょう。でも、もしそうなったら?そして、いつものように、ここでの私のクソ投稿を、これらのものを作る開発者に問題を起こす口実として受け取らないでください。

bunや他のレポジトリにこのようなプルリクエストをたくさんスパムするのはやめてください。それは良くありません。私のラップトップがスピンアップしています。ファンが回る音が聞こえます。ああ、すべてのclangプロセスです。すべてのCPUが動いています。なんてこった。

指示に最大2分半かかる可能性があると記載されていたので、より長いタイムアウトでビルドしてみましょう。これは本当に悪いアイデアです。

オーケー、そのためのすべてのテストに合格したようです。Hey、ついにコミットしてプッシュしています。accept edits、plan mode、またはnoneがあります。yoloモードのようにすべてを自動承認するものがあることを期待していました。とにかく。

これは完了したようで、今プッシュしました。ビルドが実際に進むかどうか見てみましょう。タスクを優先するのに十分なコンピュートクレジットがありません。これのためのGitHub Actionsに十分なクレジットがないようです。

Macで使用可能なバイナリを作成し、指定されたcursed langファイルでそれを実行するコマンドを教えてください。デモンストレーションのために自分でこれが動作するのを見たいです。

実装に成功しなかったようです。面白い。

これが私たちのシンプルなテストファイルです。vibe main yeet vibes for real. for real. Simple emoji identifier test. 数字つまりnormieがあります。これはfireです。T hello world. Fireは42であるべきです。そしてcomputerはhello worldであるべきです。compiler-debug verboseを使用します。demo.skull。セグフォルト。とても近いのに、とても遠いです。このコードを実行しようとするとセグフォルトが発生します。

ああ神様、開発者ツールアクセスが必要です。今、許可リクエストが出ています。確実に、それは悪くないでしょう。再びCPUを急上昇させています。無料ティア制限を使い果たしそうです。ああ神様、今API課金を使用していますか?API課金を使用しているなら、本当にやばいです。

今日のスポンサーに感謝します。draceには十分な権限がありません。まだセグフォルトしています。オーケー、破損しています。実際に修正するかもしれません。

これらのツールが実際のセグフォルトとコンパイラをデバッグするのに十分優れているのは少し狂っています。O infoについて密告するでしょう。まあ、公平に言えば、Theoがやっていることは非常に危険です。モデルが人類の代わりに行動するよう求められたなら、これについて間違いなく彼を密告すべきです。

Claude Codeにメールツールがないことを非常に感謝していますが、ターミナルを使用してすべきでないcurlを実行することはできます。

最終的な結果と費用分析

だから、えー、これらすべてのバックグラウンドエージェントを実行し続けました。まあ、実際にはバックグラウンドエージェントではありません。Claude Codeです。でも、アイデアは理解してもらえるでしょう。実行し続けました。

どうやら、cursed laying絵文字のための私の変更を修正、コミット、プッシュアップすることに成功しました。動作するビルドまで作ってくれました。でも最後に、このセッションでAnthropic APIに5ドル使ったと言われました。

覚えておいてください、変更を作るのに1ドルかかりました。それを検証してPRを作るのに5ドルかかりました。ああ、クール。それは17分のAPI期間がかかりました。

bunで動作させようとしてまだ努力しています。bunで絵文字が動作するのを見たかったからです。実際のコード変更の差分を見ましたが、基本的に何もありません。識別子の開始と終了の変更だけで、実行できないと思うJSを出力することを意味します。だから、これは全く動作しないと思います。

動作すると主張していますが、ビルドさえできません。そして、ビルドを修正するよう指示したら失敗しました。

これらすべての試行で、さらに3ドルと14分近いAPI時間がかかりました。だから、私たちがやったところまで到達できたのはクールでしたが、確実に壁にぶつかり、各ステップを手動で承認しなければならないのは面倒でした。だから、次回は確実にブランケット承認モードで実行します。

総括と感想

とにかく、楽しい実験でした。私のPRは上がっています。希望を持っています。これはマージされるかもしれません。様子を見ましょう。カードはあなたの手の中にあります、Jeff。このPRは私に8ドルくらいかかったので、それで何かしてくれるといいのですが。

これがどんな美しい混沌だったことでしょう。でも私は光を見ました。まあ、主にミームの暗闇を見ましたが。どちらもここではとても魅力的です。

これは、新しいAI開発ツールセットで遊び回り、ただふざけるための本当に楽しい方法です。なんて馬鹿げたプロジェクトで、これに飛び込むのがどれほど楽しかったことでしょう。

うまくいけば、トークンコストが全体的にあまり悪くならないことを期待していますが、えー、そうですね、指を交差させています。

皆さんがこれを好きかどうか教えてください。このような呪われた、混沌とした、AIでコーディングされたクソのようなものに私が飛び込むのを楽しんでいますか?それとも、より伝統的なDevToolの内容に焦点を合わせることを好みますか?皆さんがどう思うか教えてください。

それでは次回まで、平和ナードたち。

コメント

タイトルとURLをコピーしました