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

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

Herokuの無料枠がなくなる

内容について Public roadmap Focus on Mission Critical (無料枠の話も含む) Students and Nonprofit Program Open Source Support LGTMoonは? Heroku's Next Chapter という記事が公開されて、Heroku の無料枠がなくなると噂になっています。 blog.hero…

PHP Laravel + Carbon で曜日を日本語で表示する

isoFormat メソッドを使うのが便利 Carbon 単体で使う場合 Laravel + Carbon で使う場合 isoFormat メソッドを使うのが便利 Carbon には isoFormat というメソッドがあり、非常に便利です。 Carbon 単体で使う場合 Carbon 単体で使う場合は以下のように使い…

Laravel 9 からは Vite がフロントエンドのビルドの標準となる

新しい Laravel では Vite がフロントエンドのデフォルトに 6月にこのようなニュースが出ていました laravel-news.com Laravel の開発チームは、以前から Vite というツールの開発に力を入れていたようで、 Laravel 9 からは Vite が導入されるとのことです…

GitHub Actions + GitHub Container Registry (ghcr.io)で target ごとの Docker ビルド

はじめに GitHub Container Registry (ghcr.io)について ghcr.io マルチステージビルドで target を指定したい場合 はじめに 私はある個人プロダクトで、Docker を使って開発しており GitHub Actions で Docker イメージをビルド GitHub Container Registr…

AWS CDK と CDK for Terraform を使ってみた感想

AWS のサーバー構築 Terraform の欠点 AWS CDK の登場 CDK for Terraform の登場 AWS CDK を使ってみる AWS CDK コマンドラインツールのインストール AWS CDK で S3 を立ててみる コード デプロイ リソースの全削除 AWS CDK のメリット/デメリット CDK for T…

PHP Laravel の HTTP テストで HTML のテストを書くときの書き方

Laravel の HTTP Test Laravel には HTTP テストという機能がある https://readouble.com/laravel/8.x/ja/http-tests.html このテストはめちゃめちゃ便利で、実際にリクエストを送って、返ってくるレスポンスをシミュレートできる。 get('/'); $response->as…

Yjs の共同編集開始時の処理 writeSyncStep1 について

writeSyncStep1 とは より詳細な仕様 writeSyncStep1 とは Yjs の WebSocket サーバーを実装していると、 writeSyncStep1 という謎のステップがあることがわかる。 共同編集に新しいクライアント(共同編集者)が参加した時に、今共同編集中のドキュメント全…

Stripe のサブスクリプションの料金体系について

概要 Stripe の料金体系 標準の料金体系 パッケージ料金体系 段階的な料金体系 数量ベースの料金体系 概要 Stripe でサブスクリプションを実装する時に、様々な料金体系を実装したくなることがあります。 例えば、企業向けのサービスで「ユーザー1人あたり50…

1泊2日の雲取山登山:鴨沢→三峯神社【Webエンジニアの登山】

目的地: 雲取山山頂 登山日 ルート 地図 ルート選択と小屋について 事前準備 当日の気温と天気 道具 トラベルシーツ トレッキングポール 登山計画を立てる 行きの電車、バス(鴨沢) 帰りの電車、バス(三峯神社) 鴨沢〜三峯神社の登山計画 雲取山荘の予約 …

Stripe アカウントの登録とダッシュボードについて

Stripe とは Stripe のアカウント登録をする Stripe ダッシュボードについて 会社名(サービス名)の変更 テスト環境と本番環境 API Key などの開発情報の閲覧 商品情報の追加 Stripe とは Stripe とは、クレジットカード決済のための API などを提供してい…

Next.js で <table> を使おうとして Hydration failed because the initial UI does not match what was rendered on the server.

Next.js でたまにこういうエラーが出てくる。 エラーが出てくるけど、dom は正常に描画されている。 どうやら、HTML タグの使い方がおかしい場合にこのエラーが出てくる事があるようだ。 私の場合は、<table> タグを使おうとしてこのエラーが出たのだが、<table> タグを使</table></table>…

Next.js で、いい感じに head, title, ogp などを配置する【React.js】

Next.js の Head コンポーネントを使う タイトルとかをいい感じに使い回す Next.js の Head コンポーネントを使う Next.js では、 Head コンポーネントを使うことで、 title などの <head> タグ内の属性を設定できます。 import type { NextPage } from 'next'; im</head>…

AWS ECS + Fargate の ECS Exec で An error occurred (TargetNotConnectedException)

ECS Exec で An error occurred (TargetNotConnectedException) Amazon ECS Exec Checker でトラブルシューティング 実行例 各項目の説明 Prerequisites for check-ecs-exec.sh Prerequisites for the AWS CLI to use ECS Exec Cluster Configuration Can I …

Stripe の Checkout Session と Webhook で届いた Subscription の紐付け

Stripe Checkout と Webhook Checkout session と Webhook の紐付け Subscription の metadata を使う customer.subscription.created 以外の Webhook を使うのは? success_url に到達した瞬間にサービス提供するのは? Stripe Checkout と Webhook Stripe …

個人で VPS で Kubernetes クラスタを組むなら kubeadm (vs Kubespray)

はじめに Kubernetes 概要 kubectl コマンドについて Kubernetes クラスタの構築 indigo VPS を利用 kubeadm vs kubespray Kubernetes クラスタのマスターノードとワーカーノード kubeadm を使った Kubernetes クラスタ構築の手順 全てのノードで実行 マスタ…

やよいの青色申告オンラインで確定申告をした【2021年分】

前提条件 確定申告処理の開始(書類の作成) Step 1 減価償却費の計算 Step 2 青色申告決算書の作成 基本情報の入力 売上と仕入の確認 光熱費・通信費の処理(経費の家事按分) 地代家賃の処理 従業員への給与 消費税 最終確認 決算書のダウンロード Step 3 …

aws/aws-sdk-php で Your requirements could not be resolved to an installable set of packages.

composer ライブラリの依存エラー エラーの見かた 解決方法 詳細な解決方法 composer update guzzlehttp/psr7 guzzlehttp/promises 最後に composer ライブラリの依存エラー composer で aws/aws-sdk-php のライブラリをインストールしたところ、以下のよう…

Yjs の「Awareness & Presence」ドキュメントを読む

docs.yjs.dev ※ Yjs は、ドキュメント共同編集用のライブラリです。 ※ Awareness 、あるいは、 Awareness 情報というのは、ドキュメント共同編集の際の、各ユーザーのカーソルの位置など、ドキュメントの更新以外の情報のことを指します。 Awareness & Prese…

Yjs の Awareness について

Awareness Awareness CRDT Awareness CRDT API Awareness Protocol Yjs の Awareness の公式ドキュメントはこちら docs.yjs.dev Awareness Awareness は、オプショナルな機能です。 Yjs を使うにあたり、実装必須ではありません。 Awareness は、 y-protocol…

y-protocols/sync 内のメソッドが何をしているのか

y-protocols のドキュメントが少ない Yjs の WebSocket のサーバーサイドを自前実装しようとすると、y-protocols について理解しなければなりません。 github.com Yjs 公式には y-websocket というリポジトリがあり、この中にはサーバーサイドの実装も入って…

Misoca (PC版)を使って請求書を発行する

やよいの青色申告と Misoca 料金 請求書の発行方法 まとめ やよいの青色申告と Misoca Misoca とは、弥生(やよい)が出している会計ソフトです。やよいの青色申告オンラインを私も利用していますが、そこと同じ会社が出している製品になります。 弥生のアカ…

yjs/y-websocket 共同編集エディタ用ライブラリ YJS の WebSocket 周りの実装

y-websocket の README の翻訳です。 github.com y-websocket とは Quick Start y-websocket をインストールします。 WebSocket サーバーを立ち上げます クライアントの実装例 API (Websocket Provider の API) Websocket サーバー データを永続化したい場…

GMOコインから ByBit に Symbol XYM を送る

ByBit 側のアドレスの確認 GMOから送金手続き ByBit 側のアドレスの確認 ByBit にログインし、右上のメニュー「資産」から「現物アカウント」を選択する 「入金する」を選択 XYM を選択。ウォレットの情報が出てくる。「XYMウォレットアドレス」と「XYM 入金…

2/16にスムーズに確定申告をするために確認したこと

2021年分の確定申告の手順の記事書きました www.utakata.work 確定申告ができるようになるのは 2月16日からだが、1月中には、クレカの請求なども確定するので、いつでも確定申告できる状態にはなる。 確認事項 やよいの確定申告を使っている場合、「簡単取引…

Django REST framework シリアライザの種類

ModelSerializer どのフィールドを含めるか ネストされたフィールドのシリアライズ フィールドの形式を指定する Readonly なフィールド HyperlinledModelSerializer ListSerializer BaseSerializer ModelSerializer JSON, XML など ↔︎ Django の model の変…

元素騎士 Online AMA (Ask Me Anything) on Telegram【2022年1月18日】

2022年1月18日、元素騎士 Online の Telegram にて、AMA (Ask Me Anything)が開催されました。 1月19日から、元素騎士 Online の MV トークンが上場する Bybit。その Bybit の Bill Xing さんが、ユーザーのあらゆる質問に答えました。 (日本語訳について…

'OrderingFilter' object has no attribute 'filter_queryset' エラーの対処法

view で import している OrderingFilter のクラスが間違っている ダメな例 from django_filters.rest_framework import OrderingFilter from django_filters.filters import OrderingFilter 正解はこっち from rest_framework.filters import OrderingFilte…

Polygon (MATIC) での NFT 確認方法 Metamask 編【元素騎士 Online】

元素騎士から送られてきたNFT はじめに Polygon のネットワーク追加について NFTのみかた 届いている NFT の情報を確認する PC での NFT の確認方法 NFT をスマホの Metamask で確認する まとめ はじめに 先日、元素騎士のNFT配布キャンペーンがありました。…

Django REST framework Serializers

www.django-rest-framework.org Serializers Declaring Serializers(シリアライザを定義する) Serializing object(シリアライズする) Deserializing objects(デシリアライズする) Serializers Serializers は、Django の QuerySet や、モデルのインス…

Bybit で本人確認(Lv.1 基本認証)を行う

必要なもの 手順 必要なもの 顔写真付きの身分証明書 パスポート、運転免許証、マイナンバーカード カメラがついているスマホかPC このブログではPCで行います。PCがあるならPCがおすすめ。 Bybitアカウントは取っている前提です。まだ取っていない人は、ア…