Goで開発しないといけなくなりそうなのでGoの勉強をしている。 Goの開発をしようと思うと開発環境を作らないといけないがGoはコンパイル型言語なので環境の構築が面倒。 実際に開発する時にもやっぱり環境構築が必要になって、構築の説明とかするのがDev Con…
MCPサーバとクライアントを作ってみる 世の中にあるMCPサーバの作り方の記事を読んでも私の理解力が低すぎるからだと思うが、Claude Desktopとの連携だったりGoogle Colaboを使っていたりとかであんまり良く理解できなかったので、物凄くシンプルなものから…
FastAPIでPROXYのようなものが必要になったので作ってみたが、middlewareを使って簡単に作ることができた。 最初httpxの代わりにrequestsで作ったらレスポンスが返ってこないか、返ってきてもものすごく時間がかかってなんでかと考えたら非同期じゃなかった…
最近はすごく古いNode.jsのコードのメンテナンスが多くてすごく面倒…。 fetchにTimeoutを入れようと思ってAbortSignal.timeoutを使ったらnot definedになって使えず、 AbortController.signalを使ってもnot definedになって使えず、 npm installも禁止なので…
少し前からCLINEが気になっていたけど、触るのはもう少し先でも良いかなと考えいたが、最近CLINEの記事が多いので気になって触ってみた。 触ってみたのはRoo Code(CLINEの派生)の方。 利用するための準備はVS Codeを開いて以下の拡張機能をいれる。 その後使…
最近知ったのだけどpythonで使えるドキュメント指向が便利だった。 仕事で色々なAPIを叩いてデータのバックアップを取ったりログを取ったりするのだけど、データの量が多くないがAPIからのレスポンスがJSONでデータがネストされていたりするとcsvなどに変換…
Dev Container(Node.js + Redis セットアップ) 最近Node.jsとRedisの組み合わせが増えてきた。 来年も結構上記の組み合わせが増えるはず…。 非同期で定期実行される処理が複数あり、処理される順番が大事なのに非同期で処理されるのでとてもややこしい。 あ…
MongoDB 最近良くNode.jsのmongooseでMongoDBをよく使う。 aggregateってMongoDBだと使ったことがなかったので少し触ってみた。 aggregateはDjangoのaggregateと同様に何でもできそうな感じがある。 aggregateでデータ件数が多いデータを処理するときは最初…
ChatGPTのAdvance Voice Mode 先日ChatGPTのAdvance Voice Modeがリリースされてから、どんな感じなのか気になるので英語の勉強をするときによく使っている。 Egyptの英語の発音を聞いたらガイドライン違反になって、loseの発音を聞いたらガイドライン違反に…
セッションマネージャーを使ってssh リバースポートフォワードを行う PCからEC2はインターネット経由で接続可能だけど、EC2からPCにはFireWallがあるので接続できない環境で、EC2からPC内にあるHTTPサーバにアクセスしたくて、できて当然の構成だけど一応確…
ChatGPTで音声入力 ChatGPTにPCから音声入力できるChromeの拡張機能はあるが、あんまり使い勝手が良くなかったので、連休で暇だったので作ってみた。 初めて作ったのでどうやってデバッグするのかとか最初わからなくて困ったが、慣れると結構簡単に作れるこ…
uv 最近pythonで開発するときにはryeを使っていたがuvが便利になっていたのでuvに移行した。 docker containerでもuvを使いたいのでベースとなるDockerfileを作った。 仕事だとGitHub Actionsでpipenvを使って、個人的にとても使いづらいのでuvに置き換えた…
Docker outside of Docker(DooD) 普段dockerを使う時はホスト側からコマンドでコンテナを起動して、終わったらコンテナを削除するという使い方をしている。 けれども、開発したアプリケーションをdockerコンテナで動作させて、そのコンテナから別のコンテナ…
Whisper.app お盆で暇なので以前から個人的にやってみたいと思っていた音声認識をやってみた。 OpenAIのWhisperの認識精度が高いらしいので使ってみようかと思ったが、オープンソースのバージョンも有るというのを見つけたのでオープンソースの方で試してみ…
業務でHTMLのcanvasにリアルタイムで描画する処理を書いている。 今まで使ったことがなかったのでどうもまだ慣れない。 今週はお盆休みなので、時間が取れる間に慣れておこうかと思う。 古いプロジェクトのメンテなので使っているライブラリの情報が少ないの…
AWS Systems Manager Session Manager - AWS Systems Managerには同時接続数の限界はないと思っていた。 awsにEC2で十数個インスタンスを作って開発用PCからssm経由で接続、ssmでポートフォワードをしていたらいつの間にか上限を越したのかポートフォワード…
EventBridge経由でEC2を自動起動する 開発環境を整えるために最近AWSをよく使っています。個々の作業はそれほど時間がかからないものの、毎回実施するのが面倒です。そこで、少しずつ自動化を進めていきたいと思います。 同じような記事はたくさん見つかりま…
Cloud9にSSMを利用したSSH接続をVS CODEで利用する 前提条件 AWSのアカウントを持っている VS CODEにRemote Developmentをインストールしている Windows10を使っている 接続までの簡単な手順 AWS CLIとSession Manager プラグインのインストール IAMからアク…
RTSPで動画配信する テストでどうしてもRTSPのサーバが欲しかったのでGTP4oに依頼したら作ってくれた。 pythonのバージョンが低いのが気になるが3.12にしたら動かなくなってしまった…。 動画関係のGStreamer、FFmpegとか使い方が難しくてあまり触ったことが…
はてなブログ開発ブログ 技術者向けTips: はてなブログでMermaid記法を利用する方法 staff.hatenablog.com 設定方法は上記を見ればわかるので特に説明の必要もないぐらい簡単に導入できた。 Mermaidのサンプル sequenceDiagram participant Main participant…
当初やりたかったことができたので備忘録として上げておく。 これにpytestを組み込めば最低限のことはできるようになったが、書き方が未だによくかわからない…。 .github\workflows\docker-build-to-release.yml name: Build and Deploy of Docker container…
会社ではpipenvを使っていてRyeは使っていないが、個人でpythonを使うときはryeを使っている。 GitHub Actionsを使いっていて、Ryeを使おうとしたら色々失敗して困ったので備忘録としてGitHub ActionsでRyeを使えるようにするためのworkflowを記録しておく。…
リリース時に手動でコンテナのビルドをするのが面倒なので、GitHub Actionsを使ってdocker buildを行うこととなった。 意外と簡単にできたので、もっと早くやればよかった。 今後はCI/CDをやりたいのでpytestの自動化とか、ドキュメントの自動生成も組み込ん…
最近良く非同期処理を書く。 非同期処理を書くときはthreading.Threadをよく使っていたが、最近はasyncioも使うことがある。 asyncioはスレッドを作らなくても良くてイベントループにタスクを追加する?だけで良いので処理が軽いのがメリットかなと考えてい…
Microsoft Storeへの接続エラー サーバーでMicrosoft Storeへ接続しようとしたら以下のエラーが発生して接続できない問題が発生した。 これにはインターネットが必要です。(0x800704cf) 解決したコマンド コマンドプロンプトを管理者権限で開いて以下のコマ…
Devcontainerでpythonの実行環境を作る Devcontainerは便利そうだなと思いつつも手を出していなかったが、pythonのバージョンを色々切り替えて動かさないといけないものがあって不便だったのでDevcontainerに入門した。 構築した環境 python3 + rye + uvの最…
VSCodeのRemote Developmentで接続できなくなった 開発したコードの動作検証にUbuntu18.04を使っているハードウェアを使ってる。 時々上記のハードにVSCodeのRemote Developmentを使って接続していたが気付いたら接続できなくなっていたので、調査した。 同…
2024/01/09に受けたG検定に合格した。 わからない問題が多かったので落ちたかと思ったけれども、合格してよかった。 法律は苦手だという事がよくわかった。
MetalLBをKubernetesで使ってみる 環境 Ubuntu 22.04.3 LTS minikube version: v1.32.0 MetalLB Kubernetesはロードバランサーの機能を提供していないので、ローカルでServiceのtype: LoadBalancerとしてもEXTERNAL-IPが割当らずPending状態となってしまう。…
Kubernetesに入門 Kubernetesが楽しそうだったので以下の記事を見て入門した Kubernetes道場 Advent Calendar 2018 https://qiita.com/advent-calendar/2018/k8s-dojo:title よく使うコマンドを忘れないようにメモ とほほのKubernetes入門 https://www.tohoh…