Pains
2403 pains collected
Backend-as-a-Service pricing cliffs and inflexibility
6Developers using Backend-as-a-Service solutions for AI agents encounter pricing cliffs as soon as their app gains traction. BaaS platforms also lock in behavior and reduce flexibility to fine-tune backend operations, forcing developers who need control to migrate to IaaS platforms like AWS or Azure.
S3 is often misused as a database for structured data queries
6Developers store and query structured data (JSON, etc.) directly from S3, treating it like a database. This approach is slow, expensive, and lacks proper query capabilities, forcing manual scanning of data.
Channels perform poorly and lack performance optimizations
6Despite being a hallmark of Go, channels are slow and throw away language niceties like defers and interface indirection when optimizing for performance. Developers must abandon many of Go's features to achieve high performance.
Prompt composition, templating, and context window management across complex workflows
6Developers struggle with prompt composition strategies, variable injection, chat templating, deterministic output control, and managing memory/context windows across multi-step agent interactions. This represents 17% of agent development issues.
Accessibility limitations in accordion patterns
6The new accordion pattern using grouped <details> elements has unresolved accessibility limitations. Using <details> elements doesn't preserve proper semantic heading hierarchy (e.g., in FAQ sections where headers would normally be <h2>), and the one-open-at-a-time behavior can cause unintended closures and horizontal scroll issues.
Lack of event-driven architecture forces wasteful polling cycles
6AI agents continuously poll for changes instead of being notified of events, wasting compute cycles and increasing latency. Moving to event-driven patterns requires architectural redesign.
Heavy Middleware Logic Increases Time to First Byte
6Middleware that runs on every request with large libraries or poor tree-shaking increases TTFB, which directly affects FCP and LCP metrics.
TypeScript feature incompatibility with Node.js native type stripping
6TypeScript features like enums, namespaces, and parameter properties require runtime transpilation and are incompatible with Node.js's `--erasableSyntaxOnly` mode. Developers must migrate to `as const` objects and ES modules, creating a backward compatibility challenge.
Incorrect label-to-form element connections
6Developers frequently fail to properly connect labels to form elements by using the name attribute instead of id. Labels must be connected to elements via ID (which is unique per element), not name (which clusters form elements together), leading to accessibility failures and poor UX.
Sentry higher-tier pricing locks essential features for small teams
6Sentry's tiered pricing structure gates essential features behind higher-tier plans, making it cost-prohibitive for startups and small businesses with constrained budgets. Costs escalate quickly as usage increases.
AI Agents Require Constant Human Supervision
6Many AI agents cannot operate autonomously and require continuous human oversight, preventing full automation and limiting their practical value for scaling operations.
Difficulty identifying performance and resource usage issues in running programs
658% of teams report challenges identifying performance issues in running Go programs, and 57% struggle with identifying resource usage inefficiencies.
AI Agent Model Complexity Tradeoff: Cost vs. Accuracy vs. Speed
6Large complex models achieve high accuracy but require excessive computing resources, resulting in higher costs, slower response times, and infrastructure overhead. Finding the right balance between sophistication and practicality is a persistent challenge.
Performance bottlenecks due to lack of native SIMD support
637% of developers familiar with SIMD have been impacted by Go's absence of native SIMD support. 17% report being limited in the performance they can achieve in their projects, and 15% had to use another language instead.
Callback Hell Makes Code Unmaintainable
6Nested asynchronous callbacks create deeply indented, hard-to-read code (pyramid of doom) that is difficult to debug, maintain, and extend, even though Promises and async/await provide alternatives.
Extended onboarding time due to project-specific pattern implementations
6New team members spend days or weeks learning project-specific implementations of common patterns before becoming productive, significantly impacting project timelines and team productivity.
Stateless GitHub Actions prevent efficient caching and computation reuse
6GitHub Actions are stateless, making it difficult to reuse computation within VMs without relying on external tools like Make or Just. Even with caching layers, developers cannot reliably persist state between runs, forcing redundant rebuilds and slowing feedback loops.
Limited Data Observability for Business Context
6Datadog's data observability is infrastructure-focused, detecting pipeline failures and schema changes but lacking business-aware context to understand data content. This is inadequate for data-centric industries like FinTech and Healthcare where data quality is critical.
Missing stack traces from error loops and cascading errors
6When errors occur in loops or trigger cascades, Sentry may not report all events or provide useful debugging information. The 5,000 event monthly limit can be exhausted quickly by repeating errors, leaving no visibility for other issues.
Improper Use of next/image Causes Large Image Downloads
6Using regular <img> tags instead of next/image loses built-in optimizations like lazy loading and responsive sizing. Without proper sizes attribute, browsers may download large desktop images on mobile devices, hurting LCP.
Telemetry data overload and cost issues
6When implementing observability in Go, developers generate massive volumes of data (trillions of requests) that must be filtered and managed. Telemetry costs and data quality issues remain persistent problems despite tuning efforts.
Massive cluster resource overprovisioning and wasted spending
699.94% of Kubernetes clusters are over-provisioned with CPU utilization at ~10% and memory at ~23%, meaning nearly three-quarters of allocated cloud spend sits idle. More than 65% of workloads run under half their requested resources, and 82% are overprovisioned.
Third-party script and browser extension noise pollutes error tracking
6Browser extensions, ad scripts, and third-party code generate constant noise in error tracking. Without extensive filtering, signal-to-noise ratio becomes so poor the tool becomes nearly useless for frontend apps. Frontend teams spend significant time configuring ignore rules.
Complex integration setup for multiple team deployments
6Setting up Sentry for complex multi-team microservices architecture is complicated. Managing quota sharing between teams caused impact on team productivity when one team's quota is exhausted. Integration configuration for multiple platforms and team structures is not straightforward.