Slide 1

Slide 1 text

Kaggle Badges を作った話 第2回 関東Kaggler会 @2024/08/03

Slide 2

Slide 2 text

自己紹介 氏名:Takayoshi MAKABE(Twitter → @Takayoshi_ma) 趣味:[プロ野球観戦, 投資, ダンス] 所属:株式会社アンドパッド 職種:データエンジニア Kaggle: Rank:Master 歴:5年(うち2年はinactive…) 得意:テーブルコンペ 苦手:画像コンペ テーブルコンペ中心、たまに NLPなどに出ているKagglerです!

Slide 3

Slide 3 text

GitHub Profile SNSやKaggleからの流入、転職活動、OSS活動・ブログや書籍の執筆、外部公演など色々なとこで意外に GitHubはみられ ます! その時少しでも自分の情報を掲載しておくと、きっかけ作りにもなります! あなたのGitHub、こんな感じになってませんか??

Slide 4

Slide 4 text

GitHubプロフィール画面 直接画面共有する

Slide 5

Slide 5 text

作ったもの ランクに応じたバッジを自動生成してくれる GitHub Actionsを作成しました! Name:Kaggle Badges Stacks:[Node.js, TypeScript, svg.js, …] Comments: - 必要なものはKaggleとGitHubのアカウントだけ - ランクに応じたバッジを自動生成してくれる - 表示したいものだけセレクト可能 苦労ポイント: - 実行環境を自ら作成しているわけではなく、あくまでもワーク フロー実行者依存。その辺考えること全般(テスト設計とか) - TypeScriptをトランスパイルする際、ESMoculeかCommonJSか でそれぞれのパッケージが微妙に面倒なことを起こす

Slide 6

Slide 6 text

使い方 専用リポジトリを用意しワークフローを定義するだけ 手順: - Action:自身のGitHubアカウント名と同じ名前のリポジトリを用意し、README.mdを作成 Comment:😆このREADMEがそのまま自身のプロフィールとして表示されます! - Action:`{ リポジトリ名 }.github/workflows/{任意のファイル名}` でYAMLを用意する - Action:用意したYAMLにワークフローを定義していく Comment:😆ワークフローの詳細は次のスライドで! - Action:ワークフローが正常終了するとリポジトリ直下にSVGがファイル作成される - Action:作成されたSVGファイルをREADMEから呼び出し Comment:😆例えば `![](./kaggle-plates/Discussions/white.svg)`のようにMarkdown形式でもいいし、HTMLタグでもOK - Action:Workflowに対して、リポジトリのWrite権限を付与する Comment:😆生成したSVGファイルをWorkflowがリポジトリへ反映させる権限が必要です

Slide 7

Slide 7 text

ワークフロー 内容はMarket Placeに書いていますがここでは幾つかのポイントをピックアップ 実行タイミング ☑mainにmerge ☑cron指定 ☑ 手動 runner Repoコードを取得 node.jsの環境 スクレイピングに必要なパッケージ ブラウザをインストール 作成したActionを使用 環境変数として自身の KaggleUserNameを渡 す 生成されたSVGファイルをリポジトリに反映 させる

Slide 8

Slide 8 text

おわりに 是非とも使ってみてください! GitHubのスターももらえると嬉しいです(下心)