IT・技術研修ならCTC教育サービス

サイト内検索 企業情報 サイトマップ

研修コース検索

コラム

クラウド時代のオープンソース実践活用

CTC 教育サービス

 [IT研修]注目キーワード   OpenStack  OpenFlow/SDN  情報セキュリティ  Python  システムトラブルシュート 

第91回 JupyterでITと科学技術教育の融合を実現?! (中井悦司) 2016年6月

はじめに

 先日、「Ansible Meetup in Tokyo 2016.06」に参加して、「Jupyter+AnsibleによるLiterate Computing(手順書 as a Code)への挑戦」というタイトルで発表をさせていただきました。内容的には、本コラムの第88回とほぼ同じものですが、Jupyterを「実行可能な手順書」として利用するアイデアは評判がよく、「さっそく試してみたい」という意見を複数の方からいただきました。

 Jupyterは、もともとはデータ分析のツールとして開発されたものですが、データ分析を始めとする科学技術の世界とITオペレーションの世界には、共通点も多くあるはずです。今回は、少しばかり格調高く、科学教育とIT技術の関係について考えてみたいと思います。

STEM教育を支えるIT技術

 日本ではそれほど有名ではありませんが、2000年ごろから米国で「STEM教育」という考え方が広がりはじめました。これは、「Science, Technology, Engineering and Mathematics」の頭文字を取ったもので、科学、技術、工学、数学の4つの分野を一括して教えようという考え方です。わかりやすい例をあげると、高校では、物理学と数学はまったく別の教科として扱われています。しかしながら、物理学の理論や公式は、当然ながら数式で書かれており、数学の知識なしに理解することはできません。あるいは、数学の公式を物理学に適用することで、数学の公式の意味を「物理的に理解する」ということも可能になります。ITの世界でも同じことですが、複数の分野を横断的に理解することは、各分野の本質をより深く理解することにもつながります。(ちなみに、三角関数の和積の公式は、波の合成と同じだって知っていますよね?!)

 また、物理学や数学を学ぶ際は、なるべく多くの実例に触れて、「直感的理解」を深めることも大切です。かつて、筆者が予備校で高校生に物理学を教えていたころは、波の合成のアニメーションを見せながら、前述の和積の公式を説明したりしていました。しかしながら、講師が事前に用意したアニメーションを見せるだけでは、「多くの実例」というわけには行きません。生徒自身がプログラムを書いて、アニメーションを作成することができれば、自らさまざまな例を試してみることが可能になります。

 JupyterのPython実行環境は、このような目的に最適ではないかと考えています。ものは試しで簡単な例を作ってみたところ、20〜30行程度のコードで、それなりに面白い例を作ることができました(図1)(*1)。この程度の例であれば、Pythonの基礎を勉強すれば、一般的な高校生でも十分に自作することができるでしょう。ITの世界では、まずは手を動かして試してみることが、技術を身につけるための最低条件です。JupyterやPythonによって、科学技術向けのソフトウェアが手軽に利用できるようになることで、これからは、物理学や数学の世界でも同じことが言えるのかもしれません。

fig01 fig02

図1 Jupyterで作成した物理学のアニメーション

次回予告

 今回は、Jupyterの活用例として、高校生向けの物理学のアニメーションを紹介しました。これは、あくまでわかりやすい例として出したものですが、実際にSTEM教育を推進する大学では、より高度な科学技術の教育においても、Pythonを始めとするIT技術の重要性に目をつけているようです。JupyterやPythonを駆使して、手早く具体例を試してみるという能力は、科学技術を身につける上で重要な役割を果たすであろうという理解です。

 そういえば、ITの世界では、機械学習のブームから、「数学をもっと勉強してみよう!」と考えるエンジニアが増えているようです。ITを駆使すれば、たとえ数学でも、手を動かして楽しみながら勉強できる可能性はありそうです。次回は、JupyterとPythonを使いながら、数学で少し遊んでみたいと思います。

参考資料

*1 Jupyterで高校物理のアニメーション

 

++ CTC教育サービスから一言 ++
このコラムでLinuxや周辺技術の技術概要や面白さが理解できたのではないかと思います。興味と面白さを仕事に変えるには、チューニングやトラブルシューティングの方法を実機を使用して多角的に学ぶことが有効であると考えます。CTC教育サービスでは、Linuxに関する実践力を鍛えられるコースを多数提供しています。興味がある方は以下のページもご覧ください。
 CTC教育サービス Linuxのページ
 http://www.school.ctc-g.co.jp/linux/
 

Linux研修トレーニングならCTC教育サービス


 

筆者書籍紹介

Software Design plusシリーズ
「独習Linux専科」サーバ構築/運用/管理
  ――あなたに伝えたい技と知恵と鉄則

本物の基礎を学ぶ!新定番のLinux独習書

中井悦司 著
B5変形判/384ページ
定価3,129円(本体2,980円)
ISBN 978-4-7741-5937-9
詳しくはこちら(出版社WEBサイト)
「独習Linux専科」サーバ構築/運用/管理

 [IT研修]注目キーワード   OpenStack  OpenFlow/SDN  情報セキュリティ  Python  システムトラブルシュート