コンピュータサイエンス教育における社会的責任の育成
学生に技術と社会問題を結びつけてポジティブな影響を与えるように教える。
― 1 分で読む
目次
今日の世界では、技術が私たちの生活に大きな役割を果たしてる。でも、同時に社会に不公平な状況を生み出したり、害を及ぼすこともある。だから、コンピュータサイエンスを学ぶ学生は、学びながら社会的責任について学ぶことが大事なんだ。これは、技術が人々やコミュニティにどんな影響を与えるかを理解し、自分たちの役割を認識することを意味してる。
コンピュータサイエンスにおける社会的責任の重要性
学生がコンピュータサイエンスを学ぶとき、コーディングや技術スキルにだけ集中しない方がいい。技術に関連する社会的・倫理的な問題についても考える必要があるんだ。これによって、自分の仕事の全体像が見えて、ポジティブな変化を起こす力を持つことができる。
学生がこういう問題について考えるように促す一つの方法は、彼らの個人的な目標と学びを結びつけること。個人の興味と学んでいることがつながると、教材に対してもっとやる気が出るし、自分がこの分野にいることを実感できる。
さらに、計算機における共同の目標について教えることで、参加の幅を広げることができる。これは、技術分野で歴史的に代表されていないグループにとって特に大事。社会的責任に焦点を当てることで、多様な視点を重んじる、より包括的な環境を作れるんだ。
コースの構成
社会的責任のあるコンピューティングを学ぶために、新しい入門コースが開発された。このコースは、技術スキルと社会問題の議論をカリキュラム全体に組み合わせた。単に技術的内容の上に社会的トピックを追加するのではなく、最初から統合していたんだ。
1~3週目:技術の影響を理解する
コースの最初の3週間は、学生が日常生活で技術がどう使われているかを見るために設計された。プログラミングに飛び込むのではなく、学生は家族や友人が技術とどう関わっているかを観察した。人々に技術の使い方を話してもらい、開発者の責任や技術が社会に与える影響について議論した。
この間、学生は功利主義などのさまざまな倫理理論や、異なる視点を理解することの重要性についても学んだ。誰が特定の技術にアクセスできるのか、誰が恩恵を受け、誰の声が無視されがちなのかといった質問について議論した。
Javaプログラミングの学習
最初の3週間が終わったら、コースはJavaプログラミングに焦点を移した。でも、社会的責任の統合は続いていた。課題は個人的に意味があり、現実の問題に関連付けられるように設計された。例えば、学生は大学の住宅配分システムを調べて再設計するプロジェクトに取り組んだ。
社会的関連性のあるプロジェクト
学生はコース中に3つの主要なプロジェクトを完了した。各プロジェクトは2週間かかり、技術的知識と社会問題を結びつけていた。
住宅配分プロジェクト: 学生は大学の住宅システムの公正さを評価した。仲間からの意見を集め、誰が恩恵を受け、誰が害を被るのかを分析し、自分たちが提案したシステムを反映したJavaプログラムで変更を実施した。
チップ配分プロジェクト: このプロジェクトでは、学生はレストランのスタッフに対するチップを公正に分配する方法を設計した。計算に考慮すべき要素を決定するために、同業者や他の業界の人々に相談した。
就職応募フィルタリングプロジェクト: 学生は架空の会社の求人応募者に対するフィルタリングプロセスを作成した。最初はCSのコース成績だけに基づいて基準を設け、その後、他の人との議論を経て、より公正なアプローチを作り直した。
これらのプロジェクトを通じて、学生は社会問題、権力のダイナミクス、プログラミングの選択がもたらす影響について考えるように促された。
統合アプローチの利点
この新しいアプローチは、学生が技術の社会的影響を把握しながらプログラミングスキルを向上させるのを助けた。学生からのフィードバックによると、授業は魅力的で意味があると感じたようだ。関連する問題に取り組む機会を評価し、技術スキルと広い社会的文脈とのつながりを認識したんだ。
現実の問題から学ぶ
現実の課題に結びついたプロジェクトに取り組むことで、学生は技術が社会問題にどう対処したり、悪化させたりするかについての理解を深めた。コミュニティのメンバーからの洞察が学びの経験を豊かにした。
多くの学生は、こうした機会がプログラミングを社会的善のツールとして見る手助けになったと言ってた。彼らは、関係のある問題に取り組むことを大事にし、自分たちの努力がポジティブな変化に貢献できると知ってモチベーションが上がった。
反省の役割
コースを通じて、学生は反省的な実践に取り組んで、自分の仕事や選択の潜在的な影響を批判的に評価することができた。異なる利害関係者のニーズや視点を考慮しながら、システムを設計する際に様々な要素のバランスを取ることを学んだ。
経験を反省することで、学生は自分の仕事における正義や権力関係に対する意識が高まった。プログラマーとしての自分の役割が社会的公平を支えるか、阻害するかを見出すようになった。
教育者が直面した課題
社会的責任のあるコンピューティングを取り入れるイニシアチブには多くの利点があったが、課題も多かった。教育者はこの新しいカリキュラムを実施する際にいくつかの障害を経験した。
学生との信頼関係を築く
ディスカッションのために安全でオープンな環境を作るためには、講師と学生の間、また学生同士の信頼が必要だった。これは、学生が個人的な体験を共有し、複雑な社会的問題について深い会話をすることを促すことを含んでいた。
脆弱性に取り組む
異なる視点を探求するよう学生を促すことは、教育者自身も脆弱である必要があった。講師は自分の限界を認め、敏感なトピックについて自分の信念を押し付けずに議論を進める必要があったんだ。
技術スキルと社会問題のバランスを取る
技術スキルを教えることと社会問題に取り組むことの適切なバランスを見つけるのは難しかった。学生はプログラミングの概念を習得するのに十分な時間が必要でありながら、社会的な複雑さにも深く関わる必要があった。
コミュニティとのつながりを築く
学生をコミュニティの利害関係者に結びつけることは倫理的なジレンマをもたらした。教育者は学生に自分たちの仕事が現実の人々に与える影響を理解させたかったが、コミュニティとの関与が相互的で尊重されたものであることを確保することに慎重だった。
技術の役割を定義する
主な課題の一つは、学生が自分たちの技術的解決策の能力を誇張しないようにすることだった。教育者は、技術が機能する大きな社会的文脈を理解することの重要性を強調し、技術だけでは複雑な社会問題を解決できないことを学生に思い出させることに努めた。
個人の責任と集団の責任を考える
最後に、コースは個人の責任を促進することと企業の責任の重要性を認識することの微妙な線を乗り越えた。教室での議論は、公正な社会を実現するために必要な広範な制度改革を取り込む必要があり、全ての責任を個々の学生に押し付けるだけではいけなかったんだ。
結論
社会的責任のあるコンピューティングをコンピュータサイエンス教育に取り入れる旅は継続中だ。これは、技術的な側面と社会的な側面の両方に注意を払い、多様な視点を重視する包括的な環境を育むことへのコミットメントが必要なんだ。
この教育アプローチを通じて、学生は社会意識が高く倫理的に意識した個人として成長し、技術を通じて社会に意味のある貢献をする準備ができるんだ。学生からのフィードバックは、このカリキュラムが将来のコンピュータサイエンティストを動機付け、力を与える可能性を強調してる。それによって彼らは、仕事の中で正義の擁護者となる道を歩むことができる。
教育者として、私たちはこのアプローチを引き続き洗練させたり、他者と知見を共有したりしながら、コンピュータサイエンス教育の未来が技術的な熟練だけでなく、社会的意識と責任も強調できるようにしていきたい。
タイトル: Socially Responsible Computing in an Introductory Course
概要: Given the potential for technology to inflict harm and injustice on society, it is imperative that we cultivate a sense of social responsibility among our students as they progress through the Computer Science (CS) curriculum. Our students need to be able to examine the social complexities in which technology development and use are situated. Also, aligning students' personal goals and their ability to achieve them in their field of study is important for promoting motivation and a sense of belonging. Promoting communal goals while learning computing can help broaden participation, particularly among groups who have been historically marginalized in computing. Keeping these considerations in mind, we piloted an introductory Java programming course in which activities engaging students in ethical and socially responsible considerations were integrated across modules. Rather than adding social on top of the technical content, our curricular approach seeks to weave them together. The data from the class suggests that the students found the inclusion of the social context in the technical assignments to be more motivating and expressed greater agency in realizing social change. We share our approach to designing this new introductory socially responsible computing course and the students' reflections. We also highlight seven considerations for educators seeking to incorporate socially responsible computing.
著者: Aakash Gautam, Anagha Kulkarni, Sarah Hug, Jane Lehr, Ilmi Yoon
最終更新: 2024-01-02 00:00:00
言語: English
ソースURL: https://arxiv.org/abs/2401.01285
ソースPDF: https://arxiv.org/pdf/2401.01285
ライセンス: https://creativecommons.org/licenses/by/4.0/
変更点: この要約はAIの助けを借りて作成されており、不正確な場合があります。正確な情報については、ここにリンクされている元のソース文書を参照してください。
オープンアクセスの相互運用性を利用させていただいた arxiv に感謝します。