One table can be enough when the product’s rules are simple. In a case study published October 6, 2026, developer Daniel Pertu says his desktop app Notifio’s production schema is a 33-line, ten-column licenses table, unchanged for 71 days despite 23 subsequent repository commits. His explanation is not that small schemas are always better: selling permanent licenses and a one-time upgrade avoids much of the time-dependent state that recurring subscriptions require.
What the schema stores
Pertu describes a PostgreSQL-backed licenses table with ten columns, four unique constraints, and no foreign keys. The fields cover the license identity and token, Stripe checkout session, whether the license is active, whether the auto-reply upgrade was purchased, the upgrade checkout session and purchase timestamp, and created and updated timestamps. The post does not publish a complete column-by-column definition in the material summarized here, so the list should be read as the roles represented, not as a substitute for the schema itself.
As an Amazon Associate I earn from qualifying purchases.
That compact shape reflects the product described in the post: a desktop application sold with a £20 base license and a separate £20 one-time auto-reply upgrade. Pertu says the product has no recurring billing. Those prices and product details are his account as of the post, not a guarantee of current availability or pricing.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchWhy one-time purchases reduce entitlement state
A subscription can stop granting access when time or billing status changes. Pertu argues that this introduces state such as a subscription status, the end of a paid period, decisions about any grace window, and handling for subscription and invoice events. Each of those concepts can become part of the entitlement decision.
#1 Best Overall
- [INTEL POWERED CONTENT] - Built with a 8th Generation Hexa-Core Intel i5 and 32GB of DDR4 RAM; Modern, Windows 11 ready, with 4K support, Executive multitasking, media streaming and smooth, multi-tab web browsing; Perfect as an all-purpose multimedia computer; built for content creators; Plenty of RAM and Mass storage for photo and video editing powered by Intel HD 630
- [LATEST WIRELESS TECH] - This Dell Desktop Computer easily connects to the internet through the Built In WiFi / Bluetooth
- [SOLID STATE STORAGE] - This Dell Computer setup comes with an ultra-fast 1TB Solid State Drive (SSD); Setup as the primary boot device; Boot and load programs with lightning speed ; Additional expansion available
- [BUY & OWN WITH CONFIDENCE] - From the world's largest Microsoft Authorized Refurbisher; Quality Guarantee and Free Tech Support; Award-winning Customer Service; | Support Sustainable Business
- [MODERN HI-SPEED PORTS] - USB 3.0 (x4) | USB 2.0 (x4) | DisplayPort (x1) | HDMI Port (x1) | Audio Combo Jack (x1) | Audio Out (x1) | RJ-45 Ethernet (x1) | Internal SATA (x3)
In the implementation he describes, the auto-reply upgrade is instead represented by a boolean. A completed checkout grants it through checkout.session.completed; there is no renewal boundary to recalculate. The post says autoReplyPurchasedAt remains useful for support and accounting, but entitlement checks do not read it. That distinction matters: a timestamp may be useful historical data without being a condition that determines present access.
This is a fit between data model and business model, not a general argument against subscriptions. The post describes no renewals, seats, usage meters, plan tiers, or server-side customer settings. A product with those requirements would need to represent their state somehow, even if its first version could fit in one table.
Rank #2
- Model: Dell OptiPlex 7050 Small Form Factor (SFF)
- Processor: Intel Core i7-7700 3.60 GHz
- Memory: 32GB DDR4 Ram
- Storage: 1TB Solid State Drive (SSD) Fast Boot + Storage
- Operating System: Windows 11 Pro (64-bit)
Constraints and lookup behavior
Uniqueness as a write safeguard
Pertu says the four unique constraints help make writes safe to retry and guard against token collisions. A uniqueness rule is enforced by the database, so it can protect against duplicate values even when application requests race or are repeated. The post does not enumerate each constraint’s column, so it would be unsafe to infer precisely which four values are covered.
Free tools Windows power users keep installed
One-click scans. No signup required.
One failure result for license validation
The described lookup returns the same null outcome when a license is missing, mismatched, or inactive. Pertu’s stated reason is to avoid telling a caller which credential detail failed. This is a deliberate information-disclosure choice; it does not, by itself, establish that every surrounding authentication or license-check path is secure.
Rank #3
- IMMERSIVE 24 INCH DISPLAY: Experience stunning clarity on a Full HD IPS screen with ultra-thin bezels, offering a 90% screen-to-body ratio that makes everything from spreadsheets to streaming come alive with vibrant colors and crisp details.
- POWERFUL INTEL PROCESSING: Tackle demanding tasks with ease thanks to the Intel processor and 16GB of high-speed memory, delivering smooth performance whether you're multitasking between applications or running productivity software.
- GENEROUS STORAGE: Store all your important files, photos, and programs with blazing-fast solid state drive technology that ensures quick boot times, rapid file access, and plenty of space for your digital life.
- ENHANCED PRIVACY AND COLLABORATION: Work confidently with the pop-up privacy camera that tucks away when not in use, plus dual microphones with noise reduction for crystal-clear video calls that keep you connected professionally.
- ECO-CONSCIOUS DESIGN: Feel good about your purchase with an EPEAT Gold registered and ENERGY STAR certified computer that combines premium performance with responsible environmental manufacturing practices.
Webhook retries still matter
A simpler entitlement model does not remove the need to handle payment events reliably. Pertu says the webhook handler ignores event types other than checkout.session.completed. He also describes a failed activation email returning HTTP 500 so Stripe will retry. Because a retry can revisit work that has already partly succeeded, the database’s uniqueness rules and the handler’s idempotency behavior matter. The post presents this as the reason to make writes retry-safe rather than assume each event arrives only once.
What the 33 lines and 71 days establish
The post reports two migrations: an initial seven-column table, followed by a migration that adds three columns and one constraint. It also reports that the schema had not been touched for 71 days by publication, while the repository accumulated 23 commits during that interval. These are the author’s figures and repository account, not an independent audit or a measure of how much work the application required.
Rank #4
- This Certified Refurbished product is tested and certified to look and work like new. The refurbishing process includes functionality testing, basic cleaning, inspection, and repackaging. The product ships with all relevant accessories, a minimum 90-day warranty, and may arrive in a generic box. Only select sellers who maintain a high-performance bar may offer Certified Refurbished products on Amazon.com.
- Dell Optiplex 3050 SFF Desktop computer PC, Intel Quad Core i5-6500 up to 3.6GHz, 16GB DDR4, 256GB SSD
- Includes: USB Keyboard & Mouse, USB WiFi adapter, Microsoft office 30 days free trail.
- Port: Front: USB 3.0(2), USB 2.0(2); Rear: DP, HDMI, USB 3.0(2), USB 2.0(2), RJ-45.
- Support 4K (3840x2160) Dual display, makes it easy to connect two monitors at the same time, and you can expand working Windows, mirror content, or expand a single window across multiple monitors.
A stable schema can be evidence that the current data model has not needed to change while other code changes. It cannot show on its own that the design is optimal, that migrations were unnecessary, or that another product would have the same needs. The author also says a free license did not fit the existing assumption that each row came from a Stripe purchase—a useful illustration of how schema constraints encode product policy, not just storage format.
Connection-pooling choices are specific to this deployment
Pertu reports using Supabase/PgBouncer transaction pooling, setting prepare: false to avoid prepared-statement errors in that setup, and keeping the local pool maximum at one because his serverless instances handle one request at a time. These are implementation details and explanations from his post, not universal recommendations for PostgreSQL, serverless applications, or every driver and pooling mode. Anyone adapting them should verify compatibility with the current documentation for their own provider and database client.
Best Value
- Connectivity: Includes WiFi, Bluetooth, and LAN for wireless and wired connections
- Memory: Features 16GB DDR4 RAM for smooth multitasking and performance
- Storage: Combines 500GB SSD and 1TB HDD for ample storage space
- Graphics: Integrated Intel UHD Graphics 630 for crisp visuals and video playback
- Design: Sleek desktop tower with black color and slim profile for modern look
When this design is a useful model
- Consider the same kind of simplicity when access is permanent after a purchase and a small set of flags accurately represents the product’s entitlements.
- Expect more state when access depends on renewals, billing status, time windows, seats, metered use, or customer-specific configuration.
- Keep purchase history distinct from access rules when timestamps or checkout references aid support and accounting but do not determine entitlement.
- Design for repeated events if payment processing can retry: database constraints and event handling should make duplicate processing safe.
The case study is Daniel Pertu’s “Our entire production schema is one table and 33 lines, and it has not changed in 71 days,” published on DEV Community on October 6, 2026. Its strongest lesson is narrower than “use one table”: model the rules the product actually sells, and avoid adding time-dependent entitlement machinery when the product has no time-dependent entitlement.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




