Vue + Amplify + AppSync で簡単なチャットを作る
前にも似たようなものを作った気がするけど AWS Summit 2019 で感化されたので改めて作ってみた。
作り方
vue cli でアプリケーションを作った後、AWS Amplify CLI でAPIを組み込み。
データベースは DynamoDB で GraphQL でデータを取得している。
GraphQL へのスキーマは最初 Amplify のCLI で定義して編集は AppSync のコンソールでいじる感じ。
GrapyQLのサブスクリプションを使えばデータベースへの変更を取得できるので、それで変更を反映している。
最後に Vue で見た目整えて終わり。
課題
作ってから気づいたけどソート順は保証されないっぽいので Vue側でソートしてやる必要がある? それか GraphQL でできるんだろうか。
Helixキーボード を作った
-
CherryMX or ロープロファイル
-
4列 or 5列
-
バックライトLED or UnderGlow LED
キーボード沼に片足浸かっている
Helix
Let’s Split
mint60を組み立てた
GW中の課題として自作キーボードを作った。
いわゆる "この文章はそのキーボードで書いています" というやつです。
はんだ付けなんて全くやったことが無かったので、はんだ付け練習キットを買って練習をした上で挑戦。
連休入ってから作業初めて三日間、10時間もかからなかったと思う。
組み立て方とかハマりポイントは「mint60 組み立て」でぐぐるとたくさん出てくるので感想だけ書く。
(キーキャップはまだ全部付けていないです)
キースイッチ
オーソドックスな赤軸にした。
キーの押し心地とかにあまり気にしたことがなかったし、
ただ最近のMacのキーの押し心地は好きじゃないけど、硬すぎるのも嫌だなぁと。
他のキースイッチも一個ずつ同梱してくれているのは嬉しい。
ProMicroへの書き込み
めんどうくさい。。
キーマップ設定いじって書き込んで、ってやるの辛い。
あと、ProMicroの基部はお作法通りエポキシ系接着剤で固定したんだけどやっぱり抜き差しするときは怖い。
レイヤー機能とか色々試してみたいんだけど、この面倒くささのおかげで挫折しそう。
猫
うちには猫が二匹いるんだけど、ちょくちょく邪魔をしにきて大変だった。
ハンダ付けのとき以外は膝の上に乗せて作業したりしていたので、ケースに毛が付いたりしてこれはもう仕方ないかなという感じ。
不具合とか
ハンダ付け忘れが一箇所あった以外は動作はしている。
ただ、キーを押したときの挙動が数箇所おかしい(しかもたまにしか発生しない)ことがある。
- Enterキーを数回押すと長押し状態になって延々と入力されてしまう
- 右の最下段のキーを押すと、例えばmキーを押すと"ujm" といった感じで縦に並んでいるキーが同時に入力されたりする
ProMicroへの書き込み直後に変な挙動になることが多い印象。
あと、スタビライザーの音がウルサイという意見があるようだけど自分は気にならないかな。確かに他のキーと若干音が違うので気になる人はいるだろうなぁという感じ。
今後
自分にとっては同じ使い心地のキーボードがいつでもどこでもで使えることが大事なので、同じmint60を買って会社用を作りたいかなーと。
ただ遊舎工房見てると他にもカッコいいキーボードが沢山あるので心動いてしまう。。。これが沼か。
遠鉄電車の次の発車時間を教えてくれるAlexaスキルを公開した
開発には10数時間くらいしかかかってなくて、機能もほとんど無いのだけど、ちゃんと公開できた。
スキル名について
Alexaスキルと対話すること
AWS CodePipeline で Alexaスキルをデプロイ
良さげなチュートリアルを見つけた。
チュートリアル: Amazon Alexa Skill をデプロイするパイプラインを作成する - CodePipeline
ちょうど本業の方でもCodePipelineを触ったので良い機会だと思って作りかけのAlexaスキルを自動デプロイする設定にしてみた。
基本的にこのチュートリアルの通りで、テストやビルドは設定せずにデプロイのみ。ソースプロバイダはCodeCommitではなくGithubに。
指定したGithubのリポジトリへプッシュするとそれを検知して CodePipeline が実行されてスキルがデプロイされる。
便利。
今まではコードを直して ask deploy してコンソールから動作確認してたのだけど、
この辺もおいおい自動化していきたい所存。