caiopizzol Profile Banner
Caio Pizzol Profile
Caio Pizzol

@caiopizzol

Followers
27
Following
87
Media
4
Statuses
45

Head of DX @ SuperDoc

Curitiba, Brazil
Joined October 2015
Don't wanna be here? Send us removal request.
@caiopizzol
Caio Pizzol
8 months
Yes, GET requests that modify state. Yes, plain text responses. Yes, query parameters for everything. Sometimes the "wrong" technical decision is the right human decision. The insight: Most API friction isn't about security. It's about ceremony.
0
0
0
@caiopizzol
Caio Pizzol
9 months
Why open source this? Because every Brazilian developer loses weeks to the same encoding hell. Because $500/month APIs gatekeeping public data is theft. Because bad infrastructure is censorship with extra steps. Join the fight. Discord:
Tweet card summary image
discord.com
Discord is great for playing games and chilling with friends, or even building a worldwide community. Customize your own space to talk, play, and hang out.
0
0
1
@caiopizzol
Caio Pizzol
9 months
The pipeline adapts to your hardware: if memory < 8GB: chunk_it() else: unleash_hell() COPY beats INSERT by 10,000x. Staging tables handle conflicts. One command loads everything while you sleep. No rate limits. Just data.
0
0
1
@caiopizzol
Caio Pizzol
9 months
Brazil publishes 50M company records. "Free" data. Reality: 85GB of Latin-1 CSVs. Companies founded in 2027. Text that's UTF-8 wrapped in Latin-1 because someone converted encoding twice. I spent months fighting this chaos so you don't have to. https://t.co/FiPn1zYFvU
Tweet card summary image
github.com
Dados de CNPJ da base da receita direto para seu banco - caiopizzol/cnpj-data-pipeline
2
0
1
@caiopizzol
Caio Pizzol
9 months
"But the cloud is more reliable" they said. "You don't need to manage your own infrastructure" they said. Meanwhile, Bob's Raspberry Pi is still serving requests.
0
0
3
@caiopizzol
Caio Pizzol
10 months
The number of developers who've typed 'OpenAPI' while looking for @OpenAI's API is probably higher than GPT-4's parameter count
0
0
0
@caiopizzol
Caio Pizzol
10 months
API DX idea: Let developers choose their preferred case format with a simple parameter. Python devs want snake_case, JS devs need camelCase. Why force conversion? GET /api/users?case=snake → {"user_id": 1} GET /api/users?case=camel → {"userId": 1} Small change, happy devs
0
0
0
@caiopizzol
Caio Pizzol
10 months
Any SDK generator out there that can actually do a good job?
3
0
1
@caiopizzol
Caio Pizzol
10 months
The paradox: APIs without rate limiting feel "faster" until they crash under load. Smart limits give developers the one thing they value most: reliability.
0
0
0
@caiopizzol
Caio Pizzol
10 months
Good rate limiting: - X-RateLimit headers in EVERY response - Gradual warnings before hitting limits - Clear reset timestamps - Tiered limits that scale with usage Developer reaction: Predictable, plannable integration
0
0
0
@caiopizzol
Caio Pizzol
10 months
Bad rate limiting: - Sudden 429s with no warning - "You've exceeded limits" (what limits?) - No reset time in response - Arbitrary thresholds (why 100/hour?) Developer reaction: Frustration, abandonment, workarounds
0
0
0
@caiopizzol
Caio Pizzol
10 months
Rate limiting ruins developer experience" is the biggest API myth. Bad rate limiting ruins DX. Good rate limiting improves it. Smart limits 👇
3
0
1
@caiopizzol
Caio Pizzol
1 year
6/6 Results: • No size limits • Better reliability • Reduced server load • Simpler code Sometimes the most elegant solution is to not handle the problem at all.
0
0
0
@caiopizzol
Caio Pizzol
1 year
5/6
1
0
0
@caiopizzol
Caio Pizzol
1 year
4/6 Here's a better way: 1. Client requests signed URL 2. Server returns GCS URL 3. Client uploads directly to storage 4. Server processes stored file
1
0
0
@caiopizzol
Caio Pizzol
1 year
3/6 "Just use multipart streaming!" Sure, if you want to build: • Custom chunking • Connection management • Retry logic • Timeout handling And deal with zero built-in HTTP/1.1 support
1
0
0
@caiopizzol
Caio Pizzol
1 year
2/6 • 32MB request limit on Cloud Run/App Engine • Base64 adds 33% overhead • You're limited to ~24MB files • Memory issues • Timeouts on large files
1
0
0
@caiopizzol
Caio Pizzol
1 year
Stop using base64 for file uploads. Here's why 👇
1
0
0
@caiopizzol
Caio Pizzol
1 year
SaaS companies like Linear invest heavily in their JavaScript SDK, but their users often need support for other languages. This creates a gap where developers end up building and maintaining their own client libraries. Not anymore (You're welcome, @linear ). polvo not only
0
0
0