Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Looking for side project ideas
310 points by mraza007 52 days ago | hide | past | favorite | 157 comments
Hi HN, As I programmer I lack ideas what side project ideas should i try to make skillset strong



The best products happen at the intersection of an existing niche you are some level of expert in already and a technology that has not yet been adopted in that niche.

I've found one approach work very well with my mentees:

- Figure out which "special interest groups" you are part of beyond software engineering. That can be "aquarium owner", "coffee lover", "morning person", "diligent grandson" — the less technical, the better.

- Among these "niches", find the ones that could benefit from a transfer of technology, like (spitballing here) "teachers who work from home" (education niche) + "automated submission and pre-grading of homework" could work (digital document collection and rule-based checking logic), or "aquarium owner" + "nitrate cycle tracking IoT device" (hardware-enabled analytics) + "optimal light scheduling" (machine-learning-supported recommendation engine).

Do that for all the groups you're part of, and you will find lots of ideas that aren't just "scratch-your-own-itch". They are 'scratch-an-itch-you-understand-and-know-how-to-remedy'.


Is it only me here who experienced such paradox:

I love tech side-projects but often I don't want to introduce more tech in my non-tech hobbies and activites as they are remedy for too much screen time. E.g. my gardening hobby highest tech is $25 weekly schedule watering valve and I feel very good about it.


"teachers who work from home" (education niche) + "automated submission and pre-grading of homework"

I homeschooled for a lot of years and my first blog was a homeschooling blog. I was involved with The TAG Project as part of supporting my homeschooling and I really hate this idea.

"Teaching to the test" is terrible teaching. Multi-guess answers aren't good ways to test student knowledge. They are just convenient for a teacher who needs to grade 25+ students.

Please don't run around thinking of yet more ways to making it nominally more convenient and easy for individual teachers to process tests or homework or whatever from large numbers of students. This is not a way to enhance the transfer of knowledge to the future generation and is also not a good credentialing method.

There are cool things being done with tech in the education space. There are people going online and learning things they want to learn because there are rich materials available for free. But they don't look anything like "pre-grading of homework" for teachers.


I think there are two great arguments here: nobody needs tools that perpetuate a vanishing system and there are lots of interesting things happening in EdTech. While I am grateful for your example, I would like to offer a different perspective.

I know of a university teacher who is looking into solving the arduous task of grading without going crazy. I approve of a tool being built to facilitate this.

I am torn on this issue as well: I strongly dislike formal education, with it following a metric of "teaching to the test" and "learning to test instead of retention." I wish that there was more systemic change towards a different way of assessment.

But not for one second will I assume to know what is best for the teachers in that space. If building a pre-grading (which is merely an example here) can help them shave off an hour of tedious work a day, I think it's a valid side project idea. It may even be a valid business idea.

The project that changed my life[1] was an EdTech productivity system that generated student feedback for online teachers working with young students in China. Student feedback as text-only is a horrible way of communicating individualized instruction. Yet we help teachers speed up that process, which allowed them to do one thing: teach more. Be more present in the classroom. Foster stronger relationships.

I would argue that making anything nominally more convenient is a good thing: it removes an inconvenience so that things that matter can take place. No teacher would call teaching inconvenient. Lots of them would call admin stuff very inconvenient.

Again, it's not about "teaching to the test" per see. It's about removing barriers to allow for meaningful, accomplished, and impactful work.

[1] https://thebootstrappedfounder.com/from-founding-to-exit-in-...


I know of a university teacher who is looking into solving the arduous task of grading without going crazy. I approve of a tool being built to facilitate this.

This is a different thing to me and a better suggestion: Solve the problem of someone you personally know whose work you believe in.

That's completely different in my mind from "pull some generic education-related blurb off the internet and build that." Even if, nominally, the two projects sound like exactly the same thing.

In practice, they probably aren't remotely the same thing, which is part of why we have memes like "Ideas are worthless. Execution is everything."


Thanks for clarifying this. I agree with this, one hundred percent. I think that if you're not an education expert or enthusiast, you'd better go look for problems to solve somewhere else — which was the premise of my original comment. It pains me every time I see someone building a business without the passion to help their audience.


Yeah, but you're making an assumption, who said it had to be multi-choice answers?

Why can't someone build a NLP model to test essays of middle schoolers or high schoolers graders on American history? You can look for learning objectives in the essay and grade upon that.

Why not build a tool with D3 or another modeling tool to teach chemistry? You could have them build compounds and then if they make a mistake, insert via a tool tip and tell them why. As they combine things, you read out what it is or test them based on the string they put in for the compound. You have to build it and name it correctly.


Why not build a tool with D3 or another modeling tool to teach chemistry? You could have them build compounds and then if they make a mistake, insert via a tool tip and tell them why. As they combine things, you read out what it is or test them based on the string they put in for the compound. You have to build it and name it correctly.

This sounds really cool and is completely unrelated to what I am saying "Please don't do."


Aquarium owner here. Thinking of IoT hardware but turns out the sensor is expensive and error/breaking prone.

Thinking to create yet another social media for people to post their aquariums and track the maintenance schedule then I realized I won't have the bandwidth (time and money) to deal with storing massive amounts of pictures, or policing the content to make sure it doesn't go down like social media dumpster fire of porn, gore, politics, religion, and other offensive materials


Take the Google Chrome approach and just have the AI randomly ban posts at a high rate.


You don't need "AI" for that


If you call it that you can raise a million dollars first.


I guess that's what I did. Niche is fighter pilot, product is generating target imagery for training. dieselplanning.com.


MAL - Make a Lisp [0]. This one has been discussed on HN before - its where I found it. I completed it last year (from Jan to May 2019) and ended up with Lisp-a-like interpreter written in C# that is sophisticated enough to self-host (i.e. it can interpret and run itself). I picked it up again when the lockdown started and I am now using it to re-implement some of the classic AI systems described in Paradigms of AI Programming [1]. I almost have Eliza (the first chatbot, from 1966!) running, which has necessitated some thinking because MAL is closer to Clojure than the Common Lisp used in PAIP. I'm also implementing what is in effect a standard library of useful MAL functions.

What I got from MAL was much better knowledge of C#, better insights into the power of lisp-like languages, some intense satisfaction when I managed some of the more complex stages, etc. MAL is progressive, supported by 100s of tests, and an amazing array of reference implementations in a huge number of different programming languages.

[Edit] My side-project before MAL involved downloading the Unity game engine and using it to explore the different aspects of game development. I discovered that I really enjoyed asset creation and in particular lighting and shader design, and (long story short - totally bizarre trajectory) ended up creating a tutorial for the Octane render engine that has had actual sales! If I was going to look at games again I'd probably start with a simpler engine such as Godot [2]

[0] https://github.com/kanaka/mal/blob/master/process/guide.md

[1] https://github.com/norvig/paip-lisp

[2] https://godotengine.org/


I recommend giving Godot a look, I really like it and have been using it for small side-projects for about half a year now. I did have no "real" prior experience with unity and unreal though.


Yes - Godot looks interesting because it is simpler and seems more stable than Unity now. Coincidentally this was discussed recently on HN [0]. A lot has changed since I used Unity two years ago and it seemed easier to start from scratch with a simpler environment (Godot) rather than figure out all of the things that have changed in Unity.

[0] https://news.ycombinator.com/item?id=23271973


Please steal any of my ideas! :)

https://www.dailyidea.com/ideas/eric

Some software ones that I like:

1. A nicer web viewer for Google Spreadsheets - https://www.dailyidea.com/ideas/d239cea3-7d1b-429f-afd4-ab9d...

2. Airbnb guest guidebook creator - https://www.dailyidea.com/ideas/d239cea3-7d1b-429f-afd4-ab9d...

3. Thai writing trainer - https://www.dailyidea.com/ideas/d239cea3-7d1b-429f-afd4-ab9d...

4. Instagram account tracker - https://www.dailyidea.com/ideas/d239cea3-7d1b-429f-afd4-ab9d...


I'm not sure if you're aware, but there are some options for in-office jukebox.

There's a lot of casting software where people can consume a stream (Icecast) and there are options for generating that stream (Liquidsoap is a DSL for just that).

Tools like airsonic have a jukebox mode: https://airsonic.github.io/docs/jukebox/

I found all of these while trying to find a way to eliminate my reliance on cloud music players because the apps almost always end up being trash.


re. instagram account tracker: https://fraidyc.at/


I am stealing a few Eric.


Please do!

Some of these I just really want to exist, so let me know when you do execute so I can be your first customer too! :)


Along the lines of your Google Spreadsheets idea - there's a number of different small SAAS that turn Google Docs + Sheets + Forms into dynamic sites.


1. Write down the apps on your phone or computer that you use the most. If you want to bootstrap a profitable business, I recommend listing the apps you use for work.

2. Write down the one feature for each app that you use the most within that app.

3. Write down what slightly annoys you about that one feature

4. Build the product around the one feature you feel you can cook up quickly and that will benefit your workflow


My story. I used to use news API services for my side projects. One day, I realized that I can build my own service that will be both, best quality (like real multilanguage support), and cheap.

8 months into it, it is my full-time job and we are releasing our first paid version (post-beta). We have 600 subscribers (beta-testers) and some people claiming they will become paid clients.

It is a huge experience in both, business and tech sides.

So, I would say the most important things are:

* forget "ideas"

* resolve your personal problem that you understand well

* always make a (side-)project with which you can charge people (making it "free" is just an excuse for not making something of good quality - 99.9% of cases)

* to the previous bullet point, you either ship a final solution that has business value for someone, or you are wasting your time (because no one can tell if it is of value or not (by paying))

Product: newscatcherapi.com


On side, does newscaptureapi provide author information i.e. name of author bare minimum, email will be great. And also how you tackle copyright issues?


We provide the author(s) name when possible. No email. Regarding the copyright - no. It looks like a grey area as long as you do not return the full article’s text body


Thanks for this. This might be something I'm looking for at the moment.


thx! Do you talk about my kind of philosophy or my product?


I am doing exactly this right now in my free time. I stopped seeking the idea that was not thought about yet blablablabla. I just want to do something that I can actually use, and if it works out, I hope others can also benefit from it. I did the same about 15 years ago, when I started programming. Ironically, it was the only time that I published something (that is not work and paid) and that people actually used (and thanked me for it).

Let's see how it turns out this time.


Cool! Let's try this.

> 1. Write down the apps on your phone or computer that you use the most. If you want to bootstrap a profitable business, I recommend listing the apps you use for work.

Emacs, vim, xterm, tmux. (I use them all for work. 99% of the time, what you see on my screen is either Emacs, or an xterm running tmux and some instances of vim.)

On my phone, alarm clock. (I use it to get up for work)

> 2. Write down the one feature for each app that you use the most within that app.

In emacs and vim, probably self-insert-command or some basic motion commands.

In tmux, switching between windows and panes.

In xterm.. uh, just the fact that it's a terminal?

Alarm clock. I use it to wake me up in the morning.

> 3. Write down what slightly annoys you about that one feature

Nothing about the most used features above annoy me. Well, terminals annoy me but emulating terminals is the raison detre of a terminal emulator so I don't know if there's much you can do about it..

I also hate alarm clocks but I kinda need one to wake up.

> 4. Build the product around the one feature you feel you can cook up quickly and that will benefit your workflow

Looks like it wasn't that easy :(

Something tells me that picking the most used application and the most used feature in it most likely leads to the most solved problem that doesn't need to be solved again...


I’ll try this for my phone:

1. Most used apps are the browser, Facebook (marketplace only), Snapchat, Messages, Amazon, and RobinHood.

2. Browsing the web, browsing local listings, messaging people, shopping, trading stocks and options.

3. I wish the browser had better tab management and persona management. I wish Facebook Marketplace had a lot fewer ads and better categories. Also I wish it wasn’t Facebook. I wish there was a way to disable Snapchat notifications about the other person typing. I wish Messages had a way to disable notifications if I am, say watching a video or have some specific apps on (like games). I wish Amazon had a proper filter for “items I can get soon”. I wish RobinHood allowed me to list options bids/asks for longer than a day.

4. Of these the Amazon and RobinHood ones are the only ones that are feasible. There are alternatives to Facebook Marketplace and they are all worse/less popular. I doubt Apple would let me change their apps or OS code.

I suppose there is something here with an unofficial RobinHood API. Scraping Amazon is a popular thing to do but I don’t want to develop a complete clone of their app with just a single additional filter.


Quite a nice way to get an idea of what to do.

Do you use this for serious products that you feel like releasing? Would you be discouraged when you have found an alternative on the market that fixed the problem for you?


I had an idea yesterday for an alarm clock that requires a qr code to turn off, checked and there's been one out since 2012 with millions of downloads. Tough to find low hanging fruit.


Right, but doesn't that just prove that there's a market for the product? You could build a similar app with a more attractive/relevant UI, make it easier/quicker/cheaper to use, or market it towards a specific niche.


My story: I was tracking my expenses in a spreadsheet. But it was starting to get really annoying having to keep receipts (I ended up losing most of them) and remembering to open the spreadsheet every time I had a new expense.

I created my own expense tracker and I use it to share stuff with my wife :)

https://atomicmoney.app


Seems nice, but it would be nicer if I can sign in to the app. Sign In With Google doesn't work.


Hey. Just a suggestion: would be nice to have a feeling of the app before signing in ;)


Thanks for the feedback! I'll definitely get that done :)


I would probably get downvoted for this..

It's very rare to find those "scratch your own itch problems", the solution to that itch is most likely a google search away.

Pick a good product that you use and clone it. Keep an open mind because you can never copy the entire business since there is only so much you can see. Atleast you get some direction to start and you know that you are not trapped in building something people don't want.

Since you mentioned making your skillset strong(technical?), either way you win by just starting something.


I'm not a SWE, but this is how I sometimes make music if I'm starting without an idea.

Take a song you love—or even a song you've just heard 15 seconds of—and try to recreate it, but extremely loosely, taking as many liberties as possible exploring directions the initial inspiration leads you towards.

More often than not, it'll morph into something unrecognizable compared to the source inspiration, and quickly become it's own thing.

Staring at a blank sheet of paper, or the the void of limitless options, is frozen death. Give yourself a limited toolset and an inspired spark of imagination to get yourself going, and incredible things are possible.


I discovered a long time ago that I often get lyric ideas while listening to other songs, usually in the car. What I find interesting is that most of the time the ideas that pop into my head are completely unrelated to the lyrics of the song I'm listening to.


Excellent advice.

You can even go further and you'll notice that the vast number of VC backed companies are just focused snippets of Microsoft Office Apps.


Or even just full-featured craigslist pages: https://i.imgur.com/9WM1PPE.png


I agree, trying to scratch your own itch is complicated and frustrating and if you really actually need whatever you’re building, chances are you could solve the problem in an easier way. After that, you’re not scratching your own itch anymore, you’re making it easier for others to scratch the same itch that you’ve already solved. It’s just not that easy to say “build something you need”.

Chances are you can do it in an Excel spreadsheet without writing a single line of code, but where’s the business in that?


Do something challenging but not too challenging. It should be hard enough that you can learn something without being so hard that you give up.

Some classic computer science project ideas:

- Build a path tracer. Physically-based rendering is a topic with lots of information on the Internet. It requires some math, but at least it's fun math :)

- Write an operating system kernel. It doesn't have to work on real hardware, just QEMU. You could even run it on a very old PC, Raspberry Pi, or TI calculator. This is a good introduction to how OSs work. Again, there's lots of courses and pages full of information online.

- Write your own programming language. Combine ideas from existing languages. You can make an interpreter, a JIT compiler, a single-pass compiler, a nanopass compiler, or something completely different.

- Combine multiple projects! Make your own programming language run on your own operating system and write a path tracer in your own language! Be creative, have fun, and learn useful stuff.


> a nanopass compiler

Got any good resources on this that aren't focused on the Nanopass Framework?


No, I don't, unfortunately. I haven't tried writing this kind of compiler myself, although I would like to at some point.


I'm currently working on a progressive web application for support workers in care homes.

I've seen through first hand experience how much paperwork there is in this setting (daily outcome charts, medicine administration records, abnormal behaviour records, dietary and fluid intake, etc) and how many clerical errors there are. I've also seen first hand the key-document-dependency there can be around service user files, communication notification booklets for staff, etc, where changes often happen synchronously and are forgotten because the document isn't available in the moment.

I've spent the last 4 months or so taking a sabbatical from working as a software engineer to work for £9.00/hour at a support home for people with mental and physical disabilities (think Down's syndrome or people who are unable to live in an independent setting). As a result I now know an awful lot about this setting, the people who work in this industry, the minimum feature set I would need and the legislative landscape these companies operate in.

The best way to find a profitable side project is to become familiar with a none-technical discipline which is direly in need of modernisation. If you don't want to take time out of work, then choose an industry (it could be tree felling, red-brick manufacturing, shale oil extraction or solar panel installation) and figure out what the problems are plaguing the companies, staff or end customers.

There are so many $1,000,000,000 companies out there just waiting to be founded in areas which are considered unsexy and don't involve yet-another-to-do-list application. Find one company, with one problem, fix the problem, there's your profitable side gig.


Hi this sounds really interesting - I'm currently doing a PWA for a completely different industry and use case (enterprise sales), but I'd love to compare notes sometime - especially on ios & ipados side.


I've had a lot of experience in and around this looking after both my grandparents. Would be great to learn more about your experience and what you've got planned - would you be interested in a chat?


I have been working on EMR and EMAR applications for the past several years. This is a space that interests me.

If you would like to collaborate and need a programmer let me know :)


- Make things that solve problems you have.

- Make things that seem interesting/fun to you.

Borrowing ideas from other people seems unlikely to be very engaging, and making things just to learn skills has the same problem.

Lacking side project ideas seems kind of incomprehensible to me, as I have far more ideas than I could ever put into practice, even if I didn't need to work for a living. Therefore, I suspect you do have suitable ideas, but maybe aren't recognising them as such for some reason?

Scripting repetitive or annoying things is an easy place to start. Maybe start with simple website-improver GreaseMonkey scripts, to fix things that bug you, or make your life easier?


There is an initial phase, where a creative person is just starting out. In this phase ideas are rare and sometimes seem precious.

I don’t quite understand what happens but after a while this phase passes. I think one of the core factors might be just doing stuff out of curiosity, playing, implementing things that are your own, fueled by curiosity.

Then, day after day you get showered in ideas. Good ones, crazy ones, boring ones. All kinds of solutions or new ways of doing things come to mind.

Today I find it much more challenging to filter and evaluate ideas than to get them.

Some important virtues that help in both cases: patience, practice, playfulness. Also respect of other people’s work.


Consider building completely ridiculous, useless things. It removes any mental pressures towards commercialization/viability and shifts the activity from more like work to more like art, which can open up space to flex the skills you want to flex.


This. Have fun and create.


I don't want you to take this personally, but your post seems very low effort. How can we devote time to helping you if you only put 10 seconds into making this post without reviewing it?

For one, writing skills are important. You will have a hard time selling your project to anyone on its merits if you write incomplete sentences with lackluster English.

Second, you haven't taken the time to list out what your strengths and domains are, therefore HN can't leverage its vast knowledge to point you in the right direction.

If you want to build a useful project, you'll need to be more detail oriented and persuasive than your post here. Take the time to do things right. Feedback is worth its weight in gold, and you've given us zero to offer feedback upon except for your scanty quick query.


And yet it's got more than 200 votes and more than 100 comments (which is extremely good for an Ask HN). The first rule of writing is "know your audience" and he seems to have that part nailed.


Actually, I think your response is really pathetic. Not everybody is good at writing, and for many, English isn't their first language.

If you don't like his question, don't answer, but finger-wagging over commas and punctuation makes you look bad.


English is OPs first language, based on his profile.

I don't think it's too much to ask to just proofread before you submit.

That's an important life lesson as well.


It doesn't mean pedantic finger-wagging is an appropriate response to the question. You corrected him because you feel superior. You aren't.


I love how your points make sense and seem reasonable at the same time that they were completely irrelevant to attract the right audience and feedback from the community.

A foreigner does not need a perfect English (or English at all) to create and sell a product in their countries. Please keep in mind this is an international community.

Foreigners should not be discouraged because of a broken English.


This is not a "foreigner" or "broken English" problem. I agree with the parent that this was a low-effort post. No details were included, neither emotional nor technical nor interests.


My point still stands. None of that prevented the post from reaching the front page and bringing a lot of good insights. This is a good reminder that we, as humans, sometimes focus on irrelevant things.


> No details were included, neither emotional nor technical nor interests.

Which worked out great, because otherwise most answers would have been specific to OP's emotions and interests and probably wouldn't be that useful to other people.

Questions like this don't get upvoted because of the effort put into them. They get upvoted because of the answers they attract. I'm fine with that if it means I get to read some interesting answers.


OP is from New York City according to his linked profile + homepage.

It is indeed low effort.

Your comment may be more insulting than the one you're replying to :)


This. Despite being a management graduate and IELTS score of 8 bands I struggle to form cohesive sentences and almost lose the essence of my message especially in online forums like this.

I have seen people reply with so much consistency and grammatically well-formed sentences I almost cringe how they have honed their craft to this level. What's the secret? Any ideas on how to work on improving writing skills especially in formal settings & forums.

PS: had a boss who was so consistent in his writing that he used to reply in full sentences even on IM with punctuation and all that. I secretly admired him.

PPS: Is Grammarly premium worth it?


What tasks do you do manually in your life/job that is boring? Automate it wherever possible.

Help users of nonprofits understand them better - watsi, Kiva etc share data that can be visualized in a variety of ways.

Teach (blog, video etc) - this is especially effective in topics you already know, but have gaps. Teaching forces you to clear those gaps.

Do exercises from project Euler, Rosetta etc


Probably a bigger time commitment than implied, but the UN [0] and code for america [1] list volunteer opportunities.

[0] https://www.onlinevolunteering.org/en/opportunities?f[0]=fie...

[1] https://brigade.codeforamerica.org/?_ga=2.40007591.405176958...


I think it's important to find feasible projects. A full stack project will probably be left unfinished. A way to find projects is to do tasks that you'd at work if you didn't have deadlines and were allowed to do more exploratory work.

That said. If you like nodejs, you might try to do a Babel plugin. They would allow you to do meta programming and it's an area mostly unexplored (because of the great breadth). In my case that was https://github.com/furstenheim/babel-plugin-meaningful-logs to improve error messages.

If you like java and use Intellij, give it a try at creating a plugin. You'll be able to simplify your flows. Since it's mostly self tailored it will be most probably not done. It's not extremely hard, in a couple days you might have something workable. In my case it was adding support for ZPL language, which is very niche. But most probably you can find something tailored to your dev experience.


I counted at least six mistakes in your question text, so I would recommend you to work on your writing skills. Luckily, writing is a universally useful skill, and almost any side project you pick should give you an opportunity to practice writing.


So you decided the best way to help was to scold OP about his English mistakes.


Come on. They asked for advice on which skills to improve. I know nothing about them except that they seem to struggle to piece together a sentence.


What's your level? Are you a beginner or do you already have some experience?

Also: What's your language, your target market? Suggesting a backend project for a frontend language or vice versa doesn't help you much.

In general, start with a game. You can be as creative as you like, there are no limits. On the other hand, you can keep it as simple as you feel comfortable.

That said, if you have some experience, look for an open source library that needs support. You improve the library, you improve your resume and you will get constructive feedback.


- I would suggest make a small app with just basic crud operations. It should have a front-end, backend and a database and then work incrementally to the other steps mentioned below.

- Use k8s to deploy and run your app.

- Add more business logic where you will be needing more tools like elasticsearch, message-queues, etc.

Some examples from the top of my head are Stock Ticker app, Ticketing software like Zendesk, Food delivery App, etc.

Note: Start small, add one feature at a time.


What are the differences and pros and cons of a Database vs local storage? I'm thinking of creating a site where users can add there own urls and titles and this information should persist after the browser is closed, should I store these strings client side and tie it to there browsers local storage or tie it to some account on a database ran by me? Keep in mind there is no limit to the amount of strings a user could make and I predict there will be lots of users with at least 200 individual strings needing storage. Don't want to commit without being sure first.


If you either want to do stuff like processing or analyzing it on the backend, or let users access their data from other devices, use a database. If not, use local storage.

Local storage has the benefit of saving you bandwidth and storage cost, no matter how much your users save, and probably more privacy.

Databases on the other hand, allow you to „do stuff“ with the data when the user is offline, share it through cross-device sessions and things like that. However the users can’t be sure what you are doing with it.


Aight thanks for the reply will keep this in mind


If your goal is to 'make skillset strong', then I assume your want to learn. It's hard for us to guess what your interests are, so the most straightforward advice would be to join an open-source project that uses the desired technologies (language, framework, etc.) and go from there.

There's usually an issue-tracker and mailing list for the project to get some contact with other devs.

Pick an issue that has attention and which you feel you can understand. Replicate it, then try to solve it.

It's impossible __not__ to aquire new professional knowledge in such process.

It's also ok, to drop it and try to find another project, perhaps, more up to your present skill level.

The more you try, the more you'll learn...about yourself.


Build an app for finding lost pets with facial recognition. Recognizing cats is the easiest thing for neural nets, yet I haven't seen it used for lost pets yet.

Basic idea, if my pet is lost, I open up your app, upload a few images of my cat and set a monetary reward. On the backend your neural net learns how that specific cat looks like, then other users of the app can snap pictures of random cats on the street and the app will tell them if that animal is lost or not. If someone snaps a picure of a lost cat, they'll get connected to the owner and the reward is transfered, the app can take a small cut of it.


Neutal nets can definitely identify cats and also tell if it is a black or white cat. But identifing a specific cat might be difficult...


You'll also need the Boston Dynamic dog to go get her.


Not really, human face recognition is quite accurate and humans all look identical in comparison to the diversity of cats and dogs


... ok what approach would you use for that? Let's say you use yolo to detect th bounding box of the cat, but how do you want to identify the cat, based on your sample images?



Ok. This could work, somebody tried it for dogs (https://github.com/GuillaumeMougeot/DogFaceNet)...

For the problem to solve in the first place, one might use a gps-tracker for pets or something.


It can be difficult to find a worth while idea. I feel that it is important to come up with the idea yourself so that you feel more committed to it, but that might just be me.

Look for something you are passionate about, or for something that is useful to you. The idea doesn't have to be unique or original. For example, there are apps that track your run time and distance when exercising. Some of these apps collect your data. You could create an app that tracks your run so you know your data isn't being collected by a company.


This was written in part to prompt people on HN to think about gig work platform ideas that actually enhance the lives of the workers:

http://writepay.blogspot.com/2020/03/the-textbroker-solution...

I've also previously talked about the fact that I live without a car in the US and when I was researching what small town to move to and using Google maps to try to figure out how to get there, if it can't give you a full solution from point A to point B, it will not tell you "There's a train that goes to X city, but that's only halfway" and it doesn't cover commuter bus routes between local cities.

I routinely went on Amtrak's site to find out how close I could get by train and then began searching for local transit options of some sort. I eventually found a solution and a city to move to and all this, but I was homeless at the time and spending all day at the library trying to figure out solutions to my problems.

As far as I know, there aren't any good apps for "How do you get there from here without a car?" for the US. Google maps does not have this problem space sorted and they seem to be the overall best solution (that I'm aware of) for finding out how you can get there from here.


My company collaborated on a project to solve this problem (currently UK only, though the tech can expand anywhere given available datasets) - http://commuter.cc/. Unfortunately it’s a very challenging problem and there is very little interest from travellers, at least not enough to create a profitable business! So unlikely we are going to expand this any further.


Previously mentioned to you, but Rome2Rio is pretty good at this already. Also carless here, and it’s worked wonders.


Build something that you wish you had, not what you think people need.


These tend to be the sort of things I'd already have if I knew how to build them, had enough time to build them, and/or could afford them :-(


Solid advise. Any motivation to build something for others is soon gone, whereas you will keep working on that little library you want to use yourself.


Build something simple, and make it a product/tool that doesn't require many active users to work, aka, doesn't require a network effect.

I built http://feedsub.com for this reason. Only a few users, but it indexes thousands of feeds and I make plenty of use out of it for myself.

My current project is deploying this app on a Raspberry Pi based cluster, and I'm going to write all the software for this myself to learn distributed programming.


Well in my opinion you should create something that helps yourself (!) - not others. Think of your all day life - some things you do pretty often and try to find a project, that really would help you. If there already is a great open source project for your purpose (and probably there is), you could try to get part of it... improve things... read code (which is a good way to get a better skillset!).

Targeting a better skillset or developing just for making money most of the time does not result in good ideas or products - but a project of personal interest will motivate you for a long time.

Personally, i created software, that i always wanted to have, but did not find something, that fitted all my needs - and it is still fun to work on it... e.g.:

  - A simple tool to transfer files
  - A tool to improve scanned document images and create a pdf 
  - A tool to convert audio files
Just my 2 cents.


>> - A tool to improve scanned document images and create a pdf

Would you mind sharing the approach you used or the product page if it is public?

Incidentally, I was trying today to get two images combined into a single image and convert that into a single PDF. Tried with paint.net, MS Paint 3D etc., It was messy and the resultant PDF was also huge. Finally, gave up and manually pasted the images into a word doc and exported them as a single PDF.


My approach (in java) was using a set of filters to clean up the image with BoofCV, then using tess4j OCR to make the document searchable and then use Apache PDFBox to create a PDF with invisible text layer. Its not open source yet (i plan to do so), but you could take a look at https://github.com/ctodobom/OpenNoteScanner - which seems to be much more advanced.


Look into ImageMagick and pdftk. That will solve your problems.


a different take: why not look for existing abandoned projects that need a new maintainer. every year we have thousands of new ideas that will never survive in the long run so why not help out on something that already has a user-base but doesn't see updates? maintaining an existing system, and making it better might not give you the same glory as inventing something new, but imvho it should.

e.g.:

slide #46 and #47: https://www.debian.org/doc/manuals/packaging-tutorial/packag...

https://www.debian.org/devel/wnpp/

https://wiki.debian.org/Teams


I am working on spark tickets. Perhaps boring, but useful for others. Sometimes if you have no ideas, you can help out other projects instead.


Start a community for helping people ideate on side project ideas.


The CAD/CAM space is pretty out of date. Modern tooling in that space could be highly valuable. That said the industry is not that open to new ideas.


Build a teleconferencing app tailored for parties rather than meetings. The needs of parties are very different than meetings. I'd suggest there be a central channel where everyone can participate and talk, with the video on that channel being something that sets the theme of the party (a bonfire, a movie, a performance). Then it should be extremely easy to click on participants and engage one or a few in conversation. Perhaps those side video conversations could bleed into the main channel (maybe audio only) so that people in the main channel can overhear and potentially decide to join in. Think about how people interact at parties and try to tailor video conferencing to work better for social gatherings. Security should be built in to reduce worries about privacy so people feel free to talk; no routing of everything through a central server, peer to peer only; recording should be only by consent (though there would be no way to stop analog recordings). There are a variety of video streaming libraries that might make building such an app easy. It should be trivially easy to understand and use. I think it might almost be possible to use existing teleconferencing apps if everyone could join two channels, the main channel and a side channel, using two devices, e.g., a laptop for the main channel shared by several people, and individual phones for the side channel for smaller conversations. Coordinating all that and explaining to people how it works might be difficult though, so putting it all into one app with an intuitive UI would be useful. There may be issues such as how to deal with audio feedback noise and easily joining and leaving side conversations though. You don't want people to have to send invites and accept them to set up a side conversation, you want it to be instant and easy.

Even if the coronavirus ended tomorrow, I think this would be a popular and widely used application.



Check out https://spatial.chat/ (use desktop or laptop for better experience). It's mostly an MVP but already popular for parties and birthdays.


Perhaps you could develop an open-source self-hosted tool for neighbours, communities and groups to connect, share info and support each other during quarantine.

I posted this a while ago and it never received attention: https://news.ycombinator.com/item?id=22604275


Create cross platform GUI library for Rust programming language. If you succeed, at least you will be very famous.


This is derived somewhat from a post on HN, and it would be really hard to pull off... but, An intermediary between all the automated bills you pay and your credit card. I.E. Comcast is going to bill me $89 I get a notification asking me to approve the automated payment.


In Switzerland I have that. It integrated directly into my bank account. Any automated payments goes into an inbox were I approve each payment when I want to.


I've been wanting to create a side project that I can expand and hire people back in my home country (there are tons of college graduates but because the country is a third world country, there aren't many tech jobs).

My goal is to bring a change on how software is developed using lean methods and based on user research and feedback so the devs aren't looked as sweat shop cheap labor from Asia.

I'm having trouble because I'm not sure how I should start. I don't think I'd want a VC to be involved. There are some great ideas here, I think approaching people and asking them about their problems and empathizing is not easy as an engineer myself but I'm learning.

Any pointers appreciated



If the goal is to improve your skillset, then maybe try building a real-time multiple game. You will learn many different skills, including:

- Graphics: Displaying 2d/3d graphics, using the GPU, shaders, etc..

- Multiple Clients: Dealing with multiple browsers or OS's

- Realtime Communication: Multiplayer will require sockets or web-rtc to provide a realtime experience

- Database Tech: Depending on what DB you choose, you'll learn CAP theorem and other trade-offs.

- Algorithms: Developing gameplay logic, rendering logic, AI logic.

- User Experience: Making the game fun, getting feedback and implementing sugguestions.

Making a game is also very satisfying, which is important to prevent burnout during the project.


For me it was just looking for a procedure that annoyed me so much that I just had to build a tool to fix this.

Why do we still have to open our calendars, look through endless event notes to copy and paste a link into a browser that then launches the native meeting app? That's why I built an app called Meeter [0] for that.

[0] https://apps.apple.com/de/app/meeter-fast-call-initiation/id...


This is awesome. Do you have a website with a list of features? Does it support outlook and chime?


Take any of mine you'd like: https://github.com/cretz/software-ideas/issues


Have a look through all the different side projects submitted here

https://www.sideprojectors.com

See if you can make something better. :)



One side project idea I am working on is a web application starter kit that may be up and running in 30 minutes, with more than 10 fundamental features for every web app. I think it can speed up the time to market of other web app based side projects. It is available at https://turbovar.com/turbovar/index.jsp


I wrote a mildly successful article on the topic: https://filipesilva.me/blog/12-ideas-for-programming-project...

I include a, not very scientific, evaluation of each idea according to profitability, complexity and complexity. Also some real examples of each idea.


TheMask01 from here on HN posted a project they had created called https://decentdrops.com. While browsing this really great tool, I noticed the domain name EasySVG.com was available for registration.

Maybe an online tool for making SVG files from various types of image formats built on this fantastically brandable domain name?


Do something you want to do. That' sit. It doesn't need to be something that whose point is to make your skillset stronger. Just have fun, and don't back down from any challenges. Having fun is a huge part of learning, and if we're driven out of interest, it's even better. So, do what you WANT to do, and the rest will follow suit.


Is there something that is annoying you? Do you know there is a better way to do it?

I've spent part of the pandemic automating OpenAPI spec with minimal annotations needed for an API. I was annoyed that the existing solutions wanted more annotations than actual code, when all the information OpenAPI/Swagger needed was already right there in my code. Just an example.


Give us a list of keywords to help you: languages you want to use, hobbies you have, stuff like that. We will try to come up with an idea


You could start with teaching what you know.

I've been doing that with https://alchemist.camp (screencasts for learning Elixir), and it's been a great side project. It's pushed me to learn more than I would have otherwise, built up a (small) profile online and generally lead to good things.


Check out https://trends.co/

They release their research on upcoming trends. Some articles are awesome and lots of people seem to start side projects based on it. In addition, the community and FB group are solid. You can meet lots of makers if you have questions about a specific industry.


I'm sure these already exist in some shape or form, but anyway:

1. Grep, but as a web service for RSS/Atom feeds. Allows to filter a feed based on search terms, or by author, or by length of post, etc.

2. A feed reader (as a web service and mobile app) that specializes on YouTube (etc.) videos, with current playback position sync and other video-specific features.


Here is a list of profitable ideas for reference https://www.profithunt.co . I found it helpful to skim through because it isn't a list of shiny cool ideas, but projects that actually made money

Edit: add https to the URL


auto generate react ui code based on drawing in emacs artist mode http://www.lysator.liu.se/~tab/artist/ . I don't have time right now else i would have pursued it.


Many innovations are two existing things combined in a novel way (phone+computer=smartphone, home+hotel=AirBnB, carriage+motor=car)

You could list things you are familiar with or use regularly and see if combining them in a novel way sparks the idea for an innovative product.


I also struggle but find that if I choose a few libraries and tools that I would like to make use of, I try and build a project around them - doesn't have to be anything in particular, just a kind of playground for the cool libraries and tools.


If you have no idea, why do you want to have a side project? You are taking it backwards, a project is the expected solution to a problem you face. You need to find something to solve, then what can be a project will be obvious.


Check out the cool stuff happening in the distributed web space, as well as the Protocol/Platform Cooperative movement

It's all open source, and I believe we will go into that direction very soon!

Projects like Holochain, IPFS, DAT and Holo-REA


https://github.com/ellisgl/keyboard-schema (or any other of the repos could always use help. Haha)


Not sure what's your target, so it's really difficult to make suggestions.

A few things I might do in the near future: a PyQT tilemap editor which supports limited random generation; Reading CSAPP3 and work on the projects.


I am putting together a crm and data extractor with nomad/consul/fabio. I feel there is a lack of good content on how to build cloud solutions with proper security. Feel free to reach out.


Bunch of random ones I’ve come up with https://www.are.na/tmm/random-public-ideas


If you're interested in politics and transparency, we're looking for help over at https://www.govtrades.com


Very simple. Create something that saves a group of people time in some way. Let’s say making it easier to research something / like a product they’re interested in.

Saving time = value.


Please build a decent vms for residential use. I will pay for it.


Could you provide more specifics? Cloud based platforms for personal computing needs is something that intrigues me. I would like to understand what is it that NextCloud or other existing offerings are lacking according to you?


Sorry. When I said vms, I meant video surveillance for residential use :)


Maybe just buy synology NAS? Some cheap network cameras, there are even ones working via wifi. Not sure how good survilence station is for your needs but I could quite easily connect 2 cameras and have it running without paying more than device price and hard drive.


The most decent I found was camect. I am considering buying it.


No comment on the ethics of it, but: go to freelance sites (such as upwork), and look at what people are requesting. Lots of good (and bad) ideas are on there.


I'm not clear on the ethical problems of doing research on what problems people / companies need solving?


Maybe build something to learn something. Ask yourself what do you want to learn. Then go down that path.

Try to make the goal short yet difficult.


I have an idea but still not implemented yet. Make a webpack plugin to have file-based routing like Next.js.


Find something that you repeatedly do and try to automate it. Create things that save time.


I think you could improve your English if you have some free time.

That's a good skill to have!


Meta advice: don't try to solve a problem you haven't personally had.


Make an automated bookmarking service based on your browser history.


Thats cool idea


Build things for other people you like or care about.


That is easy way to lose friends :) when you get annoyed with feature requests. It is easier to build stuff for people you don't like because usually you want to cut amount of features.


1. Build an adblocker for locast.org


Make something you want.


Cynically, this post could have been: “you aren’t going to work on that potentially lucrative or rewarding idea, stop hoarding it and give it to me.”

Isn’t this also “I need a product-focused co-founder”?


I don't see a problem with people sharing ideas - especially for those of us who lean more to mission-driven ideas... if we have an idea that we believe would make the world a better place, then by all means, let someone go make it.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: