どんなアイデアや事例がありそうか個人的に想像してみました.
プログラムの規模別
実際にあるサービスをまとめてみました.
-
OS(オペレーティングシステム)
- Windows, Linux: C言語, Javaなどさまざまな言語を使ってプログラミングできる.
-
ローコード、ノーコードツール(GUIによるプログラミング?)
- bubble(アプリ作成ツール):GUIからwebサービスを作ることができる.
- datarobot(機械学習ツール チューニング部分についてカスタマイズ可能)
-
AIによるプログラミングの自動化
- GitHub Copilot: 関数名とコメントから関数のコードを丸ごと自動補完するAIプログラミング機能
-
プログラミング
- ソースコードの選択部分(if文): 切り替え先を新規生成されたプログラムとみなす.
- jinja2: Python Flaskなどと一緒によく使われる、template作成ツール
- bash初心者向けに、単純なlinuxコマンドをPythonで作成する(web開発のlibrary Reactにインスパイアされて作ったことがあるけど、いまは使ってない... 個人用のprivateなツールです)
応用先
IT業界の課題に対して、コード生成によって解決できることがないかアイデアを出してみました.
-
アプリ開発(インターフェース部分)の工数が大きい
- 解決策(アイデア): OSSを生成するローコードツール. OSSを生成してくれれば、リリース方法に選択肢が生まれるため工数の膨らまない得意な場所を選べる
-
技術選定が難しい
- 解決策(アイデア): ビジネスにおける0->1(OSの選定から、なんらかのサンプル生成まで)の自動生成
-
ロジックが流出しやすい
- 解決策(アイデア): システムのコア部分を分離して、独自の難読化をかける.
曖昧さ回避
- 第三者: 他人, AI(確率を活用したプログラム), ルールベースのプログラム, 未来の自分)
- サービス: プログラム生成される前後で、変更の発生しないソフトウェア