<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>AI</title>
	<atom:link href="https://javeo.jp/category/ai/feed/" rel="self" type="application/rss+xml" />
	<link>https://javeo.jp</link>
	<description>ほどほどレベルのプログラミング</description>
	<lastBuildDate>Sun, 29 Mar 2026 15:11:00 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://javeo.jp/wp-content/uploads/2025/08/cropped-ExcelPython_future-32x32.jpg</url>
	<title>AI</title>
	<link>https://javeo.jp</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>汎用AIと一緒に競馬予想AI作ってnote投稿まで自動化する #2-スクレイピング</title>
		<link>https://javeo.jp/keiba-ai-challenge-02/</link>
					<comments>https://javeo.jp/keiba-ai-challenge-02/#respond</comments>
		
		<dc:creator><![CDATA[ジャベ雄]]></dc:creator>
		<pubDate>Sun, 29 Mar 2026 10:21:36 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[netkeiba]]></category>
		<category><![CDATA[note]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[スクレイピング]]></category>
		<category><![CDATA[競馬]]></category>
		<category><![CDATA[自動化]]></category>
		<guid isPermaLink="false">https://javeo.jp/?p=3908</guid>

					<description><![CDATA[目次 まずはデータがないと分析できないJRA-VAN データラボからのデータ取得netkeibaからのスクレイピングちょっとした注意点スクレイピングについて取得したデータはデータベースへ保存データは小分けに取得並列処理は [&#8230;]]]></description>
										<content:encoded><![CDATA[<div class="codoc-evacuations" style="display:none;" data-shortcode=""></div>
<div class="wp-block-cocoon-blocks-info-box block-box info-box">
<p>2026年初頭AIの進歩が凄まじく、AIを使った何かをやってみたいと競馬予想AIを作ってみましたのでその取り組みをまとめてみました</p>



<p>ついでにその過程で作ったスクレイピングとnoteへの自動投稿も一緒にまとめますので興味のある方は覗いてみてください</p>



<p>今回は第二回でデータ収集についてまとめています</p>
</div>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">まずはデータがないと分析できない</a><ol><li><a href="#toc2" tabindex="0">JRA-VAN データラボからのデータ取得</a></li><li><a href="#toc3" tabindex="0">netkeibaからのスクレイピング</a><ol><li><a href="#toc4" tabindex="0">ちょっとした注意点</a></li></ol></li></ol></li><li><a href="#toc5" tabindex="0">スクレイピングについて</a><ol><li><a href="#toc6" tabindex="0">取得したデータはデータベースへ保存</a></li><li><a href="#toc7" tabindex="0">データは小分けに取得</a></li><li><a href="#toc8" tabindex="0">並列処理はしない</a></li></ol></li><li><a href="#toc9" tabindex="0">次回について</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">まずはデータがないと分析できない</span></h2>



<p>AI含め、分析するならデータを手元に持たないと話にならないので過去データの収集から始めます</p>



<p>選択肢としては有料でもいいから正攻法ならJRA-VAN データラボからのデータ取得、無料だけど節度を持ってゆっくりデータを取得するならnetkeibaからのスクレイピングの2つを検討しました</p>



<h3 class="wp-block-heading"><span id="toc2">JRA-VAN データラボからのデータ取得</span></h3>



<p>JRA公式データを使うならデータラボ1択</p>



<p><strong>2,090</strong>円/月（初月無料）で利用できてJRA関連会社が運営する公式ツールです</p>




<a rel="noopener noreferrer" target="_blank" href="https://jra-van.jp/dlb/feature.html" title="JRA-VAN" class="blogcard-wrap external-blogcard-wrap a-wrap cf"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img fetchpriority="high" decoding="async" src="https://s.wordpress.com/mshots/v1/https%3A%2F%2Fjra-van.jp%2Fdlb%2Ffeature.html?w=320&#038;h=198" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="320" height="198" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">JRA-VAN</div><div class="blogcard-snippet external-blogcard-snippet">プロも愛用の競馬ソフトから意外な穴場的中ソフトまで、データ競...</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://jra-van.jp/dlb/feature.html" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">jra-van.jp</div></div></div></div></a>



<p>調査も含めて契約してみたのですが、基本はJV-Linkを組み込んだ独自アプリ開発キットのような印象でした</p>



<p>問題は対象言語サポートが2026年3月現在残念でVB系しか対象になっておらず、ちょっと厳しい印象なのは否めません</p>



<p>ネットを見ているとサポート関係なく他の言語で作成している人もいるみたいですが、コミュニティが使えないなど有料の強みがなくなってしまうので今回は諦め</p>



<div class="wp-block-cocoon-blocks-tab-caption-box-1 tab-caption-box block-box not-nested-style cocoon-block-tab-caption-box"><div class="tab-caption-box-label block-box-label box-label fab-lightbulb"><span class="tab-caption-box-label-text block-box-label-text box-label-text">サポート対象言語</span></div><div class="tab-caption-box-content block-box-content box-content">
<ul class="wp-block-list">
<li>Microsoft Visual Basic 2015</li>



<li>Microsoft Visual C++ 2015</li>



<li>Borland Delphi 7</li>



<li>Microsoft Access 2013/2016</li>



<li>Microsoft Excel 2013/2016</li>
</ul>




<a rel="noopener noreferrer" target="_blank" href="https://support.jra-van.jp/jravan/detail?site=SVKNEGBV&#038;category=16&#038;id=209" title="FAQ&#35443;&#32048; -&#12469;&#12509;&#12540;&#12488;&#12375;&#12390;&#12356;&#12427;&#38283;&#30330;&#29872;&#22659;&#12395;&#12399;&#12393;&#12398;&#12424;&#12358;&#12394;&#12418;&#12398;&#12364;&#12354;&#12426;&#12414;&#12377;&#12363;&#65311; | JRA-VAN&#12504;&#12523;&#12503;&#12475;&#12531;&#12479;&#12540;" class="blogcard-wrap external-blogcard-wrap a-wrap cf"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img decoding="async" src="https://s.wordpress.com/mshots/v1/https%3A%2F%2Fsupport.jra-van.jp%2Fjravan%2Fdetail%3Fsite%3DSVKNEGBV%26category%3D16%26id%3D209?w=320&#038;h=198" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="320" height="198" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">FAQ&#35443;&#32048; -&#12469;&#12509;&#12540;&#12488;&#12375;&#12390;&#12356;&#12427;&#38283;&#30330;&#29872;&#22659;&#12395;&#12399;&#12393;&#12398;&#12424;&#12358;&#12394;&#12418;&#12398;&#12364;&#12354;&#12426;&#12414;&#12377;&#12363;&#65311; | JRA-VAN&#12504;&#12523;&#12503;&#12475;&#12531;&#12479;&#12540;</div><div class="blogcard-snippet external-blogcard-snippet">【JRA公式データ】JRA-VANは競馬予想に役立つ情報を提...</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://support.jra-van.jp/jravan/detail?site=SVKNEGBV&#038;category=16&#038;id=209" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">support.jra-van.jp</div></div></div></div></a>
</div></div>



<p>ちなみに・・有志が作ったアプリも使えるらしく、不動の1位な<strong><span class="bold-red">TARGET</span></strong>や税金問題で界隈を賑わせた卍氏が使っていたといわれる<span class="bold-blue"><span class="bold-red">馬王Z</span></span>も追加料金なしで使えるようなのでゼロベースからの分析とかじゃないなら十分有力な選択肢になりそうです</p>



<div class="wp-block-cocoon-blocks-tab-caption-box-1 tab-caption-box block-box has-border-color not-nested-style cocoon-block-tab-caption-box" style="--cocoon-custom-border-color:#de2568"><div class="tab-caption-box-label block-box-label box-label fab-amazon"><span class="tab-caption-box-label-text block-box-label-text box-label-text">卍氏の書籍紹介</span></div><div class="tab-caption-box-content block-box-content box-content">
<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">

<a rel="noopener noreferrer" target="_blank" href="https://amzn.to/4sy3Kd8" title="1&#20740;5000&#19975;&#20870;&#31292;&#12356;&#12384;&#39340;&#21048;&#35009;&#21028;&#30007;&#12364;&#26126;&#12363;&#12377; &#31478;&#39340;&#12398;&#21213;&#12385;&#26041; (&#31478;&#39340;&#29579;&#39340;&#21048;&#25915;&#30053;&#26412;&#12471;&#12522;&#12540;&#12474;) | &#21325; |&#26412; | &#36890;&#36009; | Amazon" class="blogcard-wrap external-blogcard-wrap a-wrap cf"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img decoding="async" src="https://s.wordpress.com/mshots/v1/https%3A%2F%2Famzn.to%2F4sy3Kd8?w=320&#038;h=198" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="320" height="198" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">1&#20740;5000&#19975;&#20870;&#31292;&#12356;&#12384;&#39340;&#21048;&#35009;&#21028;&#30007;&#12364;&#26126;&#12363;&#12377; &#31478;&#39340;&#12398;&#21213;&#12385;&#26041; (&#31478;&#39340;&#29579;&#39340;&#21048;&#25915;&#30053;&#26412;&#12471;&#12522;&#12540;&#12474;) | &#21325; |&#26412; | &#36890;&#36009; | Amazon</div><div class="blogcard-snippet external-blogcard-snippet">Amazonで卍の1億5000万円稼いだ馬券裁判男が明かす ...</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://amzn.to/4sy3Kd8" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">amzn.to</div></div></div></div></a>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="border-top-left-radius:1px;border-top-right-radius:1px;border-bottom-left-radius:1px;border-bottom-right-radius:1px;padding-right:3px;padding-left:3px;flex-basis:66.66%">
<p>2007-2009年の3年間で、1億円以上の価値を得た卍氏の書籍はコチラ</p>



<p>「馬券の勝ち方」を論理的かつ丁寧に解説されてます！</p>
</div>
</div>
</div></div>



<h3 class="wp-block-heading"><span id="toc3">netkeibaからのスクレイピング</span></h3>



<p>結論から言うと今回採用したのはこちら</p>



<p>スクレイピングとはインターネット上の情報をプログラムで収集する手法で、サーバーに負荷をかけてしまうなどあまり推奨される手法ではありませんが、netkeibaは禁止していないようなのと情報として十分すぎる量があり、長く使うなら正直無料はありがたいです</p>



<p>参考までにnetkeibaがスクレイピングを禁止していないと判断した材料はこちら</p>



<ul class="wp-block-list has-watery-yellow-background-color has-background is-style-icon-list-check has-list-style">
<li>robots.txtがない
<ul class="wp-block-list">
<li>禁止している場合はここに記載されていることが多いです</li>
</ul>
</li>



<li>利用規約で禁止していない
<ul class="wp-block-list">
<li>厳密には<a rel="noreferrer noopener nofollow" target="_blank" href="https://support.keiba.netkeiba.com/hc/ja/articles/39720493823129">制限をかける場合があると記載</a>されていますが、過剰アクセスの場合と判断しました</li>
</ul>
</li>
</ul>



<h4 class="wp-block-heading"><span id="toc4">ちょっとした注意点</span></h4>



<p>公式データではないからなのか、netkeibaのデータで注意点として極稀に謎のデータが存在します</p>



<p>例えば2014/2/10の東京3Rの結果ページなんですが、明らかに単勝オッズがおかしくなっています</p>




<a rel="noopener noreferrer" target="_blank" href="https://race.netkeiba.com/race/result.html?race_id=201405010303" title="３歳新馬 結果・払戻 | 2014年2月10日 東京3R レース情報(JRA) - netkeiba" class="blogcard-wrap external-blogcard-wrap a-wrap cf"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img decoding="async" src="https://javeo.jp/wp-content/uploads/cocoon-resources/blog-card-cache/9e827d934d345fd5865c02aedd117131.png" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="320" height="198" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">３歳新馬 結果・払戻 | 2014年2月10日 東京3R レース情報(JRA) - netkeiba</div><div class="blogcard-snippet external-blogcard-snippet">2014年2月10日 東京3R ３歳新馬の結果・払戻です。J...</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://race.netkeiba.com/race/result.html?race_id=201405010303" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">race.netkeiba.com</div></div></div></div></a>



<p>出馬表データの単勝オッズは正しいのでカバーはできますし、発生頻度は激低なのでご愛敬で</p>



<h2 class="wp-block-heading"><span id="toc5">スクレイピングについて</span></h2>



<p>具体的なコードは別で紹介しようと思いますが、ここでは方針的なことだけまとめます</p>



<p>※近いうちに<a rel="noreferrer noopener" target="_blank" href="https://note.com/javeo2022" data-type="link" data-id="https://note.com/javeo2022">note</a>でまとめるつもりなので完了したらこの記事でもお知らせします</p>



<h3 class="wp-block-heading"><span id="toc6">取得したデータはデータベースへ保存</span></h3>



<p>ネットを見ているとプログラムを実行する度にスクレイピングするような記事を見かけますが、再利用やちょっとした加工の可能性も考えるとデータベースに保管することを推奨です</p>



<p>参考までに私はこのブログサイトのために<a rel="nofollow noopener noreferrer" target="_blank" href="https://px.a8.net/svt/ejp?a8mat=2ZTU22+94NC8Y+CO4+609HU">エックスサーバー</a><img decoding="async" border="0" width="1" height="1" src="https://www19.a8.net/0.gif?a8mat=2ZTU22+94NC8Y+CO4+609HU" alt="">を契約しているので、専用のデータベースを作成して取得した2008年以降のレース結果を保存しています</p>



<h3 class="wp-block-heading"><span id="toc7">データは小分けに取得</span></h3>



<p>データベースを使う利点の一つとも言える、取得情報をもとに次の情報を取得が個人的推奨方法</p>



<p>スクレイピングに置いて通信問題などで収集途中で原因不明かつ対策不可能なエラーが発生することは比較的多く、全てにエラーハンドリングを仕込むことはあまり現実的ではないので順番に収集します</p>



<ul class="wp-block-list is-style-blank-box-orange has-border">
<li>まずはリスト取得
<ol class="wp-block-list">
<li>開催スケジュール取得</li>



<li>開催レース取得</li>
</ol>
</li>



<li>次にデータベースと照合しながら未取得情報を収集
<ol class="wp-block-list">
<li>レース詳細取得</li>



<li>騎手マスタ取得</li>



<li>調教師マスタ取得</li>



<li>馬主マスタ取得</li>



<li>競走馬マスタ取得</li>
</ol>
</li>



<li>最後に競走馬マスタを再起処理して血統情報収集</li>
</ul>



<p>SQLの作り方次第ではありますが、これでエラーが発生しても途中再開が簡単にできるようになります</p>



<h3 class="wp-block-heading"><span id="toc8">並列処理はしない</span></h3>



<p>前述の通り利用規約では</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>スクレイピングによって多数のリクエスト（アクセス）を確認し、弊社サービスに対して支障があると判断した場合は、予告なく通信制限をかけさせていただくことがございます。</p>
</blockquote>



<p>と記載されていますので逐次処理で適切に待機時間を入れながら実行することで&#8221;<span class="marker-under"><strong>多数のリクエスト</strong></span>&#8220;を回避することで許容してもらいます</p>



<p>早く情報を収集したい気持ちで並列処理をするとアクセスブロックをされて結果余計に時間がかかる、最悪取得できなくなる可能性もあるので節度を持った処理をしましょう</p>



<h2 class="wp-block-heading"><span id="toc9">次回について</span></h2>



<p>なかなか満足できるAIができないので次回はnoteへの自動投稿をまとめる予定です</p>
]]></content:encoded>
					
					<wfw:commentRss>https://javeo.jp/keiba-ai-challenge-02/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>汎用AIと一緒に競馬予想AI作ってnote投稿まで自動化する #1-はじめに</title>
		<link>https://javeo.jp/keiba-ai-challenge-01/</link>
					<comments>https://javeo.jp/keiba-ai-challenge-01/#respond</comments>
		
		<dc:creator><![CDATA[ジャベ雄]]></dc:creator>
		<pubDate>Tue, 17 Mar 2026 15:27:25 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[netkeiba]]></category>
		<category><![CDATA[note]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[スクレイピング]]></category>
		<category><![CDATA[競馬]]></category>
		<category><![CDATA[自動化]]></category>
		<guid isPermaLink="false">https://javeo.jp/?p=3838</guid>

					<description><![CDATA[目次 とにかくAIを使って何か作りたい！相棒となるAIは「Claude」を採用予想するだけじゃない！完全自動化のワークフローを構築このシリーズの全体構成（今後の予定）今時点の状況 とにかくAIを使って何か作りたい！ 最近 [&#8230;]]]></description>
										<content:encoded><![CDATA[<div class="codoc-evacuations" style="display:none;" data-shortcode=""></div>
<div class="wp-block-cocoon-blocks-info-box block-box info-box">
<p>2026年初頭AIの進歩が凄まじく、AIを使った何かをやってみたいと競馬予想AIを作ってみましたのでその取り組みをまとめてみました</p>



<p>ついでにその過程で作ったスクレイピングとnoteへの自動投稿も一緒にまとめますので興味のある方は覗いてみてください</p>
</div>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4" checked><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">とにかくAIを使って何か作りたい！</a></li><li><a href="#toc2" tabindex="0">相棒となるAIは「Claude」を採用</a></li><li><a href="#toc3" tabindex="0">予想するだけじゃない！完全自動化のワークフローを構築</a></li><li><a href="#toc4" tabindex="0">このシリーズの全体構成（今後の予定）</a></li><li><a href="#toc5" tabindex="0">今時点の状況</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">とにかくAIを使って何か作りたい！</span></h2>



<p>最近AI使えば何でもできるがどんどん現実味を帯びてきている中、皆さんどうやってAIと付き合っていますか？</p>



<p>SNSを見るとパッと見本物と区別のつかない動画や画像の生成、ブログやnoteの作成・投稿などの自動化、希望だけ伝えると勝手にプログラムを作ってくれるバイブコーディングなどなど</p>



<p>ネット上ではまさに日進月歩のAIなんですが、私の職場では情報漏洩の危険などからなかなかAIに触れる機会がなくこのままでは世間に置いて行かれるかもと思い、まずは触ってみようが今回のスタートです</p>



<p>タイトルの通り本命は<span class="marker-under"><span class="bold-red">競馬予想AI</span></span>なんですが、せっかくなので機械学習に必要なデータを取得するための<span class="bold"><span class="marker-under">スクレイピング</span></span>とマネタイズ用に<strong><span class="marker-under">note自動投稿</span></strong>へのチャレンジもまとめていきます</p>



<h2 class="wp-block-heading"><span id="toc2">相棒となるAIは「Claude」を採用</span></h2>



<p>今回一緒に開発を進めるAIパートナーとして選ばれたのは「<span class="bold-red"><span class="marker-under">Claude（クロード）</span></span>」でした</p>



<p>当初「Google AI Studio」を使っていたのですが、ちょうどClaudeがOpus4.6が凄い！と話題になった時期で、職場で唯一使えるCopilotでもClaudeが使えるとかMicrosoft365との連携もできるとかなんだとか今後もお付き合いする機会ができそうだったのでたまたま使い始めた時期でした</p>



<p>汎用AIの優劣はネットでも様々議論されていますが、今の情勢と一カ月後の情勢はきっと違うので好みで使えばいいと思います</p>



<p>参考までに「Google AI Studio」は無料枠で今でも使っていて、「Claude」はOpus使いたかったのでProプランの課金ユーザーです</p>



<h2 class="wp-block-heading"><span id="toc3">予想するだけじゃない！完全自動化のワークフローを構築</span></h2>



<p>始める前に結末はなんとなく想像していて、効果が出ても「回収率300%！！」とかは到底無理で現実的には110％前後で大成功なんじゃないかと思って始めています</p>



<p>その分他の分野にも手を出して成功体験にしようとしているしているのかスクレイピングとnote自動投稿ってわけです</p>



<p>最悪競馬AIの精度が満足いくところまでいかなくても毎週全自動で</p>



<p class="has-text-align-center has-watery-yellow-background-color has-background is-style-border-double has-border"><strong>スクレイピング　→　競馬AIで予想　→　予想結果をnoteに投稿</strong></p>



<p>のワークフローだけでも財産になるし、何かに流用できると思ってます</p>



<h2 class="wp-block-heading"><span id="toc4">このシリーズの全体構成（今後の予定）</span></h2>



<p>このシリーズでは数回に分けて需要ありそうな部分にフォーカスして記事作成を予定しています</p>



<p>今時点では4回に分けて下記順番で作るつもり</p>



<ol class="wp-block-list has-watery-blue-background-color has-background">
<li>過去データの収集
<ol class="wp-block-list">
<li>netkeibaからのスクレイピング</li>



<li>JRA-VAN Data Lab.からの収集　←これは断念</li>
</ol>
</li>



<li>AIを使った競馬AIの作成</li>



<li>AIを使った予想</li>



<li>予想のアウトプットでnote記事の自動作成と販売</li>
</ol>



<p>作っていきながらボリューミーなったら2回に分けるとか追加機能ができたら分けるとかあるかもしれないので構成変更はご了承を</p>



<h2 class="wp-block-heading"><span id="toc5">今時点の状況</span></h2>



<p>今時点ではAI未完成でスクレイピングは完成とnote投稿8割くらいです</p>



<p>スクレイピングは何段階かあるのと過去レース取得と毎週の自動取得が別物なので分けるかもって感じです</p>



<p>あまり間延びしないように作っていくので追いかけてもらえると嬉しいです！</p>
]]></content:encoded>
					
					<wfw:commentRss>https://javeo.jp/keiba-ai-challenge-01/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【AI】バイブコーディングでWindowsアプリを作ってみました</title>
		<link>https://javeo.jp/vibecoding-challenge/</link>
					<comments>https://javeo.jp/vibecoding-challenge/#respond</comments>
		
		<dc:creator><![CDATA[ジャベ雄]]></dc:creator>
		<pubDate>Wed, 03 Dec 2025 23:00:00 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Google AI Studio]]></category>
		<category><![CDATA[バイブコーディング]]></category>
		<guid isPermaLink="false">https://javeo.jp/?p=3772</guid>

					<description><![CDATA[目次 まず結論私のスキルセット今回利用したAI最終的なソリューション構成まずは環境準備AIとの対話最初の問いかけ～コーディング開始までコーディング開始コーディング中盤～完了まで最後に落とし穴完成後の延長線で最大の問題発生 [&#8230;]]]></description>
										<content:encoded><![CDATA[<div class="codoc-evacuations" style="display:none;" data-shortcode=""></div>
<div class="wp-block-cocoon-blocks-info-box block-box primary-box">
<p>AIエージェント元年と呼ばれる2025年に私もバイブコーディングに挑戦してみました！</p>



<p>せっかくなのでどうでもいいアプリを作るのではなくてちゃんと利用価値がありそう（個人的に）なアプリを作りましたので2025年末時点のバイブコーディングに対する評価などをまとめていきます</p>
</div>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">まず結論</a></li><li><a href="#toc2" tabindex="0">私のスキルセット</a></li><li><a href="#toc3" tabindex="0">今回利用したAI</a></li><li><a href="#toc4" tabindex="0">最終的なソリューション構成</a></li><li><a href="#toc5" tabindex="0">まずは環境準備</a></li><li><a href="#toc6" tabindex="0">AIとの対話</a><ol><li><a href="#toc7" tabindex="0">最初の問いかけ～コーディング開始まで</a></li><li><a href="#toc8" tabindex="0">コーディング開始</a></li></ol></li><li><a href="#toc9" tabindex="0">コーディング中盤～完了まで</a></li><li><a href="#toc10" tabindex="0">最後に落とし穴</a></li><li><a href="#toc11" tabindex="0">完成後の延長線で最大の問題発生</a></li><li><a href="#toc12" tabindex="0">あとがき</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">まず結論</span></h2>



<p>今回のチャレンジでアプリを作成することは出来ました</p>



<p>が、AI使えば誰でもアプリを作れるは多分幻想（少なくとも2025年末時点）なので、作れたけど一定のリテラシーが必要だよってことが伝わればいいなと思う記事になっています</p>



<p>完成したアプリは下記からダウンロードできます</p>





<a rel="noopener follow noreferrer" target="_blank" href="https://javeo.jp/app/taskchatcher" title="taskchatcher" class="blogcard-wrap external-blogcard-wrap a-wrap cf"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img decoding="async" src="https://javeo.jp/wp-content/uploads/cocoon-resources/blog-card-cache/ddd7706d7d003f304c79175e3c35b481.png" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="320" height="198" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">taskchatcher</div><div class="blogcard-snippet external-blogcard-snippet">タスク登録（＋管理）ができる自作アプリ：TaskChatch...</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://javeo.jp/app/taskchatcher" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">javeo.jp</div></div></div></div></a>




<h2 class="wp-block-heading"><span id="toc2">私のスキルセット</span></h2>



<p>完全な素人ではありませんが、かと言ってこれだけでご飯を食べていくような専任職ではありません</p>



<p>イメージとして総合職の中ではIT詳しい人、ぐらいの立ち位置だと思っています（もうちょっと上かも）</p>



<p>具体的な経験やできることは<a rel="noreferrer noopener follow" target="_blank" href="https://javeo.jp/profile/">プロフィール画面</a>にも書いているので目安にしてみてください</p>



<p>続いて肝心の<span class="bold-red"><span class="marker-under">AIについての練度は初級編レベル</span></span>・・</p>



<p>主には職場でCopilotさんに壁打ちで相談、他は優秀な検索エンジンぐらいな感覚で調べ物に利用するぐらいで、AIに興味はあるんだけどなかなかきっかけに出会わず年末まで来てしまいました</p>



<p>Geminiも触ったことはあるけど職場はCopilot、プライベートはGeminiで何となく分けてるだけであまり深い意味はなく、職場は無償AI利用がNGなので有償版Copilot使ってるだけって感じです</p>



<p>最後に今回<span class="bold-red"><span class="marker-under">利用した言語はC#ですが</span></span><span class="bold-red"><span class="marker-under">私は</span></span><span class="bold-red"><span class="marker-under">一度も触ったことがありません</span></span></p>



<p>バイブコーディングでは基本コピペだけで済むので個別の知識なくても何とかなりますがさすがにプログラミング自体を未経験ではさすがに厳しいかなってところです</p>



<h2 class="wp-block-heading"><span id="toc3">今回利用したAI</span></h2>



<p>スマホがGoogle Pixelな圧倒的Google信者の私なので今回は&#8221;<span class="bold-red"><span class="marker-under"><strong>Google AI Studio</strong>の無償版</span></span>&#8220;を利用しました</p>



<p>ちょうどGemini3.0が発表されてメチャメチャ賢くなったそうで試してみたいなと思っていたのでちょうどいいかなと</p>



<p>ただ2.5までほとんど触っていないので比較はできないですが単純に3.0の有能さを伝えられたらいいなと</p>



<p>あとはトークンの限界が来たらちょくちょくCopilotさんにも助けてもらいました</p>



<h2 class="wp-block-heading"><span id="toc4">最終的なソリューション構成</span></h2>



<p>本当にC#初挑戦なのでこの構成を見て良し悪しや難易度の判断が全くつかないんですがとりあえずすぐできるものじゃない気がしませんか？</p>



<p>後述するAIの素晴らしさを伝える要素の一つになるのでなんとなく覚えておいてください</p>



<figure class="wp-block-image size-full"><a rel="follow noopener noreferrer" target="_blank" href="https://javeo.jp/wp-content/uploads/2025/12/2025-12-04_00h42_26.png"><img decoding="async" width="547" height="911" src="https://javeo.jp/wp-content/uploads/2025/12/2025-12-04_00h42_26.png" alt="" class="wp-image-3801" srcset="https://javeo.jp/wp-content/uploads/2025/12/2025-12-04_00h42_26.png 547w, https://javeo.jp/wp-content/uploads/2025/12/2025-12-04_00h42_26-180x300.png 180w, https://javeo.jp/wp-content/uploads/2025/12/2025-12-04_00h42_26-90x150.png 90w" sizes="(max-width: 547px) 100vw, 547px" /></a></figure>



<h2 class="wp-block-heading"><span id="toc5">まずは環境準備</span></h2>



<p>みんな大好きVisual Studio CodeではなくてVisual Studioです</p>



<p>私は今回初めて利用しますがWindowsアプリを作成するなら言語はC#、Visual Studioを利用するのが推奨とAIさんが言うので無心でインストールしてきました</p>



<p>タイミングがいいのか悪いのか、チャレンジから数週間前の2025年11月11日にVisual Studio 2026がリリースされてさらに同日に.NET 10もリリースされたようです</p>




<a rel="noopener noreferrer" target="_blank" href="https://visualstudio.microsoft.com/ja" title="Visual Studio: ソフトウェア開発向けの IDE およびコード エディター" class="blogcard-wrap external-blogcard-wrap a-wrap cf"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img decoding="async" src="https://javeo.jp/wp-content/uploads/cocoon-resources/blog-card-cache/f95bf745b3170980a501ada546c6653f.jpg" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="320" height="198" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">Visual Studio: ソフトウェア開発向けの IDE およびコード エディター</div><div class="blogcard-snippet external-blogcard-snippet">Visual Studio 開発ツールとサービスによって、開...</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://visualstudio.microsoft.com/ja" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">visualstudio.microsoft.com</div></div></div></div></a>



<p>Visual Studioは過去のCommunity版を探すのが大変だったので諦めて2026を使いましたが.NETはリリース直後の10が少し怖かったのと後述しますがAIが8を奨めてきたのでLTS版の8を使うことにしました</p>



<h2 class="wp-block-heading"><span id="toc6">AIとの対話</span></h2>



<p>全ての会話を貼りだすにはあまりにも長すぎるので最初のやり取り＋サマリーを</p>



<h3 class="wp-block-heading"><span id="toc7">最初の問いかけ～コーディング開始まで</span></h3>



<p>なんとなく想像したアプリを雑にぶん投げてみました</p>



<div class="hcb_wrap"><pre class="prism undefined-numbers lang-plain"><code>windowsのデスクトップアプリを作りたいから協力してほしい
今回作成したいのはタスク管理アプリでコンテキストメニューに追加もしくはホットキーで呼び出しして範囲選択している文字をタイトルに引用タスクを登録したい
アプリが呼び出されると日付のFROM、TO、担当者、重要度（10段階）を登録できるようにするイメージ
OutlookやGoogleカレンダー連携できると最高だけど2時開発でいいかな
とりあえずここまでで検討してみて</code></pre></div>



<p>に対してAIの回答がこちら</p>



<div class="wp-block-cocoon-blocks-toggle-box-1 toggle-wrap toggle-box block-box not-nested-style cocoon-block-toggle"><input id="toggle-checkbox-202512271825460" class="toggle-checkbox" type="checkbox"/><label class="toggle-button" for="toggle-checkbox-202512271825460">AIの回答（長文です）</label><div class="toggle-content">
<div class="hcb_wrap"><pre class="prism undefined-numbers lang-markdown" data-lang="Markdown"><code>素晴らしいアイデアですね！「作業中に気になったことを、思考を中断せずにサッとタスク化する」というのは、生産性向上において非常に強力なツールになります。

Windowsアプリ開発において、ご要望の機能（特に「他アプリで選択中の文字を取得する」部分）を実現するための最適な構成と、開発のロードマップを提案します。

### 1. 技術選定と設計方針

Windowsネイティブの機能（クリップボード操作、グローバルホットキー、レジストリ操作）に深く関わるため、以下の技術スタックを推奨します。

*   **言語:** **C# (.NET 8)**
*   **フレームワーク:** **WPF (Windows Presentation Foundation)**
    *   WinFormsよりもUIのカスタマイズ（モダンな見た目）がしやすく、データバインディングが強力なため。
*   **データベース:** **SQLite**
    *   ローカルファイルで完結し、後でOutlook/Google連携する際やサーバー同期する際にも移行しやすいため。

### 2. 技術的な実現方法（ここがキモです）

ご要望の「選択範囲の文字を引用」には、Windows特有のテクニックが必要です。

#### A. 呼び出し方法：ホットキー vs コンテキストメニュー
*   **推奨：グローバルホットキー (例: `Ctrl + Alt + T`)**
    *   **理由:** 開発難易度が低く、動作が安定します。
    *   どのアプリ（ブラウザ、Word、Slackなど）を開いていても、キーを押すだけで呼び出せます。
*   **コンテキストメニュー（右クリック）の課題:**
    *   Windowsの仕様上、エクスプローラー（ファイル操作）の右クリックメニューへの追加は簡単ですが、「ブラウザ上のテキスト」や「エディタ内のテキスト」の右クリックメニューに独自の項目を追加するのは、アプリごとに仕様が異なるため極めて困難です。
    *   **結論:** 今回は**「ホットキー」をメイン**にし、コンテキストメニューは「テキスト」ではなく「ファイル」をタスク化したい場合（オプション）として検討するのが現実的です。

#### B. 選択文字の取得ロジック
他のアプリから直接テキストを読み取るAPIはセキュリティ上制限されています。一般的なハック方法は以下の通りです。

1.  ユーザーがホットキーを押す。
2.  アプリが裏で**「Ctrl + C」キー入力をシミュレーション**する。
3.  クリップボードに格納されたテキストをアプリが読み取る。
4.  タスク登録画面の「タイトル」欄にペーストする。

### 3. アプリ画面・機能設計 (Phase 1)

UIはポップアップウィンドウのようなシンプルなものを想定します。

*   **タイトル:** テキストボックス（選択テキストが自動入力される。編集可能）
*   **期間:**
    *   **FROM:** DatePicker（デフォルトは今日）
    *   **TO:** DatePicker（デフォルトは今日 or 翌日）
*   **担当者:** コンボボックス（事前登録リストから選択） or テキスト入力
*   **重要度:** スライダー（1〜10） または コンボボックス
*   **ボタン:** 「登録」「キャンセル」

### 4. 開発ステップ（ロードマップ）

一緒に開発を進めるにあたり、以下の順序で作っていくのが良いでしょう。

**Step 1: 土台作り**
*   WPFプロジェクトの作成。
*   グローバルホットキーを検知して、ウィンドウを最前面に表示する機能の実装。

**Step 2: テキスト取得の実装**
*   ホットキー押下時に `SendKeys.Send(&quot;^c&quot;)` 等でコピーし、クリップボードからテキストを取得する処理の実装。

**Step 3: UIの実装**
*   日付、担当者、重要度の入力フォーム作成。

**Step 4: 保存処理 (SQLite)**
*   入力されたデータをローカルのSQLiteデータベースに保存する。
*   （簡易的な）タスク一覧画面の作成。

---

### まずはどうしますか？

まずは **「Step 1 & 2：ホットキーを押したら、選択中の文字をメッセージボックスに表示する」** というプロトタイプ（試作機）を作ってみるのが一番手っ取り早いと思います。

開発環境（Visual Studio Communityなど）はインストールされていますか？
もしよろしければ、**C# + WPFでの具体的なサンプルコード**を作成して提示することも可能です。いかがでしょうか？</code></pre></div>
</div></div>



<p>これだけの質問にかなりしっかりと回答してくれていることがわかります（よね？）</p>



<p>この後コーディングを始めるまでにしたやり取りのサマリがこんな感じ</p>



<figure class="wp-block-table"><div class="scrollable-table"><table><thead><tr><th>質問</th><th>回答</th></tr></thead><tbody><tr><td>右クリックの中に起動メニューを足したい</td><td>C#じゃなくてC++で作る必要がある</td></tr><tr><td>C#とC++のメリデメ教えてほしい</td><td>6項目の比較項目の結果C#を推奨</td></tr><tr><td>Visual Studioのインストールを教えて</td><td>インストールの仕方とインストール後の対応方法提示（プロジェクトの作成）</td></tr><tr><td>.NET 8.0 と.NET 10.0のおススメ教えて</td><td>世界中で最も広く使われている<span class="bold-red">最新の安定版</span>.NET 8を推奨</td></tr></tbody></table></div></figure>



<p>AIの情報には少しラグがある（無償版は3カ月くらい？）そうなのでAIの中ではまだ.NET 8.0が最新版のようです</p>



<p>毎回質問に答えるだけじゃなく、背景を教えてくれたりと副操縦士から先生に格上げされた印象を受けました</p>



<h3 class="wp-block-heading"><span id="toc8">コーディング開始</span></h3>



<p>世の中でエンジニアはいらなくなるを体感した瞬間がやってきました</p>



<p>AIさんが数秒で作ったコードがコチラ</p>



<div class="wp-block-cocoon-blocks-toggle-box-1 toggle-wrap toggle-box block-box not-nested-style cocoon-block-toggle"><input id="toggle-checkbox-202512271825461" class="toggle-checkbox" type="checkbox"/><label class="toggle-button" for="toggle-checkbox-202512271825461">提示されたコード（長いです）</label><div class="toggle-content">
<div class="hcb_wrap"><pre class="prism undefined-numbers lang-csharp" data-file="MainWindow.xaml.cs" data-lang="C#"><code>using System.Windows;
using System.Windows.Input;
using NHotkey;
using NHotkey.Wpf;
using System.Threading.Tasks;

namespace TaskCatcher // ← ★ここがエラーになったら、元のプロジェクト名に合わせてください
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            
            // ホットキーの登録 (Ctrl + Alt + T)
            // &quot;RegisterHotKey&quot; という名前で識別します
            try
            {
                HotkeyManager.Current.AddOrReplace(&quot;RegisterHotKey&quot;, Key.T, ModifierKeys.Control | ModifierKeys.Alt, OnHotkeyPressed);
            }
            catch
            {
                MessageBox.Show(&quot;ホットキーの登録に失敗しました。他のアプリで使われている可能性があります。&quot;);
            }
        }

        // ホットキーが押されたときに実行される処理
        private async void OnHotkeyPressed(object sender, HotkeyEventArgs e)
        {
            // ホットキーの処理済みフラグを立てる（お作法）
            e.Handled = true;

            // 1. クリップボードをクリア（前のデータが残っていると誤作動するため）
            Clipboard.Clear();

            // 2. Ctrl + C を送信して、選択中のテキストをコピーさせる
            // ※ System.Windows.Forms.SendKeys を使うのが一般的ですが
            // WPF標準ではないため、ここでは簡易的なSendKeysシミュレーションを使います
            await SimulateCopyCommand();

            // 3. 少し待つ（コピー処理が完了するのを待つため）
            await Task.Delay(100);

            // 4. クリップボードからテキストを取得
            if (Clipboard.ContainsText())
            {
                string selectedText = Clipboard.GetText();

                // アプリを最前面に表示
                this.Show();
                this.WindowState = WindowState.Normal;
                this.Activate();
                this.Topmost = true;  // 一瞬最前面にする
                this.Topmost = false; // 解除

                // 今は確認用としてメッセージボックスを表示
                // 最終的にはここで入力画面のテキストボックスに入れます
                MessageBox.Show($&quot;取得したテキスト:\n\n{selectedText}&quot;);
            }
            else
            {
                // テキストが取れなかった場合（何も選択していない場合など）
                // アプリだけ起動する
                this.Show();
                this.Activate();
            }
        }

        // キー入力シミュレーション
        private async Task SimulateCopyCommand()
        {
            // キー送信の実装は少し複雑なので、まずは
            // .NET標準の SendKeys クラスを使うために
            // 参照設定が必要ですが、一旦簡略化のためクリップボード取得確認を優先します。
            
            // ★重要：
            // 本格的にキー送信するには &quot;System.Windows.Forms&quot; の参照追加が必要ですが
            // WPFプロジェクトではデフォルトで入っていません。
            // 
            // 動作テストのために、今回は手動で「Ctrl+C」をしてから
            // ホットキーを押す運用でテストしてみましょう。
            
            // ※次のステップで自動化を実装します！
            await Task.CompletedTask; 
        }
    }
}</code></pre></div>
</div></div>



<p>ちゃんとコメントも残されていているし他にも部品となるコードが必要だったらその案内をしてくれるとか本当に至れり尽くせりな感じで始まりました</p>



<p>他にも必要なパッケージがあると導入メニューの案内や具体的なパッケージ名の指定もしてくれて、ほとんど迷うことなく進められました</p>



<p>言われた通り途中途中でデバックかけてみるとうまく動作しないこともありましたが事象を伝えることは当然ながら、エラーコードをそのまま貼り付けるだけでも原因を考えてくれてトライ＆エラーを数回繰り返せば改善できるものばかり</p>



<p>特筆すべきはVisual Studioの使い方まで教えてくれるし、クラスを跨いだ問題でもちゃんと理解（記憶）して的確な箇所を提示してくれました</p>



<h2 class="wp-block-heading"><span id="toc9">コーディング中盤～完了まで</span></h2>



<p>ここからはかなり省略しますが、アジャイル開発のようにパーツを一つ作っては実装、追加機能を思いついて相談しては機能追加を繰り返して2～3日で完成形の9割は完了しました（完成形はアプリのver0.1.0を見てください）</p>



<p>機能の後付けは「どのクラスのどの位置」まで指定（前後のコードが記載されていて○○と○○の間にこのコードを追加、など）してくれたり、改造し過ぎて動かなくなったときは&#8221;<strong><span class="marker-under">完全版になるように見直して</span></strong>&#8220;のコメントとともに今のコードを全貼りすることで最新の整理されたコードを返してくれる親切対応</p>



<p>例えば会社で</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>教わった通りにやったらエラーになったんですけど、どこ直していいかわからないんで一から全部作り直してもらっていいですか？</p>
</blockquote>



<p>なんて上司・先輩に言えますか？</p>



<p>しかも原因が当該ファイルにあるとは限らず別のところにあることもあり、プロジェクト全体を見て対応してくれるか神対応でした</p>



<h2 class="wp-block-heading"><span id="toc10">最後に落とし穴</span></h2>



<p>デバックではほぼ想定通りの動きになっていたのでアプリ化をAIに持ち掛けたところ案内された方法ではアプリが生成されない状況に</p>



<p>何度聞いてもうまくいかず、状況を伝えても3パターンの改善提案をグルグル回るだけで何も改善しない状況</p>



<p>たまにexe化できてもいざ使ってみるとすぐにアプリが落ちてしまう謎状況が続く中わたしがとった行動は・・・</p>



<p class="has-text-align-center has-indigo-color has-text-color has-link-color has-large-font-size is-style-stripe-box has-box-style wp-elements-372119e7e32709a2dc4ccb4c7ba4f6e9"><span class="bold">Google先生に聞いてみよう</span></p>



<p>ネット上にするコミュニティを始め、先人たちの知恵はまだまだ偉大でAIに負けない情報がそこにはありました</p>



<p>正攻法な情報はAIでも十分なんですが、何か起こった際のニッチな情報はまだAIじゃ拾いきれないような印象を受けました</p>



<p>結局成功にいたるまでに対応した内容はこちら</p>



<ul class="wp-block-list has-watery-yellow-background-color has-background">
<li>COMの参照をやめてNuGetパッケージに切り替えた</li>



<li>NuGetパッケージへの切替とともに一部コードを修正した</li>



<li>Visual Studioの&#8221;発行&#8221;メニューは使わずPowerShellコマンドでexe化した</li>
</ul>



<p>AIから提案された内容にもこれらはあったのですが、全てを複合することで改善したのでAIの1度の提案ボリュームが抑えられていたところが仇となったのかも</p>



<p>最後のコマンド実行の部分はAIよりもVisual Studioが画面上成功になってるから原因追求できなかったことの方が大きいかも</p>



<h2 class="wp-block-heading"><span id="toc11">完成後の延長線で最大の問題発生</span></h2>



<p>一度完成したと思っても微調整したくなるのが作り手の性じゃないでしょうか</p>



<p>追加機能の相談なんてこれまで何度もしてきてので気にせずどんどん相談していたらついに・・・</p>



<p class="has-text-align-center has-red-color has-watery-blue-background-color has-text-color has-background has-link-color wp-elements-8966e687338591579c40795ee8e9ddff">You&#8217;ve reached your rate limit. Please try again later.</p>



<p>はい、使い過ぎです</p>



<p>どちらかと言うと数日に渡って作成していたとは言え、よくここまで利用させてもらえてものだと思うくらいAIさんとキャッチボールを続けていました</p>



<p>まぁまぁ、これだけなら時間をおけばいいかと一度ブラウザを落として時間を空けて再度起動すると・・・</p>



<p class="has-text-align-center is-style-square-brackets-box has-box-style"><span class="bold-red">あれ？チャットの履歴が途中で途切れてる</span></p>



<p>あまり気にせず&#8221;まぁいい&#8221;かぐらいのテンションで再度使い始めますが、しばらくして事の重大さに気付きます</p>



<p>どうもAIとの会話が嚙み合わないと思ったら直前に修正したことを覚えていない様子の会話が続いて、よくよく考えたらこの途切れてしまった先で修正した部分をすっかり忘れていらっしゃる様子</p>



<p>これじゃデグレ起こしてしまうと思い、AIとの共同作業はここで終了となりました</p>



<p>これからのアップデートでもAIは活用しますが、プロジェクト全てを把握しているチャットは無くなったので今後は部分的なお手伝いをしてもらいつつ、C#を自己学習することになりそうです</p>



<h2 class="wp-block-heading"><span id="toc12">あとがき</span></h2>



<p>最後の最後でAIが記憶喪失になるハプニングが起きましたが、奇跡的にも機能としては一通り完成した後だったので事なきを得ました</p>



<p>未経験のC#を使ったアプリ開発を個人的には満足するところまで引き上げてくれたAIの力は十分過ぎると思う取り組みになってよかったです</p>



<p>一方で、&#8221;AIを使えば誰でもアプリが作れる&#8221;は確かに簡単で責任が伴わないものなら作れる印象を受けつつ、実用的なものはやはり経験がないと何をすべきか判断できないことと、有事の際に対応が取れない危うさを感じました（特に最後）</p>



<p>加えてAIに頼りすぎると地力が付かない危険性も感じました</p>



<p>何事もほどほどなんですかね</p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://javeo.jp/vibecoding-challenge/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
