Saturday, December 15, 2007

Computing In Small Business

In this article, we'll examine a few options for running your Small Business, pitting Microsoft's offerings against the alternatives.

Part of any business today is computing, and computing is an incremental cost, especially in a growing company. Lay out the money for the hardware, the printers, the office suite, the technician to take care of it all, the network, the server, and so on. In the Microsoft scenario, the costs get pretty high, and keep growing as your company grows.

What if you could just install everything once and have it work? What if adding software to your entire network (whether it's just three employees or three hundred) only took moments? Well, I'm going to look at some options where you can do this, and show you how much you can save.

For all scenarios, I'm going to allow for only five users in a very small office, just getting started, and rig them up with an office suite (word processor, spreadsheet, database, etc.), Internet access (browser and email) and shared access to files on a server. Then we're going to make the jump to 10 employees, and then 20, and see how the numbers scale. The comparison will jump up to 76 users, the point at which you have to get new licensing for a Microsoft Windows Small Business Server 2003. For contrast, I'll show scenarios with a server and desktop (or "fat") clients and a server and "thin" clients (where the bulk of the software runs on the server, not the client). In all cases, I'll keep the alternatives separate from the proprietary options, for simplicity. You can run a mixed environment, but this article is about maximized savings and utility.

A) The Usual -- Microsoft Server, Microsoft Clients

Here we have a very simple setup. You run out, you buy five computers, use the operating system already on them (typically Microsoft Windows Vista Business Edition), pre-loaded Microsoft Office 2007 (which will need to be activated after 60 days) on each and make up a few users on a Microsoft Windows Small Business Server 2003. Set up shares on each one and you're networking. Oh, and you'll want a switch for that, just to make sure everyone can get good throughput and have your computers operating at maximum efficiency and allow for future growth (and everyone wants to be on the 'Net at the same time, too, right?). Of course, you're probably going to want to print, too, so a mid duty networked laser printer should do the trick. If you're office is prewired, all you need is the patch cables to get up and running; if you're not prewired, save yourself future headaches and get it professionally done! This will be our basic configuration up and running, which assumes Internet access is connected directly to the network through a firewall of some sort.

B) A Little Different -- Windows Terminal Server

Being a bit more foresighted, you can realize the benefits of centralized computing by throwing some cash into a well-stocked server, toss Microsoft Windows Server 2003 Terminal Services on it, and attach Thin Clients, instead of getting into the PC upgrade cycle. No hard drives to worry about, no individual software to worry about your users playing around with, more security, and less possibility of theft. Initial outlay may be more, but you're off to the races, all clients installed with the same software in one move. Much easier to maintain and control!

C) The Path Less Taken -- Linux Terminal Server

You saw this coming, of course, right? Here we take the same basic approach as with the Microsoft Windows Server 2003 Terminal Services and substitute a Linux Terminal Server and Free/Libre Open Source Software (F/LOSS). Same essential configuration, same hardware, less cost for the software, and easier to maintain. I have to mention at this point, I've not included the prices of setting anything up. If you have to pay to get a PC set up in your office, you also have to pay to get a Thin Client set up; the cost would be marginally less for the Thin Client (it's basically a drop and connect affair), but not significantly different so it won't really matter. Where the savings in Thin Clients really shines is in the replacement cycle: replace a PC every 3 to 5 years, a Thin Client only when it dies. Also, keep in mind that a Thin Client is almost useless to most thieves.

D) Off The Beaten Path -- Linux Server, Linux Desktop

Here, in place of the Windows server and clients, we've substituted Linux-based solutions. This can be a bit tricky, because if you don't find the right vendor, you'll be paying for Microsoft Windows on your computers, then replacing that with your chosen variety of Linux. Dell provides a couple of decent machines with Linux preinstalled (Ubuntu), as do Walmart (gOS, Linspire) and smaller companies like Zareason. (Of course, in Canada, Dell and Walmart are not currently options.)

Using Linux on the Server and the Desktop isn't very complicated, but it does require a bit of know-how to get things right. The same can be said of setting up a Microsoft Windows environment. The primary difference is that Microsoft Certified Software Engineers are abundant while Linux Professional Institute Certified technicians are a bit more scarce. Luckily, finding such help is as easy as browsing through your local Yellow Pages. More computer support companies support Linux than ever.


With Scenario A, let's say your company is doing well and grows by five users. Well, as far as the Server goes, you're covered: Microsoft Windows Small Business Server 2003 can serve up to 75 clients. Add five more desktop units, outfit them with the same software as the ones you have and you're rolling. The real expense here is the time to install all the identical software as other computers on your network. The cost and availability of the software you run on your other machines will also be an issue; if the new units are bought a significant time after the original units, you may no longer be able to purchase the original software (which could lead to an entire office upgrade scenario).

Scenario B is dramatically different. Grab a few more Thin Clients, purchase the licenses you need for connecting to the Server and productivity software and presto! Network upgraded in record time. Pretty good savings over going the Server/Client route, eh?

Enter Linux -- Scenario C. Using the Linux-based terminal server, you pay nothing for licensing and the additional software needed to get those new users online. Total cost is for the Thin Clients only. Same speed of deployment as Scenario B, same ease of management, no licenses to keep track of or purchase.

Scenario D is a bit of a cross between A and C. Now you're working with free software and a free operating system. You still have to load up your Desktop with everything everyone else has, but doing so is usually with a simple tool that can automate the whole process. As for the Server, there is no license-based limit to how many clients you can run from a single server, so keep growing as much as you like until you feel your Server needs that extra RAM, CPU or Hard Drive space to keep pace.

The Numbers Game

The numbers will always change, and I want to keep this article as relevant into the future as it is today, so lets use units, not dollars, for comparing the work involved in the above.

  • Deploying a Thin Client is the easiest function, so we'll give it a unit of 1
  • Deploying a Windows Desktop is about four times longer than a Thin Client, so it gets a unit of 4
  • Deploying a Linux Desktop isn't as easy as a Thin Client, but not as difficult as Windows, so we'll give it a unit of 3
  • Deploying a Server, whether Linux or Windows, is tricky business and has to be done right, no matter how you slice it; no unit will be assigned for this function, but we'll give a unit of 1 to license tracking (yes, that's only a knock against Windows, and it's in increments of 20 after the first 5 clients)
  • Deploying Software is relative in all cases as well, but if we use proprietary software, there are licenses to track, so that will cost 1 unit per instance

Here's a table to outline the basic costs (details on configurations follow):

Scenario A
Windows Server & Desktop
Scenario B
Windows Terminal Server
Scenario C
Linux Terminal Server
Scenario D
Linux Server & Desktop
5 Users
26 units
11 units
5 units
15 units
10 Users
51 units
22 units
10 units
30 units
20 Users
101 units
42 units
20 units
60 units
76 Users
382 units
157 units
76 units
228 units

Obviously, I'd have to recommend going with a Linux Terminal Server for all your business needs. It scales well, costs less (effort and cash) and with all the cash you save you can definitely afford to train everyone. Linux Server and Desktop is a pretty good contender as well, being almost as effective as Windows Terminal Server. Ultimately, your needs will dictate exactly what you need your computing environment to look like. With a little effort put into it, though, alternative solutions can be found and implemented with minimal cost.

Thursday, December 13, 2007

How To Boot XP On The XO Laptop

Okay, this is usually a little beyond the depth I'd go into on this site, but given that the window for buying/giving an XO laptop within the U.S. and Canada is closing December 31st, I think any attention I can help bring to this little wonder is worthwhile. And everyone else is busy interviewing Nicholas Negroponte, so I thought I'd try something a little different.

Now, that initial waiver out of the way, here's another: I don't actually have one of these little marvels (although if anyone wants to send me one, I'd be very happy to set my kids on it). This tutorial will be entirely theoretical, and will depend largely on how Windows-compatible the laptop actually is. Since most hardware was designed with Windows in mind, this shouldn't be much of an issue, right?

Step 1
The very first thing we're going to need for this project is an SD card large enough to hold XP and your applications. About 4GB should be enough for basic functionality. Here in Canada, that goes for about $80 or so, but when the price drops to the right point, this may be feasible for the OLPC requirements.

Step 2
How do you get XP onto a laptop that has no CD/DVD drive? External USB CD-ROM drive sounds about right: another $80 and we're off to the races (okay, I'm not trying very hard to find the best price, here; just trying to make a point).

Step 3
Run your favourite virtualization software on the laptop (qemu is free and works fairly easily; VMware player is another option) and use the SD card as your hard drive.

Step 4
Boot the CD in the virtual environment, with settings to match the actual hardware as closely as you can; pay particular attention to the ACPI, APIC and APM settings. A default install should get things going initially.

Step 5
A long time after, you'll have an OS on an SD card. With the processing power of these guys, it may take a while to get the right configuration just to finish the install. When you've got the OS shoehorned in there, it's time to play with the bootloader: GRUB. Assuming you can set the unit to boot from SD, the unit should appear as one of the bootable hard drives in the BIOS. If so, add in a new stanza to your GRUB configuration to include:
title Windows XP
rootnoverify (hd1,0)


chainloader +1

That should do it. Now, here are a few reasons why this will fail.

  1. Not all SD cards are created equally. Some cards will be recognized and boot without issue. Some won't. And then there are the ones that work sometimes and with specific configurations.
  2. XP booting from a "normal" PC using an SD card as the boot device is reportedly slow. So slow that boot times on this low-end PC would be intolerable, especially for a 6 year old.
  3. By running XP on these devices, things like remote control, mesh networking and the built-in sharing mechanisms would need to be entirely recreated and made to work with a product Microsoft is in the process of abandoning.
  4. XP would have to be made to work seamlessly with the existing Sugar interface to ensure interoperability with units running the default setup. While the open source nature of the operating system and applications provided on the XO laptop enable this, Microsoft would have to accept working with a true open source environment in order to make this happen.
  5. As noted above, the additional costs required to support this configuration from the user's perspective almost double the price of the laptop. And then you're probably going to want to bump up the RAM, too.
What's your take? Is it really worth the effort to put XP on the XO laptop?

[Note: This piece was written well before Microsoft achieved shoehorning XP onto any XO laptops. It was written mostly to attract attention to the XO, which is still a fabulous little device that shows great promise for lowering the costs of computing in underdeveloped nations. I strongly believe XP on an XO laptop is a bad idea. As some of the comments point out, there are further reasons this particular method will not work; basically, Windows XP is not as flexible as Linux. The XO does not use LILO or GRUB and requires a custom Linux kernel to boot. I've seen Ubuntu booted from an SD card on an XO laptop, and it was quite a nice experience. Ordinary users can't just "recompile" XP to fit.]

Wednesday, December 5, 2007

Computer Gifted

Planning on getting a new computer for the holidays? Here are a few things to consider.

My recommendation for any Windows-based computer setup is to immediately do the following:

  • if you are comfortable with the pre-installed antivirus solution your vendor has provided, enable it immediately, and make sure you keep an eye on the expiry date. Expired or not updated antivirus software won't protect you! Write the expiry date on the kitchen calendar, right away!
  • if you don't like paying a regular fee to keep your computer safe, download a free antivirus, like AVG Free Edition or Avast!, and keep it updated regularly.
  • install a spyware protection tool, like Spybot S&D; these aren't always perfect, but better to at least have the fix handy if something does crawl inside your computer's virtual innards! Spybot's TeaTimer can be a pest while installing all your new programs, but it can be disabled while you put everything you want on your new PC.
  • when connecting directly to the Internet (through phone modem or directly to a cable or DSL modem) always enable at least the default Windows firewall and pay attention to the warnings it gives. Another good option is to use the free version of Zone Alarm.
  • never open attachments in your email without verifying with the person that sent it that they meant to send it -- thousands of viruses, trojans and worms are lurking out there, trying to get into your computer.
  • if your computer doesn't come with a reinstallation DVD or CDs, find the utility that makes a backup of your installation and use it right away. You do not want to try find this after a hard drive glitch makes your computer unbootable. Once you have your install media, put it away in a safe place where you will be able to find it later. Much later.
  • unless you're ready to fork over a couple hundred more dollars, don't get used to the trialware installed by default on most computers; uninstall it right away! Saving your documents in some new format can be difficult to fix or retrieve when the software stops working at the end of the trial period.
With WalMart and Dell now offering Linux-based computers directly to the public, you're more likely than ever to get a PC with Linux as a gift. Or, if you have a Linux geek in your life, you may end up with both Windows and Linux (called "dual booting"). Take care of the Windows side of things as above, but keep these points in mind for your new OS:
  • although you are now safer using your computer than ever, you are not invulnerable to computer problems. Again, find that reinstall media and save it somewhere safe.
  • viruses and malware aren't a problem with Linux to date, but that doesn't mean you can be lazy about security; make sure your administrative account has a decent password and pay close attention to what you're installing on your computer.
  • if given the option to install updates automatically, try to opt for only security updates to keep the system as stable as possible.
  • be patient; it's not Windows, and if you've ever used Windows you will have different expectations. Some web sites won't load "right" or at all (due to Internet Explorer-specific extensions). Ask Microsoft to provide this browser for Linux, or try out IES4Linux if you really need to access Internet Explorer.
If by chance you happen to get a Mac this season, I'm afraid I'm no authority. I know a little about Apple's computer experience, but I'll refer you to someone who apparently knows much more about the experience than I. For good measure, here's an online magazine to whet your appetite, as well.

Happy Holidays!