Docs: https://www.tinybird.co/docs/v2/get-started/install-tinybird/self-managed
- Tinybird account
- Domain name, and ability to update DNS recrods
- 4+ CPUs and 16+ GB virtual machine
- Docker
Sign up to https://cloud.tinybird.co and create your workspace.
| POST / HTTP/1.1 | |
| Host: localhost | |
| User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36 | |
| Next-Action: x | |
| Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryx8jO2oVc6SWP3Sad | |
| Content-Length: 459 | |
| ------WebKitFormBoundaryx8jO2oVc6SWP3Sad | |
| Content-Disposition: form-data; name="0" |
Docs: https://www.tinybird.co/docs/v2/get-started/install-tinybird/self-managed
Sign up to https://cloud.tinybird.co and create your workspace.
| Name | Input | Output | |
|---|---|---|---|
| Gemini 2.0 Flash-Lite | $0.075 | $0.30 | |
| Mistral 3.1 Small | $0.10 | $0.30 | |
| Gemini 2.0 Flash | $0.10 | $0.40 | |
| ChatGPT 4.1-nano | $0.10 | $0.40 | |
| DeepSeek v3 (old) | $0.14 | $0.28 | |
| ChatGPT 4o-mini | $0.15 | $0.60 | |
| Gemini 2.5 Flash | $0.15 | $0.60 | |
| DeepSeek v3 | $0.27 | $1.10 | |
| Grok 3-mini | $0.30 | $0.50 |
g.co, Google's official URL shortcut (update: or Google Workspace's domain verification, see bottom), is compromised. People are actively having their Google accounts stolen.
Someone just tried the most sophisticated phishing attack I've ever seen. I almost fell for it. My mind is a little blown.
Someone named "Chloe" called me from 650-203-0000 with Caller ID saying "Google". She sounded like a real engineer, the connection was super clear, and she had an American accent. Screenshot.
They said that they were from Google Workspace and someone had recently gained access to my account, which they had blocked. They asked me if I had recently logged in from Frankfurt, Germany and I said no.
I asked if they can confirm this is Google calling by emailing me from a Google email and they said sure and sent me this email and told me to look for a case number in it, which I saw in
보건의료빅데이터개방시스템(opendata.hira.or.kr) 공공데이터 상세 페이지 첨부파일 일괄 다운로드 스크립트
bun install
PAGE="https://opendata.hira.or.kr/op/opc/selectOpenData.do?sno=11925&publDataTpCd=&searchCnd=&searchWrd=%EC%A0%84%EA%B5%AD&pageIndex=1"
bun download-hira.ts "$PAGE"| import * as http from 'node:http'; | |
| import { Readable } from 'node:stream'; | |
| import { setInterval } from 'node:timers/promises'; | |
| async function* chunksWhile(ms) { | |
| let count = 0; | |
| for await (const startTime of setInterval(1000, Date.now())) { | |
| yield `<div>Looking for your cat... (n=${++count})</div>`; | |
| if (Date.now() - startTime > ms) { | |
| return; |
There are too many LRU(Least Recently Used) implementations in JS.
I recommend to use [flru] which is the smallest one and fast enough. Unless you need more rich functionality.
However, it's performance is vary depend on the host environment. For example, flru loses on Bun.
If you need micro-optimization on it, measure it yourself in your environment.
| // imports... | |
| @interface RocketSimLoader : NSObject | |
| - (void)loadRocketSimConnect; | |
| @end | |
| @implementation RocketSimLoader |
Example:
function Form() {
const [isPending, onSubmit] = useFormActionHandler((formData, reset) => {
if (formData.get('condition') === 'X') {
reset();
}
// ...
});