My views on software, programming, Linux, the Internet, government, taxation, working, and life.

Monday, March 20, 2006

Free Software Startups for Old-Timers

Are you an old timer like me who's quickly approaching 40, still moonlighting, writing code, and wanting to get rich quick? If you're doing it with the LAMP or LAPP platform on Linux (Linux, Apache, PHP, and MySQL or PostgreSQL), you're probably being encouraged to release the software in typical FLOSS (Free Linux Open Source Software) style by giving away the compiled software and the source for free, then turning around and charging for tech support and T shirts. My feeling is that the original FLOSS model is designed for young college grads, divorcees, or people who either have plenty of time on their hands or very little debts or family life. Many of us old timers don't have the time initially to handle tech support emails or calls while we juggle our family life, pay our big debts, and work our day jobs to pay those debts. But it need not be. Even us old-timers can participate in a slightly different model of FLOSS and eventually (I hope) move from dull day job to the job you really love. You do not have to be pinned down by concepts from the likes of FLOSS gurus like Richard Stallman or Eric Raymond.

In FLOSSFOT (Floss for Old Timers), wealth is built in phases. In the first phase, we can take our time writing the first release of the software in order to make it good, then turn around and offer two different versions:


(a) The commercial version, which includes far more branding, a web or graphical based installer, a web or graphical based admin or preferences tool, excellent documentation for end users to use it, installers to install it, and developers to extend it. It also includes 48 hour email tech support for up to 5 incidents, with additional email tech support packs being possible to be purchased later.

(b) The free version, however, is more limited. Instead of the latest major release, it's one major release behind. Note, after the first release of the product, releases should happen often -- not like the long delay between releases of MS software. However, it does have all critical updates and security fixes applied in minor release updates. To find the link, one first has to see a big Donate button, and the donate feature is integrated into the home or login page of the app and in the README. Instead of an admin tool, you have a readme and you must get a DBA to update the database. Instead of an easy, intuitive installer, you get a readme on how to do it yourself. Instead of excellent docs, you provide a minimalist readme. And to make it a little tougher, you change the page names slightly so that the commercial docs do not apply to the free version.

There should be some more catches to the free version. You need to make it slightly enticing. It should be fairly easy to install by simply copying the folder to a certain directory and then adding some entries into a database for users, groups, customers, etc.

And all tech support to help get the free version installed should be in the form of pre-sales context with 48 hour turnaround and a rather large FAQ that you build based on common customer queries.

In this phase, you should save all money and never spend it unless absolutely necessary.


Now that this system is in place, you're going to need to work on bug fixes and marketing. You need to consider OEM partnership deals, government contracts, a small advertising budget, and self promotion at small conferences and trade shows when affordable. Perhaps even speaking on Linux LUG radio or some other means is necessary. Do anything you can to increase profit potential and hobbyist interest. Meanwhile, listen to your hobbyists who take the free version and take their advice and code for consideration. While doing this, save as much money as possible, using only just a sliver for advertising, hosting, etc.

Perhaps in this phase, you may get an offer for investment capital. RESIST! You're not big enough and dedicated enough in the business to manage this. You still have a day job to maintain, doing something else.


You have four major goals in this phase:
* Rewrite the internals in a major release so that developers find it easier to customize.
* Increase your advertising budget.
* Continue seeking partnership deals.
* Maintain the course of the business.

Again, avoid investment capital at this stage.


Hopefully by this stage, you have achieved launch status where you can leave the mothership of your day job and spend fulltime on the business. But should you do that? No, I don't recommend it. Instead, consider a part-time retail job so that you have some other kind of income, just in case.

At this point, however, you might be able to afford to hire a separate company on 1099 Misc to do L1 tech support and/or pay for a call answering service that acts as a front for your business while you're gone. Do not consider W2 employees yet.

I would recommend using a freelance specialist (on 1099 Misc) just to help you get listed on GSA schedule.

You should be partially living off the income from this business.


At this stage, you can now leave the part-time job and work full-time in the business. Should you consider W2 employees yet, however? No. If anything, it should all be 1099 Misc.

Your main focus in the business at this point is to keep those eyeballs turned to your product and to increase profits. Come out with more exciting releases. Listen to your customers more and implement their suggestions where reasonable or when you see "low hanging fruit".

You should be living completely off the income from this business.


At this point, you have a critical test. You need to change the course of this business so that you almost give the software away with all features intact. Instead, customers pay for the nice media + printed docs + a tech support 5 pack. You need to change the dynamics of how you operate, or the marketing and deals you have with OEM partners, such that you can survive very well in this model without having to go back to your day job.


At this stage, you now have enough cash on hand to hire 1 employee. He or she should be, as the Yahoo eCommerce guru, Paul Graham says, an "animal". I would suggest one person to manage sales and marketing with you. You need to make enough money to pay a low but decent salary for this person, and a minimal salary for you to pay your own bills.

At this stage, you'll want to get more serious about the business plan.


Everything before this stage was what I consider "micro-startup". Now we're talking "startup" phase in the real sense of the word. You should be gangbusters by this stage, ready to take on a small business loan and start growing your business with a serious business plan.

Your choice to use venture capital after this point is your own. Personally, I would prefer to avoid it because it gets in the way, bosses you around too much, and increases costs while at the same time it is trying to pay your existing bills.

You might luck out and get an offer for a buyout, but again, I would recommend you avoid that for at least another two more years.


You really need to hedge your bets with another software business idea. Perhaps it's a product line in the existing software company, or perhaps it's another software company entirely. But you have a lot riding on you and you need to focus on investing in what you know. To invest in some kind of other investment is just a risk. At least you know this industry somewhat.

Do not forget that you're so skilled now that other startups and individuals will pay you for what you know, such as hearing you speak or if you write a book or eBook, or if you record a speech or set of tapes.


At this point, you're in small business mode and you can either choose to remain on and grow the business, sell it, or bring in other partners and take a long sabbatical working on your next big project.

You Send It -- way to send large files

Rogue Brazilian sent me a cool link. It's . With this, you can send an email to send a large file. Then, other users can click on the link and start downloading it. Too bad they use Microsoft .NET to implement it instead of FLOSS technology, but it's a neat idea, anyway.

PHP Frameworks Should Be Easier

PHP frameworks are somewhat of a pain because they have a steep learning curve. Some programmers swear by them so that your code doesn't look like the old Microsoft Active Server Pages with html and code intertwined.

I still think there's room here for an even better system. It should be minimalist and fast, with the main goal of simply separating HTML and code, and puts CSS-addressable style tags on your HTML. An added bonus would be a really slick form generator in an HTML table kind of structure, as long as the API were easy to implement. And a customizable grid would be nice too. If it uses Javascript at all, it should use minimal ECMAScript that works in both IE 5+ and Firefox.

To use it should only take about 10 minutes to learn. It doesn't need to do slicing and dicing and all that other kitchen stuff.

New Social Darwinism: Being "Internet-Stupid"

Check this link out that I saw tonight.

Some people still just don't understand the Internet. Notice in the link above about the comment from the lawyer for the Chicago housing group where he tries to compare publishing on the Internet to publishing in a newspaper, and says that USA's laws regarding equal opportunity in fair housing apply in both cases. (Note that I am not defending racism, which he discusses, which I find to be evil just he does. Instead, I am using this legal argument as an example on the concept of moderation of content.)

Many people still think that if someone posts something on a website, that its content should be moderated by the viewer's home-country laws. They do not understand the No-Geography concept when it comes to the Internet. About the only leg to stand on would be to have nexus laws regarding what country, state, or province the website is hosted in, and then enforce those by the local police getting a warrant and either shutting down the web hosting provider or telling it to shut that particular site down until this runs through the courts. However, if that were to ever seriously engage as a widespread practice, we'd all move our websites to countries with lax laws on this topic such as India. There goes all that Internet money going offshore again!

Meanwhile, again, this is the same argument that I find with taxation on the Internet, which I think is absurd. Many provincial governments think that they can enforce tax laws on the Internet and fix their problems, such as ask to cough up all the addresses of items shipped to California, cross-reference that against registered taxpayers, and then issue tax law legal summons to all those taxpayers. And if they did that, it would probably work only once. And why? Because the next year, those customers wouldn't go to, but would go to a site like (I made that up) where they would be beyond tax law jurisdiction. Again, there goes all that Internet money, offshore. You can hear the loud sucking sound already. (Not to knock India, particularly. I have a lot of praise for India and some of my websites are hosted there.)

When it comes to the sphere of the Internet, normal physics do not apply in many cases. If states and provinces really want to get serious about losing money to taxation losses, then they have a few options. Here's some creative suggestions:

* Have your state or province focus less on trying to recover lost tax revenue and more on business generation and incubation. There's plenty of money to be made there because every state knows that small businesses generate the highest portion of tax revenue for a state even over large businesses located in that state. And while you're in the incubation game, why not pass along good tax law education to these businesses too?

* Reduce legal barriers in your state or province and make it Internet-friendly. You'll find businesses will swoop to be hosted there and you can collect sales taxes for all citizens who live in the same state as the nexus of the business. You'll also find that the web hosting providers will have various standard taxes that your state's revenue department can utilize like they normally can with any other business.

* Ask Congress to increase import tariffs and deliver a percentage of that in fees to the states or provinces for lost revenues. (But this sounds a little like Communism to me. Doesn't it to you?)

* Ask Congress to create a federal shipping tax to be applied on packages shipped via any package carrier and have a percentage of that be delivered to the states. (Isn't that what the Canadians do with the VAT? I thought so.)

* Set up your own deals on the Internet and profit from it. For instance, a state could build a supersite and every 2 years they could put out an RFP for 15 qualifying businesses in that state to be chosen to be promoted in that state. Then, provide other services on that site that would actually inspire people to want to send their eyeballs there, such as a family-friendly news and games area, or a portal for the local newspapers or TV. Think about, for instance. They put a tool on every Firefox browser so that if you search on Google, and then purchase something from a company hosted on Google adsense, this is tracked and money ships from Google back to And by doing that, the other day it was revealed that has earned $23 million dollars (and that's probably double by now as we speak!). Similarly, states could jump on board the Internet and provide portals for its citizens where the state gets a cut of the profits just like any portal might get a cut of profits for the advertising and link connections.

* Using a standard RFP process and being fair with competitive bids renewed every so many years, have your state build its own competing ecommerce engine that could be optionally used by businesses in that state. Of course it would have to be fast, affordable (in scales), and rock solid for it to take off. A state could also make their engine more attractive to companies by offering, in certain cases, tax revenue protection. I mean, if the state's revenue department has a hand in the site's design, then more than likely it will comply with applicable laws and the state can defend itself on those laws because it knows them better than anyone else. In fact, it might even help tweak those laws to iron out potentially Internet-unfriendly kinks.

These are just a sampling of ideas. Many more can be thought up by think tanks.

Essentially, in my country, just like yours, the old tax laws worked because the physics of space (geography) existed. Before the Internet arrived, business had to collect sales taxes from you because governments knew that it was too inconvenient for you to jump across the border into another state or province to purchase something. But with the Internet, you can jump across one state, two states, a gazillion states, or completely on the other side of the Earth with a single click, type in your credit card, and within one week have something sent to your home.

And the same goes for content. The concept of geography does not apply. Just because citizens can view content in their state from wherever it is hosted does not mean that this state has legal jurisdiction against such a business. And if a state says, "Oh well, we'll just require our ISPs to put filters on such web addresses," that would amount to living in a Communist State like China or North Korea. That would fly only for about 4 months and then there would be a huge customer uproar. And if states wish to attack a business by hosting provider or business nexus, you'd hear a loud sucking sound the following year as those things moved offshore. That trick only works once.

If State or Province assemblymen and Federal congressmen and parliamentarians do not watch themselves, they could get voted out of office simply for being Internet-stupid.