I must say that I’m impressed with the new project leader for Asterisk, Matt Jordan. There are big changes happening under his leadership and I don’t think everyone has understood the huge tasks he’s taken on with his team. I’m not sure I’ve understood all of it either.
Here’s a list of things I’ve seen on the mailing lists:
- Dialog with the community is much improved. Brainstorms happen in the open and things are developed in the open. This is a big change. I just hope I had more time to engage, but that’s my problem. The community seems a bit surprised too. I expected much more participation. We need to relearn how to contribute and discuss, now that we’re allowed to do that again.
Digium had to re-learn how to interact with the community – but that goes two ways. The community needs to stand up to the challenge. Get involved.
- Old issues that we wanted to forget are attacked and fixed. Like Masquerade and bridging – it’s all about to change. When I worked with Terry Wilson on the SIP transfer code in 1.2 we learned to hate Masquerade. That’s years ago and the masquerade is still around, annoying all Asterisk developers. It’s a complex operation that, well, causes a lot of issues. Time to get rid of it and get a modern multichannel bridge active in every call.
- Manager is being changed dramatically. Manager is getting an overhaul into something more logical for the current design of Asterisk and languages and methods used to build AMI applications. Yes, this will affect everyone’s 3rd party applications. Applications needs to move on, sometimes we just can’t be backwards compatible. Most applications doesn’t support punch cards and output exceed 80 characters per line quite often… Asterisk is ten years old and it’s time for some new designs. Asterisk 11 is a LTS that will live for a long time, giving developers time to adopt to the new Asterisk.
- The SIP Channel is rewritten. This is a gigantic project and has been needed for almost ten years. I never thought we could get funding for a complete rewrite, so I opted for remaking the current code in my old Codename Pineapple project that never got fully funded at the time. I have tons of opinions about a new SIP channel, but have no resources to really participate, just add a comment here and there like a grumpy old grandpa…
I wish the developers follow my SIP2012 efforts (soon to be renamed SIP2014) and learn modern SIP and have the new SIP functions as part of the design. I do hope that they DO NOT base it on the current SIP channel that lacks transaction support, has poor ideas on SIP branching and forking and… You know. The new SIP implementation is required to work in larger SIP networks with proxies, unlike the old SIP channel. We need domain support, we need SIP URI support, we need security that works. That means that the developers need a better understanding of SIP than has been the tradition in the Asterisk development team. They’re always free to contact me with questions, which would be a positive change too.
- New APIs are developed. Manager and AGI and ExternIVR are things that have happened and evolved but was never part of a consolidated effort to create a good unified API to Asterisk. We’ve discussed this at many Astridevcons under different names – PineMango was one of them. For Asterisk to survive, we need a modern API.
- Realtime is changing. Josh Colp is working on a new object handling system, again something discussed many times that finally happens. We do need a replacement of the poor realtime architecture that has been extended beyond control. We need to be able to use an API to manage in-memory objects in real time. It seems to me that this is exactly what File is working on.
Doing all of this at the same time sounds to me like someone wanting to make a stand. If all of these project will be completed we will have a brand new Asterisk coming out. Kevin changed almost all the internals for the better . Matt and his team will change a lot on this list (and propably much more), things that change the functionality for the better, not just improve stability. Both are needed, but from a marketing standpoint all these changes are big things that can make a real splash at product release.
In the future I hope we can have time to spend on innovation, new things that will amaze all of us, that fits into this new Asterisk. Not just rewrites and stabilization.
The Matt Jordan challenge – what’s the community response?
Inspiration for this new stuff needs to come from the community. We expect too much work being done by Digium – even though they keep showing us that they still invest heavily in Asterisk, even in bad times. Can the community step up and assist in the redesign of our good old Asterisk? There are so many companies out there getting their living out of Asterisk. Fund a developer, contribute with resources, test, participate. The Matt Jordan challenge is on!
Thank you Digium
A big thank you to Digium and Matt and your team for all this work. It sounds like you are having fun. We did need more fun in Asterisk. We did need more open communication with the community, improved interaction – and I’m very happy to see the changes happen. The next step is a vision for Asterisk – that’ll be the OEJ challenge. Where is Asterisk going?