Dear Lifehacker, I was wondering if there is much I can do if I have an idea for an app but no ability to code and no money for early development? Are there any companies I could approach and if so, how can I prevent them from just taking the idea for themselves? Cheers, Aspiring Developer
Dear AD,
There are plenty of people who will code to spec — you can post coding tasks on crowd sourcing websites such as Bountify, Elance, CodersCrowd, Freelancer, FFiver, oDesk, Rent A Coder and guru.com. These platforms allow you to post specific job listings, with different freelancers bidding for the role.
While you will need some money to pay them, the overall cost can be surprisingly affordable (much to the chagrin of the professional coding community, who feel this type of business model cheapens their craft.) Just be aware that the results may fall short of expectations; especially when it comes to low-bid contracts. As with most things in life, you tend to get what you pay for.
If you decide to go down this path, it obviously helps to have a very clear idea on what you want to develop. In addition to ensuring you’re both on the same page, this will also reduce the likelihood of implementing changes, which will cost you extra. You should also keep the app idea as simplistic as possible — this will help to keep costs down and increase the likelihood of receiving a good final product.
When it comes to avoiding idea theft, you’re basically at the mercy of a company’s ethics. Australian copyright law protects the original expression of ideas, but not the ideas themselves. Copyright also doesn’t protect you against independent creation of a similar work. In other words, there’s nothing stopping a company from making a few tweaks to your idea and claiming any similarities are a coincidence. Proving otherwise could involve a costly legal battle which you presumably can’t afford.
As a safeguard, be sure to keep detailed documentation of your idea, along with any correspondence you embark upon with third parties. This won’t necessarily save you from getting ripped off, but it’s better than nothing. (You can learn more about Australia’s copyright protection laws here.)
Regardless of a company’s trustworthiness, you need to be realistic about the value of what you’re offering. Think about: you want them to do all the work and pay 100% of the upfront costs in exchange for an idea that might not even pay off. How much is that really worth? Personally, we think you’d be better off developing the app yourself — that way there’s no risk of theft and you get to keep all the profits.
Coding languages aren’t some kind of arcane magic; with a little time and effort, anyone can learn the ropes. As a starting point, check out our recent developer’s guide to building your first app. The article’s author, Dominic Williamson, is responsible for one of the most successful apps on Microsoft’s Windows Phone Store. Prior to its development, he had no coding experience and the whole project took around six months.
“You can learn the basics you need to begin building apps in a very short time,” Dominic explains. “Within six months of starting to learn programming at university, I was able to write for the Windows Phone platform. There are plenty of excellent resources available online. If you’re planning to start the app developer journey with C#, here is a great list of 200 videos starting from the very basics.”
If any coders happen to be reading, feel free to share your own tips and experiences in the comments section below!
Cheers
Lifehacker
Got your own question you want to put to Lifehacker? Send it using our contact form.
Comments
10 responses to “Ask LH: How Do I Stop My App Idea From Getting Stolen?”
If you’re developing for Android, check out App Inventor. Is powerful, and very easy to learn. Obviously learning to code will be better, but the majority of top apps & games could be developed using App Inventor
I’d argue against that. A simple app is easily copied and improved upon. If your app is weaker as a result of simplification that just makes any competition you face stronger, and if your idea is good you will face competition no matter what you do to protect your idea. If you truly believe in your project it’s worth working harder and paying more to get it into the strongest position possible.
Although at the end of the day we are talking about apps and at this level they’re almost inherently so simple you can’t protect them. You can’t really say ‘they stole my idea’ when your app can be described in it’s entirety with one sentence. On top of that in a lot of ways it’s like trying to go viral. Unfortunately someone flat out copying your idea can land on the store at the right time and through blind luck make it work while you sit there struggling to get noticed at all.
I would say you are both right in a way. Have a grander vision or road map of where you want to end up but look at developing it in small pieces. Larger scoped projects are harder to control and are more likely to suffer cost blowouts. If you focus on a particular aspect for a small time period you will end up with a better product. Then you can release as a V1, V2, etc. or you can hold off release until all is done.
How about a change of perspective? The search is not for a person, but for a partner. In addition to their technical capability, consider if you’d actually want to include them in the venture? People do work more meaningfully when they have a stake in the outcome.
This, this a thousand times this. If it’s a good idea, it’ll need to constantly evolve and be improved upon. However, if you want to do it yourself, I would recommend the web trinity (html/jquery/php) and PhoneGap Build (a service to turn web ‘sites’ (or html files etc) into apps for each platform).
A small project team is a difficult relationship to manage because both sides feel like they did all the work. The programmer will think ‘well, I made the entire thing’ because they made everything they’re holding in their hand. It gets even trickier if they’re involved in the design process. Meanwhile the person who had the idea sees nothing the programmer did as being possible without the idea. To them the programmer is just an interchangeable part of the process. Like paying someone to write a book you dictate to them.
Not that it’s a terrible idea to get a partner who knows what they’re doing on the tech side, the idea could easily require it, but if possible it may be easier to get the initial version made as a one off deal and then later expand to a dedicated team that works under you.
And be prepared that once your “brilliant” app is released onto the app stores it may never be used or downloaded by anyone. Ever. And your mum doesn’t count as a real customer.
App Store ‘full of zombies’ claim – http://www.bbc.com/news/technology-23240971
This is actually something that also interest me.
I am an avid tech user and understand the VERY basics of apps, but do not know what you can and can’t do with an app.
If I have an idea for an app, how would I go about even knowing if the idea is possible. Basically how do I find out if my desired functionality is even possible on a given platform?
Break your idea down into smaller tasks, then search for other apps doing those smaller tasks too. Odds are you’re not going to think of a revolutionary new way to program something. You may think of a new use for the WiFi but you’re not going to be the guy who first thinks of the idea to use WiFi.
So say you want to make an app that tracks how often you get a haircut so that it can predict when you need a haircut and then automatically add a reminder to your schedule (because like me you’re hair blind and can’t tell by looking in the mirror). I go to the various app stores and check to see if there’s already an app that does the same thing or something similar. An app like that doesn’t exist so I begin the process of breaking it down.
I break the idea down into what the app is actually doing. First, it’s tracking when I get my hair cut*. Breaking that down further it’s tracking when I do something. Plenty of apps do that. Some use things like FitBit, but I see others that either aren’t that detailed or aren’t that automated. For my apps purposes all I need is for the user to open the app and hit a button when they get a haircut. So we know that’s possible.
Second we say ‘ok, now we can track the info what do we do?’. We store it. Plenty of apps do that so we’re safe there. It also takes the previously stored data and processes it into a prediction. For the sake of the example I can’t name any apps that predict like that off the top of my head. I flag that and think to myself ‘ok, how will prediction work’. It’ll take the last six haircuts, look at the dates and then adds the average time between haircuts to the last date you got a haircut to deliver what should be your next appointment. After laying it out that way I can see that’s a pretty simple calculation so I feel safe in assuming it’s possible on my phone.
Alternatively if I find myself on the line about whether or not that’s plausible I could go to a message board with a pretty specific question that’s still extremely vague about what I’m trying to achieve overall. ‘Can I take a bunch of dates I’ve logged, get an average amount of days between those dates, and then add the average days to the last logged date?’. I don’t mention hair at all and odds are someone will give me a crash course in how to actually program that**.
Third, we want to take a message (‘Go get your haircut!’) and put it on the phones calender. There are apps that do that. I can see it’s a bit more complex because those apps require permission, but it’s possible.
So there we have it. I know my haircut app is possible so I can confidently take it to the next level.
Another app (don’t worry, I’ll write the small version this time) might be a calendar app that uses my current location as well as time/date to trigger alerts. Something that says ‘on Wednesday, if I walk past the milk bar, make a sound and put up an alert that says ‘buy milk!’. I know calendar apps are possible, I know location tracking is possible, I look at the app store and see that some apps do let you tag a specific location, and I know a sound and message alert is possible. That’s a thumbs up.
Maybe I want it to SMS my wife if I go into the milk bar. I know it can use my location data so stepping inside isn’t really different to walking past. I see that no other app on my phone’s store sends SMS messages without the user pushing a button. I go to the forums for people developing apps on that phone and as a very generic question of ‘can an app on this phone send a SMS without the user pushing a button’. If they say yes I say ‘great, thanks!’. However if they say no I don’t automatically scrap the feature because I’m clever, I say ‘hmm, that’s too bad, could I make it send an e-mail or something?’ and if I’m lucky they’ll come up with a solution for me. If I’m unlucky they’ll say ‘well, you could, but it would require you to build an e-mail client into your app and have the user enter their account details into it’. At which point you abandon the feature because it got too complicated.
I’m guessing your app ideas are more complex than that and the three functions of my haircut app probably all seem obviously possible, but all programs are made up of simple actions, they just pile them up on top of each other like digital Rube Goldberg devices.
There will be times when you get it wrong. It might look like Near Field Communication is simple when it’s not. Sometimes stuff that looks easy in other apps requires investment/resources you don’t have access to (you’re probably not going to be able to make Tumblr even though it seems like just saving pictures to a website). However it’s a good way to get a ballpark figure of how plausible your idea is.
Also use storyboards and flow charts to map out what you want the app to do. It’s not the same as programming but it’s a very universal skill that lets you structure sort of a blue print for a program. It sounds sort of dumb but for some people designing programs becomes a thousand times easier when they’ve got a bunch of A4 sheets of paper scattered out in front of them. You’ll see problems with your thought process a lot more clearly too.
*Here we actually discover the flaw in my app. The app can’t track when I need a haircut it can only track when I get a haircut. For a real app I’d say it uses the front facing camera to randomly sample how my hair looks, and from there compares it to photos I’ve tagged ‘ideal’, ‘acceptable’ and ‘too long’, but that’s over complicating the example. =P
**Important note. While you don’t want to give away what you’re trying to do you still want to give them a lot of information. The question I put there doesn’t mention I’m designing an app, what platform, what programming language, etc. You don’t need to put everything in there you’ll get a more definitive answer with a more detailed question. Although you may also attract unwanted advice like ‘iOS sucks, make it for Android!’.
1. Always check their previous work. Ask for examples or references. Ask specifically what parts they contributed to in team projects (they may have had a very minor role in an amazingly successful project)
2. If using oDesk and the like, only hire people with a 4 out of 5 rating or greater (some may say 4.5 – they won’t be as cheap but they will usually produce better quality results)
3. chat with them on Skype to get a feel for compatibility just like you would for hiring someone for your office.
4. always get a quote up front.
5. check on progress frequently and ask to see it in action.
6. communication can be a problem with some overseas (and even local) workers. Make sure they repeat back to you in their own words what they understand of the task. Some cultures will always say they understand even if they don’t just because that’s the way they were brought up.
7. Don’t be afraid to cut them loose if things are not working out. It happens. Make sure they get paid for their effort to date.
8. Pay on delivery or achieving milestones. Don’t be afraid to pay a bonus for results above and beyond expectations. Sharing your success is good Karma and will help generate loyalty and dedication when it comes to your next project.
The major one thing I would say is if you are not a developer, then don’t become one. Hire one. Programming simple things can not be difficult to learn but while all programming teaching materials show simplistic example to demonstrate concepts things can get complicated very quickly in the real world. The last thing you want is a poor performing app that is full of bugs. This will kill your app before it gets off the ground.
To make your app successful there are many more things to do on the marketing and PR side so you don’t want to get bogged down in the detail. BUT, keep the developers on a very short leash. They will often “blind you with science” either by accident (that’s the way they communicate) or by design (to hide what is really going on). Ask them to explain in layman’s terms. Never be afraid to ask “why” for fear of sounding dumb. It’s your dollars so you have a right to know how they are being spent. Keep asking why until you understand. Check progress often (maybe learn about Agile and Scrum). Consider paying someone else to review the results and provide feedback.
You can help protect your intellectual property by splitting up the work so no single worker has all components. In some cases this may be more trouble than it is worth. If your app isn’t modular then getting the pieces to fit and work together can be painful. As mentioned by other commenters, this won’t stop someone developing a clone. Once you get a good idea to market you have to keep running by constantly improving it. Listen to feedback to add features as your competitors will certainly be doing the same i.e. watching feedback on your app to improve their version to get an advantage over you.
you can’t copyright ideas. Good luck trying to get any money from someone who makes an app that you had in your mind.
This article does outline some interesting points.
I think to add to it I would have to say that…
NOT EVERY IDEA IS WORTH PURSUING.
Your whole aim should be to create what is called ‘Product/Market fit’. Unless you can do that… you may end up just wasting a whole lot of money.
The second thing to note is try and understand what you’re building. The old ‘Appstore Gold Rush’ days are over. Selling an app for 99c is a very hard business model to make work long-term. What you should be focused on now is BUILD A BUSINESS.
Building a platform, building something that actually adds value and creates something of value in the long run.
I’m actually the founder of http://Appster.com.au and we work with clients to make sure we get product strategy right in the first place, and I can tell you right now, 95% of ideas are not worth pursuing (we hear about 200 ideas a week)… we are very blunt with people that speak with us, but with the kind of investment that is involved, you better make sure you are prepared.
We’ve got some really cool whitepapers under our resource section on our website http://Appster.com.au which go through these topics, how to raise money, how to get users etc, etc… definitely worth checking out before you jump in!
Josiah 🙂
Insightful. I canvassed the Appster culture a few weeks ago and noticed both yourself and Mark bring “value” up in media repeatedly. Your focus on “building something that actually adds value…” is undoubtedly pertinent to the success of the company. At face value it is a simple statement but there is so much to it. My view is that “faster, bigger, cheaper” will not suffice to successfully enter smartphone tech industries in the future, unless there is a value proposition that significantly impacts users or consumers at a deeper level. Particularly when industries mature to quality growth phase those value increments so to speak need to be more substantial to counter factors of consumer behavior. Eg. Loyalty.
Olivier.
Stealing ideas is very common in Android Application Development. A NDA ( non-disclosure agreement) helps upto some extent but if you are really concerned, You can also opt to develop different components by different developers.