まかない

好きなテレビ番組は『さわやか自然百景』です。https://makanai.fish/

まかない

好きなテレビ番組は『さわやか自然百景』です。https://makanai.fish/

マガジン

  • アプリのダウンロード数を通知するLINEボットを作ってみた話

    開発モチベの維持向上を目的に、日々のDL数を通知してくれるボットを作った記録です。GCPのCloud FunctionsとCloud Schedulerを使ってます。

最近の記事

自宅の電力使用量をかっこよく表示したい

ずっと爪噛み防止アプリの話をしてきたところに最近はルンバの稼働の最適化にうつつを抜かしていましたが、加えて更に別の話題でやってみたいことができたので、それを書きます。 なんか電力会社に申し込みすると、電力使用のデータをもらえるとのこと。たいした動機もないのですが、可視化して見えてくるものもありそうだなと思った(純粋に面白そう)ので申し込んでみることに。 こういうのシンプルにかっちょいいですよね。GPT先生と相談してばちばちにかっこいいUIを拵えてみたい。 なんかかっこい

    • Googleの「NotebookLM」を試す

      話題になっていたので触ってみました。というレベルですが、備忘のために残します。サイトはこちら。利用は無料でした。 ブックマーク代わりにリンクやらテキストやらファイルを放り込んでいくと、それを学習したAIとして対話してくれたりメモを作成してくれたりする優れものということです。 最初に下記の注意書きが出てきます。 UIは至ってシンプルですね。迷うことは何もないです。 Nailgrowの医療アプリとしての方向性を探りたいなと思い、その手の記事を溜めていたので、それをここに流

      • 自作プログラムに起因する清掃機器の不適切作動による同居人のオンライン会議への影響事案について【事案番号:2024-07-001】

        1. はじめに 2024年7月31日、筆者が自宅にて運用していた自作プログラムにより、清掃機器(ルンバ)が不適切に作動し、同居人のオンライン会議中に連続的な動作を引き起こす事象が発生しました。本報告書では、当該事案の経緯、原因、及び影響について詳細に記述するとともに、再発防止策を検討します。 2. 事案発生の経緯 事案は、筆者が開発したネットワーク監視プログラムがトリガーとなり、清掃機器がオンライン会議中に意図せず作動を繰り返したことで発生しました。以下に、事案発生まで

        • Raspberry Pi Zero Wを使って自宅のWi-Fiに接続している機器をスキャン。(後編)

          前回、無事にラズパイにsshで接続ができて、ここから実際にプログラムを移植していきます。 ローカルで作ったプログラムはnode.jsで用意したので、ラズパイにもnode.jsをインストールするところからスタート。 で、もらった手順に従って実行すると「Illegal instruction」と返ってくる。Illegal instructionエラーは、Node.jsのビルドがRaspberry Piの特定のアーキテクチャに対応していない場合に発生することがあるとのこと。

        自宅の電力使用量をかっこよく表示したい

        • Googleの「NotebookLM」を試す

        • 自作プログラムに起因する清掃機器の不適切作動による同居人のオンライン会議への影響事案について【事案番号:2024-07-001】

        • Raspberry Pi Zero Wを使って自宅のWi-Fiに接続している機器をスキャン。(後編)

        マガジン

        • アプリのダウンロード数を通知するLINEボットを作ってみた話
          16本

        記事

          Raspberry Pi Zero Wを使って自宅のWi-Fiに接続している機器をスキャン。(前編)

          余談また投稿の間隔が空いてしまった・・・書きたいことや下書きに記事のストックはあるのに、生活に余裕がないのが問題・・・もっと余裕のある大人になりたいのですが、、、くよくよしてても仕方がないので何度でも立ち上がります。 本編というわけで、我が家にお迎えしたRaspberry Pi Zero Wを使って自宅のWi-Fiに接続している機器をスキャンしたいと思います。 ただ、そもそもラズパイをちゃんと扱うこと自体が初めてなので、そこからですね・・ 下記の記事を参考にさせていただ

          Raspberry Pi Zero Wを使って自宅のWi-Fiに接続している機器をスキャン。(前編)

          自宅のWi-Fiに居住者全員のデバイスが接続しなくなったらWebhookを叩いてルンバを起動する。

          既にローカルで、ネットワークに接続している機器をスキャンする部分は以前に確認済みなので、 今回は、node.jsあたりで、ネットワーク接続状況を確認して、特定の機器が接続していなければ、Webhookを叩きに行くという処理を作ります。 もう完全に忘れてしまったな・・・と思って過去の日記を見に行く。 まず、プロジェクトのディレクトリを作成。 npm init コマンドでNode.jsプロジェクトを初期化→必要なパッケージ(arp-a)をインストールとのことで試すもエラー

          自宅のWi-Fiに居住者全員のデバイスが接続しなくなったらWebhookを叩いてルンバを起動する。

          IFTTTのWebhookを叩いてルンバに指示を出せるかを試す。

          やっていきます。まず、IFTTT。読み方はイフトだそうです。 右上のボタンからGet started。サインアップに成功すると次の画面が。 次の画面。目的はいかにということを聞かれている。 有料プランへの誘導画面が出る。しかしうまく画面遷移せず・・・ 結局、ログインした状態でトップ画面にランディング。一旦無料プランの状態です。 "なにしたら"→"なにする"を選択するかんじですね。わかりやす〜 ブラウザの問題かと思ってSafariで試したら無事に反応したので次の画面

          IFTTTのWebhookを叩いてルンバに指示を出せるかを試す。

          自宅のWi-Fiネットワークに接続している機器情報が知りたい

          たしか、ターミナルから調べられた記憶があったので、ググろうかとも思いましたが、GPT先生に聞いてみる。(情弱) 簡易的には下記で調べられるとのことだが、 arp -a "より詳細な情報を得るために、nmapコマンドを使用することもできます。nmapはネットワークスキャナーで、接続しているデバイスの詳細情報を取得することができます。"とのこと。 まずは、Homebrewを使用してnmapをインストール。 brew install nmap その上で、現在のネットワー

          自宅のWi-Fiネットワークに接続している機器情報が知りたい

          ルンバの掃除タイミングを最適化したい

          余談前回の更新が6日前、少し間が空いてしまいました。。。せっかく土日丸々あけていたのにだらけてしまい現時点でほとんど進捗もない。。。あ〜〜〜という感じでストレスが溜まりますが、なんとか自分の気分を乗せるためにもなんか興味関心のあるところから手をつけたいなと思います。 息抜きの息抜きにこのところずっと自分のアプリ開発の話ばかりでした。というか、その進捗管理のためにこのnoteを書いているので、その話しか話題はないのですが、、元々は仕事の息抜きにというか、余暇を充実させるために

          ルンバの掃除タイミングを最適化したい

          何も考えずにいたら開発どころではなくなってしまったので画面ごとに編集ファイルを分ける(main.dartをダイエットする話)

          現状がどんな感じかソースコード全文貼ってみようかと思ったのですが、なんの意味もないと思ったので割愛します。まあと言っても500行弱なので、大袈裟に騒ぎ立てるほどでもないのですが・・・ そんな初学者の質問力はこんな感じです。 結論としては、スクリーン(画面)、ウィジェット(コンポーネント)、モデル(データクラス)、サービス(ビジネスロジック)、状態管理、テーマ、ルーティング、ユーティリティあたりでわけるのが良きとのことです。 たしかに、再利用できるウィジェットとかデータモ

          何も考えずにいたら開発どころではなくなってしまったので画面ごとに編集ファイルを分ける(main.dartをダイエットする話)

          経過日数をカウントする処理を実装する話

          余談前々回の冒頭で書いた通り、個人的に開発のルーティンを保つために、とりあえず席に座ったらまず開発環境を開いて一回デプロイしてみたところ、Flutterの最新バージョンがリリースされたとのこと。 こういうのってほいほいアップグレードして大丈夫なのだろうか。まあ、だめならダウングレードすればいいか、と思ってあげてみました。余談終了。 経過日数のカウントに必要なこと正直、MVP版をこさえた時に、うじうじ書いたJSのコードが残っているには残っているのですが、まあ一からGPT先生

          経過日数をカウントする処理を実装する話

          エミュレーターの上でもアイコンをセットしておくとモチベが上がる。

          タイトルの通りです。今こんな感じなんですよ。 下記の記事を参考にさせていただきつつ、あとはGPT先生に補足してもらってという感じで、 無事に下記の通り設定できました!いや〜モチベ上がりますね〜! 結論これだけなのですが、一応いくつか手詰まりしたところもあったので、下記作業ログです。 手順1: アイコン画像の準備 アイコン画像の用意: アイコン画像を用意します。標準的なアプリアイコンのサイズは1024x1024ピクセルです。 手順2: Flutterプロジェクトにア

          エミュレーターの上でもアイコンをセットしておくとモチベが上がる。

          shared_preferencesを開発環境に追加してデータを保持してみる話

          余談これは個人的に開発のルーティンを保つための備忘メモですが、とりあえず席に座ったらまず開発環境を開いて一回デプロイすると気合が入っていいですね。 はじめにさて、やっぱり画面的な変化があるとすごくモチベーションにつながるわけですが、ここからはしばらく裏側の処理を作る話なので、目に見える成果は少なそうです。。 とはいえ、やっていくしかないので、計画を立てたとおり、まずはFlutterがどんな具合に裏側でデータを保持するのかを確認したいなと思います。 ちなみに、前回までの記

          shared_preferencesを開発環境に追加してデータを保持してみる話

          今後の開発計画というか抱負について

          前回の日記にて記載の通り、毎日何かしら手をつけるルーティンが浸透してきたので、具体的な実装に入る前に、一回今後のざっくり計画を見繕って書き出してみようかと思います。 ざっと想定している流れは下記です。 当面やりたいこと(7月中くらい?)shared_preferencesのプラグインを開発環境に追加してみる話 データ設計というと大げさだけど、MVP版も紐解きながら、いくつデータ項目が必要なのか決める話みたいなのが2回の日記に分けてできそうですね。 経過日数をカウントす

          今後の開発計画というか抱負について

          アプリのデータをローカルのどこに保持するか(Shared Preferencesの話)

          前回は、いよいよFlutterベースで開発しているアプリの画面と要素の配置が済んだので、処理を実装していくぞ!というところで、あれ?データはどこに格納したらいいのかな?というところで終わりました。 つきつめると、状態管理の設計にちゃんと時間を割いたほうがよさそうだぞ。という空気を感じてはいるのですが、状態管理については一旦目を背けます。(後で読む) 調べてみると、どうもShared Preferencesというプラグインを使うとそれに近いことができそう。GPT先生曰く「小

          アプリのデータをローカルのどこに保持するか(Shared Preferencesの話)

          Flutterでモックを作る(処理を実装)

          や、処理を実装したらもうモックじゃないでしょというツッコミはさておき・・・(最終的に実装まで辿り着かなかったのでタイトル詐欺です) 必要な処理はいくつあるか洗い出すとですね・・・ 目標日数を設定してスタートボタンを押下した日から次にボタンが押されるまでの日数のカウント処理。これが基本の処理。ようは日数カウントアプリなんですねえ。目標日数のデータと、経過日数のデータを保持する必要がある。 次に、「WINボタン」が押された時に経過日数を記録する処理。この時、もし経過日数が目

          Flutterでモックを作る(処理を実装)