DEV Community

Cover image for Ben's Five Keys to Creating a Successful Side Project

Ben's Five Keys to Creating a Successful Side Project

Ben Halpern on February 25, 2017

Ever since I got into software (HTML when I was about 12), I have always needed to work on something that was deeply my own. So if I had my own per...
Collapse
 
garysieling profile image
Gary Sieling

Do you have an example of an API based service? I've always gravitated toward UI things, just because the audience is much larger.

Collapse
 
ben profile image
Ben Halpern

In terms of companies doing this at scale, I'd point to Twilio or Stripe, and many others. Just because they are a huge startup doesn't mean the model is different for side projects. A lot of cities provide their data in ingestible formats so people can independently build things like transit apps as well.

You're providing the building blocks for others to hack on top, and by focusing down, you can really take your time to get that layer right. By cleaning the data and making it available in an ingestible format, somebody else can come in and do whatever creative thing they want with it.

A lot of people end up making APIs, but I'd say it's often the case that they would be better off doing the heavy lifting on the data layer and letting others build on top.

Collapse
 
kpath001 profile image
Kevin Path

This is a very interesting suggestion and I love it honestly.......I built an API once for my internship and since we had extra time we ended up developing UI on web, android, and iOS but the company loved it solely for the API we built because it aggregated data much better allowing for more creative uses than we could have imagined for it.

Collapse
 
nargonath profile image
Jonas Pauthier

Really cool read, definitely worth it. Thank you.

Your "start it yourself" recommandation makes a lot of sense for me. Everytime I had a cool side-project I wanted to work on, I used to bring in a friend of mine on it and right afterwards I had no more interests in the project. That's something I don't do anymore though. I noticed that I really work on it only when I'm alone as I can whatever I want and take the time to learn what I need to learn.

Collapse
 
nickma38 profile image
Nick Ma

Hi Ben, thanks for sharing your experience, the tone of the article is much down to earth and practical then common motivational pieces.

I'm struggling to find the key to persistence on side projects.

In your experience, would contributing opensource project to build skills, patience, and having people holding you accountable help?

Or would it be better to "start and finish" yourself? Keep projects small, and manage expectations?

Collapse
 
ben profile image
Ben Halpern

I would absolutely contribute to others' projects and allow contributions into yours. When contributing to others' projects, you are adding value back into the machine in great ways, building contacts, and gaining experience. I'd advise when starting your own projects, just to make them worthwhile in and of themselves, with lasting value. They shouldn't be projects that you would abandon if they don't gain traction quickly.

Thanks for the compliment on the post. I hoped to provide genuine help based on my learnings. Empty motivation is pretty lame if you ask me.

Collapse
 
silverman42 profile image
Sylvester Nkeze

Thanks for this post. I saw this at a point in my life where i am almost apathetic about programming due to the fact that all my side projects have been one steady sail down the sea of flops. I am currently working on a question generation web app for universities and as i continue, it feels like the project is already a failure even before completion. Hopefully i will use the points gathered from this post as strength to keep forging on.

Collapse
 
nizarmah profile image
Nizar

This really reminds me of myself. 17 years old but I can relate to the time from 12 years old till now.

Disappointing thing isn't patience for me, it was money. Never had enough to get something going as a prototype due to my struggles with my parents and my pride keeping me away from their financial help.
2 years later from the first project, the main winning feature showed up in Instagram.

However, ended up earning an internship to work on the second project with a team before starting college.

Lovely article, and quite touching at first!

Collapse
 
ben profile image
Ben Halpern

πŸ™Œ

Money was a huge issue for me and my family growing up as well. But my background made the perseverance part much easier once I "made it" in the industry. The money issues with my family also fueled my impatience (and they continue to). I'm desperate to help my mom retire.

Collapse
 
decahub profile image
Dan

This was the best thing I could read right now. 100% relatable. Helping my mom retire is a large portion of my daily motivation and inspiration to wake up every morning and compete against my yesterday. Money kept me away from developing my talent in Software Engineering for some years, but I am happy that I have slowly been able to merge myself with the industry. Once I find a full-time job as a developer, I feel that will be the catalysis for me to hone my skills to a much higher level.

Do you mind me asking how you β€œmade it” in the industry, please? Thank you.

Collapse
 
decahub profile image
Dan

I feel so grateful I read this! Views need data. All this time I have been trying to balance both out. I have been trying to be that Full Stack Mythical Unicorn - right now I am just a multi-trick pony. But for the side project I have been working on, the data it caters is fantastic and needs to be out there for anyone to see and use for their benefit. After this, I am going to focus on the API :) I think it will help me boost my resume - despite applying to mostly Front End roles, I think a dev who understands the backend and data generation is useful :D

Collapse
 
mroe profile image
Matt

Love this. Really resonate with the need to have something that is entirely your own. I wonder if it's because in my professional software job so many of the problems aren't tech problems, but more about convincing people about certain things. So it's nice to have a problem space that's purely technical.

Also, +1 on the API. Even in my everyday work when we're planning a new solution I always gravitate towards API first. It makes building the front-end easier and unlocks oppourtunities for the boundless creativity of our partner teams and customers. Of course many of my co-workers want to do the full-stack at once so it takes some convincing (which is one of those people challenges I mentioned earlier πŸ™ƒ).

Collapse
 
binaryforgeltd profile image
Bart Karalus

Very nice conclusions.
Quite coincidentally, I have had similar thoughts in regards to starting strictly with API around any idea. And few days later I am reading about it here. Gotta give it a go next time. :)

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

I've had so many side projects that just fizzled away. Even ones I saw to technical "completion". Keeping up motivation is a very hard thing to do when alone. I think you might understate how much you need to love your own work. It's not enough to just be hyped at the start, you need so much momentum to roll through the lows of interest after a year or two. There are so many products, even free ones, where 1-2 years simply won't be enough to garner outside interest.

That said, it's obviously key to get outside interest early, if for nothing else but to keep you motivated. Unfortunately this introduces even more prioritization of your time.

Collapse
 
byrro profile image
Renato Byrro

Those are truly helpful insights. Practicing them is no cake though, like anything worthy in life...

What I mostly miss when working lone is having someone to exchange ideas. Just by expressing ideas out will force my mind to reason and already evolve my understanding, identify gaps in my thinking, etc.

How did you deal with that during the lone period of DEV and PracticalDev?

Collapse
 
julianoe_ profile image
Julien ✏️

As i'm working toward getting a new side project going, the one that keeps coming back in my head and related to my most cherished hobby, this post gives very useful and interesting perspectives. Thanks, i will definitely keep them in mind!

Collapse
 
jeddevs profile image
Theo

I can not express just how much this helped me, thank you!
Oh wait, maybe I can, lets see:

TY,TY,TY,Ty,Ty,Ty,Ty,Ty,ty,ty,ty,ty,ty,yt,ty....

Nope, I can't, It was too great a help. But thank you, truly!

Collapse
 
kloosterman0 profile image
Richard Moloney

Do you find it more helpful or harmful to research prior art? Does it contaminate your original idea or is it useful background?

Collapse
 
ben profile image
Ben Halpern

I do think people shouldn't worry about the "competition" more than just a bit, but I wouldn't purposefully remain ignorant. A certain amount of research is only a positive. It can be tempting to mimic the work of others, so I'd recommend writing down your fundamental hypotheses before you do the research and be honest about whether they are true after you've examined the landscape.

One lesson in researching prior art is to pay attention to what people are doing in different domains, but with business and technical patterns you can borrow from. Rather than paying too much attention to the domain you're entering, pay attention to what folks in other domains are doing well that you can borrow from. The story that gets referenced with this concept is Ford paying attention to the best practices of the slaughtering industry, rather than the automotive industry, in order to improve the automotive industry with the assembly line. Ford references are sort of clichΓ©, but I like that one.

Ultimately the value of any good idea will be realized well in the future, so use the current landscape for data, but don't get too caught up in it. Keep re-evaluating your fundamental assumptions and use those as your guiding line to avoid the contamination you're speaking of.

Collapse
 
guitarkat profile image
Kat

For me, I suppose it can help to have an idea more refined by prior art. The initial idea or drafting is my creation. I found it to be useful background in many aspects.

Collapse
 
fromjamrock profile image
Bill Bailey

Great article. Do you ever find your side projects taking away from your day job? How do you handle that?

This is the part I haven't fully figured out myself yet.

Collapse
 
stevenanthonyrevo profile image
Steven

Great Insights! Totally agree, if you don't find your project interesting enough to pour your soul into then best to finish it quick.

Collapse
 
6ones profile image
Promise Ogbonna

Is @practicaldev Twitter account a bot ??

Collapse
 
abdurrahmaanj profile image
Abdur-Rahmaan Janhangeer

Nice topic 🍭