Earlier this month PDXWIT (Portland Women in Tech) hosted a workshop by our very own lead software architect - James Aimonetti titled, "Demystifying Telecom". James has been a member of the 2600Hz team since 2010, and as the lead software architect of KAZOO, James has quite a bit of telecom development expertise to share.
"Demystifying Telecom" was a talk that focused on providing an entry point to those of us who are new to the telecom industry. Whether you work in software development, sales, marketing, or in ops - telecom is a very niche industry within the wider tech world and there remains a steep learning curve not found in many other areas of tech. Unless you've been able to gain some prior work experience particular to telecom - such as a call center agent - you've likely never given much thought to how telecom actually works. Day One on the job as a newly minted Telecom-R-US-dot-com employee in all probability would be the first time in your life when you would have had to consider what a SIP trunk is or what exactly makes SRTP secure? Quite a bit of this learning curve isn't merely getting acquainted with the beauty of Erlang, HTTP servers, or our KAZOO APIs - becoming fluent in telecom requires an understanding of the very specific jargon used within our industry day in and day out.
A Short History of Telecom
James began his talk with a short survey of the history of telecom, where attendees learned a little about the history behind telecom tech:
1. At&T was founded in 1886 (explains a LOT about how slowly they adapt to new tech!?)
2. Birth of the "phreakers" movement.
3. What IS 2600Hz? The story behind our namesake.
4. Beginnings of data exchanges on ARPANET in 1969.
5. TCP/IP is invented in 1983.
It was at this point in the talk where we learned that SIP was was THE pivotal moment for the telecom industry. By the time VoIP was introduced there already a small but well established community of developers who had been working toward a new telecommunications. In part because they had become increasingly frustrated with what the status quo had to offer, they saw SIP as the key that enabled these developers to unlock a new technology powerful enough to disrupt the snail paces of 'business as usual' that the big companies such AT&T still seemed to be operating within - and actually compete with their services! So, it was during the first decade of the 21st century that this small but mighty group of telecom developers - inspired by the earlier "phreakers" movement - really began to utilize these new technologies (VoIP, SIP) and create telecom platforms of their own (FreeSWITCH and Asterisk).
Once James finished up with the backstory to how exactly the current state of the telecom industry came to be - attendees were really beginning to get engaged with the topic and started asking James some really great questions - many of them had to do with telecom jargon - which was great as James had an entire section of his talk devoted to just that very topic! (Probably inspired by the fact that pretty much all day long I ask him "What does xxxx mean?!" - to which he replies: LMGTFY - but that's a story for my newbie column - coming soon!)
One of the more interactive portions of the workshop was when James unpacked some of the VoIP jargon and acronyms saying, "Geekery is full of silly jargon" and giving attendees an opportunity to ask questions they had about some of the acronyms they'd used professionally - for sometimes years - without having a complete understanding of what the definition of was. I know I'm guilty of this same offense (Which is exactly why I donate to Wikipedia annually)
I've added a mini telecom glossary that includes all of the jargon that James covered in his talk:
SIP - Session Initiation Protocol
SDP - Session Description Protocol
RTP - Real-time Transport Protocol
VoIP - Voice Over IP
DTMF - Dual-tone multi-frequency (touch tones!)
SRTP - Secure RTP - Uses TLS
PSTN - Public Switched Telephone Network
POTS - Plain Old Telephone Service
SIP Trunk - A "line" to the outside world
PBX - Private Branch Exchange - (think office phone systems)
Codec - Encode/Decode non-digital data
G729 - Audio data compression algorithm
DID - Direct Inward Dialing
B2BUA - Intermediary between two User Agents
"POTS" was definitely the most laughed about acronym by everyone present, "DTMF" and "PBX" received a lot of :palm-to-forehead:, and when James defined how exactly a SIP call works - lightbulbs really started popping up above the heads of pretty much every single person in the room.
SIP - SDP - RTP
James then spent quite a bit of time talking about SIP protocol and packets. In fact, he went line by line down an example SIP packet as well as an SDP payload. He spoke to SIP RFCs (Request For Comments memoranda) and how the language used causes quite a bit of confusion between developers -and the difference between SDP (session description protocol) and RTP - I for one was thankful for the clarification regarding differences in protocol codes and language use! James said that reading a SIP packet is "A lot like the code in the movie, the Matrix - pretty soon you stop seeing code and start seeing people and objects" which, after spending a month skimming the surface of a our products and telecom in general - I can attest to his sentiment. I hadn't understood what it was I was looking at! James then broke down the language of SIP packets for us - moving on to explain the difference between transactions and dialogues.
By the time James was able to touch on the incredible architecture and APIs of KAZOO it was getting close to the end of the evening so we went through the phases of exactly how a call works when taking place within KAZOO:
The overwhelming consensus of all attendees that evening was that they wanted to learn more about our industry and most asked either James, myself or our wonderful marketing guru - Miriam - if we have another talk scheduled in the near future. Speaking of near future...
James is so excited about the tech we have been developing at 2600Hz that with the release of 4.0 he's decided to make a transition from software architecture into community outreach and documentation. Lucky us! James' enthusiasm of, and expertise in all things KAZOO will bring ample learning opportunities to both well seasoned veterans of telecom tech as well as those of us just beginning our careers in this industry. Watch this space for more 2600Hz event announcements!