Bloggity Blog

We love our work so much, we want to tell the world about it.

Equity Distribution Chart

If you’re thinking about funding for your startup, chances are you’re knee deep in fleshing out the execution of your idea. Your progress is similar to people saying they are going to start training for a marathon. A lot of people say that, but when you get to the starting line, you look around, and none of those people showed up. From this point, it’s about keeping your energy, focus, and staying hydrated. My goal is to help you understand that funding is the water that will keep you going. Not having enough is scary, and having too much will weigh you down or tempt you to use it wastefully

Recently, I’ve been approached by entrepreneurs seeking guidance as to how they should organize their young companies. The biggest grey area for them was how equity gets reallocated at each stage in a startup’s development. These startups need funding, but don’t want to give away the farm. The question is, “What is the right balance that keeps everyone motivated, and makes the startup attractive to investors?”. This is a tough question because every startup is different. The only thing that is constant across the board is that you start out with 100% of the company, and when others are brought into the equation to help make the startup profitable, you have less. I’m going to show you how quickly equity splits up, and how important it is to keep momentum. If you keep momentum, your founder percentage shrinks, but your net worth increases because of the progress you’ve made.

Different startups require different methods of funding. Some startups decide to bootstrap and self fund their businesses. If you can do this, awesome. It keeps you in control of your destiny and owning more of your company. Problems arise if you want to do things like grow quickly and bring on more people to increase capacity

If you decide to go the funding route, remember that there isn’t that much to pass around. Giving too many 5% share allocations early on could end up biting you pretty hard. VC’s like to see that you’re able to achieve a lot while giving out as little equity as possible.

You can decide to split equity a few different ways, depending on your preference. I’m going to show you an example that takes funding from day one all the way to an IPO. In this scenario, there are three cofounders. The numbers we’ll assume is that the startup will get $25,000 from friends and family, $250,000 from Angel Investors and $5,000,000 from Venture Capitalists.

At the beginning, the founders own all of the equity in a very small company. If all goes well, they’ll own a much smaller portion of a really big company. It sounds a bit scary, but the numbers are eye popping.

Let’s get started:

I've got it!

Over the years, you’ve had quite a few ideas, but this one is the first that without a doubt is worth chasing after. At this point, you’re creating value in equity that doesn’t yet exist, all of which you own. Ideas of what things might look like in the future may start creeping in at this point, like whether you want to organize yourself as an LLC or CCorp (In my mind, this is an easy answer… Go LLC if you’re going to bootstrap, and CCorp if you’re going to go for funding. VC firms will probably make you convert to a CCorp, so you may as well get it out of the way)

I could use some help!

As you get into the nitty gritty of building your idea out, you start to see your scope creeping bigger. Right now, I’d say this is normal, but don’t try to boil the ocean. You need to stay focused and build a product that can be tested. Features can be added later, and right now, you should probably spend your time on more important things. With a wider scope, you could use some help, and decide to bring on two cofounders. As you build out the entire product scope, you recognize that these two cofounders are integral to your success, and decide to make them equal equity owners. Who cares that it was your original idea. You need these two people to make it happen, and making it happen means showing appreciation for the mad skills these two individuals possess!

At this point, the wrong thing to do is to go to a VC and pitch your idea. You hear it all the time, “ideas are a dime a dozen. It’s all about execution”. VC’s come into the picture later on to help you scale your idea. They want to see that you can plan, build, and get confirmation from potential customers. Then they’ll come in. But don’t you need their financing and expertise now? Why would you need a VC once you already have the thing built out with all of it’s shiny features? That’s why it’s imperative that you build an MVP that is testable. It shouldn’t have all the bells and whistles you desire. Show VC’s the data points that will make investing in your product a ‘shut up and take my money’ situation.

Hey Aunt Jane!

Getting money early on so you can survive is tough. Soliciting money from people you don’t know before you register your company is a big time nono. Thankfully, there are a couple things you can do.

There is no limit on asking for money from friends and family no matter how much money they have in the bank. This is a great avenue as long as you’re honest about the risk involved in your startup. Many people refuse to do business with family, and for them, that’s probably smart. Other people can handle the ups and downs. If these individuals believe in the product and your work ethic, go for it.

The other avenue is from ‘Accredited Investors’. These are people you know who either have $1,000,000 cash in the bank that is investible, or make a minimum of $200,000 a year. The government looks at these people as being smart enough to understand what a risky investment is.

All together, this group of investors gives you $25,000 and you give them a collective share of 5%. You decide at this point to make things legal and form your CCorp. Here’s where the fun starts.

At this point, things look a bit different. You and your cofounders own 75%, your friends and family own 5% and we’re introducing this thing called an option pool. Most of the time, your option pool will be about 20% of total equity, which may sound like a lot, but here’s the logic. Most VC firms will want you to have an option pool that you can use to attract talent. Anymore, a lot of startups will issue ‘restricted stock’ rather than options. They both work for the sake of the example. Even though the option pool is set aside out of the founder’s equity, it’s still technically owned by the founders if the stock is not allocated to other people. What does that mean? Let’s say Google looks at your company and decides to buy you. If you have only given out half of your available options, the remaining option equity would be split between the founders at the time of sale since the founders technically own it.

The Seed Round

The ‘Seed’ or ‘Angel’ round is a good place to assess your progress. Are you close to getting to your MVP? If so, the higher your ‘PreMoney Valuation’. A PreMoney Valuation is what your company is worth before the next round of financing comes in. It’s a true assessment of the progress you’ve made. Let’s say your budget for the next 6 months means you need to get $250,000 in seed funding and you only want to give up 14.3%. This means, your premoney valuation must come in at $1,500,000.

Now wait a minute. Wouldn’t that work out to 16.7%? The answer is no because the $250,000 is on top of the current valuation of $1,500,000. The investor is going to own a portion of the ‘PostMoney Valuation’.

The math is: $250,000/($1,500,000+$250,000) = 14.3% Seed Funder’s Equity

At this point, the equity breakdown is:

Founders: 64.275% (worth $1,124,812.5)
Friends and Family: 4.285% (Worth $74,987.5)
Seed Investor: 14.4% (Worth $250,000)
Option Pool: 17.14% (Worth $299,950)

The Venture Capital Round

Even though there can be multiple VC rounds of financing, we are only going to go through one round. This first round is your ‘SeriesA’. The math works much like the Seed Investor Round. At the time you want to get more funding, we’ll take a snapshot of what the company looks like to come up with your ‘PreMoney Valuation’. At this point, let’s assume you were able to increase your company’s value to $10,000,000 over the last 6 months.

The VC is going to want a large percentage of your company if they are going to invest. For this example, let’s say the VC Firm wants a third of your company after they make their investment. The investment the VC firm would have to make in your company is $5,000,000.

The math is: $5,000,000/($10,000,000+$5,000,000) = 33.33% VC Equity

Now, your Post Money Valuation is $15,000,000.

Founders: 64.275% (worth $6,427,500)
Friends and Family: 4.285% (Worth $428,500)
Option Pool: 17.14% (Worth $1,430,000)
Venture Capital Company: 33.33% (Worth $5,000,000)
Seed Investor: 14.4% (Worth $1,714,000)


There are a couple reasons a company would want to go IPO. The most obvious reasons are to get a very large amount of working capital to continue expansion, buy out competitors, and cash out on stock holdings. It’s also the time when all of the restricted stock or options can be traded in for actual shares. For a founder, transitioning a company to become publicly owned and traded sounds glamorous, but comes with another set of rules and obstacles.


While the numbers in this example are simply a shot in the dark, I hope that seeing the math play out helps you understand your obligation to the startup. It’s no longer just ‘your baby’ any more.

Read your operating agreements, founders. If you don’t understand something, ask questions until you do, even if that lawyer stuff isn’t your thing. It will be the moment you get hosed.

Things to Remember

  1. Choose your cofounders wisely.
  2. Only take friend’s and family’s money if everyone understands the risk.
  3. Bring on advisors who can actually help you get the job done.
  4. Choose ‘FounderCentric’ VC firms.

Phoenix Framework Logo

Sending scheduled or automated emails from your application is a very common problem with a number of solutions. In this write-up I am going to demonstrate one particularly easy approach to adding email functionality to your Phoenix App. Phoenix is a web framework written in Elixir that is enjoying a meteoric rise in popularity recently. Many people are jumping onto the Phoenix bandwagon for its explicit, non-magical and functional approach to development.

For this demonstration, we are going to use an external library that integrates Mailgun into our Phoenix application. Phoenix includes the Elixir configuration file mix.exs which we will use to add our new dependency. We will add {:mailgun, "~> 0.1.1"} to the list of "deps" our project is currently using.

defp deps do
  [{:phoenix, "~> 0.13"},
   {:phoenix_html, "~> 1.0"},
   {:phoenix_ecto, "~> 0.3"},
   {:postgrex, ">= 0.0.0"},
   {:phoenix_live_reload, "~> 0.4"},
   {:cowboy, "~> 1.0"},
   {:mailgun, "~> 0.1.1"}]

Running mix deps.get from our terminal will pull in all required files for including our new Mailgun library dependency.

$ mix deps.get
Running dependency resolution
Dependency resolution completed successfully
  mailgun: v0.1.1
* Getting mailgun (Hex package)
Checking package (
Using locally cached package
Unpacked package tarball (/Users/david/.hex/packages/mailgun-0.1.1.tar)

Now we need to setup our Mailgun configuration in config/config.exs. First, however, you will need to jump over to and sign up for a free sandbox account. Once you are logged in, you will want to add your first domain (under the Domains tab in the top navigation). Once created, you can click on this new domain to view the API Base URL and API Key. We will need to add both of these values to our config file. In your config.exs add the following information:

config :my_app, mailgun_domain: "YOUR_MAILGUN_DOMAIN",
                mailgun_key: System.get_env("MAILGUN_API_KEY")

Next we need to create a Mailer module to use throughout our application. In your lib directory, create a new file named mailer.ex (not required - just my preference). Within that new file you will need to define our new Mailer module and reference our Mailgun client and configuration information.

defmodule MyApp.Mailer do
  use Mailgun.Client, domain: Application.get_env(:my_app, :mailgun_domain),
                      key: Application.get_env(:my_app, :mailgun_key)


You will generally add a module attribute specifying the from address of your application emails within the Mailer module.

@from ""

Finally, we add simple functions to handle the html and text versions of our application specific emails.

def send_welcome_text_email(email) do
  send_email to: email,
             from: @from,
             subject: "Welcome!",
             text: "Welcome to MyApp!"

def send_welcome_html_email(email) do
  send_email to: email,
             from: @from,
             subject: "Welcome!",
             html: "<strong>Welcome to MyApp</strong>"

Once we have our email functions complete, we are ready to send emails throughout our Phoenix app.


And thats it!

Helpful Tips:


Should you want or need to send attachments along with your email it is equally simple. All we need to do is add an attachments key to our email and provide it with a list of maps that respond to path and filename. The Mailgun library we are using handles reading the actual file so long as we give it a valid path.

def send_welcome_html_email(email) do
  send_email to: email,
             from: @from,
             subject: "Welcome!",
             html: "<strong>Welcome to MyApp</strong>",
             attachments: [%{path: "priv/my_file.csv", filename: "my_file.csv"}]


You will most likely want to write your markup for an HTML email outside of the Mailer module. This is extremely easy to accomplish. You will want to update the text of your email to point at an external view. This would look like:

html: Phoenix.View.render_to_string(MyApp.EmailView, "welcome.html", some_var: some_var),

Congratulations. You can now send emails throughout your Phoenix application. For more information please check out the following sources:


Pain Points - Solve the Right Ones

Written by Nate Sowder

I often talk with entrepreneurs about the importance of having a defined project scope. In a SAAS product, it’s important to limit the features list. Early on, I struggled with this in my career because I tried to do too much, too soon. I felt that the more problems I could solve with one solution would increase its permanence or give it greater value. In practice, one small addition to scope opens the door to another. Once the new pathway is developed, it too opens the door to more ideas and additions which in turn, creates a big hairy problem.

The more features I add or change, the later my launch date. Don’t get me wrong: sometimes you have to pivot, but rarely do flashes of inspiration need to be added to an MVP (Minimum Viable Product). Remember, the number one goal is to get data points that show usage and the potential for greater profitability. I can only get data points if people are using my product.

Everything comes back to research. Good research controls a project’s scope. Asking better questions and thinking more critically about the answers is a good formula to get research that is useful. This will save time and money by creating a more solid foundation for the product. A product that will surely be built out with shiny features down the road.

Starting Out: Ask yourself these questions

  1. What will your project accomplish?
  2. What deliverables do you need to see to mark the project as ‘Complete’?
  3. What features are not going to be included in the project and are deemed ‘out of scope’ for this current version?
  4. What resource limitations does the project have including time, money, and manpower?
  5. Are there any dependencies the project assumes will always be available (API’s, prospects, niches, etc.) that you could lose access to?
  6. Most importantly, how much money/opportunity will I lose for every month my project launch date gets delayed?

Managing scope is difficult, especially as more people get involved.

The addition of co-founders, advisors, and investors make sticking to the overall passion like trying to pass a bill through congress with no additional changes. Having the following areas defined will make life much easier as more people get involved.

  1. List all requirements associated with the MVP. To get these, it’s important to understand the customer groups being served by the product. Setting up use cases are beneficial to get requirements.

  2. Define the Project’s Scope. The MVP needs to be made as fast as possible so it can be tested. Sometimes there are features that can wait until a later version to save both time and money. Let’s take the Jeep I drive to work every day as an example. Chrysler offers various Jeep models that include all different types of features. Some features come standard, like seat belts and airbags. Other models come with features like power locks and windows, heated seats, towing packages, moon roofs, and leather. Keep in mind though, that the least expensive, stripped down version can still get me to work in the morning.

  3. Verify the Project’s Scope. Don’t be afraid to show your product to people. Having beta testers lined up is great way to project the initial success or failure of the product. If no one wants to use it for free, then why would they use it when they have to pay for it?

  4. Control Your Scope. Looking back, every time I’ve had to change or modify the scope of a product resulted in me not doing enough homework. There’s no excuse for scope creep. Get it together, man!

The End Goal:

Make something so brilliantly designed and developed that the people using my product will never realize how complicated the technology behind it is.

In last week's Dayton Ruby meetup, Chris Chernesky spoke about how he uses Tmux for his everyday Rails development. It was great talk and ever since the meetup, Tmux has been all the buzz at the Littlelines office.

I've been using Tmux for a few years and it has become an essential tool for my workflow. Tmux's window and session management make it a no-brainer for those who live in the terminal. In this article, I explain a few tmux commands and tools that I use daily to help me work more effectively across rails projects.

Setting up Tmux

Let's start off on the right foot. Since we're going to spend most of our day inside tmux, we might as well configure it to best suit our needs. Here are just a few tmux configurations that are essential for me.

# Remaps tmux prefix to Control-b
unbind C-b
set -g prefix C-a

# Improve colors
set -g default-terminal 'screen-256color'

# Navigate around panes easily using vim-like keybindings
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R

# Remove administrative debris (session name, hostname, time) in status bar
set -g status-left ''
set -g status-right ''

The biggest configuration change I made is remapping the default Tmux prefix from Control-b to Control-a instead. Since I've also remapped my caps lock key to the control key, this is much more convenient for me.

Now let's take a look at a couple aliases I setup to help navigate tmux on the command line. With these three aliases we can easily list the running tmux sessions, join a current session, or kill tmux sessions.

alias tml="tmux list-sessions"
alias tma="tmux -2 attach -t $1"
alias tmk="tmux kill-session -t $1"

Killer Rails Project Management with Tmuxinator

Working with a typical Rails project may involve several commands and long-running processes. For example, we may need to run the web server e.g. bundle exec rails server or we may need to run Sidekiq for our background workers. Tmux is great for this scenario because we can harness the power of Tmux's windows and panes to organize these processes in a single screen.

To further make our lives even easier, Tmuxinator makes managing Tmux sessions a snap with the use of simple Yaml files. The best part, it's a ruby gem so all we have to do is run gem install tmuxinator and we're ready to go. Here is an example of a configuration file I setup for one of my Rails projects.

name: website
root: ~/code/website
  - editor:
      layout: main-vertical
        - emacs
        - guard
  - tests: bundle exec rake test
  - console: bundle exec rails c
  - workers: bundle exec foreman start
  - logs: tail -f log/development.log
  - server: mosh

With this configuration, I just run mux website and Tmuxinator will cd into the project's root directory, create a new (or join an existing) Tmux sessions, create six windows, kick off emacs and guard panes, run tests, and start the background workers. Just one command and we're ready to go to work.

Switch Projects and Windows with Ease

So now we have our Tmux setup and Tmuxinator helping us with session management, we can start moving around our various projects. We can do this in a couple ways: from the command line or within Tmux sessions.

From the command line:

Getting around tmux sessions on the command line is pretty easy. Using our aliases we setup earlier, we can use the tml command to list the current sessions and tma to join an existing session. We can also use the mux [project] command that Tmuxinator provides to either create a new session or join a session if it is already running.

Tmux on the command line

Within Tmux sessions:

Once we're in a tmux session, getting around windows is easy too. I usually hit Command-a [Window #] to jump to a window or Command-a w to toggle a list of windows to open. But what if I need to switch to another project within Tmux?

Thankfully we can run command Command-a s to toggle a list of running sessions to open. This is a great way to navigate all your projects without leaving Tmux.

Tmux on the command line


What I really like about this setup is that not only can I navigate projects easily, but I can setup projects just one time - saving the need to create window or panes every time. And the kicker, I can hop into one project, make a change, and hop right back where I left off with just a couple keystrokes.

Do you have any Tmux tips you'd like to share? Please leave us a comment below.

Littlelines Roadtrip (Summer Edition)

Written by Matt Sears

The Littlelines crew will taking the show on the road this week. We always like to take the opportunity to stretch our legs and get out of the city for a few days to meet folks in the industry. This time round we're loading up the car and sticking to the great Midwest.

Steel City Ruby - Pittsburgh, PA

Steel City Ruby Logo

Our first stop will be Pittsburgh for the Steel City Ruby conference. Steel City is entering it's third year and the speaker line up looks like it's going to be another great one. We had the pleasure once again of designing the conference tee shirts and we think they look really great.

Weapons of Mass Creation - Cleveland, OH

WMCFest Logo

Next up, we're heading north to Cleveland for Weapons of Mass Creation. This is the premier art, design, and music event in the country. This is the fifth year running and has grown to a 2,000+ attendee event. Checkout the amazing speaker line up - can't wait to listen to all the great talks!

If you see us, stop and say hi, we'd love to meet you! And hey, you never know - we might have goodies to hand out.