Settings

Theme

Ask HN: How long does it take for you to release your open source project?

2 points by buglungtung 3 years ago · 4 comments · 1 min read


I love to build pet projects because it is where I can use anything I want in various ways that I cannot try in my main job. Most of the time, I want to publish them as open source projects, but I haven't published any of them. There are too many reasons that make me unconfident to publish them: a lack of documentation because I used all my time on coding, worries about whether my approach is the best practice, concerns about performance because I have not done stress tests, and so on.

So, I want to collect statistics on how long it takes for you to release an open-source project from the time you have an idea to the time you announce it on the internet. Then maybe I can plan for myself better. Thank you so much, guys.

kstenerud 3 years ago

https://concise-encoding.org/ will be released this year and has been in development for 5 years. This one has been slow because of all the support projects such as https://github.com/kstenerud/compact-float and https://github.com/kstenerud/compact-time and https://github.com/kstenerud/enctool

https://github.com/kstenerud/dogma has been in development for 4 months and will be released in about a month. This is yet another support project for Concise Encoding (hopefully the last!).

https://github.com/kstenerud/kscrash was in development for about a year and a half before being released.

https://github.com/kstenerud/Musashi took just under a year before its first release as a MAME core (after a TON of testing - I spent 4x more time testing it than I did writing it).

But other smaller things that don't require so much precision I just write up in a couple of weeks and release, such as https://github.com/kstenerud/virtual-builders

The key is to build empathy with your potential users. What will their motivations be that lead them to try out your project? What will they be looking for when they use it? What would someone who has never seen the project before struggle with? (that last one is the hardest because you're so close to the project that it's hard to see what it's like to know nothing about it). These tell you what kind of UX you'll need, what kind of documents you'll need, what kind of tutorials you'll need, how to structure your project for your target audience, etc ("it's for everybody" is never a good idea).

Building a project is a lot like building a startup. You need to figure out your target market. That means lots of tests, lots of talking, lots of listening, market research, competitor analysis, even some pivots.

A lot of times it comes down to recruiting people to just try it and do a brain dump of everything that goes wrong or frustrates or confuses them. I've done show-HN posts for things that are unreleased (e.g. https://news.ycombinator.com/item?id=34720488 ), just to get the valuable criticism. It's nearly impossible to develop good projects in a vacuum.

If you're not posting out of worry for doing it wrong, THAT IS doing it wrong. The point is to find out where you're doing it wrong so that you can correct it! And that's where the crowd is a HUGE help. You can't build something great without looking foolish first.

  • buglungtungOP 3 years ago

    Thank you for the feedback and advice you provided, especially regarding the target audience. In light of this, I plan to start by publishing some of my smaller projects first, as they are relatively easier to complete. This will involve documenting the process, testing the functionality, and creating blog posts about them.

    I am also curious about your motivation to work on a project for an extended period of time, such as five years. While I have found excitement and fulfillment in completing the core functions of a project, I have also experienced burnout in continuing to work on it. So, I would like to know what keeps you motivated throughout the long haul of a project.

    • kstenerud 3 years ago

      I'm not sure, TBH... Maybe I'm just a glutton for punishment?

      I'm currently partway through refactoring all of the portable unit tests for Concise Encoding ( https://github.com/kstenerud/go-concise-encoding/tree/master... ) and it is a SLOG! I mean, so goddamn boring and tedious that I wanna stick an ice pick through my skull. There's easily another 200 hours of this terrible work ahead and I'll be right back to it the moment Dogma v1 is published in a few weeks.

      Do I dread it? Yes. Am I still going to do it? Yes. Because at the end of the day I want to be able to stand back and say "I made that. I completed it - ALL of it. It's not perfect, but it's doing its job and people are using it."

      I do take vacations from my projects from time to time. It's good to do so regardless, because you need the distance to gain a better perspective. Coming at it a bit cooled off means you need to refresh your memory - and that uncovers many of the UX problems your project has.

      • buglungtungOP 3 years ago

        I see. I also often spend my holidays in front of my desk, playing with my pet project. And I find it more worthwhile than going outside, lol.

        Thank you so much for your comment.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection