Pains

2403 pains collected

Category:
Tech:
Severity:

OpenAI SDK deprecation and breaking API changes

7

SDK updates introduce breaking changes and function deprecations, such as the deprecation of openai.ChatCompletion in Python SDK 1.0.0 and API initialization changes in Node.js SDK 4.0, causing compatibility issues for developers with existing codebases.

compatibilityOpenAI Python SDKOpenAI Node.js SDKChat API

Default Security Configuration Weaknesses

7

PostgreSQL default installations can allow passwordless logins ('Trust' method) if not managed, lack robust password policies, do not enable SSL/TLS encryption by default, and commonly grant unnecessary superuser privileges. Many vulnerabilities stem from misconfiguration and operational oversight rather than software flaws.

securityPostgreSQL

Excessive memory consumption from loaded Node modules

7

Node modules loaded at startup remain in memory and cannot be easily unloaded, causing cumulative memory bloat. Libraries loaded once are permanently resident, forcing developers to implement complex hacks to remove them from memory.

performanceElectronNode.js

No built-in monitoring and logging observability

7

Standard Kubernetes lacks native observability features for monitoring cluster utilization, application errors, and performance data. Teams must deploy additional observability stacks like Prometheus to gain visibility into spiking memory, Pod evictions, and container crashes.

monitoringKubernetesPrometheus

V2 endpoint has limited API support and requires v1 for legacy protocols

7

The Azure AD v2 endpoint only supports OpenID Connect and OAuth, excluding older protocols like SAML and WS-Federation. Additionally, only a small set of APIs are accessible (own API, Outlook, Microsoft Graph), requiring fallback to v1 endpoint for other APIs. No migration path exists for v1 applications.

compatibilityAzure AD v2MSALSAML+2

Poor error handling and insufficient guardrails in AI agent frameworks

7

AI agent frameworks lack clear error handling mechanisms and sufficient guardrails, leading to reliability issues and inconsistent performance. Many frameworks are still experimental and don't provide adequate controls for edge cases or failures.

architectureAI agents

Turbopack unreliability with TypeScript and CSS modules

7

Turbopack, Next.js's replacement bundler, complains about valid TypeScript code and struggles to understand `:global` in CSS modules. Despite these issues, it remains unstable and not production-ready.

buildNext.jsTurbopackTypeScript

Inadequate and outdated documentation

7

LangChain's documentation frequently lags behind framework releases, contains outdated code snippets, and omits critical explanations of default parameters. Official guides lack consistency, with tutorials becoming obsolete within weeks due to rapid updates.

docsLangChain

CMake complexity and poor developer experience

7

CMake is widely recognized as painful and unintuitive for ordinary developers, forcing many to resort to Stack Overflow-driven development rather than understanding their build system.

buildCMake

Excessive memory and disk space consumption

7

Electron apps bundle most of Chromium's codebase, making even basic Hello World applications ~100MB and real-world apps like Discord over 700MB. This excessive resource usage creates performance problems on systems with limited RAM.

performanceElectronChromium

Debugging asynchronous and concurrent code complexity

7

Debugging asynchronous and concurrent Python code presents significant challenges. Asynchronous programming features like asyncio and multithreading introduce complexities such as race conditions and deadlocks, making issue identification and resolution harder.

testingPythonasynciomultithreading

GitHub Copilot inconsistently applies framework-specific instructions

7

Copilot fails to consistently follow framework-specific instruction files provided by developers. Instructions are acknowledged but then ignored, requiring developers to repeat the same context multiple times across requests.

dxGitHub Copilot

CUDA version alignment for PyTorch GPU setup is error-prone for newcomers

7

Developers must manually align PyTorch, CUDA toolkit, and Python versions to enable GPU acceleration. Mismatches produce cryptic errors like 'Torch not compiled with CUDA enabled,' and newcomers unfamiliar with CUDA can spend significant time debugging installation issues.

configPyTorchCUDA

__dirname undefined error in SvelteKit with custom Prisma output

7

When generating PrismaClient to a custom location in SvelteKit projects, Prisma produces code with undefined __dirname references, causing build and runtime failures.

compatibilityPrismaSvelteKit

High latency and high per-request API costs in S3

7

S3 operations incur 10-100ms of round-trip delay per request due to HTTP API handling, authentication, and multi-AZ replication. This overhead is orders of magnitude higher than local or networked block storage, and each API call incurs costs, making high-frequency metadata operations expensive.

performanceAmazon S3

Unoptimized image loading causing significant performance degradation

7

Developers ship applications with hero images that load immediately on page open, including images below the fold that users may never see. This results in 8-second load times on mobile connections, as developers often only test on fast office Wi-Fi rather than realistic network conditions.

performanceNext.js

Version management complexity and breaking changes

7

Electron updates frequently, introducing breaking changes that disrupt existing functionality. Many apps bundle multiple Electron versions or fall behind on updates, forcing developers to juggle compatibility issues and regularly refactor code to maintain stability.

dependencyElectron

Reactive blocks only run once per tick, preventing dependency re-runs

7

Svelte's reactive blocks have a limitation where they only run once per tick. If a dependency changes after a block has already run in that tick, the block won't run again, which breaks expected behavior and creates unintuitive side effects for use cases like transitions.

compatibilitySvelte

Performance Issues: Unnecessary Re-renders and Bundle Size

7

React applications suffer from unnecessary re-renders, large bundle sizes, slow initial page loads, memory leaks, and poor mobile performance. These issues are partly inherent to client-side SPAs lacking server-side rendering or static site generation.

performanceReactCreate React App

Poor OS integration and missing platform features

7

Electron apps don't integrate well with operating systems because they're essentially web browsers displaying local content. When Electron doesn't support specific OS features, apps using it also won't—for example, Discord lacks screen sharing on Wayland and doesn't support file portals on Flatpak.

compatibilityElectronChromiumWayland+1

GPT Actions API runtime reliability issues

7

Developers report that GPT Actions make multiple redundant API calls, ignore instructions, and experience slow response times. These issues complicate debugging and maintenance, often requiring extensive investigation to identify root causes.

performanceGPT Actions APIOpenAI API

S3 static website hosting without CloudFront creates production issues

7

Using S3's built-in static website hosting without CloudFront results in high latency for non-US regions, no caching, no DDoS protection, and lack of SSL on custom domains. This setup is only suitable for proof-of-concept.

performanceAmazon S3CloudFront

Write-heavy workload bottlenecks without proper indexing and partitioning

7

Write-heavy workloads with financial transactions and real-time updates require careful indexing and partitioning strategies to avoid slow inserts and locking issues. Without these, performance suffers significantly.

performancePostgreSQL

S3-compatible services lack advanced management APIs

7

S3-compatible storage solutions don't implement advanced management features like Bucket Website Hosting, Analytics, Inventory, Logging, Replication, and Tagging. This creates operational vendor lock-in even when application code is portable, forcing developers to build custom workarounds for features that S3 handles natively.

compatibilityAmazon S3S3-compatible storage