pgvector vs Pinecone for Enterprise RAG: When Postgres Is Enough
Most RAG systems don't need a separate vector database. Here's when pgvector on Postgres is enough, and when Pinecone or OpenSearch earns its place.
Blog
Practical engineering writing from projects: connectivity, device platforms, cloud cost, migrations and the operational details that keep systems boring.
Most RAG systems don't need a separate vector database. Here's when pgvector on Postgres is enough, and when Pinecone or OpenSearch earns its place.
Oracle support renews every year whether you migrate or not. Here's what moving to PostgreSQL really takes, and where projects stall.
Image APIs now cost fractions of a cent per check. That changes where AI defect detection should run on your line, and where it still can't.
Most companies shouldn't run an on premise LLM to save money. Here are the four cases where self-hosting does pay off, and the costs people miss.
AWS Mainframe Modernization closed to new customers on July 30, 2026. What changed, what current customers keep, and realistic mainframe exit paths now.
Hiring an industrial automation consultant? What a SCADA/PLC integration project involves, from assessment to commissioning, with costs and red flags.
OPC UA vs MQTT for plant-floor data: what each does, when to use which, Sparkplug B, Unified Namespace, and a secure, outbound-only edge gateway design.
When an IoT, edge AI or cloud cost project stalls, should you hire, augment staff or bring in a project team? A buyer's framework for program leads.
The Army's NGC2 contract awards went to nine commercial app vendors. How the Commercial Solutions Opening works and where small software firms fit.
The Campfire repos show Rust could drop Redis and diverge from Rails while Elixir PRs doing the same were turned down. What a fair benchmark needs.
AI coding agents made custom internal software cheap. When building beats another SaaS subscription, and when it turns into a maintenance trap.
A reliability test of the Campfire ports: Rust is fastest at light load but drops most messages under heavy load. Rails and Elixir delivered every one.
How to become a government subcontractor for defense software work: registration, finding primes, CMMC, ITAR and what primes check before they hire you.
AI can rewrite COBOL, but translation isn't migration. How to plan a mainframe modernization that cuts cost: spec first, dual-run, one job at a time.
SWFT, continuous ATO and FedRAMP 20x all reward automated security evidence. What small defense software vendors should build in now.
The Campfire Rust port had about 400 commits before the benchmark. The Elixir port had two. How to run a fair benchmark when AI agents write the code.
Counter-drone contracts in Austin, drones and secure software in San Antonio: the I-35 defense tech corridor and where software subcontractors fit.
DHH had AI agents port Campfire from Rails to Rust, Go and Elixir and found Rust fastest. What he actually claimed, and why it's worth taking seriously.
Where Elixir stands in fall 2026: v1.20's gradual type system, Phoenix LiveView 1.2, and Tidewave for AI-assisted Phoenix development.
SBIR and STTR are reauthorized through 2031 and still running under the continuing resolution. What defense startups should do before the DoW deadline.
Satellite IoT can now run on the same SIM as cellular. Why it's still hard, why many satellite offers don't connect, and what to ask first.
z/OS software cost is set by the busiest four hours of the month. How the rolling 4-hour peak works, and how to move the batch behind it.
A field-tested playbook for cloud cost reduction. Where the waste actually hides, what to kill first, and how to put guardrails in so it stops coming back.
Cloud migrations stall when run as one cutover. How we run them as a series of safe, reversible steps, usually with zero production downtime.
Most Terraform repos rot because of the architecture, not the tool. How to structure IaC so a new engineer can ship a safe change in their first week.
An opinionated default stack for production Kubernetes clusters that are easy to operate, easy to upgrade, and don't surprise you at 3am.