猫でもわかるWebプログラミングと副業

本業エンジニアリングマネージャー。副業Webエンジニア。Web開発のヒントや、副業、日常生活のことを書きます。

PHP + Laravel on Docker で MySQL に接続しようとして could not find driver at ...

環境 エラー内容 調査 環境 Docker の php:7.4.16-apache を利用 Laravel を利用 エラー内容 [2021-08-24 10:43:16] production.ERROR: could not find driver at /app/laravel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:671) 調査 …

sbt のバージョンを 1.5.5 にしたら java.lang.NoSuchMethodError: scala.tools.nsc.Settings.bootclasspath()Lscala/tools/nsc/settings/AbsSettings$AbsSetting;

Scala + Play Framework のプロジェクトで、 sbt のバージョンを 1.3.9 から 1.5.5 にしたところ、以下のエラーが発生しました。 #9 87.82 [error] java.lang.NoSuchMethodError: scala.tools.nsc.Settings.bootclasspath()Lscala/tools/nsc/settings/AbsSet…

Scala sbt のバージョンを上げたら java.lang.RuntimeException: insecure protocol is unsupported

執筆時の sbt のバージョンが 1.5.5 だったので、 LGTMoon (https://lgtmoon.herokuapp.com/)で使っている sbt のバージョンを 1.3.9 から 1.5.5 に上げる作業を行いました。 sbt を 1.3.9 から、1.4.9 (1.4系の最新)に上げた際に以下のエラーが発生しま…

【PHP】autoload された class が定義されたファイルを確認する

結論 どういう時に使うの? Carbon と Chronos の例 Chronos と Laravel 結論 PHP の ReflectionClass を使えば可能です。 getFileName()); どういう時に使うの? PHP には autoload という機能があり、皆さん普通はこの autoload を利用しているかと思いま…

エライザ効果(ELIZA効果)

「エライザ効果(ELIZA効果)」とは、意識的にはわかっていても、無意識的にコンピュータが人間と似た動機があるように感じてしまう現象のことです。 コンピュータは、プログラムに書かれたことを実行しているだけで、コンピュータ自身は「動機」を持ってい…

ショップディズニー1周年記念の 30% オフクーポンをプログラムから探す

作戦1: 画像のURLを推測する 作戦2: ページをクロールする 結果 ショップディズニーの、ネット通販サイトが1周年記念でキャンペーンをしていました。 その中で、「ページのどこかにクーポンが隠れている」というのがありました。 ショップディズニーのサイト…

Kubernetes チュートリアルで「ローリングアップデート」を学ぶ

はじめに ローリングアップデートとは 実際にやってみる アップデートの完了 ロールバック はじめに 前回、アプリケーションのスケールアップ/ダウンをやりましたが、その知識を使って、アプリケーションの「ローリングアップデート」をやります。 kubernete…

Kubernetes チュートリアルで「アプリケーションのスケーリング」を学ぶ

はじめに スケーリング 実際にスケールアップさせてみる ロードバランシングの確認 スケールダウン はじめに 前回、 Hello Minikube チュートリアルをやりました。 www.utakata.work 今回はその次のチュートリアルである「Kubernetes の基本を学ぶ」をやりま…

Hello Minikube チュートリアルで Kubernetes を学ぶ

Hello Minikube とは Minikube とは Mac に Minikube と kubectl をインストール Minikube の起動 Kubernetes のノードと kubectl Pod と Deployment Deployment の作成 Service を作成してコンテナにアクセス アドオンについて Kubernetes クラスタ上のリソ…

When authenticating requests to the Twitter API v2 endpoints, you must use keys and tokens from a Twitter developer App that is attached to a Project.

Twitter の v2 API を oauth 1.0a 認証で叩こうと思ったら、以下のエラーが返ってきました。 {"client_id":"21075140","detail":"When authenticating requests to the Twitter API v2 endpoints, you must use keys and tokens from a Twitter developer Ap…

Python で Hello World して学ぶ Docker の使い方

はじめに 前提知識 Docker 上で Python のコマンドを実行してみる Python の Docker イメージを探す Docker イメージのダウンロードと起動 Python を書いて Docker 上で動かす Python のプログラムを書く Dockerfile を書く Docker イメージのビルド Docker …

PHPでボトムアップDDD: 値オブジェクト / ValueObject

値オブジェクトを使わず、プリミティブな型を使うとどうなるか 各IDの型が分かりづらい delete メソッドの引数の型チェックが弱い そこで値オブジェクト さいごに 値オブジェクトを使わず、プリミティブな型を使うとどうなるか ブログシステムを考えましょう…

現場のエンジニアにとっては理解しやすい本「ボトムアップのDDD」おすすめです

書籍『ドメイン駆動設計入門 ボトムアップでわかる!ドメイン駆動設計の基本』 なぜ今までのDDD本ばわかりづらかったのか ボトムアップになるとどうなるのか ここ数年で一番おすすめの本 書籍『ドメイン駆動設計入門 ボトムアップでわかる!ドメイン駆動設計…

本『最軽量のマネジメント』、途中経過も公開、給与交渉も公開

マネージャーになった マネージャーのやることを減らしていく本 3行で説明すると 個人的に参考になった・気になった部分 「ザツダン」ですべきこと 徹底的な公開、特に「途中経過」の公開 社員が160人の時の話 その他書いてあったこと 書いてなかったけど気…