企画名: わらしべコード
企画名: わらしべコード
事の発端は
ちょっとしかコード書けない人が
強いエンジニア仲間と出会ってコードを交換していったら
なんかスゴイのできるんじゃね?
という小学生的発想のもと
Geminiさんが察しが良いので
メモまでに
※普段から
生成AIで作った文章をそのままコピペするんじゃない!!
って言ってる本人が
以下、コピペです
手抜きです
ゴメンナサイ
コンセプト
参加者が自分が書いたコードを「物々交換」のように他の人のコードと交換していく企画。最終的に、最初の小さなコードが、まったく違う、より大きなコードへと変化していく過程を楽しむ。
目的
プログラミングの面白さを再発見する。
他の人のコーディングスタイルや発想に触れ、学びを得る。
コミュニティ内での交流を深める。
遊び方
Step 1: 最初のコードを用意する 参加者はまず、ごくシンプルな機能を持つコードを用意します。たとえば、「’Hello, World!’と表示する」や、「2つの数字を足し算する」といった、短くてわかりやすいコードが適しています。
Step 2: コードを交換する 参加者同士でコードを交換します。交換相手は、抽選や募集などでマッチングさせるとスムーズです。
Step 3: コードを「わらしべ長者」のように改良する 受け取ったコードに、自分のアイデアや技術を加えて機能を追加したり、より効率的なコードに書き換えたりします。元のコードのアイデアを活かしつつ、まったく違うものに進化させるのがポイントです。
たとえば、「2つの数字を足し算する」コードを受け取ったら、「3つの数字を扱えるようにする」や、「四則演算ができる電卓アプリにする」など、機能を拡張していきます。
Step 4: 交換と改良を繰り返す このプロセスを数回繰り返します。交換を重ねるごとに、それぞれのコードがどのように変化していくかが見どころです。
最終的なゴール: 最終的に、すべての交換が終わった後、参加者全員で「自分のコードがどう変化したか」を発表し合います。最初のシンプルなコードが、一体どのような「大作」になったのかを共有し、お互いの工夫や発想を称え合います。
企画を成功させるためのポイント
ルールをシンプルにする: 参加者が混乱しないよう、交換の回数や機能追加のルールはわかりやすく設定しましょう。
コードの言語は統一する: 企画を始める前に、使用するプログラミング言語を統一しておくと、交換後の改変がしやすくなります。
オンラインツールを活用する: GitHubやGitLabのようなバージョン管理システムを利用すると、コードの変更履歴が追えて、誰がどのような改良を加えたかが一目でわかります。
フィードバックの機会を設ける: 交換のたびに、お互いのコードについてコメントし合う時間を設けると、交流が深まります。
「わらしべ長者」の物語のように、価値の低いものから価値の高いものへと交換していく要素をコードの交換にも取り入れてみましょう。
- 価値の評価システムを導入する: 交換するコードに「価値」を付与します。交換は基本的に「同じか、より高い価値のコード」と行います。これにより、参加者はより価値のあるコードを目指して改良することにモチベーションが湧き、競争要素も加わります。単純な機能: 1わらしべポイント
複雑な機能や優れたコード: 3わらしべポイント
ユニークな機能やデザイン: 5わらしべポイント - 物語性を持たせる: 企画全体を一つの物語として演出します。交換履歴を可視化する: GitHubのプロジェクトページや専用のWebサイトを作り、各コードがどのように変化したかを時系列で表示します。 これにより、コードがどのようにして「大作」へと成長したのか、その歴史を参加者全員で共有できます。
最終発表会を企画する: 最後の交換が終わった後、オンラインまたはオフラインで発表会を開催します。参加者は自分のコードの変遷をプレゼンし、その工夫や苦労を発表します。オーディエンスの投票で「最もわらしべ長者らしいコード」を決定するのも面白いかもしれません。
企画を広げるアイデア
テーマを設定する: 交換するコードのテーマをあらかじめ決めておくと、より方向性が定まりやすくなります。「ゲームを作る」「Webアプリを作る」「データ分析ツールを作る」など、テーマごとにグループ分けをして交換を行うのもいいでしょう。
プログラミング言語の壁を超える: ある程度の知識がある参加者向けに、異なるプログラミング言語間でコードを交換するルールも面白いかもしれません。たとえば、Pythonで書かれたコードをJavaScriptに書き換えたり、その逆を行ったりすることで、より高度な技術的挑戦ができます。
