ひげぶろぐ

開発とか組織とかの話

CloudFormation で RDS の ARN を動的に指定したい

Serverless Framework で Aurora Serverless の arn を指定したかったが、若干特殊だったのでメモ。 結論 (執筆時点で)CloudFormationでは RDS( AWS::RDS::DBCluster )のARNを動的に取得する手段を提供しておらず、 こちら をベースに手動で指定するのが…

クリエイティブなチームの在り方 - プロダクトとチームの人間味 -

自分の頭の中の整理がてら、クリエイティブ組織(特にtoCアプリケーション開発組織)の在り方について、最近考えていることを書き残しておこうと思います。 主に、デザインシンキング、アジャイル開発、心理的安全性というものが何故大事なのか、現在どうい…

LaravelのEloquent Modelのマジックメソッドが辛い

前置き Laravelで中規模程度のサービスを運営してるんですが、スキーマ変更のタイミングでマジックメソッド辛い問題にぶち当たりました。同じ気持ちの人を見つけて安心したかったけど、これくらいしか見つからなかったので自分で書き残しておこうと思いまし…

Amazon Elasticsearch Service でインデクシングされなくなった時の調査・解決ログ

AWS Amplify の @searchable を使って Elasticsearch による検索を実現していたのですが、ある時から突然、新しくDynamoDBに登録したデータが検索に引っかからなくなりました。 そんな時のメモ。 状況 検索機能を作って最初のうちは普通に検索が出来ていた …

AWS AmplifyプロジェクトにおけるCustom Resolverを用いた細かな権限管理

この記事は? 経緯 前提知識 カスタムリゾルバーとは AWS Amplifyにおけるカスタムリゾルバーの追加方法 カスタムリゾルバを試す 1. resolversフォルダの確認 2. resolvers フォルダ以下にVTLを置く 3. amplify push を実行 4. 実行 終わりに この記事は? A…

AWS AmplifyでElasticSearchを使う

公式ドキュメントで言うとこの辺の話。 https://aws-amplify.github.io/docs/cli/graphql#searchable めちゃくちゃ簡単に出来る。 今回は日本語名と英語名を持つUserテーブル@DynamoDB に対し、「田中」でも「tanaka」でも検索出来るOR検索を作ってみる。 sc…

amplify push時の Cannot update GSI's properties other than Provisioned Throughput エラー

GraphQLのスキーマを書き換えて amplify push した時のエラー Cannot update GSI's properties other than Provisioned Throughput. You can create a new GSI with a different name. @connection のカラム名を変えたら出た。 Reason: Resource update canc…

AWS AmplifyでAPI(AppSync, GraphQL, Dynamo DB)を構築してReactで参照/更新する

前回の記事はこれ。 macha-dev.hatenablog.com 今回は以下のリファレンスに従って amplify add api を試す。 https://aws-amplify.github.io/docs/cli/graphql Schema ファイルの作成 src/graphql/schema/schema.gql type Blog @model { id: ID! name: Strin…

AWS Amplify x React.js で ログイン機能(Cognito)追加

Amplify の authについて調べてたら、amplify add コマンドを使用しないでAWS Consoleで手作業でCognitoの設定をしている記事が多かった。 なんか違う感があったので amplify add auth 使うとどうやって作れるかというのを雑にメモ。 Reactアプリ作成 $ npm …

Nuxt.jsプロジェクトでデバイスに応じて要素を出し分ける

画像サイズを、mobileなら64x64, それ以外なら128x128とかにしたかった。 こいつが便利だった。 nuxt-device-detect - npm setupに書いてあるとおりですが、 yarn add nuxt-device-detect してあげて nuxt.config.js の modules に nuxt-device-detect を追…

Nuxt.jsプロジェクトのプログラム上でURLを生成する

コード内で特定のルートへの絶対パスを取得するには以下のように書けば良い。 let path = this.$router.resolve({ name: 'page_name', params: { id: 1} }).href var fullUrl = window.location.origin + '/' + path が、Nuxt.jsで生成したプロジェクトの pa…

Vue.jsの v-bindで Unexpected 'v-bind' エラー

v-bind でこんな感じで書いてたら <input v-model="title" v-bind:class="{ 'is-danger': titleError}" class="input" type="text" placeholder="記事タイトル" > エラーが出た 20:15 error Unexpected 'v-bind' before ':' vue/v-bind-style ✖ 1 problem (1 error, 0 warnings) 1 error and 0 warnings potentially fixable with the `--fix` optio…

Cloud Functions for Firebase から Cloud SQL上の MySQL を参照する

Cloud Function for Firebase から Cloud SQL上のMySQLを叩いてみた

読書ログ_201611

なぜ、我々はマネジメントの道を歩むのか なぜ、我々はマネジメントの道を歩むのか 作者: 田坂広志 出版社/メーカー: PHP研究所 発売日: 2013/05/24 メディア: Kindle版 この商品を含むブログを見る マネージャーになった時に先輩からの薦めで読んだ。 結構…