Michael Koper
michaelkoper.com
Michael Koper
@michaelkoper.com
Dad of two - Founder of https://nusii.com - Bootstrapper - Ruby on Rails
Started a new experiment. Lets see if Laravel people need Proposal Software 😊
November 19, 2025 at 12:10 PM
I'm starting to create many Claude Code commands recently. One of those things of, why didn't I do this before?
November 19, 2025 at 9:25 AM
Ok ok, I understand sum is a special case. This is a real life example. How would you test the method on Offer here. Would you stub those relations out or just create those records in the tests?
November 17, 2025 at 2:21 PM
This is a simplified real life example of something that is hard to stub out but doesn't use raw SQL.

Here I just create some line items in the test
November 17, 2025 at 1:52 PM
This is a more real life example of some code that is hard and annoying to stub out
November 17, 2025 at 1:51 PM
Yeah I use build or build_stubbed wherever I can. But lets say, something like this. I could stub the activities has_many relation. Or I could just create the record and test if the method really works.

(not a real example, but you get the idea 😅)
November 17, 2025 at 1:42 PM
I had a small discussion a while ago where they said that unit tests should never hit the database.

I honestly don't know why it is such a big deal? It is so much easier to write. Unit tests are also the fastest test to run. 545 tests under a second ¯\_(ツ)_/¯
November 17, 2025 at 10:43 AM
Last 6 months I’ve been working so much that I forgot that I live in such a beautiful place.

Two weeks ago I started to work less and started to go back to running twice a week.
November 16, 2025 at 12:32 PM
What have you done @lucianghinda.com ???? 😱
November 12, 2025 at 7:08 AM
And the winner for the most useless macOS UX is, ...

😂
November 6, 2025 at 1:19 PM
Local CI before and after :)

The biggest win is that I can run 12 processes in parallel instead of 4.
November 6, 2025 at 12:40 PM
😂

I imagined you doing this at 10km/hour 😅
November 3, 2025 at 11:48 AM
Always nice to see @mjwhansen.com!!
November 1, 2025 at 1:36 PM
Are you like 8 years old? No, but today I’m Drumbledore 😅
October 31, 2025 at 11:01 AM
Seems legit, must be an old invoice because Nathan left 6 years ago. 😅
October 24, 2025 at 11:04 AM
Awesome! I miss those times!
October 22, 2025 at 3:27 PM
😎

I see now that I hid the routes that actually used the admin path 😀And of course the Avo part!
October 22, 2025 at 2:15 PM
Never heard this one before, I choose Nusii over a competitor because I like your vibe better 😎
October 22, 2025 at 12:36 PM
Another stupid security thing is simply having a random generated url for the admin panel. And a honeypot admin on /admin 😂

So even, if they hack my account, it is still difficult to reach the admin panel.
October 22, 2025 at 12:03 PM
An overly cautious way to prevent password reset requests on admin users is simply raising an error :)
October 22, 2025 at 11:56 AM
Trying out @briancasel.com 's AgentOS 👀

Yes on a Saturday night 😅
October 18, 2025 at 7:56 PM
Hanging out with the doggy and indirectly with @briancasel.com and @justinjackson.ca after a short run while the kids are away for a few hours.

Hearing about 1000 different things and they all are interested and fueling my motivation for the upcoming week.

Great Sunday so far!

panelpodcast.com/22
October 12, 2025 at 11:11 AM
got it!
October 9, 2025 at 10:47 AM
A function I use to checkout branches by search.

Because I always forget the actual branch name 😅
October 9, 2025 at 10:25 AM
Reliving old hobbies with my 7 years old!
October 4, 2025 at 10:58 AM