A software developer explains why doing marketing before writing your first line of code will improve your next startup chances of success.
Finished: Mar 2017
Get the book 👈
💡 Short review
This book is a concise hands-on manual for people with technical backgrounds, such as developers, aspiring to make the move to entrepreneurs and work on their own product. Despite the book being very short, it is very detailed in critical aspects of this process.
Some of the chapters that I found particularly relevant are those related to idea acquisition, marketing, and outsourcing. The author repeats throughout the book that putting aside the urge to build/do everything by yourself and wear your marketer hat first are the main challenges for transitioning developers.
Considering that this book was published in 2010 most of it is still very relevant. Other sections, ideas, and concepts already quite obsolete and a new version is due.
📖 The gap between a developer and an entrepreneur
entrepreneur is a visionary, sees potential in an idea and create a viable business from nothing
Entrepreneur types in this book:
- Micropreneurs: a.k.a Solopreneneur, single or multiple products. Her goal is a specific lifestyle
- Bootstrappers: Larger vision than a single person. work with a team to grow an idea to survive.
Knowledge is similar: Finding a niche, finding a product, building, launching, marketing
Two problems with fund seeking:
- Massive time investment
- Makes modest success impossible (forced to go big)
Small, let's you go niche, make product really good, with low overhead and moderate expected revenue
Self-funded startup entrepreneur
equates to technical visionary creating sw for a niche market.
Merges technical knowledge with online marketing knowledge.
developer (ability to fix and support client) + webmaster (to create a compelling sales page and SEO) + marketer(Find your market, before building a good product).
Product Last, Marketing First
Venture-backed startups require arduous work with a low potential for massive payoff, in contrast, Bootstrapers reinvest income to grow organically (profit and headcount) -- a decent potential for a decent payoff. Financial payoff is inconsequential to Micropreneurs.
Reasons to startup
Having an idea. Not knowing the difference between an idea (fun to work on) and a product (something people will buy)
Get rich. Better to look for something with higher success rate and lower reward.
Sounds fun. Building your product (the fun part) is about 30% of the work required.
Different for each person. What are your goals? freedom, flexibility, income antifragility, challenges, desire to build, ownership, control...
Pay the price: Large time investment at the beginning, giving up control (by hiring, automation)
What are your goals? It will help you make the right decisions. What do you want? Quit your job, extra financial source, start your own company? Define the kind of product you should launch. Write them, make them public, make yourself accountable.
Suggested short-term goal: Build a startup that generates $500/month in profit
Goals will keep you motivated during the hard times.
if you manage to build and launch a product know that:
- Underestimating workload due to customer support, most issues are not product related!\
- Ongoing development, harder than greenfield dev.
- The hardest part of the equation is hitting critical mass, way after the big dip.
- Most likely your first startup helps you understand the amount of work required, and make you a savvier software entrepreneur.
Elements of the transition: Learning (or relearning the same things over and over), ownership (make your next product, release or fix translate to equity for yourself)
Some common roadblocks:
Your start building something people don't want. Verify market 1st.
Fear of starting something new. Take fear as an indication of growth, will make it easier and easier each time Largest roadblock of all, keeps out most people.
No clarity on what you are after, no roadmap. Write goals down.
Not producing consistently, busyness without actual productive work. Reduce information consumption
Trying to do all by yourself. Delegate or outsource tasks aggressively, but start small and increase gradually
Must accept that time is your most valuable asset. "Dollarize" your time by outsourcing work this is an essential step for entrepreneurship. Know your hourly rate and compare against the cost of hiring a VA. Increase the value of your hourly rate, as a goal in itself, but never below your current freelancer rate. You realize:
Outsourcing is a smart and powerful move
Work hard, play hard separately
Avoid time wasters, and use wait times for thinking.
Consume information only to produce. Similar to learn in order to create. Pro-tip: take action notes (links, techniques)
Realizations for developers becoming entrepreneurs:
Need to be entrepreneur (strategic), manager (tactical), and technician (operational).
Market, Marketing, Aesthetics, Functionality.
Unlike coding, entrepreneurship will never be crystal clear (humans involved)
Plan but leave room for uncertainty and rapid reactions.
Be OK with failure, and keep improving
Nothing is ever completely done.
Takes time but gains will snowball over time.
Put processes in place to avoid mistakes and
Your product status is on-going, in all aspects, always.
Most important factor above founders, marketing, and product is people willing to pay! Find market first before having an idea of what you are building.
Sizable market + low competition despite poor looks and features will work well for a while...
Luck is a factor, but unlikely to happen to you.
Startups are mathematically poor decisions. Low wages, long hours, minimal chance of success.
Going for a general purpose software is often a bad idea because you are competing against large organizations with better marketing and development resources.
Niche allows you to become the best at something, cater a small group of people that is possibly easier to find (usually hang out on the same sites, etc)
Go niche because:
Reduces the scope of your product (but make sure market size is significant)
It's easier and cheaper to advertise to a smaller group of people
There are fewer and smaller competitors
Allows to charge more and make a higher profit
Proper marketing is unusual thus could be more effective
You may be able to build trust faster
Approach any hobby, occupation or interest of a person close to you when looking for niches!
When exploring a niche, marketing is the best ---but imperfect--- tool to evaluate the viability of an idea.
To find a niche you could go for something you are/were already involved (recommend Pamela Slim's 6-minute technique ), scan for occupations that you might be connected to or looked for pre-existing lists, such as this.
Or ... do something (anything, really!), it may uncover a hidden niche!
If self-funded most likely you don't have a chance to create demand. Avoid offline markets. Concentrate on consumers and small biz. Make sure market is:
Sizable: Price of ads for such market might be a good indicator. Any publications catering this market? Any stats available on the market, visitors, occupations? What is the traffic on relevant websites?
Reachable: sustainable with you resources. Not every visitor you get is part of your market. Major publications might not be a good fit for you. Cheap ways to market software are leveraging a pre-existing audience and using SEO.
Stay in vertical markets, as they have similar needs, conduct alike, are highly interconnected, and usually, recommend stuff to their peers.
Measure Market Demand
Using search engine keywords
Niche research is about narrowing ideas to those that can be implemented within you capacity (time, hands). The goals is to determine a way to estimate traffic and revenue.
Conversion rates: visitors vs buyers (or another task, like signing up for a mailing list) affected by:
sources of traffic
whether sales website is effective
Traffic levels: Visitors needed to succeed in a niche
Estimation of how many visitors you need to reach a target (based on conversion rate).
Traffic breakdown: Distribution of traffic sources
Search engines (organic), Incoming links (blogs, directories), Direct traffic, Ads. (1/3 excl. Ads good rule of thumb)
It takes over a year to rank high for many terms (Google Sandbox)
Search engines don't make search data public, thus estimating search terms is not straightforward.
Determine demand for a product before you build it based on monthly google term search Surveys can also be a great tool to measure demand.
Sell online: Human behavior + Math
What motivates people (why do they buy, speak to them)
Internet marketing, click rates, profits, etc.
From your list of Niches (hobbies, occupations, interests) find out what kind of software they need. Add up the list of apps you've been wanting to build for years.
- Measuring demand:
- Google Adwords
- Micro Niche Finder(paid)
- SEO Logs Keyword Difficulty tool or alternatives helps measure how hard is to rank a term.
Keyword Effectiveness Index = No. searches by month / No. results
Steps to measure demand for free (AdWords)
- Search your term (without quotes + synonyms) then search again using exact match. Values close to 10K are considerable (relative) and AdWords overestimate searches (half traffic is more realistic)
1/2 *search term * 4 = number of visitors (rank #1)
Half search term value * 4 (2 from long-tail keywords + 2 from other sources like organic traffic)
Assume conversion rate based on your price point to calculate an expected monthly revenue.
Store separately keywords related to your chosen search term
Use a keyword difficulty tool to grade these terms. Lower scores are best. Below 39 is easy (relative)
[Sanity Check step] Google the chosen keyword, and look for the PageRank of the first result. Check the meta keywords and description they are using. Do a
whoissearch to check how old the domain is (older that '99 is hard to beat). Find the domain backlinks  to determine popularity.
You may repeat with top 5 ranked sites. Use results from these steps to decide whether to move on to another niche, unless you're OK with investing 6-12 months to beat a well-ranked site.
Testing ideas under $100
Run an AdWords ad with the exact keyword (in quotes) to validate your idea even further. Benefits are: no minimun investment, inexpensive, and can be turned off anytime.
Using mini sales site to test buy intention. A simpler version of a sales site, with Home, Tour, Pricing and Signup. Home and Tour provides Description, screenshots, feature lists, and product info PLUS a call to action. This will give you insights into actual consumer intentions on the cheap.
- price less than $40, try to get people to click "buy now" on Pricing & Signup.
- price above $40, try to get them to click "download free trial" on the same page
SaaS or Mobile app
- Try to get people to click "buy now" on Pricing & Signup
Direct traffic to your site using AdWords and track clicks on the call to action button. Assume conversion between 2-5% for click, and 40% of actual buyers. Get to know potential customer emails, conversion keywords, and cost per conversion.
This approach won't work for social sites (network effect), you need a full blown marketing effort
2. sales copy
3. AdWords setup and conversion tracker system
Invest 8 hours and some money on a test like this to get confidence on 4 month of development ahead. Don't build stuff that people don't want.
Product + | | Market +---------------+ Execution
Success Triangle: Have a good product, that some people are willing to pay money for, with market, sell, an support.
Focus on Market and Execution to determine viability then improve your product. Makes sense to hire people to build it for you.
Estimate software projects by: 1. Make sitemap/screens list, 2. sketch pages, 3. 4-12h per page estimation 4. Include data storage design no more that 20h. 5. Backend functions and 3rd party integrations will add 10-40h each. 6. Sum up. (200-400h?)
Strike a balance between simple (200?) and enough functionality for people to pay for it. If too bloated(400?) you risk long time to market high risk. Sales web, docs, marketing, etc. (add 100-200h)
If done as a side project: 15h~ per week,
300h = 20weeks (4.5mo)
550h = 8.5mo <= your free time, no revenue
Code yourself: path to burnout, may cost few thousand, avoid being in control of the code (let go!), increased chance of launching.
Hire someone, know that:
- your code is not the best code out there, even if you think so.
- Accept the fact that the code will not be done exactly your style 🔑
- By offshoring, 200h x $15/h = $3K + sales $500-1500 (50h)
- Make time for yourself to write copy, documentation, SEO, PPC, payments etc (Market, Execution)
Cost estimate (offshoring)
$3k-$6k development (2mo)
this works if you can scape the money, and will save you time and effort(that can be put elsewhere)
$29 or $14mo hobbies and not make/save money sw
$49 or $19mo make/save money sw
$400 or $99mo small biz normally
$1K or $199mo large biz normally
Mix methods to find your product's price:
- Get a sense of the market: estimate using guideline, understand how sw usually bought, price they pay, and unrestricted purchase values.
- Ask: what would we pay?, what # feels right? -- 21signals
- Competitors? or similar markets
- How much this sw save($)? upper bound
- 2 to 4,
high_end = 4 * low_end
- Don't undersell your sw, common around devs
T1 = low_end, T2 = low_end * 2, T3 = low_end *4
- Make each price end in 7, 8 or 9 (all same) 😂!
- Tier price doubles, benefits should more than double
- 1-time payment? consider upgrades and support for a 20%y
- recurring monthly?
high_tier / 12 = monthly
- Try and change if needed
Depends on sales cycle (steps to close a sale), for constant flood of new traffic, run 1-3day tests.
Based on sales cycle, if:
Do it without notif, leave it 1-2w and compare
- increase with new version, offer 7day old price to subscribers, 3w and compare, revert if revenue not increased.
- decrease price and check if revenue increase, rollback 2-3w if not, refund difference if asked about it.
on the cloud, recurring fee (month/year), steady stream of income, easier to support, easier to extend and document, easier to improve with shorter releases. Smaller investment for customers, also convenient, upgradeable and easy to try out. ⤵️ development for web, compatibility with browsers, in-house data requirements, 24/7 required, including security and backups. This is your default, unless specific segment tied to a platform, some enterprise clients, or increased complexity (UI, peripherals).
2/ Downloadable Webapp
Allow customers use the application but maintain control of their data. Charge usually one time with annual support. Best include anti-piracy features. No or Less infrastructure needed. Higher and faster revenue bumps. Customizable by clients. ⤵️ support is complex. non-recurring fees. More upfront money for customers. Harder to maintain and upgrade. Target audience diverse and heterogeneous, different systems. Use if clients require it only, or APIs aren't enough to accomplish the task.
Quite rare but required in some areas such as video editing, virus scanner, photo managers, etc. Usually a one time fee with annual support as pricing structure. Infrastructure is provided by user, less maintenance and compatible. Lesser compatibilty issues. Users get to keep their one data, and UI might be better. Support and OS compatibility can be difficult to achieve. Best use when Web Tech is not an option or access to code executed in the machine.
4/ Mobile Apps
Some of the largest (and still growing) markets. Usually charged as a 1 time fee or fee plus recurring service charge. Also free to access web apps. Benefitial due to app stores (easier to discover). Mobile app development can be expensive and complex. Restricted by stores, device capabilities, and platform of choice. Use to extend web capabilities mostly or mobile is the only sensible choice for your niche.
5/ 3rd party plug-ins
Built on top of existing platforms, e.g., facebook apps, wordpress, chatbots. Usually free and earn revenue via traffic, affiliate links, ads. Opportunities in enterprise, such as salesforce, microsoft suites. Considerable high adoption rates, network effect, single place to discover, acquire, use application. Space is relatively less crowded. Convenient and usually free to end users. Risks being cut out if platform deploys a similar functionality. Use to extend web app to reach more users and add your capabilities or if niche usually hangs around the platform.
6/ Community websites
Not typical cash for sw. Include, sharing apps, bookmarking tools, forums, etc. Loved by press. Have potential explosive growth. Mostly ad suported with premium mode. Fun to build, and likely to make you famous. Hard to get off ground, community building knowledge is needed. Managing can be challenging for you. Use if you have a way to target potential customers, such as mailing list or blog. If you know viral marketing.Go bug model suits you.
Developers making products tell themselves:
You code it once and sell it 1000 times —it's like printing your own money! I build apps all the time, how hard could it be to launch a product?
Who makes the switch from Developer to Entrepreneur:
The experience of many veteran developers show that after a certain level of experience you can't push past that financial barrier, also keeping up with the latest technology will begin to wear you down.
Avoid doing everything yourself:
Outsourcing is a learned skill, and you're likely to screw it up your first time around.
Entrepreneurship requires taking decisions without complete facts
...take your best guess, then measure and tweak. And do it 20 more times until you succeed.
On hiring someone to build your product
You have to get over your desire to write software yourself
Thinking you got to do all yourself, there are 💯 of tasks:
The roadblock that so many entrepreneurs encounter as they try to launch is thinking they, or one of their co-founders, has to perform every task necessary to get their product out the door.
Do one thing, work or play, never both:
Wasting time is bad. Boring movies, bad TV, and pointless web surfing are expensive propositions. If you aren’t enjoying something, stop doing it.
Use those non-leisure "wait times" to your advantage
Since it’s not practical to assume you will never wait in line again, the best counter-attack is to have a notebook and pen handy at all times. Use this time for high-level thinking, something you may have a hard time doing in front of a computer.
Consume info only to produce info ✒️
When reading blogs or books or listening to podcasts or audio books, take action notes.
Order of importance (unless niche is sw developers)
Market Comes First, Marketing Second, Aesthetic Third, and Functionality a Distant Fourth
Check six-min look at choosing business idead from [1:1]
Self-funded entrepreneurs can't afford much ad budgets, finding your niche...
As a self-funded startup you want a market that is already looking for your product, even if it doesn’t exist
Measuring market demand with no money
Given that we’re in the process of narrowing our choices by exploring multiple niches with minimal time investment and no cash outlay, we are looking for a quick, easy and free way to determine a rough order of magnitude traffic and revenue estimates. Think: Conversion Rates, Traffic Levels, Traffic Breakdown
Key factors to decide about your product
The decision of pricing, whether to build or hire out, and which product type to build will have critical impact on how quickly you can make it to market, the size of your market, and how many copies you can sell.
Secondary only to your niche itself, these decisions must be decided on with the needs of your market in mind.