yasudacloudの日記

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

個人的 Slackアンチパターン7つ

Slack歴6〜7年くらいになります。私が地方エンジニア(ニアショア)ということもあってコロナ禍の前からSlackメインで人とコミュニケーションを取ることが多かったのです。 そこで自分の体験を元にこういうのを避けていくと意思疎通しやすいかな、というの…

Flutterで自作ターミナル開発④ オリジナルUI作り

こちらの続き、自作ターミナルアプリを作ろうの巻 yasuda.cloud iOS16がリリースされたことで自宅iPhoneも最新になり、ようやくXCodeとMacOS、Iphone、iPadがそれぞれ整合性を取ることができた。iPadOSはまだBetaを入れた状態だがSDKはこのままで問題なく入…

Python OpenCVでトヨタの塗り絵してみた

OpenCV勉強シリーズ リアルな写真から塗り絵を作成する記事は多いのですが、反対に色を塗るのはあまり見当たらないので勉強がてら色々いじってみました。まあ塗り絵は人間が好きな配色で自由に行うものですが( ´Д`)y━・~~ キャラクターの塗り絵だと権利的に加…

NFCのシールとカードで遊んでみた

先日Amazonで注文したNFCのチップが入ったシールとカードが届いたのでエンジニア目線でレビューしたいと思います。販売業者からの回し者ではございません。NFC初心者です。 購入したのはこちら、白の無地で薄いカードとシールなので素朴な感じです。 Amazon …

PHPでUNIXドメインソケットの3種類を書く

積読消化中、「Goならわかるシステムプログラミング」を読んでいたらUNIXドメインソケットについて気になった記述がありました。 ファイルパスを指定する以外の作成方法もあります。ただし、Go言語からは使えません。 これまでphp-fpmやMySQLでファイルパス…

CoreMLで将棋盤の駒を判定する

以前の記事で将棋盤の駒の位置を抽出する所まで出来ました。 yasuda.cloud ディープラーニング素人ながら、今回は駒ごとに写真を分類できるか挑戦してみたのでご紹介です。 駒のデータを用意 まず学習に必要な駒の写真を用意しないといけません。写真1枚に駒…

メモ)EFSとLambdaの調査

AWS公式に謳われてるようにEFSはCMSやサーバレス環境で特に有用だと思います。今後利用する機会が増えそうなので幾つか気になっていたことを調査しました。 Terraformコード リソース単位で書いていたのを1ファイルに転記したので多少抜けてる所はあるかもで…

OpenCVで将棋の局面を読み取る(読み取りたい)

前回の続き。 書籍で学べることを紹介し、実際にやってみたいと思ってた将棋盤と駒の検出をやってみたいと思います。 yasuda.cloud OpenCVではじめよう ディープラーニングによる画像認識:書籍案内|技術評論社 第6章 ディープラーニング とうとうディープ…

OpenCVに入門する

大型夏休みに突入しました\(^o^)/ 積読がだいぶ溜まってたので2ヶ月前に買った「OpenCVではじめようディープラーニングによる画像認識」を読み始めました。”はじめよう”とあるように初学者向けに丁寧に書いてあるので読みやすいです。 公式は技術評論社の…

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の多言語問題について

※一部記事を追記しています(2022年9月16日) 以前の記事でStrapiは翻訳のキーが一部当たっていないものがあり、多言語化できないキーワードがいくつかあります。GitHubのコミット履歴を見るとこれらはマイナーアップバージョンで少しずつ修正されていますが…

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

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

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

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

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

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