nakada夫婦のスケジュール共有に2年ほどTimeTreeというアプリを使っています。操作性が良くて気に入っているのですが、TimeTreeの共有カレンダーを外部サービス(例えばGoogleカレンダー)とシンプルには同期できないという不満がありました。Googleカレンダーと同期することが出来たらアレクサに「今日の予定は?」と聞くだけで予定の確認ができるので便利になるのにと思っていて早2年。運営元に「有料アカウント化してもいいからAPI作って」と問い合わせまで送っていました。想いが通じて(?)先日、予定取得APIが公開されたので、早速TimeTree共有カレンダー→Googleカレンダー→アレクサで予定確認を作ってみました。Googleカレンダーへの同期ということで、API取得はGoogleAppsScript(GAS)で作成。TimeTree側に予定が追加されたかを定期的に取得するためにGASにトリガーで定期実行を仕込んでいます。コードは最後に載せますが、作成にあたっていくつかポイントがTimeTreeの予定は今日~最大7日分しか取得できないこの制限自体はAPIドキュメントに書いてあるので不便ですが問題ではないでしょうTimeTreeAPIのタイムゾーンはUTC固定タイムゾーンを変更できません。このため日本時間AM9時が日付の切り替わり基準になります。なんとAM9時を過ぎると0時~8時59分までの予定が取得できなくなります。APIドキュメントにUTCと書いてあって嫌な予感したので境界値テストしたら案の定でした。過去の予定は同期済みであることが期待できるので実用上は大丈夫かと思われます。EndTimeが1日ズレるこちらはGoogleカレンダーAPIの仕様のようです。1月10日~1月13日までという予定をAPIで取得すると、API上は終了日がなぜか1月14日を返してきます。1月10日~1月12日の予定として作成されます。フォーラムでも不可解な動作として疑問を抱いている人が多かったですが、「終日予定の終了時間は翌日の0時0分」というのがGoogleさんの判断のようです。同期したい共有カレンダーのIDを調べて、getUpcomingEvents()をトリガーで定期実行する感じです。Timetreeのパーソナルアクセストークンの取得とかは適当にググりましょう。//予定が変更されている。//予定が変更されている。//予定が変更されている。//予定の説明欄にtimetree側のeventIdを入れておく。}}これにて「アレクサ今日の予定は?」が実現しました。現役エンジニアの人が読むとめちゃくちゃ面白い!絶対読むべきなにせ作中に出てくる用語やツールが、馴染みのあるものばかりmacbookを使いslackで連絡を取りgithubでコードを共有するサーバにはAWSを使いマストドン(むしろ懐かしい)やドローンも出てくる主人公は自称「何でも屋」のエンジニア。書いてて気がついたけど、この話だけ主人公は巻き込まれてない『インターネットは自由でなきゃならない』この本の中で一番響いたフレーズめぐみの雨が降るマレーシアで開催されたフィンテック(金融技術工学)イベントに日本からのゲストスピーカーとして招待された主人公。2013懇親会受付の状態で起動して「最後にスタッフ参加したの5年前だったんだ。益子さんと一緒に懇親会の受付したなぁ」と5年前の受付の様子。2013年京セラドームにてひさびさのJAWS-UGは知らない人だらけもちろん古くからの知り合いもまだまだ居るのですが、なんというか中心に居るのは知らない人たちばかりコミュニティって昔は地理的に縛られたものだったわけですよね村とか地域の組合とかが地域に縛られたコミュニティでしたこういった村的なコミュニティでは、古参メンバーが幅を利かせてしまうことが多かった。いう発想はないGiveし続ける権利を必死で守るGiveすることを排除する組織と戦うここのところ感じていた感覚をコレほどまでに端的に言語化いただいて、ほんと友岡さんには感謝しかないです技術コミュニティに限らず最近流行りのオンラインサロンでもなんでもいいのですが、参加しておいて「なんかうまく活用できない。GiveばかりでTakeがない」とかほざいている人は滝に打たれながらGiveについての考えを改めたほうがいい役ただずならコミュニティでの影響力は下がりますし、むしろ老害ならコミュニティからは速やかに排除されるべきですTakeしてやろうなんて発想をのさばらせておくと某CMSコミュニティみたいに、その役割を終えることになっちゃいます。業務ではAWS、個人ではさくらインターネット派なのですが、何かのご縁とパンフだけは貰っておきましたということで小島さんのターン※コミュニティマーケティングについてはこちらもご参照ください。「広告費ゼロで新規顧客を獲得できるコミュニティマーケティングって何ですか?」(Web担)https://webtan.impress.co.jp/e/2018/03/07/28085オンラインで知っていたので、オフラインでお話聞けて良かったですその後、神戸のAlexaDaysの懇親会でお会いした大学生が登壇していたのですが、なんか知らない間に別人のようになってました悪い大人たちのせいでコミュニティに巻き込まれた実例を目の当たりに。ほんとビックリした最近ひさびさにこうやってコミュニティに顔出すようになって実感しているのですが、続いてるコミュニティって新しい人だらけですよねむしろ昔の人とか全然いなかったりして、巻き込み巻き込まれ発展していってるんだなと常々思いますあと、11月のラスベガスのre:Inventに行こうと誘われたわけですが、AWSの中の人でもない人たちが純粋に誘ってるのは「これ!今のこれが、コミュニティマーケティング!」って感じでしたそれなりに良いプロダクトなら絶対にファンはいると思うんですが、まぁ普通はバラバラだったりするのは問題ですよねバラバラに存在しているファンを束ねるために、今回のようにオフラインの場が1回あるだけで動くこともありますしねre:Inventは前向きに検討します。nakada先週、組み込みとIoTのイベントに行ってきました。Cat.M1に期待するところがあって、業界の温度感というか、そういうの見てみたかった感じです実際行ってみたら、驚きのワイシャツの白さ(洗濯CM並感)だったでしたいつものラフな格好とコート&シエルのリュックスタイルだったので、ブースの説明員の人が「コノ人、声かけていいのか?」と判断迷ってるのを感じたいろんなブース回っていると、どんな立場や業種なのか聞かれるわけですよ「エッジ(デバイス)側の人ですか?」みたいなそんな時は「クラウドの方から来ました」で乗り切っていました。ダッシュボタンみたいに超音波使ったりとか、NetureRemoでも専用アプリから設定とかねハッキリ言ってめんどくさいわけですよそれどころか、パソコン詳しくない普通の人にとって見れば絶望的に「繋がらない」世界なわけですよそこへ、Cat.M1のような「sim刺さっててたら通信出来ちゃいます!」って存在がくると、キャズム超えちゃうんじゃないかと思いません?LTE4G/3Gのモジュールは5000円とかしてたわけですよそんなんでは、数千円の商品に3Gモジュール載せようとか誰も考えないそれに対して、Cat.M1のモジュールって500円くらいこれなら製品に乗せるかどうかの選択肢になりえると思う「その辺にあるものを繋ぐ」で特に可能性を感じるのは、個人的には「遊び」その辺のおもちゃが繋がったら楽しいなと思うのは、現実と仮想のクリスマスツリーにも通じてる通信モジュール入りのボードゲームで一緒に遠くの友達と遊べたりとかSDカードなんか使わなくても、音声データ追加出来る妖怪ウォッチとかそういったモノこそ普通の人に望まれてると思うこのへん書くと長くなるsimもSORACOMさんのおかげで、すごく良い市場が出来上がっているSORACOMが無かったら日本の通信業界の未来はもっと暗かったと本気で思うそんなこと考えていたらタイムリーなことにSORACOMからCat.M1のIoTボタンが発表されたhttps://soracom.jp/registration/soracom_ltem_button/ということでSORACOM最高!という話しでした。(距離/光速)^2);直交宇宙では移動前の系の時間に対して、移動した側の主観時間が上回るので「未来」を進むことができるつまり我々の宇宙の相対性理論のちょうど逆になっている我々の宇宙において光速に近い速度では2項目がマイナスに作用することで「主観時間」が減少する。光速に近い宇宙船で地球に戻ると減少した主観時間では1年しかたってなくても地球時間で100年たっていたというSFでありがちな現象が起きるわけだ。対して、直交宇宙では速度が上がるにつれて質量が軽くなる!光速に到達することが可能なうえに、さらに速度を得ることが可能となるこのように直交宇宙の光速に近い慣性系の解釈には、我々の世界の特殊相対性理論のほぼ逆と理解すればよく、1巻までは中高校生レベルの数学で付いていくことができた1巻では最終的に山まるごと宇宙船にして飛ばすという計画を実行するのだが、作中の様子を見るにコンピューターは存在しない時代で紙とインクで計算をしていた我々の世界での宇宙開発も最初期は似たいような感じだったことを考えると「なくはないかな」という感じではあるそれでも9000メートル級の山を1つ第3宇宙速度で打ち出すというのは、直交宇宙の物理法則があってこそだちなみに、テストを兼ねた有人ロケットの初試験では死者が出る。ロケット開発史として、その過程がとてもリアル2巻になると、いよいよ分けわからなくなるのだけれど、作中の鏡が粒子にさらすと不連続に曇っていく現象なんかは我々の宇宙の光電効果だろうとか、この現象を説明する過程で出てきた比例定数であるパトリジアの定数は我々の宇宙でのプランク定数なんだろうとか、なんとか対応付けすることで理解の助けにはなったとはいえ、そもそも我々の宇宙の量子力学が直感的に理解しがたい内容なので、直交宇宙の量子の振る舞いも謎だったタイトルであるエターナルフレイム<永遠の炎>が発見されるのだけど、これってE=mc^2が直交宇宙ではマイナスになってるからという理解であってるのだろうか?我々の宇宙では質量をエネルギーに変換できる。核反応や反物質との対消滅でエネルギーが取り出せる直交宇宙では逆になって質量を獲得するとエネルギーが増える(という理解であってる?)増えた質量は光として放出することで辻褄を合わせたシステムがエターナルフレイムなんだろうか。このあたりは自信ない作中では反物質との対消滅でエネルギーが生成されたような描写があるし、この解釈は間違っているのかな3巻アロウズ・オブ・タイムは、「時間の矢」を扱う特殊相対性理論に加速系まで拡張した一般相対性理論もここから恒星の重力を使って理論の検証をするところは我々の科学史と同一でこれまたリアルロケットの進行方向が折り返し地点で減速、その後加速して逆転この加減速にあたって我々の世界での一般相対性理論に対応していく感じだろうか宇宙全体の曲率から宇宙の形を求めていく部分は、残念ながらさっぱりだ直交宇宙はその性質から有限である必要があるという前提そのものが分らんかった。直交宇宙の物理法則を活用することで未来からの情報を得る<メッセージシステム>と、未来の自分からのメッセージを受け取ってしまった人がどうなってしまうのかの哲学的思考実験は楽しめた3巻まで来ると物理法則と数学が大学院レベルに到達。それでも物語そのものが面白く読み切れた時間の矢が反対の惑星に降り立った時の足跡の描写とか、どんな想像力があればあんな魅力的な文章にできるのかここらで力尽きた。DAYS参加だったんですが、とにかく人多い上の写真のような会場が9つも隣接していたのですが、人気のセッションは立ち見が出ていました。誰も損してない!Win-Win-Winですね。Barrさんにも会えました大阪の居酒屋で一緒に撮った写真を見せたら覚えていてくれたようでしたJeffさん、1日中こうやって誰かと写真撮っていましたね。去年の12月に個人的な思い付きと目標として子供たちのために現実のクリスマスツリーとマインクラフト内のクリスマスツリーを連動させようとしました。(詳しくはコチラ)プラグイン作成だけで無事動き、子供も喜んでくれて楽しんでくれましたがクリスマスツリーの片づけとともに忘れ去られていました。その後、たしか6月ごろだったと思うのですがMabeee祭の一次エントリーをMakuakeからのメールで偶然見かけ、「去年作ったツリーのやつ応募してみようかな」とエントリーすることに。エントリーの時点でモノは出来ていたので心配はなかったのですが、別の心配が一つ。最終選考まで残ったら作品もって東京に行かなければならないと参加規約に書かれていましたが、妻が第三子を妊娠中で順調にいけばコンテストがあるのは妊娠9ヶ月あたり。相談したところ快く行ってきていいよとのお言葉。その後、コンテストまで作品の展示用の手直しと動画作りを準備していました。コンテスト当日9/16の朝、スーツケースにクリスマスツリーを詰め込み伊丹空港に向かいました。会場はスマートニュース本社さっそくクリスマスツリーの準備をします。開始時間まで1時間ほどあったので、他の参加者の作品もチラチラ見て回りましたお隣さんの作品VRゴーグルで操縦席の視点を体感しながら操縦できる作品ザクは偉い人の指示で付けた飾りだそうですこちらは対戦ゲームな作品。材料はほとんど100均だそう。他の作品でも100均とソレノイドスイッチの万能ぶりを痛感しました。実際に体験させてもらいましたが、ぐっと力を入れると動き始めるのは凄かったです。こんなセンサーも買おうと思えば個人でも買えるのは凄い全体で40作品ほどあり、ゆっくり他の作品も見たかったのですが自分の作品の説明もしないとだったので時間が足りませんでした。残念コンテスト開始ですスタッフの人は青いTシャツ着ていました一般参加の人に作品の説明をしたり、動画撮影やプレスの方からインタビューを受けたり作品の説明を繰り返していたら、あっという間に審査発表の時間にまずは各審査員賞が発表されます。参加したからには1つくらい賞取れたらいいなぁ~。家族のもとに手ぶらでは帰れないなぁ~。なんて考えていましたが、次々と発表される審査員賞では呼ばれず。自分の作品が呼ばれたときは、聞き間違えかと思ったほどビックリしましたこんなことなら全身サンタコスチュームで待機しておくべきだった賞状なんて貰ったの何年ぶりだろう大賞の賞品で頂いたBOCCO家にいる子供と外にいる親のスマホを繋いでくれるメッセージデバイス。小学生の子供がいるので使うの楽しみ!その後、懇親会が始まりました。審査員の方々と作品についてお話させていただきました。審査員全員が私の作品を評価してくださったみたいでホントにありがたいことです。あと「amazonでヘリウムガスがタンクで買える」という情報を得たのが衝撃でした。ノバルスのCTOの方からプロトタイプのMaBeeeを見せてもらいました。3Dプリンターで外枠を作り2種類の基盤を無理やり組み合わせて作ってたそうです。手作り感ここのところ仕事ではクラウド最高ということでハードからは遠のいていましたが、やっぱりモノはいいなぁと思いました。子供のために作ったモノが、こんな形で評価をいただけてホントに嬉しかったです。nakadaプログラミング開発環境Scratchをさわってみたので、その記録どうせなら子供と一緒にやろうかと思ったもののITリテラシーの低い我が子たちはiPhoneでマインクラフトが限界で、PCのマウス操作ができないので今回は見送りブラウザさえあればScratchのプログラムは作れるけど最低でもタブレットを要求されるようで、iPhoneでは動かないみたい。iPadかなにかを買ったら再挑戦しようScratchさわってみた感想は、さすが「マサチューセッツ工科大学のメディアラボが作成した初心者の学習用プログラム言語」、非常に洗練されている特にリファレンスに頼ることもなく適当に作っても動くものができた。それがコチラ※iPhone/iPadでは動かないです。※音を出さないと意味不明かも。ペンとかクリックしてね。画面やコンソールに変数の内容を表示するための(初心者にとって)オマジナイのようなコードは不要。簡単に画面から非表示にすることもできるけど「変数を作ると画面に表示される」がディフォルトであるとか、初心者の気持ちわかってる感がステキ。デバッグも楽オブジェクト指向という考え方を身につけられるコードは背景画像(ステージと呼ぶ)かキャラクターなどの画像(スプライトと呼ぶ)にしか書けない。あるキャラクターを動かしたかったら、そのキャラクター画像のスプライトにコードを書かないといけない。自然とプログラムをステージやスプライトといったオブジェクトごとに書くことになる。「何を動かすのか」が解決済みなのでコード部分で指定する必要がないのでシンプルにもなる。ちなみにScratchがオブジェクト指向言語であるかどうかの論議があるらしい。怖いねメッセージ駆動を自然と覚えられるイベントとしての「メッセージを送る」「メッセージを受ける」が、それぞれ1つのブロックで表現されるので非常に使いやすい。他のオブジェクトに影響を与えたい場合はメッセージを使うことになるのでイベントを受け取るということが自然と理解できてくる。メッセージは複数のオブジェクトで並行して受け取れるので、並列プログラムも気が付いたら組んでいたみたいなことが起きる。スゴイ「もし~なら」の条件には条件判定のブロックしか入れられないブロックのピースに形があってブロックの形が違う組み合わせは入れることができない。視覚的にできないことが示されるので、初心者にありがちなシンタックスエラーの洗礼を避けることができる。しあわせブロック塊をクリックするだけで、そのブロック全体をテストできる実行と編集の区別がないのでブロックをクリックしたら作ってる途中でも一連の処理がバンバン走る。実行されるのはブロックの塊単位なので同じスプライト内でも他のブロック群は処理されない。ユニットテストやりやすい。ステキ作品をソースコードごと世界に向けて公開できるScratch公式トップページで、たくさんの作品がソースコードごと公開されていてる。「中身を見る」というボタンを押すだけでソースの編集画面になり改造することができる。改造した作品はリミックスとよばれて公開される。nakadaこの本を読むまで、レッドハットという会社についてあまり知らなかった。技術力あってコミュニティに貢献しているんだろうなとは思っていたしRHELは素晴らしい。会社内部そのものはよく知らなかった。企業向けのビジネスをしているからだろうか?勝手に、よくある普通の(本書の言葉を借りればピラミッド型の)組織っぽいイメージがなぜかあった。考えてみれば当たり前なのかもしれないが、オープンソースのコミュニティに属していて、その精神に共感している人が普通の組織で満足するはずがないよね。オープンソースソフトウェアの世界では、影響力を持ちたければ出世するのではなく、周囲からの信頼を得なくてはいけない。なければ誰も話しすら聞いてもらえない。信頼を得るためには、何をするにしても自分がすることを周りに説明して納得してもらう。