I am often asked what projects I would recommend for someone to do at home to get more IT experience and I am often at a loss to come up with anything very interesting that is both educational and could actually prove practical in a daily use kind of way. Having home IT projects that are actually used, day in and day out, really changes how projects are approached making them a little bit more like production systems with real users using them, performance mattering and ongoing management an important consideration. Over the years I have discovered a few home IT projects that really make sense in a “more than just a lab for learning purposes” kind of way. One of the best is running your own PBX to replace your home telephone.
Today, home telephones are becoming less and less common, partially because their traditional functionality has been widely displaced by mobile phones and partially because the legacy telephone system, even when delivered over VoIP, is rather archaic. But in business, telephony is taking off as modern VoIP PBXs add new functionality and lower costs. This is one place where treating your home like a business can really pay off. People who have moved to mobile phones only will likely have noticed a few problems with that model.
Why mobile phones don’t replace home phones?
- Mobile phones are attached to a person rather than a place. The concepts behind using each are different. Reaching a person is far more useful, but both have their uses and special functions.
- Mobile phones are highly dynamic. They turn on and off, they roam, they leave the country, they lose signal, they lose power, they get lost. Home phones are highly static in comparison.
- Mobile phones require one line per person, a home phone can provide many extensions from one line or number.
- Home phones systems can offer redundancy or failover.
- Home phones can be used remotely, over the Internet, from anywhere without needing to arrange international calling ahead of time, or at all.
- Home phones can offer features like conference rooms, ring groups, queues, etc.
Building a PBX at home can be very low cost while providing a lot of functionality that traditional phones and mobile phones fail to provide. I, myself, am very glad that I have a home phone still but was disappointed that I was paying so much for such limited functionality using a traditional carrier. Even after moving to a pure VoIP carrier I was still paying more for my phone at home than the office paid for multiple business lines. And an idea was born.
There is always more than one way to skin a cat and there are many PBX products that one could use for a home project of this nature. Far and away, though, the most popular will be a flavor of Asterisk, the free, open source, enterprise voice switching system. And within the Asterisk family, Elastix is the obvious choice for a project of this nature. Not only does this give a good opportunity for learning a very popular telephony system but a good use for production management of CentOS (Red Hat) Linux as well. Another option would be 3CX on Windows, for example, but this is more limited and requires more licensing but depending on your career path this may make equal or better sense for you.
Having a true, enterprise PBX in your home can serve many needs, all of which play wonderfully into expanding a professional portfolio and as running a home PBX remains rather an exclusive endeavor it is an ideal talking point for an interview. Having a PBX means that all of the control usually reserved for a business is now available at home such as having extensions for each family member (kids want their own lines, no problem), conference room(s) for family meetings (a la Skype but easier, especially for family members dialing in from traditional phones or mobile phones,) ring and hunt groups for handling complex calling situations (just the parents, or just the kids,) flexible voicemail options, detailed call reporting, household paging systems, extension to extension calling, remote extensions (whether for family members when they are out of the house or extended family who just want an extension on the system for unlimited, free calling around the family), video phones, overhead paging (front door announcement system, perhaps,) and multiple shared lines for easy efficiency. All of this for almost no cost.
A PBX is a great resource to be virtualized, especially if you are running Linux. A PBX uses effectively no resources when idle and very little when active, even with several users. This will easily be as small as the smallest web server that you are running at home. And almost no storage is needed, only just enough to hold the voicemails and logs. Ten years ago only paravirtualization could handle the needs of audio processing limiting you to Xen-based virtualization products only. Today vSphere and HyperV join XenServer in being able to handle this workload without breaking a sweat (others will work too.) So whatever virtualization you are using at home will work just fine (you may run into issues if you are using Type 2 virtualization like VirtualBox.)
The only actual expense for a home PBX, and truly even for a small business, is the cost of the trunk that brings in the connection to the public switched telephone service (the thing that provides the phone number.) A typical home telephone service might cost $20 – $50 / month, even without a single call being made and no services more than a simple phone line, even when using VoIP. There are some exceptions, but very few. For my own home PBX project I selected a commercial VoIP carrier that gives me four lines in a single SIP trunk for $11/mo – everything included like unlimited incoming minutes, the DID (the phone number) and the only thing that is extra is outgoing minutes, which are super cheap. My phone bill rarely tops $13! That’s pretty amazing considering I turned off a single line $35/mo service and now have all of those features of a PBX and a pretty amazing talking point.
If you are looking for an interesting project that will do wonders for your resume while actually adding some practical value to your home a PBX may be a great place to start.