作成したFIWARE学習コンテンツ
※ 2023/1/18: Katacodaが現在はサービス終了してしまったので現在はGithub codespacesの利用を前提としたFIWARE学習コンテンツを公開しております。
Github codespaces FIWARE学習コンテンツhttps://github.com/c-3lab/fiware-learning-handson
Katacodaのアカウント登録をすれば誰でもすぐに試せるのでぜひ使ってみてください。
https://www.katacoda.com/c3lab/courses/fiwarebasic
現在は基礎編としてKatacodaのPart1~Part5に加え、自由なFIWAREの動作検証環境としてFIWARE Orion Playgroundを公開しております。
背景
FIWAREというスマートシティやIoTプラットフォームという文脈で利用されるオープンソースソフトウェアがあります。
キーワードだけ聞くと気軽に試すには少しヘビーなイメージを受けます。また、オープンソースで誰でも試すことができるとは言え、普段からそのようなものを触れていない人からすると環境の準備のハードルがあり尻込みしてしまいます。FIWAREの概要を掴み技術の見極めを行いたい人は必ずしもオープンソースに馴染みのあるエンジニアとは限りません。
そこでFIWAREへの入門として、誰でもすぐに試すことが可能なFIWAREの学習コンテンツを作成することにしました。
やったこと
今回はKatacodaというサービスを活用しました。
Katacodaは資料とクラウド環境が同時に提供されるサービスです。
以下のように左側に資料が表示され、それを見ながら右側のターミナルで実行して試すことができます。
コンテンツ作成
Katacodaはmarkdown形式でコンテンツ内容の記述、jsonで様々な設定を行いGitHubにpushすることでページへ反映することができます。
Katacodaにはcliがあり、npmからインストールすることができます。
$ npm install -g katacoda-cli
Katacodaの構成は以下のようになります。
複数のscenarioをcourseという単位でまとめるような構成になります。
katacoda-cliによって以下のディレクトリの生成や設定ファイルの生成がサポートされます。
course1
|
| - scenario1
|
| - intro.md
| - step1.md
| - finish.md
| - scenario2
| - scenario3
・
・
・
| - scenario4
具体的な利用方法は以下の記事が日本語で解説されています。参考にさせていただきました。
以下のリポジトリに今回作成した本コンテンツのコードがあります。
作成したシナリオ
Part1 FIWARE Orion起動
FIWAREの数あるコンポーネントの中でも重要な役割を担っているFIWARE Orionの起動方法を学習します。
Part2 FIWARE Orionにおけるデータの操作
FIWARE Orionにおけるデータの操作およびAPIおよびデータ形式を学習します
Part3 FIWARE Orionによる他システムへの通知
FIWARE OrionのSubscription機能について学習します
Part4 FIWARE Cygnusによる履歴データの作成
FIWARE Cygnusを使った履歴データ作成について学習します
Part5 FIWARE-ServiceとFIWARE-ServicePath
FIWARE におけるマルチてナンシーおよびスコープについて学習します
FIWARE Orion Playground
自由にOrionを利用しNGSIの学習などに活用するPlaygroundです。自動でFIWARE環境(Orion + Cygnus)が立ち上がるので動作検証など自由に使うことができる環境です。
コンテンツの活用
本コンテンツを使ってFIWAREハンズオンを行いました。
ハンズオンではKatacodaのPart1~Part5に加えてFIWARE Orion Playground(FIWAREの学習用環境)を活用した演習問題を実施しました。
https://www.katacoda.com/c3lab/courses/fiwarebasic
参加者の技術レベルには若干のばらつきはありましたが、以下の理由からスムーズに進めることができました。
- Katacodaが提供する環境により、参加者のPC環境の差異が無く余計なところで躓かない
- Katacodaの資料を見ながら手を動かせるためスムーズに手順を実行できる
- 講師側がKatacodaの画面をZoomで共有することで説明している場所と実行状況の同期がとりやすい
また、序盤の演習問題で上手くできなかった参加者が、後半の演習問題では理解度が向上し躓かず解答できるようになるようなこともあり、本コンテンツの実効性を感じることができました。
まとめ
誰でもすぐに試せるFIWAREの学習コンテンツを作成しました。
FIWAREを実際に利活用していくには本コンテンツの知見以外にもインフラやアプリケーションの知識が必要となってきますが、技術の見極めや入門としては本コンテンツでも十分担うことができると考えています。
ぜひ、FIWAREというキーワードを聞いて気になっていた方は本コンテンツを利用してみてください。FIWAREにおける理解の手助けになれば幸いです。
FIWAREに関する情報交換をC3Labというコミュニティで行なっております。以下のSlackでコミュニケーションを行なっておりますので、興味がある方はぜひ参加してみてください。
C3Lab Slack
C3Labにおける勉強会などの取り組みは以下のnoteで紹介していく予定です。
https://note.com/c3lab/