Monday, February 05, 2007

Outsourcing for Small Businesses

Digital Aggregates Corporation is a tiny little subchapter-S corporation that started out as a hobby and ended up being how I earn a pretty good living.

Subchapter-S (as opposed to subchapter-C) is a section of the Federal income tax code that determines how a corporation is taxed. I am occasionally asked why Digital Aggregates chose to be an S-corp instead of a Limited Liability Company (LLC). When Digital Aggregates was founded in 1995, LLCs existed, but were so new that there was almost no legal precedent for how much protection they actually provided, and not all fifty states in the U.S. recognized them (and would not do so until the next year). So Digital Aggregates chose to be an S-corp. If I had to do it all over again, Digital Aggregates would probably be an LLC.

Update (June 2018): Some years later I would do exactly that for my second company, in One Prototype Is Worth a Dozen Meetings.

I am also asked from time to time what services I outsource, to whom, and why. There is nothing like running a tiny business to convince you that not only is outsourcing a good idea, it is the only way you will ever have any free time to do anything other than work. If I didn’t outsource a lot of stuff, I would be missing a lot of the new Battlestar Galactica. One must have one’s priorities in life.

So here is a list.

PSTN: Qwest


Qwest provides both of our home analog telephone lines, the second one of which is a dedicated business line. That second line goes into one of the analog trunk ports of my Asterisk PBX. I have an analog phone in my home office on the second phone line to use as a backup in case my Asterisk server goes down, although that's never happened. I also have call-forwarding on my business line so if necessary I can forward it to my mobile phone.

I don’t have anything to say about Qwest, good or bad. I pay the bill and the line always works. I remember having an interesting conversation with the installer when he came out to hook the second line up. I started talking to him about the household wiring using terms like “Christmas pair” and “Halloween pair” and finally he asked me what the heck I did for a living. (These are old telephony terms for the standard color coding of the four-wire residential phone lines.)

Mobile Phone: Verizon Wireless


Verizon Wireless is my cellular service provider. They’re okay. I have not yet forgiven them for disabling some of the Bluetooth capabilities on my Razor. (Yes, I know I could hack it.) I desperately want a Treo Palm-based smartphone, but not until Verizon offers one with WiFi. It is pretty much worthless to me until I can use an internet connection over my own WiFi network behind my firewall. Wise up, Verizon.

Update (February 2010): I eventually switched to a Blackberry Tour from Verizon. The Tour supports both the CDMA and the GSM/UMTS standards, which means it pretty much works anywhere in the world (as I discovered when my phone rang late at night during a business trip to England recently). This little smartphone lets me keep up with voice and email no matter where I go. Of course, it's also an address book, a GPS, a web browser, an MP3 player, and I can use it as a cellular modem with my laptop when WiFi isn't available. Alas, it still doesn't have WiFi, something I hope Blackberry and Verizon will rectify on a later model.

Update (November 2010): And they did: I now carry a Blackberry Bold that supports CDMA and GSM/UMTS and offers WiFi as well.

Update (December 2012): On a recent trip my Blackberry Bold, on which I rely for just about everything while traveling, failed me. The alarm clock application quit working and, jetlagged, I overslept twice. The second time I had to scramble in a mad rush to make a breakfast meeting. Later while waiting on a plane I did a series of tests that convinced me this was not user error, or a hardware failure, but some weird software bug. I am quite unforgiving about some things. So a few days later back home I marched into the Apple store and left thirty minutes later with a Verizon Apple iPhone 5 that also supports both CDMA and GSM. I already use both an iPad and a Samsung Android tablet, so I'm familiar with both environments. But since I use a MacBook Air and a Mac Mini with a Cinema display on a nearly daily basis, and I typically travel with the iPad (or with the Air if I think I'm going to have to do a lot of content generation), I decided to stick with the Apple ecosystem. I'm quite happy with the iPhone. I bought a really nice alarm clock app that I tested at home before relying on it on a trip.

Broadband Internet: Comcast


Comcast is our broadband internet service provider. Of all the services that Comcast's internet service could provide, we mostly just use the physical internet connection. We sometimes take advantage of Comcast’s email service just to create temporary email accounts that we can later delete, or “disavow” in Mission: Impossible speak.

My spousal unit and I both love Comcast broadband. You will have to pry it from our cold dead fingers. As I mentioned in my article “Important Safety Tip: Enable Ping With Comcast”, since I enabled responding to ping on my LinkSys router, our Comcast broadband connection has worked completely reliably. Apparently they eventually revoke your DHCP lease if the endpoint doesn’t respond to ping.

Domain Registrar: Network Solutions


Back in 1995, when I first registered the domain diag.com, Network Solutions was pretty much the only domain name registrar. Now there are a lot of them, but I’ve stuck with Network Solutions for diag.com, as well as for digitalaggregates.com and digital-aggregates.com, not to mention chipoverclock.com and a few others. Having all domains through one registrar simplifies the management of them through a single web interface.

IMAP, SMTP, and DNS: Indra’s Net


With your own domain comes great responsibility, like maintaining your DNS MX records, as well as IMAP and SMTP email servers. For email and all general DNS service I use a local company, Indra’s Net (those of you into Eastern Mythology will get the reference), an ISP based in Boulder Colorado.

I can’t say enough good things about Indra. When I call them, a human who can actually help me answers the phone. When I email them, I get a prompt response from a human who quickly and efficiently handles whatever I need done. And I don’t have to do these things very often because their service just works. They have a configurable spam filter, and a web-based email interface that I can use while traveling.

Update (June 2018): For my second company, I would instead use the Gmail for business feature of Google's G Suite; for a small fee, I use my new company's domain name but keep all my email in the Google cloud.

Web Hosting: Verio (formerly Webcom)

I have two web sites, one which is hosted by the web hosting service Webcom (bought by Verio, which is part of NTT), and another hosted on an Apache server that is part of the powerful Digital Aggregates computer center. The Webcom web site is our production web site. The internal one is our R&D web site where we try all sorts of goofy stuff as well as store big files that we don’t see a need to pay Webcom to host.

I recommend this as a strategy. Webcom provides a reliable 24x7 web service for not much money, all under the www.diag.com (or www.digital-aggregates.com or www.digitalaggregates.com) domain. Meanwhile, we have our own Apache web server to play with. Depending on where you navigate on the Digital Aggregates web site, you seamlessly move between the Webcom servers (somewhere in California I think) and our R&D server (a PC in the basement).

Update (June 2018): I no longer need the internal Apache server. I now use Dropbox for storing large files that I need to access over the web.

Update (January 2020): I now manage my web site using WordPress with the Divi theme from Elegant Themes. I use web forwarding from Network Solutions to map www.diag.com and the other domains to a DNS aliased domain (see below), which in turn is mapped to the IP address of a Raspberry Pi that I maintain and that runs an Apache web server that now hosts my web site.

Dynamic DNS: DynDNS


DynDNS has a clever service supported directly by my LinkSys router. For almost no money, if Comcast DHCP assigns a different IP address to my router, the router automatically notifies DynDNS, and they update the DNS tables for the domain name of the Digital Aggregates R&D web server, to point to the new IP address. Pretty slick and completely transparent.

Update (June 2018): For a variety of reasons, I later switched to using No-ip.com for my Dynamic DNS service.

Web Site: Fog Creek CityDesk and Telepark Forssa

I've done enough programming in pure HTML to convince me that life is too short. Sure, it's a useful skill, just like sometimes you need to know a little assembler even if you're programming in C. But I use a commercial tool, CityDesk from Fog Creek Software, to edit and manage the Digital Aggregates web site. When I chose it, there were a few other commercial alternatives, and no open source option. If I were starting fresh, maybe I could do something different. But then again, maybe not. I love CityDesk. I can easily edit and preview the Digital Aggregates web site on my laptop, then download it via FTP to both the production server and the internal R&D server with just a button press. And for those rare cases when CityDesk's fairly simple web editor isn't sufficient, I can easily use another tool and just import the HTML into CityDesk.

CityDesk supports the use of web site templates: pre-formatted forms that make creating a web site mostly a fill-in-the-blank proposition. The German company Telepark sells for next to nothing several CityDesk templates. Although I've departed somewhat from the original Forssa template I started with, it still enabled me to get a simple but usable web site up and running with about a day's worth of work.

I know developers that still create their web pages with raw HTML through sheer force of will. And I once knew a guy that refused to write in anything except assembler. C'mon, really, you need to have some concept of what your time it worth.

Update (June 2018): I still use CityDesk and Foressa, but CityDesk is no longer supported by Fog Creek. It is only due to the kindness of strangers that it still works on my Windows laptop.

Update (January 2020): The solid state disk in the big hybrid SSD/disk in my desktop Mac died catastrophically, taking with it the VMware virtual machine image on which I ran the ancient version of Windows 8 just to run CityDesk. I had the Apple Store replace the fusion drive, and restored from a perfectly good backup. But I decided to take this opportunity to revamp my company web site by moving from CityDesk to WordPress, using the Divi theme from Elegant Themes, and hosting the site on a tiny Raspberry Pi 4B single board computer running Apache under Raspbian 10.

Blog: Blogspot (now Blogger) and Flickr

I use Google's Blogger for the text portions of my blog, coverclock.blogspot.com (a.k.a. www.chipoverclock.com), and Yahoo's Flickr for the images, including both photographs and diagrams. I learned this mash-up technique from Demian Neidetcher, although for sure he didn't invent it either. Blogger is free. Flickr can be free too, but I signed up for a low cost Flickr account to get the ability to upload more data faster.

I think the new Blogger needs some work in the composer tool department. It's a pain to do detailed articles which involve embedded source code. And embedded XML is, somewhat understandably, especially painful. I frequently have to drop down into HTML editing, which I liken to programming in assembly, and then can't go back to the composer without loosing my changes. But for the most part this combination works well for me.

This is a trivial example of the kind of web service and software-as-a-service mash-ups that are becoming increasingly common. If this is the direction that things are going, I'm all for it. Services like these which are, if not free, at least very inexpensive, are tremendously enabling technologies for small businesses. I know folks that run web-based retail businesses through sites like Amazon.com and EBay, letting those sites handle their web presence. I have used all of these services as a consumer.

Payroll: Paychex

Do payroll? Figure out withholdings? Report all the various corporate taxes quarterly to the appropriate state and federal authorities? I have people to do that. I just tell Donna of Paychex how much I want to pay myself every month, and she does the rest, all by electronic funds transfer from a Digital Aggregates checking account to my personal checking account.

I suppose there are other equivalent payroll services, but I really like Paychex. They were recommended by my tax accountant, and boy was he right on the money (as usual). They are a national company, but when I deal with someone, I deal with Bruce, my payroll specialist. Bruce answers all my questions, and so far has never made a mistake. I have no idea where Bruce is located, but I dial a local number, and he speaks English. Bruce is my go-to guy for payroll.

Paychex sends me a complete payroll report every payroll period (for me, that’s monthly), as well as a pay stub and end-of-year W-2 form that says “Digital Aggregates Corporation”. That is very cool.

Registered Agent: Corporation Services Company (CSC)

Until recently, Colorado required every corporation incorporated in the state to either have an office staffed during normal business hours to receive official paperwork from the state, or to have a registered agent that does this and handles the forwarding of the paperwork. CSC is not cheap, especially given that they add almost no value to the process. Colorado has changed the law to allow tiny corporations, just like Digital Aggregates, to receive official paperwork by registered mail, eliminating any real need for me to have a registered agent. 2007 will be the last year I’ll be using CSC or any other registered agent. I recommend avoiding using a registered agent unless you absolutely must.

Update (November 2008): I did exactly this, dropped my registered agent, starting in 2008.

Accounting: Intuit Quickbooks

So far I have not had a need for an accountant just to keep the books. I use Intuit’s Quickbooks, on the recommendation of my tax accountant. Right as usual. Being a techie, grasping basic arithmetic, and having the ability to balance my own checkbook every month, I’ve found keeping what little accounting I need to do quite feasible with Quickbooks. Note however that I am not doing payroll or withholdings, Paychex is handling that. So my accounting needs come down to generating invoices to clients and reconciling the corporate account every month (or so). Quickbooks works just fine for that.

Taxes: Your Own Tax Accountant

I have used the same tax CPA for both my corporate and personal taxes since 1989. The man is absolutely invaluable. Not only does he handle all my tax stuff, but he provides a wealth of valuable advice about the day to day details of running a small business, partly because he is a tax accountant, and partly because he is a small business himself and has to do all this stuff. Even though you could certainly do your corporate taxes yourself, I recommend finding a CPA you know and trust and establishing a business relationship with him or her, and let them keep you out of jail. I have found it to be worth every penny.

Important safety tip: unlike personal tax returns, corporate tax returns are due March 15th.

Pension: SEP IRA

Here is where you really need your own tax expert. After discussing my options for a pension plan with my tax accountant, I set up a Simplified Employee Pension plan or SEP. SEP is a special type of Individual Retirement Account (IRA). Another alternative would be a 401(k) retirement account. I felt that the 401(k) got complicated particularly if I had additional employees. The SEP was simpler and met my particular needs. I can't really give you any advice here except to discuss this issue with your own tax accountant and choose the financial instrument that makes the most sense for you. The take-away here is that you can be self-employed and still have a tax deferred pension plan.

Insurance: Your Independent Insurance Agent

Update (March 2010): Several of my larger clients have asked me to carry Commercial Liability (CL) insurance and Professional Liability a.k.a. Errors & Omissions (E&O) insurance. I found this to be a reasonable requirement, and probably a good idea in any case. Back in 2006, I found CL and E&O policies nearly impossible to find for my one-man corporation. Policies could be had through the professional organization IEEE, of which I am a member. But they were aimed at professional licensed engineers, not megalomaniacal supervillains such as myself.

Since then, things have changed. I'm guessing the increase in the number of self-employed has created a significant market for just the kind of thing I needed. My home and auto insurance agent referred me to an independent agent who helped me get CL and E&O policies with just a little paperwork. The policies aren't necessarily cheap: CL is about $500 annually and E&O is about $1500 annually. But both I and my clients rest easier.

Stuff: Amazon.com

I routinely buy used technical books at a fraction of their new price through Amazon's used book dealers. (Mrs. Overclock -- a.k.a. Dr. Overclock, Medicine Woman -- expresses concern when I don't get my daily Amazon shipment.) I recommend this approach for all technologists. Most high technologies have a half-life of about five years, but we're all on different points on the innovation adoption curve. There's no reason to spend sixty bucks for a book that you may be able to get (barely) used for twenty.

But I have also found Amazon to be a great source for small -- and not so small -- parts and equipment. Remarkably, I even bought a PC-based oscilloscope through Amazon. I have yet to purchase something as expensive as a laptop from them, but I can see the day coming where they will be my preferred supplier, or at least the sales room for all my suppliers. Amazon has effectively become my purchasing organization.

Mailing Address: The UPS Store (formerly Mailboxes Etc.)

Update (March 2010): When I'm slaving over a hot laptop, I'm most typically at my client's site, but occasionally in my home office, and sometimes at the local coffee shop. But on my business card, I want to give the impression that I have a palatial suite of offices that is the hub of my vast business empire. Not to mention I don't necessarily want to broadcast my home address. That's why I rent a mailbox at my local UPS Store. I get an actual street address which can accept both postal mail and package deliveries, and will notify me by phone or email if something interesting arrives. My UPS Store also provides notary services, copying, shipping, custom printing, both incoming and outgoing faxing, and any number of other handy business services.

Best of all is its location: it's in a strip mall just a few steps from the Starbucks that Mrs. Overclock and I frequent, and in the same parking lot as the local grocery, liquor store, and even my bank. I'm there two or three times a week running one errand or another, so checking my mailbox is a no brainer. It's also a good excuse to drop in for an afternoon latte and to get some reading done.

Company Credit Card and Checking Account

Update (March 2010): Having a company credit card vastly simplifies bookkeeping. Many goods and services purchased for the company can be directly charged to the credit card, eliminating any reimbursement of expenses. Just be sure you itemize each class of purchase on your credit card statement in your accounting system for eventual use by your tax accountant. This is not as hard as it sounds. My company card pays for things like office supplies, the monthly charge for the outsourcing of the company web site, reference materials from Amazon.com, the company mailbox, and business related travel.

Preventing commingling of personal and company money is pretty much a legal requirement for a corporation or an LLC. Even so, a company checking account is a good idea and simplifies bookkeeping.

If you're going to be self-employed, you better know what your time is worth, especially if you bill by the hour. Outsourcing is one way to help you spend your time where it delivers the most value, even if that value is your own leisure time.

5 comments:

Demian L. Neidetcher said...

Very cool post! We've talked about this in the past. Cool concept; outsourcing stuff at a small level. You didn't mention blog hosting with Blogspot and image hosting with Flickr.

Sure you have the technical capability to do 80% of the stuff but why do it when you can outsource it so cheaply.

Chip Overclock said...

Arg, I knew I'd forget something. Ironic that it was the blogging. I'll add that.

mcjoe said...

Yes outsourcing can save some money, but at what price? How many "associates" has Digital Aggregates had to let go for the sake of saving this money?

Let's not forget the human side of the equation here, OK?

Chip Overclock said...

As my recent article "The Secret Life of Chip Overclock Revealed At Last!" revealed, the equation at Digital Aggregates is more likely to have a feline side. Never the less, I assure you that our outsourcing has more likely played some small role in increasing employment in other organizations, and in any case no Digital Aggregates wage slaves (we prefer that term to "associates") were axed (we prefer that to "downsized") as a result of incredibly smart business decisions (we prefer that to "outsourcing").

In all seriousness, expect future articles on how outsourcing is good and offshoring has to succeed.

Anonymous said...

Outsourcing software development has become such a vogue and a full time vocation that today you have companies catering specifically to this aspect of the IT world. Outsourcing software development concept has attained full blossom within years of its birth. While the IT world is ever expanding and has become almost inevitable to mankind there were worries regarding the high prices of the IT services? In the modern times this issue has been somewhat resolved by hiring a offshore development team from a software company based in nations which provide the same services at much cheaper prices.