Vue + AWS Amplify で S3へ画像アップロードとGraphQLのsubscriptionで結果を受け取る
先日の続き。
Amplifyを使うと認証だけでなく、GraphQLでDynamoDBと接続できたり、S3へのファイルアップロード機能をわりと簡単に実装することができる。
ということでコードの説明とかAmplify CLIの説明とかせずに結果だけ。
たまにGraphQLのsubscriptionの結果が重複して返ってくることがあるのだけど原因は不明。
コードはここです。
Queenとぼく
「ボヘミアン・ラプソディ」を観ていろいろな人があれやこれや語ってるのを見て、自分も何か言っておくかという気持ちになっていたのだけど、熱狂もやや治まってきたし面倒なので箇条書きで書く。
-
いつ知ったかは覚えてないけど、高校生の頃にはQueenを認識していた
-
友人がベストアルバムのBoxセットを貸してくれた
-
-
-
ちなみに今も借りたまま
-
弟がたまに聴いてるっぽい
-
-
フレディがゲイだということには大して驚かなかった
-
-
むしろ恋人が居てさらに異性の生涯の理解者も居て幸せだったんだなーくらいに思っていた
-
-
曲はめちゃくちゃカッコいいな
-
ミュージックビデオはクソダサいな
-
Radio Ga Gaで観客が曲に合わせて手拍子するの、最近もどこかで見たなと思ったけど、Trainspotting2だ
-
-
Jewelsのときは「I Was Born To Love You」がやたら流れていた記憶
-
だからJewelsが出たばかりなのに、どうして"むかしQueenってバンドがいてね?"みたいな文脈でいろいろ語られてるのって思ってた、が
-
-
調べたら「Jewels」発売されたの2004年だった...まじか。14年も前なら仕方ないね...
-
-
-
フレディの命日は僕の8歳の誕生日
AWS Amplifyでユーザー認証とGraphQLの検証
『oasis:supersonic』を観た
『oasis:supersonic』を観た。オアシスのドキュメンタリー映画なんだけど。
こういうロックンロール的成功譚を見るのは気が滅入る。
自分にもああ成れる可能性があったことを思い出させられるのよな、こういうドキュメンタリーって。
真剣に音楽をやってた奴の大半は格好悪かったし、自分ら程度の実力で食ってけるかよと思ってたし、「音楽に救われた」とか言うやつを指さして笑ってたわ。
これを観ると未だにロックンロール的成功が格好良く見えてくる。
その一方で気が滅入るのは、目についたものにツバを吐きかけネタにするだけで大した目標もなく野望もなく人生を賭けるものもなかった、だけどめちゃくちゃ楽しかったあの頃を否定するみたいなんだよな。
ついさっき35歳になった。
oasisを知ってから15年以上経って、結局ロックンロール的成功も得られなかったし、卒業して就職して結婚して毎日一緒だった友人達とはバラバラになってしまった。
体重は15キロ増えたし髪のボリュームもなくなってきた。
だけどまだ諦めてないぞ!
ちなみにoasisはAcquiesceが一番好き。兄弟が一緒に歌ってる曲にハズレない。
ラーメンの煮玉子をすぐ食べる友人
大学のころ、ラーメンに載っている煮玉子を出された早々に食べる友人が居て、
理由を聞いたら「卵がまだ冷たいうちに食べるほうが美味しい」とのことだった。
と、今日ラーメンを食べながら思い出したので試してみたんだけど、確かに。わりといける。
(僕は黄身が崩れてスープに溶け出すのが嫌なので2口くらいですぐ食べてしまう派)
Nuxt2.0でショッピングカートを作る
Nuxt2.0がリリースされたので試してみた。簡単なショッピングカート。
Nuxtは2.0からはCLIツールが提供されている。
create-nuxt-appをインストールしてコマンドを実行すると以下のように色々聞かれる。
$ create-nuxt-app Nuxt2ShoppingCart
> Generating Nuxt.js project in /Users/yuto-ogi/Work/nuxt/Nuxt2ShoppingCart
? Project name Nuxt2ShoppingCart
? Project description My praiseworthy Nuxt.js project
? Use a custom server framework express
? Use a custom UI framework bulma
? Choose rendering mode Universal
? Use axios module yes
? Use eslint no
? Use prettier no
? Author name yutoogi
? Choose a package manager yarn
Initialized empty Git repository in /Users/yuto-ogi/Work/nuxt/Nuxt2ShoppingCart/.git/
yarn install v0.21.3
info No lockfile found.
[1/4] 🔍 Resolving packages...
~
success Saved lockfile.
✨ Done in 126.85s.
To get started:
cd Nuxt2ShoppingCart
yarn run dev
To build & start for production:
cd Nuxt2ShoppingCart
yarn run build
yarn start
で、3~4時間あれこれやってできあがったのがこれ。
カートの情報はLocalStorageにも保存しており、ページリロード後に復元されるようにしている。
「ADD」ボタンを押したときとかカートをクリアしたときの反応が分かりづらかったり、font-awesomeが読み込まれなかったりするけどまぁいいか。
業務引き継ぎなど
2年くらい関わっていた一人プロジェクトの引き継ぎをすることになり、資料を作ったり口頭で説明をしたりなどしている。
なにもかもが僕の頭の中にしか無く、それが2年分もあるのだから全てを引き継ぐのはまぁ、無理だろうな。
引き継ぎ用のドキュメントを作るのも一苦労。
こういうときに備えてしっかり残しておいた手順書やメモ書きが陳腐化していて自分すら混乱させる。
渡したい情報には現在・過去・未来とそれぞれの姿があり、現在を伝えようとするとそれに至る経緯について説明したくなるし、
こう直したほうが良いとか、こうしたかったという説明もしたくなってしまう。
オーマイどうしてこんなことに。
一人プロジェクト体制なのが悪い、人を追加しないのが悪い、人がいない?人が来たがらない環境だからいけないのだ、
リモートワークを許可して働きやすい環境を! 最新のフレームワークを導入しろ!…etc
とはいえ一人プロジェクトで気が楽だったのも事実であり、
あれやこれやの負債も全て自分が作ったものであれば、しっかり処理してやらねばなぁ。