1.電設部(通称:ICT研究会)の活動について教えて頂けないでしょうか?
電設部は、学校のIT系サークル「ICT研究会」としての側面と、メーリングリストを主な活動拠点とした、オープンソースコミュニティ「電設部」としての側面があります。ですので、電設部には「卒業」「引退」という概念がありません。卒業生部員もメーリングリストを中心に、日夜議論や情報交換をしています。
電設部では技術勉強会を開催したり、定例ミーティングでは、技術的なトピックについて議論することもあります。先日は、Brainfuck(ブレインファック)という難解プログラミング言語について議論しました。オープンソースカンファレンスにボランティアスタッフとして参加したり、出展するメンバーも多くいます。
勉強会や定例ミーティングなど、メンバーが集まるとき以外には、基本的には各々が好きな時に好きなことを日夜、勉強・研究しています。
また、電設部全体のプロジェクトとして、主に3つのプロジェクトがあります。そのうち、学生が主体となって活動しているものは、「技能五輪プロジェクト」です。技能五輪プロジェクトとは、”技能五輪出場選手への技術サポートをする”という趣旨のもと、おもにPHPやMySQLについての学習を補助し、自前の資料を用いた勉強会などを開催しています。電設部では、オープンソースの精神を大切にし、勉強会で使った資料をWebサイトで公開しています。
技能五輪全国大会では、事前公表の課題(本番当日に30%の変更が加わります)が大会本番の1ヶ月ほど前に公開されます。昨年の課題としては、会議室の予約システムや長野県松本市の観光用のサイトを制限時間内に作りなさい、といった課題が出ました。
この課題の内容からもおわかりの通り、Webデザインのフロントエンドに関するスキルとPHPやデータベース操作などのバックエンドに関するスキルの両方が求められます。ですので、選手が電設部のサポートメンバーから主にバックエンドの技術を教えてもらうなどして、本番の競技に備えます。
また、本番の競技の際と同じような環境をインフラ分野に強いメンバーが作ります。このように、それぞれの分野の得意な学生が集まり、特訓することで、毎年本校から多くの入賞者が輩出されています。
2.これまでに電設部で作ったものを教えてください
電設部では、技能五輪プロジェクトのほかに、卒業生のメンバーを中心に主に2つのプロジェクトが稼働しています。1つは、SetucoCMSという、Webサイト管理に関する知識のない方にも簡単にコンテンツ更新を行って頂くためのCMSを開発する「SetucoCMSプロジェクト」です。SetucoCMSの特徴は大きく分けて以下の3つの点です。
1. 目標設定機能
チーム単位でサイト更新する場合に、全員で目標を共有し、サイト更新のモチベーションを維持させられるような工夫です。
2. イメージキャラクターが応援してくれる機能
ページ更新の目標設定数を達成できたかどうかでイメージキャラクター「節子」の表情が変わるような仕様になっており、こちらもサイト更新のモチベーションを維持させられるような工夫のひとつになっています。
3. Webサイト管理に関する知識のない方でも簡単にサイト更新できるようなCMSである点
Webサイトを作成・更新したい、とせっかく思っても、管理画面のメニュー構成が複雑でわかりにくいとモチベーションが下がってしまいます。SetucoCMSでは、Webサイト管理に関する知識のない方でも直感的に、簡単に使えることを前提に管理画面を設計しています。
2つめは、メーリングリスト向けの検索エンジン「MilmSearch」(現在、鋭意開発中)の開発をする、「MilmSearchプロジェクト」です。電設部では、先述の通り、メーリングリストを中心に情報交換をしています。ですが、検索機能がないため、過去のトラブル解決事例などの資産を十分に生かすことができません。そこで、メーリングリスト向けの検索エンジンを開発し、オープンソースプロダクトとして電設部以外の方にも活用してもらおうと考えています。
3. 電設部のメンバーの方はどのようにしてプログラミングの勉強をされているのでしょうか?
基本的には、最初はみな学校の授業から入ります。そのうえで、授業で習ったことをもっと深く勉強したいと思ったり、別の言語やUNIXディストリビューションなどにも興味が生まれます。そこで、そういったことを各自で勉強して勉強会などでアウトプットし、より理解を深めたり、勉強会でほかのメンバーに得意なことを教わったりします。メンバーの間で教えあうことで今まで理解していたと思っていたものが、実は理解していないことに気づき、そこを再度きちんと勉強するといった形で学びの機会を得ています。
データベースやUNIXのコマンド操作などに関しては、本を読むだけで終わるのではなく、自分で実際にサーバ環境を構築しながら勉強していっています。書籍や雑誌としては日経 Linuxを定期購読したり、各種入門書などに目を通したりしています。
日経 Linux (リナックス) 2013年 04月号 雑誌
またWebデザインに関するスキルですが、これは学校の授業の中で実際にこんなサイトを作りなさいという課題をこなす中でかなり力がついたように思います。やはり作るものを明確化して作るプロセスを経ることが一番の学びになるように思います。