by dschroer on 4/10/22, 6:43 PM with 94 comments
by simonw on 4/10/22, 9:53 PM
If your project has user accounts, you'll get users who you have to take responsibility for. Then it's not a side-project any more, it's a part-time job.
These days I much prefer side projects which have no user accounts at all (like https://www.niche-museums.com/) or that are open source tools where the end user installs and uses the software without me having any involvement at all (like https://github.com/simonw/shot-scraper)
by eternityforest on 4/10/22, 9:09 PM
I can think of 4 projects on my own, lifetime total, that I would consider ready for a "Version 1.0.0" tag, and far more that regret ever spending time on, some that required more time on top of that to disentangle myself one(Especially with hardware, where you've now got physical stuff to deal with).
The only small projects I've been happy with are the pure toys and decorations. One was a replacement for fortune, but it generates them dynamically using a MadLib style text replacement engine. Another was a candle flicker simulator.
Anything tool or infrastructure or library-like has usually become a regret, save for one multiyear megaproject, and a few things with zero reasonable alternatives.
I think the best small projects are the ones that are purely self contained, that will never have anything else depend on them, that will never be part of you "personal baggage" to maintain.
by cersa8 on 4/10/22, 9:02 PM
For this to work I have docs folder with a todo.txt, architecture.txt, questions.txt and features.txt. I push it early to a private gitlab repo and use a language like TypeScript that makes it easy to come back to and make changes without fear of braking things. It won't be the first time that I get excited (again) by something and can continue on an existing project.
by levmiseri on 4/10/22, 8:16 PM
The process itself is indeed very fulfilling and joyful.
by alin23 on 4/10/22, 8:44 PM
A big part of that time was spent creating the icon, and copy pasting boilerplate code from my other app for the menubar UI.
Coding the main functionality of the app took little time and it still remains one of the most fulfilling projects I’ve completed.
Of course, I have invested a lot more time since then, especially in handling edge cases with odd keyboards, only because I wanted the app to be useful to as many people as possible.
But it could have stayed the way it was as well, where a 2-day project was still solving a problem thousands of people had.
by ransom1538 on 4/10/22, 9:58 PM
Github security reached out. Banned. All accounts locked. Creepy lawyer emails. Threats. Then i remembered we are in a closed garden now. It isn't 1998.
Then I was like oh! I will try another one. What if we allow people to automatically delete comments under 0 points on HN. I had a simple script anyone could run on their laptop. Posting was Flagged. Removed from front page in 10 minutes.
by tbrownaw on 4/11/22, 1:04 AM
My projects tend to be because I want something from them (explore a new toolset; have a working dish disposal; make my car able to play audio from bluetooth; not have to care about network filtering on random wifi aps; get a history of just how bad the temperature difference between rooms at home really is). They're "done" when either I have (enough of) what I want, or I lose interest and decide it doesn't matter that much anyway.
by sideproject on 4/10/22, 9:09 PM
Is your project "finished", when you see an MVP that you can release to the world? Your project now has a minimum set of features that delivers the initial value you thought it would deliver?
Is it worthwhile to do a Show HN on it? (and risk no one clicking on it because HN receives so many submissions? :)
Is it worthwhile to release on PH? (and so many products launched in PH thesedays are... pretty much well-polished, revenue ready - if not funded etc)
What comes after you "finishing" your projects? Will you continue? or move on to something else?
For me, one of the ways to define "finishing" was to make sure that it launches with some type of payment plan. It is an MVP, but it also has monetization in it so that should anyone else wish to pay for it and use it, they can do so immediately.
Sure, not all projects are about payment and those projects are fine (which is why I said 'one of the ways'...) but if I know that this is something that I'd like to continue to work on because I enjoy it and I know it has legs, I try to find some way of generating revenue to see what the response would be.
Thoughts?
by not-my-account on 4/10/22, 8:17 PM
I've learned a lot about browsers, for example, chugging away at a little toy website[0] with a buddy. I know it is simple, but it blew me away that I could dig into webkit to see why stuff worked the way it did. We are incredibly lucky to be digging into such an accessible field.
by pronlover723 on 4/11/22, 6:38 AM
Another example is Unity and Unreal. Go to any game jam and see how amazingly productive the people are that have learned them and know where all the easy to use assets are as well.
Of course the problem with the frameworks (and game engines) is that it's a many month upfront investment to learn them and get comfortable so that when you do want to bang out a new hobby project in a weekend you can.
by la_fayette on 4/10/22, 8:05 PM
The idea is really great, however it seems quite hard to solve interesting problems in this short timeframe.
by rickdeveloper on 4/10/22, 9:31 PM
I think this is a good place to reference Tiny Projects [0], which to me are a manifestation of what is described here.
by m_herrlich on 4/10/22, 7:35 PM
by dimkr1 on 4/11/22, 8:47 AM
https://github.com/dimkr/gplaces (Gopher -> Gemini port)
https://github.com/dimkr/paho.mqtt.embedded-c (revival of an abandoned library, WebSocket+TLS+Windows+Meson porting sub-projects)
https://github.com/dimkr/loksh (OpenBSD -> Linux)
https://github.com/dimkr/locwm (OpenBSD -> Linux)
https://github.com/puppylinux-woof-CE/woof-CE/projects/1 (a bunch of GTK+ 2/X11/X.Org -> GTK+ 3/Wayland/wlroots porting sub-projects)
https://github.com/dimkr/gtk (x86_64/ARM64 port of a 90's library)
by dysoco on 4/10/22, 8:06 PM
I will try to use the framework presented here but I'm not sure exactly how to apply it, for example the project I've been meaning to finish is what I call a very dumb compiler (parse a very simple language and emit x86_64 assembly code but without any optimizations, the most naive thing that will work).
It's hard to think how to reduce this problem to something I could do over a weekend; I have to do a lot of research, thinking and trial and error because I'm not an expert in writing parsers or anything like that.
I feel like this might only work in certain occasions.
by cjohnson318 on 4/11/22, 4:57 AM
by thundergolfer on 4/11/22, 1:27 AM
It is annoying to ship something that isn't as polished as I want it to be (order fulfilment is a bit janky). But this annoyance is certainly outweighed by the joy of actually delivering something. The polish can come later is a decent amount of people start engaging with the digital project.
by jatins on 4/11/22, 10:02 AM
For example just recently Zas editor[0] was on HN whose developer spent >1 year building it. How do you restrict that to a weekend?
Similarly the creator of bun.sh[1] (Javascript build+runtime) has been working 80 hour weeks on it for 6+ months.
Ambitious projects like those _will_ take time.
[0] https://news.ycombinator.com/item?id=30952084 [1] https://bun.sh/
by lambdasquirrel on 4/10/22, 7:45 PM
Don't get me wrong, I've taken art classes that taught me to appreciate smaller, shorter things. And I think it's important to take that spirit into longer-term projects. But I think there's just a lot more "small" projects these days, what with the combination of APIs, funding, hackathon culture in engineering, and prototype culture in design. The pendulum has gone all the way to the end. Which is fine too, but some of us are going to want to go the other way.
by bambax on 4/10/22, 7:56 PM
by FunnyLookinHat on 4/10/22, 8:59 PM
by stazz1 on 4/10/22, 7:40 PM
by aabbcc1241 on 4/12/22, 4:34 PM
I think the key motivation is being able to see the actual users (ideally also being the active user yousrelf)
by bkq on 4/10/22, 7:18 PM
by rhubarbcustard on 4/10/22, 9:08 PM
https://www.moreofless.co.uk/map-of-parkrun-5k-running-event...
It's really simple but I use it often myself and other people are finding it too, which is nice.
by Voklen on 4/11/22, 6:47 AM
The only part I would disagree with. It's also important to know when to kill a project that's not going anywhere, where finishing won't provide any value. Yes, finish almost all your projects, but there are those few that are not worth reluctantly dragging out (especially if you've now found another tool that does the job).
by ChrisMarshallNY on 4/11/22, 1:24 AM
by mtoddsmith on 4/10/22, 10:00 PM
by didip on 4/10/22, 10:40 PM
by arvindrajnaidu on 4/11/22, 4:29 AM