-
Unified Tap
const uuid = require("uuid"); | |
const crypto = require("crypto"); | |
const fs = require("fs"); | |
const buffer = require('buffer'); | |
const upload = async () => { | |
const id = crypto.randomBytes(16).toString("hex"); | |
console.log('id', id) | |
const blob = new Blob(['hello there']); |
import subprocess | |
from concurrent.futures import ThreadPoolExecutor, as_completed | |
def invoke_command(): | |
subprocess.run(["sleep", "5"]) | |
print("done") | |
def main(): |
import { | |
DOMParser, | |
Element, | |
} from "https://deno.land/x/deno_dom/deno-dom-wasm.ts"; | |
const doc = new DOMParser().parseFromString( | |
` | |
<h1>Hello World!</h1> | |
<p>Hello from <a href="https://deno.land/">Deno!</a></p> | |
`, |
800円以上で送料50円引き
yarn run v1.22.18 | |
$ /Users/tai2/Sync/Code/myapp/node_modules/.bin/appium | |
[Appium] Welcome to Appium v1.22.3 | |
[Appium] Appium REST http interface listener started on 0.0.0.0:4723 | |
[HTTP] --> POST /wd/hub/session | |
[HTTP] {"capabilities":{"alwaysMatch":{"platformName":"ios","platformVersion":"14.4","deviceName":"iPhone 12 Pro","app":"http://localhost:8081/app.zip","newCommandTimeout":1200,"language":"en","orientation":"PORTRAIT","noReset":true,"processArguments":{},"clearSystemFiles":false,"skipLogCapture":false},"firstMatch":[{}]},"desiredCapabilities":{"platformName":"ios","platformVersion":"14.4","deviceName":"iPhone 12 Pro","app":"http://localhost:8081/app.zip","newCommandTimeout":1200,"language":"en","orientation":"PORTRAIT","noReset":true,"processArguments":{},"clearSystemFiles":false,"skipLogCapture":false}} | |
[debug] [W3C] Calling AppiumDriver.createSession() with args: [{"platformName":"ios","platformVersion":"14.4","deviceName":"iPhone 12 Pro","app":"http://localhost:8081/app.zip","newCommandTimeout":1200," |
「事業をエンジニアリングする技術者たち」読んだ。
https://www.lambdanote.com/collections/engineers-in-voyage/products/engineers-in-voyage
いやー、くっそおもしろかった。VOYAGE GROUPは広告やゲーム攻略サイトなどいろいろなプロダクトを持っている。それらを作ってきたエンジニアたちへのインタビュー集。
中でも圧倒的に面白かったのが、第3章のECナビの話。ECナビは、1999年からある20年もののシステム。2015年の時点で誰も全容を把握している人がいなかった1200テーブルを超える巨大レガシーシステムを、5年の歳月をかけて、いかにして把握可能な状態まで持っていったか。はっきりいって、めちゃくちゃかっこいい。痺れる。「お花畑」とか「葬り無双」とかの独特のネーミングセンスも笑える。
他の章ももちろんどれも面白い話ではあった。けど、神ゲー攻略とかデータサイエンスの話は、超絶優秀なエース級の人アサインしたら、その人がうまくハマってくれて、ほぼ1人でなんとかしてくれたっていう話で、へーすごい人なのねという感想は持つけど、言ってみれば、そこらへんにありそうな話でもある。けど、ECナビの話は、一から作り直すこともできないほどの巨大なシステムを、長期間かけて計画的にこつこつ改善していったということの、並大抵でなさに感動する。やり遂げたエンジニアたちに畏敬の念を抱く。あなた達はすごい。
import socket | |
import time | |
import threading | |
RECEIVE = False | |
#RECEIVE = True | |
NUM_THREADS = 300 | |
finish_flags = [False for i in range(NUM_THREADS)] |
function zcd() { | |
cd $(z | tail -r | fzf --layout=reverse --cycle | awk "{print \$2}") | |
} | |
function ge() { | |
FILE=`git grep "$@" | fzf --layout=reverse --cycle | cut -d : -f 1` | |
nvr --remote $FILE | |
} | |
function gt() { |