Tell HN: I Need Project Ideas
Note: This is my first post on HN so if i violated some rules by (or the way) posting this i am so sorry. And also sorry for that i am not fluent in english.
Note: This is my first post on HN so if i violated some rules by (or the way) posting this i am so sorry. And also sorry for that i am not fluent in english.
Facebook, for all its faults, didn't start out as a social network to connect people and collaborate; it started out as some sexist objectifying bullshit to rank women based on their appearances.
If you ranked every project from most beneficial to humanity to least, Zuckerberg's original project was near the bottom, but the potential that Facebook had before it started destroying democracy for engagement metrics was near the top.
If a site that started out as just sexist trash could somehow morph into a giant, world-spanning social network connecting people with each other across the globe, then please don't think that your projects need to be fantastic right out of the gate.
- an intrusive surveillance system that puts the FBI to shame
- a system of increasingly isolated and toxic echo chambers
- a disinformation and propaganda machine powerful enough to shape public opinion, influence elections, and facilitate civil unrest and extremism
- an "attention economy" where people are encouraged to scroll infinitely so they view more advertisements
- something that makes people feel worse about themselves and generally depressed
etc.
Tools are designed for their use-case. A butter knife won’t be useful for stabbing, while a hunting knife will excel at it. An airliner delivers passengers, a bomber delivers destruction. Both are planes, both are tools, and both have wildly different applications.
If you knowingly keep developing a tech product which actively harms people at a societal and individual level, you don’t get to hide behind “it’s just a tool, it can be used for good or bad”. It will be used for whatever you designed it, and Facebook is designed to empower its creator with utter disregard for anyone else. You don’t use Facebook, it uses you.
You might try writing a blog post. If you're not used to thinking through writing, the results may surprise you.
Pick a topic you know well, or at least think you know well. Then write about it. You'll soon realize cracks in your understanding you never knew existed. Those cracks contain project ideas.
> Afterwards next i'm thinking about the idea and i realize the idea is not fullfilled or not useful for humanity, community, at least for me.
You can talk yourself out of any project idea. One way to deal with this problem is README-driven development.[1] You don't want to commit to a project because you don't know if it's worthwhile. You won't know if it's worthwhile until you spend some time on it. How to spend just the right amount of time? Write the README first.
[1] https://tom.preston-werner.com/2010/08/23/readme-driven-deve...
There, your problem.
Jump around everything shinny and Wonderfull, and jump again when something else steal the focus.
---
I have not cure for this, I'm the same. But after years I regret badly how much jumping around shinny delay the joy of actually do something.
So, read. Is fun.
But pick one major thing you wanna do, and the thing that, hopefully, you wanna do FOR LIFE (or a big chunk of it).
And focus on that.
P.D: I always tough on build a FoxPro/Access hybrid but never start it, then start it and get distracted or busy. Only lately putting actual focus.
This was 20 years ago!
I'm suggesting this because in addition to practicing programming and running projects, it also exposes you to the most important part of being a professional developer: working with people, learning their problem, communicating across wildly different areas of expertise, and making a useful thing.
Of course, that was all a long time ago, and these days I only make things for myself (budgeting app, cookbook, personal library tracker, an RSS to newsletter service... some are more polished than others but they all scratch an itch). I'd recommend that too.
The world could use an open-source project to manage restaurants; content management backend, let people add in all of their menu items with photos, descriptions, etc. and then surface that to the website (or not). Mobile app support, iPad- or web-based ordering (for servers or customers), Skip/DoorDash/UberEats integration, or self-managed delivery could all be potential for-profit addons, as well as hosting and consulting. This is something that I could potentially see people liking and using, and could also turn into a potentially profitable business.
I play D&D a lot; it would be nice if there were an e.g. AndroidTV or AppleTV app that could display maps, including with fog-of-war, etc. I tried to do stuff like this with existing tools and had a really hard time lining up the existing grids on battlemaps with what the software understood to be the grids in the software (used for calculations). This one would require a GM interface to show/hide areas, active stuff, whatever. No idea if it would be fun to build (maybe use computer vision to detect battlemap grids?) but it's a thought.
Start by making a store and get payment processing working, this will teach you heaps about abstraction, interfaces, integrating third party APIs, error handling, logging, debugging and deployments.
You don’t have to finish it (but you should try, discipline is important) and you’ll likely find other areas of interest as you go along. Make notes, just Text files organised in folders is fine to start
It’s really important that you just start something, it doesn’t matter what, but you need practice and stuff to talk about and SHOW employers, don’t get analysis paralysis.
Then see if you can solve the problem or part of it with your skills and knowledge.
This is the approach I’ve followed.
I’m currently working on an app that helps visually impaired people be more independent. Reach out if tou want to join this project.
So if you don't know how to start. Read up on general software engineering. Then read up on the top development programming tools in that area. Then setup a development environment using the most common tools. As you move forward look for forums you can frequent to get help and give help. Be relentless and develop as if it is a job. Set a deadline on when your product will be done. If you don't set a deadline it will never be delivered. Successful developers deliver on time and with the best code possible. Don't get hanged up on finding the best. Once you have some experience then you can decided on the best. By the way, the "best" is wishful thinking. There's no such thing. They are just tools with advantages and disadvantages.
Deliver a few copied projects done and on time. Once you do that you can start to decide what your life's work will be. Think about a year(at least) of constant development before you get to that point.
Idea list:
- write a blog about writing a blog software, see its recursive kinda. You can't start out hosting this blog on your own software because your blog platform doesn't exist yet.
- write a to-do/task list in each cool language/framework that was interesting to you. This could also apply to non-web languages - write one for mobile, on Windows/Mac, etc.
- write software to track a scrum project, story points/estimates, burn down chart, velocity, etc. As much hate as Scrum gets, there are solid project mgmt principles in there and if you are learning this in school (or another PM framework) then writing software for it might help solidify what you learn
- You could actually write a blog about your journey doing these things in your native language. A lot of the "tech" world's new stuff comes out of the US and the majority of people on Earth are non-English speakers. Reading thru translated API docs is probably not the best way to learn.
To say useless doesn't mean it doesn't work for it's intended purpose. Just that the purpose isn't trying to change the world.
Origami is pointless but would you really get more fulfillment making paper plates?
So what? There are plenty of really cool projects that aren't actually "useful" to anyone. The important part is actually accomplishing something that you can show to others. Just build things that you're interested in - you'll gain skills that way and build up a portfolio of work that you can show employers down the road. If you want to contribute to something that actually provides value to people, consider contributing to open source projects.
If you want to do something similar, I have a huge list of video game ideas you can pull from [1].
[0] https://github.com/Syn-Nine/rust-mini-games/tree/main/2d-gam...
To start, just explore, learn, and help others. (If you find this boring, it's a good sign to pick another community.) Sooner or later, you'll bump into real bugs and missing features/tools, and you'll have an excuse to start learning how to implement them. If you feel like you are understanding very well (perhaps you're able to regularly help people from memory) and no good opportunities have presented themselves, you could also start asking around. I would focus on people who are visibly working on their own projects; ask for any standalone projects on their todo lists that they don't have time/energy for.
---
As an aside, the right project probably depends on what motivates you. Not what motivated you to post this--but what motivates you to keep waking up on this side of the dirt each day. I.e.:
- If you are motivated by learning more than building, you may be able to get away with picking something at random.
- If you are more motivated by building things (a good test--does leaving things unfinished weigh heavily on you?), you'll probably do best if you can find something that will scratch an itch of your own. When you're scratching your own itch, it's easier to avoid analysis-paralysis over the needs of users that you don't have yet. Unfortunately, there's a chicken/egg problem here. It's easier to find itches when you're already working on some kind of project (of your own, or with others). I regularly bump into little things that could make a good project.
- If you are indeed more motivated by helping other people, it's good to start preparing now for the possibility that you are in for a rough ride. There are a lot of missing little tools out in the world that would be useful for other developers or the general public--but there's also a vast sea of interesting little tools that've already been built that have somewhere between 0 and 100 users. You will not only have to solve the problem, but to help others you'll probably have to promote your own work. (Pay attention to whether this sounds boring, exciting, or horrifying. You can overcome boring/horrifying if you are really committed, but it may be a grind if you aren't...)
See: https://news.ycombinator.com/item?id=30714506
(Google open sources solar atmospheric water generator)
People can even pledge funds for something to go open-source. Once it does, people can then cooperate together to make it work. Help build groups to cooperate on things already open for that purpose.
... a more business-oriented GitHub.
[0] https://github.com/Livinglist/Manji [1] https://github.com/Livinglist/Dumbbell [2] https://github.com/Livinglist/Hacki
Hope this helps
A lot of games don’t natively support campaths so modders make their own to make videos like this https://youtu.be/ptPtpr6g1n8
I build it some tíme ago
This is hacker news, where people either work on esoteric projects for the sake of intellectual curiosity alone, or they make a shit ton of money and reason backwards from that into how much they contribute to society so they don't feel bad walking past the person shitting on the street outside their $5k/month apartment. Or you're in the third or fourth camp, where you're a fresh grad with hopes, or someone who makes a modest amount of money that they doesn't really change their class in much of a meaningful way