chevron_left

メインカテゴリーを選択しなおす

cancel
arrow_drop_down
  • Xcode 15.0 アップデート後、R.swift の ColorResource や ImageResource の extension でエラーが発生する

    さくさんは Assets.xcassets や Colors.xcassets にアクセスするために R.swift を愛用している。Xcode 15.0 アップデート後、R.swift の ColorResource や ImageResource の extension でエラーが発生するようになった。 R.swift の ColorResource や ImageResource の extension でエラーが発生する エラーメッセージには 'name' is inaccessible due to 'fileprivate' protection level と書かれている。 エラ…

  • Xcode 15.0 アップデート後、CocoaPods経由でインストールした Firebase Apple SDK でコンパイルエラーが発生する

    Xcode 15.0へのアップデート後、CocoaPods経由でインストールしたFirebase Apple SDKでコンパイルエラーが発生する。 解決方法 CocoaPods 1.13.0 のリリースされると、この問題は解消される見込みである。ただし v1.13.0がリリースされるまでの間は、ワークアラウンドを利用しなければいけない。Podfileを開き、以下のワークアラウンドのコードを追加する。 post_install do installer # CocoaPods v1.13.0 がリリースされるまでのワークアラウンド installer.pods_project.targets…

  • auの「スマホトクするプログラム」を解約して iPhone 13 の残債を精算した

    2021年にauの「スマホトクするプログラム」を利用して iPhone 13を購入した。ただでさえ高くなっている iPhone をキャリア経由で購入するとさらに高くなるため、今後は au で購入するのをやめて、Appleストアから直接購入することを決めた。 キッカケになったツイート。 残債6万円の iPhone 13 を au に返却して帳消しにするのか、6万円払って iPhone 13 を買うのか悩んでいたけど、auに6万円払ってiPhone 13 を買い取って、Apple の下取りサービスに出して 6.4万円分の割引を得る。これだ! 答えが出てしまったな!— さくさん (@ch3cooh)…

  • macOSで librsvg を使って SVG から PNG へ変換する

    大量にある SVGファイルを PNGファイルへ変換したい。 大量にある SVGファイルの例(例:国旗アイコン) 本記事では、rsvg-convert コマンドを使って、指定したディレクトリ内のSVGファイルをPNGファイルに変換する方法を以下に説明する。 rsvg-convert のインストール まずは、rsvg-convertをインストールする。 macOSの場合は、Homebrewを使ってインストールするのが一番簡単だ。 brew install librsvg SVGファイルをPNGに変換する SVGファイルをPNGファイルへ変換するには以下のコマンドを利用する。-hと-wオプションを使…

  • 【ポケスリ】#1 鍋容量21個:6週目は料理メインチームで効率よくレシピを開放したい【Pokémon Sleep】

    5週目が終わり、ポケモンスリープは6週目に突入した。実力差がつきにくいポケスリにおいても、課金含めて先行しているユーザーとスコア差が出てきたのを感じるようになってきたが、睡眠で勝負しても仕方ないのであまり気にしない。 無課金で鍋容量21個トレーナーであるさくさんは、効率的にレシピを開放するために料理メインのチームを構築した。 5週目のまとめ 6週目は料理メインチームで効率よくレシピを開拓していく 進化できるポケモンは積極的に進化させる ピカチュウとキャタピー系統は、おてつだい時間が短く「きのみ」と「食材」を集めやすい 「料理パワーアップ」スキル持ちをチームに入れておくとレシピの幅が広がる 5週…

  • Mist を使って USBインストーラーを作成し、Intel Mac mini を初期化した

    あらすじ 今年の3月に「ThinkCentre M715q Tiny」を譲ってもらった*1。しかし、デスクトップマシンは Raspberry Piと比較してセットアップが難しくて(面倒くさくて)、玄関に長い間放置していた。 重い腰を上げたのは7月末で、ようやくM715q TinyにJenkinsをインストールした。Intel Mac miniで実行していたSwift製のバッチをpythonに移植もした。Jenkins 経由でfrozenpandaman/s3sを実行できるようになったのは嬉しい。途中、WindowsストアからインストールしたpythonがJenkinsの実行ユーザーからアクセス…

  • リングフィットを始めて600日が経ったので chocoZAP に通いはじめた

    2021年8月中旬から始めたリングフィットアドベンチャーのゲーム内日数が600日を越えた。6回目のアドベンチャーもラスボス戦に近づいており、来週には7回目のアドベンチャーに突入する見込みだ。 今年の4月末にぎっくり背中を患い、その結果約2ヶ月間リングフィットができなくなった。7月に入り背中と腰が回復したので、リングフィットを再開した。ただし、今のところはアームウェイトやアンクルウェイトを使用せず、自重のみでトレーニングを進めている。購入した20kgのウェイトベストも押し入れで眠ったままである。 chocoZAP に通いはじめた 8月9日に chocoZAP に通いはじめた。主な目的は、気軽に利…

  • Cloud Firestore の Collection references は偶数個のセグメントだと例外が発生する

    長いあいだ、Swift でのデータ操作が煩雑な Cloud Firestore を使う気になれなかったのだが、いつのまにか Swift Concurrency に対応していた。async / await が使えると話が変わってくる。格段に使いやすくなっていたので、お試しで簡単なアプリを作ってみることにした。 しかし、Firestore へデータを書き込もうとしたところ例外が発生してしまった。 Terminating app due to uncaught exception 'FIRInvalidArgumentException', reason: 'Invalid collection r…

  • iOSユニットテストでテスト専用リソースの組み込みと利用方法

    たとえば画像識別アプリを開発中には、テスト画像を Bundle からロードして、画像を識別してその結果を評価するユニットテストを作成する。または、HTMLをスクレイピングするアプリを開発中には、ダミーのHTMLを Bundle からロードして、スクレイピング処理が正しく動いているか評価するユニットテストを作成する。 しかし、これらのテスト用のリソースをアプリの本番バイナリには含めたくない。そこで、テスト時だけテスト用のリソースをBundleに組み込むというニーズが生じる。 この記事では、テスト時にのみ利用可能なリソースをどのようにして追加して利用するのかを紹介する。ここでの login.htm…

  • Python を使って Gmail からメールを送信する

    自宅サーバーでは毎日メールを送信するバッチを処理している。これまではmacOS上のJenkinsで動かしていたため、Swiftで実装したプログラムを使用していたが、JenkinsをWindowsマシンへ移行することに伴い、Pythonへ移植することにした。 本記事では、Pythonを使用してGmailからメールを送信する手順について紹介する。 Gmail のアプリパスワードを発行する PythonからGmailを使うためには「アプリパスワード」が必要となる。アプリパスワードはGoogleアカウントのセキュリティページから生成できる。 Googleアカウントのセキュリティページにアクセスする。「…

  • SwiftUI で検索モードを解除する。dismissSearch() は searchableモディファイアを設定したViewの 子View でないと使えない

    本文はあとで書く。 developer.apple.com dismissSearch() を実行すれば、検索モードがオフになり、検索バーに入力していたテキストもキーボードも消える。 Sets isSearching to false. Clears any text from the search field. Removes focus from the search field. 当初は、以下のように実装した。しかし dismissSearch() を実行してもうまく動かなかった。 struct ParentView: View { @State private var searchTe…

  • Misskey .py を使って画像を添付したステータスを misskey.io へ投稿する

    Python を使って、画像を添付したステータス「Hello, Misskey!」を misskey.io へ投稿する方法を紹介する。 Mastodon.py のインストール Python で Misskey にメッセージを投稿するには Misskey.py というパッケージを使用する。Python から Misskey API に簡単にアクセスするためのツールである。 github.com このパッケージは pip を使ってインストールできる。 pip install Misskey.py Misskey.py を使ってステータスを misskey.io へ投稿する この例では api_ba…

  • atproto を使って画像を添付したステータスを Bluesky へ投稿する

    Python を使って、画像を添付したステータス「Hello, Bluesky!」を Bluesky へ投稿する方法を紹介する。 atproto のインストール Python で Bluesky にメッセージを投稿するには atproto というパッケージを使用する。Python から Bluesky (AT Protocol) に簡単にアクセスするためのツールである。 github.com このパッケージは pip を使ってインストールできる。 pip install atproto atproto を使って画像を添付したステータスを Bluesky へ投稿する この例では bluesky_…

  • atproto を使ってステータスを Bluesky へ投稿する

    Python を使って、Bluesky に「Hello, Bluesky!」と投稿する方法を紹介する。 atproto のインストール Python で Bluesky にメッセージを投稿するには atproto というパッケージを使用する。Python から Bluesky (AT Protocol) に簡単にアクセスするためのツールである。 github.com このパッケージは pip を使ってインストールできる。 pip install atproto atproto を使ってステータスを Bluesky へ投稿する この例では bluesky_api に bsky.social を指…

  • Swift で上付き文字・下付き文字を表示させる

    iOSアプリで「H₂O」や「x²」のような上付き文字や下付き文字を表示する方法について調査する機会があった。 さくさんは、2010年頃(iPhone OS 3.xの時代)からiOSアプリの開発を行っているが、上付き文字や下付き文字を扱うのは今回が初めてだった。他の多くの方もあまり使わないのか、Swiftで上付き文字や下付き文字を扱う方法について説明している記事を見つけることができなかった。 上付き文字・下付き文字とは Unicodeのコードポイントを指定すれば、上付き文字や下付き文字を表示できるだろうことは理解していたが、その「小さな文字が横についている状態」を何と呼ぶのかを調査するのに苦労し…

  • お絵描き初心者が Stable Diffusion を使って魅力的なキャラクターの描き方を学ぶ

    さくさんは4月28日に液晶タブレット「HUION Kamvas 12」を手に入れてから、夜ごとにイラストを描いては投稿している。 【日本限定】 HUION 液タブ 液晶ペンタブレット Kamvas 12 豪華版 11.6インチ 充電不要ペンPW517 絵描き 写真加工 在宅ワーク ネット授業 専用スタンド付き【18月メーカー保証】HUIONAmazon Stable Diffusion を使って魅力的なキャラクターの描き方や塗り方を学ぶ 定期的にイラストを描いては投稿を行っているため、自分自身ではかなり上達したと感じているが、残念ながら投稿したツイートの閲覧数は 10 view 以下で、この状…

  • 焼きそばがフライパンにこびりついたら新しいフライパンの購入時期の合図!フライパンを新調した

    2020年に購入したフライパンで焼きそばを作ると、麺がこびりついてしまうようになった。次の日、和平フレイズの公式Twitterアカウントが関連するツイートを投稿していた。 ふっ素樹脂加工の寿命を判断するひとつの目安として、焼きそばを作ってみるのがおすすめです。焼きそばを作った時にこびり付くようになってきたら、ふっ素樹脂加工の寿命が近づいている可能性が高いと言えます。参考にしてみてください。 pic.twitter.com/c0Y9qWC9l5— 和平フレイズ【公式】🍳🥘 (@waheifreiz) 2023年5月31日 素人目ではフライパンのフッ素樹脂コーティングは問題ないように見えたが、購入…

  • リモートワーク中のコーヒータイムを楽しむために真空断熱タンブラー「JDM-340」を買った

    Twitter で真空断熱タンブラー「JDM-340」が紹介されているツイートを偶然見つけた。昨今の物価高騰に伴い、新版である「JDM-341」が値上がりしているので、旧版が手に入るうちにタンブラーを追加購入したという内容が書かれていた。 真空断熱タンブラーなのに陶器みたいな質感でコレでコーヒーを飲むと最高なんですが、型番がJDM-340から341になって値段が跳ね上がりました。(ステンレスが値上がりしてるからまぁ仕方ない)なので、買えるうちに340を買い足しました。https://t.co/lBM7kOeyn1むっちゃ評価高いのも頷ける。 pic.twitter.com/rkSY5ZJcW7…

  • 墨田区で2023年5月8日以降にコロナワクチンを接種できる会場はどこ?

    2023年5月8日、新型コロナウイルス感染症が5類へと変更された。コロナワクチンは引き続き無料で受けられるが、墨田区では接種会場が大幅に減少された。本記事では、2023年5月8日以降も運営されている接種会場を紹介する。 はじめに 一般の区民を対象としたコロナワクチン接種は 2023年9月1日から 接種会場一覧 ファイザー モデルナ 東京スカイツリータウン ソラマチ まとめ 関連記事 はじめに 2023年5月8日、新型コロナウイルス感染症の感染症法上の位置付けがインフルエンザと同じ「5類」に変更された。この変更により、感染対策の管理が政府から個人や事業者へと移されることになった。多くの店舗では、…

  • 液晶ペンタブレット「HUION Kamvas 12」を購入した

    Amazonのタイムセールで 23,000円になっていたので液晶タブレット「HUION Kamvas 12」を購入した。 【日本限定】 HUION 液タブ 液晶ペンタブレット Kamvas 12 豪華版 11.6インチ 充電不要ペンPW517 絵描き 写真加工 在宅ワーク ネット授業 専用スタンド付き【18月メーカー保証】HUIONAmazon ジェスドロを始めるもののエロコンテンツ扱いされて描く気が萎えてしまう これまで「お絵かき講座パルミー」で、ジェスチャードローイング(ジェスドロ)の練習をしていた。 ジェスドロとは、写実的に人物のポーズを描くのではなく、短時間で素早くスケッチする練習方法…

  • Flutterで、Firebase Authentication の認証プロバイダーの増減を監視する

    Firebase Authentication を使った Flutter アプリを開発している。ログインプロバイダーが増減したときのイベントを取得したい。 たとえば、ユーザーアカウントに Apple アカウントが接続されている時には「Appleアカウントと連携中!」と表示し、接続解除時には「Appleアカウントと未接続!」と表示したい。 認証プロバイダーの増減を監視する よく紹介されている authStateChanges() を監視する方法ではうまく動かなかった。昔のバージョンではイベントが発火していたのかもしれないが、現行のバージョンでは linkWithProvider() や unli…

  • Misskey .py を使ってステータスを misskey.io へ投稿する

    Python を使って、misskey.io に「Hello, Misskey!」と投稿する方法を紹介する。 Mastodon.py のインストール Python で Misskey にメッセージを投稿するには Misskey.py というパッケージを使用する。Python から Misskey API に簡単にアクセスするためのツールである。 github.com このパッケージは pip を使ってインストールできる。 pip install Misskey.py Misskey.py を使ってステータスを misskey.io へ投稿する この例では api_base_url に miss…

  • ぎっくり背中になった

    先週の金曜日のミーティングの終わりに、ゴールデンウィークの予定を確認するために卓上カレンダーを取ろうと体をひねると腰に激痛が走った。悲鳴を抑えながらなんとかミーティングを乗り切ったものの椅子に座ることができなくなってしまった。 しばらくベッドで横になっていたが週末前に鎮痛剤をもらわないと、この激痛には耐えられないと思い近くの整形外科へ行った。医者がぐいぐい指を押して圧痛点を探すんだけど、痛いのはどうも腰ではなくて背中だった。圧痛というのは強く押したときの痛みのことである。 痛めているのは肋骨の背中側であることが判明したので、「もしかしたら肋骨が折れているかも」とレントゲンを撮ることになった。レ…

  • Mastodon .py を使って画像を添付したステータスを Mastodon へ投稿する

    Python を使って、画像を添付したステータス「Hello, Mastodon!」を Mastodon へ投稿する方法を紹介する。 Mastodon.py のインストール Python で Mastodon にメッセージを投稿するには Mastodon.py というパッケージを使用する。Python から Mastodon API に簡単にアクセスするためのツールである。 github.com このパッケージは pip を使ってインストールできる。 pip install Mastodon.py Mastodon.py を使って画像を添付したステータスを Mastodon へ投稿する 以前、…

  • Mastodon .py を使ってステータスを Mastodon へ投稿する

    Python を使って、Mastodonに「Hello, Mastodon!」と投稿する方法を紹介する。 Mastodon.py のインストール Python で Mastodon にメッセージを投稿するには Mastodon.py というパッケージを使用する。Python から Mastodon API に簡単にアクセスするためのツールである。 github.com このパッケージは pip を使ってインストールできる。 pip install Mastodon.py Mastodon.py を使ってステータスを Mastodon へ投稿する 以前、さくさんは Pawoo を使用していたが、…

  • リングフィットを始めてから500日が経ったので「ケトルベル魂 パワーウエイトベスト(20kg)」で負荷を増やした!

    2021年8月中旬から始めたリングフィットのゲーム内日数が 500日を超えた。現在、6周目のアドベンチャーで遊んでいる。 体脂肪率が20%台になると体の真ん中に縦線が入ってきた。喜んでいたらそのあと油断したため 21%台に戻ってきた。春なので桜餅やおはぎなど糖分が欲しくなってしまう。どら焼きも食べてしまう。 ケトルベル魂 パワーウエイトベスト(20kg) を購入した! 2022年3月から合計 5kgのウェイトをつけているが、 1年が経過して負荷が物足りなくなってきた。 腕に 3kg のウェイト (片腕 1.5kg) 足に 2kg のウェイト (片足 1.0kg) 機械ジムに通うのかウェイトベス…

  • AIと共に進化するアプリ開発: GPT-4と爆速でiOSアプリを開発する方法とその効果

    こんにちは!最近、私は OpenAI の GPT-4 と共に iOS アプリを開発することに挑戦しました。この冒険において、AIの力を活用することで、どのように開発プロセスが劇的に変わるのか、そしてどのような課題に直面したのかについてシェアしたいと思います。 本記事では、GPT-4を用いた開発の苦労した点や省力化できた点を紹介します。AI技術の進化がアプリ開発の世界にもたらすインパクトをお伝えすることで、皆さんがAIと共に新たな開発プロセスに取り組むきっかけとなれば幸いです。それでは、さっそくAIと共に進化するアプリ開発の世界へ一緒に飛び込んでみましょう! GPT-4について GPT-4とCh…

  • Python で指定したディレクトリを再起的に調べていき、画像が破損している場合にファイルを削除する

    Python で指定したディレクトリに含まれる画像が破損している場合に当該の画像ファイルを削除する方法を紹介する。 はじめに Google Colab での TensorFlow を使った転移学習時に以下のエラーが発生した。 /usr/local/lib/python3.9/dist-packages/tensorflow/python/eager/execute.py in quick_execute(op_name, num_outputs, inputs, attrs, ctx, name) 50 try: 51 ctx.ensure_initialized() ---> 52 tens…

  • Colab でマウントしている Google Drive に対してファイル書き込み後、書き込んだランタイムからは参照もできるのに、別のランタイムからはファイルが見えない

    Google Colaboratory (以下Colabと記す) に Google Drive をマウントしている。 大きなサイズの .tar ファイルを解凍して、解凍したファイル群を Google Drive へ保存した。解凍をした Colab ランタイムからは Google Drive に解凍後のファイルが見えるにも関わらず、別の Colab ランタイムからは解凍したファイルが見えない現象が発生した。 Colab を使い始めて1日目の出来事だったので Google Drive を外付けハードディスクのように考えていて、ファイルを保存に成功したら保存できて当たり前だろと考えていた。 あれこれ…

  • 外付けSSD として使うために「WD Blue SN570 1TB」と「UGREEN 90264」を買った

    最近、大量の画像ファイルを扱うようになった。さくさんは MacBook Pro にオプションで SSD の容量を 1TB にしているが、それでもストレージの容量が不足してしまった。 外付けSSDを買ってファイルはそちら側で管理することにした。ラズパイで構築した録画サーバーみたく、速度のことを考えなくて良いのであれば外付けHDDを使っただろうが、ファイル数が多いのでHDDは却下してSSDを使うことにした。 Twitter で外付けSSDを買うよりもSSDとケースを別々に買って自作した方が良いと教えてもらったので、カタログスペック上の速度を重視して「WD Blue SN570 1TB」と「UGRE…

  • GPT-4 にどんなアプリを開発すれば儲かるのか聞いてみたら「アプリ開発における基本」が返ってきた

    GPT-4 がリリースされた。月20ドルのChatGPT Plusに加入すれば、GPT-4 を利用できる。「どんなアプリを開発すれば儲かるでしょうか?」と質問したところ、アプリ開発における基本が返ってきた。 以下、GPT-4 の回答である。 AIが考える儲かるアプリを開発するポイント 不労所得を得るためにアプリを開発する場合、以下のようなポイントに着目することが重要です。 ニーズが高く、競合が少ない市場を狙う 継続的な収益を生み出すモデルを採用する(例:サブスクリプションモデル) ユーザーエンゲージメントを高める機能やコンテンツを提供する 以下は、儲かる可能性があるアプリの例です。 フィットネ…

  • Twitter で bnc\.lt または asahsi\.com のリンクを貼っている通称ナイト系スパムbot への対処方法

    Twitter でバズったツイートに対して bnc.lt または asahsi.com のリンクを貼るスパムがあまりにも目に付くので対処したいと考えた。これは通称「ナイト系スパム」と呼ばれる bot である。 後述するが、リンクを踏むと無断転載サイトへ転送され、サイト運営者からスパム業者に謝礼が払われる仕組みのようだ。 いままでも無差別にURLを貼り付けるスパムbotはたくさんいたが、このスパムの賢いところは元ツイートから文章を抽出しているため自然なリプライに見える点にある。スパムと疑っていないツイート主がわざわざリプライを返しているケースもよく見かける。 bnc.lt は 短縮URLサービス…

  • Cloudflare R2 で静的サイトを公開する

    CloudFront + S3 で https://ch3cooh.net/ をホストしている。このサイトでは単に welcome! としか表示しない。特に何をやっているわけではなく、AdMob で規定されている 「アプリ向けの認定販売者宣言システム(app-ads.txt)」置き場である。そのためできる限りコストを掛けずに運用したい。 ch3cooh.netドメインは先日 AWS Route 53 から Cloudflare へ移管したので、CloudFront + S3で運用している静的サイトも Cloudflare + Worker + R2 に移行することにした。 R2 にバケットを作…

  • Cloudflare でカスタムメールアドレスを作成して任意のメールアドレスへ転送する

    ドメインを所有している証明として info@example.com か webmaster@example.com にメールを送ってくるサービスがあった。このためだけに現在「さくらのメールボックス」を契約している。 Cloudflare には info@example.com や webmaster@example.com などのカスタムメールアドレスを作成して、任意のメールアドレスへ転送する機能がなんと無料で使える。 左ペインの[メールアドレス]から[Email Routing]を選択する。概要の隣に[ルート]タブがあるのでクリックする。 [アドレスを作成]ボタンをクリックする。 追加したい…

  • Raspberry Pi 4 と docker-mirakurun-epgstation で録画サーバーを構築する (2023年2月版)

    録画サーバーが死んでいるのに気付かず、3日前の「ローカル路線バス乗り継ぎ対決旅 陣取り合戦」を見逃してしまった。 2年前に「Raspberry Pi 4とdocker-mirakurun-epgstationで録画サーバーを構築する (2021年4月版)」にて録画サーバーを構築する方法を紹介した。前回の録画サーバーの構築から2年も経っており Mirakurun と EPGStation の最新版を利用したかったのもあって録画サーバーを再構築した。 本記事では「Raspberry Pi OS Lite (32bit)」をベースとして録画サーバーを構築する。 使用機材 Raspberry Pi O…

  • ドメイン管理を AWS Route 53 から Cloudflare に移管した

    2022年11月に AWS Route 53 のドメイン更新料が値上げされた。一時期と比較してまだましになったとは言えるものの円安傾向にある今日日 $1 の値上げでもドメイン数があると結構厳しいなと思っていた。 先日「Route 53 から Cloudflare にドメイン移管したい」と投稿していたのをみて、「そういえば Cloudflare ってCDNだけじゃなくてドメインも売り出したんだっけ……」と調べてみたところ、本記事の執筆時点のレートで Route 53 を契約し続けるよりも約 700円の差があることがわかった。 Route 53 では comドメインが $13 / year (執筆…

  • ジェスチャードローイングのクオリティを上げるためにデッサン入門書を買ってきた

    丸善の株主優待券が余っていたので、お茶の水までデッサンの入門書を探しにいった。 ジェスドロのクオリティを高めるためデッサン入門書を買ってきた さくさんは効率的に絵が上手くなりたかったので、現在は砂糖ふくろう先生のジェスドロ講座を受けている。講座内容は毎日色々なポーズのモデルを10体ずつ描いていくというものである。時間制限があって強制的に次のポーズを描かかないといけない。 毎日課題の10体を描いて、さくさんの場合sはそのあとに落書きをしているのもあって、少しずつだが技術力は上がっていっていると思う。 ただ、ふくろう先生のジェスドロ講座は「アクションを捉える講座」であって「人体の描き方を教えてくれ…

  • Parallels Desktop 18 for Mac を導入した

    Parallels Desktop 18 for Macが、ARM版の「Windows 11 Pro」と「Windows 11 Enterprise」の動くソリューションとして正式に Microsoft による認証を受けたと話題になっていたのでこの機会に導入してみた。 Parallels Desktop 18 Retail Box JP(通常版)/仮想化/WindowsをMacで実行/仮想環境コーレルAmazon 7年ぶりの MacBook Proで Parallels Desktop である。当時は Visual Studio 2013 で C#を使ってサーバーサイドの実装をしながら、Xco…

  • ジェスチャードローイングを始めて8日が経った

    ジェスチャードローイングを始めてからかれこれ 8日が経った。1週間続いたので一旦ブログにまとめることにする。 絵を描き始めたのは、かずきさん( @okazuki )がイラストを Twitter にアップロードしているのを見たから。自分もやってみよと思った。 まったくのゼロの状態から自分の思った絵を描けるようにるためにはどうしたら良いのか調べたところ、ジェスチャー・ドローイング(以下、ジェスドロと記す)を知る。 10パーセントの力で描く はじめてのジェスチャードローイング作者:砂糖 ふくろうボーンデジタルAmazon ジェスドロは見たまま写実的に描くのではなく、印象を捉えてラインオブアクション …

  • CoreML 向けの mlmodel モデルで物体検出/物体識別が可能なラベルの一覧を取得する

    CoreMLでは画像識別/オブジェクト検出をおこなう機械学習モデルは .mlmodel ファイルである。mlmodel ファイルをダブルクリックすると、Xcodeが開いて下図のようにモデルのメタデータが表示される。 ここに表示されている Class Labels が検出または識別可能なオブジェクトの一覧であるが一括でコピペすることができない。 テキストファイルで Class Labelsの一覧が欲しいので 100個までは手作業で入力あるいは一行ずつコピペしたが、画像識別モデルで有名な MobileNet v2 はラベルが1,000個もありおおよそ現実的ではないと判断して、モデルのメタデータを参…

  • フォートナイト チャプター4 シーズン1 所感

    フォートナイトのチャプター4 シーズン1の終了まで残り1ヶ月となった。本日のデイリークエスト分でようやくレベル200になり「エイジレス(ハルシオン)」を手に入れた。C4S1が2022年12月4日に開始されて、約2ヶ月でレベル200まで上げられたのは過去最速ではないだろうか。 C4S1ではショックウェーブハンマーが重要な武器かつ移動手段であった。叩きつければダメージ70、跳ねるで戦線離脱して移動、と攻守共に優れていた。 移動手段としては公式にはダートバイクが推されていたみたいだが出現率があまり高くなくクエストのために必死に探し回る必要があった。あまりにもみんながハンマーを使っていたからか、シーズ…

  • Flutter で Riverpod を利用してデバイス名やデバイスのOSバージョンを取得する

    Flutter でデバイス名やデバイスのOSバージョンを取得するためには device_info_plus と apple_product_name を利用する。riverpod での利用を想定しており、本記事で紹介するサンプルコードでは FutureProvider を使っている 。 device_info_plus では iOSおよびmacOSの場合は iPhone15,2 などとモデル名を取得するため、パッとみてわかる一般名称に変換する apple_product_name をセットで導入している。ちなみに iPhone15,2 とは iPhone 14 Pro のモデル名である。 モデ…

  • Nintendo Switch Proコントローラーは宅急便コンパクトの箱に入るのか?

    Nintendo Switch Proコントローラー(プロコン)が宅急便コンパクトの専用ボックスに入るのか検証した。 【任天堂純正品】Nintendo Switch Proコントローラー任天堂Amazon 宅急便コンパクトとは 宅急便コンパクトとは、ヤマト運輸が提供しているオークションや個人売買サイト向けの定型配送サービスである。宅急便コンパクト専用の梱包箱があり、子供服や小型のおもちゃを入れて発送することが想定されている。 梱包箱に収まる範囲であれば通常よりも安い610円で発送できる *1。提携しているサービスを使って発送した場合はさらに安く発送できる。たとえばメルカリで販売した商品を「らく…

  • Flutter for macOSで firebase_core と flutter_secure_storage をインストールしたときにビルドに失敗してしまう

    FlutterでFirebaseを使うために firebase_core および flutter_secure_storage を導入したところ、ビルドエラーが発生してしまうようになった。iOSでは問題なくビルドできているが macOSの場合に問題が発生するようだ。 pub.dev pub.dev firebase_core を導入するとビルドエラーが発生 firebase_core を導入すると下記のビルドエラーが発生しまう。 Analyzing dependencies Inspecting targets to integrate Using `ARCHS` setting to bui…

  • macOSアプリで twitter_login パッケージを使った場合にTwitterログインが失敗する

    開発には MacBook Proを使っているが、Flutter でのデバッグ実行で最速なのは「macOS (desktop)」だと思う。そのため画面遷移のテストなどは macOSアプリで動作確認している。 現在、Twitter APIを利用するアプリを開発しているが、煩雑なログイン処理のため twitter_login を利用している。Twitter API を oauth1 で利用したい場合には唯一無二のライブラリパッケージである。欲を言えば Flutter Web*1でも使いたいのだが現在のところ非対応である。対応が難しいのかもしれない。 pub.dev macOSアプリでTwitterの…

  • GDP WIN 2のバッテリーを交換した

    2018年6月に購入した「GPD WIN 2」のバッテリーが2021年9月に完全に死んでしまったようで、電源ケーブルを挿さないと起動しなくなった。購入してから 3年ほどでバッテリーがダメになってしまった。 GPD WIN 2 のバッテリーは「6438132-2S」という規格のものらしい。一昨年に新しいバッテリーを買って交換しようと思って分解したが、日本の公式代理店では新品のバッテリーが 10,000円だったので躊躇していた。2023年1月4日になって少し円安感が解消されたのでAliexpress で約5,000円の新しいバッテリーを購入した。 New Original Tablet Batte…

  • ニンテンドーeショップの閉鎖に伴う最終セールで買ったゲームまとめ (執筆中)

    2023年1月8日現在、ニンテンドーeショップの閉鎖告知に伴い、各社でゲームがセール価格で販売されている。さくさんがセールで買ったゲームをまとめた。本記事は他人に見せるというよりかは自分が何を持っているかの記録のために書いている。 追加で購入したゲーム 去年の夏のセールで欲しいゲームをあらかた買ったのだが、new 3DS LL に挿さっている microSD の容量が足りなかったため、いくつかのゲームについては購入を諦めた。 さくさんは new 3DS LL には 128GB を挿していると思い込んでいたが、実際に挿さっていた microSD は 32GB であることがさきほどわかったので、6…

  • KMMライブラリをiOSプロジェクトから利用する

    Kotlin Multiplatform Mobile (以下KMM)を使ってアプリを開発したいと考えている。 将来的には Jetpack Compose を使って UI を実装すれば、Flutter のように共通のコードで iOS側でも実行できるようになるようだが現時点では難しそうだ。Android Studio 上で iOSアプリを開発するのも IDE の支援を受けられず厳しい。少なくとも私には無理だ。iOSプロジェクトの開発には Xcode を使いたい。 そこでアプローチを変えることを考えた。そこで Kotlin Multiplatform Mobile Library (以下KMMライ…

  • Xbox 360 コントローラー(無線)は宅急便コンパクトの専用BOXに入るのか?

    Xbox360コントローラー(無線)が宅急便コンパクトの専用ボックスに入るのか検証した。 マイクロソフト ゲームコントローラー ワイヤレス/Xbox/Windows対応 ブラック Xbox 360 Wireless Controller for Windows JR9-00013マイクロソフトAmazon 宅急便コンパクトとは 宅急便コンパクトとは、ヤマト運輸が提供しているオークションや個人売買サイト向けの定型配送サービスである。宅急便コンパクト専用の梱包箱があり、子供服や小型のおもちゃを入れて発送することが想定されている。 梱包箱に収まる範囲であれば通常よりも安い610円で発送できる *1。…

  • 2022年の投資結果と2023年の方針

    2021年のコロナ禍、2022年始のロシアによるウクライナ侵攻・円安と「マーケットなんもわからん」と感じたため、運用は賢いひとたちに考えてもらおうと 2022年は投資信託をメインで買い増しするだけであった。 2022年の投資結果 2022年はワクチン接種率が向上したのもあって感染者自体は増えているものの重篤化率が激減している。コロナ禍はひと段落したと冷え込んでいたマーケットも反発して上昇していた。 3月、ロシア侵攻をうけ日本は対露制裁を発表、日経平均株価はそれに伴い急落した。日々評価損の額がやばいくらい増えていくのを見て耐えきれずさくさんは狼狽売りした。ちなみに前回狼狽売りしたときのことは新型…

  • サブスクの棚卸し2022

    「年末なのでサブスクを棚卸しした 2022 - BattleProgrammerShibata」を読んで、我が家でもどれくらいサブスクにお金を使ってるのか整理した。 月間契約 サービス名 価格 備考 au 6,080 auメイン回線 au 3,863 auメイン回線 (嫁) iCloud 2TB 1,300 ファミリー共有のために必要 Microsoft 365 Personal 570 学割適用 Money Forward ME 500 合計 12,313 年間契約 サービス名 価格 備考 Apple Developer Program 12,980 DeepL 9,000 1passwor…

  • 海鮮かに処の「福袋おせち2023」でおせちガチャに挑戦した!

    12月29日に「海鮮かに処の福袋おせち」が届いた。11月27日に注文して、12月16日に配達告知ハガキが届き、12月29日におせちが届いた。 結果としては、中吉の 京都円山 料亭「東観荘」監修特大重 華寿千 で当たりであった。 福袋おせちについて 福袋おせちを注文した 12月16日追記:福袋おせちお届けのハガキが届いた 12月28日追記:佐川急便からの発送通知が届く 12月29日追記:福袋おせちが届いた 福袋おせちについて 購入したのはこの「福袋おせち 【12,345円】」だ。久しぶりに元旦はどこにも出かけないことが確定したので、普段飲まない酒でも飲みながらしっぽりと過ごそうと購入した。 元々…

  • ミスタードーナツの福袋2023を買った

    毎年マクドナルドの福袋に当選しているため、応募すれば確定で当選するものだと思っていたが、今年は夫婦ふたりとも落選した。福袋ロスを補うためにミスタードーナツの福袋を買った。 ミスタードーナツはポケモンとコラボするようになってからキャンペーン商品(マグカップや福袋)の売り上げが安定しているように思う。ダスキンの株価も順調に右肩上がりである。 ミスタードーナツの福袋2023は12月26日(月)発売だった。1週間ほど前からイートインスペースを削って福袋を置くほどで、今年の福袋にはかなり力を入れているようだ*1。 公式ページより https://www.misterdonut.jp/goods/fuku…

  • Nintendo Switch Pro コントローラー(スプラ3エディション)を買った

    2週間ほど前に有機EL版の Nintendo Switch に買い替えた *1。また12月17日に欠品が続いていた「Nintendo Switch Pro コントローラー」が家電量販店で販売しているのをみてこちらの方も買い替えた。 【任天堂純正品】Nintendo Switch Proコントローラー スプラトゥーン3エディション任天堂Amazon 12月になってから Nintendo Switch 2台とプロコン 1台、および周辺機器を購入したので合わせて8万円ほど任天堂の売り上げに貢献できた。 プロコンは消耗品である さくさんは Splatoon と Fortnite と リングフィット で…

  • リングフィットを始めて400日経ったけどまだ腹がへっこまない

    リングフィットアドベンチャーを始めてからゲーム内時間で400日が経過した。リアルタイム上では既に1年以上経っているが、ゲーム内時間でも1年を超えた。 ようやく4周目のダークドラゴを倒した。肉体的にはあまり変わっていないようで、リストウェイトとアンクルウェイトをつけたままダークドラゴを倒すことができた。 リストウェイトは1.5kg、アンクルウェイトは1.0kgのもので合わせて5.0kgの負荷になっている。この状態でのトライセプスはかなりきついのだが、そろそろひとつ上のウェイトに移行する時が来たのかもしれない。 元々リングフィットアドベンチャーは嫁が買ってきたものであるが使わなかったので代わりに遊…

  • Nintendo Switch (有機ELモデル)に買い替えた

    Nintendo Switch (有機ELモデル)を買った。いままで使っていた Nintendo Switch は発売日の2017年3月に購入したもで、なんと5年半も経過していたようだ。 Nintendo Switch(有機ELモデル) スプラトゥーン3エディション任天堂Amazon 有機ELモデルに乗り換えた理由 有機ELモデルへの買い替えの動機は 2点ある。 ひとつめは、Switchの上位機種「Nintendo Switch Pro」または「New Nintendo Switch」が出ると考え、ずっと待っていたがスプラトゥーン3が現行機向けに販売されたことで、あと2年間は次世代モデルが出な…

  • パナソニックの急速充電器「BQ-CC85」を購入したので SANYO エネループを捨てることができた

    パナソニック製の急速充電器「BQ-CC85」を購入した。 パナソニック 単3形単4形ニッケル水素電池専用急速充電器 BQ-CC85パナソニック(Panasonic)Amazon BQ-CC85 購入の経緯 我が家にはゲームボーイなど乾電池を使うゲーム機や家電がまだたくさんある。アルカリ電池でも構わないのだが、経年劣化で液漏れしてしまうのが怖い。 エネループを代表とするニッケル水素電池は、アルカリ電池と比べ液漏れしない*1*2ので「液漏れする電池を使うくらいなら……」と単価が多少高くても充電池を使っている経緯がある。 我が家のこの方針のため、SANYO とパナソニックのエネループであったり Am…

  • 兵庫

    東京から新幹線で兵庫に行って移住先を探してきた。新幹線で新大阪以西に行ったのは初めてである。西明石駅で降りて、在来線を使って西明石から順々に大阪に戻っていった。駅を中心にしてウロウロしてきたので、それぞれの街の感想を書いていく。 註:さくさんが現地で見てきた感想なので事実と異なる点があればコメントをお願いします。例えば「〇〇がない」と書いたが探せていないだけで実際にはあるかもしれない。 現在の住まい 現在の住まいと属性は以下の通りである。 リモートワーク、2011年から通勤をしていない 犬を飼っている 今の住まいは、見晴らしがよくて(周辺物件と比較して)家賃がかなり安い 上野・錦糸町、浅草・押…

  • えきねっとで「新大阪発・東京着」の切符を購入した場合にどこで切符を受け取ることができるのか?

    浅草線を使えば成田空港または羽田空港に1本でいけるので長らく移動には飛行機を使っている。今回はすこし変則的で行きと帰りに別々の駅を使いたいため飛行機ではなく新幹線を使って移動することにした *1。 新幹線を使って東京から大阪へ帰省する際には えきねっと で新幹線の切符を買っている。いつもは往復で購入するので特に悩まないのだが、発着駅が異なると「往復」では購入できないので、まず「片道」で行きの切符を購入した。 行き: 東京 to 西明石 帰り: 東岸和田 to 新大阪 to 東京 帰りの切符を取る際に注意喚起のポップアップが表示されたため、混乱して帰りの切符はどこで受け取れるのかとわからなくなっ…

  • リングフィットを始めて 365日 が経過した

    リングフィットのプレイ日数が 365日 を超えた。2021年8月にリングフィットを開始して以来、ほぼ毎日欠かさずに 1年間 リングフィットを続けてきた*1。 リングフィットを始めて1ヶ月くらいは、週刊少年マガジンの真ん中あたりのカラー広告に載ってそうな before / after の写真を撮ってネタにしようと思っていた。残念なことにスタート地点がブヨブヨの肥満体型だと、リングフィット程度の運動強度を 1年間続けたところで、ムキムキのマッスルボディにはならない。腹筋に力を入れられるようになるにも 34日かかった。 ……とはいえ体は引き締まったみたいで、前年度の健康診断結果と比較すると腹囲が8.…

  • iOS 16 の場合、SwiftUI の List で セクションヘッダー上部にマージンが入ってしまう

    iOS 15 / iOS 16 の場合、SwiftUI の List で セクションヘッダーに top padding (top margin?) が入ってしまう問題がある。 ヘッダー上部にマージンが入る現象自体は iOS 15 の時にも発生していたが UITableView.appearance().sectionHeaderTopPadding = 0 で解決できた。iOS 16 からは List の内部実装が UITableView から UICollectionView に変わったようで、iOS 16 ではこの対策は使えなくなった。 この手の問題は、たとえば List から UITab…

  • イーロン・マスクによる Twitter社買収後 のタイムラインについての雑感

    註:本記事は個人レベルの日記です。 さくさんは 15 年近くTwitter に生息しているのだが、イーロンマスク氏によるTwitter社買収の直後、Twitter のタイムラインの雰囲気が変わったので書き残しておく。現在、以下のような感想を抱いている。 ニュースの更新が止まったことで新しい話題が供給されなくなったからか、エセ医療、有名人の炎上、政治やフェミ論争ツイートがTLに完全に流れてこなくなった— さくさん (@ch3cooh) 2022年11月7日 さくさんは「Yahoo!ニュースに対して感想をリプライで返しているユーザー」を時々一括でブロックしている。その数は 2万ちょっとになる。その…

  • NovelAI を使って自撮り動画をアニメ化しよう! #novelai

    仕事で ffmpeg を使う機会があり、ffmpeg を使えばなんでもできることがわかった。NovelAI と組み合わせることで自撮り動画をアニメ化できるのではないかと考えた。 NovelAI では img2img が有償のため、変換処理をスクリプト化する前に、まずは想定している処理を手動でやってみることにした。特に秘匿するようなことはないため、自撮り動画をアニメ化する手順を紹介する。手間はかかるが誰にでもできるだろう。 ちなみにさくさんは白色のタンクトップに黒ズボンで寝ている。 NovelAI を使って自撮り動画をアニメ化する 事前準備 1. iPhone で動画撮影 2. ffmepg で…

  • 2年半使ったアウトドアチェアが壊れたので新しいアウトドアチェアを買った

    キャンプを始めるにあたり 2020年1月 にアウトドアチェアを購入した。コロナ禍以降は都営キャンプ場が閉鎖・休業してしまいほとんど焚き火にも行けなくなってしまった。テントも買ったのに近くの公園で展開するくらいでしか使っていない。 1年ほど前から自宅で常時展開した状態で置いていて テレビを見る時などに使っていたが、背もたれの骨を支える基部(布)が突き抜けてとうとう壊れてしまった。骨が先にダメになると思ってたので布の方が先にダメになるのは想定外であった。 使用開始から300回目で壊れたと考えるとそこそこ耐久性があることがわかった。火を弄ってるときに壊れなくてよかった。また同じメーカーの商品を買った…

  • 湯たんぽを買い替えた

    今春に階下の住人が引っ越した。現在住んでいる物件は新しいオーナーの意向で、空室が出たらリフォームがおこなわれている。ただ物価高および資源不足のためか工期が長引いているようでまだリフォーム工事が続いている。工事中は換気のために窓が開きっぱなしになっており、例年に比べると底冷えがつらい。 あまりにも床から冷えがくるのでここ数年使っていなかった湯たんぽを押し入れから取り出した。使わなかった間に劣化が進んだようで振るとカサカサ鳴っている、ひっくり返したところ大量の細かなサビが出てきた。 この湯たんぽは「マルカ」というメーカーの日本製のもので、公式ではフタのゴムパッキンの寿命は1年、本体の寿命は2〜3年…

  • NovelAI で描かれたAIイラストの見分け方、あるいは AIイラストのプロンプトを参考にする方法 #novelai

    pixiv に AI イラストがアップロードされ続け、本記事の執筆時点で5.5万作品になっている。#novelai や #stablediffusion のタグをつけて投稿されている場合はタグで除外することができるが、pixiv ではAIイラストに対して「AIイラストです」とタグをつけることは強制されていないので、そのようなイラストは除外リストから漏れてしまう。 さくさん自身は「AI絵師」や「AIイラスト」に否定的ではないが、生成した画像をシェアする際には厳選して欲しいと考えている。出力されたイラストを作業的にアップロードするだけではなく、もっと癖(へき)を込めて欲しいと考えている。要は濫造さ…

  • NovelAI では同一プロンプト・同一シードでも同一の画像を生成できない

    NovelAI ではひょっとして同一プロンプト・同一シードでも同一の画像を生成できないのではないかと思い検証をおこなった。結論としては「同一画像の生成はできない」であった。 2022年10月17日、NovelAI はユーザー数の増加に処理を捌ききれなくなってしまったので、サイトを数時間停止してアップデートがおこなわれた。これが結果に影響しているかどうかはわからない*1。 画像間の比較方法 画像間の比較は、ImageMagic を使って diff 画像を生成して比較する。 対象A 対象B 比較 画像が同一の場合 画像が異なる場合 異なる画像の場合は赤色で差分が表示されていることがわかる。 比較結…

  • 山善のひとり用ホットカーペットを買い替えた

    本格的な冬に入る前に家電製品の買い替えが発生している。少し前に電気ポッドを買い替えたが、今回はホットカーペットの買い替えが必要になった。 2代目ホットカーペットからおしっこの臭いが…… コロナ禍になる前からフルリモートで働いており、この12年間は基本的に1日中パソコンの前で座っている。冬場はエアコンをつけているが、足元が冷えるためひとり用のホットカーペットで暖を取っている。 山善の「ミニマット 40×40cm ホットマット」を愛用している。現在使っているのは 2代目である。2,000円と安価で、細かな設定なしに電源ONするだけで使えるのも気に入っている点のひとつだ。 [山善] ミニマット 40…

  • Xcode 14.0 と iOS 16 シミュレータの使用時、AdMob SDKの初期化をおこなうとセキュリティワーニングが表示される

    アプリの起動時に紫色の警告が表示されるようになった。 調査したところ、Xcode 14.0 と iOS 16 シミュレータの使用時に AdMob SDKの初期化をおこなうと、このセキュリティワーニングが表示されるようだ。 AdMob SDKの初期化をおこなうとセキュリティワーニングが表示される Xcode 14.0 と iOS 16 シミュレータ を使用している場合、アプリ起動時に GADMobileAds.sharedInstance().start(completionHandler: nil) を実行すると下記のようなエラーが発生する。 [Security] This method sh…

  • 象印の電気ポッドが壊れたので後続製品の CV-TV22 を購入した

    洗濯機、冷蔵庫、ドライヤーと次々家電製品が寿命を迎えている。今日、給水しようと電動ポッドの蓋を開けたところ、蓋のプラと金属を接続している基部が壊れた。2011年に購入した CV-EX22 なので 11年使い続けてきたようだ。たしか当時で 1万円ほどだったと思う。 湯沸かし器系は象印が良い。新しく優湯生ブランドの後続品 CV-TV22 を買った。同じ値段帯のものを購入したつもりでいたが、11年の間にハイグレード製品は倍の値段になったようだ。購入したのは優湯生のエントリーモデルである。 象印 電気ポット ポット 2.2リットル 優湯生 省エネ 5段階保温設定 ホワイト CV-TY22-WA象印マホ…

  • Stable Diffusion の img2img で strength を指定した場合にどれだけ変化するのか調べた #stablediffusion

    本記事では Stable Diffusion の img2img で strength を変更したらどれだけ画風が変わるのか、また元絵の意匠を汲み取って残してくれるのかについて調査した。 元絵について 元絵にはこれを使った。今回は、人物が1人の場合と2人の場合で調査することにした。 ローカル環境でのテストなので「ネットから拾ってきたモノ」を使ってもよいが、なんかのタイミングでそれが表に出てしまったら困るし、ブログに書きたいことが出てきてもそのまま使えない。基本的には img2img のテストでは自分で書いた絵を元絵にしている。 人物がひとりの場合 strength の値を 0.1 〜 0.9 …

  • Stable Diffusion の img2img で seed を固定した場合、同じ絵が生成されるのか試してみた #stablediffusion

    Stable Diffusion の img2img で seed を固定した場合に、同じ絵が出力されるのか? について検証した。 結果としては seed を固定しても同じ絵は出力されなかった。結局のところ seed を指定しても指定しなくても 何十枚・何百枚と画像を生成して良き1枚を抽出する作業をしないといけないようだ。現時点の Stable Diffusion には冪等性はないと考えた方がよさそうだ。 (2022/09/01 8:45追記) からあげ先生によると「diffusers のバージョンで挙動が変わる気がしてます」とのこと。うちの環境は先週の土曜日に構築したものなので若干古い。古い…

  • Androidで 背景色に応じた見やすい文字色を求める

    ユーザーがタグ色を選択できるプロダクトの場合、ユーザーが決めた色の上にテキストを配置しなければいけない。たとえば、下図の GitHub のタグのような場合である。 背景色に応じて、視認しやすいテキストカラーが利用されていることがわかる。 enhancement の背景色は #b5f0f2 で、テキスト色は黒色 task の背景色は #2b76db で、テキスト色は白色 当初は YCbCr や HSV の輝度を使って判断しようと考えていたが、調査を進めたところ、背景色に応じた見やすい文字色を求めるには WCAG 2.0 を利用するのが良いことがわかった。 背景色に応じて見やすい文字色を求める 元…

  • Swiftで 背景色に応じた見やすい文字色を求める

    ユーザーがタグ色を選択できるプロダクトの場合、ユーザーが決めた色の上にテキストを配置しなければいけない。たとえば、下図の GitHub のタグのような場合である。 背景色に応じて、視認しやすいテキストカラーが利用されていることがわかる。 enhancement の背景色は #b5f0f2 で、テキスト色は黒色 task の背景色は #2b76db で、テキスト色は白色 当初は YCbCr や HSV の輝度を使って判断しようと考えていたが、調査を進めたところ、背景色に応じた見やすい文字色を求めるには WCAG 2.0 を利用するのが良いことがわかった。 背景色に応じて見やすい文字色を求める 元…

  • AIによる画像生成サービス「DALL·E」を使って可愛い初音ミクのイラストを無限に生成しよう! #dalle2

    テキストを入力するとそれに沿った内容の画像を AI が出力してくれるサービスが流行っている。今回紹介する「DALL·E」や Discord 上で展開する「Midjourney」などである。 「Midjourney」は Discord のコマンドを入力して使うのだが、前提となる Discord の使い方がよくわからず利用を諦めた。「DALL·E」は登録方法も使い方も既存のWebサービスと同じなのでこっちを使うことにした。招待されるのを待つ必要があるが、ウェイティングリストに登録してから 2日後 には招待されたのでそこまで苦でもないだろう。 DALL·E の登録方法 DALL·E の使い方 AI …

  • 今年の猛暑を乗り切れる気がしなかったのでエコスクリーンを使って遮光・断熱対策をした!

    さくさんはエアコンが好きではないので我慢できる限りエアコンは使わないのだが、今年は6月にも関わらず急激に暑くなり耐えきれずエアコンを入れている。6月に猛暑日が続くのは観測史上初のようでニュースになっていた。 午前11時20分現在、東京都練馬区で35・6度を観測し、都内では3日連続で猛暑日(最高気温35度以上)となった。気象庁は熱中症への注意を呼び掛けている。東京で3日連続猛暑日、熱中症に警戒を 埼玉・熊谷で38度の予想 毎日新聞 先日購入したSwitchBotの温度計プラスが届いたので仕事部屋の机に設置したところ、エアコンを入れているのに 30度近くあった。窓を閉め切っている分風が入ること…

  • Prime Day 2022 セールで買ったもの

    毎年夏の時期になると Prime Day という Amazon プライム会員限定のセールがある。去年はオリンピックとの兼ね合いがあり 6月末に開催されていたが、今年はいつも通りの7月中旬に開催される。 Prime Day セールは Amazon製デバイスの在庫処分的な側面が強く、1世代前のAmazon FireタブレットやKindleダブレット、Echo Dotが安く購入できる。我が家では Fire TVスティック、Fire HD 8、Echo Showなど一通り新調済みのため、今年はAmazonデバイスは購入しない。 現在使っている日立製ドライヤーが大阪時代から使っていた2010年製で最近温…

  • アトラスアーリーサマーセールで 3DS版「デビルサマナー ソウルハッカーズ」「デビルサバイバー」を買ったよ

    2022年6月22日〜7月6日まで「アトラスアーリーサマーセール」が開催されている。 以前からことあるごとに「ニンテンドーeショップ がクローズされるのでアトラスセールしてくれ!!!」と言い続けてきたが、実際にはセールをしてるのに気付かず最終日の前日に気付く有様である。ゴールデンウィーク中に現金がなかったのもあって、マイニンテンドー残高を追加できないままセールを迎えてしまった。アンテナが低すぎるのである…… アトラスアーリーサマーセール、残り期間がわずかとなってまいりました。7/6(水)までですので、お見逃しなく!詳しくは⇒ https://t.co/57s0NMFWE7 https://t.…

  • flutter で go_router を使って画面遷移する

    flutter での画面遷移に躓いたので「flutterでの画面遷移方法がわからない」で色々試した。画面遷移ライブラリはたくさんあるようだが、現状では go_router についての情報が一番多かったので、右に倣えで私も go_router を使うことにした。 go_router のインストール 画面を定義する ホーム画面から詳細画面へ遷移する ホーム画面から設定画面へ遷移する 設定画面から詳細画面へ遷移する go_router のインストール pubspec.yaml に go_router を追加した。バージョン情報には何を指定すれば良いのかわからないので「go_router Flut…

  • SwitchBot温度計プラスを買った

    ハムスターが寝室にいるため、暑くなってくると24時間エアコンを効かせている。犬はエアコンが嫌いなのか玄関でよく寝そべっている。少し前の健康診断で脱水気味を指摘されているので熱中症が怖い。玄関にもSwitchBot温度計を置いて、玄関の室温を管理するべく SwitchBot 温度計プラスを購入した。 現在開催中の Amazon タイムセールで2000円になっていた。もっと安くなるであろうプライムデーセールまで待ちたかったが、今日から夏日が続きそうなのでこの値段で購入することにした。 SwitchBot 温湿度計プラス Alexa 温度計 湿度計 - スイッチボット スマホで温度湿度管理 デジタル…

  • AWS S3 と CloudFront のデータ転送はどっちのが高いのか?

    AWS S3(Simple Storage Service) と CloudFront のデータ転送(アウト)の料金比較をおこなった。 2022/06/03時点の料金で、すべて東京リージョンと日本国内からのアクセスを想定している。また1ドルは130円で換算している。 S3とCloudFrontのデータ転送料金 とあるアプリでは、ファイルをS3にアップロードしてからダウンロードする。 アップロードしたファイルをS3から直接ダウンロードした方が良いのか、またはCloudFront経由でダウンロードした方が良いのか。セキュリティ面やダウンロード速度の面からではなく単純にどちらの方がコストが抑えられる…

  • フォートナイト チャプター3 シーズン2 所感

    去年の秋のアップデートでフォートナイトの「クエストシステム」が大幅に変わってしまいつまらなくなった。それ以来ずっと遊んでいなかったが、久しぶりに今シーズンのチャプター3シーズン2*1ではフォートナイトを遊び尽くした。システム面では、今シーズンより「ダッシュ」と「よじ登り」が実装された。いままでは建築1枚分の高さがあるとジャンプでは乗り越えられず階段を作る必要があった。よじ登りのおかげで建築なしで越えられるようになった。 ……というか金色のエリサが欲しくてレベル184まで必死に上げた。 シーズンクエストが残っていることを考えると、来週にはレベル200まで到達できそうだ。 C3S2はとにかくレベル…

  • マイプロテインが高くなったのでエクスプロージョンに切り替えた

    プロテインを飲み始めた当初は味にこだわっていたが最近では雑に飲むようになってきたので、タンパク質が入っていて安ければそれだけで嬉しい。マイプロテインは「遅い・安い・美味い」と評価が高い。ひとときは1kgあたり1,500円だったというので驚きだ。国内業者で買うよりもダントツに安い価格だ。 2020年頃からコロナ禍による巣篭もりで自宅トレーニング勢が増え世界中でのプロテイン需要が高まり、さらには2021年には中国の養豚での需要が高まったためプロテインパウダーの原価が徐々に上がっていっていた。2022年2月ロシアのウクライナ侵攻が始まると円安になってしまいそれに伴う値上げが続いている。円安傾向も落ち…

  • iOS/macOSでFFmpegを使ってh264エンコードすると画質が悪くなる問題 (h264_videotoolbox vs libx264)

    iOSアプリにtanersener/ffmpeg-kitを組み込んで、iPhoneで録画した動画をffmpegを使ってh264エンコードするとどの動画にもノイズが入る問題が発生した。macOS上で同じ動画をエンコードした場合にはノイズが乗らない。なぜノイズの有無が発生してしまうのか? この差異を認識するのに随分時間をかけてしまった。 結論としてはffmpegで使われるエンコーダーが異なるのが原因である。iOSアプリ上ではApple社が実装したコーデックの h264_videotoolbox が使われ、macOS上では libx264 が使われる。h264_videotoolboxはハードウェア…

  • macOSで KMMのスケルトンプロジェクトの iosApp のビルドが通らない

    macOSで Kotlin Multiplatform Mobile(KMM) のスケルトンプロジェクトの iosApp のビルドが通らない。M1 MacだからなのかmacOSだからなのかはわからない。 KMM の iosApp のビルドができない androidAppは問題なくビルドして、Androidエミュレータで実行できることを確認した。 * What went wrong: An exception occurred applying plugin request [id: 'com.android.application'] > Failed to apply plugin 'com…

  • 機龍警察に登場する機甲兵装のまとめ

    機龍警察シリーズは知っていたけれど今まで読む機会がなかった。積んでいた「大日本帝国の銀河」「銀河英雄伝説」と読んでしまい、他に読むものがなくなってしまったのでたまたま目にした『機龍警察』を読んだところハマってしまい現在1日1巻ずつ読んでいる。『未亡旅団』も1日で読み切ってしまうくらいである。480ページでも小説なら1日で読めてしまうくらい面白い。誰だよ「パトレイバーの二番煎じ」って言ったの、全然明るいポイントがないぞ、ひたすら陰惨なんだがこの作品。 機龍警察〔完全版〕 (ハヤカワ文庫JA)作者:月村 了衛早川書房Amazon 機龍警察の世界はほぼ現実に沿った世界であるが「機甲兵装」という虚構を…

  • VNRecognizeTextRequestを使って画像からテキストを取得する

    iOS 13から画像から顔認識やバーコード、テキスト認識する Vision.framework が実装された。本記事では VNRecognizeTextRequest を使って画像からテキスト(String)を抽出する方法を紹介する。このクラスでは Convert Image to String をおこなう。 よく似たクラス名の VNDetectTextRectanglesRequest はテキスト領域の矩形情報を得るために使用する。これはOCRに掛ける前段階で使うと良さそうだ。VNDetectTextRectanglesRequest ではテキストを抽出できないので注意したい。 VNReco…

  • Xcode 13.3でアプリバイナリのexportに失敗する問題

    昨日、App StoreにてXcode 13.3がリリースされた。早速アップデートしたところ、Bitriseにて特定のアプリで下記のようなエラーが発生した。コンパイル自体は問題なくその後のアーカイブの段階で失敗している。 error: exportArchive: ipatool failed with an exception: #<CmdSpec::NonZeroExitException: $ /Applications/Xcode-13.3.Release.Candidate.app/Contents/Developer/usr/bin/python3 /Applications/Xc…

  • 椅子を買い替えた。Dowinx社のゲーミングチェア LS-6668 を購入した

    上京時に買ったオフィスチェアのクッションがヘタってしまいお尻に金具が当たってしまうようになった。クッションを敷いたりして誤魔化していたが限界を感じたので新しい椅子を買うことにした。 いままで使っていたのはよくあるこのタイプの椅子。あくまでもイメージで使っていたのはニトリ製かIKEA製のものだ。 KERDOM 椅子 テレワーク オフィスチェア 疲れない デスクチェア 椅子 パソコン ワークチェア デスクチェア おしゃれ 勉強 学習 ブラック KD933-BlackKERDOMAmazon 腰当てがないので長時間座っていると腰が痛くなってしまう。2018年1月にランバーサポートを買ったが残念ながら…

  • リングフィットを始めて6ヶ月経ったけど負荷が足りないので腹筋ローラーも始めた

    1週間くらいで辞めると思っていたリングフィットもなんだかんだで習慣化できている。リングフィットを始めてから6ヶ月も経過したので最近のできごとをまとめた。 前回書いた記事にはリストウェイトとアンクルウェイトを導入した話を書いた。当初は片腕にリストウェイト500gを着けていたのを1kgのものに変更した。リストウェイトを着け始めて2ヶ月が経ったので1kgでも物足りなくなってきた。そろそろ2kgにアップデートするか悩んでいる。 腕と足にはウェイトがついたので負荷が増えたが、腹筋に対しては負荷が増えていないので腹筋ローラーも始めた。リングフィットが終わってから膝コロをやっている。あまりやりすぎると腰を痛…

  • SwitchBot 屋内カメラに挿した64GBのmicroSDカードがなぜか190MBしか認識されない

    ハムスターの監視に「SwitchBot 屋内カメラ」を使っている。以下、屋内カメラと記す。 【Works with Alexa認定】SwitchBot 防犯カメラ スイッチボット 監視カメラ Alexa 屋内 カメラ ネットワークカメラ ペットカメラ ベビーモニター スマートホーム 双方向音声会話 遠隔確認 取付簡単 防犯対策 小型 見守りカメラ セキュリティスイッチボット(SwitchBot)Amazon 我が家ではハムスターのゲージの天板にカメラを設置してケージ内全体を見下ろしている。ハムスターは夜行性のため深夜から早朝の動き回っている姿が可愛らしい。SwitchBot 屋内カメラはハムス…

  • サイレントホイール21がうるさい!家具職人が作ったホイールスタンド「ハムタワー21」を買って回転音を無音化した話

    現在、我が家ではキンクマハムスター用の回し車として、SANKO(三晃商会)のサイレントホイール フラット21 (以下、フラット21と記す)を使っている。通算で5台目のサイレントホイールだ。 SANKO U44 サイレントホイール フラット21SANKOAmazon サイレントホイールは人間が手で回転させると無音だが、ハムスターが全力疾走すると横の回転だけでなく前後にも軸がぶれてしまうのでかなり大きな音が鳴ってしまい正直めちゃくちゃうるさい。「手作り家具コロール」の「ハムタワー21」を買ったので、そのレビューを兼ねて購入に至るまでの経緯を書き残しておく。 ハムスターの回し車はSANKOのサイレン…

  • UIImagePickerControllerを使って写真.appで編集済みの動画を選択しても編集前のオリジナル動画が使われてしまう

    動画のアップロード機能を実装していると、iOS標準の写真.appでクリッピングやトリミングしている編集済みの動画を選択した場合に、編集しているにもかかわらず編集前のオリジナル動画がアップロードされてしまう現象に気が付いた。 動画を選択するのに UIImagePickerController を使っている。未編集の動画を選択した場合とクリッピングした動画を選択した場合で違いがあるのかについて調査した。 結論から書くとUIImagePickerControllerは関係なく、PHAssetからAVAssetを取り出す際のPHVideoRequestOptionsの指定方法に誤りがあることがわかった…

  • UIImagePickerControllerを使って動画を録画しようとすると __TCCAccessRequest_block_invoke でクラッシュしてしまう

    プロフィール画像などの静止画の撮影にUIImagePickerControllerを使うことはよくあり、UIImagePickerControllerを使って動画の録画ができることも知っていた。iOSアプリ開発に携わって11年ちょっと経つが、いままでUIImagePickerControllerを使って動画録画したことがなかった。 簡単に実装できると思っていたので下記のコードを書いた。 let vc = UIImagePickerController() vc.delegate = self vc.sourceType = .camera vc.mediaTypes = [ "public.m…

  • macOSにHomebrewを使ってpythonをインストールする

    久しぶりにpythonをいじることになったため、macOSにHomebrewを使ってpythonをインストールする。 環境情報 MacBook Pro(16インチ、2021) Apple M1 Pro macOS Monterey v12.1 Homebrew 3.3.9 macOSでアプリ開発をしている場合、おそらくすでにHomebrewがインストールされていると思う。もしHomebrewがインストールされていない場合には https://brew.sh/index_ja にしたがって事前にHomebrewをインストールしておくこと。 % brew --version Homebrew 3.…

  • リングフィットを始めて4ヶ月経ったら負荷が足りないのでリストウェイトとアンクルウェイトを導入した

    前回書いた記事では「ラスボスまでもう少し」だったが、あのあとすぐにラスボスを倒して、現在は2周目の世界でアドベンチャーしている。2周目ではドラゴやリングのセリフが変わっていて面白い。 負荷が足りないのでリストウェイトとアンクルウェイトを導入した リングフィットを始めた時には17だった運動強度も3ヶ月目にはMAXの30になった。リングフィットを始めた頃は腕が上がらなかったりプランクが終わった後にへばってたりしていたが、運動強度30のまま1ヶ月が経つと疲れなくなってきた。 筋トレとしては「低負荷で長く」よりも「高負荷で短く」の方が良いらしいので、負荷があまりかかっていない状態は好ましくない。本来で…

  • Swift Package Managerでマルチモジュール化しているアプリでCoreDataの.xcdatamodeldファイルが参照できない

    Swift Package Manager (以下SwiftPMと記す)を使ったマルチモジュール構造でアプリを作っている。CoreDataの定義ファイル(.xcdatamodeld)をアプリに持たせるのではなくSwiftPMのCoreモジュールに持たせるとうまく参照できずに以下のエラーが発生していた。 [error] error: Failed to load model named TweetAlbum CoreData: error: Failed to load model named TweetAlbum 注意:このプロジェクトではCoreDataの定義ファイルを TweetAlbum…

  • 2021年買ってよかったもの

    2021年の総評としては、前半はド短期案件で超忙しくて肉体的に疲労して、後半は仕様が常に変化する案件で精神的に疲労していた。12月に入ってからは親戚ガチャの失敗を肌で感じていた。厄年でもないのにとにかくしんどかったし救いもなかった。 本記事では2021年買ってよかったものを紹介していく。 2020年の年末にやっていた「ローカル路線バス乗り継ぎの旅」にハマったのもありテレビ関係の出費が目立った。 Raspberry Pi 4 Model B (4GB) ハイセンス 43E6G Synology DiskStation DS220j Anker Eufy RoboVac G30 Hybrid プロ…

  • macOSでJenkinsを起動させるまで

    macOSにJenkinsを入れるのはかなり大変で職人芸を駆使して対応していた記憶がある。2021年ではhomebrewを使ってインストールができた。 macOSの初期化+インストールディスクの作り方。一度稼働させたら基本的にアップデートさせないので今回はMontereyを使うことにした。 support.apple.com Jenkinsは基本的にこの2つのコマンドで起動するところまで持っていける。 brew install jenkins-lts brew services start jenkins-lts www.jenkins.io ただしこの状態ではローカルマシンからのみJenki…

  • xcframeworksに対応したRomeを使ってCarthageのキャッシュをS3にアップロードしてBitriseで超高速にビルドしよう! #bitrise #bitrisearticle

    CarthageのキャッシュをS3で共有できる「Rome」がxcframeworksに対応して帰ってきた!!この記事はiOS Advent Calendar 2021の12日目の記事です。 ライブラリを事前にビルドしておいてiOSアプリのビルド時間を短縮するプロダクトに「Carthage」がある。Carthageの成果物をローカル・またはS3のリモートでキャッシュしておいてBitriseなどのCIサービスでもビルド時間を短縮するプロダクトに「Rome」がある。どちらもポエニ戦争に由来する名称でCarthageもRomeもググラビリティが最悪である。 github.com 「Rome」のxcfr…

arrow_drop_down

ブログリーダー」を活用して、ch3coohさんをフォローしませんか?

ハンドル名
ch3coohさん
ブログタイトル
酢ろぐ!
フォロー
酢ろぐ!

にほんブログ村 カテゴリー一覧

商用