«
^
» comment Netlifyのビルドフローでは、submoduleをcloneせずビルドを進める事ができない。 https://answers.netlify.com/t/clone-repo-without-checking-out-submodules/4089 所要時間 約 1分
:
しむどん三度無視 2023/8/9 投稿
・
2023/8/9 更新 commentSymdon Blog
Pythonのsslモジュールを使ってSSL/TLS通信する
自己証明書を作成する openssl req -x509 -newkey rsa:2048 -nodes -keyout private.key -out cert.pem -days 365 サーバを実装する import ssl from socket import * context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER) context.load_cert_chain("./cert.pem", "./private.key") soc = socket() soc.bind(("localhost", 8181)) try: soc.listen(1) with context.wrap_socket(soc, server_side=True) as ssoc: while True: conn, addr = ssoc.accept() data = conn.recv(10) print(data) conn.close() finally: soc.close() クライアントを実装する import ssl from socket import * context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER) context.load_cert_chain("./cert.pem", "./private.key") soc = socket() soc.bind(("localhost", 8181)) try: soc.listen(1) with context.wrap_socket(soc, server_side=True) as ssoc: while True: conn, addr = ssoc.accept() data = conn.recv(10) print(data) conn.close() finally: soc.close() ワーニングは出るけれど、SSL/TLSでの通信ができる。
所要時間 約 1分 : しむどん三度無視
2023/8/7 投稿 ・ 2023/8/7 更新
comment
最近は、ChatGPTを公私で使っている人も多くなったと思う。ChatGPTの機能を他のツールから使うには幾つかの方法を考える事ができる。素直にWeb UIを使う。OpenAI APIを使う。Webkitを組み込んでWeb UIごと飲み込む。今回はOpenAI APIを使って、ChatGPTの機能を試す事にする。 実は以前、EmacsのELIZA実装であるdoctorをChatGPTに対応させた。あれからま ...
所要時間 約 14分 : しむどん三度無視
2023/8/5 投稿 ・ 2023/8/6 更新
emacs lisp
Emacsはテキストエディタの1種で、以前はViに並んで一時代を築いていた。現在はVisutal Studio Codeに押され、NeoVimに押され、その他のIDEに押され、一時期の勢いはないように感じる。しかし、まだまだ根強い人気があり開発も活発だ。最近ではEmacs 28がリリースされた。しばらく前からEmacsはWebkitを飲み込んだため、ブラウザとして完全なるWebブラウザとしても使用できるようになっ ...
所要時間 約 13分 : しむどん三度無視
2020/10/11 投稿 ・ 2023/8/4 更新
comment
Pythonのログ出力は、デフォルトでは1つのログが複数行に渡って出力される。これはターミナル上で手動で実行する場合は見易いが、ログ収集のシステムと連携してしようとすると各行が1つのログとして扱われてしまう。これはログの集計の結果にも影響を与えてしまうし、なにより検索しにくくなってしまう。そのため、PythonのloggerのフォーマッターをJSON形式用のフォーマッターに差し替えて使う。stru ...
所要時間 約 2分 : しむどん三度無視
2023/8/4 投稿 ・ 2023/8/4 更新
comment
Emacsには xwidget-webkit という機能がある。これは端的にいうとWebブラウザの機能で、Emacsのバッファ上にWebブラウザを配置できる。EmacsのWebブラウザは他にも eww などあるけれど、こちらはどちらかというテキストベースのWebブラウザで、JavaScriptエンジンもないし、レンダリングエンジンも自前の独自実装だったりする。 xwidget-webkit は webkit と名前に入っている通り、 Webkit をEmacsのバッファに Xwidget として組み込む。そ ...
所要時間 約 6分 : しむどん三度無視
2023/8/4 投稿 ・ 2023/8/4 更新
comment
フロントエンドを実装する時、webpack(およびwebpack-dev-server)や、それと同様の機能をもつツールを使って実装を進める事が多い。リアルタイムでブラウザが切り替わり確かに便利だけれど、本当にそれって必要なのかとも思う。確かにTypeScriptを使っていたり、ReactやVueなどを使っている場合には、トランンスパイルをする必要があるから、この手のツールは必要になる。SaSSを ...
所要時間 約 2分 : しむどん三度無視
2023/7/31 投稿 ・ 2023/8/3 更新
comment[WIP]
画像の統合 SVGファイルを統合していこうと思ったが、これが結構難しかった。そこでSVGファイルをPNGに変換し、そのPNGファイルを統合する事にした。 SVGからPNGを生成する まずSVGファイルからPNGファイルを生成する。 magick convert testing1.svg testing1.png もう1つの画像も同じように行う。 magick convert testing2.svg testing2.png testing1.pngとtesting2.pngを生成できた。 2つのPNGを統合し1つのPNGを生成する magick convert +append testing1.png testing2.png merged.png 画像をアク ...
所要時間 約 3分 : しむどん三度無視
2023/8/1 投稿 ・ 2023/8/3 更新
cmake homebrew
CMakeを使っていた所、CMakeのバージョンが原因でGLEWを検索できない問題に出会った。こういう出会いは大切にしたい。そこでCMakeについて考える事にした。 WebでアクセスできるCMakeの情報をざっくりまとめる CMakeはビルド自動化のためのツールであり、様々な所で使用されている。CMake自体については、公式のWebページ1やWikipedia2を読む方が良いため、ここで詳しくは触れな ...
所要時間 約 10分 : しむどん三度無視
2023/3/11 投稿 ・ 2023/8/3 更新
comment
RDS落とし忘れてAWSから高額請求のメール来た。これが不幸の手紙ってやつか。
所要時間 約 1分 : しむどん三度無視
2023/8/3 投稿 ・ 2023/8/3 更新
comment
hugoで記事を書いていると書きかけのファイルが結構できるようになった。"書きかけの" の状態には、1つは書きかけだけれど公開してしまうもの、もう1つは公開しないものの2種類があった。公開しないものはページ属性のDRAFTをtrueにしてあり、書きかけだけれど公開してしまうものはDRAFTを設定しない代わりにWIP属性をtrueにしている。WIP属性はhugoとは関係なくて勝手にペー ...
所要時間 約 5分 : しむどん三度無視
2023/7/30 投稿 ・ 2023/7/30 更新
comment
今日も本当に頑張った。力を尽せたと思う。欲しい物を手に入れるために、全てのエネルギーを投入していたい。そしてそう出来たと思う。心残りはあるけれど、今日はもう諦める。
所要時間 約 1分 : しむどん三度無視
2023/7/29 投稿 ・ 2023/7/29 更新
comment
少し休んだから、ちょっとだけ頑張れそう。最近、こういう日が多いように思う。篩い落されないように力を尽して、準備を進めよう。
所要時間 約 1分 : しむどん三度無視
2023/7/29 投稿 ・ 2023/7/29 更新
comment
なんだか疲れてしまって、もうライフは0になったも知れない。
所要時間 約 1分 : しむどん三度無視
2023/7/29 投稿 ・ 2023/7/29 更新
comment
持ち物が多すぎて、3日に一度は必ず何かを忘れて出掛けてしまう。
所要時間 約 1分 : しむどん三度無視
2023/7/29 投稿 ・ 2023/7/29 更新
comment
「ユニコーンが虹の橋を渡って無料のアイスクリームを配る」というくだり、好きだな。そういうのを目指したい気がする。
所要時間 約 1分 : しむどん三度無視
2023/7/29 投稿 ・ 2023/7/29 更新
comment
https://qiita.com/kon-sato/items/ef7eb497b6154de909b9 と同じ問題に遭遇した。この記事では解決策としてバージョンを落として書いてあるけれど、これは問題を踏むバージョンを使わないようにしている。これ自体は悪い事ではない。 ログを見ると pkg-config でパッケージが探せていない事によりエラーしている事が分かる。なぜ pkg-config でパッケージが探せなくなったのか、今まで探していたのかどうか、このあたりの事情は分からない。 pkg-configはPKG_CONFIG_PATHを指定する事 ...
所要時間 約 1分 : しむどん三度無視
2023/7/28 投稿 ・ 2023/7/28 更新
comment
Emacsは様々な事を行えるけれど、本来はテキストエディタであって、ファイルを画面に表示し、ファイルのデータを書き換える事が役目だったりする。文字の表示にはフォントのデータを使用する。当たり前の事と言えば当たり前の事だ。他のテキストエディタも、他のツールでもフォントを使用する。 しかしEmacsではフォントの変更ですらハマり込む事がある。他のツールでは、こんな所で躓く事は普通はない。この原因はどこに ...
所要時間 約 7分 : しむどん三度無視
2023/7/21 投稿 ・ 2023/7/28 更新
comment
TLSの処理を自分で実装する事はまあない。世の中に良い実装が沢山あって、それ以上のものを作れる事なんてそうそうない。そういった実装を使う時、その実装の事や使い方について、それなりに知っておく必要がある。製品として提供するような機能であれば、そういった作りを学んで利用していく方がクオリティもコスパも良い。自分が使うための、ちょっとした機能を実装したいと思った時、そこまでできるかと言われると、そうでな ...
所要時間 約 2分 : しむどん三度無視
2023/7/27 投稿 ・ 2023/7/27 更新
comment
そんな事をさっとやりたいと思った。 標準入力からデータを取得し、QRコードを生成した後、ターミナルエミュレータ上にそれを表示する。 qr.py import sys import qrcode data = sys.stdin.read().strip() qr = qrcode.QRCode( version=1, error_correction=qrcode.constants.ERROR_CORRECT_L, box_size=1, border=4, ) qr.add_data(data) qr.make(fit=True) print("\033[H\033[J") # 画面をクリア qr.print_tty() 自分自身のIPアドレスを取得し、先のスクリプトに引き渡す。 main.sh echo "http://`ipconfig getifaddr en0`:8000" | python qr.py main.sh を実行するとQRコードが表示される。それを読み取れば良い。 概ねChatGPTで生成した。その後ちょっとだけ手直しした。
所要時間 約 1分 : しむどん三度無視
2023/7/26 投稿 ・ 2023/7/26 更新
comment
今日はもう終わりにしよう。
所要時間 約 1分 : しむどん三度無視
2023/7/24 投稿 ・ 2023/7/24 更新
github gh
Githubは幾つかの機能をCLIから利用できるように、Github CLIというツールを提供している。Emacsは外部の機能と強調する事を前提としている節があるため、こういう機能があるとEmacs自身にとても組み込みやすく高感度が高い。今回は、Github CLIを使ってみる。 Github Issue Github Issueはバグトラッカーやチケットといった機能を提供する。課題管理などを行う事を想定している。私が関わっているプロジ ...
所要時間 約 6分 : しむどん三度無視
2021/4/14 投稿 ・ 2023/7/24 更新
comment
焦らず1つずつやろう
所要時間 約 1分 : しむどん三度無視
2023/7/24 投稿 ・ 2023/7/24 更新
comment
決算が終わった。昨年度は今までで一番頑張った年になった。頑張ってよかった。褒めてもらえるかと思ったけれど「足元をすくわれないように」とのお言葉を頂いた。実際にそうだと思う。体調は相変わらず一進一退を繰り返しているけれど、落ち着いて目の前の事に全力で取り組もうと思う。良い姿勢を続けられようにしたいと思った。そして、今年度もいっぱい働こうと思う。
所要時間 約 1分 : しむどん三度無視
2023/7/18 投稿 ・ 2023/7/18 更新
comment[WIP]
プログラム等のテキストを表示する際、白い背景に黒い文字で全て表示されていると、どの部分が、どんな意味を持っているのかを、目で見て判断する事は難しい。シンプルなプログラムであれば難しくないものも、中規模や大規模のソフトウェアである場合や、複雑なアルゴリズムが組み込まれている場合には、テキストの理解やエラーの発見が難しくなる。そのため、プログラムの見やすさを向上させるために、プログラムの構文や意味に基 ...
所要時間 約 3分 : しむどん三度無視
2023/7/15 投稿 ・ 2023/7/15 更新
comment
ようやく動けそうだ。ひさしぶりに寝込んだ
所要時間 約 1分 : しむどん三度無視
2023/7/14 投稿 ・ 2023/7/14 更新
location
Latitude: 35.688426556029945 Longitude: 139.70068242240288
所要時間 約 1分 : しむどん三度無視
2023/7/9 投稿 ・ 2023/7/9 更新
comment
新宿にいる。 Latitude: 35.68801815778751 Longitude: 139.70023530354055
所要時間 約 1分 : しむどん三度無視
2023/7/9 投稿 ・ 2023/7/9 更新
comment
今日、無限にterraformしてた。昨日もだけれど。いつになったらテラをフォームできるのだろうか。というかこの手の作業、時間かかる。
所要時間 約 1分 : しむどん三度無視
2023/7/8 投稿 ・ 2023/7/8 更新
comment
IaCをちまちまやりたい訳じゃなくて、現行の構成をダンプする事と、ダンプしたデータから構成を再生成するという事を、公式がサポートしている方法でやりたいだけなんだと思う。決してTerraformを使用したい訳じゃないし、tfファイルやモジュールについて知りたい訳じゃない。それができないから、各種ツールが作られているのだとは思うし、それをほぼ実現できる Terraform や Terraformer はとても素晴らしいツールなんだけれど、ツール ...
所要時間 約 1分 : しむどん三度無視
2023/7/8 投稿 ・ 2023/7/8 更新
comment
久し振りに東京駅に来たな Latitude: 35.679729586017544 Longitude: 139.7707017671585
所要時間 約 1分 : しむどん三度無視
2023/7/8 投稿 ・ 2023/7/8 更新
comment
IAMについて考えを整理した。 IAMユーザとは、それが誰なのか IAMロールとは、なんという役割なのか IAMポリシーとは、何ができるのか について宣言しているという把握をした。
所要時間 約 1分 : しむどん三度無視
2023/7/8 投稿 ・ 2023/7/8 更新
comment
クラウドのリソースを最初からTerraformのような構成管理ツールを使って構築していくのは結構難しい。必要なリソースが何なのかもわからないし、構成自体を試行錯誤していきたいのに、その都度構成管理のファイルを修正し適応するとなると、構成管理ツールでの記述方法を調べる必要もあったり、時には使いたい機能がサポートされていなかったりする。最初の構成は手動で作成し、その後構成管理のファイルとして出力し、そ ...
所要時間 約 4分 : しむどん三度無視
2023/7/6 投稿 ・ 2023/7/7 更新
comment[WIP]
adb adb devices -l List of devices attached XX000XX0X device usb:000000000X product:XX-00X model:XX_00X device:XX-00X transport_id:1 デバイスの一覧を表示する adb tcpip 5555 adb connect 5555 restarting in TCP mode port: 5555 デバイスの一覧を表示する adb connect 192.168.242.214 デバイスの一覧を表示する adb shell "am start -a android.intent.action.VIEW -d 'wifi:'" QRコード表示 APK AndroidのアプリケーションはAPKという形式で作られる。これはZIP形式でアーカイブ+圧縮されたファイルである。内部では決められた規則に従ってファイルが配置されている1。JavaのJarファイル2が元になっているため、とても良く似 ...
所要時間 約 1分 : しむどん三度無視
2023/5/6 投稿 ・ 2023/7/7 更新
comment
七夕なのでEmacsをビルド仕直した。
所要時間 約 1分 : しむどん三度無視
2023/7/7 投稿 ・ 2023/7/7 更新
orgmode emacs
org-modeは #+INCLUDE: を使うことで外部のファイルの内容を取り込む事ができる。今回はこの機能の色々な指定方法を試す。展開される 基本的な使い方 ブロック種別を指定する example export src それ以外 コンテンツフォーマットを指定する 一部分をインクルード 行番号指定 名前を指定 見出しを指定 見出しの中身を指定 org-modeとINCLUDEとorg-export まとめ 参考 基本的な使い方 先頭の引数には取り組むファイルへのパスを指定する ...
所要時間 約 4分 : しむどん三度無視
2020/11/14 投稿 ・ 2023/7/7 更新
comment
記事にコメントを付ける方法を考えてみる。動的なサーバーを使用したり、又はSaaSを利用すれば特に難しい事はない。ただ今回はそういう事ではなく、これらの記述自体を静的なファイルとして保持し、Gitで管理する事を考えようと思う。=org-mode= には外部文書の取り込み機能があるため、それらを上手く利用できれば良い。文書の変換にはHugoを使用しているので、go-orgを使う事を前提として実施した。た ...
所要時間 約 2分 : しむどん三度無視
2023/7/7 投稿 ・ 2023/7/7 更新
comment
特にこの土日はAWSばかり触っていた。だいたい、こういう作業は時間がかかる。
所要時間 約 1分 : しむどん三度無視
2023/7/2 投稿 ・ 2023/7/2 更新
comment
仕事以外の事はできるだけ考えないようにしないと、周りに追い付いていけない。
所要時間 約 1分 : しむどん三度無視
2023/7/2 投稿 ・ 2023/7/2 更新
comment
もう20年ほど前に書かれたバッドノウハウと「奥が深い症候群」という技術エッセイがある。私はこの文章がとても好きだ。Emacsユーザーの私にとっては耳の痛い話でもあるし、同時にいろいろと考える機会を与えてくれる。この文章を読むと「バッドノウハウ」というなんだか怖い情報があって、それを有り難がったりする事にちょっとした恐怖を覚える。また「奥が深い症候群」という、これまたなんだか怖い病があって、罹患する ...
所要時間 約 4分 : しむどん三度無視
2023/6/25 投稿 ・ 2023/6/25 更新
comment
まだやらなければいけない事があるから、もう少しだけ頑張ろうと思う
所要時間 約 1分 : しむどん三度無視
2023/6/25 投稿 ・ 2023/6/25 更新
lisp scheme gauche
私はEmacsユーザーでEmacs Lispを毎日のように書いている。Lispは好きな言語だと思っているけれど、実際にはCommon LispもSchemeもそれほど使う訳じゃない。Clojureは少しだけ使う。そんなにわかLisperだが、常々もっと知りたいとは思っている。今回はその一環としてSchemeでTCPエコーサーバーを実装する。 Lispは言語仕様が文書化されているものもあれば、されていない ...
所要時間 約 2分 : しむどん三度無視
2023/6/22 投稿 ・ 2023/6/25 更新
comment[WIP]
scskkdは、Lisp方言の一つであるSchemeで実装されたSKKサーバーだ。Gauche上で動作する。最終リリースは2003.12.21のようなので、現在が2023年である事を考えると、20年前という事になる。今さらこんな古いものを引っ張り出す必要はないのかもしれないが、SKKサーバのScheme実装を探していて、これが手頃で丁度良かった。そもそもSKKを今さら使用するのは、どうなのかという ...
所要時間 約 2分 : しむどん三度無視
2023/6/24 投稿 ・ 2023/6/24 更新
dynamodb aws
所要時間 約 8分 : しむどん三度無視
2022/5/2 投稿 ・ 2023/6/24 更新
pandoc lua
最近は特に書籍に関連する仕事をさせて頂く事が多くなってきた。その中で記述した文書のチェックをする時、文を黙読するだけではなく音声読み上げ機能を使って正しい文章になっているかを確認している。モニターやスマホを使えない場所でも作業ができる為、とても効率的なチェック方法だ。また、おかしな表記になっている箇所は、おかしく読み上げてくれる為、問題のある箇所を発見しやすい。この方法をやっていない人はぜひ試して ...
所要時間 約 8分 : しむどん三度無視
2023/6/17 投稿 ・ 2023/6/21 更新
comment
日に日に難しい事を考えられなくなってる。簡単な事しか考えられない。
所要時間 約 1分 : しむどん三度無視
2023/6/21 投稿 ・ 2023/6/21 更新
comment
声をかけられて知らない人と2時間ぐらい話していた。普段と全く異なる話題で話したので良い気分転換になった。
所要時間 約 1分 : しむどん三度無視
2023/6/18 投稿 ・ 2023/6/18 更新
comment
誰かが遊んでいる間も努力を続けよう
所要時間 約 1分 : しむどん三度無視
2023/6/18 投稿 ・ 2023/6/18 更新
comment
picle化したデータは後方互換性が保証を保証しているのか。なるほど。 いっぽう pickle の直列化形式は、互換性のあるプロトコルを選ぶという条件のもとで Python リリース間の後方互換性が保証されます。また処理すべきデータが Python 2 と Python 3 の間で非互換な型を含む場合も、 pickle 化および非 pickle 化のコードはそのような互換性を破る言語の境界を適切に取り扱います。 https://docs.python.org/ja/3/library/pickle.html
所要時間 約 1分 : しむどん三度無視
2023/6/18 投稿 ・ 2023/6/18 更新
comment
このGitリポジトリの年毎のコミットの数を集計する事にした。 git log --oneline --date=format:%Y --pretty=format:%ad | sort | uniq -c 26 2012 208 2013 52 2014 52 2015 202 2016 439 2017 12 2018 196 2019 741 2020 1374 2021 3748 2022 2036 2023 このリポジトリを作成したのは、たしか2019年か2020年あたりだったはず。ただし管理しているリポジトリ数を削減する取り組みの一環で、古いリポジトリを履歴ごと git subtree で飲み込んでいるため、2012年や2013年のような太古の時代のコミットも含まれているため、それらが集計結果に ...
所要時間 約 1分 : しむどん三度無視
2023/6/18 投稿 ・ 2023/6/18 更新