Slide 1

Slide 1 text

2025.3.15 デジもく会 LT 西村備山 (@lipoyang) GitHub Copilot 対 Cursor

Slide 2

Slide 2 text

GitHub Copilot 対 Cursor GitHub Copilot Cursor 形態 VSCodeなどの 拡張機能 VSCodeベース (別アプリ) 開発元 GitHub (MS傘下) Anysphere (スタートアップ) 機能差 現在では似たようなもの? (大局的な文脈判断はCursorのほうが賢い?) UI / UX 好み/慣れの問題?

Slide 3

Slide 3 text

実例:作りたいアプリ • ウィンドウに画像ファイルをD&D • 縦横比を保ってウィンドウいっぱいに表示 • ウィンドウサイズ変更時は再描画 • マウスで範囲選択 (縦横比は16:9に固定) • 選択範囲の境界線と中心線を描画 • 選択範囲をドラッグで移動できる • 保存ボタンをクリックすると選択範囲を切り取って保存 • 解除ボタンをクリックすると選択範囲を解除 画像切り抜きアプリ

Slide 4

Slide 4 text

Chatで段階を踏んで実装していく (1) 「Pythonでウィンドウに画像ファイルをドラッグアンド ドロップして表示させる。」→ エラー 「AttributeError: 'Frame' object has no attribute 'drop_target_register'」→ エラー修正OK 「画像を縦横比を保ったまま拡大縮小してウインドウ いっぱいに表示させる。」 → エラー 「AttributeError: module 'PIL.Image' has no attribute 'ANTIALIAS'」→ エラー修正OK

Slide 5

Slide 5 text

Chatで段階を踏んで実装していく (2) 「ウインドウを拡大縮小したときにウインドウサイズに 応じて画像を再表示する。」→ OK 「表示されている画像の上をマウスでドラッグして長方 形の範囲を選択できるようにする。このとき境界線を適 当な色で描く。」→ OK 「範囲の縦横比は16:9に固定させる。」 → OK

Slide 6

Slide 6 text

Chatで段階を踏んで実装していく (3) 「ウィンドウにボタンを追加し、選択範囲の画像をファ イルに保存する。 」→ 解像度が劣化 「保存するとき、表示中の画像から切り抜くのではなく、 元画像から対応する範囲を切り抜く。」→ 座標が不正 → ソースを読んで計算間違いを手動で修正 細かい間違いをChatで押し問答するのは時間のムダ!

Slide 7

Slide 7 text

Chatで段階を踏んで実装していく (4) 「選択範囲に縦横の中心線を描画」→ OK 「一度範囲を選択した後、選択範囲内を左クリックして ドラッグしたときは選択範囲を平行移動して枠線と中心 線を再描画する。」 → OK 「選択範囲を解除するボタンを追加」 → OK → 手動で境界線と中心線の色を調整、境界線は白黒二重

Slide 8

Slide 8 text

ポイント (※個人の感想です) • Chatでの指示は step by step で • 細かい修正は自分でやったほうが速い • Chatで押し問答するのは「チェンジニア」 • Gitと併用 (バージョン管理は人間の責任)

Slide 9

Slide 9 text

AIとの押し問答は禁物 デバッグを神頼みにしない 1. दुक्ख 問題を明らかにする 2. समुदय 問題の原因をつきとめる 3. निरोध 問題の原因の解消するには 4. मग्ग 問題の原因の解消を実装する

Slide 10

Slide 10 text

Commitは人間の責任