Category Archives: Business

There’s a quote in Computer Science – “There are only two hard things in Computer Science: cache invalidation and naming things.”  Well, naming things is hard for everyone.

Everyone brings to the table a history of accumulated connotations and associations such that the meaning of everything is different to each and every one of us.  Finding the right word for something new is ever more challenging in some ways. We intuitively gain a sense of meaning of words even if we have never heard them before in many cases.. this requires deliberate thinking.

In software, naming variables well can be the difference between sensible readable self-documenting code or unintelligible write-once junk.

Likewise naming things in the real-world is also difficult, the right name really does make an impact.  The right company name will make a difference, the wrong name will make everything harder.

 

Having registered many different businesses in the past, I have made many mistakes in registering them.  I’m sitting on some companies that have been idle after we failed to acquire enough funding to finance the initial prototype, while for other companies I have been in unenviable position of not having the corporate structure in place before needing to pay expenses or accept payments.

There is a sweet spot during the ideation stage where it makes sense to get the incorporation process started.

This is something you can obviously do yourself, but I recommend finding an accountant or lawyer to help structure things properly.  It feels more official and legitimate when an accountant steps you through the initial voting of terms, and issues the first shares.  A solid and well written agreement will help solidify what might have been unspoken between the co-founders – and a healthy open communication about these things sets everyone’s expectations at the outset.

So when should you kick things off?  Obviously every venture is slightly different but here are some keys:

  • incorporate as late as possible but…
  • before significant creation of intellectual property
  • before accepting payments
  • before signing contracts
  • before purchasing too many assets

If you are bootstrapping an idea, I would suggest waiting almost until you are ready to launch. Many ideas fail to gain enough momentum as a side project and don’t make it to launch.  incorporating too early costs money and leaves you on the hook for more paperwork should you need to fold the company.

I’m in the middle of undertaking a large software project – something that could take 200 hours to get to an MVP. I wanted to get things organised. My first thought was to use some of the tools I’m used to – Trello for a kanban style board, bug tracking, continuous integration services, Slack. But on second thought I realised that all of these tools are designed to aid in communication to other team members. With a team of one (me) all the communication can happen within my own head thus the time that would go into configuring all these extra tools and transcribing my thoughts into them is wasteful.

Instead I’m able to work off off of a simple todo list.

Do some brain storming, sketch out some ideas on paper then figure out some reasonable list of high level tasks.  I can leave it all on paper so it’s on my desk and in my face and easy to scratch off and add to at any time.

If I add just one more developer to this project, then suddenly all these things come back into play. It becomes necessary to discuss who is doing what, to understand and verify each other’s work, to maintain consistent code style and quality. Digital platforms like Trello become necessary to stay in sync and the quick and flexible paper approach gets crumpled up and tossed into the waste bin.

It’s hard to appreciate the cost overhead of scaling from one to two people.  It’s easy to look at a calendar full of scheduled meetings and see how much time is spent talking compared to writing software, but what is harder to see is the amount of time spent chatting on slack, updating trello, and commenting on pull requests. There are communication costs that are hard to measure.

It’s something to consider when you are deciding to hire your first person

There are proponents of both cases for building a business.  Should you identify the vision and strategy for one amazing product and chip away at it until it becomes a success, or should you try 10 small experiments, see what sticks then focus on the winners?

David Heinemeier Hansson of BaseCamp started his venture with a dozen different web apps, developed more or less in parallel for several years.  After a while it became apparent that one of them was vastly more popular than all the others and those lagging Apps were eating up precious attention that could otherwise be better spent focused on making their Basecamp app even more awesome. Eventually they sold off the other assets and doubled down on their winner.

Ford on the other hand started out famously with one car that was available in just one color.  The model-T was a singular project and the focused effort one building just one thing really well is what helped Ford compete and survive in those early years of the automotive industry. Had Henry Ford decided to develop 10 models of car at the same time it’s unlikely there would be a Ford Motor Company today.

Had DHH decided to start his company based on just one of those 12 app ideas, there’s less than a 10% chance he would have picked Basecamp and ended up with the winner he has today.

It seems that in both those cases one approach or the other was a requirement for their success.

However there is another strategy that attempts to strike a balance between these which is the pivot.  With this approach you focus on one vision until it can be validated by the market and at a certain point if things look like a dud then you re-align the company on a new vision.  This has the advantage that you maintain the efficiency that comes with a focused mission, but if the market doesn’t resonate with the product you can keep the company together, re-used some of the assets you’ve built and test another market with a renewed focus and determination.  Hopefully it doesn’t take too many pivots to find something that fits.

How do you know what is the best strategy for your business?  I think it comes down to how the development cycle matches with the marketing cycle.  A lag creates gaps where the development team may not have market driven direction to go, and the marketing team may not have anything new and hot to sell.  Filling the voids (if you have them in your business) may be an opportunity to develop a new idea, or an indication there is an opportunity to re-structure and tighten up the slack.

Part of my fascination about economics is peoples desire to oversimplify a dramatically complex system. The reality is that there are 7 billion individual active entities that all act in complex ways. The human mind simply cannot comprehend the motives and interactions between all 7 billion individuals that make up the system. This makes it a fun thought experiment, how many complicating motivating factors can you think of and what are their relative strengths on a human mind across different personalities.

Last night I was pondering a currently popular topic of Universal Basic Income. And it occurred to me that perhaps there is a win-win way that governments could slowly introduce them without breaking the bank.

The most common objection to basic income is ‘who pays for it?’ and certainly the most straight forward answer is to raise taxes on the rich and re-distribute the wealth downwards. This is a tough sell, especially since wealthy people hold sway with the government to protect their wealth, while the lower income earners hope to be wealthy one day and don’t want to experience higher taxes when they are. I don’t think this approach is viable for a substantial UBI scheme.

What is needed is an approach that makes business owners happy too.

Where could the government get the money to pay a UBI if not from increasing taxes?

The wealthy people themselves serve as an example of how to make a income that isn’t tied to work which we can model the government on. Wealthy families put their money to work for them and can live off the dividend payments forever. This is a model that may work at a national level with the government making the investments and passing the dividends through to citizens.

Are there any precedents for this kind of arrangement with other governments around the world? Yes! The Alaska Permanent Fund was established in 1976 as part of an amendment to their constitution. It was designed so that a portion (25%) of revenue from oil royalties flowed into an investment fund for future generations to enjoy. As of 2015 the fund is worth $55B and over the last 5 years the average annual payout has been $1352. That has proven to be a significant boost to the economy especially in rural areas where cash and jobs are scarce. While $1352 is not enough to be considered a basic income, it is a start, and proves that it’s possible to give money directly to citizens without raising taxes.

What would it look like to scale this up to a country like Canada? The population of Canada is 50x bigger than Alaska so a per capita equivalent wealth fund would be nearly $3T. That’s a massive number. It will take a long long time to reach that level, but it’s not as completely insane as it sounds. The execution of this plan would look a lot like Quantitative Easing. The government makes use of it’s ability to borrow at very low interest rates (currently about 0.5%) and use that money to buy assets. Those assets would yield income back and the spread between interest and yield is a profit that could be used to pay down the debt principal initially, but ultimately get passed down to citizens.

Instead of buying bonds and mortgage backed securities typical of the US Quantitative Easing approach, I’d suggest investing in equities and infrastructure as well. Pumping money directly into the TSX should make the elites happy.

Isolation of both the debt and assets into a ‘Canada investment Fund’ that is mandated to provide transparency would, I hope, ease the concerns of the added debt since people can see that there is $xB in debt but it’s offset by $yB in assets which generated $z in profit for all Canadians. If the government continued to finance more and more into this fund it could eventually reach the desired levels.

Quantitative Easing in the USA resulted in $12T worth of assets being bought by the government. Between 2005 and 2015, the Fed generated a profit of $700B for the US Government which is generated through these kinds of investments.

By making an investment directly in profitable businesses and infrastructure projects now, you help spin up the economy as that money gets put to work. And the government gets something in return for the investment (equity) instead of it being a more typical hand-out (grant or tax-break). Equity provides some accountability for an ROI. The fund can pass profits back to the government which could create the base of a universal basic income that is not based on raising tax rates.

For the last couple of days I’ve been thinking about budgets.  Businesses, particularly large ones, have very advanced budgets and therefore tools in place to monitor and analyse cash flows and budgetary concerns, sometimes even in real-time.

You can bet that a company like Facebook has the ability to show ad revenue per hour and probably per minute.  Obviously this is outside the scope of nearly any small business to put together, but the concepts are still valuable.  Tracking your income and expenses as accurately as possible allows for quicker decisions and possibly the ability to identify trends that might disappear in aggregate.

There’s the old adage that What gets measured gets managed.  To that end tools like Mint help with personal finances a bit, but sometimes you need some better real-time feedback on your spending behaviour.

Something that I want to get a better feel for personally is how spending matches up to my budget, if a couple of purchases blow the budget I want to know about it as quickly as possible so that I can adjust before sitting down at the end of the month to review my accounts.

I may try to put together a custom system to create budget alerts for this kind of thing by scraping credit card transactions.  It could be very beneficial.

Writing code everyday has been an interesting challenge.

In 2015 I started to work towards a long streak on GitHub which eventually capped out at 250 days. The questions I wanted to answer was:

  • Can I apply ‘deliberate practice‘ to programming and get better?
  • Can ‘free coding’ (like free writing) be effective way to push through writers block?
  • How important is memorising to your coding performance?
  • If syntax and API unknowns don’t present bottlenecks to your flow how fast can I translate an idea into code – can it be limited by typing speed?

I started a repository for my daily coding.  It had a simple script to generate a blank file everyday for me to code in and I would try to code something.  Sometimes it would be to explore a new python module, or fiddle with syntax, or challenge myself with a rosetta code example or replicate a previous day’s code from memory.  I wrote dozens of Flask apps, memorised the methods of lots of APIs, and gained a level of confidence with writing Python that I don’t have with any other language.

At the end of the streak I had a repository with hundreds of small scripts.  Only a handful of them were multi-day efforts or had any real value.  The variety of this collection proved to be useful on it’s own too – several times I have referred back to these examples to help with my actual work and to copy/paste snippets from.  Some of them started me down a path of exploration – like calculating the return on investment for solar panels.

Part of what enabled me to maintain this streak as long as I did was a simple script I wrote to check GitHub for daily activity and email me if I hadn’t yet committed any code.  This simple hack was enough of a reminder to keep me focused even when I was otherwise distracted.

This past week I turned that script into a web service anyone can use.  CodeStreak.io will watch your public github activity and email or SMS you if you haven’t yet pushed any code for the day.  This is the first project of 2017 that I plan on building to expand on my previous streak.

In 2017 I want to build 12 projects.  Each should be roughly 10-20 hours of effort and result in something that provides value for other people.  CodeStreak.io is an example of the kind of project that I want to undertake this coming year, but it is also a tool to help ensure that the momentum is sustained for 12 months.  Blocking out 4 hour chunks of time is a helpful way to really focus and be productive, but 4 hours once per week has been (for me) too sparse to maintain interest in something long enough to finish it.  A little bit everyday keeps a project on your mind.  Attempting to maintain a streak will be a tool to power through the bits that are otherwise uninteresting or difficult.  CodeStreak.io is a foundational tool necessary to accomplish my 2017 goal.

The questions I want to explore with this new goal are:

  1. Without a concern for generating revenue can I just write cool things and get them out there?
  2. Can I get deeper into something new and create something useful out of it with less than 20 hours of effort?
  3. Can you get good at seeing a project from start to finish – what skills or traits will improve the odds?

Hopefully, I’ll have some answers at the end of 2017.

Recently I’ve been interested in finding a business investment – something like a B&B that allows me to put some of my retirement savings into a business that I have some control over its success.  The normal process for something like this would be to write a business plan or at least do some back of the envelop estimations for how much revenue is expected from the property.

The usual tool of choice is a spreadsheet.  And those are excellent ways to work through the numbers and visually see things.  However, the flexibility of a spreadsheet is somewhat limited for even more advanced analysis.

I wanted to take things to a different level.

What information could I get from looking at the market and scraping webpages that I could feed into a bigger model to see how other owners of similar businesses do.  By pulling in 1000+ comparables and running them all through a similar model to estimate each of their profitability it becomes possible to identify the traits of a successful business.

Applying this sort of ‘big data’ analysis is proving interesting.  There is an amazing amount of information freely available on the internet, but much of it exists in different silos.

In the example of running a B&B, there are lots of them listed on booking.com and similar travel booking sites.  These provide a partial picture of how popular a place is (from it’s availability) and the revenue (from the cost to stay there). Another big piece of the picture is the costs – which you can estimate by checking real-estate listings.  By putting all this information you can see many interesting things.

If your model is accurate then you can get answers to these questions:

  • What percentage of B&Bs turn a profit each year
  • Is there an optimal size / number of rooms
  • which attributes of the property correlate most to it’s profitability

You can take a deeper dive into the best performing properties to see if they do something unique – do they have nicer websites / photos? Do they do aggressive advertising? Are they active on social media?  Answers to these questions can help you find the strategies that are working best in the market – and perhaps things that are a waste of time.

This type of analysis is something I think more people should be doing.  It provides some competitive advantage in terms of the information that you bring with you into a potentially big investment, and reduces the risk that you inadvertently buy a lemon.

 

There’s nothing quite like the feeling of starting a new project idea and seeing it all the way through to finished and published.  It’s a feather in your cap that you can look back on and say “I built that”.  Regardless of if it is a big hit or not, it will make you a stand out – very few people get something all the way to done on their own.

Ambition can act against you in this.  The larger the project the more opportunties there are to hit roadblocks which derail it. The size of a project is a risk that should be minimized.

That’s why I believe it’s important to create momentum with smaller projects.  A small win still gives you a great amount of confidence.

This applies both to home projects, or code projects or hobbies.

Small is a relative term.  You may be able to handle a small 40 hour project, while someone else cannot yet tackle something that big.  Small may be as simple as fixing a wall hook or creating a pull request to fix a typo in the documentation of an open source project.

By putting a lot of these small projects together you create something bigger than the sum of them.  Fixing all the small things around your house can turn it into a relaxing home, Contributing to Open Source projects could gain you some notoriety and help you get a dream job.

Derek Sivers said “the best option is the one with the most options” and doing many small projects gives more options than one big one.

37 signals (now basecamp) started out with 6-10 individual products. When starting they didn’t know which would be a success so creating many smaller ones diversified their risk and helped them succeed.

Small projects are going to be a core part of my strategy for 2017.  Launching micro-sites, simple tools, or open-source libraries that can be finished in 8-10 hours of effort.

Think small, get out there, and finish it.  It’s a step to something bigger.

Lately I’ve been thinking back on the past business opportunities that have been explored and which ones have been more effective than others.  This story about the confessions of a Google spammer reminded me of a project I attempted to build back in 2012 to build and control and automate lots of blogs. My project was much more whitehat than spamming google but it landed at the same time that Google cracked down on similar blog networks with their penguin update. It made me think about what ideas have worked best and worst of the things I’ve tried over the years.

By far, the easiest and most straight forward business ventures I’ve done have been consulting and freelance work.  People understand how this works so it’s easy to sell. “oh you need a website built? I know how to do that – will you pay me to do it for you?” That’s a great base for business and been the largest single source of income for Halotis. Companies are comfortable paying for your time and expertise to create new things and they’ll pay as long as you can convince them of your time availablility and expertise.

iPhone Apps were the next biggest success.  Getting in early and leveraging the distribution of the iTunes App Store was a big win.  Lack of time to maintain and improve the apps and the influx of AAA quality competition eventually killed things for me.  Now it’s too hard for a single developer to do without a lot of luck.

Creating real products and services were another profitable option for me. I used Product Launch Formula to help strategize a couple of sales which were a big success.  Big launches attracted a bunch of sales that ended up becoming a real product business.

Ad supported and affiliate sales based websites have been break even for me.  They cover the hosting costs – which is to say almost no money.

Those have been my biggest lessons.  Hopefully that is helpful to readers who are thinking about their own businesses.