実験室の片付け案
東京理科大学 地盤工学研究室の片付け案
かいたこと
現状が散らかっているのを片付ける
備品管理
メンテナンスシステム
メンテナンス定例MTG
現状が散らかっているのを片付ける
日時・人員・片付け対象を指定して行う
どこをどの順番でやるかは、詳しい人に決めてもらう
片付け方
片付け対象(部屋の全ての備品、特定の棚の備品etc.)を全部外に出す
場所が少ないプレハブ小屋の場合は、晴れた日に外にブルーシートを広げ、その上に並べる
場所に余裕があれば室内でもよさそう
備品を取り出した場所を掃除する
備品を掃除する
粉塵がかぶるのを避けたい備品は、ビニール袋などに入れておく
このあたりの保管方法は詳しくない。もっとちゃんとした方法があるならそれを採用する
備品が正常に動くか点検する
ここまで一気にやるのは厳しいだろう
一旦ラベルを貼り、後日点検する
点検進捗表をGoogle SpreadSheetで作っておく
備品の置き場所を決める
備品の数がわからない状態で決めるのは困難
とりあえず、片付け時点で備品が置いてあった場所を、その備品の置き場所とする
散らかりすぎているのは移動する
備品の全数がわかったら、置き場所を検討して、後日移動する
必要に応じて収納ケースなどを購入する
片付ける前に、実験室の大雑把な見取り図はつくったほうがいいかも
備品の量から、片付けにかかる工数をざっくり把握する
小さく始める
備品あたりにかかる工数がわからない
2025-04-08にも試験的に片付けを始めてみて、どのくらい時間がかかるのかを見積もる
備品管理
装置にQRコードを貼る
URLをどうするかは要検討
QRコードで備品管理するbest practiceがよくわからない。要調査
とりあえずgoogle docsへのリンクにすると便利そう
使い方や注意点へのdocsへのリンクにしておけば、その場でどう使うか、片付けるときどうするかを閲覧できる
さらに研究室の学生に編集権限を与えれば、追加情報を書き込んだり、わかりにくい記述をその場で書き換えたりできる
ツール
google docsとGoogle SpreadSheetを併用するのが楽そう
boxをバリバリ使っているなら、Box Notesを使うのもあり
使い方をよく知らないので要調査
xlsxを使う
Excel for javascriptでどのくらいのことができるのか気になる
Box for Office for the webだと使えないみたい
Google SpreadSheetの使い勝手を、試しに蔵書管理で試しておくか
https://docs.google.com/spreadsheets/d/18LfJsFP1g5_0Naq6ricxt59qfPpJ_Bgr3bFmjblIegc/edit?usp=sharing
こんな感じでQRコードを貼り付けておく
https://gyazo.com/e01f7838219ca08bc7882e365440de80
code:main.gs(js)
/**
* @param {(string | undefined)[]} params
*/
function searchAndInsert(...params) {
if (!params.some(param => param)) return;
const title_, author_, publisher_, isbn_, keyword = params;
let url = https://ndlsearch.ndl.go.jp/api/opensearch?cnt=1;
if (title_) url += &title=${title_};
if (author_) url += &creator=${author_};
if (publisher_) url += &publisher=${publisher_};
if (isbn_) url += &isbn=${isbn_};
if (keyword) url += &any=${keyword.replace(/ /g, "%20")};
const res = UrlFetchApp.fetch(url);
const xml = XmlService.parse(res.getContentText());
const item = xml.getRootElement()?.getChild?.("channel")?.getChild?.("item");
if (!item) return false;
const title = item.getChildText("title");
const author = item.getChildText("author")
const link = item.getChildText("link")
const dc = XmlService.getNamespace("http://purl.org/dc/elements/1.1/");
const xsi = XmlService.getNamespace("http://www.w3.org/2001/XMLSchema-instance");
const publisher = item.getChildText("publisher", dc);
const date = item.getChildText("date", dc);
const subject = item.getChildText("subject", dc);
const isbn = item.getChildren("identifier", dc).find(child => child.getAttribute("type", xsi)?.getValue?.()?.startsWith?.("dcndl:ISBN"))?.getText?.()?.replace?.(/\-/g, "") ?? ""
const ndc = item.getChildren("subject", dc).find(child => child.getAttribute("type", xsi)?.getValue?.()?.startsWith?.("dcndl:NDC"))?.getText?.() ?? ""
const spreadsheet = SpreadsheetApp.getActiveSpreadsheet()
const sheet = spreadsheet.getSheetByName("book list");
sheet.appendRow(title, author, publisher, date, subject, ndc, isbn, link, 1)
return true;
}
function onEdit() {
const spreadsheet = SpreadsheetApp.getActiveSpreadsheet()
const sheet = spreadsheet.getSheetByName("operator");
const checkBox = sheet.getRange("B6");
if (!checkBox.getValue()) return;
const title = sheet.getRange("B1").getValue();
const author = sheet.getRange("B2").getValue();
const publisher = sheet.getRange("B3").getValue();
const isbn = sheet.getRange("B4").getValue();
const keyword = sheet.getRange("B5").getValue();
sheet.getRange("C6").setValue("searching...")
const success = searchAndInsert(title, author, publisher, isbn, keyword);
sheet.getRange("C6").setValue(success ? "inserted." : "no book found.")
Utilities.sleep(1000);
sheet.getRange("B1:B5").clear();
sheet.getRange("C6").clear();
checkBox.uncheck();
}
メンテナンスシステム
ここでは、「掃除や実験装置の点検」などをまとめてメンテナンスと呼んでいる
維持管理と言い換えてもいい
掃除係をローテーションする
範囲の例
実験室の床
配線状態確認
研究室の床
研究室の机
研究室の本棚(A,B,C)
研究室のシンク
実験室のシンク
実験室の棚(A,B,C)
研究室の冷蔵庫
研究室の道具置き場
B4が20人ほどいるので、分担して回せば一人当たりの労力は少なくなるはず
掃除の仕方や片付けの仕方を言語化できるのもポイント
1人が一つの場所をずっとメンテする場合は言語化するインセンティブがない
複数人が、それも多人数が交代でメンテする場合は、口頭であれ文書であれ、何らかの方法でメンテ方法を共有する必要に迫られる
研究室メンバーには、研究室全体を細部まで知ってもらうという目的もある
研究室の冷蔵庫とかは重要度薄いけど
実験室の棚の確認とかは、どんな実験装置があるかを知れる
道具を知っておくと、何ができるかという想像の幅が広がる
何か困ったことがあったとき、「実験室のあそこの棚にある装置とあっちの装置とを組み合わせればいけるかも」とひらめける
掃除というよりメンテナンスというべきか
メンテナンスでやること
掃除
異常があれば報告
掃除の仕方などもQRコードにしてそばに貼り付けておくとよい
例えばシンクの洗い方を、シンクの壁にQRコードにして貼り付ける
https://kakeru.app/97210956671683c16e19c7bc8dff0554 https://i.kakeru.app/97210956671683c16e19c7bc8dff0554.svg
実験装置のメンテについては要検討
使っていない実験装置は、上に挙げたローテーションの対象に組み込んでいいと主う
使っている実験装置は、使用中と使用後の片付けの間だけ、使用者に管理を委譲する
あらかじめ(片付けを含めた)使用期間を管理アプリに入力する
期間の延長などもアプリから入力する
使用期間後はローテーションのメンテナンス係が配置される
もし片付けていなければこれで発覚するという仕組み
メンテナンス分担管理
担当者への通知
その日に場所Aをメンテナンスする人に、担当であることを通知する
個別設定でOFFできるようにする
メンテし終わったら、Google SpreadSheetなどに完了したことを報告する
特定の時間帯(夕方など)になってもメンテ完了してなかったら、メンテ報告するよう通知する
これはOFFできないようにする
それ以降もメンテが終わっていなかったら、完了し終わるまで何度も通知する
通知方法
LINE bot
特定のグループにbotを入れる
研究室の学生はグループに入っていさえすればいい
全員に通知が飛んでうるさそう
bot accountを各々が友達として招待する
個別に通知が飛ぶので、うるさくはならない
研究室の学生全員に招待してもらう必要がある
Discord,Slackのbot
通知その他を高度に制御できる
すでにほかのcommunicartion toolを入れている場合は、移行が面倒
メール通知
学生個々人にやってもらう設定はこれが一番負担が軽そう
takker.iconがやり方をしらないので、要調査
gmailとGoogle Apps Scriptの組み合わせでいけそう
データベース
メンテ報告用シート
メンテする箇所と担当者を書いたシート
これらは全て研究室の人間なら誰でも見れるようにする
管理者(メンテのリーダ?)にメンテ状況のサマリーを一定間隔(週1など)で送り、定例のfeedbackの場やゼミなどでやっていない人などに催促する
ローテーション用のいいレイアウトないかな
シフト管理,シフト表などというらしい
エクセルでシフト管理!シフト表の作り方や便利な関数も紹介 | ITトレンド
Excel数式だけでローテーションする
エクセルで当番表をローテーションさせる方法|Office Hack
株式会社NXTED|スプレッドシートで1週間ごとに自動更新の当番表を作ってみた
エクセルでローテーション自動作成へ挑戦中|libhon
途中で別の人に割り振ったりできるようにしたい
予定があってできないとか
うーん、シフト表の自動作成は無理かー
手動で作るのめんどい
てかbot作るのだって工数かかるよな……
まあここはメール配信で何とかなりそう
実装に時間かかりそう……
まあいずれにせよ、分担回す前に片付けする必要あるし、そっちが先だな
あと絶対手動で組む場面が出てくるから、それを保守する人間が必要
それを維持するためのメンテナンス定例MTGでもあるが
/villagepump/2025/04/07#67f30b7400000000000e2ee4で話した
メンテナンス定例MTG
基本的には非同期
メンテの催促や異常の報告など
定期的に、メンテナンスのリーダーが、前回の定例MTGからの出来事などを報告する
使い勝手を確認し、問題が上がったやり方を修正していく
頻度
最初は高頻度(週1,2回)行う
安定してきたら数か月に1回で十分になるだろう
時間は10分程度
たぶん動くと思うからリリースしようぜの精神でやっていく
これにはもちろんfeedbackの場が必要
メンテナンス対象に研究室まで含めるかは要検討
塚本研メンバーとの打合せも必要
QRコードではなく、やりかたを印刷して貼り付けてもいいが、以下のデメリットがある
文書の更新が面倒
データを同期できない
出納管理などをしたいときは、クラウド上に保存してあったほうが、どこからでも閲覧できて便利
場所をとる
詳細に手順や注意点を書き込めない
リンクや動画を貼れない
今の時代、どうせみんなスマホを持っているので、QRコードで読ませる前提でも支障ないだろう
2025-04-06 21:24:42 これ誤った二分法だ
「基本的な手順を紙に書きつつ、詳細情報やトラブルシューティングをQRコードに逃がす」方法もある
例えばシンクなら、
シンクの洗い方は印刷して貼っておく
使っている洗剤や道具の情報、補充方法をQRコードに逃がす
分担表のQRコードなども出しておく
#2025-04-06 17:28:15
#2025-04-03 12:29:30