Skip to main content

Media

  • Picture of two doors with 'WTF's coming from them, depicting good systems and bad systems

WTFs Per Minute

RTFM they said lol.

So my Odoo’s Database manager is alerting me that the password is not set.
So I read the manual, go to config, set admin_passwd = admin, reload.
Database manager still says it is not set.

So I do all sorts of checks to ensure the config is loading, that config is set.
Look for what might be overriding it in my env.

Finally, last straw, dig into the code.
And the code essentially says “if password is admin, alert the user that the password is not set.”

# odoo/conf/loader.py (roughly)
if not admin_passwd or admin_passwd == "admin":
   db_manager_warn = True

# odoo/addons/web/controllers/database.py (simplified)
if db_manager_warn:
   alert_user("The master password is not set.")

So technically I did set the password. It;s just that Odoo decided "admin" doesn't count.  Because... reasons.
The communication is "password is not set" when the truth is "it's set but invalid". A few minutes more thought
about the phrases would have saved hours of frustration and head ache.  

They could have put that in the dang manual, or even a comment in the config where they literally use 'admin' as the default example password.

This drama reminds me of  Uncle Bob Martin’s metric for code quality, WTFs per minute.
I reckon it applies to systems too. Configs, docs, UX, deployment scripts, the whole shebang.

I used to get paid to debug this kind of stuff in corporate IT. I wanted to build, but 90% or more of my time was spent
beating my head against exactly this kind of crap.
Whole teams of people sitting around, shipping feature updates and abstractions upon abstractions, all design to improve efficiency but somehow make things worse.
So I bailed.

I've gone all-in on eBay reselling. Books, DVDs, weird collectibles.
Finally, work that made sense, I list it, I sell it, I ship it. Done.
No Jira tickets. No sprint reviews. Just results.

But tech has a way of pulling you back in through the side door.
I started automating little bits of my own business processes, accounting, inventory, reports.
Next thing I know, I'm up at 3am fighting Docker Compose caches and debugging Odoo configs again!

Except this time, it's different.
This time, it's mine.

I'm building my own SaaS system on top of Odoo for Aussie eBay resellers because all the tools out there are made for someone else.
I don't want overpriced subscriptions or Silicon Valley fluff.
I want something built by a reseller, for resellers.

So yeah, the tooling's WTFs per minute are still high,
but they're my WTFs now, and I can take the time to make sure to smooth them over and not add more of my own.

I'm building something I care about, and that's what makes all the difference.