Hacker News new | ask | show | jobs
by pie6k 1138 days ago
https://screen.studio founder here:

Thanks for all the comments.

Why 5 minutes? Well I ask this question myself as well. I think it was bad and risky idea.

You create MVP and you make 20 decisions like this a day. I probably thought "why not" as it was stopping anyway and I released a few versions a day at times and wanted to get feedback and crash reports quickly.

I did change it now to 3 hours.

Why downloading it without user confirmation?

Well - because this is how Electron auto updater works under the hood (checking for update = downloading it) and it cannot be customized without implementing a lot of the logic by myself. I'll soon modify it and do exactly that, but I was creating MVP, got traction and as solo dev I had to carefully pick things to focus on. Electron auto updater works and is battle tested so I picked it knowing this limitation and suboptimal flow.

---

So I understand a lot of critique you're making and I agree with it. It's just I was making compromises, iterating quickly and making silly mistakes.

4 comments

Comprehensible, very hard to nail everything on the first try, and a person often has to make tradeoffs.

> this is how Electron auto updater works under the hood (checking for update = downloading it)

Electron auto updater seems too raw, for an app that has a decent size.

> I did change it now to 3 hours.

In my opinion, it is still too frequent. Ideally, the user should be able to set his preference and the app should have a less aggressive default (once a day seem more than enough for most cases).

Or you should have 2 channels of updates.

1 for Alpha/dev/beta testing, whatever, and 1 for "stable".

Allow users the option of being beta testers and getting updates every 3 hours, and if they do not opt in, they're put in the weekly update "stable" group that gets the most reliable and solid but up-to-date version of the app at that time.

What's so big deal in all this 3h vs 24h? It is still downloading it only once anyway and if there is no update the network call it makes is really 300 times more lightweight than opening google.com. I really don't understand this.
It is understandable that you need to iterate quickly, but that should not be an excuse to not spend just 5 minutes to think through the potential scenarios. Also, you can have a function to query an end point to find latest version available as a string, compare that to a const string inside the build, if they are different then invoke the auto-updater. Simple and light weight.
What products did you ship last year?
None. But I also have never costed any of the companies I worked for 8k due to 1 line of code. It was a constructive feedback, but hey take it however you will.
There is a fundamental difference between working in a company and shipping products alone as a solo person.

I did have 3 months of savings left and wanted to pursue my dream of creating a start-up.

I did create a fully working desktop app, a high-quality design for it, a landing page, an entire deployment infrastructure for the website, and uploading new version artifacts. While doing that, I was also taking care of all this marketing (30k unique website visitors a month on avg - analytics is public here: https://plausible.io/screen.studio). And a lot of other shit I don't even remember.

At the same time, you were working at a company where very likely at least one person was working on each of those areas independently, and most of the people did not give a damn if there would be a month delay in some area.

And then, you simply explain to me to compare version strings as if you've discovered a circle. WTF. It is a damn obvious thing, and it, of course, happens. The bug was about a whole different thing, but I'll not even try to explain it as I already did and it didn't prevent you from writing this bs. I wonder if you ever think how would you feel if your co-worker wrote a code review pointing out obvious things you did correctly, not related to the context of the PR at all, and ending it with "Simple and light weight." punchline. Maybe it would give your team an amazing opportunity for a long lunch break to discuss things.

this is really annoying, and this triggered me to write my challenging question.

I really doubt you'd be so "mistakes-free" and "I know it all" if you switched roles with your CTO for a week while all devs will take a week-off. If you write comments to solo founders so confidently, maybe you should consider that or if you're not willing to, to fucking think twice before writing comments next time thinking you're a guru because you nail your full time work.

Looking at the confidence you express your opinion (you actually don't express an opinion, you state your opinion as a fact), I believe there is no slightest thought like "maybe I miss something" or "maybe I'd also do exactly the same thing in this person shoes" and other shit like that.

I admire you for being careful and always thinking through all possible scenarios. On the other hand, I enjoy my life as a founder of a startup that has traction (and all its benefits of it). I'll risk betting that this difference is there precisely because you likely never make such mistakes, and you look at people who do from a perspective of "I know it all, and I'll tell you what you should do." ("Simple and light weight.") (note: it is possible you simply don't dream about founding a start-up which is totally fine. But even then, I believe it is a fundamental mistake to look at people who do create start-ups from the perspective of full-time-work and projecting your perspective on theirs)

--------------

I have no idea why the hell I even discuss with your "compare strings" wisdom. I just wasted 1 hour and half the emotional energy I have for this day and it's 9AM.

> Why 5 minutes? Well I ask this question myself as well. I think it was bad and risky idea.

Fair enough people make mistakes...

> I did change it now to 3 hours.

lol

Shampoo
Is your response to your app still trying to update too often really just "shampoo" ?
Not much more I have to say about crying over 500 bytes json fetch request and policing others to make it at most once a day instead of every 3 hours.
> Well - because this is how Electron auto updater works under the hood (checking for update = downloading it) and it cannot be customized without implementing a lot of the logic by myself.

Yay, one more argument against Electron and the likes.