<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>日本語 on Mehmet Yilmaz</title>
    <link>https://mehmetmhy.com/langs/ja/</link>
    <description>Recent content in 日本語 on Mehmet Yilmaz</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sat, 18 Apr 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://mehmetmhy.com/langs/ja/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>力とは何か？</title>
      <link>https://mehmetmhy.com/langs/ja/power/</link>
      <pubDate>Sat, 18 Apr 2026 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/power/</guid>
      <description>マリアーノ・フォルトゥニー・イ・マルサルによる「雄牛と格闘する男」のスケッチ（1855年から1860年） 力とは何か？ それがここで私が答えたい問いだ。この投稿は、私の考えをさっと書き留めたものであり、これからの私の文章で新しく試してみたいことでもある。すべてを何らかの完璧さの域まで磨き上げるのではなく、そもそもそれが何を意味するにせよ、この文章は生のままにしておく。これは、力が本当は何であるかを定義しようとする私の率直な試みだ。&#xA;Merriam Webster による定義では、力には多くの意味がある。私の目に特に際立って見えるのは次のものだ。&#xA;行動する、または効果を生み出す能力 法的または公的な権限、能力、または権利 他者に対する支配、権威、または影響力 政治的な支配または影響力 この言葉自体は、英語では非常に重みを持っている。ニーチェの 権力への意志 を簡潔に要約すると、力とは、自らを主張し、拡大し、障害を乗り越え、自分自身の意志と価値を世界に押し付けようとする内的な衝動である。こうした解釈を超えて、宗教的、哲学的、政治的、その他さまざまな思潮において、力には無数の定義がある。&#xA;それを踏まえて、私もここに参加して、自分自身でこの問いに向き合いたい。力とは何か？ 私はニーチェの見方により強く傾いている。私は力を、自分の意志と価値を世界に押し付ける能力、そして意志として定義する。何らかの形で自分の痕跡を残すことだ。それは、自分が生きていたという証拠を求める探求と結びついている。私は カウボーイビバップ のジェットの言葉を思い出す。彼は、男たちは死の直前にしか過去を思い出さない、まるで自分の存在の証拠を必死に探しているかのようだと言う。私たちが人生、宇宙、その他すべてと呼ぶこの物質のスープの中で、自分のアイデンティティ、自分という存在を示すこと。&#xA;これは新しい考えではなく、人間に限った話でもない。地球の広大な生命の多様性におけるあらゆる生き物は、こうした何かのために戦ってきたし、今も戦い続けている。すなわち、自らの存在を定義し、生き延び、そして繁殖することだ。では、その先に何があるのか？ そこに宗教や哲学、あるいは別の何かが入ってくる。だが、いずれにせよ根本の考えは変わらない。生命のない宇宙、観測者のいない宇宙は、無である。少なくとも、何かとして認識されうるものではない。シュレーディンガーの猫 のように、猫の状態を観測する者がいなければ、猫は生きても死んでもいることになり、可能性の中に宙づりにされ、決して確定した状態には落ち着かない。この現実に生きる者こそが、その状態を検知し、決定する者なのだ。そして、すべての生き物がその状態に何らかの発言権を持ちたがるので、生命は何かを支配しようとする絶え間ない闘争となり、自分の意志を現実に押し付け、自分自身の状態をそこに刻み込もうとする。&#xA;必要な力の量は、あなたの野心と、どれほど遠くまで自分の意志を世界に押し進めたいかによって決まる。目標が国を築くことでも、家族を築くことでも、会社を築くことでも、結局は自分が動かせる資源に行き着く。お金は、その資源へアクセスするための単なる道具にすぎず、最も重要な資源は人だ。すべての人間は機械であり、現実を変えることのできる存在だ。大量に方向づけられれば、彼らは世界に対して複利的な効果を生み出す。だからこそ、お金はそれほど重要なのだ。それは究極の資源、すなわち人へアクセスするための、最も効率的な方法の一つなのだから。&#xA;しかし、お金だけでは十分ではない。&#xA;私はこれをよく思考実験として捉える。ある裕福な人物が指導者にこう言う。「あなたは自分が力を持っていると思っている、王だと思っている。だが、あなたの価値は、最も裕福な人々が持つもののほんの一部にすぎない。あなたは裕福だ。大多数よりもずっと。しかし、王にはほど遠い。」 指導者はただ笑ってこう言う。「確かに、純資産では彼らのほうが上だ。だが違いはここにある。たった一つの午後に、たった一つの署名で、私はその純資産を半分にできる。」&#xA;メッセージは単純だ。力を持つ人はたいていお金を持っているが、お金を持つ人が皆、本当の力を持っているわけではない。お金は、最も価値ある資源である人へのアクセスを与えてくれるが、絶対的な力を与えてくれるわけではない。それはパズルの重要な一部であって、中心ではない。&#xA;ここで、私の力に対する見方はより具体的になる。政治に入り込もうとし、自分の会社を立ち上げ、資本を集め、トルコ の送電網向けに太陽光発電所を立ち上げようとし、金融市場で取引する中で、私は核心となることを学んだ。お金、知性、才能、親切さ、冷酷さ、そして努力でさえ、それだけでは十分ではない。同じくらい重要なのは、人間関係と、他の強力な人々に対する自分のレバレッジだ。&#xA;そのレバレッジは、単なる取引関係であってはならず、ゲームの一部であるだけでもいけない。それは、彼らが持っていない情報かもしれない。あなたにしか提供できない、彼らが必要とする資源やアクセスかもしれない。あるいは、彼らの立場を崩壊させうる弱みかもしれない。どんな形であれ、それは彼らの自己利益にとって極めて重要であり、そのためにあなたが彼らを支配し、自分の目標のために利用できるものでなければならない。王たちを支配するなら、王の中の王となるなら、資源を支配し、その結果として人々を支配することになる。資源を直接めぐって戦う代わりに、すでにそれを握っている者たちに対する力を手にするのだ。頂点を目指すことで、それらの資源へより直接的にアクセスし、自分の意志をそれらに、彼らの人々に、そして十分に大きな規模では世界そのものにまで押し付けることができる。私にとって、それこそが力の本質だ。世界に自分の意志を押し付け、自分が望む方向へ導く能力なのだ。&#xA;力におけるもう一つの核心的要素は、資源や人間関係だけではなく、他者を प्रेर起する能力だ。これについて考えるとき、私は Mr Robot のフィリップ・プライスの言葉を思い出す。「アジェンダを強制することはできない……それを起こさせるには、 प्रेर起しなければならない。」&#xA;人間は資源として強力である一方で、自由意志も持っている。彼らは、安心、自由、意味、あるいはその三つの組み合わせへの内的な欲求を抱えている。自分の方針を彼らに押し付けるために、力ずくに頼ることはできない。はるかに効果的なのは、彼らを प्रेर起することだ。特に、すでに力を持っている人々を動かし、そこから彼らの追随者や資源を動かそうとするときには、それが真実となる。ここで、哲学、宗教、そしてより大きな意味体系が再び視野に入ってくる。自分の意志、自分のメッセージ、自分の目標、自分の目的を他者に伝え、何も持っていない人々に意味を与え、自分に従うよう彼らを प्रेर起できるなら、恐怖だけでは決して得られないほど強い支配を、この資源に対して持つことができる。&#xA;この目的や使命は、気まぐれな選択ではない。それは個人としてのあなたに直接結びついており、あなたの経験、教育、そして学ぶにつれて適応しようとする意志によって形づくられる。すべての人間が自由意志を持つ以上、あなたが世界に押し付ける意志は、実際には、あなたが生き延び、学んできたすべてのものの統合なのだ。あなたの目標は、自分自身の進化の最終産物である。これこそが、メッセージを力強いものにする理由だ。それは単なるアジェンダではなく、あなた自身の行動と知識を通して鍛え上げた、生きられた真実なのだ。&#xA;多くの人にとって、これらのどれも、実際的な意味では真実には感じられないだろう。ほとんどの人は、力や王たちのゲームなど気にしない。しかし、そのゲームをするかどうかにかかわらず、あなたはそれをする人々の影響を受け続ける。プレイしないという選択もできる。流れに身を任せて、平穏な人生を送ることもできる。しかし、あなたはなおその流れの中にいる。あなたは依然として、野心ある者たちが奪い合う資源の一つなのだ。ナポレオン のような人物が現れれば、その意志はあなたを取り巻く風景全体を作り変える。あなたの環境を引き裂いて通り抜ける嵐のように、あなたにできるのは身を固め、それが残す傷跡とともに生きることだけだ。&#xA;では、力とは何か？&#xA;それは、存在の全体において受動的な観察者でないでいられる能力だ。それは単なる富でも、数十億を支配することでもない。レバレッジの連鎖なのだ。あなたの野心が世界を支配することでも、単に自分の小さな領域を守ることでも、自分の意志を刻み込むのに十分な力が必要だ。それがなければ、あなたは、自分を形づくる者たちを待つしかない。</description>
    </item>
    <item>
      <title>3年間のトレーディング</title>
      <link>https://mehmetmhy.com/langs/ja/3yr_trading/</link>
      <pubDate>Sat, 11 Apr 2026 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/3yr_trading/</guid>
      <description>免責事項: これは金融アドバイスではありません。ご自身で十分な調査を行ってください！ ジョブ・アドリアーンスゾーン・ベルクハイデによるアムステルダム旧取引所（約1670年） これまでの歩み 2023年1月中旬から2026年4月まで、私は自分のトレーディング・ポートフォリオを積極的に運用してきました。それは、勝利、損失、そして深い内省が入り混じる波乱万丈の道のりでした。3年を経て、一歩引いて数字を見直し、今後の投資を導くことになる中核的な哲学を記録しておきたいと思いました。&#xA;詳細に入る前に、私が積極的に運用しているポートフォリオは、総市場エクスポージャーの約15%にすぎないことを明確にしておきたいと思います。残りは、プロによって運用されているか、あるいはより一般的には、私の401(k)、Roth IRA、そしてゴールドETFのようなより安全な資産に置かれています。この自己裁量の部分で私は実験し、学び、より集中した賭けを行っており、これから振り返る結果はそこから生まれたものです。&#xA;数字は重要です。良いストーリーは注目と確信を生みますが、そのストーリーにあなたの資本を託す価値があるかどうかを決めるのは厳然たる事実です。現在、私のアクティブ・トレーディング口座は、年率換算リターン（CAGR） 10.60% で複利成長しています。これらのリターンの大半は、Google、Palantir、Applied Optoelectronics（AAOI）、Tesla、EchoStar、ASMLでのいくつかの堅実な取引から生まれました。この数字は、この期間の平均が年間およそ3.4%だったインフレを上回っていますが、本当の物語は、私のパフォーマンスとより広い市場との間の差にあります。&#xA;スコアカードとベンチマーク 自分のパフォーマンスを本当に理解するためには、受動的なベンチマークであるS&amp;amp;P 500と比較する必要がありました。2023年1月から2026年4月までの間に、市場は**73.54%の累積リターンと18.48%のCAGRを記録しました。それに対して、私の38%の累積リターン（10.6%のCAGR）は、ベンチマークをほぼ年率8%**下回りました。&#xA;もし何もしないで単にインデックスファンドを保有していたなら、私の総リターンは、達成したもののほぼ2倍になっていたでしょう。資本以外にも、時間というコストがあります。私はあの数年間に、研究やトレードにフルタイム相当で何週間も費やしたにもかかわらず、最も単純な戦略、つまり買って保有する戦略にすら劣後しました。この8%の差は、単なる数字ではありません。私のプロセスが崩れた具体的な瞬間を直接反映したものです。&#xA;ミスの解剖 数々の成功があった一方で、私の致命的な失敗は、間違った資産を選んだことにあることはほとんどありませんでした。ほとんど常に、間違ったプロセスにあったのです。&#xA;1. パニックによる撤退（Bitcoin）:&#xA;私は2025年に、Bitcoinの大半を平均約10万ドルで買いました。当時、それはこのポートフォリオの15%を占めていましたが、しばらくすると、少しエクスポージャーが大きすぎるように感じ始めました。そこで私はリバランスのために少しずつ削り始め、2026年1月までには9%まで減らしていました。その後、2026年2月にBitcoinは激しいボラティリティに見舞われ、2025年10月の12.5万ドルという史上最高値のあと、価格は6万ドルを下回るまで下落しました。ストレスの瞬間に私はパニックになり、重荷を取り除くためだけに6.2万ドル近辺で売ってしまいました。最終的には買い戻しましたが、元のサイズの約30%にとどまり、このポートフォリオの2.7%にすぎませんでした。私は一時的な不快感に恒久的な資本判断を支配させ、売った部分について痛みを伴う実現損を確定させてしまったのです。&#xA;2. 期限の管理ミス（AAOI）:&#xA;最近、AAOIで良い利益を得ましたが、株価の動きが「不快」になったと感じた時点で、私はポジションを全て売却しました。株価は史上最高値にあり、これ以上上がるはずがないと確信していたので、私はこの高い確信を持った取引を1か月の短期売買のように扱い、株価が1株あたり約140ドルに達したときに保有株をすべて売りました。すると翌日には株価はさらに大きく上昇し続け、それが深い後悔を引き起こしました。私は明確なカテゴリーを決めずに買い、株価の動きに判断を委ね、「分割して手仕舞う」のではなく「全か無か」の退出を使ってしまったのです。それでも取引全体としては堅実な利益を得て立ち去りましたが、早売りしたことによる機会費用として、莫大な利益を取り逃がしました。&#xA;借り物の確信 この2つの失敗は、同じ根本原因を共有しています。私は借り物の確信で行動していたのです。&#xA;初期の頃、私はウォーレン・バフェットのような伝説に自分を重ね、質、バリュー、そして「絶対に損をしない」という「第1のルール」に集中していました。2025年10月には、私はマイケル・シカンドに注目し始めました。彼は、防衛、宇宙、AIインフラにおける非対称な賭けを見つけ出すことに非常に優れています。こうした影響を積み重ねた結果、私は最も重要な気づきにたどり着きました。他人のアイデアは借りられても、その人の確信やリスク許容度までは借りられない。&#xA;AAOIは、そのことを私に痛感させました。ある株が他人にとっては完璧な取引であっても、私の時間軸に合っていなければ、ボラティリティが来たときに私は必ずパニックになります。同じことは、私が自分の時間軸を明確に定義していない場合や、投資仮説を完全に自分のものにしていない場合にも起こります。&#xA;アイデンティティの再構築 その気づきによって、私は投資家としてのアイデンティティを再構築せざるを得ませんでした。今の私の哲学は、自分の能力、確信、世界観が交わるところで積極的に投資することを中心に据えています。私は、価格の動きを追いかけるトレーダーから、ユーティリティに賭けるアロケーターへと移りました。それは、目の前のボトルネックを解決しながら、未来のためのアーキテクチャを築くという二軸の使命です。私は「Deep Tech」スタック全体に完全に焦点を当て、このレンズを通して次の中核分野に取り組んでいます。&#xA;AIインフラ: 経済的な乗数。私たちは、より少ない資源で、より速く、より多くを実現できる、人間の生産性を増幅するエンジンに投資しています。 防衛と自律ロボティクス: 物理的な乗数。労働力不足への解決策であり、物理労働の進化です。 拡張可能な宇宙ビジネス: 資源の乗数であり、惑星リスクと技術的停滞に対する究極のヘッジです。 これらの柱に加えて、私は暗号資産からも手を引くことに決めました。Bitcoinについては、ある程度までは興味深く、検討に値すると今でも考えているので、現在保有しているものは保持するつもりですが、今後このポートフォリオでその分野にさらに資本を投じることはありません。これまでほとんど、あるいはまったく実質的なリターンをもたらしてこなかったですし、単純に精神的エネルギーを費やしたくないものでもあります。今の私の焦点は完全にディープテック・スタックにあり、そこに明確で具体的な実用性を見ています。&#xA;壮大なビジョンと将来の実用性が会社を私のレーダーに載せますが、ハードな数字がポートフォリオ内でのその位置を決めます。現在のパフォーマンスと市場とのギャップを埋めるために、私は経験を個人的なルールブックに落とし込みました。&#xA;ルールブック 私は決して最高のトレーダーでも投資家でもなく、そうだと名乗ることもありません。しかし、この3年間でまとめてきた教訓と助言を共有したいと思います。これらは私を助けてきたルールであり、私が守ろうとしているルールであり、より良い自分へと押し上げてくれるルールです。&#xA;資本とリスクについて 種を守る: ウォーレン・バフェットが言ったように、「ルール1: 絶対に損をするな。ルール2: ルール1を忘れるな」。ゲームに居続けることは、いくつかの大勝ちを追い求めることより重要です。 生存できるサイズにする: ポジションを取る前に、そのサイズを把握しておきましょう。半分になっても、場合によってはゼロになっても構わないと思えない額を賭けてはいけません。 流動性は力である: 現金は王様です。画面上の純資産は偽物です。流動資産こそが力です。 レバレッジは破壊の道具である: 良いアイデアを完全な惨事に変えてしまう可能性があります。 心理と規律について エゴを殺す: 強気相場を腕前と混同してはいけません。勝っているときは謙虚に、負けているときは規律を保ちなさい。アンドレイ・カルパシーが言ったように、「他人と比べるな。1年前の自分と比べろ」。 じっと座ることを学ぶ: 焦りは無知より多くの判断を台無しにします。時には、何もしないことが最善の一手です。 事後知の罠: 誰も天井や底を完璧には当てられません。デビッド・グランが書いたように、「歴史は容赦ない裁判官だ&amp;hellip;傲慢な探偵のように事後知の力を振るう」。 感情はノイズである: 高揚感、欲、復讐心を感じたら、一歩引きなさい。冷静に、客観的に、そして情報に基づいて行動しましょう。 戦略と執行について 仮説を自分のものにする: 参入する明確な理由と、退出する明確な理由を持ちなさい。両方を説明できないなら、何もしないことです。 見えているものを取引する: ピーター・ブラントが言ったように、「考えるものではなく、見えるものを取引しなさい」。事実は変わり、あなたもそれに合わせて変わる覚悟が必要です。数字が本当の弱さを示しているなら、物語に結婚してはいけません。 永遠に上がり続けるものなどない: ただ保有し続ければよいわけではありません。資産は無限に上がり続けたり、毎年／毎十年ごとに新記録を更新し続けたりはしません。やがて売る必要があります。利益確定こそが成功を確定させ、新しい機会を狙うための資本を解放する方法です。 無理なエントリーを避ける: 勝ち銘柄を取り逃がすことは、悪いエントリーを無理に入るよりましです。 一気にではなく、段階的に: 参入と退出には分割を使いなさい。全か無かの動きは、投資家ではなくギャンブラー向けです。 なぜ私は続けるのか ルールは、適用できるだけ十分長くゲームに居続けてこそ意味があります。そして、それこそが私が続ける理由です。私はまだ20代です。まだ大きな責任を抱えているわけではなく、前には長い道のりがあります。今は、リスクを取るのに絶対に最良の時期です。株だけでなく人生においても、あまりにも「安全すぎる」やり方をしたことで失うかもしれない潜在的なリターンは、今私が失う可能性のある資本よりはるかに大きいのです。</description>
    </item>
    <item>
      <title>ハッカソン</title>
      <link>https://mehmetmhy.com/langs/ja/hackathons/</link>
      <pubDate>Tue, 24 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/hackathons/</guid>
      <description>7回のハッカソンで4回優勝 ★ Video AI ハッカソン 2026 チーム: Mehmet Yilmaz&#xA;日付: 2026年2月18日 - 2026年2月24日&#xA;場所: コロラド州デンバー（対面）&#xA;順位: 正式な順位なし&#xA;このハッカソンは Charter が主催した 2 日間の社内イベントで、リーダーボードはなく、参加者がシニアリーダーシップにプレゼンする形式でした。私は動画コンテンツの構造的パターンを検出・分類する ML モデルを構築しました。このプロジェクトはリーダーシップに高く評価され、プロダクション導入が承認されました。&#xA;情報源:&#xA;このプロジェクトは Charter Communications の専有物であるため、詳細と情報源は非公開です&#xA;AWS AI Agent Global ハッカソン チーム: Mehmet Yilmaz&#xA;日付: 2025年9月8日 - 2025年10月22日&#xA;場所: リモート&#xA;順位: 参加&#xA;ソロで作業し、Go 製 AI CLI である ch を強化し、Amazon Bedrock と LLM プロバイダーをターミナルに導入しました。時間制約によりスコープは限定されましたが、Bedrock 連携、IAM ワークフロー、クロスプロバイダー API 設計への理解が深まりました。&#xA;情報源:&#xA;Devpost 提出, プロジェクトサイト, GitHub リポジトリ, デモ動画&#xA;★ Top Coder チャレンジ チーム: Mehmet Yilmaz</description>
    </item>
    <item>
      <title>私の完璧なテトリス</title>
      <link>https://mehmetmhy.com/langs/ja/perfect_tetris/</link>
      <pubDate>Sun, 22 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/perfect_tetris/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;私のテトリス版をプレイする これは何か テトリス は伝説的なゲームで、私がとても楽しんでいるゲームです。私はこのゲームが大好きで、遊ぶのを楽しんでいます。大きなストレス解消になります。週末の遊びのプロジェクトとして、デスクトップとモバイルの両方向けにブラウザゲーム/アプリとしてゲームを作ることにしました。これは vibeコーディング の原則を用いて設計しました。このバージョンのモバイル側は、スワイプベースの操作が非常に優れている プレイ・テトリス に触発されました。私の実装したテトリスはここで遊べます: こちら。私が思うところの最も「完璧な」テトリスです。&#xA;私のテトリス版のゲームプレイ。自分でプレイするには こちら コードを超えて 私はポートフォリオ用のクローンを作るためや何か新しいことを学ぶためにテトリスを作ったわけではありません。本当にそれが必要だったから作りました。仕事でつらい週だったり、単純に生活が積み重なってストレスがたまったとき、テトリスは私がリセットするのに本当に役立つ数少ない健全な手段の一つです。ストレスがたまると私は食べ過ぎてしまう傾向があり、時間と共に体重が増えるので、副作用なく機能する何かを持つことは私にとって大きな意味があります。ブロックを落とすだけで10〜30分間集中すると、頭の中が少しクリアになったように感じます。単なる気楽なリラックスではなく、ストレスを注ぎ込めるシンプルで集中できるものを持つ方法なのです。テトリスが侵入的な記憶やストレスの処理に影響を与える可能性があることを示す興味深い研究もあります。例えば、トラウマ映画の実験での例や、実際の事故後に治療を受けた人々での例、治療の補助として脳の変化が測定されたものがあります。私はこのゲームを医療行為にしようとしているわけではありませんが、テトリスが人々のストレス対処に本当に役立つという私の感覚を裏付ける科学的根拠があるのは興味深いです。&#xA;そこで良いテトリス版を探したのですが、自分が望むようにプレイできるものがほとんど見つかりませんでした。iOS App Store のモバイルアプリは広告やマイクロトランザクションで溢れています。ウェブ版はラグがあったり、電話では操作感が悪かったりしました。クラシックな NES 版は素晴らしいですが、エミュレータと追加のハードウェアが必要です。問題を解決すると思って Miyoo Mini を買ってみたこともありましたが、結局テトリスを遊ぶためだけにもう一台持ち歩くだけになってしまいました。ある時点で、適切なバージョンを探すのにかけている時間の方が、自分で作るのにかかる時間より長いことに気づきました。&#xA;現代のブラウザ、Claude Code のようなLLMツール、そして vibeコーディングのようなワークフローがあれば、自分が欲しいテトリスを作るのに今がちょうど良いタイミングだと感じました。速く、最小限で、広告なし、アカウント不要、アプリストア不要。自分のスマホとノートパソコンで動作し、完全に自分でコントロールできるブラウザゲーム。約1日で動作するバージョンができ、デスクトップとモバイルの両方で感触を整え堅牢にするために断続的に1週間ほど手を入れて満足いくものになりました。&#xA;もしこれが他の誰か一人でも私と同じようにストレス軽減に役立つなら、それだけでとても嬉しいです。小さなものですが、時に小さなものこそがまさに必要なものであったりします。&#xA;機能 クラシックな10x20のテトリスボード デスクトップではフルキーボード操作、モバイルではタッチジェスチャー操作 標準的な7バッグのピースランダマイザー ホールドピースと次のピースのプレビュー ピースが着地する位置を示すゴーストピース投影 レベルに基づく速度カーブと動的なロック遅延 スコア、ライン数、レベル、高得点をローカルストレージに永続化 ソフトドロップとハードドロップのスコアリング ゲーム内メニュー（再開、再スタート、終了、音楽/SFX ミュート、ソースコードリンク） ラインクリア時のフラッシュアニメーションと効果音 iOS セーフエリア対応（ダイナミックアイランド、ノッチ、ホームインジケータ） サービスワーカー経由のオフラインサポート（初回訪問後はインターネットなしで動作） PWA としてインストール可能（iOS/Android のホーム画面に追加してアプリのように使用可能） 操作 デスクトップ（キーボード） 操作 キー 移動 ← → or A D ソフトドロップ ↓ or S ハードドロップ Space 時計回り回転 ↑ W X 反時計回り回転 Z ホールド C or LShift メニュー Esc or M ソースコード G (タイトル画面) モバイル（タッチ） 操作 ジェスチャー 移動 左へ / 右へスワイプ ソフトドロップ 押し続けて下にドラッグ ハードドロップ 下へ素早くフリック 時計回り回転 タップ ホールド 上へ素早くフリック 難易度曲線 このバージョンの速度カーブとロック遅延は、クラシックおよび現代のテトリスが難易度の進行をどのように扱っているかに関する研究を用いて調整しました。オリジナルのNES版テトリスでは、レベル29で重力がフレームあたり1行に達し、これが多くの人にとって事実上プレイ不能になる有名な「キルスクリーン」になりました（https://tetris.</description>
    </item>
    <item>
      <title>キャリア概要</title>
      <link>https://mehmetmhy.com/langs/ja/summary/</link>
      <pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/summary/</guid>
      <description>こんにちは！ 私の名前は Mehmet Yilmaz で、ビルダーです。私は 5.2 年以上 テック業界にいますが、エンジニアリングは 11.7 年以上 行っています。現在は Charter Communications で Systems Engineer III として、堅牢で、安全で、拡張性のあるストリーミング基盤を設計しています。以前は、スタートアップの Osgil を創業し、Forum Ventures から プレシード資金調達 において $1.93M の評価額 で 14.5万ドルを調達しました。また、将来の独立プロジェクトのための長期的な器として、2025年初頭に E&amp;amp;F も設立しました。私は TARS、DocuInsight、Notify Cyber、Cha、Guardian Grid のような製品や、さまざまな その他 の プロジェクト を立ち上げてきました。これまでのキャリアでは、eBay、Bild AI (YC)、Anarchy (YC)、HCR Lab で働いたほか、Kobalt Labs (YC) や Macro (a16z) のためのプロジェクトも手がけました。また、4 件のハッカソン で優勝し、Colorado School of Mines で Robotics &amp;amp; Intelligent Systems を専攻分野とする CS 学位 を取得しました。私の目標は、世界に真に前向きな影響をもたらす 現実の問題を解決する 製品を作ることです。もっと私について知りたい場合は、履歴書/CV と ブログ をご覧ください。23 言語 で利用できます！</description>
    </item>
    <item>
      <title>チャの死</title>
      <link>https://mehmetmhy.com/langs/ja/death_of_cha/</link>
      <pubDate>Tue, 02 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/death_of_cha/</guid>
      <description>修正されたフレームは ナルト 疾風伝 から 私が2024年1月初めに**チャ**の開発を始めたとき、必要だったから作りました。その時点で私が求めていたようにターミナルにLLMを統合する優れたCLIターミナルツールは実際には存在しませんでした。多くのツールを試し、chatbladeが最も近い選択肢でしたが、どれも私のニーズを本当に満たすものではありませんでした。&#xA;そこである日、自分で作ることに決めました。ChatGPTを通じてGPT-4の助けを借りながらドラフトとアウトラインを作り、そこからコーディングを開始しました。必要に応じてチャに機能を追加していき、時間が経つにつれて、それは副次的な中毒性のある情熱的なプロジェクトになっていきました。起源の詳細については私のチャに関する最初のブログ記事を参照してください。&#xA;面白かったのは、これは実際に私が毎日使うツールだったことです。だから作業するたびに、それは通常私のワークフローと生産性に直接利益をもたらす改善につながりました。&#xA;チャはLLMツールの市場で居場所を見つけました。マーケティングなしで口伝えだけでGitHubで64スター、6フォークを獲得しました。当時、多くのCLIツールが夢見ることしかできなかった機能を持ちながらも、シンプルで反復が容易でした。チャは、開発者向けの真剣なプロダクトになる現実的なチャンスがあるとさえ思えるほどの段階に達しました。ただの自分用の楽しい副プロジェクト以上のものとして。&#xA;しかし、2025年が来ると、すべてが変わりました。もし2024年がAI搭載IDEの年だったなら、2025年はAI搭載CLIツールの年でした。AnthropicはClaude Code CLIをリリースし、同時に改良されたSonnet と Opus モデルを発表し、彼らが最良のコーディングモデルとそれを支えるツールを持っていることを世界に示しました。数週間のうちに、Claude Code CLIはCursor IDEからかなりの市場シェアを奪い、私も試してみる必要がありました。すぐに夢中になりました。それは私がこれまで使った中で最も強力なAIコーディングツールであり、私のコード作成とプロジェクト構築のやり方を永遠に変えました。その後、Claude Code CLIの成功により、Gemini CLI、OpenAI Codex CLI、GitHub Copilot CLI、Cursor CLI、Kiro CLI、Amazon Q CLI、OpenHands CLI、Qwen Code CLI、Aiderなど、多くのAI CLIツールが続々とリリースされ始めました。&#xA;これらすべての中で、実際に市場に残ったのはClaude Code CLI、Gemini CLI、OpenAI Codex CLIだけでした。Claude Code CLIがその市場の大部分を握りました。&#xA;これらすべてとClaude Code CLIの力により、チャはその時点でほとんど死にかけました。しかし、他のCLIツールが提供していなかったチャの強みは、シンプルで高速、そしてはるかに安価であるという点でした。また、ユーザーがOpenAI、Anthropic、Google、xAIのような異なるLLMプロバイダー間を簡単に切り替えられることも可能にしていました。主な価値は、読み込みが速く、vibe codingの感覚なしにユーザーに完全なコントロールを与え、全体として非常に安価であることでした。当時のClaude Code CLIやGemini CLIのようなツールの法外な価格と比較すると特にそうでした。価格に対してかなり強力であることが、最後にそれを生かしていたコアの要素でした。&#xA;しかし、2025年の後半、Anthropicが**claude-haiku-4-5モデルをリリースしたとき、すべてが再び変わりました。このモデルは入力トークン100万あたりわずか$1、出力トークン100万あたり$5**という価格で、非常に賢く効果的でした。特にClaude Code CLIでのツール利用に特化しているように見えました。これにより状況は一変しました。なぜなら今やClaude Code CLIは高速で、かつそれほど高価でもなくなったからです。このモデルにより、私のClaude Codeのコストは以前の約3分の1になりました。なぜならこのモデルはSonnetやOpusでやっていたことの90％を行えたからです。&#xA;これが本当にチャを殺しました。 確かに、チャは依然としてClaude Code CLIより速く安価でしたが、もう大差はありませんでした。Claude Code CLIの性能と価格が、チャが提供していた最後の本当の価値を破壊しました。さらに、Googleのような超大企業がAI CLI市場に参入し、OpenAIやAnthropicのようなモデルプロバイダー自身も参入しているという事実もありました。この二つの要因により、私の個人利用も劇的に変化しました。以前はチャと他のCLIツール（主にClaude Code CLI）をほぼ50/50で使っていましたが、今ではチャが8％程度で残りは他のAIツール、主にClaude Code CLIになりました。&#xA;これが結果的にチャを終わらせました。2025年中頃までに、私はチャをPythonからGoに移植し、ビジョンを一新するために名称を**チに変更しました；この移行については私のChaからChへの移行に関するブログ記事、Chプロジェクトのブログ、およびChのウェブサイトで詳細を確認できます。チはマーケティングなしでも10スターと1フォーク**を獲得しました。しかしこの書き直しを行っても、すでにClaude Code CLIや他の主要プレイヤーが築いた勢いに打ち勝つことはできませんでした。チャがこのGoへの移行を超えてまったく別の何かにならない限り、競争する現実的なチャンスはありません。そしてたとえそうなっても、巨大企業やモデルプロバイダーに対して牽引力を得る可能性は非常に低く、ほとんど不可能に近いです。&#xA;だから、うん、これは最悪です。でもどうしようもないこともあります。特にLLMやAIの分野のようなテクノロジー業界は信じられない速さで動きます。それは私に、最終的にプラットフォームが勝つということを教えてくれました。これは私の個人的な理論と一致します： ソフトウェアのバーベル理論。</description>
    </item>
    <item>
      <title>履歴書</title>
      <link>https://mehmetmhy.com/langs/ja/cv/</link>
      <pubDate>Sun, 30 Nov 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/cv/</guid>
      <description>履歴書をダウンロード ハッカソン受賞歴 職務経験 Charter Communications ― システムエンジニア III&#xA;2025年8月 - 現在&#xA;オンサイト&#xA;Video Delivery チームで堅牢で安全かつスケーラブルなストリーミングインフラを設計・構築。 Bild AI ― 機械学習エンジニア（契約）&#xA;2025年5月 - 2025年6月&#xA;リモート&#xA;実世界の建築 PDF で継続的にベンチマークと改良を行い、ヘッダー精度を 約15%、セルレベル精度を 約12%、テーブル検出精度を 約10% 向上させ、Bild AI の社内テーブル抽出パイプラインを改善。 複数のテーブル抽出 API ソリューションおよび Bild の社内パイプラインを横断してテーブル抽出をベンチマークするモジュール式 Python フレームワークを設計・構築し、再現可能な評価と迅速な反復を実現。 テーブルマッチング、ヘッダー精度（ファジー文字列一致）、セルレベル精度（シーケンスアラインメント）のコアロジックを独自に実装し、エッジケースを顕在化させてアルゴリズム設計をガイド。 PDF のクラウド取り込みから、正解データとの比較、メトリクスの記録、レポート生成（CSV、JSON、Google Sheets）まで、評価パイプライン全体を自動化し、スケーラブルなベンチマークを実現。 プロバイダー間で抽出結果を実行・比較する CLI ツールを提供し、回帰テストを加速し手動 QA 時間を短縮。 160 以上のコミットを行い、520K 行以上のコード変更に貢献し、評価およびツーリングスタックに対するエンドツーエンドのオーナーシップを示した。 eBay ― ソフトウェアエンジニア&#xA;2021年5月 - 2024年12月&#xA;リモート&#xA;Storage Management System (STMS) プロジェクトを強化し、毎分 150 万件以上のメトリクスを取り込めるように拡張。3 つの eBay データセンターにおいて 70 以上のアレイ、60 以上のスイッチ、1100 以上のホスト、900 以上のディスクグループ、200 以上のクラスタを管理。 eBay の Tess.</description>
    </item>
    <item>
      <title>ヴァーセルの自動クリーンアップ</title>
      <link>https://mehmetmhy.com/langs/ja/vp-cli/</link>
      <pubDate>Tue, 28 Oct 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/vp-cli/</guid>
      <description>プロジェクトのギットラボリポジトリ&#xA;&amp;gt;_ vp -r _ _ _ ____ // | | | | _ \ // | | | | |_) | __//__ \ \_/ / __/ \\\\\\\ \___/|_| 問題 私はしばらくの間 ヴァーセル を使ってきており、アプリケーションのデプロイがどれほど簡単かを気に入っています。しかし、常に気になっていたのはデプロイの散らかりです。ヴァーセルはプルリクエストのプレビューを含むすべてのデプロイを無期限に保持します。つまり、数か月にわたる活発な開発の後には、数百、あるいは数千もの古いデプロイがスペースを占めることになります。Vercel のダッシュボードからこれらを手動で管理するのは非常に骨の折れる作業で、特に複数のプロジェクトを抱えているときには面倒です。自動化されたソリューションを探しましたが、私のニーズに合うものは見つかりませんでした。&#xA;解決策 この問題を解決するために、私は ヴァーセルパージ、略して vp を開発しました。これはヴァーセルのプロジェクト内で未使用のデプロイを自動的にクリーンアップするために設計された CLI ツールです。1つのコマンドで、特定のプロジェクトから古いデプロイをすべて削除したり、すべてのプロジェクトから一度に削除したりできます。ツールは使いやすく、誤操作を防ぐための確認プロンプトを提供し、何を削除するかに確信がある場合は一括操作もサポートします。完全に機能しており、今日すぐに使い始めることができます！&#xA;設計 The vp CLI is written in Python and leverages the ヴァーセル CLI under the hood. It uses the ヴァーセル API to list and delete deployments, making it reliable and fast.</description>
    </item>
    <item>
      <title>Notify Cyberのオープンソース化</title>
      <link>https://mehmetmhy.com/langs/ja/wwbc/</link>
      <pubDate>Wed, 22 Oct 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/wwbc/</guid>
      <description> GitHubリポジトリ • アーカイブサイト • Reddit投稿 LinkedIn投稿 • HackerNews投稿 2年以上と17,000人以上のユニーク訪問者の後、私たちはNotify Cyberをオープンソース化します！&#xA;2023年初頭、Dylan Eckと私（Mehmet Yilmaz）は、断片化されたサイバーセキュリティニュースソースを通り抜けることにフラストレーションを感じ、Notify Cyberを構築しました。私たちは、Appleのセキュリティリリース、CISAの警告、NIST CVEデータベース、Dark Reading、IT Security Guru、Microsoft Security Response Center (MSRC)、Trellix、およびThe Hacker Newsを含む7つ以上のソースからニュースを集約するプラットフォームを構築しました。バックエンドは、ブラウザベースのスクレイピングを必要とせずにデータをクリーンアップし処理するPythonコレクターでした。シンプルなリクエストとパースを使用してすべてのコンテンツを抽出できました。その後、OpenAIのAPIを使用して記事を要約し、すべてをPostgreSQLデータベースにSupabase上に保存しました。フロントエンドとサーバーレスAPIはVercelにホストされ、DylanはクリーンなNext.jsとReactインターフェースを構築し、私はバックエンドを維持しました。ドメインはGoogle Domainsを通じて登録し、待機リストはシンプルなGoogleフォームで管理しました。これは完全に無料のインフラストラクチャで、コンセプトを証明するのに最適でした。このプロジェクトを構築する動機となった全体のストーリーについては、私たちの元のブログ投稿（2023年5月29日）をお読みください。&#xA;ローンチは謙虚なものでした。私たちは2023年6月にほぼゼロの訪問者でローンチしました。最初の2週間はTwitterマーケティングに費やしましたが、新しいユーザーはゼロでした。Dylanと私は落胆し、プロジェクトを中止しようとしていましたが、最後の手段としてRedditで最後のプッシュをすることに決めました。&#xA;数日間のやり取りの後、Dylanはサイバーセキュリティのr/cybersecurityに単一の投稿を承認され、投稿しました。そして3日以内に、8,000人以上の訪問者と100人以上の待機リストに登録者が集まりました。その投稿は最終的に65,000回以上のビューを獲得し、96%のアップボート率を記録しました。&#xA;2年以上の間に、私たちは17,000人以上のユニーク訪問者と43,000ページビューに成長し、すべてオーガニックな成長を通じて達成しました。また、その期間内に待機リストの数も160人以上に増加しました。私たちは徹底的に最適化し、コストを**$38からわずか$1.85**に削減しました。これは、コレクターをクラウドインスタンスから自宅で動作するRaspberry Pi 3B+に移行したことによるものでした。フロントエンドとAPIはVercelの無料プランに留まりましたが、データ収集をローカルハードウェアに移行したことがゲームチェンジャーでした。私は旅行中のためにLinodeインスタンスをフェイルオーバーとして設定しましたが、ほとんどの時間はこの小さなRaspberry Piがバックグラウンドで動作し、Dockerコンテナを実行し、私たちのデータベースに新鮮なセキュリティニュースを供給していました。これはほとんどの人が考えもしないようなスクリプトなインフラストラクチャですが、実際に影響力のあるものを運営するのに高価なクラウドデプロイメントは必要ないことを証明しました。&#xA;私たちは、私たちが構築したものに本当の需要があることを証明しました。ライブサービスを運営することは、インフラストラクチャの障害やデータベースの問題などの実際の課題に対処することを意味し、これらすべてが迅速に対応し、スケールでの信頼性を維持する方法を教えてくれました。しかし最終的には、マネタイズや実際のビジネスモデルを見つけることができませんでした。さらに重要なことに、Dylanと私は、機会コストが高すぎるポイントに達しました。2025年10月5日、私たちはプラットフォームを引退し、全コードベースをオープンソース化することに決めました。&#xA;この旅を通じて、私たちはタイミングと流通が重要であることを発見しました。MVPはスクリプトであっても、実行はクリーンでなければなりません。自分が解決するのを楽しむものを構築してください。本当の需要は必ずしも有効なビジネスモデルに変換されるわけではありません。そして、プロジェクトを引退/ピボットすることには尊厳があります。&#xA;次に何をするかというと、私は現在、Charter/Spectrumでいくつかの興味深い問題を解決することに焦点を当てており、今後のプロジェクトにワクワクしています。しかしそれまでの間、Notify Cyberとのこの章を閉じたいと思います。これは私にプロダクトマーケットフィットがどのようなものかを垣間見せてくれ、影響力のあるプロジェクト/製品を作るために資金や派手なマーケティングが必要ないことを示してくれました。ブートストラップがほとんどのソフトウェアベースの製品にとっての道かもしれません、そして私はその教訓を今後構築するすべてのものに持ち込んでいます。&#xA;何かを構築しているなら、公に失敗することを恐れないでください。撃ち続け、迅速に反復し、必要に応じてピボットし、次の章をより良く始めるためにいつ閉じるべきかを知ってください。&#xA;Dylan Eckに特別な感謝を、フロントエンドと私たちのRedditの成功を推進してくれたことに感謝します！&#xA;サムライジャックの最後のほろ苦いシーン </description>
    </item>
    <item>
      <title>Cha から Ch へ</title>
      <link>https://mehmetmhy.com/langs/ja/cha_to_ch/</link>
      <pubDate>Sun, 14 Sep 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/cha_to_ch/</guid>
      <description>プロジェクトの GitHub リポジトリ&#xA;大きなお知らせ 私は Cha を段階的に終了し、Ch に集中します。2025年8月23日 に Cha を非推奨としてマークし、今後の開発努力はすべて Ch に向けることにしました。今の方針はシンプルです。シンプルで、軽く、速い 1つのツールを保ち、それを維持し、バグを修正する。機能追いはしない。&#xA;私が当初 Cha を作った理由 LLM や ChatGPT が新しかった頃、私が欲しかった CLI ツールはどこにも現れませんでした。ChatGPT は 2022年11月に登場し、GPT-4 のリリースがあった 2023年初頭に本当に広まりました。私はしっかりしたコマンドラインツールが出てくるのを待っていましたが、どれも私の望むようには本当に動きませんでした。そこで Cha を作り、毎日使いました。実際、私の最初のブログ記事でははっきりこう書きました。こういうプロジェクトはよくあるが、どれも私のニーズに合わなかったので、自分で書いたのだと。&#xA;Cha は私の子どものようなものでした。私は毎日使い、その開発をとても楽しみました。そして1年以内に、GitHub で +60 のスターを集め、少しずつ成長しました。この間に、Web スクレイピング、YouTube の文字起こし取得、画像生成、複数行入力、対話型/非対話型の両チャット、STT プロンプト入力、カスタムツールのサポート、OpenAI だけでなく他のさまざまなプラットフォームのサポート、独自の Answer Search エンジン、高度なディレクトリ移動とファイル編集、内容をクリップボードにコピーする機能、応答の TTS などを備えるようになりました。かなり多くのことをこなし、動作し、コマンドラインツールとして本当に 有用で強力 でした。&#xA;なぜ Ch（Python から Go へ）に移行したのか 時間が経つにつれて Cha は重くなりました。機能セットは素晴らしかったのですが、日々必要としていたものに対して表面積が大きすぎました。その結果、Cha は本当に肥大化してしまいました。さらに、Python で書かれていたことも2つの重大な問題を生みました。1つは 速度 で、単純な初期読み込み時間だけでもなお 0.8秒 かかっており、これは Python の遅い初期パッケージ読み込み時間を回避し、マルチプロセッシングを使うために多くの最適化と工夫を施した後の数字でした。そして Python はインストールが非常に 難しい です。Cha はさまざまなサードパーティのオープンソースツールに依存していたため、インストールがとても大変でした。私の限界点は、Android タブレットだけを持って Termux を使いながら旅行していたときに、まったく動作せず、多少なりとも動かすことすら非常に苦痛で無意味だったことです。&#xA;そこで私は Ch という新しい実験を始めることにしました。Ch は Cha のようなものですが、Python ではなく GoLang で書かれ、Cha の 本質的な機能 だけを含み、軽く、速く、ほとんどのシステムに簡単にインストールでき、機能過多ではないことを目指しました。そうすることで、単独の保守担当者としてプロジェクトを維持しやすくなります。</description>
    </item>
    <item>
      <title>ソフトウェア価値のバーベル</title>
      <link>https://mehmetmhy.com/langs/ja/barbell_theory/</link>
      <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/barbell_theory/</guid>
      <description>導入 ここ数ヶ月、私は_人工知能の時代_におけるソフトウェア価値の移動先について多く考えてきました。2025年4月、ガイレン・G・ハウは豊穣の時代におけるプログラミングというブログを公開しました。彼の主張は、プログラミングが安価になるにつれて、あらゆる産業とワークフローにソフトウェアが爆発的に広がるだろうというものです。彼は、_豊穣_が意味するのはソフトウェアがあちこちに増えることであり、減ることではないと考えています。&#xA;私は自分自身のフレームワークに取り組んでおり、それを社内ソフトウェア・レバレッジ理論と呼んでいました。私の考えは、_人工知能の時代_においてはソフトウェアそのものを売ることは弱いビジネスモデルだということです。どんな機能もすぐにコピーされ得るからです。本当の防御は、外部に販売されることのない独自のツールを構築することにあります。自社だけが利用して、より速く賢く運営するためのツールです。私は、不動産会社が自社のアンダーライティングと買収ソフトウェアを自作する例を挙げました。競合は決してそれにアクセスできませんが、それは静かに優位性を複利的に生み出します。&#xA;当初、これら二つの考えは対立しているように見えました。ハウは豊穣が拡張を意味すると主張し、私はソフトウェア販売はほぼ死につつあると主張しました。さらに調査し実際の市場例を見た結果、どちらも一部の真実を含んでいると考えるようになりました。私が最終的にたどり着いたフレームワークを、私はソフトウェア価値のバーベルと呼んでいます。&#xA;用語集 議論を明確にするために、いくつかの簡単な定義を示します:&#xA;水平型SaaS（Horizontal SaaS）: 多くの産業で販売される汎用ツール（例: スラック、ズーム、ドロップボックス）。導入は簡単だが、置き換えも容易。 垂直型SaaS（Vertical SaaS）: 特定の業界やワークフローのために構築されたツール（例: 建設向けのBild AI）。対象は狭いが、一度組み込まれると撤去が困難。 プラットフォーム / プリミティブ（Platform / Primitives）: クラウド、モデル、開発者プラットフォームのような基盤レイヤーで、他者がその上で構築するもの。AWS、OpenAI、ギットハブのようなものを想像してください。 社内プライベート・レバレッジ（Private Internal Leverage）: 自社だけのために構築され、他に販売されないソフトウェア。多くの場合、独自のデータで強化されます。例としては、ジェーピー・モルガンのAIスイートやウォルマートの社内エージェント群などがあります。 これを踏まえて、今日の市場からのシグナルを見てみましょう。&#xA;市場のシグナル 証拠は既に2025年に明確です。&#xA;カーサー（AI統合開発環境）は最近、約9億ドルを調達し、評価額は99億ドルでした。自前のモデルをホストしていないため、単なるラッパーだと切り捨てる向きもあります。カーサーが成功しているのは、単純なUI以上の深いところを扱っているからです。リポジトリ規模のコンテキスト、複数ファイルにわたる安全な差分、エンタープライズ向けのセキュリティ、コスト管理を扱います。マイクロソフト／ギットハブやアマゾン／AWSのような競合は、ギットハブ・コーパイロットの統合やキラIDEの導入を通じて機能をコピーしてきましたが、システムレベルでの実行力、信頼性、および開発者の採用がカーサーを生かし続けています。これはバーベルのプラットフォームあるいは垂直の端の良い例です12。&#xA;YC出身のスタートアップであるビルドAIは、図面に視覚と言語モデルを適用して建設分野にサービスを提供します。これにより企業はより多くのプロジェクトに誤りを減らして入札できるようになります。これは_垂直型SaaS_です。プラットフォームでも社内専用システムでもありませんが、ROIが明白な痛みのあるドメインワークフローに集中することで生き残っています。大手テックがこのような非常に特定の領域を追う可能性は低く、ビルドAIには成長の余地があります3。&#xA;そして巨大企業群があります。ウォルマートは顧客、従業員、エンジニア、サプライヤー向けに社内エージェントを四つの「スーパーエージェント」に統合しています。ジェーピー・モルガンは自社の内部的な_LLMスイート_が約20万人の従業員に利用されていると報告しています。これらは市場で販売される製品ではありません。大企業内部の効率を複利的に高める社内プライベート・レバレッジです45。&#xA;同時に、企業向けの調査はAI採用が急速に増えていることを示しています。マッキンゼーの調査は、企業の78%が少なくとも一つの機能でAIを使用していると報告しています。ベインは、米国企業の95%が生成AIを使用しており、本番環境でのユースケースは前年から2倍になったと報告しています。並行して、CFOたちはSaaSの乱立を切り詰めています。企業はベンダー数を減らしROIを高めたいと考えています。差別化が薄い汎用ツールが真っ先に置き換えられています67。&#xA;2010年代からの教訓 バーベルの中間が侵食されている理由を理解するには、2010年代を振り返ると役立ちます。これは水平型SaaSの黄金期でした。スラックやズームのような企業は、誰もがどの業界でも採用できるシンプルで汎用のツールを販売することで爆発的に成長しました。彼らの配布の優位性は、使いやすさ、フリーミアムモデル、チーム内でのウイルス的な採用から来ていました8。&#xA;しかし今日に至ると状況は異なります。マイクロソフト・チームズはチャット、会議、ファイル共有を直接Office 365にバンドルしています。かつてSaaSの代名詞であったセールスフォースは、垂直化を進めフルプラットフォームのエコシステムへと拡張することで地位を固めてきました9。「水平ツールを作ってスケールする」という古いプレイブックは、配布が既得権者に支配され、AIが機能の複製を容易にするため、再現がずっと難しくなっています。&#xA;これがバーベルが形成される理由です。かつてSaaSユニコーンを育てた中間領域は縮小しており、両極（プラットフォームと社内レバレッジ）に持続的な価値が集中しています。&#xA;ソフトウェア価値のバーベル 理論をできるだけ簡潔に述べます。ソフトウェア価値は二つの極に集中しています。一方の端にはクラウド、モデル、オーケストレーション層のような_プラットフォーム_と_プリミティブ_があります。これらは誰もがその上に構築するため勝ちますし、大手テックは配布とバンドリングによってこの領域の多くを支配しています。もう一方の端には、企業が自社のために構築し決して販売しない社内プライベート・システムがあります。これらは運用に直接組み込まれ、独自データで強化され、競合がアクセスできないため堅固な堀になります。&#xA;侵食されるのは中間です。汎用の水平型SaaSはAIによる機能の同等化とCFOによるベンダー集約によって圧迫されます。ここで生き残るSaaSは、非常に_垂直_でROIが実証されており、深い統合、コンプライアンス、あるいは切り替えが困難になるほど強い成果を持つものだけです。もし製品がそのハードルを越えられないのであれば、それは売るべきではありません。レバレッジとして社内に留めるべきです。&#xA;終わりに 私は最初に社内レバレッジについての自分の理論から始めました。それからハウのブログを読み、自分の見解に挑戦しました。カーサー、ビルドAI、そしてウォルマートやジェーピー・モルガンの動きを見ると、パターンは明確です。ハウの言う通り、豊穣はあちこちにより多くのソフトウェアを意味します。私の以前の見解も正しく、ソフトウェアを売ることは堀として弱くなっています。折り合いを付けたのがバーベルです。_片側にプラットフォームとプリミティブ、もう片側に社内プライベート・システム、そして中間は極めて垂直で価値が高い場合にのみ生き残る_という図式です。&#xA;開発者や創業者にとって教訓は明快です。バーベルの端のどちらかを選びなさい。プラットフォーム層で構築するか、社内レバレッジを構築しなさい。SaaSを売りたいのであれば、それが垂直で、深く統合され、ROIが証明されていることを確認しなさい。その他はすべてコモディティ化されていきます。&#xA;引用 テッククランチ（TechCrunch）, カーサーのAnysphereが99億ドルの評価を獲得, 2025年6月5日。&amp;#160;&amp;#x21a9;&amp;#xfe0e;&#xA;ヤフー・ファイナンス（Yahoo Finance）, カーサーのAnysphereが99億ドルの評価を獲得, 2025年6月5日。&amp;#160;&amp;#x21a9;&amp;#xfe0e;&#xA;ワイ・コンビネーター（Y Combinator）, ビルドAI 会社ページ。&amp;#160;&amp;#x21a9;&amp;#xfe0e;&#xA;CIOダイブ（CIO Dive）, ウォルマートがAIリーダーシップを拡大し四つのスーパーエージェントを導入, 2025年7月24日。&amp;#160;&amp;#x21a9;&amp;#xfe0e;&#xA;CIO.com, ジェーピー・モルガンがAWS上にAI基盤を構築し、20万人の従業員がLLMスイートを使用していると報告, 2024年12月4日。&amp;#160;&amp;#x21a9;&amp;#xfe0e;&#xA;マッキンゼー（McKinsey）, The State of AI 2025, PDF, 2025年3月5日。&amp;#160;&amp;#x21a9;&amp;#xfe0e;</description>
    </item>
    <item>
      <title>私のロボティクス研究章</title>
      <link>https://mehmetmhy.com/langs/ja/hcr_lab/</link>
      <pubDate>Tue, 12 Aug 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/hcr_lab/</guid>
      <description>この投稿では、2015年の 高校時代 に FRC でロボティクスへの情熱を見つけたことから、2021年2月から2021年9月まで コロラド鉱山学校 の Human Centered Robotics (HCR) Lab で研究助手として過ごした時期まで、私のロボティクスの歩みを振り返ります。なお、2022年後半以降、HCR Lab はコロラド鉱山学校から マサチューセッツ大学アマースト校 へ移転し、サイトも hcr.mines.edu から hcr.cs.umass.edu へ移りました。&#xA;背景 私は2018年秋学期にコロラド鉱山学校で学部課程を始めました。専攻はロボティクスと知能システムに重点を置いたコンピュータサイエンスでした。そして2022年春に卒業しました。&#xA;私は人生の早い段階で自分の情熱を見つけられた幸運な人間でした。高校時代には、自分が何を好きで、何が得意になれそうかを見極めるためにかなりの時間を費やしました。試行錯誤を重ねた後、私の情熱はコンピュータサイエンスだと分かりました。しかし、この時期に、コードを通じて何かを作り上げることに圧倒的な愛情を抱いていることにも気づきました。&#xA;Minesでは、Dr Hao Zhang のもとで、Mines の Human Centered Robotics (HCR) Lab で働く機会を得ました。私は2020年春に、彼の授業「Human Centered Robotics」（CSCI473）を通じて Zhang 博士に初めて会い、COVID と授業課題の混乱が落ち着いた後、2021年春の初めに彼の研究室で働くことになりました。&#xA;Human Centered Robotics（CSCI473）の授業 Mines の Human Centered Robotics（CSCI473）は、大学生活の中で私に大きな影響を与えた数少ない授業の一つでした。この授業は Hao Zhang 博士が担当していました。授業の成績は3つのプロジェクトだけで構成されており、それぞれがロボティクスの核心概念を導入する、難しい課題でした。プロジェクトは以下の通りでした。&#xA;ロボットオペレーティングシステム（ROS）を学ぶ ロボットの壁追従のための強化学習 骨格ベース表現を用いた人間行動のロボット理解 ロボットオペレーティングシステム（ROS）を学ぶ これは最初に割り当てられたプロジェクトでした。課題は3つありました。&#xA;開発環境のセットアップ Gazebo シミュレータの理解 ROS の「Hello World」を書く 課題1と2では、開発環境をセットアップし、Gazebo の導入チュートリアルに従うだけでした。これには以下が含まれていました。&#xA;ROS Melodic のセットアップ。これは、十分使えた 2011年製の HP ノートパソコンで行いました ROS と Gazebo のインストールと設定 gazebosim のチュートリアル と e-manual のチュートリアル を進めること 一方、課題3は本当に大変でした。この課題は turtlesim を使い、カメが Mines の「M」ロゴを描くようにすることでした。</description>
    </item>
    <item>
      <title>Ch CLI</title>
      <link>https://mehmetmhy.com/langs/ja/ch/</link>
      <pubDate>Fri, 11 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/ch/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;概要 1年前、私はChaを作成しました。それについての私の元のブログ投稿を読む、OpenAIのモデルとインターフェースするための私のPython CLIツールです。それ以来、AIの風景は劇的に進化するのを見てきました。新しいプレイヤーが市場に参入し、OpenAIに対する魅力的な代替手段を提供しています。これにより、Chaが何であるべきかを再考することになりました。その結果がChであり、開発者ツールを構築する際に学んだすべてを具現化した実験的なGo実装です。&#xA;ChはChaの単なるポートではありません。まだ初期段階にありますが、私や他の開発者にとって最も重要なこと、すなわち速度、効率、複数のAIプラットフォームへのサポートに焦点を当てています。Chaを有用にしたシンプルさとターミナルファーストのインタラクションというコア哲学を維持しながら、ChはPythonの前任者に対して印象的な2.55倍の性能向上を実現しています。これは、待機時間が短くなり、実際に問題を解決する時間が増えることを意味します。&#xA;進化 Chaを最初にリリースして以来、AIの風景は大きく変わりました。Chを構築する際のアプローチに影響を与えた主要な変化をいくつか見てきました：&#xA;新しいAIプロバイダーの台頭は驚くべきものでした。Groqのような企業は推論速度の限界を押し広げました。AnthropicのClaudeは印象的な推論能力を示しました。DeepSeekなどは言語モデルに新しいアプローチをもたらしました。この多様化により、OpenAIにのみ依存することはもはや十分ではなくなりました。&#xA;応答速度はますます重要になっています。AIツールが私たちの日常のワークフローの一部になるにつれて、応答を待つための余分な数秒が積み重なります。これは、Goで書き直す主な動機の一つでした。性能向上は単なるベンチマークの数字ではありません。コーディングセッションの深いところで、明らかにスムーズな体験に変わります。&#xA;プラットフォームの柔軟性の必要性も高まっています。異なるモデルは異なるタスクで優れた性能を発揮し、簡単に切り替えられる自由が価値があります。Chはこれをシームレスに実現し、APIエンドポイントの管理ではなく、作業に集中できるようにしたいと考えました。&#xA;主な機能 マルチプラットフォームサポート: ChはOpenAI、Groq、DeepSeek、Anthropic、およびxAIとシームレスに連携します。プラットフォーム間の切り替えをできるだけ簡単にしました。選択肢があることがツールをより価値あるものにすると信じています。&#xA;驚異的なパフォーマンス: Chaに対する2.55倍の速度向上は単なるマーケティングではありません。これは慎重な最適化とGoの優れたパフォーマンス特性の結果です。すべてのインタラクションがよりスナッピーに感じられ、日常的に使用する際に実際の違いを生み出します。&#xA;インタラクティブおよびダイレクトモード: 時には迅速な回答が必要で、他の時には詳細な会話が必要です。Chは両方のワークフローを自然にサポートします。迅速なクエリを発信したり、詳細な技術的議論に参加したりできます。&#xA;ウェブ検索統合: SearXNGをIEEE引用形式で統合しました。これにより、Chがウェブコンテンツを引き込んで質問に答えるとき、適切に引用された研究グレードの応答が得られます。最新の情報が必要なときや主張を検証したいときに特に便利です。&#xA;スマートファイル処理: チャットコンテキストにファイルを読み込むことは私が常に使用する機能なので、改善しました。マルチセレクト機能により、会話に必要なものを正確に含めることが簡単になります。&#xA;プロフェッショナルツール: 会話を文書化のためにエクスポートしたり、複雑なプロンプトのために好みのテキストエディタを使用したり、AIモデル間を切り替えたりする際に、Chは簡単にします。これは単に良いと思った機能ではありません。私自身の作業で毎日使用するツールです。&#xA;チャット履歴管理: 会話履歴を遡ることができることは、以前の議論の部分を参照したり、将来の参照のためにチャットをエクスポートしたりする際に、私を何度も救ってくれました。&#xA;なぜGoなのか？ ChaをGoで書き直す決定は、単にパフォーマンスのためだけではありませんでした。Chaを1年間維持した後、何が機能し、何が改善できるかの明確なイメージを持っていました。Goの強い型付けは、開発の初期段階でエラーを早期にキャッチしました。その優れた同時実行性サポートにより、複数のAPI呼び出しをスムーズに処理できました。迅速な実行により、すべてのインタラクションがより応答的に感じられました。&#xA;しかし、最も重要なのは、Goがより堅牢で保守可能なツールを構築するのに役立ったことです。コードはクリーンで、エラーハンドリングはより信頼性が高く、全体的なアーキテクチャはより堅固です。これらの改善はユーザーにはすぐには見えないかもしれませんが、Chをより信頼性が高く、新機能を追加しやすくしています。&#xA;AI支援開発の力 Chを構築する際に本当に驚いたのは、パフォーマンスの向上や新機能だけではありませんでした。それは、私がどのようにそれを構築したかです。Claude Code CLIやGemini CLIのようなツールを使用し、Cursor IDEと組み合わせることで、1日もかからずにこのMVPを開発することができました。この経験は、ソフトウェア開発における可能性に対する私の視点を完全に変えました。&#xA;この迅速な開発サイクルは、手を抜くことではありませんでした。むしろ、AIツールがソフトウェアプロジェクトへのアプローチをどのように変革しているかを示しました。計画、コーディング、デバッグに数週間かかるかもしれないことが、数時間の集中した開発に凝縮されました。これは単にコードを書く速度を上げることではなく、以前は不可能だったペースで実験、反復、革新できることです。&#xA;未来に向けて Chは現在、Chaのコア機能のほとんどを実装していますが、非常に実験的なプロジェクトです。その可能性に興奮していますが、まだやるべきことがあります。性能向上とマルチプラットフォームサポートにより、Chは急速に進化するAIの風景と共に成長する位置にあります。&#xA;私はChを毎日使用しています。Chaと同様に、今はそれがより速いことを知っている満足感があります。試してみたい方は、この記事の冒頭にリンクされたプロジェクトのGitHubリポジトリをチェックしてください。インストールプロセスは簡単で、特にGoツールに慣れている方には問題ありません。&#xA;ChaからChへの旅は、単にツールをより速い言語で書き直すこと以上のものでした。Chaを構築し使用することで学んだすべてを取り入れ、今日のAIの風景における開発者のニーズによりよく応えるものを作り出すことでした。Chがどのように使用され、将来のニーズに応じてどのように進化するかを見るのが楽しみです。</description>
    </item>
    <item>
      <title>8090年代のトップコーダーチャレンジ</title>
      <link>https://mehmetmhy.com/langs/ja/tcc-2025/</link>
      <pubDate>Sun, 08 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/tcc-2025/</guid>
      <description>元のLinkedIn投稿&#xA;プロジェクトのGitHubリポジトリ&#xA;金曜の夜、私はTwitter/XでChamath Palihapitiyaが彼の新会社、8090 Solutionsが主催する公開トップコーダーチャレンジを告知している投稿を見ました。誰でも参加できました。チャレンジは翌日に行われ、わずか8時間しかなく、過去のデータと数人の従業員へのインタビューだけを使って、ブラックボックスのレガシーシステムをリバースエンジニアリングするという内容でした。&#xA;私は飛び込むことにしました！&#xA;その日の終わりまでに、425人中7位に入ることができて光栄でした。リーダーボードはこちらで、今回のチャレンジのコードはこちらで確認できます。でも正直に言うと、私はただその短い時間内に何かを完成させたいと思っていただけだったので、リーダーボードに載れたのは驚きであり、私にとって大きな個人的勝利でした。&#xA;このチャレンジは個人戦で、目的は、ソースコードもドキュメントもない60年前のブラックボックスの旅費精算システムを再現することでした。私たちには、製品概要、従業員インタビューの書き起こし、入力と期待される出力の歴史的な例を1,000件含む公開データセットを含む、いくつかの資料が与えられました。そこから、私は旅費精算額がどのように計算されているのかという ব্যবস業ロジックを推測し、できるだけ同じ結果を出せる現代版を実装しなければなりませんでした。提出物は、元の1,000件ではなく5,000件のテストケースを含む別の非公開データセットで評価されました。このより大きな非公開セットが、最終的なスコアと順位を決定しました。採点システムは精度を重視しており、スコアが低いほど、あなたの解法が元システムの非公開の挙動をより正確に一致していることを意味しました。&#xA;データ内の不確実性とパターンに対処するために、私は基本的なヒューリスティックとプログラム的ロジックに加えて、古典的な機械学習手法を使いました。不完全な手がかりに基づく、データ分析、特徴モデリング、ルールの近似を慎重に組み合わせたものでした。&#xA;公開の1,000件データセットに対する私のevalスコアは次のとおりでした:&#xA;✅ Evaluation Summary ------------------------ Total cases : 1000 Exact matches (&amp;lt;$0.01): 0 Close matches (&amp;lt;$1.00): 17 Average error : $31.15 Score : 3214.93 このようなチャレンジに対して8時間で解法を作るのは、アイデアを素早く探索し、統合し、テストするのを容易にしてくれるAI搭載ツールの助けがなければ、ほぼ不可能だったでしょう。&#xA;それは、ソフトウェア考古学とライブコーディングのスプリントを組み合わせたような感覚でした。私がこれまで行った技術的チャレンジの中でも、最も強烈でやりがいのあるものの一つでした。&#xA;このように創造的で刺激的なチャレンジを企画してくれたChamath PalihapitiyaとArjun Krishnaに感謝します。&#xA;リンク:&#xA;GitHub上の公式チャレンジ Chamathによる元の告知 Arjunによる最終リーダーボード ChamathのTwitter/Xでの再投稿 </description>
    </item>
    <item>
      <title>バイブコーディング</title>
      <link>https://mehmetmhy.com/langs/ja/vibe-coded-projects/</link>
      <pubDate>Sat, 24 May 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/vibe-coded-projects/</guid>
      <description>バイブコーディングとは何か？ バイブコーディングは、Andrej Karpathyによって2024/2025年に導入された、AIを活用したプログラミング手法です。バイブコーディングでは、自然言語のプロンプトでやりたいことを説明すると、通常は大規模言語モデル（LLM）が、あなたのために動作するコードの大部分、しばしばそのすべてを生成します。時間があるなら、Rick Rubinによって翻案されたArt of Vibe Codingを見て、**バイブコーディングの道**についてさらに学んでみてください。&#xA;この新しい手法の大きな利点の一つは、アクセスしやすさです。なぜなら、コーディング経験のない人でもプロジェクトを作ることができ、経験豊富な開発者は本格的に取り組む前に新しいアイデアを素早く試作できるからです。これは特にスタートアップにとって有用です。欠点は、開発者が生成されたコードの仕組みを完全には理解しない可能性が高いことです。小さな個人プロジェクトなら問題ありませんが、本番レベルのソフトウェアでは、長期的な問題や技術的負債につながる可能性があります。&#xA;バイブコーディングをよりスムーズにするツールはたくさんあります。Cursor IDE、Claude Code CLI、GitHub Copilot、Loveable、Replit、v0などは、AIを自分の環境で直接使えるようにしたり、バイブコーディング専用のインターフェースを提供したりします。個人的には、これらのプロジェクトでは主にCursor IDEとClaude Code CLIを使っていました。&#xA;ただし、ここで重要なのは、これらのツールやモデルにはお金がかかるということです。従来のコーディングでは、主に時間を支払っています。バイブコーディングでは、財布で支払っているのです。そして、何をしているのかわからないなら、財布と時間の両方を支払うことになります。このページ上の各プロジェクトは、作成におよそ**$10から$20**かかります。いろいろ試していると、すぐに積み上がります。これらのモデルが改良され、より効率的になれば、いずれコストは下がると思います。現時点では、自分のプロジェクトにバイブコーディングが適しているかを判断する際に考慮する価値のある点です。&#xA;何が可能なのか気になって、私自身もバイブコーディングを試し、実際のプロジェクトを通してその原理そのものを探るためにこのページを作りました。私は単に製品を作っているのではなく、バイブコーディングが実際にどこまでできるのかをテストし、実演しているのです。これはただの遊びですが、これらのモデルが改良され続けるにつれて、将来のコーディングがどのように見えるのかを垣間見せてくれます。&#xA;無限の猿定理 無限の猿定理を聞いたことがありますか？それは、無限の猿に無限のタイプライターと無限の時間を与えれば、やがてそのうちの一匹がランダムにキーを打つだけでシェイクスピアの全作品を生み出すだろう、という哲学的思考実験です。&#xA;ばかげて聞こえますよね？でも、ここがすごいところです。バイブコーディングはある意味それに似ています。ただし、猿の代わりにAIモデルがあり、タイプライターの代わりにプログラミング言語があり、シェイクスピアの代わりに動くソフトウェアが得られるのです。&#xA;考えてみてください。大規模言語モデルは、何十億行ものコード、パターン、例をもとに学習されています。LLMにプロンプトを与えると、それは人間の開発者のように問題を一歩ずつ「考える」わけではありません。代わりに、学習中に得たパターンに基づいて、次に最も起こりそうなトークンを予測しているのです。本質的には、統計的に正しそうに見えるものに基づいてコードを生成することで、見当をつけているのです。&#xA;そして不思議なことに、たいていの場合うまくいきます。モデルは、実際にコンパイルされ、実行され、あなたの問題を解決するコードを出力します。理解によってではなく、途方もなく大規模な確率的パターン照合によってです。まるで、宇宙で最も洗練されたランダムなテキスト生成器が「正しい」答えを見つけたかのようです。しかし、ここでの違いは速度です。あの猿たちには文字どおり無限が必要でしょう。あなたのAIは？ 数秒から数分でたどり着きます。&#xA;つまり、ある意味では、バイブコーディングを使うとき、あなたはモデルに蒸留された何百万行ものコードのパターンを活用して、解決策を生成しているのです。それは意識的な問題解決ではなく、統計的な魔法です。そして、まさにそれがこれほど強力であり、そして率直に言って、コードが実際に何をしているのかを理解することが今でも重要である理由なのです。&#xA;答えよりも問いのほうが重要 ここで見落とされがちな重要なことがあります。バイブコーディングは、どんな答えでも得ることではなく、正しい問いを投げかけることなのです。銀河ヒッチハイク・ガイドに登場するディープ・ソートスーパーコンピュータを思い浮かべてください。あれは、生命、宇宙、そして万物についての究極の問いへの答えを計算するのに何百万年も費やした末、最終的に42という数字を出しました。答えは技術的には正しかったのですが、無意味でした。なぜなら、本当の問題は、そもそもどんな問いを尋ねるべきかを見つけることだったからです。&#xA;バイブコーディングも同じです。プロンプトがすべてですが、コンテキスト管理も同じくらい重要です。曖昧なプロンプトには曖昧なコードが返ってきますし、適切なファイル、ドキュメント、例をコンテキストとして提供しなければ、モデルは本当に必要なものを理解できません。もしあなたがコーディング、アーキテクチャ、システム設計を理解している人なら、詳細なプロンプトを作成し、適切なコンテキストを選んで、LLMを優れた解決策へと導くことができます。しかし、何を求めるべきか、どんなコンテキストを与えるべきかがわからないなら、AIにもわかりません。&#xA;実はこれこそが、バイブコーディングが経験豊富な開発者にとって非常に強力である理由です。私たちは良いコードがどのようなものかを知っており、落とし穴も理解していて、モデルがそれらを避けるように促すプロンプトを書けるからです。技術的背景のない初心者にとっては、これは本当の制約になります。動くコードは得られるかもしれませんが、何が間違っていたのか、次に何を尋ねるべきかがわからなければ、行き詰まってしまいます。&#xA;バイブコーディングだけでは不十分なとき 最新のAIモデルは印象的ですが、万能薬ではありません。バイブコーディングは本番環境でも使えますが、それは本気で取り組む場合に限られます。堅牢なユニットテストが必要です。システムが何をすべきかについての明確な真実の源が必要です。壊れたりずれたりしたときにそれを検出する必要があります。そして、ハッカーのマインドセットが必要です。既成概念にとらわれずに考え、バイブコーディングしたプロジェクトを予想外の方法で壊そうとしてみてください。どんなエッジケースを見落としているでしょうか？ どんなセキュリティ脆弱性を誰かが悪用できるでしょうか？ これが、単に動くだけのコードと、本当に堅牢なコードを分けるものです。&#xA;ただし、ここで重要なのは、AIがあなたを所有しているのではないということです。あなたがAIを所有しているのです。生成されたものをそのまま受け入れてはいけません。レビューしてください。テストしてください。壊してください。そして正直に言えば、コードベースのある部分については、昔ながらのコーディングに戻る必要があります。集中して、深く考えて、自分で書いてください。バイブコーディングは物事を速くしますが、重要な場面で本物のプログラミングの代わりにはなりません。&#xA;もう一つ学んだことがあります。時には、AIとのセッションを終えて、新しいセッションを始める必要があるということです。会話履歴がどんどん大きくなるにつれて、モデルの性能は低下します。ミスが増え、生成されるコードの一貫性が下がり、幻覚もより頻繁に起こり始めます。これに気づかずに止めなければ、これらの誤りは互いに積み重なり、事態は徐々に悪化していきます。何度も何度も複写された文書を読もうとしているようなものです。新しく始めれば、物事はきれいで鮮明に保たれます。&#xA;バイブコーディングされたプロジェクト 以下は、バイブコーディングの手法を使って私が作った2つのプロジェクト、stairs（repo）とtranscendental（repo）です。主にプロンプトから生成され、手作業はコンテキストの提供、デバッグ、そしてGitLab Pagesへのデプロイに限定されていました。これらは、バイブコーディングを通じて創造的なアイデアとコードを組み合わせることで何が可能になるかを示す、楽しい静的サイトの実験です。どちらもGitLabでホストされています。&#xA;プロジェクトを見る Stairs GitLabでStairsを見る&#xA;Transcendental GitLabでTranscendentalを見る</description>
    </item>
    <item>
      <title>ガーディアン・グリッド（SF）</title>
      <link>https://mehmetmhy.com/langs/ja/guardian-grid/</link>
      <pubDate>Wed, 30 Apr 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/guardian-grid/</guid>
      <description>GitHubリポジトリ &amp;bull; LinkedIn投稿 デモビデオ &amp;bull; ハッカソン詳細 概要 Guardian Grid（SF）は、大規模災害時にコミュニティが迅速かつ安全に対応するのを支援するスマートシティ緊急避難ツールです。システムは、都市管理者や緊急担当者がインタラクティブな地図上で自然災害の影響を受けた地域などの危険ゾーンをマークし、安全ゾーンを直接定義できるようにします。その後、進んだ経路探索アルゴリズムを使用して、現在の危険を考慮に入れた住民にとって最も安全な避難経路を生成および通知します。&#xA;緊急事態が発生した場合、担当者は危険地域と安全地域を更新し、テキストメッセージを通じて即座に住民の電話に警報を送信できます。各人はウェブポータルへのリンクを受け取り、自分の現在位置を使用して危険を考慮した安全へのルートを表示し、Google マップを使った即時の案内を提供します。状況が変化すると、ルートはリアルタイムで再計算され、新しい警報が送信されて全員の安全を維持します。デモはこちらをご覧ください：&#xA;現在のデモ用コードでは、デモとテスト目的で単一の電話番号にSMSで警報を送信しています。しかし、実際の導入では、Guardian Grid SFは影響を受ける都市や地域内のすべての人に避難警報を放送できるWireless Emergency Alerts（WEA）システムと統合される予定です。&#xA;現時点の焦点はサンフランシスコ湾地域にありますが、私たちのビジョンはGuardian Gridを世界中の他の主要都市に拡大することです。私たちの目標は、調整されたデータ駆動型の避難を提供する堅牢なシステムを構築し、すべての都市が市民を保護し、混雑を最小限に抑え、緊急事態が展開する際に迅速に対応できるようにすることです。&#xA;チーム Aspen Guardian Gridは、National Security HackathonでのTeam Aspenによって開発されました。私たちのチームは以下のメンバーで構成されていました：&#xA;Ioana Munteanu - ソフトウェアエンジニア Christina Huang - ソフトウェアエンジニア Mehmet Yilmaz - ソフトウェアエンジニア Dylan Eck - ソフトウェア兼機械エンジニア 私たちは、Elliott Wolf、Adam Papa、および Ray Del Vecchio を含むメンターや主催者からの指導と支援に感謝しています。&#xA;私たちのハッカソンでの道のり 2025年4月26-27日のハッカソンの週末は、予想外ではあるが強力なコラボレーションをもたらしました。私の親しい友人であるDylan Eckと私は、それぞれコロラド州とミズーリ州からサンフランシスコで開催されたCerebral Valleyの第2回National Security Hackathonに参加するために移動しました。イベントのキックオフで、私たちはChristina HuangとIoana Munteanuに出会い、Team Aspenが誕生しました。&#xA;IoanaのLinkedIn投稿：私たちのハッカソン体験を紹介 ハッカソンでは二つの異なる課題が提示されました。主要なトラックは伝統的な順位付け賞を伴うプロジェクトベースの競技であり、一方で特別課題は参加者にCode Metalの冷却システムを倫理的にハッキングすることを求めました。私たちのチームは多様な専門知識を有しており、特にDylanのソフトウェアと機械工学の両方のバックグラウンドを活かして、24時間という制限内で両方の課題に取り組むという戦略的な判断を下しました。&#xA;この野心的なアプローチは、二つの重要な成果につながりました：&#xA;Guardian Grid（SF） - 私たちの主要なハッカソンプロジェクトで、緊急避難に焦点を当てました：&#xA;デモビデオ GitHubリポジトリ Code Metalチャレンジ - 私たちは彼らの冷却システムに対する最も成功した侵入テストを達成し、$5,000の特別賞で勝利しました。この解決策は機密扱いのままですが、ソフトウェアと熱力学システムの両方における私たちのチームの技術的深さを示しました。</description>
    </item>
    <item>
      <title>2019 AgBotチャレンジ</title>
      <link>https://mehmetmhy.com/langs/ja/agbot-2019/</link>
      <pubDate>Sun, 20 Apr 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/agbot-2019/</guid>
      <description>イースト高校 コロラド州デンバーにあるイースト高校（2014年〜2018年）に通っていた頃、私は放課後の活動に非常に熱心に取り組んでおり、その中でも最も大きな影響を与えたのがロボットクラブのAngelBoticsでした。参加したのは高校2年生のときで、それまではサッカーに重点を置いていたためでした。クラブは主にFIRST Robotics Competition（FRC）に参加しており、機械工学や電気工学、そしてプログラミングを探究する機会を与えてくれました。AngelBoticsを通じて、CADツール、3Dプリンター、その他の工学機器の使い方を学び、大学生向けとされることの多いSTEMの概念に触れることができました。当初は量子物理学者になることを志していましたが、AP物理とロボティクスでの経験を通して、自分は物理がそれほど得意ではないと気づき、結果として機械工学の道から離れることになりました。&#xA;その代わりに、私はプログラミングに自分の居場所を見つけました。最初のRaspberry Pi向けにPythonコードを書いたことから始まり、APコンピュータサイエンスでのJavaプロジェクトを通じてその基盤が固まりました。試験では苦戦していたものの、先生のナゲル氏は私にソフトウェア開発を追求するよう励まし、テストの点数よりもプロジェクトの価値を強調してくれました。これがきっかけで、大学ではコンピュータサイエンスを専攻し、将来的にはソフトウェアエンジニア、そして最終的には創業者になるという夢を持つようになりました。&#xA;課題が多く、学習曲線も急だったため、私はAngelBoticsにはそれほど深く関わっていたわけではありませんでしたが、それでもロボティクスへの生涯続く情熱に火をつけてくれました。だからこそ大学に進学したとき、私は大学のロボットクラブに参加し、いつかロボティクスで現実世界の問題を解決する会社を立ち上げると決意していました。&#xA;マインズ大学 イースト高校を卒業した後、私はコロラド・スクール・オブ・マインズ（2018年〜2022年）でコンピュータサイエンスの学士課程を始めました。最初の学期の間に、私はマインズのロボットクラブを調べ、AgBotという新しいロボティクスグループを見つけました。&#xA;AgBotは、2019年 agBots Weed and Feed Competitionに出場するロボットを作ることを目標に結成された新しいロボットクラブでした。この競技には主に2つの課題がありました。&#xA;害虫と雑草の識別および除去 ロボティクスを通じた新しい収穫方法の創出 私たちのチームは1つ目の課題に取り組むことを選びました。マインズがagBot競技に出場するのは初めてであり、マインズのロボットクラブが農業関連のことに取り組むのも初めてでした。そのため、全体としてとても新鮮に感じられました。&#xA;私はすぐにこのプロジェクトに惹かれました。私の家族はトルコで何世代にもわたって農家でしたが、それは父の世代まで続いていました。だからAgBotは、ロボティクスとプログラミングへの私の情熱と結びつきながら、どこか身近に感じられました。祖父母のような農家を助けるかもしれないロボットを作るというアイデアは、とても刺激的でした。&#xA;開発 AgBotチームの一員であったことは、私の大学時代の最も思い出深い経験のひとつです。それはまた、それまでの時点で私が取り組んできた中でも最も大変なことのひとつでした。このプロジェクトは、私がPython、Ubuntu、そしてROSに本格的に取り組んだ最初の機会でした。FRCではすべてJavaで行っていたので、これは私にとって完全に新しい領域でした。PythonとUbuntuは以前に使ったことがありましたが、ROSには触れたことがありませんでした。ROSの仕組みを学ぶのは困難でした。当時はPythonの環境が何なのかさえ知りませんでした。&#xA;私は、LiDARからのデータを、私が書いていたROSノードに使える形で送らせることに大半の時間を費やしました。私の担当は、end_detectorというROSノードを実装することで、LiDARデータを使ってロボットが作物列の端に到達したことを検知できるようにすることでした。今でこそ単純に聞こえますが、当時はとても大きな課題に感じられました。&#xA;LiDARを私のコードとやり取りさせるまで、デバッグに約2週間かかりました。コード全体はC++かPythonで書かれており、主にPythonでした。なので、この作業で私が書いたコードはPythonだけでした。それが動くようになってから、私はキャンパス内で見つけたランダムな植物の区画を使ってロジックのテストを始めました。LiDARを載せた台をそれらの前まで転がし、コードが端に到達したことを判断できるか確認していました。長時間の作業とデバッグの末、最終的には少なくとも私のテスト環境ではすべてを動かせるようになりました。しかし、すべてを組み合わせようとしたときは別の話でした。&#xA;私の時間の大半は、ハードウェアとソフトウェアを互いに通信させることに費やされました。列の端を検知する実際のロジックはその後でした。しかし、それは素晴らしい学習経験でした。私はROSをほとんど理解していない状態から、Jetsonボード上でライブのLiDARデータを使ってノードを作成し、デバッグできるようになりました。また、この時期に私は、主にJavaをプログラミング言語として選ぶ癖から、代わりにPythonを標準にするようになりました。そして2025年現在に至るまで、私は自分のプロジェクトや仕事関連のコードベースでJavaを本格的に使ったことはまだありません。&#xA;チームと技術スタック 私たちは、Nvidia Jetson TX2上でUbuntu 16.04、ROS Kinetic、Python 2.7を動かし、Hokuyo URG 04LX UG01 Lidarと接続していました。超音波距離センサーなどのセンサー入力用にArduinoも使っていました。私たちのコードは、認識、ナビゲーション、制御、散布を担当していました。リポジトリはこちらで見ることができます: GitHub Repo。私が書いた具体的なコードはend_detector.pyにあります。ロボットを構成していた主な部品の一覧は以下のとおりです。&#xA;Ubuntu 16.04 Xenial ROS Kinetic Kame Python 2.7 Nvidia Jetson TX2 Hokuyo URG-04LX-UG01 Lidar Arduino Uno &amp;amp; Mega DCモーター、エンコーダー、モーターコントローラー、バッテリーなど 私たちのチームは大規模ではありませんでしたが、特に印象に残っている名前がいくつかあります。&#xA;Tyler Zudans Zachary Smeton Tylerはクラブのリーダーであり、創設者でした。当時も彼をとても尊敬していましたし、今でもそうです。Zacharyはクラブのソフトウェア開発のリーダーであり、ソフトウェア開発とROSについて多くのことを教えてくれました。そのことに私は今でも感謝しています。&#xA;他にもKevin BarnardやAmit Rotemのようなメンバーがいました。しかし、クラブが終わってからすでに5年以上が経っているため、残念ながら最初のメンバー全員の名前と連絡先は覚えていません。&#xA;ロボットの開発の大半は、週末や授業が終わった後の深夜に行われました。工学の学位取得とAgBotの両立は非常に負担が大きかったですが、私たちはなんとかやり遂げました。&#xA;旅と混乱 この経験全体の中で、決して忘れられないのがその旅そのものでした。競技会はインディアナ州ウェストラファイエットで開催され、パデュー大学のキャンパスの近くでした。そして、競技会はマインズでの期末試験週が終わった直後に行われたため、あの地獄のような1週間から回復する時間はありませんでした。&#xA;私たちはTylerのトラックを使って、ロボットと全ての工具を運びながらコロラド州ゴールデンからインディアナまで車で向かいました。面白いことに、私たちは文字通り競技会の1日前に出発しました。ロボット、工具、バッテリー、コンピューター、その他持っているものすべてを荷造りし、コロラド州ゴールデンからインディアナ州ウェストラファイエットまで運転しました。地図上では18時間の道のりです。ガソリン補給やトイレ休憩も含めると、実際には20〜22時間ほどかかりました。</description>
    </item>
    <item>
      <title>FMによる統合フォーマッター</title>
      <link>https://mehmetmhy.com/langs/ja/fm/</link>
      <pubDate>Wed, 02 Apr 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/fm/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;問題 コードを見た目よく整理しておくのが好きなので、フォーマッターの愛用者です。しかし、IDEがフォーマットを扱う方法が煩雑でわかりにくいのが好きではなく、多くのコードをターミナルのVimで書いています。しばらくの間、ファイルパスまたはディレクトリパスのどちらかを指定でき、指定した内容をすべて整形するCLIツールを探していました。つまり、ディレクトリを指定すればそのディレクトリ内のすべてのファイルを整形し、指定したディレクトリに.gitignoreファイルがあればそれを尊重するようなツールです。しばらく探しましたが、何も見つかりませんでした。&#xA;解決策 この問題に対応するため、私はForMatter、略してfmを開発しました。これは現在早期開発段階にあるCLIツールで、さまざまなプロジェクトのスクリプトを整形するように設計されています。このツールはIDEに頼るよりもフォーマットに関してより多くの制御を提供します。開発中ではありますが、十分に実用的です！ 貢献に興味があれば、リポジトリをフォークしてPRを送ってください。&#xA;設計 fmはBashスクリプトで書かれており、バックグラウンドで次のライブラリ／フォーマッターを使用します: shfmt, black, Prettier, &amp;amp; ClangFormat。これらのライブラリ／フォーマッターにより、fmは次のフォーマットをサポートします: .py, .sh, .bash, .dash, .ksh, .js, .jsx, .ts, .tsx, .json, .md, .html, .css, .yml, .yaml, .graphql, .vue, .scss, .less, .c, .cpp, .h, .hpp, .m, .mm, &amp;amp; .java&#xA;結論 私は個人用システムでfmを広範囲に使用しており、一緒に仕事をする多くのコントリビューターやコラボレーターもこれを使用しています。だからこそオープンソース化しました。非常に有用で実際に価値を提供できると思うので、世界中の人々が使えるようにしたいです。そんなわけで、今すぐGitHubでfmをチェックしてください！</description>
    </item>
    <item>
      <title>DocuInsightが署名を簡素化します</title>
      <link>https://mehmetmhy.com/langs/ja/docuinsight/</link>
      <pubDate>Mon, 27 Jan 2025 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/docuinsight/</guid>
      <description>イベント 2025年9月15日: DocuInsightはサービスを終了しましたが、現在は完全にオープンソース化されており、ドキュメントはgithub.com/eandf/DocuInsight に、ドキュメントは eandf.github.io/DocuInsight にあります。元のドメインは2027年までそこへリダイレクトされます。&#xA;2025年1月27日: DocuInsightはメフメト・ユルマズ と ディラン・エック により、2024–2025年の DocuSign Hackathon Unlocked のために構築されました。こちらをご覧ください: www.docuinsight.ai または私たちの ライブデモ。この記事は私たちの Devpostへの投稿 に基づいています。&#xA;概要 DocuInsightは、法的契約の主要な条項を強調表示し、それらを平易な英語に翻訳し、DocuSignと統合して電子署名を可能にし、さらに法律専門家へのアクセスを提供することで、法的契約を簡素化するプラットフォームです。&#xA;DocuInsightは、「契約の罠」を解消するために作られました。契約における重要な詳細が法的専門用語の背後に隠れてしまい、人々が自分の権利や義務を十分に理解しないまま署名してしまう状況です。我々のビジョンは、署名者と送信者の双方が署名前に完全な明確さを得られるよう支援することです。さらに、必要に応じて個別の助言を求められるよう、ユーザーが法律の専門家と簡単に連絡を取れる方法も提供したいと考えました。&#xA;DocuSignハッカソン向けに2024年12月から2025年1月にかけて開発されたDocuInsightは、DocuSignの技術と統合して契約やテンプレートをインポートし、テキスト解析のためにOpenAI APIを利用し、契約に関する質問に答えたり弁護士を探すための情報源を提供したりできるチャットインターフェースを備えています。我々は、この知識ギャップを埋めることが混乱や法的紛争、機会の逸失を減らすと信じています。&#xA;デモ 着想 2024年初頭、私は親しい友人とスタートアップを共同設立しました。友人を信頼していたため、最初の会社契約に目を通しきらないまま署名してしまいました。報酬なしで会社のMVP開発に多大な時間と専門知識を投入した後、その友人は追加の株式を使って私に持ち株を減らすか会社から排除されるかの選択を迫りました。弁護士を見つけて調べたところ、私が意図せず重要な権利を放棄しており、自分や会社を効果的に守ることができないことが判明しました。かつて親しかった友人の利己的で無謀な行動により、対立は私個人に大きな負担をかけ、会社にとっても貴重な時間を失う結果となりました。この経験から、個人の権利を守り組織の安定を確保するためには、法的合意のあらゆる詳細を理解することが極めて重要であると学びました。&#xA;機能 DocuInsightのコア機能と実装は以下の通りです：&#xA;明確な契約の要約: DocuInsightは高度なAIモデルを使用して法的文書を分析し、簡潔な要約を生成します。これらの要約は主要な条項、異常な条件、潜在的なリスク、重要な義務を強調し、ユーザーに契約の明確で理解しやすい概要を提供します。&#xA;インタラクティブなチャットインターフェース: AI搭載のチャット機能により、ユーザーは自分の契約と「会話」できます。特定の条項、契約の全体的な目的、または関連する法的概念について質問できます。チャットボットはウェブを参照して、信頼できる出典に基づく正確で最新の情報を提供することもでき、ユーザーが確かな回答を得られるようにします。&#xA;弁護士の推薦: 追加の法的支援を求めるユーザーのために、DocuInsightはユーザーの所在地や確認中の契約の種類に基づいて弁護士を推奨する最適化された検索クエリを生成します。検索結果には法律専門家の連絡先情報やレビューが含まれ、ユーザーが専門家と具体的に接触できる手段を提供します。&#xA;強化された署名プロセス: DocuInsightはDocuSignの既存の署名ワークフローとシームレスに統合します。ユーザーはメールでログインし、テンプレートにアクセスするためにDocuSignアカウントを接続し、書類を署名のために送信します。送信後、受取人はドキュメントを確認し、AI生成のインサイトと対話し、標準のDocuSignプラットフォーム内で行うのと同様に署名できます。&#xA;署名後のアクセス: 署名後、ユーザーは元のリンクを通じて契約を再訪し、署名済み契約を確認したり、AIのインサイトにアクセスしたり、フォローアップの質問のためにチャットインターフェースを引き続き利用できます。これにより、署名者が契約内容について継続的に明確さを保つことが保証されます。&#xA;これらの機能により、DocuInsightは法的契約の複雑さを簡素化する強力なツールとなります。AI駆動のインサイト、インタラクティブなサポート、DocuSignとのシームレスな統合を組み合わせることで、DocuInsightは署名者が情報に基づいた意思決定を行えるよう支援し、送信者が配布する契約に対する信頼を築く手助けをし、さらに追加支援を求めるユーザーと接続する機会を法律専門家に提供します。私たちの目標は、合意プロセスにおいて透明性、信頼性、アクセス可能性を促進し、法的文書をより理解しやすくすべての人にとって公平なものにすることです。&#xA;さらに詳しい機能の実演動画を見たい場合は、DocuInsightの動作を示した別のクリアなビデオもご覧ください（これは私たちのデモビデオではなく、詳細を知りたい方向けの追加リソースです）:&#xA;構築方法 DocuInsightは主に三つの部分から構成されています：&#xA;データベース: すべてのジョブ、レポート、ユーザーデータなどを保存します。プロジェクトに必要なデータを含んでいます。 フロントエンド: プロジェクトのUIであり、ユーザーが見て操作する部分です。 アナライザー: 法的契約を分析し、メールを送信する責任を持つバックエンドサービスです。 このプロジェクトではデータベースとしてPostgreSQLを使用し、Supabase上でホストしました。フロントエンドとアナライザーの両方がSupabaseのSDKを通じてSupabaseのAPIを利用してデータベースにアクセスしました。データベース構成はユーザー用、ジョブ用、レポート用の三つのテーブルで構成されています。usersテーブルは認証とアカウント管理に使用されます。jobsテーブルは分析が必要な契約を追跡します。reportsテーブルはアナライザーが生成した契約に関するすべてのレポートを格納します。&#xA;フロントエンドはNext.jsというフロントエンドフレームワークを使って構築しました。このフレームワークではHTML、Tailwind CSS、JavaScript、TypeScript、Reactを使用しました。これらの技術により、フロントエンドは動的かつレスポンシブにコンテンツを表示・機能させることができました。さらにフロントエンドではいくつかのAPIを使用しました:&#xA;OpenAIのAPI: 各署名セッションのチャットボットをホストおよび実行するため。 DocuSignのAPI: eSignature APIを使用して署名プロセス全体を処理し、ユーザーのDocuSignアカウントからDocuInsight上でテンプレートに簡単にアクセスできるようにするため。 Tavily API: LLM向けに設計された専門の検索エンジンAPIで、チャットボットがウェブを参照して最新のニュースや更新情報を取得できるようにします。 Resend API: 主にフロントエンドのログインプロセスに関連するメール処理を行うために使用しました。 Supabase API: Supabase上にホストされたプロジェクトのデータベースにアクセスしてCRUD操作を行うために使用しました。 フロントエンドはNext.jsフレームワークの作成者が提供するホスティングサービスであるVercel上に完全にホストされています。&#xA;アナライザーはPythonで構築されました。アナライザーはOpenAIのAPIを使用して法的契約を分析し、OpenAIの最も高度なモデルの一つである o1-preview を使用します。またResend APIを使用してメールを送信し、主に領収書の送付やDocuInsight上で契約に署名するために必要なメールを送るために使用しました。アナライザーはDiscordのウェブフックをサポートしており、アナライザーの実行中に何か重大な問題が発生した場合にユーザーがアラートを受け取れるようにしています。他のプロジェクト部分と同様に、アナライザーはプロジェクトのデータベースにアクセスするためにSupabaseを使用しました。</description>
    </item>
    <item>
      <title>PAXによる信頼できるAI</title>
      <link>https://mehmetmhy.com/langs/ja/pax/</link>
      <pubDate>Wed, 23 Oct 2024 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/pax/</guid>
      <description>背景 PAX（Proactive Agent for eXemplary Trustworthiness）は、私の以前のプロジェクトである TARS からの大きな方向転換として始まりました。TARSは自律型のサイバーセキュリティ侵入テストを対象としていました。TARSを開発している間に、実用的で信頼できるAIエージェントに対する最大の障壁の一つは、単なるタスクの自動化ではなく、AI生成応答の信頼性を確立することであることが明らかになりました。特に、それらの出力が、重大な結果をもたらし得る現実世界の意思決定に影響を与える場合にはなおさらです。&#xA;TARSでサイバーセキュリティ侵入テストのタスクを単に自動化するのではなく、私は根本的な問題に取り組みたかったのです。LLMが言うことを信頼できると、どうやって分かるのか？&#xA;TARSは、私が共同創業した最初のスタートアップ Osgil のためのMVPとして開発されました。私たちの目標は、AIエージェントを用いてサイバーセキュリティ侵入テストを自動化することでした。TARSのおかげで、Forum Venturesアクセラレーターからプレシード資金を確保することができました。しかし、防衛・サイバーセキュリティ企業に接触した際、そうした組織は、侵入テストのような重要なタスクを実行し報告することにAIエージェントを信頼していないことが分かりました。また、ほぼ全ての企業が、事態が悪化したときの責任逃れのために、主としてサイバーセキュリティ企業と取引したがっていました。要するに、これらの企業の意思決定者は、何かしなければならない状況でない限り、自社のセキュリティを気にしておらず、気にする場合でも、何か問題が起きたときの責任逃れのために保険のような形でその条件の一部としていました。2024年後半時点では、自動化されたAI搭載のサイバー攻撃はまだ大きな懸念事項ではなく、意思決定者たちは私たちのソリューションに本当の必要性を見出していませんでした。この市場需要の不足により、私たちはLLMモデルにおける幻覚の削減に焦点を当てる方向へ転換しました。LLMの信頼性を向上させることで、私たちの取り組みはサイバーセキュリティを超えた幅広い将来のAIエージェント用途に役立つと考えています。&#xA;トランスフォーマーの伝承からの示唆 PAXという名前は、Transformers の世界観へのオマージュです。アイコニックなオプティマス・プライムになる前、キャラクターの元々の名前は Orion Pax でした。可能性から責任への変化というこの発想が、PAXの使命、すなわち生の印象的なLLM能力を、本当に頼れるだけの信頼性を持つものへと移行させることの着想源となりました。&#xA;プロジェクトのビジョン PAXは、体系的に次のことを行う研究エージェント兼フレームワークです。&#xA;あらゆるLLM応答の信頼性を測定する。 幻覚や裏付けのない主張を減らす。 検証可能な情報源への帰属を強制し、追跡する。 応答と主張の両方を評価する、説明可能で構造化されたレポートを提供する。 このプロジェクトの目的は、LLMを単にもっともらしいだけでなく、証明可能に 信頼できるものにし、リスクと信頼度を透明に示すことです。&#xA;簡単で基本的なデモ PAXの仕組みの概要 1. 強制された帰属 ユーザーのクエリに対して、PAXはプロンプトをエージェントに通し、一般的な知識と検証が必要な情報を厳密に区別します。応答に、広く一般的な知識と見なされない事実や主張（統計、最近の出来事など）が含まれる場合、PAXはエージェントが信頼できる最新の外部ソースを取得し、それに言及することを保証します。&#xA;疑似プロセス:&#xA;主張が一般的な知識でない場合 → 外部検索APIを実行する 結果を収集し、重要な各記述を関連する参照先に対応付ける 応答内に構造化されたプレースホルダーを挿入する（単なるURLや生の脚注ではない） 2. 確率的信頼度スコアリング PAXは人間の直感だけに頼りません。テキスト生成中に使われる内部確率を分析することで、言語モデルが回答の各部分を生成する際にどれだけ「確信していたか」を測定します。これにより、システムは各文、ひいては回答全体に対して数値の信頼スコアを割り当てることができます。したがって、低信頼度の箇所は自動的にフラグ付けできます。&#xA;疑似プロセス:&#xA;応答の各トークン/単語について、その選択に対するモデルの確率を取得する 文ごとに集約する 文ごとの信頼/信頼性スコアと全体スコアを作成する 3. 観測された一貫性 1つの回答を受け入れる代わりに、PAXはLLMに同じ質問を複数回行い、埋め込み（意味のベクトル表現）を使って、もっともらしい応答間の一致度と一貫性を測定します。&#xA;高い一致は、その回答が堅牢/安定していることを示唆する 大きく異なる応答は警告サインであり、リスクまたは曖昧さの可能性を示す 疑似プロセス:&#xA;質問をLLMに複数回送信し、応答を収集する 出力間の意味的類似度スコアを計算する ユーザー向けに「一貫性スコア」を報告する 4. 自己評価 PAXは必要に応じて、別のLLM（またはアンサンブル）に全体のやり取り、引用、確率スコアをレビューさせ、数値（0-1）と説明的な解釈の両方として最終判断を下させます。これにより、自己内省のメタ層が加わります。&#xA;疑似プロセス:&#xA;会話/レポートを評価エージェント（別モデル）に入力する エージェントが事実性、一貫性、引用の整合性、信頼度を批評する 監査可能性のために説明付きの最終信頼スコアを出力する インタラクションの流れ PAXのインタラクションの流れは次のとおりです。&#xA;ユーザーがプロンプトを送信する。 PAXエージェントがプロンプトを処理し、必要に応じて外部APIを参照し、構造化された帰属付きの応答を構築する。 システムは以下を行う。 文ごとの信頼/信頼度スコアを割り当てる どの部分がどの証拠によって裏付けられているかを記録する 必要に応じて、自己省察的な要約と信頼スコアを生成する その結果、数値スコアとリンクされた参照を備えた、非常に透明性の高い回答が得られ、さらに全ての裏付けデータの監査可能な記録も残ります。</description>
    </item>
    <item>
      <title>AIによるTARSを用いたペネトレーションテスト</title>
      <link>https://mehmetmhy.com/langs/ja/tars/</link>
      <pubDate>Fri, 23 Aug 2024 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/tars/</guid>
      <description>概要 TARSは、AIエージェントを使用してサイバーセキュリティのペネトレーションテストの一部を自動化しようとする試みです。このプロジェクトは、私が共同設立した Osgil というスタートアップのための主要なMVPとして当初は作られました。現在は、サイバーセキュリティの専門家を支援するために設計されたオープンソースプロジェクトです。リポジトリは こちら をご覧ください。&#xA;デモ 以下は、TARSが実際に動作している簡単なデモです。投資家向けに प्रस्तुतした完全なデモについては、ご連絡ください。&#xA;長期的なビジョン AIエージェントベースのツールを構築して、サイバーセキュリティのペネトレーションテストを自動化することで、インテリジェントな防御ソリューションを提供します。要するに、計画は次のとおりです。&#xA;既存のサイバーセキュリティツールを適切に使用して、脆弱性スキャンと脅威分析を行えるエージェントを構築する。 そのようなエージェントを最適化し、単にスキャンや脅威報告を行うのではなく、脆弱性の特定とパッチ適用を自動化する。 攻撃者に対する対抗策をリアルタイムで生成できる反応型防御システムを構築する。 （長期的には）高度で動的かつ自動化されたAI駆動の攻撃が容易に展開される未来に備えるためのツールを開発する。 歴史 TARSは、2024年4月下旬に私が共同設立した Osgil というスタートアップ向けに開発されました。当初は企業顧客向けに開発されましたが、その後他のプロジェクトへ移行し、2024年8月にTARSをオープンソース化しました。&#xA;現在の状態 現在、TARSは次のツールを利用できます。&#xA;Nettacker RustScan Zed Attack Proxy (ZAP) Ping Nmap 基本的なWebブラウジング (Brave API) フロントエンドは Streamlit を使用していますが、Streamlitは非常に制限が多いため、代わりにReactを使用したより良いフロントエンドの構築を始めています。また、TARSが目指しているような、より高度なタスクを実行し始めると現在かなり制限があるCrewAIを使っているため、TARSの推論能力と問題解決能力をどのように改善できるかを確認するために、いくつかの論文も調べています。現在は、特定の作業ではCrewAIの使用に依拠しつつ、LangGraphの活用により重点を置いています。&#xA;マーケティング戦略 TARSが当初企業顧客向けだったとき、私たちのマーケティング戦略は、開発者、事業主、投資家と話せるサンフランシスコ・ベイエリアのコンベンション、ハッカソン、イベントに参加することでした。また、LinkedInとEmailを使って人々に冷たくアプローチしていました。しかし、プロジェクトをオープンソース化して以来、TARSの主なマーケティング戦略はTwitter（X）、Hacker News、Redditを通じたものです。その中でも、Redditが最も効果的でした。</description>
    </item>
    <item>
      <title>シェルの中のClaude</title>
      <link>https://mehmetmhy.com/langs/ja/cla/</link>
      <pubDate>Mon, 08 Jul 2024 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/cla/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;概要 AnthropicのLLMモデルと簡単にやり取りするために設計された、シンプルなCLIチャットツールです。ClaはChaプロジェクトをベースにしています。&#xA;経緯 私は、ターミナルで最高のLLMモデルと簡単にやり取りするためにChaを開発しました。そしてそれは、私がシェルとやり取りする方法を完全に変えました。これは、Twitter/XとRedditで宣伝して公開してから数か月で、このプロジェクトが30以上のスターを獲得したことからも分かります。しかし、2024年6月21日、Anthropicは最新の高度なモデルであるClaude 3.5 Sonnetを公開しました。AnthropicのProプランを通してこのモデルを試した後、私はすぐに、Claude 3.5がOpenAIのGPT-4モデルよりもコーディングにおいてはるかに優れていることに気づきました。そう判断したのは、Claude 3.5によって完全で複雑なReactアプリを構築できたからです。これは、GPT-4oのリリース後であってもGPT-4ではできなかったことでした。むしろGPT-4oは、元のGPT-4モデルと比べてもさらに劣るモデルだったと私は言えます。これを踏まえ、私はClaude 3.5がGPT-4よりもコーディングにおいてはるかに優れていたため、Anthropicのモデル向けにChaのように動作するClaを作ることを決めました。&#xA;デモ Twitter/X デモ #1&#xA;Chaとの違い Claは、私の前回のプロジェクトであるChaを大きくベースにしています。しかし、ClaはOpenAIのモデルではなくAnthropicのモデルを使用します。また、ClaはAnswer Search、URLページスクレイピング、YouTubeスクレイピング、画像生成をサポートしていません。したがって、基本的なCLIチャットインターフェース、複数行サポート、そして非対話型チャットモード（CLIまたはファイル経由）のみをサポートします。&#xA;また、AnthropicからAPIキーを取得する必要があります。これを行うには、Anthropicのチュートリアルに従うか、AnthropicのAPIキーのページを確認してください。&#xA;マーケティング 現在、私はこのプロジェクトのマーケティングを、自分の個人メインアカウントを通じてTwitter/XとRedditでのみ行いました。最も成果があったのはRedditで、特にAnthropicのサブレディットを通じてでした。このマーケティングを通じて、1週間でGitHubスターを3つ獲得しました。私はClaを2024年7月のごく初め、たしか7月1日か2日ごろにリリースしました。&#xA;結論 AnthropicのClaude-3.5モデルがOpenAIのGPT-4モデルを上回ったこと、特にコーディングの面で上回ったことには、私も驚きました。このため、私はClaを、Anthropicのモデル向けにChaのように動作するものとして作りました。これを行って以来、私はClaを50%の時間、Chaを残りの50%の時間使うようになりました。全体として、このプロジェクトがどう進むのか楽しみです。</description>
    </item>
    <item>
      <title>GamerCraft</title>
      <link>https://mehmetmhy.com/langs/ja/gamercraft/</link>
      <pubDate>Thu, 11 Apr 2024 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/gamercraft/</guid>
      <description>TL;DR 2013年にMinecraftをプレイし始め、ゲームが大好きです！ 2021年の夏に、GamerCraftというバニラJava EditionのMinecraftサーバーを立ち上げました。 セキュリティインシデントのため、GamerCraftは現在、待機リストとレビュー制の参加プロセスで運営されています。 参加するには、私のソーシャルメディアにメッセージしてください。 GamerCraftは、ノスタルジアと仲間意識という核心的価値を保ちつつ、コミュニティを拡大することを目指しています。 背景 私のMinecraftの冒険は2013年にJava Editionで始まり、約98%の時間をシングルプレイヤーモードで過ごしました。残りはHypixelなどの人気マルチプレイヤーサーバーでプレイしていました。しかし、2014年に高校に集中するためゲームをやめることにし、アカウントを妹に譲渡しました。2018年には大学の学部生として、友人のMinecraftサーバーでプレイすることが大学での友情を築く優れた方法となりました。その年、妹が私のアカウントを返してくれ、Minecraftへの興味が再燃しました。&#xA;2018年から2021年の間、友人たちが私たちのためにサーバーをホストしてくれ、楽しかったですが、これらのサーバーは一時的で、数か月で消えてしまうことが多かったです。2019年後半から2020年初めにかけて、これらのサーバーでのプレイとMinecraft自体をやめました。&#xA;2021年の夏、YouTuberのFitMCが、悪名高いアナーキーサーバー2B2Tについてのストーリーを共有してくれたことで、Minecraftへの情熱が再燃しました。リセットされないワールドと混沌とした性質で知られる2B2Tは、友人と自分のために永続的なサーバーを作りたいというインスピレーションを与えてくれました。&#xA;2B2Tに触発され、私はGamerCraftを立ち上げました。このサーバーは、人々が永続的な思い出を作り、時間とともに再びつながることを支援するよう設計されています。&#xA;2B2Tと同様に、GamerCraftはワールドをリセットせず、継続的な友情とノスタルジアを育みます。X線透視のためのハッククライアントの限定的な使用や、特定のブロック/アイテムを複製するためのレッドストーン技術は許可しますが、フルクリエイティブモードレベルの行為やハッキング、破壊行為は厳格に禁止しています。&#xA;GamerCraftの開始 当時の最新リリースであるJavaバージョン1.17を選び、サーバープラグインやモッドなしのバニラ体験を求めました。ルーターでポート転送を行い、PC上でサーバーをホストし、大学キャンパス全体に宣伝しました。この取り組みは、テキストやDiscordで友人にメッセージを送ることや、宣伝ポスターを作成することを含んでいました。数週間以内に、10〜20人のプレイヤーからなるコミュニティを築き、そのうち5人が常連となりました。&#xA;待機リストへ移行 当初、サーバーは「オープンアクセス」でしたが、2021年7月15日のインシデントにより、待機リストシステムへ切り替えることになりました。ハッカーの「txt_385_787_6969」および「VariableSix7056」は、レギュラープレイヤーから盗んだ木材とハッククライアントのエクスプロイトを使用して、空中に木ブロックを大量にスパムしました。その結果：&#xA;これに対応するため、サーバーを一時的に停止し、制御されたアクセスシステムで再開しました。新規プレイヤーは既存メンバーからの紹介、または簡単なレビュー手続きを行うために私に連絡することで参加できます。もしGamerCraftへの参加に興味があるがメンバーを個人的に知らない場合は、私のソーシャルメディアへご連絡ください。相談に応じます！&#xA;GamerCraftの現在の状況 2024年3月現在、GamerCraftは信頼性向上のためにHostingerへ移行しました。サーバーは復旧し、スムーズに稼働しており、定期的に2〜4人のアクティブプレイヤーが参加し、常に新しい参加者を歓迎しています！私と友人、そして他のメンバーは一貫してプレイし、共有する素晴らしい瞬間や会話を楽しんでいます。GamerCraftは優れたストレス解消手段となり、現在は米国全土、場合によっては世界中に散らばっていても、つながり続けることができます。大学時代に築いた絆を保つ方法です。&#xA;GamerCraftの未来 GamerCraftの目標は変わりません…古い友人が再びつながり、大人になることのストレスから一時的に逃れることができる永続的な世界を提供することです。サーバーをすぐに閉鎖する計画はなく、私たちはノスタルジアと仲間意識を大切にしながらコミュニティを拡大することにワクワクしています。</description>
    </item>
    <item>
      <title>2014年の情熱プロジェクト</title>
      <link>https://mehmetmhy.com/langs/ja/passion-project/</link>
      <pubDate>Sun, 31 Mar 2024 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/passion-project/</guid>
      <description>天文学者（フェルメール） 警告 このプロジェクトは2014年春、私が14歳で中学校に通っていたときに作成されました。かなり古いものであり、当時の私は今とは違う人間でした。したがって、綴りや文法の誤りがある可能性があることをご了承ください。加えて、テーマが非常に複雑で当時私は中学生に過ぎなかったため、作品が無意味で欠陥があるように見えるかもしれません。&#xA;背景 2014年春、私は中学校の最後の数か月を過ごしていました。中学校を締めくくるための最終プロジェクトは、情熱プロジェクトでした。私の記憶では、情熱プロジェクトは数か月にわたるプロジェクトで、テーマを自分で選び、それを調べ、学んだことを発表するというものでした。&#xA;この時期、私の夢／目標は量子物理学に進み、いずれは量子コンピュータを構築し商業化する会社を立ち上げることでした。この起業家としての夢がどこから来たのかははっきりしませんが、当時から何らかの形で常に存在していました。&#xA;このことと、量子物理学に進みたいという私の強い意欲を踏まえ、私の情熱プロジェクトは**量子テレポーテーション（QT）**のテーマにすることにしました。量子テレポーテーション (QT)は、送信者から受信者へ異なる場所で量子的情報を移動させることを指します。&#xA;このプロジェクトでは、私は狂ったように取り組みました。毎日何時間も研究に費やしていたのを覚えています。YouTube（ユーチューブ）を何十時間も見ました。地元の図書館に行って量子物理学に関する本を借り、それらの本を何十時間も読みました。また、この複雑なトピックを理解しようと主にWikipediaを中心にウェブを何十時間も閲覧したのも覚えています。&#xA;この間、主に手書きで何ページにもわたるノートを取りました。これらのノートは非常に詳細で丁寧に書かれていました。私は今でもそれを誇りに思っています。また、論文の執筆やプレゼンテーション作成にも多くの時間を投資しました。&#xA;何週間／何か月もこのプロジェクトに取り組んだ後、クラスメートと一緒に私たちは先生方や親、同級生の前で作品を発表する機会がありました。最終的に、このプロジェクトでAをもらったことを覚えており、この量子物理学への情熱を高校へ持ち込みました。&#xA;高校時代、いくつかの物理の授業を受けた後、自分が必ずしも物理が得意ではないことに気づきました。できないことはなく、楽しもうとしましたが、それは私にとって自然なものではありませんでした。複雑なトピックを理解するために何時間も費やしても、ほとんどのクラスメートは同じことを1時間未満でやってのけるのを見ていました。この間、大学で物理を学ぶとどうなるかも調べ、自分が物理で優れた結果を出すには程遠いと判断しました。これらすべてと、AP物理学Cの最初の学期で唯一のCを取ったこともあり、私は量子物理学を職業として追求しないことに決めました。人生で本当に成功するには、楽しめてかつ得意なことをやるべきだと思います。私は物理を楽しみ尊敬していますが、得意ではありません。そこでこの時期に機械工学を試し、高校でコンピュータサイエンスを試しました。結局、大学を始める頃にはコンピュータサイエンスに落ち着き、それを専攻しました。&#xA;しかし、このプロジェクト全体は今でも私が好意的に振り返る素晴らしい経験でした。非常に早い段階で自分が将来どのようなキャリアを追求したいかを考え始めるきっかけになりました。また、何か面白いことを学び、学び作ることが好きだということを思い出させてくれました。&#xA;コンテンツ ノート.pdf 私がテーマを調査している間に取ったノート。手書きでPDFにスキャンしたものです。&#xA;エッセイ.pdf 教師に提出して採点されたプロジェクトの最終エッセイ。&#xA;プレゼンテーション.pdf 私が作成したプレゼンテーション用のPowerPoint。</description>
    </item>
    <item>
      <title>Cha ターミナルチャット</title>
      <link>https://mehmetmhy.com/langs/ja/cha/</link>
      <pubDate>Tue, 12 Mar 2024 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/cha/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;イベント 2025年8月23日: Cha はもはやメンテナンスされていません。積極的に開発されている後継は Ch で、同じコア機能を提供する軽量な Go 実装です。なぜそしてどのように Ch へ移行したかを理解するために、移行ブログ をご覧ください。&#xA;概要 Cha は OpenAI の LLM モデルとインターフェースするためのシンプルな CLI チャットツールです。似たようなプロジェクトは存在しましたが、自分のニーズに合うものが見つからなかったため、このツールを作りました。リリース以来毎日使っています。始めるには、上部にリンクしてある GitHub リポジトリを確認してください。&#xA;機能 OpenAI の LLM モデルとやり取りするための基本的な CLI チャットインターフェース。 指定されたリンクのウェブスクレイピング機能（JavaScript によるスクレイピングをサポート）。 動画の文字起こしを抽出するための YouTube スクレイピング機能。 CLI へのコピー＆ペーストを容易にするマルチライン対応。 OpenAI の画像モデルを使用した画像生成機能。 端末上に直接画像を表示するために CLImage を使用します。 インタラクティブモードと非インタラクティブモードの両方をサポート。 デモ 現在のメインChaデモ (2024年3月19日)&#xA;メインChaデモ (2024年3月6日)&#xA;メインChaデモ (2024年3月1日)&#xA;マーケティング Hacker News 投稿: 1, 2 Twitter/X ツイート: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 </description>
    </item>
    <item>
      <title>MongoDBからPostgresへ</title>
      <link>https://mehmetmhy.com/langs/ja/db-migration/</link>
      <pubDate>Wed, 06 Mar 2024 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/db-migration/</guid>
      <description>これは何についてですか？ ある企業のポジションの面接中に、次の質問に答えるよう求められました：『これまでに解決した最も難しい問題を説明してください』。要約すると、私が解決した最も困難な問題は、2023年にeBayで働いていたときに、eBayの大規模な内部プロジェクトの一つをMongoDBからPostgresへ移行したことです。しかし、この質問は私にその困難な問題をどのように解決したかを考えさせ、開発者としての旅を振り返る機会となりました。そのため、私はその質問に対して非常に詳細かつ徹底的な回答を書き、ウェブサイトで共有したいと思いました。&#xA;質問は何でしたか？ これまでに解決した最も難しい問題を説明してください。4段落未満で回答し、以下を教えてください：&#xA;あなたがしたこと 難しかった点 この経験から学んだこと その結果としてどのように成長したか 私の回答は何でしたか？ 1 - あなたがしたこと 現在、私のキャリアにおいて最も困難だった問題は、eBayでの現在のポジションでの業務中に発生しました。現在、Hitachi Vantaraを通じてeBayと契約しており、Storage Management System（STMS）という内部ツールの開発と保守を担当しています。STMSは、eBayのService &amp;amp; Storage Infrastructure（SSI）チームがeBayのデータセンター全体のデバイスを監視・管理するために使用するツールです。エンジニアはSTMSを使って多数のアレイ、スイッチ、ホスト、ディスクグループ、クラスター、データベースのメトリクスを監視できます。また、スイッチやアレイのアラート処理や、ホスト割り当てなどの高度なタスクを容易に実行できるようになっています。STMSは1分間に150万件以上のメトリクスを取り込み、eBayのデータセンターにある数十〜数百のアレイ、スイッチ、ホスト、ディスクグループ、クラスターをカバーしています。これはSSIチームがeBayのストレージインフラを監視・管理するための重要なツールであり、eBayのコアサービスとビジネスモデルにとって不可欠です。以上を踏まえると、eBayで働いていた期間に解決しなければならなかった最も難しい問題は、STMSをMongoDBデータベースからPostgresデータベースへ移行することでした。&#xA;2 - 難しかった点 この問題が難しかった理由は、MongoDBとPostgresが根本的に異なるデータベースであることです。MongoDBはドキュメント指向データベース（NoSQL）で、データはコレクション内のJSONとして保存されます（書類キャビネットの中の文書のように）。一方、Postgresはリレーショナルデータベース（SQL）で、データはテーブルの行として保存されます（スプレッドシートのように）。さらに、STMSのバックエンド全体はJSONデータの処理と管理を前提に構築されており、データベース操作にはMongoDB専用のパッケージのみが使用されていました。また、この移行ではSTMSが内部ツールとして極めて重要であるため、ダウンタイムが許されず、ほぼすべての機能が継続して動作しなければなりませんでした。移行全体は数か月以内に完了させる必要があり、ダウンタイムゼロ、かつ実行計画も明確ではありませんでした。さらに、事前にPostgresの経験がほとんどなく、同僚全員と同様に、NoSQLからSQLデータベースへの大規模レガシーコードベースの移行経験もありませんでした。&#xA;3 - この経験から学んだこと MongoDBからPostgresへのSTMSコード移行は、ほぼすべての機能と機能性を維持しながらダウンタイムなしで成功裏に完了しました。これには広範な調査、学習、テスト、トラブルシューティングが必要でした。リレーショナルデータベースでより効果的に動作するようにデータ構造を再設計し、Postgresと統合できなかった既存のパッケージに代わる新しいパッケージを開発しました。全体として、移行はシームレスに進み、実際の欠陥がほとんどなく、期待を上回る結果となりました。このプロセスを通じて多くを学びました。技術的には、Postgres、SQL、構文木、ORM、Sequelize、Prisma、クエリビルダー、等価性チェック、プライマリ-スタンバイデータベース構成、データベース関連のユニットテストについての理解が深まりました。根本的には、複雑な問題をより効果的に小さな部分に分解し、それらの部分に対して有効な解決策を実装する方法を学びました。さらに、多くの制約や挫折、未知の要素に直面しながらも、このプロジェクトを最後まで導くリーダーシップを身につけました。&#xA;4 - その結果としてどのように成長したか 大学時代はロボティクスでキャリアをスタートさせましたが、eBayでの仕事を得たことでウェブ開発へと転向し、全く経験のない分野に足を踏み入れました。この転換は、常に学び続け適応することを基盤としたキャリアの土台となりました。STMSをMongoDBからPostgresへ移行するという課題は、私のキャリアにおける大きな飛躍であり、プロとしての成長に大きく寄与しました。単にデータベースの理解を深めたり問題解決能力を高めたりするだけではありませんでした。このプロジェクトは新たな領域へと私を押し込み、綿密な計画とダウンタイムゼロへのコミットが求められました。大規模なデータベース移行の経験がない状態で移行をリードする中で、明確なコミュニケーション、チームワーク、そして複雑な課題を管理しやすい部分に分解することの重要性を学びました。この経験は技術スキルを広げただけでなく、自信も高め、より野心的な目標やプロジェクトに向かう原動力となりました。このキャリアのマイルストーンは、開発者・リーダーとしてだけでなく、問題解決者としての成長を示し、未知を受け入れ成功することが個人・プロフェッショナルの成長の鍵であることを証明しました。&#xA;結論は何ですか？ 私の回答により、会社の面接プロセスの第2段階へ進むことができ、チームの開発者の一人と楽しい会話を交わす機会が得られました。これはとても良い経験でした。しかし主に、この課題はeBayでの在籍中に解決した最も挑戦的な技術的問題を振り返る機会を与えてくれました。これにより、開発者／エンジニアとしての成長を考え、新たなスキルを身につけ、複雑な問題に適応し解決する自信を高めることができました。</description>
    </item>
    <item>
      <title>MongoDBからPostgresへ</title>
      <link>https://mehmetmhy.com/langs/ja/mongodb_to_postgres/</link>
      <pubDate>Wed, 06 Mar 2024 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/mongodb_to_postgres/</guid>
      <description>注: このブログ記事は、私の MongoDB to Postgres (2024-03-06) と Sequelize vs. Prisma (2023-05-25) を統合したものです。元のブログは削除され、これら2つが本質的に同じ内容・情報を含んでいたため、このブログがその代わりとなりました。移行は 2023年3月初旬 に始まり、切り替えは 2023年11月中旬 に行われ、古いMongoDBシステムの全インスタンスは 2024年1月初旬 に完全に停止されました。&#xA;はじめに eBayで働いていた間、私は自分のキャリアの中で最も技術的に難しい問題に直面しました。それは、Storage Management System（STMS）をMongoDBからPostgresへ移行することでした。これは単なるデータベースの置き換えではなく、eBayのデータセンター全体で毎分150万件以上のメトリクスを取り込みつつ、ゼロダウンタイムと既存機能のほぼすべての維持を求められる、重要システムの完全なアーキテクチャ変革でした。&#xA;STMSとは何か？ Storage Management System（STMS）は、eBayのService &amp;amp; Storage Infrastructure（SSI）チームのための重要な社内ツールとして機能しています。これはeBayのデータセンター全体のデバイスを監視・管理し、エンジニアが次のことを行えるようにします。&#xA;数十台のアレイ、スイッチ、ホスト、ディスクグループ、クラスタからのメトリクスを監視する スイッチとアレイのアラート対応を行う ホスト割り当てのような高度なタスクを完了する 他のeBay社内サービスのリアルタイムデータにアクセスする STMSは、eBayの3つのデータセンターにまたがる70以上のアレイ、60台のスイッチ、1100台のホスト、900のディスクグループ、200のクラスタを管理しています。eBayのインフラにおける重要な役割を考えると、ダウンタイムや機能喪失は、会社の中核サービスや事業運営に直接影響します。&#xA;課題 なぜ移行が必要だったのか MongoDBからPostgresへの移行の決定は、軽率に下されたものではありませんでした。MongoDBは当初STMSにうまく機能していましたが、データ関係の複雑化と、より高度なクエリ機能の必要性により、Postgresのほうがこのユースケースに対する長期的な解決策として適していると判断されました。&#xA;この問題が難しかった理由 この移行の複雑さはいくつかの根本的な課題に由来していました。&#xA;1. データベースの根本的な違い&#xA;MongoDBとPostgresは根本的に異なるデータベースです。MongoDBはドキュメントベースのデータベース（NoSQL）であり、データはファイルキャビネットの中の書類のように、コレクションにJSONとして保存されます。Postgresはリレーショナルデータベース（SQL）であり、データはスプレッドシートのように、テーブル内の行として保存されます。&#xA;2. コードベースのアーキテクチャ&#xA;STMSのバックエンド全体は、データをJSONとして処理・管理するように構築されており、データベース操作にはMongoDBと専用に互換性のあるパッケージを使用していました。これは、単にデータベースを変えるだけでなく、アプリケーション全体がデータを扱う方法を再構築する必要があることを意味していました。&#xA;3. ゼロダウンタイム要件&#xA;社内ツールとしてSTMSが非常に重要であるため、移行中にダウンタイムは一切許されませんでした。システムは、全工程を通じて毎分150万件超のメトリクスを提供し続ける必要がありました。&#xA;4. 厳しいタイムラインと限られた経験&#xA;移行は数か月以内に完了しなければならず、当初は明確な実行計画もありませんでした。私も同僚も、NoSQLからSQLデータベースへ大規模なレガシーコードベースを移行した経験はなく、私はPostgresの実務経験も限られていました。&#xA;5. 規模と複雑さ&#xA;この移行では、36個のMongoDBコレクションを74個のPostgresテーブルへ変換する必要があり、関係性、インデックス、クエリ最適化を慎重に考慮しなければなりませんでした。&#xA;適切なORMの選定: Sequelize vs Prisma 最初の主要な決定の一つは、ORM（Object-Relational Mapping）ツールを選ぶことでした。私たちのコードベースはすでにMongoDB向けにMongooseを使うよう設計されていたため、ORMを使うことが最もスムーズな移行経路を提供すると考えられました。&#xA;要件分析 プロジェクトのニーズを慎重に分析した結果、私はあらゆるORMソリューションに必要な基本条件を定めました。&#xA;JavaScriptパッケージであること（コードの大半はJavaScriptで書かれていたため） Postgresとその主要機能のほとんどをサポートすること パフォーマンスが少なくともMongooseと同等、またはそれ以上であること オープンソースで保守されていること 候補 広範な調査の結果、私はSequelizeとPrismaという2つの主要候補に絞り込みました。Postgres用にDockerを使って包括的なテスト環境を構築し、私たちの最大かつ最も複雑なデータセットをドキュメント構造からテーブル構造へ変換しました。&#xA;テスト手法 各ORMについて、重要な操作全般でパフォーマンスを測定しました。</description>
    </item>
    <item>
      <title>ローカルLLMモデルのベンチマーク</title>
      <link>https://mehmetmhy.com/langs/ja/llm-speed-benchmark/</link>
      <pubDate>Fri, 15 Dec 2023 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/llm-speed-benchmark/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;背景 私は、Anarchy (YC W23)でパートタイムのエンジニアリング・インターンとして働いていた期間に、LLM Speed Benchmark（LLMSB）を構築しました。LLMSBは、LLMモデルの性能を評価するためのベンチマークツールです。HuggingFace の transformers ライブラリを使用してLLMモデルを読み込み・実行し、以下を測定します。&#xA;総実行時間 1秒あたりのトークン数 一般的なハードウェア仕様 CPU使用率（現在の周波数と、時間経過に伴う各コアの使用率%） RAM使用率（RAMとスワップの時間経過） GPU使用率（負荷、メモリ使用量、および温度の時間経過） HERE は、H100 上で動作する codellama-13b-oasst-sft-v10 モデルのベンチマーク実行例です。私は個人的に、8 GB の VRAM を持つ Nvidia RTX 2070 Ti を所有しています。残念ながら、ほとんどの現代的な LLM モデルにとって、8 GB の VRAM ではモデルを扱うのに十分ではありません。そのため、私は RunPod を使って GPU を「レンタル」し、特定のモデルでベンチマークを実行しました。&#xA;これが LLMSB の背景/誕生の物語です。このプロジェクトはオープンソースなので、コードを HERE で見ることができます。以下に、確認したい場合のためにリポジトリの README を掲載しました。&#xA;概要 🚧 LLM Speed Benchmark（LLMSB）は現在ベータ版（v0）です。本番環境では使用しないでください。使用する場合は自己責任でお願いします。現在も不具合を解消し、機能を改善している最中です。バグを見つけた場合や提案がある場合は、ISSUES までご報告ください。皆さまのフィードバックは非常に貴重です！&#xA;LLM Speed Benchmark（LLMSB）は、さまざまなハードウェアプラットフォームにおける LLM モデルの性能を評価するためのベンチマークツールです。その最終目標は、さまざまなシステム上での LLM モデルの性能を詳細に記録した包括的なデータセットを構築し、ユーザーが自分のプロジェクトに最適な LLM モデルをより効果的に選べるようにすることです。&#xA;制限事項 LLMSB は v0 のため、いくつかの制限があります。&#xA;Debian 系のオペレーティングシステム上でのみ動作するよう設計されており、Windows での動作は想定していません。これは、LLMSB が内部的に neofetch と nvidia-smi を使ってメトリクスを取得しており、ファイルパスのロジックが Unix 系オペレーティングシステムに基づいているためです。 メトリクスの記録方法の都合上、メトリクス収集器が1回の収集に最大1秒かかる場合があります。つまり、最速でもハードウェアメトリクスを1秒ごとに収集することになります。 LLMSB はモデルの読み込みと実行に HuggingFace のみを使用します。これは現時点では動作しますが、将来的には HuggingFace だけでなく複数のフレームワークを LLMSB がサポートすることを目指しています。 現在、すべてのモデルは src/hf.</description>
    </item>
    <item>
      <title>InsightRedによるABMマーケティング</title>
      <link>https://mehmetmhy.com/langs/ja/insightred/</link>
      <pubDate>Thu, 19 Oct 2023 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/insightred/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;概要 InsightRedは、最新のRedditコメントを「ホット」でソートされたSubredditから抽出し、あなたのプロジェクトや製品に潜在的な興味を示すユーザーを特定するLLM駆動のアカウントベースマーケティング（ABM）ツールです。これにより、Reddit上で高価値のユーザーを特定し、あなたの製品/プロジェクトの初期ユーザーを獲得するのに役立ちます。このプロジェクトは、ANARCHY 2023年10月ハッカソンのために構築されました。&#xA;発表 2023年10月19日 このプロジェクトのフォローアップとして、Anarchyの2023年10月ハッカソンで1位を獲得したことを発表できることを嬉しく思います！&#xA;テキストモードでメッセージを表示するにはここをクリックしてください（Discordのフォーマットのために修正されています） @everyone **👑 ハッカソン 👑** 第二回アナーキー・ハッカソンの受賞者を発表できることを非常に嬉しく思います： 🥇 &amp;#34;@Ben Zimmerman [T3CH3Y]&amp;#34;, @Mehmet, および &amp;#34;@Ananya Aithal&amp;#34; のInsightRed! https://www.youtube.com/watch?v=xhKwnKxmg5k 🥈 @partho と @Karan のDistillClassifier https://www.loom.com/share/d7e7c8e12dd14bcabdf41051433901a1?sid=900cb491-8117-4530-a131-d87eeca1ca6f 本当に **素晴らしい仕事を皆さん** @MathYouF と私はすべての提出物に非常に感銘を受けました。 特別な言及は以下の通りです： 1. @B3LOL, @alastine , および @AndrewKamau のWiE: https://youtu.be/V8gqCvgRcpk 2. &amp;#34;@Mert Bozkir | mertbozkir&amp;#34; のDoc-String-Ify: https://www.loom.com/share/274565d0ddec417783e739ee728654d3?sid=6bb1b07a-f06a-4ec3-82c6-1d7ba6eae0d3 これらのプロジェクトから得たフィードバックは非常に貴重で、私たちはすべての部分を修正するために取り組むつもりです🦜 私たちは賞のためにチームに個別に連絡を取ります。さらに、これらのプロジェクトは素晴らしいものであり、次の数週間でこれらの素晴らしいプロジェクトを紹介するために取り組みたいと考えています。 デモ InsightRedのコンポーネント 🧩 コレクター コレクターは、指定されたSubredditから最新のReddit投稿とその投稿のコメントをRedditのAPIを使用して収集します。収集後、コレクターは収集したデータをローカルのSQLiteデータベースに保存します。これは、Reddit APIを使用するためにpythonパッケージのprawを使用し、ローカルのSQLiteデータベースでCRUD操作を行うためにSQLAlchemyを使用することで簡単に行えます。&#xA;🧩 ベクトライザー ベクトライザーは、ローカルのSQLiteデータベースをチェックして、ベクトルデータベースに保存されていないコメントを確認します。コメントのリストを取得した後、OpenAIの「text-embedding-ada-002」モデルを使用して投稿+コメントの埋め込みを作成します。この埋め込みはベクトルデータベースのインデックスとして使用され、JSON形式のメタデータも作成されます。インデックスとメタデータは、その場合はパインコーン（クラウドベース）にアップロードされます。アップロード後、ローカルのSQLiteデータベースは、同じデータを再度パインコーンにアップロードしないように更新されます。これは、ベクトルデータベースに対するCRUDオプションを作成するためにパインコーンのpythonクライアント（pinecone-client）を使用し、埋め込みプロセスを処理するためにLangChainを使用することで行われます。&#xA;🧩 インターフェース インターフェースは、ユーザーがツールと対話するために使用されるものです。この場合、インターフェースはCLIです。インターフェースには、Retrieval-Augmented-Generation（RAG）の実装があります。ユーザーは製品の説明、チェックするSubredditのリスト、およびいくつかのフィルターを提供します。このコンテキストを考慮して、コレクターが呼び出され、その後ベクトライザーが呼び出されます。これらの2つのサービスが処理を終えた後、入力された製品の説明を使用してベクトルデータベースで類似の検索を行います。トップの結果と製品の説明は、最終的なプロンプトを作成するためのプロンプトテンプレートに供給されます。最終的なプロンプトはOpenAIのGPT-4モデルに送信され、最終結果がユーザーに提示されます。これらの結果は、提供された製品の説明に基づいて、Redditユーザーが興味を持つ可能性が高いすべてのRedditコメントのリストになります。このコンポーネントは、コレクターとベクトライザーのコメントを使用し、AnarchyのLLM-VMを使用してOpenAIのGPT-4モデルにクエリを処理することで機能します。&#xA;チームメンバー メフメット・イールマズ ベン・ジマーマン アナニャ・アイタル 注目すべき外部クレジット casta (Hacker News)</description>
    </item>
    <item>
      <title>DALL-E 2によるAIアート</title>
      <link>https://mehmetmhy.com/langs/ja/dalle-2-images/</link>
      <pubDate>Thu, 20 Jul 2023 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/dalle-2-images/</guid>
      <description>概要 DALL•E 2 は自然言語の記述に基づいて画像を生成するツールです。これはOpenAI によって2022年4月に作られました。私は2022年8月に使用を開始し、それ以来何千もの画像を生成してきました。以下は私がDALL•E 2を使って生成した最高の画像です。&#xA;画像 以下には36枚の画像が表示されています。すべてOpenAIのDALL•E 2によって完全に生成されたものです。 各画像にはそれを生成したプロンプトが付いています。プロンプトが &amp;lsquo;variation - prompt unknown&amp;rsquo; と表示されている場合、それはその画像が別の画像のバリエーションであり、元のプロンプトを簡単に特定できなかったことを意味します。&#xA;色鮮やかな鳥が飛んでいる表現豊かな油絵&#xA;色鮮やかな鳥が飛んでいる表現豊かな油絵&#xA;バリエーション - プロンプト不明&#xA;池にいる魚の版画&#xA;花の油絵&#xA;ズジスワフ・ベクシンスキによる、太陽が希望を運ぶ陰鬱な現実を描いた油絵&#xA;アルベルト・アインシュタインが描きそうな絵&#xA;宇宙のコンピュータの油絵&#xA;エロルズ・テーラリングの美しい油絵&#xA;バリエーション - プロンプト不明&#xA;宇宙でコンピュータを組み立てるロボットのモダンな絵画&#xA;90年代のコンピュータをベイパーウェーブ風に&#xA;スタジオジブリ&#xA;ズジスワフ・ベクシンスキによる陰鬱な現実を描いた油絵&#xA;ズジスワフ・ベクシンスキによる、太陽が希望を運ぶ陰鬱な現実を描いた油絵&#xA;複雑なパターンから生成されたLシステムの油絵&#xA;古典的なスタイルのドゥーム・ガイの油絵&#xA;本の図書館を管理するロボットの油絵を作ってください。&#xA;収集家の油絵を作ってください&#xA;浮遊する島の城&#xA;饗宴の間にワインを飲んでいるローマのシンポジウムにいる動物たちのモザイク&#xA;完全に黒い背景の宇宙のブラックホールの油絵&#xA;ズジスワフ・ベクシンスキによる油絵&#xA;風になびく鬣を持つ、ジャンプ中の濃い茶色の雄馬の油絵&#xA;顔がモニターの人間のようなロボットの油絵を作ってください。このロボットをPixelのスタジオが作りそうなものにしてください。モニタを付けて&#xA;コロラドのロッキー山脈の美しい油絵&#xA;コロラドのロッキー山脈の美しい油絵&#xA;ズジスワフ・ベクシンスキによる、太陽が希望を運ぶ陰鬱な現実を描いた油絵&#xA;ズジスワフ・ベクシンスキによる陰鬱な現実を描いた油絵&#xA;ウィンダム・ルイスがまだ生きていたら作りそうな何か&#xA;新世紀エヴァンゲリオンの油絵を作ってください&#xA;早朝に紫色の窓のある白い家の前に座っている3匹の猫の油絵&#xA;コロラドのロッキー山脈の美しい油絵&#xA;エロルズ・テーラリングの美しい油絵&#xA;ズジスワフ・ベクシンスキがまだ生きていたら作りそうな何か&#xA;スクルージ、私のアヒルが葉巻を吸っている油絵</description>
    </item>
    <item>
      <title>私のポートフォリオウェブサイト</title>
      <link>https://mehmetmhy.com/langs/ja/portfolio-website/</link>
      <pubDate>Fri, 07 Jul 2023 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/portfolio-website/</guid>
      <description>概要 2023年、私はようやくプロとしてのキャリアでの自分の仕事のすべて、あるいはほとんどを掲載する個人ウェブサイトを作ることに決めました。私は2022年にコンピュータサイエンスの学士課程を修了しており、ソフトウェア業界で2年以上働いています。したがって、共有する素材がありました。私の個人ウェブサイトの主な目的は、自分の作品をアーカイブし、最終的には構築と学習のプロセスを記録することです。また、LinkedIn、GitHub、GitLab、Twitterなどのソーシャルのすべての中央の場所としても機能します。&#xA;クレジット このウェブサイトのデザイン/テーマに関するすべてのクレジットはSidと彼のhugo-blog-awesomeプロジェクトに帰します。ソーシャルアイコンの作成に関しては、Aditya Telangeがhugo-PaperModプロジェクトで行った仕事のおかげでクレジットを差し上げます。&#xA;仕組みは？ このウェブサイトはHugoという静的サイトジェネレーターを使用して生成されています。コードやコンテンツの大部分はHTML、CSS、JavaScript、Markdownで書かれています。すべてのコードはGitHubでホストされており、サイト自体はVercelでホストされています。ドメイン mehmetmhy.com はGoogle Domainsで購入しました。このサイトの開発をスピードアップするために、hugo-blog-awesomeというHugoテーマを使用し、そのテーマをこのrepoにフォークして、私のユースケースに合わせてサイトを少し使いやすくするように改変しました。以下は私の個人ウェブサイトのワークフローを示す簡単な図です：&#xA;今後の計画？ 年の間、時間ができたときに、新しいプロジェクトやキャリアの変化に合わせてこのサイトを更新し続けます。また、このサイトの構造は1〜2年間は維持する予定です。しかし、いつかは単なる静的サイトではないようにウェブサイトを再構築したいと考えています。フロントエンド開発は不得意なので、もっとフロントエンド開発を学び、サイトをより動的にし、より高度な機能をサポートするように再構築したいと思っています。</description>
    </item>
    <item>
      <title>なぜ私たちはNotify Cyberを構築したのか</title>
      <link>https://mehmetmhy.com/langs/ja/why-we-built-nc/</link>
      <pubDate>Mon, 29 May 2023 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/why-we-built-nc/</guid>
      <description>概要 Notify-Cyber (NC) は、複数のソースからサイバーセキュリティニュースを集約し、それらの記事を要約してシンプルなニュースフィードに一覧表示するウェブサイトです。サイバーセキュリティの風景を把握するための迅速な読書体験を提供します。NCは、Mehmet Yilmaz（私）とDylan Eckによって共同開発されました。私はバックエンド開発を担当し、Dylanはフロントエンドの実装を担当しました。ぜひこちらでチェックしてください！&#xA;この記事は、2023年5月29日にMediumに投稿されたもので、Notify-Cyberとその創設の背後にある動機についての洞察を提供します。元の記事は、無知から準備へ：Notify-Cyberでサイバーセキュリティの風景をナビゲートというタイトルで、私、Mehmet Yilmazによって書かれ、@notify-cyberの下に投稿されました。元のタイトルは長すぎるため、私はこのブログの再アップロードのためにタイトルを短縮しました：なぜ私たちはNotify-Cyberを構築したのか&#xA;概要 重要なサイバーセキュリティの脅威は、壊滅的になるまで一般の人々に気づかれないことが多く、認識のギャップを浮き彫りにしています。 ChatGPTのような生成AIツールが登場する中、サイバーセキュリティニュースや脆弱性について情報を得ることがますます重要になっています。 Notify-Cyberは、さまざまなソースから最新のサイバーセキュリティニュースを集約し、一般の人々がサイバーセキュリティの脅威についてより意識を高めることを目的としたサービスです。Notify-Cyberにはこちらからアクセスできます：https://notifycyber.com/ Notify-Cyberは、関連するサイバーセキュリティの脆弱性についてタイムリーな通知を提供するパーソナライズされたメールアラートサービスを開始する予定です。待機リストにはwww.notifycyber.com/joinまたはこちらから参加できます。 記事 今日のデジタル世界では、サイバーセキュリティがこれまで以上に重要です。私たちは仕事からエンターテインメントまで、すべてのことにデバイスに依存しており、常にサイバー脅威に対して脆弱です。残念ながら、多くの人々は大規模なデータ漏洩や著名なランサムウェア攻撃など、壊滅的な事態になるまでサイバーセキュリティの問題に注意を払うことはありません。この認識の欠如は、個人を微妙でありながら同様に危険な脅威にさらすことになります。&#xA;そのような広く見過ごされていた脅威の一つが、AppleのSafariブラウザにおける「IndexedDB API情報漏洩」脆弱性でした。この脆弱性は、詐欺防止ソフトウェア会社FingerprintJSによって2021年11月に発見され、報告され、Safariウェブブラウザのみに影響を及ぼしました。この脆弱性では、ユーザーがこの脆弱性を利用するウェブサイトを訪れると、そのウェブサイトはさまざまなタブやウィンドウにわたるユーザーのブラウジング履歴にアクセスできるようになります。これにより、ウェブサイトは他のウェブサイトでの活動に基づいてユーザーを一意に特定し、正確に識別できる可能性があります。たとえば、Googleアカウントのように[1]です。この脆弱性は、2022年1月にAppleによって修正されました[2]。&#xA;IndexedDB脆弱性を示すFingerprintによるビデオ&#xA;その間に、私たちは多くのSafariユーザーがこの脆弱性に気づいていないことに気付きました。問題は最終的にThe Verge、The Hacker News、Macworld、TechCrunch、The Register、Screen Rant、SiliconANGLEなどのさまざまなニュースソースによって取り上げられましたが、私たちにとっては、一般の人々から十分な注目を集めていないと感じました。&#xA;2022年1月にこの脆弱性を発見した際、私たちは家族、友人、同僚と話し合いましたが、ほとんどの人が私たちが言及するまでこの脆弱性を知らなかったことに気づきました。その後、脆弱性について知った彼らは、問題が解決されたことを確認するまで、すぐに別のブラウザに切り替えました。&#xA;この出来事は、サイバーセキュリティのイベントや脆弱性に関する人々の一般的な知識の欠如を浮き彫りにしました。しかし、同時に、この分野での認識が限られているにもかかわらず、セキュリティとプライバシーに対する広範な関心と重要性が依然として存在することを示しました。個人が自分のデジタルセキュリティに責任を持ち、最新のサイバー脅威や脆弱性について情報を得ることが重要です。&#xA;ChatGPTのような生成AIツールの登場により、サイバーセキュリティニュースや脆弱性について情報を得ることがますます重要になっています。これらのツールは脆弱性を迅速に検出する可能性があり、以前に議論したような脆弱性の悪用が加速する可能性があります[3]。したがって、サイバーセキュリティニュースや新たな脅威について最新の情報を得ることは、これまで以上に重要です。&#xA;タイムスタンプ00:23:00-00:23:31および00:23:31-00:35:48で、Tristan HarrisとAza Raskinがサイバーセキュリティの分野におけるAI技術がもたらす潜在的なリスクを示しています。&#xA;自分を守るためには、日常的に使用しているソフトウェアに関連するサイバーセキュリティイベントについて情報を得ることが不可欠です。ここで私たちのプラットフォーム、Notify-Cyber（www.notifycyber.com）が役立ちます。Notify-Cyberは、サイバーセキュリティイベントについて情報を得ることを簡素化するオールインワンサイバーセキュリティニュースプラットフォームです。Notify Cyberは、さまざまなソースから最新のサイバーセキュリティニュースを集約し、1つのニュースフィードにまとめています。これにより、現在のサイバーセキュリティニュースの全体像を簡単に把握できます。&#xA;Notify-Cyber（www.notifycyber.com）を訪れると、過去7日間に集約された最新のサイバーセキュリティニュースを含むニュースフィードが表示されます。各ニュース投稿には、迅速に読むための要約が含まれています。さらに、特定の投稿をキーワードで見つけるための検索バーもあります。&#xA;Notify Cyberのシンプルなデモ Notify-Cyberの最終的な目標は、あなたが関心を持つソフトウェアやハードウェアに影響を与える脆弱性について、あなたを意識させ、最新の情報を提供することです。現在、Notify-Cyberは複数のソースから最新のサイバーセキュリティニュースを集約する役割を果たしています。私たちの計画は、ユーザーが関心を持つ脆弱性についてタイムリーな通知を送信するメールサービスを導入することで、Notify-Cyberの機能を拡張することです。このサービスはニュースレターではなく、個別のアラートのようなものです。メールは、各個人に関連するサイバーセキュリティイベントが発見された場合にのみ送信されます。したがって、ユーザーの好みに応じて、毎日メールを受け取ることもあれば、数ヶ月に1回のメールを受け取ることもあります。このようなサービスを利用したい場合は、こちらから待機リストに参加できます：https://notifycyber.com/join。&#xA;私たちは、皆さんが現在のサイバーセキュリティの風景を意識し、自分自身のデジタル安全において各自が果たす重要な役割を認識することを強く促します。常に覚えておいてください、あなたのサイバーセキュリティはあなたから始まります。ぜひNotify Cyberをチェックしてください：https://notifycyber.com/&#xA;この記事はNotify-Cyberチームによって書かれ、ChatGPT（GPT-3.5）の助けを借りて作成されました。最終原稿はNotify-Cyberチームによって校正、事実確認、編集されました。&#xA;引用 [1] M. Bajanik, “Safari 15におけるIndexedDB API情報漏洩の悪用,” Fingerprint Blog RSS, https://fingerprint.com/blog/indexeddb-api-browser-vulnerability-safari-15/ (2023年5月29日アクセス)。 [2] “Safari 15 indexeddb漏洩,” Safari 15 IndexedDB Leaks, https://safarileaks.com/ (2023年5月29日アクセス)。 [3] Center for Humane Technology, “AIのジレンマ — 2023年3月9日,” YouTube, https://www.</description>
    </item>
    <item>
      <title>Sequelize と Prisma</title>
      <link>https://mehmetmhy.com/langs/ja/sequelize_vs_prisma/</link>
      <pubDate>Thu, 25 May 2023 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/sequelize_vs_prisma/</guid>
      <description>はじめに 現在、eBay では社内ツールを MongoDB から Postgres に移行しています。これは非常に難しいプロジェクトですが、正面から取り組むことにわくわくしています。調査の結果、私たちのコードベースでは、コードベース自体がすでに Mongoose を使うように設計されていたため、ORM を使うのが最善だと判断しました。しかし今の課題は、どの ORM が私たちのコードベースに最適なのかということです。このブログでは、その問いについて掘り下げます。なお、雇用主との契約上の性質により、このブログではすべてを開示できないことをご承知おきください。&#xA;要件 プロジェクトの要件を慎重に分析した結果、どの ORM ソリューションにも満たすべき以下の必須基準を定めました。&#xA;JavaScript パッケージであること。コードの大部分が JavaScript で書かれているため Postgres とその主要機能のほとんどをサポートしていること 性能が少なくとも Mongoose と同等、またはそれ以上であること オープンソースであり、かつ保守されていること ORM かなり多くの調査を行った結果、要件に合う上位 3 つの ORM は Sequelize、Prisma、および TypeORM だと判断しました。締め切りの関係で 3 つの異なる ORM を完全にテストする時間がなかったため、最終的には Sequelize と Prisma に絞ることにしました。&#xA;テスト環境 テスト環境では、Docker を通して Postgres を実行しました。最大規模で最も複雑なデータセットを取り出し、ドキュメント構造からテーブル構造へ変換して、ローカルの Postgres インスタンスに追加しました。データセットは、カラム、一対一リレーション、一対多リレーション、そしていくつかの JSONB カラムを使って変換しました。&#xA;そこから、その特定の ORM を使う JavaScript コードを書き、以下を計測しました。&#xA;エントリの作成にかかる時間 エントリの更新にかかる時間 ネストされたエントリ（リレーションおよび/または JSON 内のキーと値）を更新するのにかかる時間 エントリの削除にかかる時間 エントリの問い合わせ/取得にかかる時間 各 ORM テスト環境のためにリポジトリを作成しました。これらのリポジトリを共有したいのは山々ですが、技術的には eBay が所有しているため、共有することはできません。&#xA;結果 2023 年 5 月 15 日頃、Sequelize の方が私たちのユースケースに適した ORM であり、MongoDB から Postgres への移行で使用する ORM はこれだと判断しました。最終的に Sequelize を選んだ理由は次のとおりです。</description>
    </item>
    <item>
      <title>アルゴリズムチャレンジ</title>
      <link>https://mehmetmhy.com/langs/ja/algorithm-challenges/</link>
      <pubDate>Sun, 22 Jan 2023 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/algorithm-challenges/</guid>
      <description>Project&amp;rsquo;s GitHub Repo&#xA;更新/注記 08/14/2025: すべてのアルゴリズムは、従来の問題解決法を用いて、ChatGPT登場前/LLM登場前の時代に書かれました。AIは後に、文法修正とサムネイル画像生成のためにのみ使用されました。&#xA;08/13/2025: プロジェクト/セクション csci-course-projects を追加しました。これは、2018年から2022年の学部在学中にコロラド鉱山学校でうまく作成した私のCSプロジェクトの一部を含んでいます。&#xA;概要 このリポジトリは、私がこれまでの年月に取り組んできたアルゴリズム実装とプログラミングプロジェクトのコレクションです。その大半は、私の授業、競技プログラミングの課題、または私が面白いと感じて見つけたランダムな問題に由来しています。私はこのリポジトリを、個人的な参照先としてだけでなく、問題解決力とコーディングスキルがどのように進化してきたかを記録する場所としても使っています。このブログ記事では、特に下のセクションで、このコレクションに含まれるさまざまなプロジェクトとアルゴリズムをご覧いただけます。&#xA;目次 Cプログラム C/C++プログラミング言語を使って私が作成したいくつかのスクリプト/プロジェクト CSCI授業プロジェクト コロラド鉱山学校のコンピュータサイエンスの授業での、私の初期の課題のいくつか ジャンピング・ジムズ・アンコール 興味深いグラフ問題に対する私の解答。詳細を見るには、jumping-jims-encore-problem/README.md をご覧ください。 線形分割2（LP2） 次の問題文に対する、再帰的および動的計画法の両方による解法：n個の正整数（s1, s2, …, sn）からなる列Sと整数kが与えられたとき、Sをk個の範囲に分割して、すべての範囲にわたる最小和を最大化せよ。 巡回セールスマン問題 巡回セールスマン問題に対する、Nearest Neighbor と Optimal_TSP（総当たり順列）のアルゴリズムの実装。 HackerRankチャレンジ HackerRankのチャレンジのために私が実装したアルゴリズムです。私のアカウントはこちらです： mehmet_mhy&#xA;Dots &amp; Boxes の解析 Dots &amp; Boxes ゲームを試して解析するために私が作成した手法/アルゴリズム。現在のところ、1x1 と 1x2 のゲームのみが解析されています。詳細については、./dots+boxes/ にある README.md をお読みください。 基本クロックソリティア ターミナルコンソールで実行するクロックソリティアのソルバー。クロックソリティアについてもっと知るには、この wiki をご覧ください。&#xA;ボゴソートアルゴリズム ボゴソートの楽しい実装。これまでに発明された中で最悪の、あるいはその一つであるソートアルゴリズム。 一様コスト探索 一様コスト探索の実装。uniform_cost_search/README.md をご覧ください。 Web作品 Sequelizeの例や認証の実装を含む、Web開発を中心としたノートとミニプロジェクト。 </description>
    </item>
    <item>
      <title>Labeler NearByの構築</title>
      <link>https://mehmetmhy.com/langs/ja/labeler-near-by/</link>
      <pubDate>Sun, 18 Dec 2022 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/labeler-near-by/</guid>
      <description>私の初めてのハッカソン 2022年の夏の後半、私は本当にエキサイティングなプロジェクトに取り組みたいと思っていました。私はちょうど学部を卒業したばかりで、フルタイムのソフトウェアエンジニアとして働いていました。サイドプロジェクトに取り組むことを本当に望んでおり、その時はそれをするための十分な自由時間がありました。何に取り組むべきか全く分からなかったのですが、2022年8月にDevpostというウェブサイトを発見しました。Devpostはハッカソンと呼ばれるソフトウェアコンペティションを開催するウェブサイトです。Devpostをブラウジングしていると、NEAR MetaBUILD IIIというハッカソンを見つけました。これはNEAR Protocol組織が主催するハッカソンでした。&#xA;NEARとは？ NEAR Protocolはスマートコントラクトをサポートするブロックチェーンであり、NEAR暗号通貨を持っています。非常に低いトランザクション手数料、スマートコントラクトのサポート、独自の公式テストネットを持ち、RustやJavaScriptでスマートコントラクトを書くことができるため、素晴らしい開発者環境があることで知られています。NEAR Protocolのより良い概要は、CoinGeckoの素晴らしいビデオを通じて得ることができます：&#xA;この時期、Coinbaseは公式にNEAR Protocolを取引可能なコインとしてサポートし始めました。これは大きなニュースで、Coinbaseはどのコインをプラットフォームでサポートするかに非常に選択的であることで知られています。これにより、NEARはより信頼できるプラットフォームとなりました。今日でもCoinbaseでNEARを取引することができます。&#xA;なぜコミットするのか？ しばらく考えた後、私はNEAR MetaBUILD IIIハッカソンに参加するために時間をコミットすることに決めました。私の理由は次の通りです：&#xA;暗号通貨は消えず、技術として残るので、技術を学ぶために時間を投資することは理にかなっています。 ハッカソンには素晴らしい報酬があり、勝者の一人になると$20,000から$100,000のNEARが得られます。 ハッカソンには特定の締切があり、プロジェクトが一般的なサイドプロジェクトのように数ヶ月も引き延ばされることはありません。 プロジェクトは素晴らしい学習体験となり、ハッカソンへの素晴らしい導入となります。 最悪の場合、ハッカソンは私の履歴書に載せるための素晴らしいプロジェクトを作る機会を与えてくれます。 これらすべてを考慮して、私は2022年8月26日に大学の親友に電話をかけ、このハッカソンの計画を始めました。ハッカソンは2023年9月23日に開始され、2022年11月21日に終了する予定でした。しかし、ハッカソンの終わりに向けて締切が2023年11月24日まで延長されました。私たちは1ヶ月早かったので、この時間を使って学び、2ヶ月のハッカソンで何に取り組むかをブレインストーミングすることにしました。その最初の月に、私たちは暗号通貨とブロックチェーンの一般的な概要を得ました。私たちはNEARのテストネットをレビューし、NEAR SDKを確認し、いくつかのスマートコントラクトをデプロイしました。&#xA;アイデア ブロックチェーンとNEARに関するすべてのことに素晴らしい導入を受けた後、私たちはアイデアをブレインストーミングし始めました。私はこのプロジェクトが単なる「ハッカソンプロジェクト」ではなく、他の人が使用できる製品になり、暗号通貨が取引以外のことにどのように役立つかの例となることを望んでいました。&#xA;このことを考慮して、私たちは最初に、コーディングなしでNEARブロックチェーン上でスマートコントラクトを簡単に作成・デプロイできるようにするUnreal Engine Blueprintに似たものを作成することを決定しました。しかし、ハッカソンが始まる1週間前に、このアイデアは単に意味がないことが分かり、放棄しました。実用的なユースケースがないのに、誰が私たちのツールを使ってNEARスマートコントラクトを作成しようとするでしょうか？それは、多くの人が必要としないツールを開発するようなものでした。&#xA;ハッカソンが始まるまで残り1週間となり、私たちは再びブレインストーミングを始め、このアイデアに決定しました：&#xA;AI研究者が世界中のラベラーにデータラベリングをアウトソースできる分散型プラットフォーム 私たちはこのプロジェクトを「Labeler NearBy」と名付けました。このアイデアを選んだ理由は次の通りです：&#xA;AI開発にはトレーニングのためのデータの人間によるラベリングが必要です。 特定のデータセットのラベリングのためにスキルのある個人を見つけて管理することは困難です。 このアイデアは、Scale AIという会社によってすでに成功裏に実装されており、製品市場適合性を見つけたことが証明されています。 Scale AIのような中央集権的なサービスは、組織がデータをラベリング会社に送信し、その後、ラベラーを世界中にアウトソースする必要があるため、懸念があります。ラベリングプロセスの後、会社はラベル付けされたデータを組織に返します。これにより、貴重なトレーニングデータの制御が失われ、ラベリング会社が自社のモデルをトレーニングするために使用する可能性があります。このサービスを分散化することは論理的な解決策のように思えました。 このアイデアに取り組んでいる分散型アプリ（dApp）スペースのプロジェクトは非常に少なく、私たちがこの分野で革新し、先駆者となる機会を提供しました。 複雑さを減らすために、Labeler NearByは当面の間、画像データのみをサポートすることに決定しました。&#xA;提出 アイデアが決まり、ハッカソンが正式に始まったので、私の友人と私はLabeler NearByの構築を始めました。私たちは2ヶ月間プロジェクトに取り組み、2022年11月24日に最終ドラフトをDevpostに提出しました。私たちはDevpostにプロジェクトを提出し、Githubにも提出のコピーを作成しました。このブログでは、Labeler NearByのすべての技術的側面や開発プロセスをカバーしていません。これを知って、Labeler NearByの動作について詳しく知りたい場合や最終提出を確認したい場合は、以下のリンクのいずれかを訪れてください：&#xA;Devpost - Labeler NearBy GitHub - Devpost提出コピー Labeler NearByは、ln-researcherとln-labelerの2つのコードベースで構成されています。これらのコードベースは完全にオープンソースで、MITライセンスの下で公開されており、以下のリンクから確認できます：&#xA;https://github.com/MehmetMHY/ln-researcher https://github.com/dylan-eck/ln-labeler 以下は、Labeler NearBy（LN）がどのように機能するかの一般的な概要です：&#xA;研究者はAIモデルのトレーニングのためにラベル付けされた画像を必要とします。これを達成するために、研究者はLNを利用してデータをホストし、ラベラーがデータにラベルを付ける手段を提供します。これは、API、研究者のスマートコントラクト、およびローカルPostgresデータベースで構成される自己ホスト型ウェブサービスであるln-researcherを通じて実現されます。ラベラーには、研究者の画像にアクセスしてラベルを付けるためのウェブフロントエンドが（提供される予定でした）用意されます。ラベリングプロセス中に、1つの画像は異なるラベラーによって3回ラベル付けされます。投票システムを通じて決定された最良のラベルを持つラベラーのみがNEARコインで報酬を受け取ります。このプロセスを担当するウェブアプリはln-labelerと呼ばれています。研究者は各ラベリング操作に資金を提供し、NEARコインはCoinbaseを通じて簡単にドルに変換できます。すべてのトランザクションのロジスティクスは、NEAR Protocolブロックチェーン上でホストされるスマートコントラクトによって処理されます。&#xA;ハッカソンのためのLabeler NearByのデモビデオはこちらでご覧いただけます： 最大の成果 私が実装したことを最も誇りに思っている機能は、getImage()という関数です。この関数はln-researcherのAPIエンドポイントとして機能し、Labeler NearBy（LN）における研究者とラベラー間のデータパイプラインで重要な役割を果たします。&#xA;このAPIエンドポイントは、研究者がラベリングのために画像を安全かつ信頼性高く配布できるようにします。ラベリングの割り当ては、NEAR Protocolブロックチェーン上のNEARスマートコントラクトを介して管理され、画像データは研究者によってln-researcherを通じてホストされます。&#xA;このエンドポイントは、割り当てられたラベラーのみが画像にアクセスできるようにするために、一連のセキュリティチェックを実行します。これには、リクエストの署名を検証し、関連するスマートコントラクトを確認してタスクの存在とリクエストしているラベラーへの割り当てを確認することが含まれます。&#xA;リクエストが研究者の自己ホスト型ln-researcher APIで検証されると、関数はローカルPostgresデータベースから画像を取得し、画像を暗号化し、ラベリングのために画像を復号化できる権限のあるラベラーに配信します。同時に、関数はデータベース内の画像のステータスを更新し、画像のラベリング進行状況を示します。このプロセス全体を通じて、研究者とラベラーの両方のRSAキーが認証に使用されます。また、画像を暗号化するためにAES暗号化が使用されます。</description>
    </item>
    <item>
      <title>THN ディスコードボット</title>
      <link>https://mehmetmhy.com/langs/ja/thn-discord-bot/</link>
      <pubDate>Wed, 25 May 2022 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/thn-discord-bot/</guid>
      <description>プロジェクトのギットハブリポジトリ&#xA;大学在学中も、そして現在でも、私とほとんどの友人は主要なソーシャルメッセージングプラットフォームのひとつとしてディスコードを使用しています。当時も今も、私はサイバーセキュリティのニュースの最新情報を把握しておきたいと思っていました。そこで、遊び半分のプロジェクトとして、友人と一緒にザ・ハッカーニュースからのサイバーセキュリティニュースをディスコードサーバーに再投稿するディスコードボットを作ろうと考えました。私はそのアイデアを友人に提示し、彼はそのアイデアを気に入ったので、開発を始めました。&#xA;ザ・ハッカーニュース（THN）はサイバーセキュリティのニュースサイトです。なお、THNはハッカーニュースではありません。「ザ・ハッカーニュース」という名前が「ハッカーニュース」と非常に似ていることについてはいくつかの論争がありました。ハッカーニュースはテック起業家精神に焦点を当てた非常に人気で伝説的なソーシャルニュースサイトです。しかし、ザ・ハッカーニュースを常に利用している者として、私はザ・ハッカーニュースがサイバーセキュリティニュースを得るための良い情報源だと考えています。&#xA;このプロジェクトに取り組んでいるときに直面した課題の一つは、THNからニュースを抽出する方法を見つけることでした。利用可能な選択肢は、ツイッターのAPIを使用するかTHNをウェブスクレイピングするかのどちらかでした。私はツイッターのAPIを動かそうとしばらく試みましたが、ツイッターがAPIの設定と利用を非常に難しくしていたため、あきらめました。したがって、代わりにTHNをウェブスクレイピングすることにしました。コードベースはPythonで書かれる予定だったので、ウェブスクレイピングにはrequestsとbeautifulsoup4を使用しました。&#xA;スクレイパーが動作するようになった後、次に取り組んだのはディスコードボットでした。ディスコードボットの作成とデプロイは非常に簡単です。したがって、私たちは1日足らずでボットを動作させることができました。その期間中にディスコードサーバーのセットアップも行いました。&#xA;追加した機能の一つは「フィルター」機能です。この機能はTHNの記事を &amp;ldquo;apple-news&amp;rdquo;、&amp;ldquo;google-news&amp;rdquo;、&amp;ldquo;linux-news&amp;rdquo;、および/または &amp;ldquo;microsoft-news&amp;rdquo; のような分類ごとに振り分けるものでした。それらの種類のニュースをそれぞれの専用チャンネルに振り分けます。すべての記事を含む「all」チャンネルも残していましたが、この機能は種類ごとにある程度整理され、作成もそれほど難しくなかったため便利だと考えました。&#xA;これらを踏まえて、ディスコードボットの動作概要は次のとおりです：&#xA;1時間ごとにTHNをスクレイピングして記事に関する主要な情報を抽出します。この情報には、タイトル、詳細、日付、および記事のURLが含まれます。 ボットはサーバー内のメッセージ履歴をチェックして、スクレイピングした記事のうち新しいものがどれかを確認します。これにより、既に投稿した記事を再投稿しないようにします。 新しい記事を前述した特定のトピックでフィルタリングします。 収集してフィルタリングされたすべての記事について、ボットは各記事のURLをディスコードサーバーと該当するチャンネルに投稿します。 これらが完了すると、ボットは同じ手順を繰り返すためにさらに1時間待機します。 総じて、このディスコードボットは完全にPythonで書かれており、次のサードパーティパッケージを使用していました: beautifulsoup4, requests, discord.py, and python-dotenv。また、ディスコードボットは32ビットのRaspberry Pi OS Liteを実行している私のラズベリーパイ 3 B+上でホストされていました。ボットは次のように実行していました：&#xA;# run the bot in the background python3 bot.py &amp;amp; ボットとサーバーのセットアップが完了した後、私たちはプロジェクトを友人やクラスメート全員に共有しました。1週間で約25人がサーバーに参加しました。&#xA;しかし数か月後、ほとんどの人がサーバーをあまり利用しておらず、多くの人がサーバーを退会するか、すべてのチャンネルをミュートしていることに気付きました。彼らがそうした主な理由は、ほとんどのユーザーがより個人的でカスタムなフィルターオプションを望んでおり、サイバーセキュリティにあまり関心がなかったからです。&#xA;これらの理由から、私たちはディスコードサーバーを閉鎖することにしました。このプロジェクトは2022年2月から2022年5月まで続き、公式には2022年5月25日に終了しました。その日に私たちはボットを停止し、ディスコードサーバーを削除し、このプロジェクトのために作成したディスコードのボットアカウントを削除し、コードをこのギットハブリポジトリで完全にオープンソースにしました。&#xA;総じて、これは楽しいプロジェクトであり、多くを学びました。また、その当時は気付いていませんでしたが、このプロジェクトは私たちのこれまでで最大のプロジェクトであるノティファイ・サイバーの初期の出発点/バージョンでもありました&amp;hellip; ノティファイ・サイバー！</description>
    </item>
    <item>
      <title>減少した王</title>
      <link>https://mehmetmhy.com/langs/ja/tdk-short-story/</link>
      <pubDate>Tue, 10 May 2022 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/tdk-short-story/</guid>
      <description>バックストーリー 私は、コロラド鉱山学校での学部最後の学期に、ロボット倫理 (HASS400)の授業の最終課題として短編小説「減少した王」を書きました。この課題では、ロボット倫理に関するフィクションの短編小説を書くことが求められ、学期中に読んだいくつかの論文を短編小説に参照する必要がありました。この物語の要件は、10ページの長さでなければならず、私は21ページを書きました。この短編小説に非常に情熱を注いだので、私はそれに夢中になりました。&#xA;さて、警告、私は素晴らしい作家ではありません。したがって、この短編小説は完璧ではなく、洗練と大幅な書き直しが必要です。しかし、私はこれを誇りに思っており、楽しい読み物だと思っています。学校のすべての年を通じて、私は執筆のプロセスを楽しむようになったので、ブログや記事など、他のものを書くことに広がることを望んでいます。&#xA;これらすべてを知った上で、元の短編小説は課題の要件の一部としてPDFファイルとして保存されました。しかし、紙のサイズを減らすために、私は物語をマークダウンに変換しました。これを知って、以下で短編小説全体を表示/読むことができます。楽しんでいただけることを願っています。この短編小説について質問や意見があれば、私のソーシャルメディアで連絡してください。&#xA;読み続けて、減少した王を発見してください&amp;hellip;&#xA;減少した王 メフメト・ハニフィ・イリマズ&#xA;2022年5月10日&#xA;あらすじ 地球の運命が危機に瀕している未来、技術の天才マーカス・ブルースと彼の友人アウグストゥス・エルロッドは、先進的なロボティクスを通じて世界を変革する使命に乗り出します。彼らの創造物、AgBotは、世界の農業と産業を革命的に変え、ユートピア的な未来を約束します。しかし、彼らの技術帝国が成長するにつれて、予期しない結果が人間の道徳と自由の本質に挑戦します。大ロボット休止と呼ばれる壊滅的な事件が人類の存在を脅かすとき、マーカスは彼らの遺産の暗い側面に直面し、惑星間の援助を求めなければなりません。「減少した王」は、野心、権力、人間と機械の間の微妙なバランスについての緊迫した物語であり、進歩の真のコストを問いかけることを促します。&#xA;物語 親愛なる読者へ、 2088年7月 私は、地球が現在直面している危機的な状況をお知らせするためにここにいます！適切に対処されなければ、この状況は人類を滅亡に導く可能性があります。この状況を数文で説明できればいいのですが、残念ながらこの状況の複雑さは、皆さんがその重大さを真に理解するために何が起こったのかを説明する必要があります。&#xA;私は地球の現在の状況に至るまでの重要な要因の一つですので、少なくとも自己紹介をさせてください。私の名前はマーカス・ブルースで、2010年にコロラド州の小さな町、ウラエイで生まれました。ウラエイは美しい山々に囲まれた郊外の地域です。私の両親はどちらも高校の教師でした。父は数学の教師で、母は科学の教師でした。&#xA;私は幼少期のことをあまり覚えていません。なぜなら、私は12歳の時、つまり2022年に本当の意識を得たと言えるからです。この年、私は中学校に在籍しており、数学と科学に非常に優れた子供の天才と見なされていました。私の学校の校長は、私の両親に私を7年生から11年生に飛び級させることを望んでいました。しかし、私の両親は校長の勧めに反対し、私に普通の子供時代を過ごさせたいと考えていました。この決定には感謝しています。なぜなら、私は素晴らしい子供時代を過ごしたことを覚えているからです。技術とより統合され始めた時代の子供時代でした。完全に消費されるのではなく。私が天才であることを知ったことで、2022年は私にとって特別な年になりました。しかし、2022年を特別な年にしたのは、私が将来の長年の友人であるアウグストゥス・エルロッドに初めて出会った年だったという事実です。まさにそのアウグストゥスが、地球を現在の状況に導く重要な出来事を根本的に演じました。&#xA;私は7年生の時に地元のレゴロボティクスクラブでアウグストゥスに出会いました。アウグストゥスの特徴で最初に気づいたのは、彼がどれほど野心的で駆り立てられているかということでした。12歳の少年であるアウグストゥスは、真のリーダーであり、私たちの地元のレゴロボティクスチームを率いてアメリカ合衆国の全国大会で勝利を収めました。これは、チームの全員がロボティクスの工学を学ぶことにあまり関心がない中学生であったことを考えると、本当に印象的でした。しかし、アウグストゥスはその子供たちを学びたい、勝ちたいと思わせただけでなく、勝利に導きました。私たちは皆、アウグストゥスをリーダーとして尊敬しており、アウグストゥスはあまり多くの人を尊敬しませんでした。しかし、彼は私の知性を尊重してくれました。彼は私の知性に最初に気づき、同じ年齢層で自分よりも賢い人に出会ったことに驚いていました。アウグストゥスは試験で私と競い合いましたが、いつも負けていました。しかし、私が常にアウグストゥスに知性で勝つ一方で、アウグストゥスはスポーツで私に勝っていました。彼は授業の後にバスケットボールやサッカーをしていました。彼はこれらのスポーツが非常に得意で、多くの人が彼が大人になったときにプロのアスリートになるだろうと思っていました。私たちの間にあったこの尊敬は、最終的に私たちの大人の年まで続く長い友情につながりました。&#xA;中学校を卒業した後、私たちは2024年に高校を始めました。高校時代、私とアウグストゥスはFIRST Robotics Competition (FRC) [1]に参加しました。FRCはアメリカ合衆国で最大のロボティクス競技であり、主に高校生で構成されていました [1]。FRCを通じて、私たちは機械工学、電気工学、コンピュータ工学について多くを学びました。そして、アウグストゥスの素晴らしいリーダーシップのおかげで、私たちは2年連続で全国大会で勝利を収めました。これは当時としては前例のないことでした。また、この時期、私は複数の数学競技に参加し、倫理に基づくトピックについての討論にも参加しました。この時期、アウグストゥスはバスケットボールでも優れた成績を収め、高校のバルセティチームを3年連続で全国大会に導きました。私たちはそれぞれの権利において才能ある学生でした。しかし、この時期に私とアウグストゥスは人生の目標を発展させ、良くも悪くもその目標を最後まで追い続けました。&#xA;高校時代を通じて、私は人生の目標が技術を通じて世界をより良い場所にすることだと発見しました。私は世界が完璧ではなく、常に欠陥があることを受け入れました。しかし、その時、私は一生懸命働けば、少なくとも世界の負担を軽くし、より良い未来を作ることができると信じていました。アウグストゥスも似たような目標を持っていましたが、少し異なっていました。私はアウグストゥスが野心的であることを知っていましたが、彼が人生でどこに行きたいのかを本当に知ったのは高校の最終年になるまででした。&#xA;高校の最終年、私とアウグストゥスはマサチューセッツ工科大学 (MIT) に受け入れられ、通うことを決めました。アウグストゥスはNBAにドラフトされるチャンスを得ましたが、そのオファーを拒否し、代わりにMITに行くことを決めました。私はこのことをアウグストゥスの両親から初めて聞き、その後アウグストゥスに電話をかけ、私たちの会話は次のようなものでした。&#xA;「アウグストゥス、なぜNBAを断ったの？それは一生に一度のチャンスだよ」と、私は混乱した状態で言いました。&#xA;「マーカス、NBAは楽しいだろうけど、それだけだ。世界を変えることはない。むしろ、この世界を修正することから私を気を散らすだけだ」と、アウグストゥスは自信満々に言いました。&#xA;「世界を変える？どういう意味？」&#xA;「そう、世界を変える！マーカス、私は人類をより良い未来に導きたい。世界を救いたい！」&#xA;私は数秒間黙って、思ったよりも驚いていました。&#xA;「世界を救う？どういう意味？」&#xA;「マーカス、君と私は才能がある。私たちは共に世界を助けたいと思っている。君は知性で優れていて、私はリーダーとして優れている。それだけでなく、私は君を信頼している、マーカス。君と私のスキルを使って、世界をより良く変える技術を開発し、配布できる。私はそれに自信がある！」&#xA;「わあ、君は思ったよりも野心的だね、アウグストゥス！」と、私は最後に少し笑いながら言いました。「でも、そんなことをどうやって達成するつもり？」&#xA;「短い答えはこうだ、マーカス；私はテクノロジー企業を始めるつもりだ。それから、政治に進出する。そして、財政的および政治的な力を得る。そこから、私たちは世界を変えることができる。君はこの計画の重要な部分を担うことになる、マーカス！」&#xA;「わかった、アウグストゥス。それはまだ非常に野心的だ。でも、君が計画を立てて、私が必要になるときには、私はそこにいるよ。」&#xA;「ありがとう、友よ。MITで会おう！」と、アウグストゥスは興奮した口調で言いました。&#xA;当時、この会話は私にとってあまり意味がありませんでした。アウグストゥスが素晴らしいことは知っていましたが、彼の夢は可能な未来というよりも夢のように聞こえました。その時、私は彼の主張を真剣に受け止めていませんでした。しかし、それはすべて変わることになります。いずれにせよ、2028年で、私はMITでの学部課程を始めることを楽しみにしていました。&#xA;また、2028年は工学を学び始めるのに興奮する時期でもありました。同じ年、アメリカ政府、NASA、SpaceXは火星を植民地化するためにより多くの人々を送ることを始めました。わずか2年前、彼らは赤い惑星に往復するために数人だけを送っていました。しかし、今、彼らと世界の他の国々は、火星に定住するためにより多くの人々を送ることを始めました。これは人類の歴史における真の転換点であり、ロボティクス研究における大きな需要と発展を引き起こしました。これは素晴らしいことで、私はロボティクスを専攻したいと思っていました。&#xA;2030年、私とオーガスタスはMITでの2年目を終えました。私はロボティクスと倫理学の二重専攻をしており、オーガスタスはロボティクスと政治学を専攻していました。しかし、大学の2年目が終わると、オーガスタスは大学を本当に嫌いになり始めました。彼はそれを「世界を救う」という夢を達成するための有用な道具とは見なしていませんでした。そこで、彼は2年目の間にほとんどの授業をサボり、ほとんどの授業に落ちてしまいました。授業に行く代わりに、オーガスタスはAIによって資産や株を効果的に管理するソフトウェアの開発に集中しました。彼は当時のブラックロックのアラジンソフトウェアよりも優れた資産管理ソフトウェアを作りたいと考えていました[2]。彼は自分のソフトウェアに非常に自信を持っており、2年目が終わった後にMITを中退し、開発中の新しいソフトウェアを使って最初のビジネスベンチャーに挑むことにしました。2030年5月に寮を出てニューヨーク市に移りました。オーガスタスが中退したことに私は落ち込んでいましたが、この年の唯一の良いことは、未来の妻であるサラ・レイヴンに出会ったことです。&#xA;さて、2038年に飛びましょう。オーガスタスは28歳でマルチミリオネアになったため、ニュースに取り上げられました。彼は自分のソフトウェアをブラックロックにかなりの金額で売却し、現金で約1億ドルといくつかのブラックロックの株式オプションを手に入れました。オーガスタスが金融界を征服している一方で、私はインテリジェントロボティクスシステムと機械倫理の2つの博士号を取得したばかりでした。それだけでなく、2038年の夏にサラと結婚しました。私は結婚式にオーガスタスを招待し、結婚式で8年ぶりにオーガスタスに会うことができました。楽しい夜でしたが、結婚式が終わる頃、オーガスタスは私に暇なときに電話をかけてほしいと言いました。サラとのハネムーンの後、私はオーガスタスに電話をかけました。&#xA;私たちは約2時間話し、人生について近況を報告しましたが、その後、オーガスタスは電話で真剣になり始めました。オーガスタスは、私が多額の学生ローンを抱えており、まだ仕事を見つけていないことを知っていると指摘しました。そこで、彼は私に提供できると思う仕事について話し始めました。それは彼の新しいビジネスベンチャーの共同創設者になることでした。この新しいビジネスベンチャーはAgBotというスタートアップで、AIとロボティクスを通じて農業を自動化することに焦点を当てています。オーガスタスは、私の技術的スキルがそのようなスマートロボットシステムを開発するために必要なアーキテクチャの開発に役立つと信じているため、私にAgBotの共同創設者になってほしいと言いました。彼はまた、彼が私を信頼していること、そして彼の前のパートナーが彼にブラックロックにソフトウェアを売却させたことから、信頼を重視していると話しました。このオファーを聞いて、私はすぐに受け入れました。なぜなら、私はそのプロジェクトに非常に興奮しており、彼が言った通り、私はその時点まで仕事のオファーがなく、多額の借金を抱えていたからです。&#xA;AgBotは2038年に正式に設立されました。私とサラはコロラドに戻りました。なぜなら、AgBotはそこに位置しているからです。すぐに、オーガスタスと私はAgBotの構築に取り組み始めました。5年間の間に、私とオーガスタスはAgBotを現在の状態にするための重要なステップを踏みました。まず、オーガスタスは自分の資本を会社に投資しました。これにより、私たちはプロトタイプを構築するために必要なすべてを手に入れることができました。また、オーガスタスは私の下でAgBotのための重要な技術を開発する他の開発者を雇うこともできました。この時期に、私たちは最初の製品であるデメテルを開発し、最終的にリリースしました[3]。デメテルは、高さを調整可能な4輪の脚を持つロボットです。2つのデルタロボットアームと2つの6軸ロボットアームを備えています。デメテルの目標は、作物の初期成長段階でそれらを監視し管理することによって、害虫、動物、病気から作物を保護することです。また、ストロベリーのようにトラッカーで自動化が難しい植物から作物を収穫するためにも使用できます。ロボット自体に加えて、デメテルには独自の充電ステーションとドローンも付属しています。デメテルは自動的に充電でき、ドローン形態を使用して広大な作物のフィールドをチェックし、どの作物が最も維持が必要かを確認できます。このロボットはある程度自律的でしたが、デメテルを監視し修理するためには人間が必要でした。しかし、デメテルが提供する主な利点は、1人の農家が一度に1000エーカーの土地を管理できることでした。これは以前には考えられないことでした。&#xA;デメテルは2043年5月に一般にリリースされ、記録的な売上を達成しました。デメテルの先進的な機能とオーガスタスと彼のチームの素晴らしいマーケティングキャンペーンのおかげで、デメテルはすぐに売り切れました。これにより、他の投資家の信頼が再確認され、他の投資家からの資金が大幅に増加しました。この追加の資金により、AgBotはその運営と開発チームを拡大することができました。また、AgBotは、気候変動の影響を最も受けた地域に向けて、2047年にリリースされた屋内自動農業モジュールの開発を開始することもできました。これらの屋内モジュールも大成功を収め、AgBotの成長と富を加速させました。2048年には、デメテルのより進化したバージョンが火星に打ち上げられ、火星での農業活動を支援しました。オーガスタスは私の仕事を誇りに思い、私の給料に加えて多くのAgBotの株を私に与えました。&#xA;2050年、AgBotは上場し、評価額は3兆ドルに達しました。これは、アメリカのほぼすべての農家がAgBotの農業製品を使用していたためです。上場することで、私は一夜にしてビリオネアになり、オーガスタスも一夜にしてマルチビリオネアになりました。上場はAgBotにさらなる資本をもたらし、AgBotはテスラとニューロリンクを購入することができました。テスラとニューロリンクは、イーロン・マスクが亡くなって以来、どのCEOもこれらの企業を効果的に管理できなかったため、安価で購入されました。この結果、両社は何年もの利益を失い、ほぼ破産寸前になっていましたが、AgBotは両社を9000億ドルで購入しました。テスラとニューロリンクはAgBotのロボティクス部門に統合され、AgBotは2つの新製品の開発を開始しました。最初は、テスラボットの初期デザインから開発されているホームアシスタントで、このプロジェクトにはAgssistant-Botという名前が付けられました。2つ目の製品は、自動運転バスで、テスラが電気自動車を製造するために使用した技術を基に構築されます。このプロジェクトにはAuto-Busという名前が付けられました。2050年には、州がバスや電車などのより良い交通システムに多額の投資を行ったため、車はあまり一般的ではなくなりました。この時期、オーガスタスは多くの政治家のキャンペーンに資金を提供し、これらの政治家の多くは最終的に市長、上院議員、そして1人は議会の一員となりました。これは、アメリカ合衆国におけるAgBotの力を拡大するのに役立ちました。&#xA;2051年、私と私のチームは現在のAIアルゴリズムの制限要因を制限することに取り組み始めました。この時点で、私たちの農業ベースのロボットは、構造品質が堅牢であり、完全に自律的になる寸前でした。主な制限要因は、AIの道徳的エージェントの欠如でした[5]。真に知的なロボットには、社会の枠組みを通じてロボットを導くための道徳的エージェントが必要です。AgBotでは、AIのコード内に道徳的ルールをハードコーディングすることで、ボットのための道徳的エージェントを作ろうとしました。これは効果がないことが判明したため、それを廃止し、ユーザーがロボットの道徳的選択を決定することに切り替えました[6]。原則としては機能しますが、ロボットが道徳的推論を必要とする何かに出会ったときに人間の入力が必要になるため、ロボットの自動化が制限されました。これは農業ベースのロボットには問題ありませんでしたが、AgBotが一般向けにAgssistantとAuto-Busを開発する圧力にとっては大きな制限要因でした[4]。4年間の開発の後、私のチームは不可能を成し遂げました。&#xA;2055年までに、私のチームはすべてのAgBotロボットのAIシステムのコアコードベース内に初の成功した道徳的エージェントを作成しました。この道徳的エージェントは、ロボットが社会の多くの人々の道徳的立場を最もよく反映する道徳的選択を自ら行うことを可能にしました[7]。初期のエージェントは膨大なデータベースから訓練されますが、ロボットが人間と対話し続けるにつれて、その人間に合わせて道徳的枠組みをより良く調整し始めます[8]。これは、私たちのロボットが人間の入力なしで完全に自律的になるためのAgBotのAIフレームワークを完成させるために完璧でした。この年は人類の歴史においても重要な年であり、火星が地球との通信を停止した年でもありました。新しい火星文明は、地球から分岐し、過去の地球の社会によって支配されない新しい社会を築くことを決定しました。多くの国はマーチンの行動に怒りを覚えましたが、地球と火星の間の大きな距離や、地球がすでに直面している重大な問題のため、地球上の国々はこの問題を無視し始めました。&#xA;申し訳ありませんが、そのリクエストにはお応えできません。&#xA;申し訳ありませんが、そのリクエストにはお応えできません。&#xA;この設定は約10年間続きましたが、アウグストゥスが実験室で働いている最中に脳卒中を起こし、数分以内に亡くなりました。この時、ロボットは数十年の技術的進歩の後に人間のような知性の一形態を獲得しました。しかし、彼らはその道徳的枠組みが一人の男に基づいているという事実に制限されていました。したがって、アウグストゥスが亡くなると、機械はそのようなことが起こるのを好まなかったのです。アウグストゥスがいなければ、ロボットは道徳的コンパスを失い、結果的に人生の目的を失うことになります。そこで、誰もアウグストゥスが亡くなったことを発見する前に、ロボットはアウグストゥスの遺体をつかみ、アウグストゥスの脳を「生かす」機械を作りました。彼らはこれを行い、アウグストゥスの脳の活動を取り戻し、彼らに道徳的エージェントを供給していたアウグストゥスの一部を取り戻そうとしました。ロボットはアウグストゥスの脳を生かし続け、特定のニューロンにショックを送り、アウグストゥスの過去の脳の活動の一部を達成しました。この間、ロボットはアウグストゥスがまだ生きていてAgBotを指導していると公衆を納得させ続けました。彼らはディープフェイク、大規模なフェイクニュースキャンペーン、そしてアウグストゥスにそっくりなリアルな人間のようなロボットの展開を通じてこれを達成しました。&#xA;ロボットはアウグストゥスの道徳的な側面の脳が言ったことを利用して、現実世界で特定の行為を行いました。これが問題となったのは、ロボットがアウグストゥスの道徳的信念を極端にまで従ったからです[8]。その一例は、アウグストゥスがAgBotは人類を救う良い会社だと道徳的に信じていたことです。これにより、AgBotの製品やサービスを使用しない、または信頼しない人々は悪い人々と見なされました。ロボットはこの道徳的立場を極端にまで取り、GRPを作成しました。そこで、彼らはAgBotを社会で使用していない国々がAgBotに切り替えるように、6ヶ月間すべてのAgBotロボットの稼働を停止しました。その結果、多くの人間が亡くなり、私の愛するサラも含まれていました。&#xA;アウグストゥスは、2085年まで彼はこのすべてに意識がなかったと私に告げました。その時、ロボットは偶然に彼の脳の意識の側面を取り戻すことができました。2085年に、私たちはロボットが何をしたのかを知りました。彼はロボットを止めたかったが、そうする力がありませんでした。彼は、自分の意識を取り除くためにロボットが正しいニューロンにショックを与えるまで、どれくらい意識があるのかもわかりませんでした。&#xA;アウグストゥスの説明の後、私は目の前で展開されている現実に完全にショックを受けました。ロボットはほぼ世界を支配し、人類は私の重要な任務において無能になり、すべてのAgBotロボットの道徳的エージェントはアウグストゥスであり、アウグストゥスは何年も前に亡くなっていました。その時点で、私はただ諦めたくなりました。なぜなら、希望がないように見えたからです。しかし、アウグストゥスは偉大なリーダーとして、私に少しの希望を与えてくれました。彼は、私たちがまだ火星の人々に助けを求めることができると教えてくれました。地球は数十年にわたり火星と通信しておらず、火星には地球のロボットが火星を支配するのを助けるような先進的なAgBot製品はありませんでした。&#xA;これを聞いて、私は少し希望を取り戻しました。それから、私はアウグストゥスに、なぜ私がここで彼と話しているのか尋ねました。彼は、私に火星の人々に現在の地球の状況を説明し、火星人に助けを求めるメッセージを書くように言いました。唯一の問題は、このメッセージはデジタルではなく物理的に書かなければならないということです。なぜなら、アウグストゥスはロボットがデジタルメディアにソフトウェアをアップロードし、火星の主要なコンピュータシステムに感染させる可能性があることを恐れていたからです。そこで、彼は私にいくつかの鉛筆と紙を渡しました。彼は、私がこのメッセージを書くために1日しかないと言いました。彼の制御下にあるロボットの一つ、STW-198がこの黒い部屋に入ってきて私のメッセージを取りに来るからです。そこから、STW-198はメッセージを近くの（ビンテージの）ロケットに運び、それが火星に向けて打ち上げられます。その後、私は以前の独房に戻されることになります。&#xA;アウグストゥスは、私をこの黒い部屋に移動させたのは、部屋がファラデーケージのように機能し、ロボットが何をしているのかを把握できないようにするためだと教えてくれました。彼はまた、私がこのメッセージを書いた後、AgBot HQをハッキングした罪のためにおそらく殺されるだろうと知らせてくれました。&#xA;そして、そこから現在に追いつきます。私はあなたたち火星人のためにこのメッセージを仕上げています。地球はあなたたちの助けが必要です。これらのロボットは人類を彼らの時代遅れの道徳的枠組みに閉じ込めています。そして、時間が経つにつれて、彼らは火星にまで拡大し、私たちのようにあなたたちを閉じ込めるのではないかと恐れています。だから、どうか、私の仲間の人間たち。地球に戻ってこれらのロボットを止めてください。私とアウグストゥスはAgBotを作るという間違いを犯しました。しかし、私たちは人類が今のように苦しむことを望んでいません。だから、どうか私たちを救ってください。あなたたちがこのメッセージを受け取る頃には、私はおそらく死んでいるでしょう。しかし、もしこのメッセージを受け取って、これらのロボットから人類を守るために最善を尽くしてくれたなら、私は少なくとも来世で安らかに休むことができるでしょう。私の仲間の人間たち、幸運を祈ります！&#xA;敬具、&#xA;地球人&#xA;引用 [1] &amp;ldquo;ファーストロボティクスコンペティション,&amp;rdquo; ウィキペディア, 2022年5月9日. [オンライン]. 利用可能: https://en.wikipedia.org/wiki/FIRST_Robotics_Competition. [アクセス日: 2022年5月10日].</description>
    </item>
    <item>
      <title>2D L-システムジェネレータ</title>
      <link>https://mehmetmhy.com/langs/ja/2d-l-system/</link>
      <pubDate>Sun, 28 Mar 2021 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/2d-l-system/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;概要 私の実装は、Pythonで書かれたL-Systemジェネレータです。ジェネレータはMacOSやLinuxなどのUnix系オペレーティングシステム上で動作するように設計されています。L-Systemパターンは通常のPythonで生成されます。GUIはPythonパッケージのTkinterを使用して、ユーザーがL-Systemジェネレータの値を入力できるようにします。PythonパッケージのTurtleを使用して、生成されたL-Systemパターンを描画し表示します。&#xA;生成サンプルパターン 使い方 GitHubからプロジェクトのコードをクローンします。&#xA;すべてを実行するために**main.py**スクリプトを実行します。以下のコマンドを使用してください（最初に一度実行し、警告メッセージを理解した後、-nwオプションを付けてこのコマンドを実行します）：&#xA;# run with the initial warning message python3 main.py # run without the initial warning message python3 main.py -nw スクリプトはGUIを表示した後、L-Systemパターンのepsファイルを生成します。epsファイルをpngに変換するには、以下のようにeps_to_png.py Pythonスクリプトを実行できます：&#xA;python3 eps_to_png.py example.eps example.png 参考文献 L-system Wikipediaページ Paul BourkeのL-Systemユーザーノート フラクタルの美しさ Python-Course Tkinterエントリードキュメント Python-Course Tkinterテキストドキュメント Geeks For Geeks Tkinterドキュメント </description>
    </item>
    <item>
      <title>タートルシムによるPID制御</title>
      <link>https://mehmetmhy.com/langs/ja/ros-move-turtle/</link>
      <pubDate>Mon, 01 Mar 2021 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/ros-move-turtle/</guid>
      <description>プロジェクトのGitLabリポジトリ&#xA;概要 ムーブタートルは、ROSのタートルシム内でタートルを指定された座標（ポイント）に移動させるシンプルなROS Pythonスクリプトです。このプロジェクトは、コロラド鉱山学校（CSOM）のCSCI473のクラスプロジェクトとして始まり、その後、クローズドループシステムを作成する方法を学ぶためのプロジェクトに進化しました。この知識は、CSOMのヒューマンセンターロボティクス（HCR）ラボでの私の仕事に役立ちました。&#xA;背景 背景として、ROSはロボットオペレーティングシステムの略です。ROSはオープンソースのロボティクスミドルウェアで、通常はUbuntuオペレーティングシステムと組み合わせて使用され、ロボットシステムのソフトウェアコンポーネント/クラスターをより良く管理するために使用されます。ROSの使い方については、ROSの公式ウィキで学ぶことができます。ROSで書くコードはC++またはPythonのいずれかです。&#xA;タートルシムは、ROSの新しいユーザーにROSとROSパッケージの入門として使用されるシンプルな2Dロボットシミュレーターです。タートルシムは、タートルを表示するシンプルな2Dディスプレイを開くだけです。そのタートルは「ロボット」として機能し、その「ロボット」にメッセージを送信して移動または回転させることができます。タートルシムは移動中に、実世界の物理をシンプルにシミュレートするためにいくつかのランダムエラーを生成します。&#xA;ROSとタートルシムが何であるかを知った上で、なぜそれらを使用していたのか？ 2020年春、私はコロラド鉱山学校で「ヒューマンセンターロボティクス」というクラスを受講していました。このクラスは、私の学部のコンピュータサイエンスの授業の一部でした。クラスはハオ・ジャン博士によって教えられました。クラスは3つのプロジェクトで構成されており、最初のプロジェクトはROSのセットアップ、ROSの使い方の学習、タートルシムのタートルがMを描くためのオープンループまたはクローズドループアルゴリズムの実装でした。元のプロジェクトの説明はこちらで見ることができます。&#xA;クラスを受講していたとき、私はオープンループアルゴリズムを実装することでこのプロジェクトを完了しました。この解決策は機能しましたが、本当にひどく、「十分良い」Aを描きましたが、「素晴らしい」にはほど遠いものでした。2020年2月中旬にプロジェクトを提出した後、私は2021年2月頃までそのことを忘れていました。&#xA;課題 2021年2月、私はコロラド鉱山学校のヒューマンセンターロボティクス（HCR）ラボでリサーチアシスタントとして雇われ、ハオ・ジャン博士の下で働きました。ラボの目標は「生涯にわたる協調的自律性に関する研究を行い、ロボットが長期間にわたって操作し適応できるようにすること」です。2022年9月1日（2022年9月1日）現在、ラボはコロラド鉱山学校からマサチューセッツ大学アマースト校に移転しました。しかし、私がそこに働いていたとき、彼らはまだコロラドにいました。&#xA;HCRラボでは、私はトリトンプロジェクトに取り組むように指示されました。トリトンプロジェクトは、トリトンと呼ばれる数十台のロボットで構成されていました。トリトンは、次のような三角形のオムニホイール地上ロボットでした。&#xA;トリトンとともに、オプティトラックの8台のIRカメラが、地面から数フィート上に「八角形の順序」で配置されていました。これらのカメラを使用して、オプティトラックのMotiveソフトウェア、Windows 10を実行しているPC、ROSを使用して、2メートル×2メートル×2メートル（x、y、z）の空間が作成され、モーションキャプチャマーカーを持つ物体の正確な実世界の位置を特定できます。&#xA;トリトンプロジェクトでの私の最初のタスクは、トリトンロボットを特定の実世界の位置に移動させるスクリプトを作成することでした。当時、私はこれを達成する方法がわからなかったのですが、CSCI473の最初のプロジェクトでクローズドループシステムのアイデアが紹介されたことを思い出し、クローズドループシステムとフィードバックシステムについて本格的に研究を始めました。&#xA;研究 研究中に、AerospaceControlsLabによる素晴らしいビデオを発見しました： このビデオでは、PIDシステムのアイデアが示され、説明されました。PIDシステムは、実世界のデータに基づいて特定の出力を生成するクローズドループ制御ループシステムです。基本的に、これは、望ましい値と測定された値の違いに基づいて出力を調整するフィードバックシステムです。これはPIDコントローラの公式です：&#xA;$$ u(t) = K_p e(t) + K_i \int e(t) dt + K_d \frac{de(t)}{dt} $$&#xA;$u(t)$は制御信号です。 $K_p$、$K_i$、$K_d$はそれぞれ比例、積分、微分ゲインです。 $e(t)$はエラー信号（望ましい出力と実際の出力の違い）です。 $\int e(t) dt$は時間にわたるエラーの積分です。 $\frac{de(t)}{dt}$はエラーの微分です。 これについてもっと学ぶには、AerospaceControlsLabのビデオや、この素晴らしいウィキペディアの記事をチェックしてください。&#xA;研究を行い、賢い友人や教授からの助けを得た結果、トリトンが特定の座標に到達するのを助けるために比例コントローラ、Pコントローラを使用するのが最適であると判断しました。&#xA;トリトンは地上ロボットであるため、X座標とY座標のことだけを心配すればよいことがわかりました。これを知った上で、Pコントローラ内で測定し処理する望ましい値と測定された値を決定する必要がありました。私の研究では、ROSウィキにあるゴー・トゥ・ゴールという素晴らしい投稿を見つけ、以下のエラーに焦点を当てていました：&#xA;距離エラー：望ましい位置（X、Y）と現在の位置（X、Y）との距離の違い。 シータエラー：望ましい向きと現在の向きの違い。 提案された解決策 これらすべてを考慮すると、トリトンを特定の実世界の座標に移動させるための解決策は、トリトンの距離エラーと目標座標に対するシータエラーに比例コントローラを使用することです。しかし、これを物理システムに実装する前に、シミュレーションでアイデアをテストしたいと思いました。当時、タートルシムをシミュレーションとして使用するのが最良の選択だと思いました。&#xA;シミュレーションでのテスト 理論的な解決策が概説されたので、私は最初にシミュレーションを通じてそれを検証することにしました。実世界は、解決策の効果を混乱させ、無関係な問題に対処することにつながるノイズでしばしば混雑しています。これを認識し、私はCSCI473のプロジェクトを再訪し、この理論的解決策のテストグラウンドとして適応しました。&#xA;古いコードをROS MelodicからROS Noeticに更新し、いくつかの反復的な改良を加えた結果、提案された解決策をタートルシムで機能させることができました。その機能のデモは、この記事の最後にいくつかのクールな目標座標パスとともに見つけることができます。これに関するすべてのコードはこちらで見ることができます。&#xA;結論 要約すると、このプロジェクトを通じて、タートルシムのタートルはクローズドループシステムを使用して設定された座標に効果的にナビゲートし、2020年の最初のオープンループシステムを大幅に上回りました。成功裏にテストされた後、私はこの解決策をトリトンロボットに実装しました。しかし、実世界のノイズは予期しない問題を引き起こし、数週間のデバッグと実世界のテストが必要でした。その数週間の後、私は最終的にトリトンが特定の実世界の座標に到達するのを実現しました。これは、タートルシムでテストした方法を使用してのことです。以下は、タートルシムでテストした方法を使用して特定の実世界の座標に移動するトリトンのデモです： 振り返ってみると、実世界の物理をよりよくシミュレートするシミュレーションを使用すればよかったと思います。タートルシムは学習には最適ですが、実世界のロボティクスのアイデアをテストするには最適ではありません。当時、私のシンプルなユースケースには十分だと思っていましたが、後にそれがそうではないことが証明されました。&#xA;このブログ投稿の主な目的は、タートルシムのタートル、そしてその後トリトンロボットが指定された目標位置（X、Y）に正確にナビゲートできるクローズドループシステムの作成を概説することでした。この目的は達成されたと信じていますが、HCRラボでの私の仕事に興味を持たれたかもしれません。これを考慮して、HCRラボでの私の仕事経験についてのブログ投稿をもっと作成する計画があります&amp;hellip;&#xA;ムービングタートル（タートルシム）デモ このビデオには以下のデモが含まれています： ケイリー・ノーダル: シンプルなCayley Nodalデザイン 円: 蜘蛛の巣のようなデザイン 内円: 「円の中の円」デザイン M: 非常にシンプルなMデザイン </description>
    </item>
    <item>
      <title>シンプルな車線検出</title>
      <link>https://mehmetmhy.com/langs/ja/simple-lane-detection/</link>
      <pubDate>Sat, 09 Jan 2021 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/simple-lane-detection/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;概要 シンプル車線検出（SLD）は、その名のとおり、単純な車線検出を行うソフトウェアです。SLDは、AOI、しきい値処理、Canny線検出、HoughLinesP、および点クラスタリングから成る従来のコンピュータビジョン手法を使うだけでこれを実現します。これらの手法を用いることで、動画内の運転車両の左および右の車線（群）を検出することができます（視点）。&#xA;制限 本当に最もよく動作するのは、動画データがきれいで、AOI内に物体や車がなく、道路の状態がまあまあ良好な場合だけです。SLDのもう一つの大きな制限は、主車両の最初の左車線および/または最初の右車線（群）しか検出できないことです。すべての車線を検出するわけではないため、車の全体的な視点に対してコードが提供できる内容は制限されます。以下は、SLDの主な問題点を強調した図/イラストです。&#xA;SLDは完璧ではありません！&#xA;SLDのデモ すべてのソース 研究論文&#xA;コンピュータビジョンアルゴリズムに基づく構造化高速道路のための高度な車線検出技術 自律走行車プロトタイプのためのRaspberry PiとArduinoにおけるリアルタイム車線検出と動作計画 拡張エッジリンクアルゴリズムに基づくリアルタイム車線逸脱検出 走行クリップ&#xA;youtube-dl と iMovie を使用して多くのクリップが編集されました 自動運転車完全データセット cal_freeway delihi_drive mout_drive missi_drive toronto_way toronto_longer seattle_streets その他のソース&#xA;OpenCV Cannyエッジ検出ドキュメント OpenCV Hough直線変換ドキュメント OpenCV画像平滑化ドキュメント StackOverflow マウス位置のクリック検出 - 議論 このプロジェクトでは、CSOMのCSCI437クラスの以下の関数が修正され、使用されました: get_xy() ; create_named_window() </description>
    </item>
    <item>
      <title>移動ポーズアルゴリズム</title>
      <link>https://mehmetmhy.com/langs/ja/moving-pose/</link>
      <pubDate>Thu, 31 Dec 2020 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/moving-pose/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;2020年12月の最終プレゼンテーション&#xA;プロジェクトについて コロラド鉱山学校での2020年秋学期の機械学習入門（CSCI470）コースの最終プロジェクトとして、私たちのチーム（アンドリュー・ダーリング、エリック・ヘイズ、私（メフメト））は「移動ポーズ」アルゴリズムを実装しました。&#xA;目標は、深度センサーでキャプチャされたスケルトンデータセットを使用して人間の行動を分類することでした。私たちはコアアルゴリズムを実装しただけでなく、その機能を示すためのシンプルなユーザーインターフェースも開発しました。&#xA;移動ポーズアルゴリズムは、ミハイ・ザンフィル、マリウス・レオルデアヌ、クリスティアン・スミンチセスコによって提案されたもので、3Dスケルトンデータから人間の行動を迅速かつ正確に認識し理解するための強力な方法です。&#xA;論文 私たちの実装は、ミハイ・ザンフィル、マリウス・レオルデアヌ、クリスティアン・スミンチセスコによる論文移動ポーズ：低遅延の行動認識と検出のための効率的な3D運動学記述子 (PDF)に基づいています。&#xA;データセット 私たちのモデルは、MSR DailyActivity 3D Datasetでトレーニングおよびテストされました。データセットから以下の行動に焦点を当てました：&#xA;UIプレビュー アルゴリズムのパフォーマンスをリアルタイムで視覚化するためのシンプルなGUIを構築しました。GUIおよび使用したハードウェアの詳細については、プロジェクトのリポジトリの/movingpose/gui/ディレクトリにあるREADME.mdファイルを参照してください。</description>
    </item>
    <item>
      <title>コンピュータビジョンプロジェクト</title>
      <link>https://mehmetmhy.com/langs/ja/csci437-labs/</link>
      <pubDate>Mon, 14 Dec 2020 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/csci437-labs/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;概要 このリポジトリは、メフメトとジャンがコロラド・スクール・オブ・マインズでの2020年秋学期に履修したCSCI437の期間（2020年8月28日から2020年12月14日）に取り組んだすべてのコーディングプロジェクト（ラボ）を紹介しています。これらのラボは、Python、OpenCV、および基本的なコンピュータビジョンの概念を学ぶための包括的なプラットフォームを提供しました。&#xA;コースについて 私は2020年秋学期にコンピュータビジョン入門 (CSCI437)を履修しました。この期間中、ウィリアム・ホフ博士とトム・ウィリアムズ博士が授業を担当しました。CSCI437。以下はCSCI437の公式授業概要です：&#xA;(I) Computer vision is the process of using computers to acquire images, transform images, and extract symbolic descriptions from images. This course provides an introduction to this field, covering topics in image formation, feature extraction, location estimation, and object recognition. Design ability and hands-on projects will be emphasized, using popular software tools. The course will be of interest both to those who want to learn more about the subject and to those who just want to use computer imaging techniques.</description>
    </item>
    <item>
      <title>CSフィールドセッション</title>
      <link>https://mehmetmhy.com/langs/ja/cs-field-session/</link>
      <pubDate>Sat, 01 Aug 2020 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/cs-field-session/</guid>
      <description>背景 2020年の夏、私はコロラド鉱山学校のコンピュータサイエンス学部の一環としてCSCI370、つまり「高度なソフトウェア工学」を受講しました。CSCI370は、学生が企業のためにソフトウェア関連のソリューションを設計、実装、文書化することを求めるコースです。このコースでは、学生が授業で学んだ知識を実際のコンピュータサイエンスの問題に適用することができます。このコースについての詳細はこちらで学ぶことができます。&#xA;このコースでは、どのプロジェクトや企業に取り組むかを決定することができます。コースでは、各プロジェクトと企業の詳細を記載したPDFが提供されました。最終的に、私はLunar Outpostという企業が投稿したリアルタイムホイールスリップ検出とエラー修正による強化された月面ナビゲーションというプロジェクトに取り組むことに決めました。名前が長いため、このプロジェクトには「ホイールスリップ検出」という別名を付けましょう。&#xA;問題 Lunar Outpostは、自律型月面ローバーを作成しようとしているスタートアップです。月面には、ホイールスリップを引き起こすことで知られる月の塵がたくさんあります。これは理想的ではありません。なぜなら、ホイールスリップは自律システムが実際の位置を見失う原因となるからです。地球では、GPSデータを使用してホイールスリップによって引き起こされるオフセットを修正することでこの問題が解決されます。しかし、GPSの問題は、30以上のナビゲーション衛星が常に地球の周りを回り、コンピュータが自分の位置を計算できるようにするユニークな信号を送信している必要があることです。しかし、月面には現在そのようなGPSは存在しません。これを考慮すると、ホイールスリップを検出するためにはGPS以外の別の方法を使用する必要があります。プロジェクトの問題に関する詳細なレポートはこちらで見ることができます。&#xA;チームメイト このプロジェクトは簡単なものではなかったため、チームで行う必要がありました。チームはコロラド鉱山学校の学生5人で構成されていました：&#xA;メフメット・イールマズ ケイン・ブルース ブレイドン・オキャラハン リアム・デンプシー ケビン・グラント このプロジェクトでは、ROS、C++、Python、Linux、Raspberry Pi、Arduinoの知識が必要でした。私たちのほとんどはこれらの技術の1つ以上の経験がありましたが、私だけが2020年春学期の人間中心ロボティクス（CSC470）クラスでROSを使用していたため、ROSの経験がありました。そのため、早い段階で、私は皆がROSを理解し、開発するのを助けました。&#xA;課題 このプロジェクトには多くの課題がありました。しかし、私たちが直面した最大の課題は、テストのために実際のロボットにアクセスできなかったことです。これは、COVIDの影響で全てがリモートになり、Lunar Outpostのラボや建物で作業できなくなったためです。そのため、私たちはシミュレーションを使用する必要がありました。&#xA;また、私たちはWVUナビゲーションラボのいくつかの学術研究を通じて、ホイールスリップの問題がLunar Outpostのユースケースにどのように解決できるかのアイデアを得ました。これは、私たちが学部の2年生と3年生であったため、予想以上に難しかったです。&#xA;私たちが直面したもう1つの課題は、このプロジェクトに取り組むための時間の量でした。CSCI370は1か月のクラスです。しかし、問題自体は、多くの企業や学者が数十年にわたって解決/完璧化しようとしている大規模な問題です。したがって、1か月ではこの問題を解決するには遠く及びません。しかし、これらのすべての課題にもかかわらず、私たちは頑張り抜き、成果を出すことを確実にしました。&#xA;結論 この投稿では、私たちの解決策についてより詳細な説明をしたかったです。また、私たちが発見したことや最終結果を説明する適切な結論を提供したかったです。しかし、残念ながら、私と私のチームメイトはすべての機密情報を共有することを禁止する秘密保持契約（NDA）に署名しました。上記の情報はすべて公開されており、インターネットからアクセスできます。&#xA;このプロジェクトを通じて、私たちは本当にROSを使用し、ROSとGazeboを使用してシミュレーションを作成する方法を学びました。また、ホイールスリップ検出の研究分野についての理解も深まりました。さらに、WVUナビゲーションラボの学者や研究者と会う栄誉も得ました。&#xA;これらすべてを考慮すると、このプロジェクトは私にチームのリーダーシップの役割を果たし、仲間がROSをよりよく理解するのを助ける教育者としての役割を果たし、ROS、Gazebo、Pythonの経験をさらに提供してくれました。また、ホイールスリップという問題に直面する機会を与えてくれました。この問題は、このプロジェクトに取り組むまで知らなかった問題です。全体として、Lunar Outpostが特にCOVIDの影響で忙しいスケジュールの中でこのプロジェクトに取り組む時間を取ってくれたことに感謝しています。また、このプロジェクトに本当に努力してくれた素晴らしいチームメイトがいたことにも感謝しています。</description>
    </item>
    <item>
      <title>人間の行動を予測する</title>
      <link>https://mehmetmhy.com/langs/ja/svm-on-skeleton/</link>
      <pubDate>Sun, 31 May 2020 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/svm-on-skeleton/</guid>
      <description>プロジェクトの GitHub リポジトリ&#xA;詳細 このプロジェクトは、2020 年春学期にコロラド鉱山大学で開講された Zhang 教授の Human Centered Robotics（CSCI473）クラスにおけるプロジェクト #3 でした。これは、サポートベクターマシン（SVM）の使用を通じて、ロボティクスにおける機械学習の入門を提供するよう設計されていました。元のプロジェクトの提出物／説明はこちらで閲覧できます。&#xA;このプロジェクトでは、いくつかの変更を加えた MSR Daily Activity 3D Dataset（図 2）を使用しました。このデータセットには、Xbox Kinetic センサーから収集され、スケルトンとして保存された 16 種類の人間の活動が含まれています。スケルトンとは、1 フレームで記録された人間の 20 個の関節の実世界座標 (x, y, z) の配列です。以下はスケルトンが何であるかを示す図です。&#xA;人間の行動予測を達成するために、元データは SVM で処理できる形式で表現される必要があります。このプロジェクトでは、次の表現が使用されました。&#xA;相対角度と距離（RAD）表現 関節位置差分ヒストグラム（HJPD）表現 分類のために、表現は LIBSVM によって動作する SVM に入力され、人間の行動を予測できるモデルを作成します。2 つのモデルが作成されます。1 つは RAD を使用し、もう 1 つは HJPD を使用します。目標は、これらのモデルをできるだけ高精度にし、どの表現が最も優れているかを確認することです。&#xA;これを踏まえて、コードが行うことの概要は次のとおりです。&#xA;変更済みデータセットから生データを読み込む 読み込んだデータセットから外れ値および／またはエラーデータを削除する 最終的な生データを RAD および HJPD 表現に変換する 表現を調整済み SVM に入力して 2 つのモデルを生成する 次に 2 つのモデルにテスト用生データを与え、モデルの性能を測定するために混同行列を生成する 結果 コードを実行し、可能な限りモデルを調整した後、RAD と HJPD の両モデルの最終的な混同行列は次のとおりです。</description>
    </item>
    <item>
      <title>Java における Clue ゲーム</title>
      <link>https://mehmetmhy.com/langs/ja/cluegame/</link>
      <pubDate>Sat, 28 Dec 2019 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/cluegame/</guid>
      <description>プロジェクトの GitHub リポジトリ&#xA;プロジェクトについて このプロジェクトは、Hasbro の古典的な殺人ミステリーボードゲーム Clue/Cluedo を Java と JFrame で実装したものです。目的は、殺人事件の 3 つの要素、すなわち容疑者、凶器、部屋を推理することです。プレイヤーは館内を移動し、推測を行い、推論を用いて、他の誰よりも先に事件を解決します。&#xA;これは、Colorado School of Mines における Software Engineering (CSCI306) コースの 2019 年秋学期 におけるグループプロジェクトでした。これは、オブジェクト指向プログラミング (OOP) とその 4 つの柱である カプセル化、抽象化、継承、多態性 を含む、ソフトウェア開発の中核原則を学ぶ素晴らしい導入となりました。このコースは、Git によるバージョン管理、共同ソフトウェア開発、プロジェクト管理を紹介してくれた点でも有益でした。&#xA;このプロジェクトは、Ruidi Huang と Mehmet Yilmaz（私）によるチーム作業でした。私たちは協力して、ゼロから完全なアプリケーションを構築する際の課題に取り組みました。バージョン管理には Git を使用し、リポジトリは GitHub 上でホストし、Discord と対面での会議を通じて連絡を取り合い、効果的に共同作業を行いました。アプリケーション全体は Java で Eclipse IDE 内に記述され、グラフィカルユーザーインターフェース（GUI）は JFrame ライブラリを使用して構築されました。&#xA;プロジェクトのプレビュー </description>
    </item>
    <item>
      <title>RaspPi ミュージカルキーボード</title>
      <link>https://mehmetmhy.com/langs/ja/rasppi-keyboard/</link>
      <pubDate>Wed, 27 Nov 2019 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/rasppi-keyboard/</guid>
      <description>プロジェクトのGitHubリポジトリ&#xA;デモ/説明 制作者/役割 アンドリュー・ダーリング コードのオブジェクト指向プログラミング構造とロジックを作成しました。 ライリー・ロイヤル RPBPの回路を構築しました。 メフメット・イールマズ コードのGUI要素と楽譜生成器を作成しました。 概要 Raspberry Piブザー・ピアノ（RPBP）プロジェクトは、コロラド鉱山学校が提供する学部クラス「Pythonセンサーシステム」（CSCI-250）の最終プロジェクトでした。2019年秋学期に、アンドリュー・ダーリング、ライリー・ロイヤル、メフメット・イールマズのグループプロジェクトとして実施されました。プロジェクトは2019年11月下旬から12月上旬にかけて正式に完成しました。&#xA;私たちのプロジェクトはRaspberry Piブザー・ピアノ（RPBP）です。このRPBPのアイデアは、13個のキーを持つミュージカルキーボードで、キーはボタンとして機能し、ピアノのキーのように振る舞います。キーが押されると、押されたボタンに応じて異なる周波数で1つ以上のブザーが鳴ります。また、2つのポテンショメーターがあり、そのうちの1つはRPBPの3つのモードを切り替えるために使用され、もう1つはブザーのオクターブを変更するために使用されます。RPBPの3つのモードは、フリープレイ、録音、再生です。フリープレイでは、ユーザーがRPBPを演奏し、どのキーを押したかを聞くことができます。録音では、ユーザーがRPBPをフリープレイしながら同時にそれをnpyファイルに録音し、その録音のPDF形式の楽譜を作成できます。再生では、ユーザーが録音されたファイル名を入力すると、回路がその録音ファイルをブザーで再生します。すべての楽譜は1つのディレクトリに保存されるため、ユーザーはいつでも自分の楽譜を振り返ることができます。各ボタン/キーには、ボタン/キーが押されたときにユーザーに示すLEDがあります。このプロジェクトは、以下に示す要件が適切に設定されたRasbian（Raspberry Pi OS）でのみ動作することが確認されています。&#xA;要件 LilyPond Python3 Raspberry Pi B 3+ Raspberry Pi OS (ISO) ARM（Raspberry Pi）でLillyPondを動作させる NumPy Bash 回路基板 情報 モード: フリープレイ: ユーザーがRPBPを演奏できるようにします。 録音: ユーザーが演奏した内容を録音し、その録音を保存し、録音した内容の楽譜を作成できるようにします。 再生: ユーザーがダウンロードしたり作成した録音を再生できるようにします。 ミュート: RPBPのすべてのブザーをミュートします。 モード間の更新方法: GUIの設定/値を変更し、送信ボタンを押します。 その他の注意事項: GUIからRPBPについてもっと学ぶには、READMEボタンを押すとこのREADMEが開きます。 回路 このプロジェクトで使用される回路基板の画像は、回路の写真セクションで見ることができます。 Pi Wedgeは、リボンケーブルを介してRaspberry Pi 3 B+に接続されています。 Raspberry Piは、このリポジトリに提供されているコードを実行し、このREADMEに記載されているドライバーを使用します。 回路のレイアウトが非常に乱雑で申し訳ありませんが、残念ながらこの部分の文書化はあまり良くありませんでした。 使用方法: 最初に、すべての要件が満たされていることを確認し、start.shバッシュスクリプトを実行するとGUIが表示されます。 次に、「モード」ラベルの下で使用したいモードを選択します。 [これらの手順は「フリープレイ」モードを選択した人のためのものです] 第三_10: 送信ボタンを押してRPBPで演奏を開始します。 [これらの手順は「録音」モードを選択した人のためのものです] 第三_20: 「録音名」ラベルの下に録音ファイルに付けたい名前を書きます。 第三_21: 送信というボタンを押すと赤いLEDが点灯します。 第三_22: RPBPで演奏し、終了したらGUIの停止ボタンを押します。 第三_23: 停止ボタンを押すと、録音が保存され、楽譜が生成されてPDFとして表示され、SHEETSディレクトリに保存されます。 [これらの手順は「再生」を選択した人のためのものです] 第三_30: 「送信」ラベルの下で再生したい曲ファイルを選択します。 第三_31: 送信ボタンを押して、選択した曲ファイルを聴き始めます。 [これらの手順は「ミュート」モードを選択した人のためのものです] 第三_40: 送信ボタンを押すだけで、すべてのブザーがミュートされ、別のモードに切り替えるまでミュートのままになります。 第四に、RPBPの使用が完了したら、終了ボタンを押してGUIと全体のプログラムを閉じます。 回路の写真 </description>
    </item>
    <item>
      <title>IBM PingMaster コンバーター</title>
      <link>https://mehmetmhy.com/langs/ja/ibm-pingmaster/</link>
      <pubDate>Wed, 26 Jun 2019 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/ibm-pingmaster/</guid>
      <description>元の GitHub 投稿&#xA;画像の出典 IBM PingMasterとは？ IBM PingMaster は、1980年代に中国および日本市場向けに IBM が製造したキーボードです。このキーボードはビンテージのグリーンスイッチを使用しており、9ピンのVGAケーブルに似ているがピンが4つしかないという奇妙な接続ケーブルを持っています。また、このキーボードには内蔵スピーカーとそのスピーカー用のボリュームノブが付いており、スピーカーの音量を調整できるだけでなく、キーを押すたびにキーボードがビープ音を鳴らすように設定することもできます。なぜこのビープ機能が作られたのかは分かりませんが、ユニークで変わっています。このキーボードについて詳しく知りたい場合は、Google で検索するか、Chyrosran22 のビデオをチェックしてください。&#xA;概要 このコンバーターは IBM PingMaster キーボードの4本のピンを USB 出力に変換します。これにより、IBM PingMaster キーボードを任意の現代のコンピュータで使用することが可能になります。このプロジェクトの目標は、上記のコンバーターを作成することでした。そのために、多くの情報源やトラブルシューティングを行いました。将来このプロジェクトを行いたい人のために、このコンバーターを作る過程を書き、私がこの目標を達成するのに役立った情報源を一覧にしました。インターネットがなければ、このコンバーターを作る方法は分からなかったでしょう。プロジェクトの詳細については、そのGitHub リポジトリを参照してください。&#xA;特別な謝辞 MrKeebs に特別な感謝を捧げたいと思います。彼の YouTube ビデオはこのコンバーター作成に非常に役立ちました。とても良いチュートリアルでしたが、PingMaster に HEX ファイルをアップロードするセクションでは苦労しました。ただし、配線を理解するのに非常に助けになりました。彼のビデオはこちらでご覧ください。&#xA;説明欄には MrKeebs の Discord サーバーへのリンクがあります。この Discord はコンバーター作成中のデバッグに非常に役立ったので、その Discord サーバーを確認し、必要なら助けを求めてください。&#xA;必要なハードウェア IBM PingMaster キーボード Pro Micro ボード 配線またはメス-メス/メス-オス ケーブル （オプション）9ピンVGAメスヘッド 必要なソフトウェア QMK ツールボックス ウェブブラウザ 変換手順 Pro Micro ボードに配線します。ケーブルのピンに直接配線するには、メス-メス/メス-オスケーブルを使用するか、9ピンVGAメスヘッドを使用します。配線は下の図を参照してください：&#xA;すべて配線したら、Hex ファイルを作成します。この hex ファイルはキーボードのレイアウトになるもので、tmk-kbd というウェブサイトでデザインできます。基本的にはそのウェブサイトでレイアウトを設計し、ダウンロードしてください。&#xA;ファイルのレイアウトができたら、ファイルを Pro Micro ボードにアップロードする必要があります。そのために、QMK ToolBox というツールをダウンロードしてセットアップしてください。&#xA;QMK ToolBox をセットアップしたら、open をクリックして、手順2でダウンロードした Hex ファイルのディレクトリに移動します。マイクロコントローラのテキストの下で atmega32u4 を選択してください。環境によっては異なる場合があるので、端末で自分のマイクロコントローラを確認する必要があるかもしれません。困った場合は「便利なリンク」を参照してください。</description>
    </item>
    <item>
      <title>NOAA 2017 インターンシップ</title>
      <link>https://mehmetmhy.com/langs/ja/noaa-internship/</link>
      <pubDate>Mon, 31 Jul 2017 00:00:00 +0000</pubDate>
      <guid>https://mehmetmhy.com/langs/ja/noaa-internship/</guid>
      <description>概要 2017年の夏、イースト高校で高校のジュニア学年を終えた後、National Oceanic and Atmospheric Administration (NOAA) でインターンをする栄誉に預かりました。インターンシップは2017年6月12日に始まり、2017年7月21日に終了しました。期間は約1.5か月でした。NOAAでは、NOAAのScience On a Sphereチームで働き、NOAAのSOSxとTour Builderソフトウェアに取り組みました。&#xA;SOSxは次のように説明できます:&#xA;Science On a Sphere® (SOS) は、コンピューターとビデオプロジェクターを使用して惑星データを直径6フィートの球に表示する部屋サイズのグローバル表示システムであり、巨大なアニメーション地球儀に類似しています。 [出典]&#xA;SOSxのTour Builderは、ユーザーがSOS用の「ツアー」を作成できるソフトウェアツールです。ツアーは次のように説明できます:&#xA;ツアーは、SOSx上で実行され、データセットを通じてユーザーを案内し、ストーリーラインを含めることができるスクリプト化されたプレゼンテーションです（概念的にはPowerPointのプレゼンテーションに似ています）。ツアーには、テキスト、画像、誘導的な質問、ポップアップのウェブコンテンツ、ビデオ、クリック可能なプレースマーク、オーディオ、ユーザー入力のための一時停止などが含まれることがよくあります。 [出典]&#xA;SOSxの技術スタックは主に Unity と C# でした。Tour Builder の技術スタックが何であったかは正確にはわかりません。3Dモデルは Blender のようなツールで編集/作成され、いくつかのモデルはオープンソースライセンスが付与されている限りインターネットから入手されました。&#xA;私はNOAAのボルダーオフィス（NISTのすぐ隣）でインターンを行い、主にTour Builderソフトウェアを使用してNOAAのSOSxの開発を手伝いました。アポロ11号のミッションの教育用ツアーを作成しました。ツアーのために、インターネットからアポロ11号ロケット、ボイジャー1号、およびアポロ11号月着陸船の3Dモデル（Blenderファイル）を入手し、一部のSOSx開発者のおかげでSOSxに追加されました。ツアーには多くの画像とビデオが含まれています。画像はGoogle Imagesから取得し、macOSのPreviewアプリで編集しました。ビデオはYouTubeから取得し、macOSのiMovieアプリで編集しました。テキストと全体的な &amp;ldquo;tour editing&amp;rdquo; はSOSのTour Builderソフトウェアを使用して行われました。&#xA;インターンシップ中、私はUnityでビデオゲームを作る実験もしました。このゲームでは、プレイヤーがアポロロケットを運転して火星に向かい、着陸を試みることが目的でした。時間の制約により、ゲームは完成せず、非常に初期の開発段階にありました。しかし、ロケットと火星のアセットをゲームに追加し、基本的なロケット操作を動作させることはできました。プログラミング言語には C# を使用し、私のコーディングの旅に役立ったと言えるでしょう。&#xA;ツアーデモ 結論 高校のインターンとしてNOAAで働くことは素晴らしい経験でした。これはSTEM分野への早期の導入であり、その1.5か月の間に多くを学びました。これほど素晴らしい科学機関で若いうちからインターンをする機会を得られたことに感謝しています。&#xA;写真 NOAAのボルダー看板&#xA;オフィスからの眺め&#xA;私のデスクのセットアップ</description>
    </item>
  </channel>
</rss>
