Driven Developer

From Developer to Entrepreneur

2015 II

In a previous post I stated that one of my goals for the year is to:

Build a SaaS business with 1k in monthly recurring revenue before the baby is born

In the past few months I have delved into two different markets while attempting to hit the 1k monthly recurring revenue mark. These markets have not been ripe. I will discuss what I learned from each of them in future posts.

But this week we will reset and begin studying yet another market in search of problems for which to build a software solution.

Here is the current plan:

Week 1 – Locate a niche and gather contact info
– Choose market that fits the appropriate criteria (see Carl Mattiola’s article)
– Evaluate various niches in the market
– Settle on a specific niche
– Find an email list of at least 2000 for the niche

Week 2 – Begin contacting the market
– Send 50 emails a day through Streak (I will detail how I use Streak to reach out to a market in a future post)
– Tweak emails for higher response rates as we learn more about the niche and its problems problems
– Begin idea extraction calls wherein the market articulates their problems

Week 3 – Locate a specific problem
– Once around 500 emails have been sent, we need will step back and evaluate the market
– Is there a common problem?
– Is the problem painful enough that they want to pay to have it resolved?

Week 4 – Evolve a solution to the problem
– Futher clarify the specific problem and start sketching a potential solution
– Start to reach out to developers who can build the solution
– Create mockup of the solution to use for pre-sales
– Get first pre-sales

Week 5 – Prepare to build
– Clarify the marketing message for the solution
– Get estimate of total build time from developer
– Determine cost to build
– Determine number of total pre-sales necessary to eliminate risk
– Continue pre-sales
– Determine exact number of pre-sales in order to green light build

Since our baby is set to arrive around New Years, I have chosen an aggressive schedule in order to try to meet my goal. I am realistic that the software solution will likely take 12 weeks or more to build. Part of the challenge will be for me to remain hands off and allow a third party developer to do the development so that I can focus on the business.

You can expect future updates as I work through this process and work through the plan further. I look forward to sharing both my successes and my failures.

JSON API

On May 29th, 2015 the JSON API project released version 1.0 of the JSON API specification.

I have been following JSON API’s progress towards 1.0 from a distance for some time now. (You can follow the latest updates to JSON API on github.) Kudos to the hard working contributors that really pushed to make the 1.0 release happen, especially given the number of last minute changes.

For those who do not yet know, JSON API aims at becoming THE ubiquitous JSON specification. As stated on the project homepage, the goal is to avoid “bike shedding” or the practice of spending an inordinate amount of time arguing over largely inconsequential details.

See jsonapi.org:

If you’ve ever argued with your team about the way your JSON responses should be formatted, JSON API is your anti-bikeshedding weapon.

By following shared conventions, you can increase productivity, take advantage of generalized tooling, and focus on what matters: your application.

I do not pretend to know very much about the specifics of the specification – but, that is exactly why I am excited about it. The project plays off the hope that the average developer will not have to concern herself with the details of how JSON is formatted.

Agreeing on a common specification allows tooling to be built such that developers:

  1. save time since they don’t have to recreate the wheel
  2. have tools that “just work” with each other
  3. avoid running into obscure edge cases that have already been thought through
  4. can more easily build interoperability between disparate systems and integrate third party data without writing adapaters

Moreover, the process by which the specification was constructed is completely transparent and open. Other projects can benefit from the conclusions reached by JSON API. If one wants to understand the reason/need for a particular decision within the specification, it is easy to review that path that lead to a particular decision by checking the checkin history and surrounding discussion. These details and specifics are often lost during discussions of project specific requirements.

As RESTful services become more widely deployed, JSON API is exactly the solution that we need. No longer will a developer have to spend an inordinate amount of time writing serializers and adapters that inevitably fail to account for edge cases. Instead, developers can spend their their worrying about what makes their particular application unique.

Time to delivery is getting faster and faster and that excites me. I want to be empowered to solve business problems and crank out solutions quickly. Customers don’t care about the nuances of how the JSON returned by a partifular web service call is formatted. Let’s continue to build reusuable tools so that the average developer’s time can be spent directly addressing user needs.

Let’s save our energy and effort on solving novel problems. Let’s adopt JSON API so that we can focus on writing code that makes our apps unique and further reduce time to delivery.

Turn off the Internet

I write this on the way to Baltimore for my lovely sister’s wedding, in a pane of notepad++. No fancy formatting. No distractions. And best of all-No internet access.

While Amtrak (who has been treating us quite well) does offer wireless on the train, I fought the urge to connect to the internet immediately after opening my laptop. Instead of “just checking” news sites, social media, etc, I am instead authroing this post.

I credit disconnecting from the internet with an increase in productivity I have seen over the last month. As part of buckling down after I found out that my wife was pregnant, I looked at what I could do to improve my efficiency, since my hours outside of work are precious and few. I had heard of an individual (possibly Anthony Alvarado) with a business doing a significant amount of revenue who spends a single hour each day connected to the internet. Since his time is scant, he ensures that whatever he does during that hour truly drives his business forward. That is the only time during the day during which he handles email and he ensures that any instructions that he needs to delegate are ready before that time. In this way he is able to spend the rest of the day in a creative and focused mode.

So, for the last number of weeks I have tried to ensure that I leave my laptop on air-plane mode-so that is disconnected from our home wireless-before I go to sleep. Now, when I wake up in the morning and first sit down at the computer I have a reminder that I should be focusing and working towards my goals. Although I was already using StayFocusd to limit my access to hacker news, reddit, facebook and few other sites to 10 minutes a day collectively, something about being able to sit down at the computer and avoid consuming content has been a great help. Now immediately after I sit down I start producing content and avoid the distraction of what was my habitual first few of the day spent checking news sites.

In a world where as developers we often don’t know how to proceed without instant access to stack overflow and API documentation, I have found that turning off the internet the vast majority of the time has helped me focus on working ON my business instead of IN my business. Rather than focusing on specific implementation details or getting pulled from flow by an instant message or a barrage of emails, turning off the internet forces me to delegate. Now I focus on ideas, strategy and planning methods of execution.

Turning off the internet has helped drag me away from minutia and distractions and has helped me take a step back and FOCUS.

Have you run a similar experiment? Do you track how much time you are browsing the internet or what percent of that time is truly needed? I would love to hear your thoughts on methods that have helped you cut away distractions and focus.

Follies of a First Timer

My perception of the activities involved in “creating a business” has changed in the last few years. I’ve re-evaluated how I’ve been spending my time – I’ve tried to cut down on reading and researching and I’ve started to focus on validating ideas early on. I want to occupy myself with activities that drive my business forward rather than spending time on theory and formalities.

As much as one can read about the “Lean Start-up” methodology and failing fast, losing a bunch of cash made the philosophy of “staying lean” one that I will not forgot. I will recount my greatest failure on my journey towards entrepreneurship thus far. I have not shared this folly publicly previously. I also haven’t calculated exactly how much my mistake has cost until now.

Through this post I hope to come to terms with my error and help others avoid the same issue.

A few years ago, I set up an LLC (see Why Start an LLC) for a venture that was in its early stages. To be specific: when I say “early stages” I mean that the venture was little more than an idea with a half-baked website. Like so many of my other ideas, I was quite excited at the opportunity. But, since I had not done any market validation and it soon be became apparent that the idea was not viable, I abandoned it.

My crucial error was setting up an LLC for my venture before having any cash flow. Despite having earned exactly $0 and rather than focusing on getting the business to profitability, I spent money to create an LLC. At the time, setting up the LLC felt like the right first step – of course one would set up a legal entity prior to doing business. But, it proved to be a completely ill thought out and costly misstep.

Let’s walk through the process of setting up the LLC and the total cost:

As per LegalZoom’s pricing page, it costs $149 for the basic LLC package. I chose to create my LLC in Delaware. (See here for some of the reasons to choose Delaware as a state of incorporation.) Delaware charges a $140 filing fee to create the legal entity. Legal Zoom charges another $159 a year to function as a registered agent for the LLC. (“A registered agent is the liaison between your company and the state in which it is incorporated…responsible for receiving and forwarding legal documents and correspondence from the Delaware Division of Corporations”) That covers  everything required to create and register the legal entity. But, we also need to account for taxes – there is a $300 filing fee due to Delaware prior to June 1st of every year.  I also had to pay a $200 fee to the state of Delaware to dissolve the unused LLC after I folded the venture (see more details here).

Let’s recap:

  • $149 – Fee to LegalZoom to handle the paperwork for the creation of the LLC
  • $140 – Fee due to Delaware for the creation of the LLC
  • $159 – Yearly fee to LegalZoom for functioning as a registered agent on behalf of the LLC
  • $300 – Taxes to the state of Delaware in the form of a yearly filing fee
  • $200 – Fee to the state of Delaware in order to dissolve the LLC
  • This list still does not account for the opportunity cost incurred during the time that I wasted researching, paying for each of these items, reviewing the paperwork and ensuring that the paperwork was properly processed.

Total spent on an LLC that ultimately remained unused: $948

The Kicker
One would think that it would be enough to spend $948 with no return and chalk it up to a hard lesson. I however, must have been “LLC Happy” – I actually formed two LLCs during this period! The second LLC was for a business with a partner that I was starting. (Another lesson: have a single focus.) The partnership petered out in short order, after we weren’t bringing in enough business to warrant continuing. We resolved to dissolve that LLC as well.

The total cost of LLC follies during my LLC Happy year: 948 + (948/2) = $1,422

1,422 dollars spent with no return and 1,422 very hard earned lessons that it’s best to wait until a business has revenue before incorporating.

Moving Forward
In the (hopefully near) future I will fund the creation of an LLC for my businesses with cash flow from the venture that I am starting. If there isn’t enough cash to pay for incorporation, then there is still too much uncertainty and the business is not yet far enough along to warrant spending the money on yet another potentially unused LLC.

Humble Beginnings

Through hard work and lots of luck I have ended up in a pretty good place. I am newly married to a wonderful woman and I have a well paying job. Although I enjoy the challenges of my position as a software developer in a fortune 50 bank, I want more. Over what feels like the last decade I have been toiling with ideas and methodologies and mulling over ambitions. But now is the time for self-actualization. This site is my plan to document my steps towards building the life of my dreams.

The past month of my life has been filled with strides forward and happy news. For the first time I have a working process that is resulting in calls with potential customers. We also received news that my wife is pregnant. The situation screams “take action now!”

Ultimately, I wish to diversify my income streams and unlock my time to be able to dedicate myself to my young family.  Here are my immediate goals that I will revisit as I move forward:

  • Build a SaaS business with 1k in monthly recurring revenue before the baby is born
  • Learn the techniques necessary to build a larger scale business (I will break down the specifics of the plan in future posts)
  • Continue to do some form of exercise each day (120+ days straight as of this writing)
  • Author weekly posts on The Driven Developer in order to strategize and review my performance, my progress towards each of my goals  and to solicit feedback.

I hope to document both my successes and my failures openly and honestly. This process serves both as a way for me to organize my thoughts and reflect and as a conduit through which others can learn.

I would enjoy comments from those in similar situations or those who have had similar experiences. Do you think I am aiming high enough?

Let the games begin.

– The Driven Developer

© 2024 Driven Developer

Theme by Anders NorenUp ↑