Live data from Hacker News

The Joy of Small Projects

schroer.ca

71–80 of 103 posts

Re: The Joy of Small Projects

#71
I know this will probably not be well received but there are many frameworks that are force multipliers. I see people whip out nice hobby crud sites in a few days with rails. I kind of made one with meteor once though meteor is sadly dead.

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.

Re: The Joy of Small Projects

#72
>Make your projects small and finish them every time.

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).

Re: The Joy of Small Projects

#73

I know this will probably not be well received but there are many frameworks that are force multipliers. I see people whip out nice hobby crud sites in a few days with rails. I kind of made one with meteor once though meteor is sadly dead. 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…

If you are building a mobile or web app, and not an API product, not having to write your backend is totally underrated. Hasura [0] or Supabase [1] lets you have a solid backend from a solid Postgres schema you design, which the part that arguably matters the most, and not the lossy and error prone CRUD API interface to the db. This frees up a ton of time which you can then use to improve your user experience and iterate on your idea without churning through a ton of backend code.

Having Postgres also helps a lot when you are just starting out and saves you a lot of upfront design and query planning cost you’d have with something like DynamoDB (which is pretty inflexible in ways you can query your data).

[0] https://hasura.io/

[1] https://supabase.com/

Re: The Joy of Small Projects

#74

What does “finished” even mean?

Once all the yaks are shaved and you get around to the original goal?

Though, for myself, previous rounds of yak shaving has made it easy to start a “simple” project and usually get it finished in a reasonable amount of time since what I mostly do is write wrappers for the python C-API and my system is pretty solid at this point. Makes it easy to test out different libraries even if the end goal is to use it from a C(++) program.

Probably need to get a grip on the yaks I’m currently herding if I ever want to finish my current long term project.

Re: The Joy of Small Projects

#75
post #28

One tip I've picked up from experience: avoid projects that have user accounts. 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 so…

Or just stay small to have manageable user base.

I have created https://kyselo.eu/ which is social network for refugees of now-defunct Soup.io.

Re: The Joy of Small Projects

#76
post #51

Earlier quoted context omitted.

Not OP but if you have user accounts you suddenly have legal responsibilities (in Europe) to follow GDPR rules etc…

The easy solution there is to just ban European users if it's just a hobby project and your concerned about that. Probably not the solution that GDPR would prefer.

That's not as easy a solution as it appears - the GDPR isn't the only piece of personal data legislation in the world. If your strategy is to keep track of all the places that place responsibilities on you for collecting personal data and reject users from those locations then, you need to be looking at every state in the USA (Californian citizens have a consitutional right to privacy), and many countries across the world have various data protection laws.

Re: The Joy of Small Projects

#77
For me, the best small side projects involve some kind of porting (between protocols, OSs or CPUs), contribution of a fix for a visible but mysterious bug, or revival of codebases in bad shape, especially when they're unfamiliar and written by others. You can learn a lot from a software engineering culture that's different from yours or small, feasible projects that allow you to understand the bits and bytes of something unfamiliar in a fun and useful way. These projects are great to develop flexibility and general problem solving intuition. And getting familiar with the 20% of an idea, a protocol, a programming language, etc' that's used 80% of the time in real-world use cases, is often enough.

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)

Re: The Joy of Small Projects

#78
Probably works for a certain class of projects, but not for many.

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/

Re: The Joy of Small Projects

#79
post #28

One tip I've picked up from experience: avoid projects that have user accounts. 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 so…

Unless you're living in a place that really heavily regulates the web, I don't think you need to fear having user accounts in hobby projects. I've built dozens if not hundreds of hobby projects that had accounts. This includes a blog I ran from 2005-2017, flash games in 2010-2011, an ear-trainer for recognizing relative pitches, a couple of apps that do things with photos, half a dozen language learning apps and all…

It is pretty easy to run into truble with user accounts due to privacy regulations like Europe's GDPR. This stuff is definitly not fun in a side project.

Re: The Joy of Small Projects

#80
post #28

One tip I've picked up from experience: avoid projects that have user accounts. 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 so…

This. Here is a great post on it from a fellow indie-hacker: https://casparwre.de/blog/launching-a-product-without-a-logi...

He built https://keepthescore.co/ precisely with this in mind.

Post reply on HN