Articles tagged with: 関数

kintone Café JAPAN 2021でミッションに挑みました


11/13に催されたkintone Café JAPAN 2021は、全国のkintoneユーザーや技術者有志が集まるイベントです。有志によって運営されています。
毎回、さまざまな趣向をこらしたイベントが行われ、kintoneを愛する人々の知見と刺激と交流を生んでいます。

今回のJAPANでも複数のセッションが企画されていました。私は冒頭のセッション
Excelインポートミッション!君はこのトラップに気付けるか!?
のミッションに挑戦者として指名されました。技術者代表として。

このミッションの具体的な進行を私が運営者に教えてもらったのは、JAPANイベントが始まる30分前。
指令されたのは、Excelとkintoneを画面共有で皆さんに見せながら、その場でExcelに仕込まれた不正データを見抜き、データを整えた上でkintoneにインポートするミッション。

私にとって幸いだったことは、初っ端が私ではなかったことです。
最初の挑戦者であるキンスキ松井さんに課された10分間のミッション。これはまさにスリルに満ちていました。
頻発するエラーに四苦八苦される松井さんの姿を見ながら、私はミッションの雰囲気を把握することができました。


さて、私の出番です。私に割り当てられた時間は15分。技術者枠なのでさらに難易度はアップしています。
スタートの合図とともに、割り振られたスペース上のアプリとインポート対象のExcelを開きます。
すると、松井さんのミッションにはなかったルックアップやチェックボックスフィールドが加わっていました。さらには、Excel上での住所連結、氏名分割までも。
結局15分ではミッションをクリアできず、二回の延長をお願いして約20分を要してしまいました。
ただ、皆さんにはとても盛り上がってもらえたようです。Twitter上でたくさんの応援や感動したとのお褒めもいただきました。ありがとうございました。


このセッション、出た本人がいうのもなんですが、神企画だったと思います。
観覧されている皆さんにとっては、手に汗を握るスリルがあり、データをインポートする方法の知見がたまります。ミッションで使われるExcelのデータも一見それほど複雑ではないため、kintoneに触れて間もない方でも理解できる配慮がなされています。
さらに、ミッションを課された私にとっても、奔放なExcelデータをkintoneに取り込む経験がたまります。

実際、システム開発を営んでいると、今回のミッションで提供されたようなExcelに遭遇することはしばしばあります。
都道府県の列に見知らぬ県が混ざっていたり、誤字やスペースが混ざっていたりのデータはザラにあります。選択肢にない値や異体字、さらには違う文字コードのデータが混ざっていて文字化けする場合もあります。厄介なことに目には見えない改行コードが混ざっていることもあります。

普通、そうしたデータのインポートには時間をかけて対応します。入念に移行のデータを検証し、準備する時間を確保するのがセオリーです。
そうした移行に関する手続きは、昨年のkintone Advent Calendarで以下の記事としてアップしたのでご参考にしていただければ。
kintoneにシステム移したいんや

ただしこの記事に書いたような、移行の作業にじっくりと専念ができるかどうかは何ともいえません。そうはお客様が許してくれない場合があるからです。
例えばお客様先で利用を始める段になって、システムにバグが出ることもあります。それがプログラムのミスならまだいいのです。kintoneは修正が比較的容易にできるのですから。
問題はデータに不備があったり、アプリの設計と食い違っていたりした場合です。しかも、こちらの移行設計のミスならまだしも、お客様が直前で項目を修正したり、今までに発生していなかったデータがCSVに紛れ込んでいたりするからタチが悪い。
訪問したお客様先のその場で設計変更が必要になり、その場でデータを旧システムからもらい、その場でデータを加工して取り込む状況に追い込まれることだってありえます。

さすがに、お客様先で今回のミッションのように15分の制限時間を課されることはないでしょう。
ですが、技術者としては現場での応急対応が求められることは想定しておかないと。
アウェイの場での孤独な作業。お客様からの無言の期待と圧力を感じつつ、その場でExcelのデータとkintoneアプリの構成を比較して正しいデータに直す。それには臨機応変な対応が必要ですし、さまざまなエラーのパターンを同時に考えながら手を動かすことも必要です。こうした場数を経験しておくと後で技術者のキャリアの上で役に立ちます。
私も何回か、現場で加工したデータを取り込みなおしたことがあります。

こうしたやり方は従来のウォーターフォール型の開発では許されません。アジャイル開発やスクラム開発でもあまり推奨されないはずです。ですが、kintoneは症状の度合いによってこうしたLive感に満ちた開発・修正が可能です。むしろ、そこに真価を発揮します。
今回のミッションは、その経験を思い起こさせてくれました。また、出た当初のkintoneに惹かれた気持ちも思い出させてくれました。
このミッションにチャレンジすることは、kintone技術者としてのスキルを鍛えてくれるはずです。

Twitter上でもこのミッションを自社の研修に使ってみたいというつぶやきを見かけました。弊社でも同様にミッションを課してみようと思います。

司会の「けいん」さん
@soulxoxo

サポートの「よしみ」さん
@yoshiminxkay

一人目の挑戦者の「松井」さん
@kinsukicom

ガヤりの「とうげ」さん
@touge_moved

の皆様、ありがとうございました。あと、観覧者の皆様、声援ともどもありがとうございました。

時間が取れるかどうかはわかりませんが、今回のミッションの中で行った処理については、ゆくゆくは記事にしたいと思います。
なの、ケインさんがnoteでミッションに必要なアプリやExcel一式をダウンロードして使えるようにしてくださっています。

続いてのセッション『それkintoneで作って下さい!駄菓子屋さんの棚卸システムを1時間で仕上げちゃおう!
は、まさにkintoneのファストシステムの良い例です。
ファストシステム。最近ではこの言葉は使われていませんが、kintoneが出た当時はファストシステムと銘打たれていました。迅速に構築のできるシステムであることを訴えて。
今回のセッションでは、要件定義をもとに基本設計とアプリ構築を同時に行いながら、棚卸しシステムのプロトタイプを一時間で作り上げてしまいました。
このセッションは弊社のメンバーにぜひ見てもらいたいと思いました。従来のシステム開発なら、持ち帰って検討して要件定義した後に実装するため、早くても三週間はかかっていたでしょう。それが一時間でできてしまうkintoneの性能と機能をフルに活用した良い例です。

続いてのセッション『教えて!みんながkintoneから学んだこと』も良かったです。
先日のcybozu daysでは、kintone SIGNPOSTが正式にお披露目されました。現場の課題をどのようにシステム要件にし、それをシステムとして組み上げるか。その際はシステム開発に留まらず、コンセプトや社内のビジネスフローの再構築にまで話を広げる必要があります。その中では体制やコンセプトの整理も求められるでしょう。
現場の声としてあがった本セッションの内容は、kintone SIGNPOSTの生きた事例として参考になりました。

続いてのセッション『チャレンジ!きんとん関数ドリル』は、
ここ二年間でkintoneに追加された機能として特筆される関数を取り上げていました。このセッションではkintoneの関数の奥深さを味わうことができました。
私は出題された10問のうち6問しか合わず、関数についての理解の浅さを露見させてしまいました。
なんでもJavaScriptで解決してしまおうとする考えから切り替えていかなければ。
それにしても、松田さんによる関数の分析はお見事としか言いようがありません。ここまで理解してこそkintoneエバンジェリスト。私も精進しなければ。

この後もkintone SIGNPOSTの紹介や懇親会などがありました。が、実家にいた私は両親と食事に出かけたため、この後の懇親会には参加していません。さぞや盛り上がったことでしょう。

また来年も開催されると思うので、楽しみにしたいと思います。

重ねて皆様、ありがとうございました。

当日のTwitterまとめはこちらです。


サイボウズユーザフェスティバルに登壇してきました


先日、7/20にサイボウズユーザーフェスティバルが開催されました。
https://page.cybozu.co.jp/-/userfes

弊社代表が、その中のセッション「kintoneエバンジェリストが厳選 教えて!今知っておくべき活用術ランキング」に登壇したので、そのレポートをお送りしたいと思います。

今、kintoneエバンジェリストは全国で19名が活動しています。
このセッションでは、その19名のエバンジェリスト全員がアイデアを持ち寄り、kintoneを使う上でこれだけは知っておいた方がよいと考える活用術のうち投票で上位に選ばれた五つを紹介しました。

紹介するのは、弊社代表も含めた四名のkintoneエバンジェリスト。サイボウズ東京オフィスと福岡オフィスの二拠点に二名ずつに分かれて連携しながら、オンラインで配信する。
そんな試みにあたって、弊社代表は東京オフィス側で登壇しました。

コロナ以降、オンライン配信は普通になりつつあります。代表もZoomなどで配信は何度も行っています。個人で簡単に配信することができるようになってきたのです。

ですが、今回のサイボウズユーザーフェスティバルは、きちんと配信用のコンソール卓が用意された本格的な配信です。東京と福岡で交互に連携をとりながら、タイミングを合わせて配信するにはそれなりの装備が必要です。
こうしたきちんとした配信は、代表は昨年の12月にCybozu Days 2020 Osakaで経験済みです。とはいえ、やはり緊張しますね。今回、最初は少しだけ硬かったように思います。

でも、大丈夫。東京にはニ名の、福岡では一名のサイボウズ社の方がフォローしてくださったことで順調に進みました。ありがとうございます。

さて、今回のセッションで選ばれた五つの活用術は、投票で上位に選ばれただけのことはあります。皆様にとってためになったのではないでしょうか。

「意外と知らない?!グラフの便利術!」
グラフで凡例をクリックすることで表示を切り替えられる。実はこれ、代表も知らなかった機能でした。
kintoneの標準機能にもまだまだ知らない便利な隠し技があるのかも。そう思わせてくれるすてきな活用術でした。

「迷子にならないためのkintone活用術」
こちらは代表が挙げた活用術です。ポータルのカスタマイズは奥が深く、弊社もまだまだこれからの部分です。今後、皆さんから多彩な技が報告され、ノウハウがたまっていくだろうと思っています。
私の前に用意されたモニターの文字がよく見えず、一緒に登壇した松田さんからの振りに見当はずれの返しをしてしまった気がしますが、そこはうまく松田さんがフォローしてくださいました。ありがとうございます。

「エバだからこそ伝えたい!kintone前提で考えないこと」
これも重要な活用術です。あえてkintoneを使わないのに活用術!?
私たちも構築する際、ついkintoneで完結させようと頑張ってしまいます。実際、ユーザー様からもなるべくkintoneで操作をまとめたいとのご要望をいただくからです。
ですが、無理やりkintone上でカスタマイズしてしまうことが正しいとは限らない。そうなのです。そこに完璧な正解はありません。
代表自身、あらためて深く考えさせられました。

「kintoneの活用情報に出会うコツ」
サイボウズユーザーフェスティバルの前日に、kintoneコミュニティ案内版が正式にリリースされました。弊社代表の記事が最初にアップされた五本の記事に選んでいただいています。
kintoneのコミュニティは活発です。並み居るPaaS/SaaSの中でも屈指だと言えます。ですが、活発であるが故に、増えてきたコミュニティをどのように乗りこなしていくかは迷います。
初めての方にとってまずTwitterでハッシュタグをつけて発信することの大切さも含め、とっかかりとなる情報がお届けできたのではないかと思います。

「標準機能で「計算」する際に知っておくべきポイント」
kintoneの関数を使いこなし、関数だけでデータを加工してしまうお見事な皆さん。いわゆる関数芸の使い手の方々です。
最近のアップデートで拡充されたkintoneの関数は、関数を究める楽しみを与えてくれました。

ですが、関数もコツを抑えておかねば、困ったことになってしまいます。Excelのように。
Excelを個人が囲い込んで育てるとアンタッチャブルな闇ブックが多数生産される。まさにブラックボックスのように。
代表もかつて、某銀行の中で無数のExcelツールを整理し、汎用化する仕事に携わっていました。Excelは簡単にダークサイドに堕ちるのです。
kintoneも同じ。この活用術は、kintoneを闇堕ちさせないための貴重な情報が込められていました。

「kintoneの禁断カスタマイズに気をつけて!!」
これもまたkintoneを使う上で陥りがちなワナです。
HTMLとJavaScriptとCSSで表示するシステムであるが故に、やろうと思えばどんなことだってできてしまいます。
ですが、無思慮にDOMを変えてしまうと、kintoneのバージョンアップに伴ってそれらのカスタマイズがバグを生む可能性は十分にあります。
これは、技術者のサガとして突っ走ってしまいがち。その懸念をきちんとした形でエバンジェリストから発信できたことはよかったと思います。

「ルックアップフィールドの落とし穴に気をつけて!!」
この活用術は、私が動画の作成も含めて担当しました。自分で録画したとはいえ、動画にナレーションを充てるタイミングが不安でしたが、何とかやり遂げられたように思います。
ルックアップフィールドこそは、kintoneを初めて扱うシステムエンジニアがまず戸惑う部分です。kintoneはルックアップを理解できれば大丈夫。
その際に陥りがちなワナを説明できたのではないかと思います。

さて、配信も無事に終わりました。まずは安心。
こちらは当日のスライドです。

この日は上に書いた通り、サイボウズ社の本社からの発信でした。
そのため、代表と一緒にうちの社のメンバーにサイボウズ社を案内できるよい機会でした。今年から参画してもらってからというもの、一度もつれてきていなかったので。

サイボウズ社のオフィスに広がる遊び心にあふれた設えの数々。そこから、サイボウズ社の社風や考え方の一端を感じてもらえるのではないかと思いました。
kintoneを単なるツールとして扱ってほしくない。機能とその背景となる考え方についても理解し、愛着を持ってほしい。

いわゆるよくあるオフィスとはかけ離れた様子に、興味津々のうちのメンバーたち。今回は二人のパートナー企業の方にも来ていただきました。
サイボウズ社の社風や、kintoneの可能性について理解してもらえたのであればよいのですが。

ただ、フェスティバルの日は弊社の毎週行っている対面開発の日に充てさせてもらいました。それもあって、登壇の直前まで内部で打ち合わせを行っていましたし、終わった後もそれぞれの作業のフォローに勤しんでいました。
それもあって、代表もメンバーもサイボウズユーザーフェスティバルのセッションはあまり聞けていません。

ですが、代表が登壇している間はセッションに集中してくれていたと聞いています。
うちのメンバーがサイボウズ社やkintoneに愛着を持ってくれたと確信しています。そしてもちろん、サイボウズユーザーフェスティバルをご覧いただいた皆様も!
皆様!ありがとうございました!

そうした見学の機会も含め、サイボウズ社のうっし-さん、かんちゃん、関根さん、配信ご担当の方、ありがとうございました!