Live data from Hacker News

Mike Perham, Creator of Sidekiq: From Employment to Independence

codecodeship.com

21–30 of 115 posts

Re: Mike Perham, Creator of Sidekiq: From Employment to Independence

#21

This is one of the best businesses I have heard of. Even 6-7 years back, Sidekiq was grossing $80k/month [1]. I imagine it must be much more now. No servers to maintain, no employees, minimal support work and Mike has the complete freedom to work on updates whenever he prefers. Almost entire revenue minus payment processing costs must be profit. Imagine making $1M / yr working only 10-20hrs per week (Don't wish to pr…

Sidekiq is special because it's crazy performant, and it _works_.

Mike has built a system that's rock solid, and he doesn't twiddle around with it willy nilly. He keeps it super stable.

The people paying for it (I'm one of those people) are paying for the reliability, in addition to the features.

Mike's also managed to find a real sweet-spot with the features he holds out for Pro/Enterprise. The stratification is just right to nudge you up, but it always feels like you're getting a good deal when you pay.

Re: Mike Perham, Creator of Sidekiq: From Employment to Independence

#22
post #15

Earlier quoted context omitted.

I have no problem paying for the Pro version, but one if its marketing pitches is "enhanced reliability", which is a wild marketing spin on "the free version will lose jobs in fairly common scenarios". In sidekiq without super_fetch (a paid feature), any jobs in progress when a worker crashes are lost forever. If a worker merely encounters an exception the job will be put back on the queue and retried but a crash mea…

When we used Sidekiq in production, not only did I never see crashes that lost us jobs, but there are also ways to protect yourself from that. I highly recommend writing your jobs to be idempotent.

Jobs may crash due to VM issues or OOM problems. The more common cause of "orphans" is when the VM restarts and jobs can't finish during the shutdown period.

Re: Mike Perham, Creator of Sidekiq: From Employment to Independence

#23
post #15

Earlier quoted context omitted.

When we used Sidekiq in production, not only did I never see crashes that lost us jobs, but there are also ways to protect yourself from that. I highly recommend writing your jobs to be idempotent.

Idempotence doesn't solve this problem. The jobs are all idempotent. The problem is that jobs will never be retried if a crash occurs. This doesn't happen at a high rate, but it happens more than zero times per week for us. We pay for Sidekiq Pro and have superfetch enabled so we are protected. If we didn't do so we'd need to create some additional infra to detect jobs that were never properly run and re-run them.

Fair enough about idempotence.

I'm still confused about what you're saying though. You're saying that the language of "enhanced reliability" doesn't reflect losing 2 jobs over about 50*7 million (from your other comment)?

And that if you didn't pay for the service, you'd have to add some checks to make up for this?

That all seems incredibly reasonable to me.

Re: Mike Perham, Creator of Sidekiq: From Employment to Independence

#24

"I toyed with Sidekiq.js but decided to kill that idea real quick because, as we all know, JavaScript is terrible" This is why I love the ruby community, so much sense :)

From the JS community, this is sadly the level of snark we expect.

It doesn't have to be like this. Your community tried to be better once. Have you forgotten?

https://jasonfleetwoodboldt.com/courses/stepping-up-rails/ma...

Re: Mike Perham, Creator of Sidekiq: From Employment to Independence

#25

This is one of the best businesses I have heard of. Even 6-7 years back, Sidekiq was grossing $80k/month [1]. I imagine it must be much more now. No servers to maintain, no employees, minimal support work and Mike has the complete freedom to work on updates whenever he prefers. Almost entire revenue minus payment processing costs must be profit. Imagine making $1M / yr working only 10-20hrs per week (Don't wish to pr…

> I wonder what makes Sidekiq special?

Time, know-how, and long term dedication are the key ingredients from my perspective. Maybe he's working 10-20 hours now, but there's support and development every day for the past 11 years.

> I don't imagine any equivalent product (background job processing) in the other languages is raking in that much, if making any revenue in the first place.

I guarantee, there are background job processors in other languages making revenue.

Re: Mike Perham, Creator of Sidekiq: From Employment to Independence

#26

This is one of the best businesses I have heard of. Even 6-7 years back, Sidekiq was grossing $80k/month [1]. I imagine it must be much more now. No servers to maintain, no employees, minimal support work and Mike has the complete freedom to work on updates whenever he prefers. Almost entire revenue minus payment processing costs must be profit. Imagine making $1M / yr working only 10-20hrs per week (Don't wish to pr…

In 2017, Sidekiq was generating over $1M/yr in revenue.[0] It sounds like his costs are basically nil, so he's living the dream.

[0] https://www.indiehackers.com/podcast/016-mike-perham-of-side...

Re: Mike Perham, Creator of Sidekiq: From Employment to Independence

#27

I guess Matsumoto should have charged for Ruby. I'm sure Mike Perham and Derek Kraan would have been glad to pay for that and that the Ruby community would be in a strong and healthy shape.

Hilarious take given the fact that there are plenty of orgs making an order of magnitude more than Mike is that rely on Ruby.

Re: Mike Perham, Creator of Sidekiq: From Employment to Independence

#28
post #15

Earlier quoted context omitted.

When we used Sidekiq in production, not only did I never see crashes that lost us jobs, but there are also ways to protect yourself from that. I highly recommend writing your jobs to be idempotent.

Idempotence doesn't solve this problem. The jobs are all idempotent. The problem is that jobs will never be retried if a crash occurs. This doesn't happen at a high rate, but it happens more than zero times per week for us. We pay for Sidekiq Pro and have superfetch enabled so we are protected. If we didn't do so we'd need to create some additional infra to detect jobs that were never properly run and re-run them.

Or install an opensource gem[1] that recreates the functionality using the same redis rpoplpush[2] command

[1] https://gitlab.com/gitlab-org/ruby/gems/sidekiq-reliable-fet...

[2] https://redis.io/commands/rpoplpush/#pattern-reliable-queue

Re: Mike Perham, Creator of Sidekiq: From Employment to Independence

#29

Earlier quoted context omitted.

To be fair to Mike, Sidekiq is absolutely free. He sells an enterprise version for money, that comes with support.

And he only started because companies were telling him it would be easier if they could just pay him.

This is great. Reminds me of the Derek Sivers post [1], "Don't start a business until people are asking you to."

1. https://sive.rs/asking

Re: Mike Perham, Creator of Sidekiq: From Employment to Independence

#30
post #24

"I toyed with Sidekiq.js but decided to kill that idea real quick because, as we all know, JavaScript is terrible" This is why I love the ruby community, so much sense :)

From the JS community, this is sadly the level of snark we expect. It doesn't have to be like this. Your community tried to be better once. Have you forgotten? https://jasonfleetwoodboldt.com/courses/stepping-up-rails/ma...

The other thing I like about the ruby community is the sense of humour
Post reply on HN