SShortSingh.
Back to feed

EU proposes rules banning deceptive 'dark patterns' in websites and apps

0
·3 views

The European Commission has proposed a regulation that expressly prohibits deceptive interface designs, known as dark patterns, on websites and apps aimed at users in the European Economic Area. The draft lists twelve banned practices, including confirmshaming, forced continuity, sneaking items into baskets, and hidden costs. Companies would have to make every user commitment clearly explained and accessible, and firms with more than 250,000 annual active users would face yearly usability audits. Violations could bring fines of up to 4% of global annual turnover or 20 million euros, whichever is higher. The rules would apply to any entity offering goods or services to EEA users, regardless of where it is based.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Fixing a Slow Database: Work Up the Scaling Ladder Cheapest-First

The article argues that a slow database should be fixed in a deliberate order rather than jumping straight to sharding, which is costly. It recommends first confirming the real cause and adding indexes, then adding a cache such as Memorystore for repeated reads, then using read replicas for read-only traffic. Scaling the instance to a larger machine type comes next, with attention to brief restarts, replica sizing and retry logic. Sharding is reserved for cases where the single primary remains the write bottleneck, and measurement is advised at every step.

0
ProgrammingDEV Community ·

Avatar Metadata Search: Keep Object Storage for Bytes, Catalog for Queries

The article argues that object storage should hold avatar bytes under immutable, addressable keys, while content type, tags, ownership, and moderation state belong in a queryable catalog. Bucket prefix listing suits repair and audit tasks but cannot efficiently evaluate predicates such as type plus tags within a tenant. The author notes that declared Content-Type headers are only hints and should be verified by inspecting the payload with a bounded decoder. A catalog row with explicit ready, pending, and failed states can bridge the lack of atomic commits between database and bucket. The piece also names failure modes such as orphan objects, dangling rows, duplicate retries, and stale current pointers.

0
ProgrammingDEV Community ·

Paperspace alternatives in 2026: Nodus, RunPod and Kaggle compared

A comparison article lists Nodus for training runs that have outgrown a notebook, RunPod for cheap per-second GPU pods, and Kaggle Notebooks as a free option for students. The author notes Nodus lists H100 access at $2.60 per GPU-hour versus $5.95 on Paperspace and restores the latest checkpoint on a replacement machine if one is lost. Paperspace, now part of DigitalOcean, still offers notebooks under its Gradient-branded plans, with free machines that carry six-hour shutdown limits and H100s requiring support approval. The article is written by a Nodus builder, who discloses this and says every competitor claim links to its own pricing page. Prices were checked on November 11, 2026.

0
ProgrammingDEV Community ·

Retrying Tenant-Isolated Thumbnail Uploads: A Storage Decision Record

The article argues that each tenant's thumbnails should be stored under a deterministic, tenant-scoped key, with retries limited to transient failures using exponential backoff. Every attempt of one logical upload should reuse the same idempotency key so retries do not create duplicate artifacts or cross tenant boundaries. The author frames the real cost as operational, covering implementation time, duplicate objects, rate-limit recovery, reconciliation, and tenant attribution rather than per-request pricing. It recommends a private object store and compares S3, Cloudflare R2, Alibaba OSS, and Infrai on the failure boundaries each team must be able to operate. The piece stresses that exactly-once behavior should be designed through idempotent writes and deterministic reconciliation rather than assumed from the network.