I planned to spend less time on memocortex.com, but you know how life is. In memocortex.com, I have an admin user. An actual human who uses the admin part of the app. They uploaded images they created in the UX hell of an admin area.
- I did not have a namespace for admin (
PegsController
etc.), which was utterly insecure. - The app is in production and visited by some lost souls.
- I did not have a monitoring tool enabled, which I preach to do once you hit production.
So the admin kickstarted the whole chain of tackling needed changes π§¨
And I spent one whole weekend morning fixing the UI, refactoring, and noting down some learnings π£
But it wouldn't be a side project if you wouldn't know that there will be unknowns needed addressing all the way through until you kill it.
Decide on your namespace early on
My initial playing around with the scaffolds was just a playground where all my models had no namespace. I used my scaffold playground as the super admin space, which was pretty bad because any Rails magic (think render @model
) would go there. So if I made one mistake like this, the user would be redirected to the admin space and prompted for a username/password (HTTP basic auth), which is pretty lame.
The refactoring itself took a bit of time. Apart from the renamings, you will have to deal with all those form_with
and render
calls, where now you sometimes need to specify a @collection
or a url
.
The good thing about scaffolds was the automated tests, they basically guided the refactoring process to a significant bit, but of course, they needed a bit of fiddling.
Error and performance monitoring
I really enjoyed the idea of playing with datadog for this project because I heard so much good about it.
But it is paid from the start and probably too big of a solution for this small project.
And given my time constraints and familiarity with Sentry, it became Sentry again.
Coming projects
So I've shaped up some unusual to keep me busy for the next month:

Also, given my time constraints, I restructured my coaching efforts and added some FAQs to the mentoring page. Creating FAQs is somehow fun π€·
Lastly, I'm introducing a "free paywalled" newsletter:

It's free because I'll add you to the newsletter and drop me a message. It's paywalled, so people can write without worrying about who might be reading it. I know this approach from some paywalled forums. It's a goldmine of firsthand information there.