TakesxiSximada

しむどん三度無視

しむどん三度無視

SNSとの関わりとこれからについて

ここ数年でネガティブな感情が増えた。最近特に、それも人間関係についてだ。 このブログは技術の内容がほとんどなので内容的には全くそぐわないかもしれないが、特に書くジ ...

+++  · 4 min read

しむどん三度無視

Event Bridgeを使う

...

+++  · 0 min read

しむどん三度無視

8086

16ビットマイクロプロセッサであるIntel 8086の各種レジスタと命令セットをまとめた。 レジスタ 汎用 Register value(H/L) 日本語 用途 AX (AH/AL) アキュムレータ 算術演算操作の結果が格納さ ...

+++  · 3 min read

しむどん三度無視

MySQLのテーブルのメールアドレスをマスクする

乱数を使ってメールアドレスをマスクする。 UPDATE testing_table SET email=CONCAT(RAND(), "@example.com") WHERE email <> "[email protected]"; [email protected] は除外した。 ...

+++  · 1 min read

しむどん三度無視

https://www.symdon.info への海外からのアクセスが増えてきた。 英語化したかいがあるし、とても嬉しい。

+++  · 1 min read

しむどん三度無視

ノイマン型コンピュータ

コンピュータについてのハードウェアのアーキテクチャの一つ。 特にプログラム内蔵方式のデジタルコンピュータで次のような構成を取るもの をノイマン型コンピュータという。 ...

+++  · 1 min read

しむどん三度無視

uvicornとasyncioとmultiprocessing

uvicornはPython製のWebアプリケーションサーバで非同期IOに対応している。 簡単なスクリプトを書いてその起動方法について考えてみる。 uvicornの ...

+++  · 3 min read

しむどん三度無視

各種RDBMSのDUALテーブルの扱い

DUALテーブルは1列のみのテーブルだ。 OracleではFROM句を省略できないため参照するテーブルがない場合 FROM DUAL のようにDUALテーブルを指定する。 このDUA ...

+++  · 1 min read

しむどん三度無視

今日は朝から4つもPull requestを作成してしまった。 とりあえず午前中の作業はここまで。

+++  · 1 min read

しむどん三度無視

技術的なアイディアをためておいてそのアイディアについて評価できるようにしたい。 ありがたいことに素振りしまくったから色んなものをさっと作れるようになったけれど その ...

+++  · 1 min read

しむどん三度無視

symdon.infoの多言語化の仕組みはある程度できてきた。 Python, PHPおよびGNU gettextをうまく使って翻訳ファイルの生成などはできるようになった。 足回り ...

+++  · 1 min read

しむどん三度無視

個人のWebサイトを多言語化する

symdon.infoのドメインを取得したのでそれに水を上げている。 とりあえず https://www.symdon.info を設置して自己紹介のWebサイトを作成した。 ここからどのように広げていこうか考え ...

+++  · 1 min read

しむどん三度無視

OGPを設定する

OGPの設定ができていないのでここを確認しながら調整を行う。 https://gotohayato.com/content/500/ 色々と試行錯誤して何をどのように設定すればよいのか理解してきたのでまとめておく。 OGP SNSなどで投稿 ...

+++  · 1 min read

しむどん三度無視

新しく個人用のサイトを作った

https://kenreitz.org/ のwebsiteを見ていたら個人用のサイトが欲しくなっ てきた。symdon.gaでも良かったのだがdomain自体を失効しいつ消滅するかわ からない代物であるの ...

+++  · 1 min read

しむどん三度無視

org-babel-load-fileで出力されるファイル名を指定したい

TL;DR Emacsの設定をOrg Modeで記述していたが、設定の変更でファイルを開くときにorg-babel-load-fileで出力されたファイルが選択の上部に表示 ...

+++  · 3 min read

しむどん三度無視

モードラインは本当に必要なのか

特に何の疑問も持たずデフォルトで表示されるからモードラインはそのままに してきた。モードラインは1行分の領域を消費する。これは本当に必要なんだ ろうか。いらない気が ...

+++  · 1 min read

しむどん三度無視

もう、無理かもしれない

+++  · 1 min read

しむどん三度無視

consに想いを馳せる

日曜日の朝なのでconsに考えを巡らせてみる。 シンプルなcons cell '("A" . "B") Addr Value Type Cell 1 65 char CELL1 2 3 CELL* CELL1 3 66 char CELL2 4 NULL CELL* CELL2 5 6 連結リスト '("A" "B" "C") '("A" . ("B" . ("C" . nil))) Addr Value Type Cell 1 65 char ...

+++  · 1 min read

しむどん三度無視

execute-extended-commandのコメントの翻訳

lisp/simple.el.gz:2124 Based on Fexecute_extended_command in keyboard.c of Emacs. Aaron S. Hawley <aaron.s.hawley(at)gmail.com> 2009-08-24 Emacsのkeyboard.cのFexecute_extended_commandに基づいています。 Read a command name, then read the arguments and call the command. To pass a prefix ...

+++  · 1 min read

しむどん三度無視

Vue + Vuex + TypescriptでFrontendを書く

Vue+Vuex+Typescriptの構成でfrontendを書くため現状の書き方をまとめておく。 ソースコード package.json { "name": "my-app", "scripts": { "dev": "nuxt", "build": "nuxt build", "generate": "nuxt generate", "fmt": "eslint --fix . --ext .js,.ts,.vue --ignore-path .gitignore", "test": "jest", ...

+++  · 2 min read

しむどん三度無視

[Go] 標準入力からorg-modeのデータを読み込みHTMLに変換し標準出力に出力する

https://symdon.ga/posts/1626346909/でgo-orgを用いてorg-modeをHTMLに変 換した。そこではファイルパスをコード内 ...

+++  · 1 min read

しむどん三度無視

emacs/src/keyboard.cのoverriding-local-mapの翻訳

Keymap that replaces (overrides) local keymaps. If this variable is non-nil, Emacs looks up key bindings in this keymap INSTEAD OF the keymap char property, minor mode maps, and the buffer's local map. Hence, the only active keymaps would be `overriding-terminal-local-map', this keymap, and `global-keymap', in order of precedence. emacs/src/keyboard.cのoverriding ...

+++  · 1 min read

しむどん三度無視

wakatimeのハートビートに設定するprojectをorg-clockのカレントタスクから取得する

取得する関数を定義する。 (defun waka-get-project () (interactive) (when org-clock-marker (with-current-buffer (marker-buffer org-clock-marker) (org-get-category)))) その関数をrestclientで利用する。 先程定義したwaka-get-projectで取得した値を restclie ...

+++  · 1 min read

しむどん三度無視

org-clockのカレントタスクを取得する

org-clock-current-taskで取得できる。これは現在clock-inしているタスクの テキスト属性付きの文字列である。 このタスクに設定されたカテゴ ...

+++  · 1 min read

しむどん三度無視

wakatimeのハートビートを手動で送信する

restclientを使ってwakatimeのハートビートの送信方法を確認確認した。 認証方法はBasic認証でAPIキーを用いる簡易な方法を用いた。 APIキーの ...

+++  · 2 min read

しむどん三度無視

強く孤独を感じるが、毎日全力を出し切れている。自分が果たすべき役割に集 中できているし、姿勢としては悪くない。仕事では満足の行く結果を得られて いる。このままこの状 ...

+++  · 1 min read

しむどん三度無視

companyのbackend

あらゆる入力に対し、foo bar bazの3つの候補を表示するシンプルなバックエンドを作成する。 (require 'cl-lib) (require 'company) (defvar company-foo-enable nil) (defvar company-foo-debug nil) (defun company-foo (command &optional arg &rest ignored) "`company-mode` completion backend for simple. Suggest foo, bar and baz. " (interactive (list 'interactive)) (when company-foo-debug (message "command=%s ...

+++  · 1 min read

しむどん三度無視

PXE Boot

...

+++  · 0 min read

しむどん三度無視

分割したOpenAPIのYAML形式のドキュメントをopenapi-coreを用いて読み込むことができるか?

openapi-coreで分割されたファイルを利用できるのかを確認したところできないことがわかった。 ...

+++  · 3 min read

しむどん三度無視

スタックとヒープ

ローカル変数はスタック領域に確保される。一方malloc()で確保したメモリは ヒープ領域に確保される。ヒープ領域に確保したメモリはfreeで開放する必要 がある。 ...

+++  · 1 min read

しむどん三度無視

hugoがどうやってorg-modeのファイルからHTMLを生成しているか?

hugoでorg-modeからHTMLへの変換に用いられているgo-orgを使って変換処理を行う。 ...

+++  · 1 min read

しむどん三度無視

リージョンのテキストをURL Encodeしてkill-ringバッファに保存する

(require 'url-util) (defun our-copy-region-url-encode () (interactive) (kill-new (url-hexify-string (buffer-substring-no-properties (region-beginning) (region-end))))) ...

+++  · 1 min read

しむどん三度無視

TODOリスト

...

+++  · 0 min read

しむどん三度無視

データベースをコピーする

作成済みのデータベースをもとに新しいデータベースを作成する方法を試した。 ...

+++  · 1 min read

しむどん三度無視

[Emacs] syntax-tableを扱う

modify-syntax-entryのコメントの日本語訳(意訳) /opt/ng/emacs/src/syntax.c Set syntax for character CHAR according to string NEWENTRY. 文字列NEWENTRYに従って文字CHARの構文を設定します。 The syntax is changed only for ...

+++  · 4 min read

しむどん三度無視

[Rust] 制御コードでspinする

use std::io; use std::io::{Write}; use std::{thread, time}; fn main () { let output = io::stdout(); let ten_millis = time::Duration::from_millis(1); loop { let mut handle = output.lock(); handle.write(b"|").unwrap(); thread::sleep(ten_millis); handle.write(b"\x1b[1D").unwrap(); handle.write(b"/").unwrap(); thread::sleep(ten_millis); handle.write(b"\x1b[1D").unwrap(); handle.write(b"-").unwrap(); thread::sleep(ten_millis); handle.write(b"\x1b[1D").unwrap(); handle.write(b"\\").unwrap(); thread::sleep(ten_millis); handle.write(b"\x1b[1D").unwrap(); } } ...

+++  · 1 min read

しむどん三度無視

制御コード

Spin b"|" b"\e[nD" b"/" b"-" b"\" 参考 https://en.wikipedia.org/wiki/ANSI_escape_code https://en.wikipedia.org/wiki/C0_and_C1_control_codes https://www.mm2d.net/main/prog/c/console-02.html https://qiita.com/PruneMazui/items/8a023347772620025ad6 http://7ujm.net/etc/esc.html ...

+++  · 1 min read

しむどん三度無視

[Rust] 標準入力を取り扱う

実装 use std::io; use std::io::BufRead; fn main() { let stdin = io::stdin(); for line_result in stdin.lock().lines() { println!("DATA: {:?}", line_result); } } main.rs ビルド $ rustc main.rs 実行 bash-5.1$ echo aaaaaaaaaaaaaa | ./main DATA: Ok("aaaaaaaaaaaaaa") ...

+++  · 1 min read

しむどん三度無視

EmacsとRustでTCPソケットを開いて接続を待ち受ける

方針 TCPソケットを開く処理はRustで実装する。 Emacs側はプロセスを起動するだけに止め標準入出力でそのプログラムとやり取りする。 実装 [package] name = "emacs-tcp" version = "0.1.0" authors = ["TakesxiSximada <[email protected]>"] ...

+++  · 1 min read

しむどん三度無視

[Python][websockets] Websocket Echoサーバーを実装する

websocketsのドキュメントをそのまま動かしてみた。 https://websockets.readthedocs.io/en/stable/ 実装 #!/usr/bin/env python import asyncio import websockets async def echo(websocket, path): async for message in websocket: print(f"recv {len(message)}") await websocket.send(message) start_server = websockets.serve(echo, "localhost", 8765) asyncio.get_event_loop().run_until_complete(start_server) asyncio.get_event_loop().run_forever() server.py import asyncio import websockets async def hello(): uri = "ws://localhost:8765" async with websockets.connect(uri) as websocket: await websocket.send("Hello world!") await websocket.recv() asyncio.get_event_loop().run_until_complete(hello()) ...

+++  · 1 min read

しむどん三度無視

Rustでasync_stdを用いて簡易なHTTP Serverを実装する

実装 [package] name = "testing" version = "0.1.0" authors = ["TakesxiSximada <[email protected]>"] edition = "2018" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] futures = "0.3" [dependencies.async-std] version = "1.6" features = ["attributes"] Cargo.toml use async_std::prelude::*; use async_std::net::TcpListener; use async_std::net::TcpStream; use futures::stream::StreamExt; async fn handle_connection(mut stream: TcpStream) { let mut buffer = [0; 1024]; stream.read(&mut buffer).await.unwrap(); let response = "HTTP/1.1 200 OK\r\n\r\naaaaaa\r\n\r\n"; stream.write(response.as_bytes()).await.unwrap(); stream.flush().await.unwrap(); } #[async_std::main] async fn main() { let listener = TcpListener::bind("127.0.0.1:7878").await.unwrap(); listener .incoming() .for_each_concurrent(/* ...

+++  · 1 min read

しむどん三度無視

RustでTCP Echo Serverを書く

TCPソケットを開いて接続を待ち受け、送られてきたデータをそのまま返すTCP EchoサーバーをRustで実装した。 ...

+++  · 2 min read

しむどん三度無視

RustでHello world!

Hello worldをprintするだけの処理を書く fn main () { println!("Hello world!"); } main.rs ビルド シンプルなコードなのでrustcを直接用いてビルドすることにした。 rustcコマンドの第一引数 ...

+++  · 1 min read

しむどん三度無視

シェルコードを実装する

C言語でexecveを用いてシェルを起動する #include <unistd.h> int main() { char filename[] = "/bin/sh\x00"; char **argv = 0; char **envp = 0; execve(filename, argv, envp); } exec_shell.c execveシステムコールを呼び出す処理をアセンブリで書く コンパイラはN ...

+++  · 1 min read

しむどん三度無視

セキュリティ関連の勉強会に参加した内容まとめ

心に残った良い内容だったと思えたものはこの3つ。 https://www.slideshare.net/shunaroo/mitre-attck-249336202 https://www.slideshare.net/ssuser8911f21/5eddsa https://speakerdeck.com/azara/zatukuri-hua-su-aws-iam-falsete-quan-sheng-ge-falsekao-efang-todui-ce ざっくりまとめていく。 TLPT TLPTとは TLPTとはThreat Led Penetration Testのこと。脅威情報をもとにして攻撃者 ...

+++  · 4 min read

しむどん三度無視

KubernetesのPod内のコンテナにシークレトで保持しているJSONファイルをマウントする

KubernetesではSecretで保持した値をPodで動作しているコンテナからファイ ルとして読み取らせることができる。以下では設定を行う。 Secretを登録 ...

+++  · 1 min read

しむどん三度無視

[WIP] READMEに何を書くべきか?

コンテンツ   ORDERED DONE READMEで伝えるべき構成要素 SCHEDULED: <2021-05-09 Sun> CLOCK: [2021-05-09 Sun 10:10]–[2021-05-09 Sun 10:19] => 0:09 READM ...

+++  · 1 min read

しむどん三度無視

Oracle DatabaseをDockerで起動する

Oracle Databaseのソースコードを取得しDocker Imageを自分でビルドして起動する。 ...

+++  · 3 min read

しむどん三度無視

Pythonでasyncioの非同期処理を実行中にシグナルハンドラが実行された場合、非同期処理は処理を一時的に停止するか?

Pythonの非同期処理の標準ライブラリであるasyncioを用いて非同期処理を実行している時にOSからシグナルを受信してシグナルハンドラに登録した関数が呼び出されるとPythonのGILの性質により実行されていた非同期処理は一時的に処理を中断することを確認した。 ...

+++  · 2 min read

しむどん三度無視

Github CLIを使う

Githubの操作を行うCLIクライアントGithub CLIを使う。 ...

+++  · 2 min read