Pains

2403 pains collected

Category:
Tech:
Severity:

Abundance of New Unfamiliar React APIs (Profiler, ViewTransition, cache, etc.)

4

React 19 introduced numerous new APIs with low familiarity among developers: Profiler (57% unfamiliar), ViewTransition (41%), Activity (41%), cache (41%), useEffectEvent (40%), useDeferredValue (39%). This creates knowledge gaps and increases the learning curve for developers trying to stay current.

docsReactProfilerViewTransition+3

Lack of semantic meaning in utility class names

4

Tailwind utility classes are functional but not semantic, making it harder to understand element purpose at a glance. Classes like `p-6, max-w-sm, rounded-xl` do not convey the meaning of elements. Developers accustomed to semantic classes like `.card, .card-header, .card-body` find utility-first approach less intuitive and harder to maintain.

dxTailwind CSS

Poor syntax highlighting and lack of expressiveness in utility classes

4

Tailwind class names receive no special syntax highlighting and are displayed as plain strings, reducing code expressiveness. CSS property names and values are more expressive and easier to scan. The short but non-descriptive nature of utility classes (compared to CSS keywords) compounds readability issues.

dxTailwind CSS

GitHub Projects item naming conflicts with mixed issue types

4

With the expanded 50,000 item limit in GitHub Projects, duplicate naming becomes a real problem. Multiple issues named 'UI' across different issue types (Tasks, Stories, Bugs) appear in the same view without clear differentiation, causing confusion and reducing project clarity.

dxGitHub Projects

Inconsistent naming conventions and code standards

4

PHP does not enforce strict naming conventions for functions, variables, and classes, leading to inconsistent code that causes confusion in team environments and large codebases. This reduces code readability and maintainability, making onboarding difficult for new developers.

dxPHPPHP CodeSniffer

Keeping Up with Emerging Technologies (VR/AR/Voice)

4

New technologies like VR, AR, and voice assistants introduce novel authentication methods and implementation challenges. Developers must extensively test these emerging technologies to ensure good user experience before integration, adding complexity to development workflows.

ecosystemVRARvoice assistants

Transitive Dependency Complexity

4

Even though TensorFlow reduces program size and aims to be user-friendly, it adds a layer of complexity through dependencies. Every code execution requires a platform for execution, which increases overall system dependency and maintenance overhead.

dependencyTensorFlow

StrictMode Double-Rendering Confusion

4

Developers continue to get tripped up by effects running twice in development mode due to StrictMode. This behavior confuses developers and stems from React's fundamental architecture requiring entire component functions to re-run on updates.

dxReactStrictMode

Excessive manual approvals blocking rapid iteration

4

Trivial changes (typos, config fixes) require multi-person reviews and approval workflows, creating bureaucratic friction. Teams waste time on unnecessary approvals that don't meaningfully improve quality or safety.

dxGitHubOPA

Insufficient support for Rust developers and maintainers

4

38.4% of Rust developers worry that Rust developers and maintainers are not properly supported, indicating concern about the sustainability and resource allocation of the language ecosystem.

ecosystemRust

AI coding agents frequently invent images and icons not in designs

4

When implementing from design mockups, coding assistants often generate images and icons that don't exist in the original Figma designs. Fixing this requires explicit instructions and direct links to specific Figma nodes.

dxFigmaMCPLLM

IndexedDB cross-browser differences and schema versioning complexity

4

IndexedDB exhibits subtle cross-browser differences and quirks. Schema changes require careful versioning and migration logic, adding complexity compared to simpler storage solutions.

compatibilityIndexedDB

Poor IDE Support and TypeScript Integration

4

IDE support for Vue.js, especially with TypeScript, has historically lagged behind other frameworks, though improving with extensions like Vetur for Visual Studio Code.

dxVue.jsTypeScriptVisual Studio Code+1

TypeScript support in Svelte files is incomplete, causing type-checking gaps

4

Developers write more type assertions and struggle with IDE support for TypeScript in Svelte files. Less robust type checking for component props leads to potential runtime errors that could have been caught at compile-time.

dxSvelteTypeScript

Immature debugging and testing tools compared to React/Vue ecosystem

4

Advanced development tools, debugging utilities, and testing frameworks are less mature for Svelte. Browser DevTools extensions are less feature-rich. Testing libraries lack maturity and thorough documentation compared to React Testing Library.

testingSveltePlaywright

Difficulty selecting appropriate DevOps success metrics

4

Organizations struggle to identify and measure metrics that align with business goals and reflect DevOps implementation success. Teams face confusion about which metrics (throughput, stability, user satisfaction) matter most for decision-making and improvement tracking.

monitoring

Low tool adoption due to limited awareness of available security solutions

4

Developers lack awareness about available npm security tools, with some respondents admitting they don't know what options exist. This contributes to only 40% satisfaction with current security tools despite available solutions.

docsnpm

Documentation not beginner-friendly despite Svelte's target audience

4

Official Svelte documentation is not tailored for beginners despite beginners being the primary target audience (senior developers already use React, Vue, Angular). Documentation should be reframed as 'JavaScript for beginners and dummies'.

docsSvelte

SvelteKit file structure becomes unwieldy in large applications

4

Even in small SPA-mode projects, the nested folder structure with multiple `+page`, `+layout`, and server-side files creates navigation and discoverability nightmares. Routing files strewn across a million folders makes codebase navigation difficult.

dxSvelteKit

Large bundle sizes with many small components due to per-component runtime

4

Each Svelte component generates its own runtime code. In applications with many small components, this results in larger bundle sizes compared to runtime-based frameworks. Reactivity system can cause unnecessary updates in complex scenarios.

performanceSvelte

Limited TPU Architecture (Training Restriction)

4

TensorFlow's TPU architecture only allows execution of models but does not allow training on TPUs, limiting the use of specialized hardware accelerators for training workflows.

architectureTensorFlowTPU

No plugin support (e.g., TimescaleDB extensions)

4

SQLite does not support database extensions or plugins like TimescaleDB for PostgreSQL, limiting optimization options for specialized workloads such as time-series data processing.

ecosystemSQLiteTimescaleDB

Refresh token revocation on user password change

4

When users change passwords, refresh tokens may be revoked by OAuth providers, forcing applications to handle re-authentication. Graceful re-auth flows must be implemented to prevent user frustration.

authOAuth 2.0

Verbose Model Definition Processes

4

TensorFlow requires verbose model definition processes that add overhead to prototyping and model definition compared to more concise frameworks.

dxTensorFlow