Google Domains のドメインのサブドメインを Amazon Route53 で利用する #terraform

Route53 でパプリックホストゾーンを作成 terraform だとこんな感じ。 resource "aws_route53_zone" "sample" { name = "sample.mydomain.dev" } パブリックホストゾーンを作成すると、NS レコードと SOA レコードは自動作成される。 Google Domains で NS …

Fixture Factories で Faker が日本語にならなかった #CakePHP

問題 CakePHP に Fixture Factories を導入しようとしていた。 Faker が利用できるので、日本語化しようと思ったがどうもうまくいかない。 原因と解決 defaultLocale がハイフン区切りの ja-JP になっていた。 アンダースコア区切りの ja_JP を指定すること…

Android 開発に入門してみた #Android

なんかやったことないことやってみたいな〜、と思って Android 開発を少しだけやってみた。 特に Android 自体に強いこだわりがあったわけじゃないんだけれど、 Java や Kotlin を久しぶりに触りたいなって気持ちがあった。 どうやって入門したか 主に2冊の…

僕らはいつもスプリントレビューをしていた

久々の出社、とある機能の実装が一段落し、Dev環境にデプロイした。 隣の席のプロダクトマネージャーにふと「見ます〜?」と言ったら「見る見る!」となった。 そしたら隣の島にいた別の人が「私も見たい!」となって覗きに来る。 なので実機(スマホアプリ…

Android で「Requested internal only, but not enough space」というエラー #Android

Android Studio のエミュレータでアプリを起動しようとしたらエラーが発生してしまった。 java.io.IOException: Requested internal only, but not enough space 単純にエミューレータのデバイスで空きサイズが無いということらしい。 ストレージ容量を増や…

TravisCI で PHP7 のビルドがエラーになる #TravisCI #php

(2022/03/17 追記) フォーラムで話題になっており、サポートからも連携されたようなので、そのうち直りそう。 travis-ci.community 問題 php7.4 で TravisCI が突然コケるようになってしまった。 php: error while loading shared libraries: libargon2.so.1…

AWS SDK for PHP を Mock する #php

AWS SDK を使って Amazon SNS 使用箇所のテストを書こうとしていたところ、 PHPUnit の Mock を無邪気に使ったら怒られてしまった。 phpunit Trying to configure method "publish" which cannot be configured because it does not exist, has not been spe…

Goland でファイル名が main じゃないとブレークポイントが貼れない? #Goland #golang

Go

問題 docker-compose を使って Goland でリモートデバッグを試していた。 エントリポイント (main関数) のあるファイルだけブレークポイントを貼れない。 Cannot find debugger path for /path/to/server.go みたいなメッセージが出て、ブレークポイントが無…

clasp の push で package.json が求められる #gas

gas

GAS の実装や管理には clasp が便利なんですが、いざ clasp push で反映しようとしたらエラーが出て怒られた。 ENOENT: no such file or directory, open 'package.json' 複数の App Script をまとめて管理するために、下記のようなディレクトリ構造にしてい…

Go の Web アプリケーションを Heroku にデプロイしたメモ #golang #heroku

概要 基本的な流れは公式に従ってやってみれば問題ないのだろうけど、自分で作ったものをデプロイしようとしたらちょこちょこ詰まったので備忘録。 https://devcenter.heroku.com/articles/getting-started-with-go https://github.com/heroku/go-getting-st…

ssh-add コマンドの -K オプションが deprecated になってた

無邪気に ssh-add -K したら、 WARNING が出てることに気づいた。 WARNING: The -K and -A flags are deprecated and have been replaced by the --apple-use-keychain and --apple-load-keychain flags, respectively. To suppress this warning, set the e…

「先延ばしと挫折をなくす計画術 無敵の法則」を読んだ

先延ばしと挫折をなくす計画術 無敵の法則作者:野呂 エイシロウアスコムAmazon Twitter のタイムラインで言及されてて少し気になり、 Kindle でセールだったのもあり読んでみた。 著者のドヤと煽りが満載な雰囲気はあまり好みではないのだが、この類の本を何…

CakePHP で Table の Validator を差し替える #cakephp

以前 Validation をカスタムしやすくする方法を書いた。 su-kun1899.hatenablog.com Validation は bootstrap.php で差し替えればいいんだけれど、じゃあ自前で呼ばない Table の Validator を差し替えるにはどうしたらいいのか。 Table での Validation Tab…

PHP7 で CakePHP4 の FrozenDate を使うと、月差分が正しく判定されない場合がある #php #cakephp

概要 PHP8.1 未満の環境における CakePHP の FrozenDate は、 UTC でない Timezone を使った場合に、日付差分が正しく取れないケースがある。 FrozenTime を使うようにするか、 PHP8.1 以降にバージョンを上げると解決する。 ※タイトルでは PHP7 としている…

CakePHP の Command のテストで Mock を使うのは、 DI を利用するのがよさそう #cakephp

概要 Mock はできるだけ使いたくない派なんだけれど、外部API利用時なんかはどうしても必要になる時がある。 Controller の場合はやりようがあるが、 Command はちょっと迷った。 CakePHP の Command で使うようなときに Mock をするには DI を使うのがよさ…

CakePHP4 で、 Controller 単位で認証をスキップする #cakephp

概要 CakePHP3 の AuthComponent は非推奨になり、 CakePHP4 では AuthenticationComponent を使うことになる。 認証スキップのやり方が変わったのでメモしておく。 CakePHP3 の場合 \Cake\Controller\Component\AuthComponent::allow を使えば良い。 Contro…

PHP でメモリが足りなくなったら #php

PHP

メモリが足りなくて死んじゃう ↓みたいなメッセージが出て死んじゃうことがある。 PHP Fatal error: Out of memory (allocated 39845888) (tried to allocate 512000 bytes)... Fatal error : Allowed memory size of 2147483648 bytes exhausted (tried to …

チーム横断での定例的なやつについて思うこと

なぜ定例が生まれるのか 組織が一定の規模以上になってチームが分割されてきたりすると、どうしても横の繋がりが弱くなってくる傾向がある。 リモートワークしてたりすると、よりその力学は強くなることが多い。 そうすると「定期的に連携しましょう、コミュ…

CakePHP3 から CakePHP4 に移行したら Middleware が動かなくなった #cakephp

現象 CakePHP3 から CakePHP4 に移行した際に、CakePHP がデフォルトで提供しているミドルウェアを拡張して利用していた Middleware が動かなくなった。(正確には意図しない挙動になった) 原因 CakePHP3 ではミドルウェアは __invoke($request, $response,…

「リモートワークの達人」を読んだ

リモートワークの達人 (ハヤカワ文庫NF)作者:ジェイソン フリード,デイヴィッド ハイネマイヤー ハンソン早川書房Amazon 「リモートワークの達人」を読んだ。 以前「小さなチーム、大きな仕事」を読んでいいなぁ〜と思っていたんだけど、同じくベースキャン…

「プロダクトマネジメント」を読んだ

プロダクトマネジメント ―ビルドトラップを避け顧客に価値を届ける作者:Melissa Perriオライリー・ジャパンAmazon プロダクトマネジメントを読んだ。*1 あんまり優先的に読む気もなかったんだけども、同僚たちの間で流行っていたおり、この本を前提に話され…

Slack API を使って、特定のチャンネルのメッセージと発言ユーザーを取得する #slack

概要 Slack の発言を分析したいみたいな話が職場であって、サクッと取れないかな〜と雑にシェルスクリプトで試してみた記録。 便利なツールとか既にありそうだけどね。。 Slack API を使って 特定のチャンネルから一定期間の発言を取得し 「投稿日時」 「そ…

Next.js で Material-UI と styled-components を使う #nextjs

概要 Next.js で Material-UI を利用しつつ、 styled-components でカスタマイズできる環境を構築した記録。 nextjs.org material-ui.com styled-components.com Next.js でプロジェクトを作る $ npx create-next-app Material-UI を install する $ npm ins…

CakePHP でカスタム Validation を追加しやすくする #cakephp

概要 CakePHP には独自に定義したカスタム Validation を使う方法がいくつかある。 Default のバリデーションプロバイダーを差し替えることで、アプリケーション全体で使うようなルールを追加しやすくする。 例えば「会員IDは 0 埋めを含む8桁の数字」のよう…

CakePHP で uploadedFile の Validation をテストする #cakephp #php

概要 CakePHP にはアップロードファイル用の validator が用意されていて便利。 ただテストをするときにちょっとめんどくさい点が2つある。 1つ目はファイルをアップロードするリクエストを作ること。 リクエストするデータとは別に $_FILES にも情報を突…

CakePHP4 と php8 の Docker コンテナを作った #cakephp #php

概要 公式 Docker Image の php:8.0-apache をベースにして、CakePHP のコンテナを作った。 DockerHub & GitHub に置いてある。 hub.docker.com github.com なんで作ったか ここ最近は仕事で触る中心が CakePHP になっているので、手元で色々試せる環境をサ…

KGDC Tech Conference で LT してきました #KGDC

speakerdeck.com 「息を吸うようにエラーを監視する」というタイトルで発表してきました。 イベントについて KDDI グループ会社それぞれの技術者が集まって主催するイベントです。 グループ会社とはいえやってることはそれぞれ違うので、アドテクの話だった…

「More Effective Agile」を読んだ

More Effective Agile “ソフトウェアリーダー”になるための28の道標作者:Steve McConnell発売日: 2020/06/11メディア: Kindle版 「CODE COMPLETE」のスティーブ・マコネルがアジャイルについて書いたということで読んでみた。 アジャイル関連の書籍はちょこ…

PHPStorm で PHP_CodeSniffer をかける #phpstorm

はじめに 開発環境は Docker を利用しており、最初は Docker 上の php を利用して連携しようと思っていた。 実際に連携自体はできるのだが、ホストマシンのスペックの問題なのか、避けられない遅延なのか、Inspection が走るたびに指摘事項が一瞬消えてまた…

「THE MODEL」を読んだ

THE MODEL(MarkeZine BOOKS) マーケティング・インサイドセールス・営業・カスタマーサクセスの共業プロセス作者:福田 康隆発売日: 2019/01/30メディア: Kindle版 以前勤めていた職場の同僚に勧められて、てっきりエンジニアリングの本かと思ったら、セー…