Urgent.News

What's breaking now, across thousands of outlets.

Tech

I built an auction engine that refuses to bid for me, and the platform terms say why

I started an auction house for a selfish reason, the goods I make have no channel. One-off prints, ESP32 devices, speaker prototypes, the surplus in a homelab that gets upgraded every year. None of it has a storefront that fits, so I built the machinery before I built the inventory. The engine is stdlib Python plus SQLite, and the interesting part isn't the scheduling, it's the one rule I refused…

A self-made auction platform was created to provide a channel for the author's one-off prints, ESP32 devices, speaker prototypes, and other surplus goods. The platform's unique feature is its refusal to bid for the seller, which stems from an "age-old rule" present in every auction platform. This rule prevents an autonomous agent from placing a bid on their own listing, directly or indirectly, thereby protecting the platform from potential bans or refunds.

The auction engine is built using stdlib Python and SQLite, with the main rule being the prohibition of self-bidding. The engine checks for various conditions, such as the lot being unknown, the bidding time being after the close time, the bid being below the minimum amount, the bid being the same as the current highest bidder, and so on. Each rejection returns a specific reason string, making it easier to assert against the rules.

The platform follows the convention of online sales not being regulated in Florida, unlike in-person floor sales, which often are. The test sale was conducted using synthetic bidders, and the suite ensures that the rules are followed accurately. Despite the low commission fees, the real cost of a HiBid sale lies in cataloging labor, making it essential to have a 24/7 local model for intake, description, condition report, and disclosure.

The bottleneck remains the inventory and audience, with bidders being the least controllable factor.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

I replaced NFS with a FUSE filesystem on my homelab, and macOS ate three working days

I run an always-on homelab, a Mac mini, a Dell server on the LAN, a gaming PC, a UPS on every box. Files move between all three constantly, so the hot tier of the Dell used to be a Nextcloud mount…

  • Replaced NFS with FUSE filesystem (JuiceFS) on homelab Mac mini
  • macOS took three days to fully function post-switch
  • Performance boost: 225 MB/s write, 618 MB/s read

I built WebWarp because Chrome's Local Overrides never finished the job

Every frontend dev and QA engineer knows this dance: You need to change one response a live site returns — a script, a CSS file, a JSON payload.

  • WebWarp addresses Chrome Local Overrides limitations for frontend developers
  • Supports URL matching, local file mapping, and scoped conditions
  • Offers founder lifetime deal at $99 or monthly plans starting at $19

I'm chasing one of a hundred free crab robots, and the contest rules decided the shape of the work

KingKong Robotics open-sourced Jumper, a 22-DoF crab robot, and with it a raffle: the BE UNLIMITED Crab Robot Challenge runs 2026-09-30 through 2026-11-30, and they pick 100 outstanding open-source…

  • KingKong Robotics released 22-DoF Jumper crab robot for contest
  • BE UNLIMITED Crab Robot Challenge invites 100 open-source projects
  • Contest prizes Jumper robot with specific hardware specs

My bank statement PDF has a password. Here's how I remove it without uploading the statement anywhere

Every month my bank emails me a statement as a password-protected PDF. That's fine until I need to do something with it: forward it to whoever files my taxes, attach three months of them to a loan…

  • Identify open or owner password type by opening PDF in browser
  • Use browser print dialog or qpdf command line tool to remove password
  • Save cleared PDF as copy, keep original encrypted statement as archive

More from Friday 16 October →