こんにちは、Coders!
2021/03/01
大石 陸斗
電子技術研究部広報課です。
2月号の電技研ノートでは、「テレワークならぬテレ部活」と題し、学校で部活ができない中で、電子技術研究部の部員がどのように、「おうち」で活動しているのかを紹介しました。
まだ、部活を再開することはできていませんが、そうした中でも活動を止めずに「研究・開発」をしている電子技術研究部を今後も紹介していきます。
今回はあるソフトウェアを開発している部員に話を聞きました。
プロフィール
坂倉直樹(Naoki SAKAKURA)
電子技術研究部 ITパスポート担当課長としてITパスポートの取得を目指す後輩の指導・支援をするのとともに抜群のプログラミング力を駆使して、Dengiken Codersを開発中。
どれくらいプログラミングができるかと言えば、授業がオンラインに切り替わり毎時間時間割にアクセスし、オンラインコミュニケーションアプリの接続ID・パスワードを確認するのが面倒だと感じた際に自動で取得するプログラムを作成したほど。
授業の時間になるとスマートフォンの通知として、IDやパスワードが表示される仕組み。1日とかからずにプログラムを書いたそうだ。
広報課独自調べによる
Dengiken Coders
そんな坂倉君ですが、現在、部員間の技術的な質問や情報共有を活発化させる Web アプリのDengiken Codersを開発しているんだとか。
話を聞いてみました!
Coders とはどのようなアプリ?
Dengiken Codersとはどのようなアプリなのですか?
Dengiken Codersは、主に電技研の部員同士の情報共有をするためのWebアプリです。
具体的には、プログラミングやロボット、自分の活動や活動していて思ったことなどについて記事を書いて発信したり、わからないことを学年を超えて他の部員に質問できるようにするのが目的です。
開発までの経緯は?
このDengiken Codersはどのような経緯で思いつき開発しようと思ったのですか?
前からWebアプリの開発に興味があって、「電技研アップローダーやDengiken Hubのように、自分も部員たちの活動をもっと便利にできるものを作りたい」と思っていました。
いつかのミーティングで「分からないことがあったら先輩に聞こう」という言葉を聞いて、後輩からしてみればどの先輩がどんな事をやっているのか分からなくて誰にも聞けないんじゃないかと思い、これを解決できないかと考えたのが、この活動につながる大きなきっかけになりました。
使っている言語は?
使っている言語は何ですか? 坂倉君といえばJavaScriptが得意なイメージがありますが…
基本はJavaScriptが中心なんですが、Node.jsという、サーバーでJavaScriptを動かすための仕組みを使っています。また、Webページの表示にはCSSはもちろん、HTMLに似た書き方でその中に記事ごとの内容を埋め込んだりできるEJSというテンプレートエンジンを使っています。
データーベース系は何を使っているのですか?
記事やユーザーデータの保存にはMongoDBというデータベースを使用しています。
どうやって習得したのか?
上で上げてもらったプログラミング言語とかはどうやって勉強したのですか?
ネットでNode.jsの本を探していたところ、自分のやりたいことに近いカリキュラムの本を見つけたので、これを本屋さんで買って使っていました。 最初Node.jsの独特なコードの書き方に慣れないうちはちょっとずつ本に載っているお手本のコードを実際に書きながら練習していました。
そうなんですね。
近年はインターネット上に参考になるサイトも増えてきましたが、以前部員用の出席システムを作成した先輩も、新たなことを始める際は本を買うって言ってました。
小学校のころは?
中学1年生で入部した直後からLEGOのプログラミングとかウェブサイト制作のJavaScriptがすごかったイメージがあるのですが、小学校の頃から何かやっていましたか?
小学生のいつ頃からかは忘れてしまいましたが、家に帰ってからというものの日々ネットサーフィンをしたり、Scratchで棒人間のゲームなどを作ったりしていました。時には勝手に家の共用PCにゲームを入れて遊んでいました(笑)。某ロボット教室に通っていたときもあって、そこではレゴマインドストーム NXTやEV3を触ったりしていました。
楽しいことは?
Codersの開発で楽しいことは?
やっぱり自分の書いたコードがうまく動いてくれると楽しいです。
一発でうまくいくときもあれば、何度も何度もコードを練り直したりすることもありますが、どちらであっても最後はうまく動いてくれたときに達成感を感じますね。
あとは1つの機能を作るためにどんなモジュールを組み込んだり、どんなコードを書いたりしたらいいかなーと考えるのも面白いです。
なるほど。
これはロボットでもソフト系でも言えることですが、やはり自分が作ったものが上手く動作した時の何とも言えない嬉しさはありますよね。
どのような機能を実装するか考える楽しみも多くの部員間で共有できそうですね。
力作機能は?
現段階で一番の力作機能とかはありますか?
まだ完成している機能ではないんですが、今のところの一番の力作は「投稿にキーワードを付ける」機能です。
SNSでいう「ハッシュタグ」のような機能です。
画像のようなキーワードリストから自分の投稿に合うキーワードをクリックするだけで簡単にタグ付けすることができ、これによって何についての投稿なのか分かりやすくしたり、記事を探すときに欲しい情報にたどり着きやすくすることができます。
ウェブアプリ開発をしている人へ
部活内でウェブアプリの開発をやっている人に薦めたいアプリ・サービスは何かありますか?
色々ありますが、特にウェブアプリやソフトウェアの開発をやってみたい!やっているよ!という人に薦めたいのは「GitHub」ですね。
詳しく話すと長くなってしまうんですが、簡単に言うとネット上でプログラム等のソースコードを管理できるサービスで、ソースコードの管理以外でも開発において便利な機能がたくさん備わっています。Codersの開発においては、GitHubでソースコードやタスクの管理をしています。
慣れるとかなり便利なので、ウェブアプリやソフトウェアの開発をやってみたい!やっているよ!という人にオススメしたいです。
複数人で開発を行う場合は特に役に立ちそうですね。コロナ禍で特に集まって活動できない際に、やることの認識の共有などに役立ちそうです。
こういうのを使いこなせることも大事なんだろうと思います。
メイキング・ソフトウェア・フォーベターライフ!
ということで、今回は「こんにちは、Coders!」という題名で、Dengiken Codersというアプリを開発している坂倉君を取材しました。
これまで、ロボット・ものづくり系を多く取材してきましたが、ソフトウェア開発系の部員も輝いてみえました。
私も入部当時はLEGOのロボットに興味がありましたが、様々なものを経験するにつれて興味分野が変化し、今はソフトウェア開発をしています。
ロボットならロボット、アプリならアプリと縛られず、入部後に様々なものに触れ興味分野を広げられる電子技術研究部のスタイルが、これからも多くの「エンジニア」を生むことを期待しています。
最後までご覧いただきありがとうございました。