
一方、無機化合物の結晶構造を考察する時には、実験などで現実的に取り得る構造について研究者が経験則的な知見を持っている。
無機化合物の結晶構造を計算コストかけず網羅的に探索、経験則を不等式で表すのがミソ 東大 | Science Portal - 科学技術の最新情報サイト「サイエンスポータル」
尾崎教授の下で大学院生として研究していた産業技術総合研究所の小正路(こしょうじ)崚太郎研究員(計算物質科学)は、「だいたいこれくらいまで」「これ以上は影響しない」といった知見を、ビジネスやエンジニアリングの分野で合理的意思決定を支援するのに用いられることがある「数理計画問題」に取り入れれば、計算で結晶構造を探索できると考えた。
無機化合物の結晶構造を計算コストかけず網羅的に探索、経験則を不等式で表すのがミソ 東大 | Science Portal - 科学技術の最新情報サイト「サイエンスポータル」
「拘束条件」で条件を満たすものを絞り込むやり方で全ての候補を計算せずにすむため、計算コストを減らせるという。
無機化合物の結晶構造を計算コストかけず網羅的に探索、経験則を不等式で表すのがミソ 東大 | Science Portal - 科学技術の最新情報サイト「サイエンスポータル」
⇧ う~む、「探索範囲」を限定するのだから、厳密な意味で「計算コスト」を削減したことにはならない気がしますが...
もしかしたら、切り捨てた「探索範囲」にこそ、重要な発見がある可能性も0では無いはずなので...
まぁ、
トレードオフ(英: trade-off)とは、何かを得ると、別の何かを失う、相容れない関係のことである。平たく言うと一得一失(いっとくいっしつ)である。対義語は両立性(コンパチビリティ、英: compatibility)。トレードオフのある状況では具体的な選択肢の長所と短所をすべて考慮した上で決定を行うことが求められる。
⇧「トレードオフ」と言われてしまえば、それまでなのですが...
GitHubとは
公式のドキュメントによりますと、
GitHub について
GitHub は、 クラウド ベースの プラットフォームで、コードを書く際に、保存、共有、他の人との共同作業が可能です。
https://docs.github.com/ja/get-started/start-your-journey/about-github-and-git
Git について
Git は、ファイルの変更をインテリジェントに追跡するバージョン コントロール システムです。 Git は、ユーザーとグループが同じファイルに同時に変更を加えようとする場合に特に便利です。
https://docs.github.com/ja/get-started/start-your-journey/about-github-and-git
⇧ とあり、説明がザックリ過ぎる...
Wikipediaによりますと、
GitHub(ギットハブ)は、ソフトウェア開発のプラットフォームであり、ソースコードをホスティングする。コードのバージョン管理システムにはGitを使用する。Ruby on RailsおよびErlangで記述されており、アメリカのカリフォルニア州サンフランシスコ市に拠点を置くGitHub社によって保守されている。主な開発者はクリス・ワンストラス、P.J.ハイエット、トム・プレストン・ワーナーである。
⇧ とあり、
Git server as a service
There are many offerings of Git repositories as a service. The most popular are GitHub, SourceForge, Bitbucket and GitLab.
⇧ GitHub以外にも似たようなサービスはありますと。
何某かのサーバーが、GitHub社によって用意されているということなんかね?
公式の情報ではないのですが、
⇧ 上記サイト様がアカウント周りについて、まとめて下さっている。
本来であれば、こういう情報って、公式が整備するものだと思うのだけど、公式ってドキュメントの構成がイケてない感じになってしまうのは何でなんでしょうね...
GitHubとGitHub Appsの関係は?
公式のドキュメントによりますと、
⇧ 上記のカテゴリ毎に機能が用意されておりますと。
カテゴリとしては、8つあり、全部で35用意されておりますと。
| No | カテゴリ | No | 機能 |
|---|---|---|---|
| 1 | Collaborative coding | 1 | Codespaces |
| 2 | Repositories | ||
| 3 | Pull requests | ||
| 4 | GitHub Discussions | ||
| 2 | GitHub Copilot | 1 | GitHub Copilot |
| 2 | Get code suggestions | ||
| 3 | Prompt engineering | ||
| 4 | Example prompts | ||
| 5 | Chat in GitHub | ||
| 6 | Refactor code | ||
| 3 | CI/CD and DevOps | 1 | GitHub Actions |
| 2 | GitHub Packages | ||
| 3 | GitHub Pages | ||
| 4 | Security | 1 | Code security |
| 2 | Supply chain security | ||
| 3 | Security advisories | ||
| 4 | Dependabot | ||
| 5 | Code scanning | ||
| 6 | Secret scanning | ||
| 5 | Client apps | 1 | GitHub CLI |
| 2 | GitHub Mobile | ||
| 3 | GitHub Desktop | ||
| 6 | Project management | 1 | GitHub Issues |
| 2 | Projects | ||
| 3 | Search on GitHub | ||
| 7 | Enterprise and Teams | 1 | Organizations |
| 2 | Secure your organization | ||
| 3 | Enterprise administrators | ||
| 4 | GitHub Well-Architected | ||
| 8 | Developers | 1 | Apps |
| 2 | REST API | ||
| 3 | GraphQL API | ||
| 4 | Webhooks | ||
| 5 | Build Copilot Extensions | ||
| 6 | GitHub Models |
⇧ この内、「8. Developers」の「1. Apps」という機能が「GitHub Apps」ということになるらしい。
GitHub AppsってGitHub Enterprise Server(GHES)に構築されているということなのか
2024年11月30日(土)時点で、公式のドキュメントによりますと、GitHubに35の機能が用意されているっぽいのだが、公式のブログの情報で、
GitHub stores your source code, releases, and a vast amount of invaluable information in issues and pull requests. While GitHub Enterprise Server (GHES), our self hosted solution, provides great security by default, administrators can take additional steps to further harden their appliance. This post will guide you through the most important settings.
⇧ とあり、「GitHub Enterprise Server(GHES)」というものが、GitHub社が用意しているものということで良いのかがサッパリ分からないのだが、
⇧「Private Network」がGitHub社の領分の話であるならば、「GitHub Enterprise Server(GHES)」上に、35の機能を提供するシステムが構築されていると考えて良いのだろうか?
関係性が全く分からんのよね...
何やら、
⇧ サーバーにも種類があるらしいのだが、頼むから全体像を把握できるドキュメントを用意してくれないだろうか...
GitHub Appによるトークン認証でGitリポジトリの操作が可能な仕組み
で、公式のドキュメントの「GitHub Apps」のページを見ると、
⇧ いきなり、「OAuth apps」という「GitHub Docs」で説明の無い機能の話が出てくるという...
「GitHub Apps」のドキュメント内に、
⇧「OAuth apps」の説明のページがあることから、「GitHub Apps」の1機能ということになるらしい...
本当に、全量が把握し辛くて辛いんだが...
何となくだが、
⇧ 大きく分けて、2つに分かれるということなんかね?
『OAuth app ではなく GitHub App を構築することを検討してください。』
とあるということは、GitHub的には、「1. GitHub Apps」を推奨しているということになるかと。
公式の情報では無いのですが、
⇧ 上記のPDFの情報によりますと、「GitHub App」を作成し「秘密キー(.pemファイル形式)」を生成し、「GitHub App」に管理したい「Gitリポジトリ」を登録まで済んでいる前提に成りますが、
- 「GitHub App」の「秘密キー(.pemファイル形式)」と「Cilent ID」を元に、「JWT(JSON Web Token)」を生成する
- 「JWT(JSON Web Token)」を元に、「GitHub App」の「Installation ID」を取得するリクエストのREST APIを実行する
- 「JWT(JSON Web Token)」と「GitHub App」の「Installation ID」を元に、「Installation Access Token」を取得するリクエストのREST APIを実行する
ということを、アプリケーション側で行うことで、「Git操作」に必要な「Installation Access Token」が取得できると。
「PAT(Personal Access Token)」の代わりに「Installation Access Token」を利用できるということですな。
⇧ 上記のPDFの図がイメージし易いかと。
ちなみに、個人用の「GitHub」の「アカウント」でも「GitHub Apps」は利用できる模様。
「GitHub App」の制限などは、
⇧ 上記のページに記載があったのだが、「GitHub App」で管理できる「Gitリポジトリ」の数の上限などについては、記載が無いため実質無制限ということで良いんだろうか...
⇧ 2種類あるらしいが、「REST API」の制限については、
⇧ 上記のページになる模様。
公式のドキュメントについては、整備を頑張っていただきたいお気持ち…
毎度モヤモヤ感が半端ない…
今回はこのへんで。









