Open for all

Open source software is a bit of a buzzword (buzzphrase?) at the moment, and rightly so. Considering that the majority of the world’s websites run on open source software (servers running the suite of applications known collectively as LAMP - Linux, Apache, MySQL, PHP) and that the Firefox web browser continues to erode Microsoft’s Internet Explorer as the browser of choice for many people, it’s not surprising that more and more companies are happy to consider non-commercial software for mission-critical tasks.

Proponents of open source software will have their favourites, in my case that consists of Firefox for browsing; Thunderbird for email with the Lightning plugin for calendars; OpenOffice for documents, spreadsheets, etc.; Joomla for my website content management; and SugarCRM for management of Customer activities. I am also looking at phpList as a possible mechanism for running an email newsletter. The total cost of implementing the above, nothing but my time and the rewarding process of gaining knowledge.

Many more people go further than I have at the moment and use a Linux-based operating system such as Ubuntu. The one real issue with open source, though, is knowing what to choose, even for evaluation purposes. Whilst you can happily download and install any open source software to try it out, it can take a while to get a good appreciation of what is actually available in any particular area.

Well, that aspect of the choosing process has just improved with the creation of a pretty good list of open source software on mashable (link). You still have to compare the software and evaluate against your needs, but that is a process that should be followed regardless of the licence under which the software is provided. At least now, though, you know what you should be looking at.

A new way to sell laptops

Most people nowadays have a mobile phone (cellular if you’re the wrong side of the pond), and whilst many stump up the full whack for their handset and then stick a pay-as-you-go SIM in, a sizeable percentage (in the UK at least) have the cost of their handset heavily subsidised by opting for a 12 or 18 month contract. If you’re a reasonably heavy user, then contracts make sense, particularly since they give you the option to upgrade to another handset at the end of the contract.

Zonbu have borrowed from this business model to sell their Linux-based PC’s and Laptops. You can purchase their products as you can from any other PC manufacturer. However, they also give you the option of entering into what is, in effect, a hire-purchase agreement. Pay your money up front (for their laptop, $279), pay a monthly fee for a couple of years ($14.95) and you get an entry-level laptop with unlimited maintenance and support, online backup and a free replacement should anything untoward happen.

Will it work ? I can see it being attractive in the home or small business where IT knowledge is limited. Would I buy one? Nope, not when I can carry out my own support and maintenance, and organise online backup if I so desire (in fact I have an old PC running Bacula to protect my data). Most importantly, though, when I buy a PC or laptop I want to be able to control the spec.

Still, it’s something relatively new in the marketplace, and I applaud them for giving it a good shot and wish it every success.

Tomato….again !

No sooner does one appear, than another follows close behind. Tomato 1.11 has appeared. All usual disclaimers apply.

Home PBX thoughts

In researching my recent VoIP articles I have been playing around with a version of Asterisk designed specifically to run within a VMWare environment. I will expand on this is much more detail in part 3 of the Telephony article series, but I have been encountering what appears to be a common problem in this particular type of setup that seems difficult to resolve. Specifically, Asterisk in VMWare would appear to suffer from pretty bad audio playback problems to the point of making the audio almost unintelligible. Please note, though, that I am referring to pre-recorded audio such as the voicemail announcements, and not to any ‘live’ audio. Still very annoying and enough to cause someone to dump Asterisk.

However, there is a solution. Having tried all the usual angles that have been tried with varying degrees of success by many other people, such as amending grub.conf and setting the vmware process priority to high. I tried these and was not satisfied with the results, indeed found it difficult to discern a difference. I then remembered a problem I’d had with some older games on my shiny new (as it was then) dual-core AMD Athlon PC which had been resolved by setting the processor affinity. So I tried this hack with the relevant vmware-vmx.exe process (using Process Explorer from Sysinternals) and that seemed to do the trick.

However, I restart this PC on a regular basis as I don’t like to keep it running overnight, and the next time the PC was re-booted the audio problem returned. Of course, the processor affinity change doesn’t survive a reboot. However a little more exploring revealed that VMWare, in their wisdom, have included a means of excluding CPU’s from within the virtual machine’s configuration file - *.vmx  All you need to do is add the line

processorN.use = “FALSE”

where N is the number of the processor you wish to exclude that VM from using. I’m pretty sure you can have multiple line with different values for N, in case you have more than 2 virtual or physical CPUs. Having set this value, next time you fire up your PBX in a virtual machine it only uses the processor(s) you have not excluded. I would recommend only using a single processor, after all Asterisk is not a huge resource hog.

So if you are experiencing an audio judder issue with any of the Asterisk-based packages within a VMWare environment, and nothing else has worked, then give this a go. It might just do it. I’d love to hear if it has helped anyone.

Telephony pt.2 - VoIP

In telephony pt.1 I talked about the reasons why companies might consider installing their own PBX (Private Branch eXchange). Truth be told, this was typically a decision that was easily made when a company reached a particular size (where the cost of having one external line per internal phone was prohibitive). And usually a company would start with a pretty small, simple and, above all, cheap system that could support maybe 3 or 4 external lines and 8-10 internal extensions. For a budget of £1,000 to £2,000 you could be up and running, and if you chose wisely you could have some expansion capability too. For some companies this is still an easy and right decision to make.

However, the world of telephony is changing. The largest provider in the UK, BT, is committed to replacing it’s aging switched network with an IP-based setup. It has to, the competition is hotting up and BT is no longer allowed to restrict access to its exchanges in order to reinforce their near-monopoly. For the consumer of telephony services, this effectively means any phone point will have the potential to instantly become an internet-access point - no more waiting weeks or months for BT to DSL-enable your line.

The net effect of all this progress on your telephony options is that VoIP becomes the norm rather than an attractive alternative to PSTN. In fact, whilst PSTN will probably remain around for ages, it will effectively be a virtual system sitting on top of the IP network. In time all analogue equipment (phones, modems, PBX’s) will become obsolete. So it would seem sensible, at the very least, to keep an eye on VoIP and the potential cost savings it could offer you.

What are those potential cost savings? VoIP can usually undercut the rates you are receiving for national calls, although it’s very possible that, if you are very good at negotiating with BT or have an agreement with a third party that offers Least Cost Routing services, the saving is minimal. Where VoIP tends to shine, however, is in two particular areas. Firstly, if you have multiple offices and route calls between them over the PSTN, then utilising your internal IP network for those calls is a much more efficient and cost-effective option. Secondly, if you make a significant number of international calls then VoIP will almost certainly offer you considerable savings, because VoIP calls only break out from the internet at a point close to the destination, so you should only ever pay local call rates. Obviously you need to do the maths, but if either of these situations apply to you then it’s time well spent.

So what are your VoIP options? Effectively you have two:

  1. Many ISP’s offer hosted VoIP services (sometimes referred to as IP Centrex). For smaller businesses these can be a good route into VoIP as you done incur the cost of installing a new PBX (or adding VoIP capabilities to your existing PBX). The charging model tends to be pretty simple, you pay on a fixed charge per extension in addition to the cost of the calls you make. There are downsides, though. You will probably need to replace all your existing handsets; you will be placing your trust in the line(s) between you and your ISP (a single point of failure); even internal calls will be routed via your ISP, thus tying up bandwidth; and you pay for all extensions regardless of how much or little they are used. You can pay a bit extra for some hardware that removes the need to route internal calls via your ISP.
  2. The other option is to host your own PBX. This usually tends to have an higher initial cost, but you don’t have to carry on paying ‘rent’ for the use of your phones. It also affords the opportunity to mitigate the risk of downtime by utilising multiple ISP’s. After all, the general expectation of phones is that they work 100% of the time. If you using a DSL solution for internet access, as many small businesses do, there are usually no guarantees or SLA’s offered by ISP’s. If the line goes down then that’s hard luck! The downside of a hosted PBX solution is mainly the initial cost. There is the cost of the PBX itself, the cost of IP phones, the cost of improved internet access if needed, and the softer costs of training staff in the new functionality. There will be an ongoing need to administer and support the PBX, although being an IT system it may be more feasible for your internal IT staff to do this.  You may also wish to introduce or improve your CTI (Computer Telephony Integration) capabilities.

Personally, I think having your own PBX is a preferable option, although using a hosted system may be a good way of ‘dipping your toes’ in the water. After all, once you’ve purchased IP phones then they can be used whether the PBX is local or not. It is certainly worth taking case over evaluating IP phones, though, as there appears to be great variation in quality and interaction with different PBX’s.

For an internal PBX, you can spend a lot of money on a system from one of the market leaders. I know of one 100-person company that was quoted in the region of £140K for a system, and that kind of cost is difficult to justify in terms of Return On Investment. However, there are alternatives, one of which is an open-source PBX called Asterisk, which will be the subject of part 3 of this series of articles. Don’t go away!

The first casualty of the Microsoft-Novell deal

Many of the large, end-user oriented open source projects require many developers, mainly because to make something slick and user-friendly is not a small undertaking, and almost certainly beyond the means of one or two people within a reasonable time frame. Therefore, the larger companies with a stake in open source software (e.g. IBM, Novell, etc.) offer up development resources in the knowledge that the end-result will benefit them as well as the wider OS community.

A project that was announced back in Feb 2005, namely Hula, is one such application. Hula, to quote their website, “is a mail and calendar server with a friendly web-interface designed for a great user experience.” In other words, a threat to Exchange. Oh sure, it doesn’t have the breadth of capability that Exchange does, but then how many businesses find themselves ‘upgrading’ to Exchange only to use the most basic of its functions (that same could be said for Office too).

Hula tag line

As you can see from the Hula website, the major supporter of this project is Novell. Now hang on a second, didn’t Novell recently announce a new collaborative relationship with Microsoft ? Call me cynical, but is it possible that Microsoft saw a significant threat to their Exchange cash cow, and that the easiest way to kill it was to use the old Microsoft strategy of embracing it? And who loses out? Anyone that might have considered an alternative to Exchange, so a huge chunk of the business email market.

You know, I really hope someone else picks up the Hula project and runs with it. After all, it’s open source (albeit based on Novell’s NetMail product) so it should be possible.

Is the OSS model sustainable?

My recent post on the Effects of Open Source, which I reproduced on the Ecademy networking site (link) has evolved into an interesting discussion of the long-term viability of the OS model. It has been pointed out, quite rightly, that a significant amount of OS development is either carried out by developers in their spare time, or by teams that receive funding from universities, or philantropists. So, should the use of OSS continue to rise, will we reach a point where future development within the OS/GPL model will not be possible because the companies employing or funding the developers have gone out of business ?

To answer this, I think we need to look at the real reason why people are happy to spend money to purchase software. In my opinion, the reason is because people (not companies, because ultimately this decision boils down to individuals making decisions) believe that paying a company some money for their software obliges the supplier to deal with any issues that occur. You could argue that the customer is paying for development, but only indirectly. The customer couldn’t give two hoots as to home much time and effort went into getting the software where it is, their considerations are - will it do what I need it to do now; and will it carry on working for the foreseeable future (or for a specific time period if it has a pre-defined life-span).

The first of those considerations applies regardless of the licence that the software is distributed under. If it’s not fit for purpose then it won’t be used, free or not. If it is used, then the customer’s a fool who shouldn’t be let out in charge of a budget. So it’s the obligation to provide support that’s a key difference between the two licence models. And some OSS providers, particularly those of the more popular and business-oriented Linux distros,  are quite happy to charge you for that support, in terms of documentation, training, and an obligation to actively investigate and resolve any bugs that you identify, as long as those updates are fed back into the OS community (whilst they don’t have to be fed back as part of the GPL, it is common practice).

Ultimately, there are opportunities for the creators of OSS to make money without charging for licences. Currently, many of the commercial organisations in this space act in a way similar to charities, asking for donations and for public bodies (universities, etc.) to fund their work. I don’t believe this is sustainable should the OSS market grow significantly, and there does seem to be growing public acceptance of the quality and applicability of OSS applications. So the challenge will be to make money in other ways.

An interesting model right now is the OSDL, the current employer of Linus Torvalds and the overseer of ongoing Linux kernel development, who are funded by a consortium of large commercial organisations who already have a commitment to using Linux and see the benefit of having a say in the development of a constantly-improving, freely available operating system.

However, my suspicion is that, while OSS usage will continue to grow, there will always be room for commercially licenced software in the marketplace. OSS has a history of re-engineering software that already exists rather than being truly innovative, and I think this will continue. Commercial software developers may well find that their product lifespan comes down to 2 or 3 years because of OSS imitators, but this is no bad thing for the customer. Bloated organisations, mentioning no-one in particluar ;) , tend to become lazy and concentrate on where the next dollar is coming from rather than looking 5 or 10 years down the road at where the market is heading.

Of course, there is another way to make money, and that is by hosting your application centrally and charging for continued use. There is currently a lot of innovation in the Web 2.0 sphere, and I can see this growing. The ironic thing, though, is that much of the underlying technology is OSS :) So will the software companies developing the Web 2.0 (or Web 3.0) applications use commercial or open source software ? I know where my money would be long term.

Your thoughts are welcome.

The effects of Open Source

Open Source Software (OSS), i.e. software that is freely distributable without licence fee, has been around for a long time. The best known and most widespread child of that concept, Linux, is in use across the world, running mission-critical services in environments ranging from large data centres to one-man bands. OSS has given a genuine alternative to the Microsoft stronghold for small businesses (see my Life without Microsoft article), as well as continuing to underpin the majority or websites across the world in the guise of the Apache webserver.

I read, with interest, a recent email from VMWare that illustrated just how the very concept of Open Source software is starting to impact directly on licenced software products. The email was announcing the new VMWare Virtual Appliance Marketplace, an area where self-contained virtual machines with a specific purpose can be showcased and made available for others to try out. Some of the appliances utilise licenced software and are not free, but many merely pull together OSS products and add some configuration. The end result is a free virtual machine that you can download and run within the free VMWare Player to add a particular function to your network. For example, you might want to add a web proxy server with content filtering without having to download Squid and Dansguardian and configuring them from scratch. So instead, you can go to the Virtual Appliance Marketplace and download one of many submitted there, such as this one.

When I initially read the email, I was immediately struck by the similarity to another OSS marketplace I had come across in the Notes/Domino world, namely the OpenNTF site. This is a website whereby applications developed in the Notes/Domino environment can be made freely available to all (NTF is the file extension for Notes Template Files, application templates to you and me). And, like the VMWare marketplace, it contains some applications that one would normally expect to pay a large licence fee to use. Popular applications include a blogging tool (Blogsphere) and a Wiki application (DominoWiki), although there are many others.

You might wonder why Open Source is so popular, not just with consumers of the software but with developers too. Certainly, at first glance, it can be difficult to see why a developer would want to put so much blood, sweat and tears into an application without making any money out of it. But from the developers point of view it can have some very good benefits. Not only is it a way of honing your development skills, but it also raises your profile in a way that can be referred to in future job interviews (not dissimilar to a consultant giving presentations at seminars to demonstrate their expertise in a certain area). Finally, it removes the need to ’sell a product’, so the developer doesn’t have to worry about marketing and taking payments and providing support and so on. Although frequently the developer will find that happy customers are very willing to make a contribution towards their costs.

For consumers of OSS, there is the obvious benefit of not having to pay licence fees, and the opportunity afforded to properly evaluate a product without having to worry about artificial deadlines or crippled versions of software. However, it also removes one of the frustrations frequently experience by large organisations when they encounter a bug in some software. Instead of having to wait for the licence holder to replicate the bug, produce a fix, test the fix and release it to customers; they can just go ahead and fix the bug themselves. The only obligation is to release the fix back into the OSS community so that others may benefit from it.

What is the future of OSS ? Difficult to say. I think there will be a continued move away from licenced software and towards OSS until a balance is found. It is possible that licenced software will die away completely, but that may have serious implications on the development of new software as well as the provision of support to smaller organisations. I’m sure the pendulum will continue to sway back and forth for some time yet, but eventually a happy medium will be found.

Life without Microsoft

The Open Source movement has progressed from being a labour of love for a relatively small number of geeks into the mainstream. It’s got huge momentum at the moment, with the likes of RedHat, SuSE, Ubuntu, Apache, OpenOffice, Mozilla and many others making great inroads into the realm of the traditional software vendors, chief among which is Microsoft. But are we yet at a stage when it is even viable, let alone preferable, to run your business without any Microsoft software ?

I should point out at this stage that many companies already do run their business this way. The use of Apple Macs is widespread in the publishing arena, for instance, and there are design companies that wouldn’t consider using anything other than a high-end Unix workstation (Sun is prevalent here). But the vast majority of business, small or large, run Microsoft on the desktop, and predominantly through the data centre too. And Microsoft has made extremely good money out of this.

You might be asking why you would even want to consider making the switch? And that’s a very good point. If you’re happy paying Microsoft for the version of Windows on the servers, desktops and laptops in your company, for the office productivity software (including the bits you pay for but never use), and are happy to be a target for 99%+ of all known viruses on the internet then well and good. And I can’t turn around and tell you for sure that taking a different route will be cheaper, because only you can work out what you pay now versus what you would pay if you made the switch. But there is an alternative, and I believe it has reached the stage where it is worthy of consideration. Indeed, one of the world’s largest companies, IBM, is actively moving it’s workforce onto a Linux operating system and using the eclipse-based Workplace Managed Client to run common productivity software (email, word processing, spreadsheets, presentation, etc.).

But just because IBM is doing it doesn’t make it viable for the small business, surely ? Well, I believe it is possible for most people to carry out their day-to-day activities using only open-source software. Pretty much any windows software you use will have a Linux version, or at least a Linux equivalent these days. In some cases the Linux software may be even more featured, and will almost certainly be more stable. So what would a typical windows user have on his/her laptop, and what could they replace it with?

Operating system
There are a multitude of choices, ranging from well-established vendors offering a high level of support such as Red Hat and SuSE (Novell), through well respected offerings aimed more at the enthusiast such as Mandriva, Debian, Slackware, etc. and many, many niche products that are designed around specific needs, such as Linspire (Windows clone), Coyote Linux (very small firewall) or Yellow Dog Linux (for PowerPC CPUs). Ubuntu is very popular at the moment as a good, all-round version aimed initially at home users but creeping it’s way into small businesses too, and is probably a good starting point for those new to Linux.

Office productivity
This one is easy, OpenOffice offers all the functionality that is traditionally used in MS Office, and has a couple of nice extras included, not least of which is the ability to save directly to PDF format. It follows many of the MS Office ocnventions, making it pretty easy to start using.

Web browsing
If you haven’t heard of Firefox over the last couple of years, then you must have been on a different planet. By the hype is justified, it is a very nice web browser with literally thousands of extensions created by enthusiasts. Alternatively, Opera is an extremely good browser too, and probably quicker than Firefox or Internet Explorer. Both offer better protection from the many scams prevalent on the internet. Both have Windows version should you want to try them out before switching OS.

Email
Many people are moving to web-based email, just look at the popularity of Google’s Google Mail offering which is still in beta-testing. So it is worth considering that option. However, if you like having an email client then probably the best alternative is Thunderbird, again from Mozilla. As long as your mail server (whether internal or hosted) supports the POP3 or IMAP protocols, then you should have no problems with Thunderbird as your mail client. As I mentioned, IBM have taken a different route, using the Eclipse-based Lotus Notes plugin for email. So if you are a Lotus Notes/Domino user then Linux is now an option for you.

VoIP
This is very much a growth area, with many people using Skype software. If you do, then you may already know there is a native Skype client for Linux.

Other software
Many, indeed most, other applications have Linux version or equivalents. And if they don’t, then there are emulation packages, such as CrossOver Linux, that allow you to run many windows applications within a Linux OS. So even the investment you have already made in software licences is not lost.

Being realistic, it will not be a totally smooth move from Windows to Linux. No matter how good the Linux software is, and how close in functionality it is to the Windows equivalent, it will be different and you will need to take some time to learn how to use it effectively. This is particularly the case with the Linux Operating System itself, although you can console yourself with the knowledge that you are better protected from the many malicious attacks that arrive via the internet every day. I would certainly recommend a ’suck it and see’ attitude to begin with. Start off by setting up a virtual machine (making sure it support the Linux distribution you’ve chosen) so you have have a play without affecting your live work environment. Then set up Linux in a dual-boot configuration on you desktop/laptop, so that you are exposing it to the hardware you want to use. This way you’ll find out if there are any issues with Linux running on your PC. You will also be able to move everything gradually over to the Linux boot until you reach a point where you find yourself rarely venturing into Windows at all. At that point you can either make the decision to lose Windows altoghter, or to hang on to it as a ‘just in case’ option.

In conclusion, it is eminently feasible for most people to consider Linux as an alternative to Windows. For individuals there is the improved security, greater stability and reduced expenditure on licences to consider, although even now there is a bit of a learning curve for the OS. Having a source of advice and support available is to be recommended. For companies, the saving on licences can become very significant…it’s worth examining your Microsoft licencing agreement and asking if you actually use all the software you are paying for? For example, typically a site agreement will include an OS upgrade licence, but most PC’s are sold with an OEM Windows licence, so why pay twice for the same OS? Are you really likely to upgrade the OS on that PC before it reaches the end of its useful life? Given the hardware requirement of Vista, are you going to be able to run it on the PC’s you currently own?

Having done the calculations, you may decide that the heartache is too much, that’s fine. But if you don’t do the calculations, are you missing an opportunity?