福野泰介の一日一創 - create every day

いいものたくさん鯖江市。まだまだ情報発信が足りてません。特に若者に伝えるためには、動画メディアの活用は外せません。
鯖江市長がYouTuberに!というプラン、VTuber(バーチャルYouTuber)化すれば、みんなが鯖江市長になって配信可能!?

ということで、メガネアプリを改造して、つくってみました、だれでも鯖江市長アプリ!(src on GitHub
鯖江市長画像は、学生団体with制作のウェルカム市長より!
画面収録を使ったり、ふわっちの画面配信機能を使えば、今すぐ鯖江市長になれますよ。
顔出しはちょっと・・・という、人、こどもでも、安心!


と、思った矢先、鯖江市市長YouTuberスタート!


こちらベースになった鯖江版SDGs、グローカルアプリも人気でした!(グローカル写真集


12回目の発表会の会場もこちら、鯖江の「ご本山」こと、誠照寺(じょうしょうじ)。
高校生、高専生、大学生による5人混成チームのスキット(寸劇)を交えたプレゼンテーション x 6。
審査員も12回目、今年は「地域の課題をITで解決」KDDI 松野さんとご一緒いただきました!

鯖江総変人化計画(鯖変) by チームイヌワシ(伊藤園賞、写真
廃校を使ったアミューズメント施設「わがまま学校」をスタートさせ、年代を問わず学ぶ学校へ!
本来学びは遊び。大人でも先が読めない現代、自分の好きで得意を大いに伸ばそう。

世界一有名なまち、鯖江 by チームツバメ(優秀賞、写真
ジェットコースターでもズレない鯖江のメガネ、市長自信がオープンデータなど、若者受けする企画をJK課で考案、Hana道場で編集、主演は鯖江市長!
市長も乗り気だけど、体がついていくかどうか・・・、そこで提案バーチャルユーチューバー。鯖江市長の容姿オープンデータで、誰でも鯖江市長になって配信できますね!

鯖式会社 - 鯖江を「JK社長」が日本一多い市に! by チームミミズク(最優秀賞、写真
鯖江式の株式会社、略して鯖式会社。就職するその会社も誰かが起業した会社。そもそも起業とは?社長とは?やってみるのが一番です!
敷居をぐっと下げた鯖式会社で、小さな夢を実際叶えてみるまでのレクチャー付き!鯖江のイベント、ものづくり博や、月一のお祭り誠市で実践しよう。

物々交換しながら鯖江を目指せ - めざされるまち鯖江 by チームシラサギ(優秀賞、写真
ヨーロッパを舞台に開催されたレッドブルの企画「CAN YOU MAKE IT?」の日本からの参加者ならではの企画、鯖江のSDGsピンバッジ11コ(サバエの3+8)だけを元手に、物々交換しながらあたたかいまち、鯖江を目指す。
大学生向けなので夏休み、メガネフェス的なお祭りと合わせて企画できると楽しそう。

スケボーのまち - 合言葉はナイストライ! by チームコウノトリ(写真
昭和56年からの鯖江市の姉妹都市、新潟県村上市は、スケボーのまち。すごいスケートパークがオープンしてました。(スケボーの「聖地」!! 村上市スケートパーク完成 - スポーツ : 日刊スポーツ
オリンピック競技にもなり、実は公道でも使えるスケボーというスポーツを鯖江市でもスクールから始めてみようという企画。スケボーにやさしい道づくりをして、車を持たない若者、免許返納後の高齢者の足としての活用を考えてみるとか新しいかも!?

さば絵プロジェクト - 自由に落書きができるまち by チームムクドリ(写真
絵を描くのが好きな人、街中じゆうに落書きできたら楽しい!
鯖江市が管理する400以上ある橋など、公共物や公共施設、自由に落書きしていいスポットをオープンデータ化すると楽しいかも?
ARメガネを使ったら見えるバーチャル落書きなら、めがね会館にも、空にだって落書き可能!


発表会、おつかれさまでした!


Hana道場通う、熱き高校生も参加!


運営の学生団体withからのプレゼント!


参加者、スタッフ、実行委員長水野さん、ステキなイベント、ありがとう!


プラコンOBも応援に来てくれました!


いつでも鯖江を目指してきてくださいねっ


360度写真が撮れる楽しいカメラ THETA V - THETA SCなら22,000円〜


早速、参加高校生からも参加表明、ますますパワーアップする学生団体with!
さぁ、今年プランの実現だ!

links
- 鯖江市地域活性化プランコンテスト | 市長をやりませんか?
- 鯖江市地域活性化プランコンテスト - Facebook
- 学生団体with (@sabaepc_with) / Twitter
- 学生団体with
- 第12回目の「鯖江市地域活性化プランコンテスト」でした | 『さばえ.jp』百さんのブログです
- 住みたい鯖江 学生提案 活性化プラン 全国6チーム発表 JK企業支援案 「チームみみずく」が最優秀賞 「福井新聞社」提供(牧野 百男 Facebook投稿)

高専カンファレンス in 明石3」にて「スクラム」を使った楽しいチーム開発を発表。

「みんなで創ろう チーム開発手法、スクラム」 高専カンファレンス in 明石3 バージョン!


短いサイクルで「分析、設計、実装、テスト」を繰り返すのがアジャイル開発
(出展:デジタルビジネスの潮流とアジャイル開発~ビジネスとエンジニアの協働チームづくり~


ウォーターフォール vs アジャイル
時に年単位の開発期間で作られるウォーターフォール開発。後戻りはできないのでどうしても設計が保守的になり、あれもこれもと盛り込み勝ち。できあがった機能のうち7割は使われないとか・・・!?
とにかくまずは動くもの、必要最小限な機能による出荷可能なプロダクトを短いスパンで開発、デプロイし、利用者の意見や、反応を見つつ、どんどん改善していくのがアジャイル開発。
jig.jpのプロダクトはこのアジャイル開発で作られています。短期間でリリースし、最新技術も取り入れつつ、どんどん改善!


スクラムはアジャイル開発の一種、ビジョンをしっかりチームで握ることが超大事!
利用者価値を優先し、変化に柔軟に対応し、短期リリースを目指し、会話によるチームメンバー全員合意と、技術的卓越を原則とする。問題が発生しても個人対個人ではなく、問題対チーム全員という考え方で!
最終決定権を持つプロダクトオーナーを決め、一定期間(jigインターンでは4日間、1週間や2週間が一般的)でやることをプロダクトバックログとして積み、みんなでタスクとして分解するスプリント計画、タスクかんばんやバーンダウンチャートを使って進捗を関係者全員で共有する。


数時間でできる程度に分解したタスクを貼って、TODO、Doing、Doneと移していく。問題が発生したら小さく赤いプロブレム付箋を貼って、チームからの助けを借りるのも手。問題はみんなのもの、ひとりで悩まない。


朝会ではじまる一日の開発、動くものを目指して1スプリント終えたら、ふりかえり。
ふりかえりの手法として、jigインターンではKPT(Keep Problem Try)に加え、Kansya(感謝)を追加!
良かったことや、問題に対するチャレンジ(Try)をいくつか合意して、次のスプリントへ!
リズム良く気分良く、楽しく仲良くチーム開発!


今回のjigインターンでは3スプリント実施して成果発表会を迎えました。


オタクック 「お料理版AtCoder、毎週金曜日はアニメメシで勝負だ、オタクック! by jigインターン2019 とモダンクライアントVue.jsはじめのいっぽ


めしめーと 「Vue.js x Go x MySQL、外食の好みでつながる「めしめーと」 by jigインターン2019 とモダンなRDB環境構築手順


旬レシピ 「ご当地レシピのオープンデータと応用提案、卸売市場と栄養素データをマッシュアップしたお手軽料理ナビ「旬レシピ」 by jigインターン2019


詳しくは、jigインターンブログGitHubにあるリポジトリをどうぞ!
jigインターン、来年もお楽しみに!(興味がある人、@jiginternをフォローしておこう)


THETAで撮った会場の360度写真、ちょっとHTMLをかけば、VRアプリのできあがり!
VR #kosenconf_138akashi 2
PCでもぐりぐり回せるよ。スマホVRでもそこそこいい感じ。Oculusなどで見るとよりきれい!

<!DOCTYPE html><html><head><meta charset="utf-8"/> <title>VR kosenconf_138akashi</title> <script src="https://aframe.io/releases/0.9.1/aframe.min.js"></script> </head><body> <a-scene id="scene"> <a-sky src="kosenconf_138akashi/akashi1.JPG" rotation="0 -120 0"></a-sky> </a-scene> </body></html>

たった8行のHTMLでOK!
Oculus Questなどを持っている人、このリンクをブラウザで見て、右下のメガネ型VRアイコンをクリック!
超お手軽VR開発、ぜひいろいろ挑戦してみてね!(50行マイクラ風など)


高専カンファレンス in 明石3!


会場は明石高専!


続VRのすゝめ by 鈴鹿高専 @MD_a_To_bl_o
VRチャットでの女性比率は何があると上がるのか?


知ってると得する切符の話 by @S0UL_EXPLOSION
往復割引切符は東京からでも買えるとは、知らなかった。


地域住民が行政を動かしたという話。
みんなのまち、学生だって住民、プログラミングでもデザインでも、いろんな力で貢献できる!
Code for KOSEN は、2013年、この階段教室から!(オープン&チャレンジ、殻を破る高専生! - 明石高専訪問


jigインターンでの毎日! by なべ


集合写真 by THETA撮影、切り出し
VR #kosenconf_138akashi 1
VRで見るならこちら。


懇親会スタート!


懇親会でのVR体験会、Oculus Rift S と Oculus Quest、2台体制


未来の食事、完全食COMPグミエディションも活躍。


高専生発の抵抗カラーコードかるた!


せっかく明石なので、明石焼き〆!
jigインターン番外編~幻の21日目~ - jigintern2019のブログ

links
- 高専カンファレンス
- 高専カンファレンス in 明石3 - 高専カンファレンス Wiki
- デジタルビジネスの潮流とアジャイル開発~ビジネスとエンジニアの協働チームづくり~
- スクラム (ソフトウェア開発) - Wikipedia

一昨日昨日に続き、食がテーマのjigインターン2019、成果発表会紹介3チーム目。
一人では続かない料理づくりのモチベーション。好きなアニメに登場するアニメメシ、時間を合わせて、みんなで作って、対戦すれば楽しくなるかも!?
その名は「オタクック」

チーム「オタクック」
たかげん(一関高専)、ぴ(木更津高専)、なべ(函館高専)、まこってぃー(明石高専)


作ってみたいな「のり塩すごもりチャーハン by 天気の子」
クラシル提供「天気の子」劇中登場レシピ のり塩すごもりチャーハン 作り方・レシピ | kurashiru [クラシル]


競技プロコン、AtCoderでおなじみ、レーティング!エンジニアなオタクは好きですね!
Twitterハッシュタグ #オタクック から、実際はじめても楽しいかも!?


フロントエンドは Vue.js、バックエンドは Flask by Python


Vue.js を使ったモダンなクライアント実装!(当初Golangで作っていたサーバー側ソース跡


Vue.js はじめのいっぽ
Vue.jsを本格的に使おうと決めました。はじめのいっぽから、axiosを使った非同期通信をシンプルに同期的に使って、JSONを読み込むまでの6ステップ。短いソースを見ながらお試しください!


以上、11高専から12名のjigインターン2019の成果発表会でした。
教えてくれないと嘆くのは早く卒業して、自分で学んで楽しむ高専生活!
日々改善される開発環境や手法に合わせ、毎年パワーアップする高専インターン。
来年もお楽しみに!

links
- jigインターン2019 成果物リポジトリ「jigintern - GitHub
- ブログ「jigintern2019のブログ

昨日に続き、食がテーマだったjigインターン2019、成果発表会紹介2チーム目。
今度は外食での悩みをモダンに解決するプロダクト。

チームnpm派「めしめーと」
箒コウモリ(香川高専高松キャンパス)、でみ(舞鶴高専)、watano(茨城高専)、はたはた(津山高専)


せっかくなら美味しいものを開拓したい外食。でも、レビューが当てになるとは限らない。そんな時、自分と味覚が近い人を頼ろう!
食べたものを投稿・チェックインすると、同じ好みな人をリコメンド。フォローすると優先的にタイムラインに並び、使うほどにヒット率上昇。


しゃもじをポインターとして解説する、はたはた。フロントエンドはモダンなフレームワーク Vue.js


GitHubのリポジトリから動かしてみました!(Foodmates-client (fixWholeDesignFinally) / server


幻の第4スプリントで、箒コウモリ(ホウモリ)がマージした、レスポンシブデザインバージョンで、スマホでもタブレットでも見やすい!


バックエンドは、Go言語(golang)で開発、データベースとしてMySQL、環境構築にDockerを使用。

ナウなDBの使い方を確認するため、Foodmatesのサーバー側を抜粋した、GoでMySQLにデータをいれてみるサンプル作成。
料理を、名前、価格、URLの3項目で、登録日時付きで、どんどん登録するシンプルなデータベースです。(src on GitHub)

package main import ( "fmt" "os" "time" "errors" "github.com/jinzhu/gorm" "github.com/joho/godotenv" _ "github.com/go-sql-driver/mysql" ) type Food struct { ID int `gorm:"primary_key" json:"id"` CreatedAt time.Time `json:"created_at"` Name string `gorm:"default:''" json:"name"` Price int `json:"price"` URL string `json:"url"` } var db *gorm.DB func InitDB() { USER := os.Getenv("MYSQL_USER") PASS := os.Getenv("MYSQL_PASSWORD") PROTOCOL := "" DBNAME := os.Getenv("MYSQL_DATABASE") CONNECT := USER + ":" + PASS + "@" + PROTOCOL + "/" + DBNAME + "?charset=utf8mb4&parseTime=True&loc=Local" var err error db, err = gorm.Open("mysql", CONNECT) // github.com/go-sql-driver/mysql if err != nil { panic(err.Error()) } db.LogMode(true) db.AutoMigrate(&Food{}) } func TruncateTables() { rows, err := db.Raw("SHOW TABLES").Rows() if err != nil { panic(err.Error()) } defer rows.Close() for rows.Next() { var table string if err := rows.Scan(&table); err != nil { panic(err.Error()) } db.Exec("TRUNCATE TABLE " + table) } } func GetDB() (*gorm.DB, error) { if db == nil { return nil, errors.New("can't get database") } return db, nil } func Finalize() error { err := db.Close() return err } func ShowAllFoods() { db, err := GetDB() if err != nil { fmt.Println(err) return } var foods []Food db.Table("Foods").Find(&foods) fmt.Println(foods) } func AddFood(name string, price int, url string) error { db, err := GetDB() if err != nil { return err } db.Create(&Food{ Name: name, Price: price, URL: url, CreatedAt: time.Now() }) return nil } func main() { err := godotenv.Load(".env") if err != nil { fmt.Println("Error loading .env file") return } InitDB() TruncateTables() AddFood("サラダ焼", 120, "https://www.sanrokusyoten-316.co.jp/products.html") AddFood("サバエドッグ", 280, "https://www.meat-sasaki.com") AddFood("眼鏡堅麺麭", 864, "http://echizen-yumekobo.com/?pid=52337987") ShowAllFoods() }

GORMを使うと、Go言語の構造体として定義したFoodを、db.AutoMigrate(&Food{})で呼び出せば、いい感じにテーブル生成をやってくれます。*GORM - ORM (Object-relational mapping / オブジェクト・リレーショナル・マッピング) for Go

MySQLのセットアップ、Mac編(参考、Mac へ MySQL を Homebrew でインストールする手順 - Qiita

brew update brew install mysql

MySQLにデータベースを1つ作成

mysql -uroot -p [dbrootpass] create database [dbname] create user '[dbuser]'@'localhost' identified by '[dbpass]'; grant all on *.* to '[dbuser]'@'localhost'; GRANT ALL PRIVILEGES ON [dbname].* TO '[dbuser]]'@'localhost'; exit

Go言語の設定ファイル「.env」にDB設定を記述

cat > .env <<EOF MYSQL_USER=[dbuser] MYSQL_PASSWORD=[dbpass] MYSQL_DATABASE=[dbname] EOF

Go言語のライブラリを取得

go get github.com/go-sql-driver/mysql go get github.com/jinzhu/gorm go get github.com/joho/godotenv

あとは動かすだけ!

go run fooddb.go [{1 2019-09-08 13:24:51 +0900 JST サラダ焼 120 https://www.sanrokusyoten-316.co.jp/products.html} {2 2019-09-08 13:24:51 +0900 JST サバエドッグ 280 https://www.meat-sasaki.com} {3 2019-09-08 13:24:51 +0900 JST 眼鏡堅麺麭 864 http://echizen-yumekobo.com/?pid=52337987}]

MySQLを初めて使ったのはもう20年前くらいかも・・・。
環境構築も、ライブラリも、便利になっていい感じですね!

jigインターン2019、ついに最終成果発表会の日。3チーム、1作品ずつマッシュアップしながら紹介します!
まずは鯖江市特産野菜「吉川ナス」を使ったレシピのオープンデータ化が決まった「旬レシピ」から。

チーム「やばいわよ!!」
たかめろん(長野高専)、ふっけー(北九州高専)、えふ(長岡高専)、Dry(明石高専)の4名チーム!


ターゲットは学生や独身の料理初心者。外食ばかりは栄養的にも金額的にも難があるけど、特に食べたいものがないけど、おいしく安く栄養あるものを食べたい人。


そこで「旬レシピ」
スーパーに入ってスマホを取り出す開くだけのシンプル操作。その時点、その場所での旬を使った安くて簡単なレシピを写真で紹介!


「旬」マークがつきの買い物リストにもなっている食材リスト。自然に自然が身につきそう。
ついでに家の在庫量とも連動させるとより便利かも。


使用したデータとAPI。オープンデータ化の必要性は作るほどに見えてくる。まずは地元を自力でオープンデータ化しよう!


今回からの初企画、展示タイム。実際に作った作品を実際に触りながら(壊しながら?)、より深い質疑応答タイム。

旬レシピは、GitHubでオープンソース!(jigintern/Season-Foods-Navi at develop)
早速気になる、Node.js でスクレイピングして作ったというデータをチェック!3MBのJSONがありました。
スクレイピングしたソースは、こちら"GetFoodsNutrient.js"、データが大きくなりすぎないように栄養素を抜粋したとのこと。

完全食COMPとの比較もしたいので、ビタミンAの分類や、表記方法の違いを調整して栄養素完全版へとリミックス! 「GetFoodsNutrientJSON.js
Node.js をいれ、npm install cheerio-httpcli でスクレイピング用のライブラリをセットアップして、node GetFoodsNutrientJSON.js でテスト実行。

$ node GetFoodsNutrientJSON.js { food: '乳類/(液状乳類)/普通牛乳', info: [ { name: '可食部', value: '100', unit: 'g' }, { name: 'エネルギー', value: '67', unit: 'kcal' }, { name: 'たんぱく質', value: '3.3', unit: 'g' }, { name: '脂質', value: '3.8', unit: 'g' }, { name: '炭水化物', value: '4.8', unit: 'g' }, { name: 'ナトリウム', value: '41', unit: 'mg' }, { name: 'カリウム', value: '150', unit: 'mg' }, { name: 'カルシウム', value: '110', unit: 'mg' }, { name: 'マグネシウム', value: '10', unit: 'mg' }, { name: 'リン', value: '93', unit: 'mg' }, { name: '鉄', value: '0', unit: 'mg' }, { name: '亜鉛', value: '0.4', unit: 'mg' }, { name: '銅', value: '0.01', unit: 'mg' }, { name: 'マンガン', value: '', unit: 'mg' }, { name: 'ヨウ素', value: '16', unit: 'μg' }, { name: 'セレン', value: '3', unit: 'μg' }, { name: 'クロム', value: '0', unit: 'μg' }, { name: 'モリブデン', value: '4', unit: 'μg' }, { name: 'ビタミンA', value: '38', unit: 'μg' }, { name: 'ビタミンD', value: '0.3', unit: 'μg' }, { name: 'ビタミンE', value: '0.1', unit: 'mg' }, { name: 'ビタミンK', value: '2', unit: 'μg' }, { name: 'ビタミンB1', value: '0.04', unit: 'mg' }, { name: 'ビタミンB2', value: '0.15', unit: 'mg' }, { name: 'ナイアシン', value: '0.9', unit: 'mg' }, { name: 'ビタミンB6', value: '0.03', unit: 'mg' }, { name: 'ビタミンB12', value: '0.3', unit: 'μg' }, { name: '葉酸', value: '5', unit: 'μg' }, { name: 'パントテン酸', value: '0.55', unit: 'mg' }, { name: 'ビオチン', value: '1.8', unit: 'μg' }, { name: 'ビタミンC', value: '1', unit: 'mg' }, { name: '飽和脂肪酸', value: '2.33', unit: 'g' }, { name: '多価不飽和脂肪酸', value: '0.12', unit: 'g' }, { name: 'コレステロール', value: '12', unit: 'mg' }, { name: '糖質', value: '4.7', unit: 'g' }, { name: '食物繊維', value: '', unit: 'g' }, { name: '食塩相当量', value: '0.1', unit: 'g' }, { name: 'アルコール', value: '', unit: 'g ' } ] }

牛乳100gの栄養素が取得できました!(乳類/(液状乳類)/普通牛乳 - 一般成分-無機質-ビタミン類-アミノ酸-脂肪酸-炭水化物-有機酸等 - 文部科学省)


人間に必要な栄養素 オープンデータアプリIchigoJam研修@大塚製薬 の記念に作った、ゆるゆる動く栄養素アプリ。
人間に必要な栄養素 CSVオープンデータ」もどうぞ!

そういえば、吉川ナスの栄養素のどのように測定したらいいのだろう?
福井高専、物質工学科に相談してみよう!

links
- 吉川ナス – めがねのまちさばえ 鯖江市

地域のIT力の要、高専。
長岡高専生の創造力が、ケニアで活躍といううれしいニュース!
日本の高専がアフリカ支援 アブの肥料化、機械で時短: 日本経済新聞
増え続ける日本の課題、世界の課題、解決するエンジニアが圧倒的に足りてません。
複雑な問題解決力が引き続きTOP by 世界経済フォーラム

前原小学校元校長、松田さんにご来鯖いただき、地域の小中学校でのプログラミング教育と、福井高専の役割をディスカッション。 地域の小中学校の先生との定期的な取り組みを、学生も一緒に、まずは小さく始めていきます!


松田孝さん x 福井高専 x エル・コミュニティ x jig.jp

プログラミングで楽しく学べる、メタ学習。
分からないときの援助要請。困ってそうな人には声をかけよう、能動的援助とコミュニケーション。
自分で分かる喜び。みんなで達成して分かち合う楽しさを知ったら、社会に目を向け課題に挑戦!

高校・高専まで習わない三角関数だって、楽しくみんなで学べば怖くない。
理論は後回しでひとまず体験、こちらを打ち込むだけで、ぼわっと光るLEDができあがり!

10 PWM 2,SIN(T),256:T=T+1:GOTO10

前原1号対応、要IchigoJam 1.4β以降、SIN(T) Tの単位は度、256倍の値が返る)


動画「編集に戻る三角関数でぼわっと光るデモ on IchigoJam 1.4」


円と角度を知っている小学生なら、理解も利用も実はそう難しくありません。
スゴい!真似したい!できた!改造!失敗、失敗、失敗、、、、できた!
この繰り返しが、粘り強く、課題が複雑なほど燃える、強いエンジニアを育てます。


地域のベストプラクティス、Hana道場で日々探求中!

jig.jp社内では、いよいよ本格開発がスタートした、高専インターン。3週間後の成長が楽しみ!
jig.jpインターン2019 開発が始まった4日目 - jigintern2019のブログ




チームが決まった、jigintern2019 day2!

鯖江市長と全国から集まった高専生インターン生12名! (photo by THETA)
学生が主役、市民が主役、やってみたいこと実現したいこと、鯖江市があたたかく応援してくれます!


職人のまち鯖江を、本物のマシン体験、めがねストラップづくり@めがね会館(となりではガチメガネつくってました!)


おひるごはんは、フレッシュランチ39


カラーカスタマイズ付き、IchigoJamハーフキットを支給!


鯖江市長の牧野さんとオープンデータを担当する牧田さんとの交流!
人気のSDGsカラーの鯖江産メガネ、グローカル(glocal)、アプリ化決定!


アジャイル開発とスクラムの研修、アイスブレイクのストラップ作り、チーム分けが終わり、本格開発に入る前にチーム開発あるあるを体験する、かんばんゲーム!


0は黒、1は茶色、2は赤・・・。値は色の入った帯で読む、抵抗が高専生の力で、カルタになった!


さすが高専生「抵抗カラーコードかるた by whiims」でもりあがる!
かつて作った「抵抗カラー時計」Apple Watchなど、ウェアラブルにいいかも?


こども、学生、社会人からシニアまで、イノベーション拠点、Hana道場、訪問!
数分でコンピューターの本質とプログラミングの楽しさを体験できるIchigoJamをとっかかりに、3Dプリンター、レーザーカッターなど、何でも創る力を楽しく修行できるイノベーション道場!


LED1つに真剣になる、プログラムたった3行、エルチカゲーム on IchigoJam!

1 LED1:WAIT1 2 LED0:WAIT30 3 GOTO1

1フレームが見えるか!?

・・・と思ったら、さすが音ゲーマー高専生。すっかり見切られてしまったので、フレーム(垂直同期)からライン(水平同期)へ!

10 VIDEO5:A=100 20 T=TICK(1)&#1FFF 30 OUT T<A 40 IF BTN()!= 1 GOTO 20 50 IF T>4000 T=T-#1FFF 60 ?T 70 IF T>=0 AND T<A BEEP5,30 ELSE BEEP20,10 80 WAIT60:RUN

IchigoJam 1.4用、ライン単位の高分解能TICK(1)を使用した、1/3フレームを当てるゲーム、効果音、ズレライン数表示付き
IchigoJam BASIC 1.4 コマンド一覧


大型スクリーンとプロジェクターがある家、ステキ!

IchigoJam 1.3や、IchigoJam web でも動く、フレーム単位版はこちら

10 A=10 20 T=TICK()%30 30 LED T<A 40 IF BTN()!=1 GOTO 20 60 ?T 70 IF T>=0 AND T<A BEEP5,30 ELSE BEEP20,10 80 WAIT60:RUN

その場でサクサク、即興でつくるのがジャムプログラミング!
シビアなタイミング、何者にもじゃまされないシンプルなマイコンの良さがある。
SAVE0してボタン押しながら起動できる「どこでも音ゲー修行マシン」のできあがり!

マリオが原点の反射神経。おもしろい=自分の伸ばしたい力。自分で作れば最短で伸ばせる。
学習コスパ最大化の鍵は、楽しむこと!


みんなで自炊、楽しそう!


大鍋でカレーづくり!


Javaカレー(中辛)で明日からの本格開発に備えます!

jig.jp インターン2019 2日目! - jigintern2019のブログ

今年もスタート、jig.jpの夏、高専インターンの夏!

今年の宿は、鯖江市の頭部、河和田地区にある改装古民家、JAPAN CRAFT HOUSE、一棟借り!


全国11高専から無事集結、12名の高専生


ウェルカムスピーチ!創るを楽しもう!


通称、ドラえもんの寝床、他、4人部屋と2人部屋あり


どこまで活きるか改装古民家キッチン解説


めがね会館にて今年のメンター陣と談笑!


恒例、秋吉!創ってみたいもの、そのヒントとなる、困っていることを聞いて混ますが、なかなか難しい。


3週間、よろしく!


閉店間際のスーパーにて


体験しなくちゃわからないモバイルVRの衝撃「ぴ」を撮る「でみ」


jigintern2019 - 参加高専マップ
12名のインターン生の活躍、こちらにまとめていきます!(src on GitHub
高専オープンデータjigintern2019membersオープンデータ
緯度経度が空欄な高専キャンパスオープンデータ、そういえば、敷地が広い高専、入り口を間違えて行くと大変なことを忘れてました。困ったことは忘れがち。それぞれ出身校データへのコントリビュート、おねがいします!
アプリの改造歓迎、プルリクの練習にお気軽にどうぞ!

jig.jpインターン 2019 スタート!! - jigintern2019のブログ

2018年のイタリアの橋崩落事故は、他人事ではありません。次々と寿命を迎える日本のインフラ、笹子トンネル天井板落下事故のような悲劇を防ぐ必要がありまが、近所のよく渡る橋、その実態はきちんと把握されているのでしょうか?
イタリアの橋崩落、死者少なくとも37人に 犠牲者には子どもも - BBCニュース
橋サイズ体験VR
鯖江市橋梁オープンデータとオープンストリートマップを使ったVR橋サイズ体験アプリ。Oculus Questで見ると実寸で実際に歩けてよりリアルに体験できます。


本日、福井高専にて「福井高専未来戦略アドバイザー就任式」
KDDI松野さん、エル・コミュニティ竹部さんと共に、委嘱状いただきました。
地域で活用AI/IoT! IT人材育成に向け、KDDIと包括的パートナーシップ構築発表とIchigoJam webバージョンアップ


未来戦略初会議!橋の耐久性などに重要なコンクリートは、福井高専校長の田村さんの専門分野!


実はこの写真、360度撮影したTHETAの写真。


視点方向、視野角、自由自在。VRで見ると、臨場感抜群です。上記、橋サイズ体験VRでクリックや、Oculus右コントローラークリックで見られるおまけつき。


高専 = 地域のチャンスをバリューに変える力!

触っちゃいました!
こちら、静岡県、富士通沼津工場、池田記念室にある世界最古級のコンピューター「FACOM128B

FACOM128Bの実機が奏でる60年前のテクノミュージック「5元連立方程式」をお聞きください!


4年目となる毎年恒例、夏休みIchigoJamパソコンづくり&プログラミング体験ワークショップ in 静岡県三島市!
紹介し忘れていましたが、かぶっていた帽子もイチゴです!


まずは、はんだづけ、カスタマイズの色選びからスタート!
(実は、カラフルカスタマイズは、4年前の三島市ワークショップで誕生しました!)


サポーターとして大活躍してくれた、沼津高専1年生!でも、みんな初めてのはんだづけ、うまい!(はんだづけ、はじめのいっぽ


失敗しても大丈夫!ハンダ吸い取り線も使いこなす、小学生。


色とりどり、ひとつもかぶりがない個性的な自分だけのパソコン、IchigoJamができました!


次はプログラミング編、早速、すぐ側にあるスゴイもの、FACOM128Bをパソコンのごせんぞさまとして紹介!


LED1:LED0

伝えた通りに超高速に仕事するのがコンピューター。
IchigoJamの100円コンピューターの計算速度は、FACOM128Bの500万倍、秒間5000万回!
100の座学の前に、1の体験!


近くのPCデポで調達できたキーボード「ELECOM TK-FCM085BK
こっそりPS/2対応版だったので、IchigoJamで使えました!
自分だけのキーボードをゲットして、ガンガンパソコン使いこなしちゃいましょう!(IchigoJamで使えるキーボード


こちら、FACOM128Bのキーボードのごせんぞ。命令は数値で入力!


1,2,3と番号をつけて記憶させるのが、IchigoJamでのプログラミング。
FACOM128Bでは、カードやテープに、パチンと穴を空けてプログラミングします!
ワッフル製造機のような読み取り装置がかわいい!


テープ状のプログラムの読み取り機!FACOM128Bのコマンドがずらずらっと並んでいます。
プログラム名をそのままテープにペンで書いているのがおもしろい!
間違って空けちゃった穴はテープでふさげばOK。鉛筆には消しゴム、IchigoJamにはバックスペース!

はじめてのテレビゲームのプログラミング、1行目!

10 CLS:X=15 RUN ?X 15 OK

人間を遥かに超越した計算速度と記憶力がコンピューターの特徴。


こちらFACOM128Bの大きな記憶装置、記憶容量は13kbit、1万3000コの0か1を覚えられるそう。
IchigoJamのコンピューターは32768コ。100円なのに、この巨大なFACOM128Bの3倍!


はじめてのパソコンづくりとプログラミング with IchigoJam (PDF)
復習はこちらのスライドからどうぞ!ゲームのつくりかたの続き、改造法も載ってます。


おみやげその1。LEDを1コ追加してコントロールするのはとても簡単!


おみやげその2。温度センサーを加えて、LEDを使った暑いところチェッカーの作り方!
190の値を、いろいろ変えて遊んでみましょう。


ワークショップへの参加、ありがとう!
ベーマガや、PCNこどもプロコンにもぜひ挑戦してね!


協力、PCN沼津&沼津高専生!


FACOM128Bリスペクトで作った、二五進数置き時計、WS2812Bバージョン!
IchigoJam ver 1.4β + テープ状のWS2812B + 時計の作り方の@ICLKと@VCLKをカスタマイズしてできあがり!

1000 @ICLK:R=RND(30):G=RND(30):B=29-R-G:IF B<0 B=0 1010 RTN 1180 @VCLK:N=H*1000+M*10+S%10:?N 1190 FOR I=0 TO 25*3-1:[I]=0:NEXT 1200 FOR I=4 TO 0 STEP -1 1210 A=N%10 1220 IF A>4 LET[I*15+4*3],R,G,B:A=A-5 1230 FOR J=1 TO 4:IF A=J LET[I*15+J*3-3],R,G,B 1240 NEXT 1250 N=N/10 1260 NEXT 1270 WS.LED 25 1280 RTN

5LEDを6行の30コにすると、秒も二桁にできます。


以前つくった5x5のマトリクス状にした材料費300円のWS2812Bボックスを活用!


動画ではよく見えなかったFACOM128Bの表示装置には、数が書いてありました。
二五進数、これなら読みやすい!
FACOM128B風置き時計もより実体に近く、カスタマイズしたい!


食事 with IchigoSodaでIoT


最新モバイルVRパソコン「Oculus Quest」の話でももりあがる!
Questの売上は好調?ザッカーバーグが収支報告で明かす | MoguraVR News - VRの「いま」を掘りだすニュースメディア


ご案内いただいた、富士通の方、貴重な体験とお話、ありがとうございました!
富士通沼津工場内、池田記念室、コンピューター好きなこども、おとなに超オススメです!
(要予約、池田記念室・富士通アーカイブズ見学に関するお問い合わせ - 富士通


秒間1京回を誇った、スパコン京のパーツもありました!冷却用の金属、重い!
次世代スパコン「富岳」のソフトウェアはここ、沼津工場で開発しているとのこと!
日本の技術結晶 スパコン・ポスト「京」 システム開発責任者の想いに迫る : FUJITSU JOURNAL(富士通ジャーナル)
CPUは15万個とのことなので、CPU1つあたり秒間6.7兆回計算。ゲーミングPCクラスを15万台つなげるイメージです。
アーキテクチャはIchigoJamのコンピューターと同じ、Arm。1つ操れたら、2コも15万コも大差なし!

コンピューターは、子供も大人も体験して分かって楽しい人類叡智の最先端。
わくわくする世界の入り口にぴったり「IchigoJam」を、ぜひどうぞ!
(日経新聞に掲載!「プログラミングの楽しさ子供らに jig.jp創業者 福野泰介さん  :日本経済新聞」)

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / アイコン画像 / プロフィール画像