以下の文章は Markdown として記述しています。 視認性が悪い場合は https://sksat.net/misc/seccamp2026-entry.html を見てください。同一ソースのレンダリング結果を掲載します。 はじめに/評価について この応募課題は、あなたに考えてもらい、講師があなたのことを知るためのものです。 明確な答えのない設問となっているため、分からないと思っても、何をどう調べ、どう考えたかを途中まででもぜひ書いてみてください。 評価は加点方式で行います あなたが考えた道筋やあなたの熱意を重視します 不正確なことを書いても減点するようなことはありません すべての回答が満足いくほど書けていなくても、とりあえず提出してみてほしいです 文字数の制限はありません 回答の長さによって評価を変えるようなことはしません 短い回答は必要十分に簡潔であれば伝わりやすい一方で情報が不足するリスクがあります 長い回答は情報量を増やしやすい分冗長にもなりやすいです これらはトレードオフの関係にあるため、どう表現するかも含めてあなたの意思決定であり、あなたが考えることです テキストのみで回答できない・回答しにくい場合はファイルを添付してください 一部の設問では作図を要求しています 作図方法は問いません なんらかの作図ツールを用いてもよいですし、紙やホワイトボードに描いたものの写真でもなんでも構いません 添付ファイルの形式は問いません 一部の有償ソフトウェアでしか閲覧できないようなものはやめてください テキストでの回答も含めてすべての回答を1つの PDF ファイルにまとめて提出する、といったことをしてもよいです この場合は、通常の課題回答欄に「添付ファイルで回答」といった文字列を代わりに入れておいてください 図をたくさん描いて文章で適宜参照していくような表現をする場合、こちらの方がみなさんも書きやすいし講師も読みやすい、ということもあるかもしれません 応募課題提出システム上提出できない・提出しにくいような形式のものがある場合は、どこかにアップロードしてその URL を提出しても構いません ただし、提出期限以降編集していないことが明らかであるか、検証可能なようにしておくこと 回答に擬似コードやソースコードを含めても構いません (擬似)コードはロジックやインターフェースを分かりやすく伝える強力な道具のひとつです(たとえそれがソフトウェアでなかったとしても) 意図やポイントが分かるようなコメントがあると助かります 一部の設問には発展課題を設けています 発展課題の回答は任意とします 無理に発展課題に回答するよりは、それ以外の回答を丁寧に考えて書いてもらうことに価値があります しかし、(応募の後にでも)ぜひ考えてもらえるとうれしいです 発展課題の回答は元の課題と混ぜて書いても構いません つまり、Q3 の回答欄内で Q3.1 や Q3.2 の回答を含めてよいです 回答を考えるにあたり、Web で情報収集をしたり、ChatGPT・Gemini・Claude のような LLM を活用して構いません 適宜出典や引用元は明記してください LLM への入力(プロンプト)を回答に含めても、含めなくても構いません ただし、LLM から出力されたモノは「あなた」が出力したものではないことに留意してください Q1 あなたが今までに作ったモノを自由に語ってください。複数人で作った場合は、どの部分をどのように担当したのかを明示するようにしてください。作ったモノが公開リポジトリなどにある場合は、そのリンクも書いてもらえるとうれしいです。語る切り口が難しい場合は、どのようなプログラミング言語やライブラリ、エコシステムを使って作ったのかや、次の発展課題と混ぜて書いてみてください。 Q1.1(発展課題) Q1 で作ったモノを作る中であなたが感じた壁のうち、最もあなたにとって難しかったこと、もしくは、特に印象に残っていることについて教えてください。あなたはその壁をどう調査し、克服しましたか?具体的に教えてください。壁を克服しきれなかった場合は、当時どう対処しようとしたかに加えて、今振り返ってみると当時は何が不足していたと思われるか、今やり直すならどうするかなどの考えを聞かせてください。 Q2 あなたの印象に残っている「これは便利だ」と感じたモノを教えてください。工具のようなハードウェアでも、エディタやその拡張機能といったソフトウェアでも、5回のクリックを1回にできるちょっとしたショートカットでも、なんでも構いません。 また、それはなぜ「便利」だったのでしょうか?つまり、どのような課題があり、それをどう解決しているのでしょうか?考えてみてください。 Q2.1(発展課題) どのようにすれば、そのような「便利」なモノを自分で作ることができるでしょうか?考えてみてください。 また、もし既に自分が作った「便利」なモノがあれば、そのエピソードも教えてください。 Q3 一般的な単色のボールペンを用意してください。ゼブラ JJ15 のような、シンプルかつ外装が透明で中の構造が視認しやすいものが望ましいです。 用意しましたか?それでは、このカチカチとペン先を出し入れする機構のことを考えながら、できるところまで分解してみましょう(元に戻せる自信が無ければ、他人のボールペンで勝手にはやらないように注意!)。 分解したら、各パーツをよく見て、この機構の仕組みを図を交えて解説してください。 解説にあたっては、ペンは発明しているもののこの「カチカチ」の機構はまだ存在していない世界の人にこのアイデアを伝えて、製造できるようにすることを考えてみてください。ぜひ何度か組み上げたりまた分解したりしてみてほしいです。 Q4 宇宙開発においては、「枯れた技術」と形容されるような、比較的古めの技術が使われることが多いです。特に情報技術においては、一般的な IT 業界と比較して10年、20年程度の開きがあることも珍しくはありません。 これはなぜでしょうか?そして、これにはどのようなメリット・デメリットがあるでしょうか? ソフトウェアとソフトウェア以外ではどうでしょうか?また、これは「宇宙開発」だから特別な事情があるのでしょうか?複数の観点から論じてください。 Q5 宇宙機はロケットという輸送手段で地上から宇宙に輸送され、軌道にデプロイされます。 一度デプロイされた宇宙機は、原則として物理的に修理することができません。なぜなら、宇宙に出張に行って機体に近づいて蓋を開けて作業することがほとんど不可能だからです。そのためハードウェアの修理は絶望的ですし、ソフトウェアについても、その場にノート PC を持って行ってデバッガをアタッチしたりソフトウェアを書き換えることはできないわけです。このような性質は「非修理系」と呼ばれています。 これは非常に不便な特性です。打ち上げて運用を開始してからバグが見つかったらどうしましょう? そのバグは姿勢制御系の秘孔を突いて機体を高速回転させて遠心力で機体を分解させてしまうような、後から対処できない致命的なものかもしれません。 また、バグでなくとも、途中からそもそもシステムに対する要求が変わるかもしれません。 例えば気象観測目的の人工衛星で、特定の種類の区もを衛星上で認識するミッションがあり、そのためにソフトウェアを開発して打ち上げていたとします。これは問題なく動作していたのですが、運用を開始した後に、別の種類の雲を判定したり、より高精度な認識を可能にするアルゴリズムが新たに開発されました。とはいってもそのアルゴリズムのためだけにまた衛星を作り直すのは大変だしお金もとんでもない金額がかかってしまうため、このアルゴリズムを今軌道上にある衛星に組み込むことができると非常に価値があります。 このような問題に対して、どのような技術的解決が考えられるでしょうか? また、どのように宇宙機やそのソフトウェア、送信するコマンドなどの運用計画を設計しておけば、運用時に後から発生する問題に対して対処しやすくなるでしょうか?自由に提案してみてください。 ヒント:漠然としていて考えにくい場合は、宇宙機を普通の Linux サーバだと仮定してみるとよいでしょう。ただし、物理筐体を直接操作することはできず、通信の機会が1回数分・1日1回程度のすごく不便なサーバです。インターネットにも繋がっていません。このような制限は適宜調べたり、想像したりしてみてください。 Q6 このゼミで自作する探査機で探査してみたいことや、やってみたいことを自由に述べてください。 実現可能性などはさておいて、ブレインストーミング的に自由にアイデアを書いてみてください。 Q6.1(発展課題) Q6 で考えたやってみたいことを実現するための手立てをできるだけ具体的に考えてみてください。 どんな手段が必要でしょうか?また、それをあなたが実現するためには今何が不足していて、どのように立ち向かうとよいでしょうか? Q6.2(発展課題) おそらく、みなさんは「複雑なシステム」を作った経験は無いでしょうし、ソフトウェアをやってきた人はハードウェアを、ハードウェアをやってきた人はソフトウェアの経験はあまり無いと思います。ソフトウェア、ハードウェア、というのは大雑把な例に過ぎませんが、「複雑なシステム」を作る中では、自分が知らなかったことを知っていくことや、チームメンバーが何をやっているか(どんな背景でどんな問題を解決しようとしているのか)をできる限り把握し続ける営みが重要になってくるでしょう。 そんな中で、近年は LLM がとても便利なツールとして活用できると思います。また、ソフトウェア開発などにおいても、コードを生成させたり、実際のテストまでやらせるようないわゆる Coding Agent と呼ばれているようなものも価値を発揮する瞬間は多いでしょう。一方で、LLM をこのように自分がまだ慣れていない分野で活用するのには難しい面も多いでしょう。そこで、どのような部分が LLM によってカンタンになるのか、一方で、どのような部分は難しくなるのかを考えながら、今回の探査機自作でどのように LLM を活用していくとよいかを自由に考え、論じてください。ただし、想像で過度に非観的、もしくは楽観的になることは避け、LLM や Coding Agent の仕組みや構造、自分のこれまでの実体験などをベースに論じてください。