yasudacloudの日記

札幌に住むソフトウェアエンジニア

iPadOS16 写真から対象物を抜き出し

iPadOS16、続いて「写真から特定対象物抜き出し」という機能について。 www.apple.com 見る方が早いのでgifをぺたり まず、右の写真アプリで表示している写真からバイクのところを指で長押しします。約1.5秒くらい経つと画像がキラッと光るのでそのまま左の…

iPadOS16 パブリックβを試した

昨日、AppleからiOS16、iPadOS16、macOS Ventura...等の次期リリースバージョンのパブリックβ版の案内が来たので早速試しました。 ずっと気になっていたステージマネージャと外部ディスプレイ(デュアルディスプレイ)について。 iPadOS 16のインストール こ…

PHPのソースコード納品を考える

これまで携わったプロジェクトでソースコードを納品することはあまりなかったのですが、いざ求められるとどうするかなーとふと思ったので真面目に考えてみました。 前提 題材にちょうどよさそうなPHP(Web)で考えます。 納品先の対象はWebシステム開発を行…

Terraform)ローカルビルドしたコンテナをECRに

Lambdaのカスタムランタイム(package_type = "Image")をTerraformで書く場合、image_uriにECRのリポジトリURLを指定する必要があります(Public ECRはエラーで弾かれる..) この時、当然ECRもTerraformで書きたくなりますがLambdaの構築を行う前にイメージ…

メモ)flutter_mapでscaleが取得できなくなってた件

flutter_map、バージョン0.14.0では下記でscaleの値が取れていた。 TileLayerOptions( tileBuilder: (BuildContext context, Widget tileWidget, Tile tile){ print(tile.level.scale); return Container(); }) しかし最近、Stableバージョンが多く出ていた…

Strapi4.3.0リリース@TypeScriptサポート

今朝、公式メルマガ&TwitterでStrapi4.3.0リリースの発表があり、TypeScriptサポートとなりました TS対応については先日書いていますが改めてリリース版を動かしてみます。 yasuda.cloud セットアップ 下記コマンドでプロジェクト作成を行います。前回と違…

Strapi自作プラグイン開発@strapi-plugin-csv-upload

以前、Strapi Ver4の管理画面をGoogle/Cognitoアカウントでログインできるプラグインを作ったのですが、諸事情(商売上)の観点から公式マーケットプレイスの申請が却下されたことがあります。 個人的には思い入れのあるOSSだと思ってるのでマーケットプレイ…

StrapiのTypeScriptを動作検証

最近、Strapi公式の不定期メルマガに”TypeScript”というキーワードをよく見かけますが、色々調べたところどのマイナーバージョンもまだbeta版のようでした。 色々、というのは↓のように新機能/変更の情報が色んな所に書かれているためです。 GitHubのリリー…

Cloudflareに入門 DNS設定周り

前々からCloudflareを学びたいと思ってましたがなかなか機会がなく。 ちょうど製作中のサイトがあったので、こちらをCloudflare環境で運用しようとふと思いました。 はじめに ちなみになぜCloudflareをやってみたいかというと、 ・AWS以外にサイト運用する選…

本番環境でStrapiをpm2で動かす

Strapiの公式ドキュメントにProcess managerというページがありpm2を使った例が紹介されています。 docs.strapi.io ですがこの例のまま設定すると本番環境のホストサーバーのCPUが2つ以上ある場合、CPUリソースが無駄になります。 例えばコアが2つある場合 p…

JetBrains Monoフォント(無料)をターミナルに設定

たまにはライトな記事 最近ターミナルアプリを作ってることもあって少しだけMacのプリインされてるターミナルをカスタマイズしてみました。 JetBrainsでは無料で公開しているフォントがあります。 JetBrains Monoという書体はSIL Open Font 1.1ライセンスの…

Flutterで自作ターミナル開発③ 実装&文字化け対応

少し日が空きましたが、前回に続いて実装編。 ライブラリはSSHとターミナルが同じ運営元になっている下記にします。 github.com github.com SSHターミナルはそれぞれのexampleを組み合わせれば最低限の機能を実現できますが、いくつかハマりそうなポイントが…

Flutterで自作ターミナル開発② 実装準備

前回の記事に続き、本記事は実装準備編。 SSHクライアントを大きく次の3つに分類して考えます。 SSHの通信 コンソール出力画面 その他のUI 一つずつ解説します。 1. SSH通信 通信部分。実はここは意外と簡単です。 iOS/MacOSであればNMSSH がおすすめですが…

Flutterで自作ターミナル開発①

久々の更新 iPad&キーボードを買いました 先日iPad Pro 11インチを購入。 以前使ってたiPadではSmart Keyboardを使っていたので今回はMagic Keyboardを買ってみた。 Smarty Keyboardより画面が高い位置に固定されるため単体でこのセットで使う分にはMagic Ke…

TerraformでAurora Serverless V2が使えるようになった!

先日、AWSがAurora Serverless V2を発表しましたがTerraformもその対応版を公開しています。 該当のドキュメントはこちら registry.terraform.io 記述方法がVer1とは異なるようです。 aws_rds_clusterは上記ドキュメント通りですが、加えてaws_rds_cluster_i…

flutter_mapのtileProviderがもどかしい

たまには苦戦してる系の内容を発信したいと思います。 現在、個人プロダクトでflutter_mapを使用しています。 以前の記事でも少し紹介していますが、flutter_mapではマップのUIを簡単に実装することができ、地図以外の画像にすれば別の用途にも使える優れた…

PynamoDBのトランザクションでハマった

最近、個人開発のWebAPIでPynamoDBを使い始めたんですが、トランザクションの実装がうまくいかず長い時間無駄にしたのでよくある備忘録に。 ドキュメントは下記を参照しました。 pynamodb.readthedocs.io PynamoDBにしてはコード量が多めになりますが、何と…

Strapiの多言語問題について

以前の記事でStrapiは翻訳のキーが一部当たっていないものがあり、多言語化できないキーワードがいくつかあります。GitHubのコミット履歴を見るとこれらはマイナーアップバージョンで少しずつ修正されていますが、実はこの問題はStrapi本体よりプラグインの…

PHP8技術者認定試験上級が公開された

RSS通知で今朝、こんな記事が届きました www.phpexam.jp PHP8の試験ですね。 上記サイトを見ると分かるのですがPHP7では上級試験がなかった(見当たらない)のです。受験を考える人の中には上級受けたいなーとか、でもどうせならバージョン8だよなーって…

テック知識に飢えている、そんなあなたにFINE WAY

先月、技術ブログのRSSを配信するiOSアプリをリリースしました。 fineway.cloud このアプリで扱っているRSSサイトはどれも私が日常的にチェックしておきたいブログばかりで、少し内容(カテゴリー)に偏りがあるかもしれませんがどれも役立つ内容ばかりです…

Qiitaで話題になったエンジニア晒し上げに触れる

私はQiitaトップの記事一覧を流し読みしていくのが習慣的になっているのですが、つい数日前気になるタイトルがありました。 メルカリ勤務の上級エンジニアの不適切な男女差別ツイートを通報したらおとなしくなりました なんかちょっと過激だなーと思って何気…

自分的Lightsail運用

とあるサービスのサーバーにLightsailを使用しています。 インスタンスはデータの管理画面とバッチ(CRON)の2つの機能があり、クライアント側から直接アクセスすることはありません。 そのため、実稼働的には1週間のうち3時間弱程度しか使っていないとい…

最近のLaravelを考える

Dockerの使用うんぬん 最近、Docker for Macに不満がちょこちょこ出てきてます。メモリの使用率が高かったりアプデ通知が頻繁に出たり、設定画面のUIが使いにくかったり。 Docker for Macの代替としてRancherをお薦めしてる人がネットで多いので一考する価値…

エンジニアの不思議な給与体系

余談1) 久しぶりの将棋大会ぼろ負け(*_*) 序盤の駒組みで損をする傾向にあるので改善の余地ありです。 余談2) 昨年、札幌にゲーム会社のセガができるとニュースになっていたのを思い出しました。会社名が「株式会社 セガ札幌スタジオ」となっているので…

Leafletのすゝめ

マップアプリ、と言うとやはりGoogleマップを連想する人が多いかもしれません。 LeafletはOSSで地図をレンダリングすることができるソフトウェアです。つまり自分の好きなようにマップアプリを作ることができるようになります。 わざわざ自分で用意した地図…

【後編】FastAPIとReactでダブルホットリロード

後編になります。 前編ではReactとFastAPIのセットアップを行い、FastAPIで生成されるOpenAPIから手動でReact側に取り込むまでを行いました。 後編ではFastAPIで更新されるOpenAPIのスキーマを自動的にReact側に反映させてみます。 FastAPI ホットリロードの…

【前編】FastAPIとReactでダブルホットリロード

FastAPIについて フロントエンドとバックエンドを同時に実装しているとコードの共通化に悩む時があります。 WebアプリであればWebAPIの定義やエラーメッセージ、アプリケーション固有の定数等が想像しやすいと思います。その中でもWebAPIは開発から運用フェ…

今年もJetBrains All Products Packを更新

8回目のJetBrainsツールの購入が完了。 2016年、当時はeclipseでPHPを書いていましたが何かのきっかけでPHPStormに出逢い、それからずっと使っています。 途中から日本円の支払いになりましたが、基本的に3年目から40%OFFとなります。自分の場合は初年度が…

Strapi自作プラグインの紹介

先日、npmにStrapiプラグインを公開したので簡単にご紹介です。 strapi-plugin-ja-pack - npm 管理画面はデフォルトで英語になっています。 公式プラグインの@strapi/plugin-i18nをインストール&有効にすると日本語になる部分もありますが、翻訳が足りてい…

Macで動く将棋アプリを紹介っ

今週末、札幌で行われる将棋の大会に出ることになりました。 ちょうど最後に出場したのがコロナが出始めた頃だったのでちょうど2年くらいになります。 ここ最近は将棋ウォーズの3切ればかりやっていたので持ち時間のある対局が正直不安です。おそらく持ち…