Hulk Smash Asterisk 1.6!

Nerd Vittles had been lamenting the fact that the "Asterisk 1.6 development seemed to be on a collision course with the dinosaurs because of developer insistence on deprecating and removing commands from the application programming interface (API) in the name of technology enhancement."

Nerd Vittles then explains why this is a bad idea.

The problem this poses is that applications and dialplans written for previous versions of Asterisk no longer function even though the code is barely a year old. In the corporate and government sectors, this would mean major, costly (annual) rewrites of code just to keep a functioning phone system. And, as we noted, these organizations buy phone systems to last a decade so such a development strategy would all but rule out use of Asterisk in the Fortune 500, medical, and government sectors.

True that!

Nerd goes on to sound the alarm regarding the future of Asterisk.

Today we want to share the Digium response and address some of the new issues that have been raised. For those of you that haven't met him, Jared Smith, who co-authored the terrific Asterisk: The Future of Telephony books, now serves as Digium's Community Relations Manager. Jared sent us a thought-provoking response which you can read in its entirety here. For ease of understanding, we're going to quote a number of sections of Jared's response and address them below so that you get the full picture of how dangerous the Digium development approach is to the future of the Asterisk project.

Go read Nerd Vittles entire post.

The main premise of Nerd Vittles post is that it would seem that Asterisk, the "Incredible Hulk of Open Source Telephony" is "breaking" the cardinal rule when it comes to programming - namely don't break your existing applications and be backwards compatible.

But apparently, the programmers at Digium have been breaking existing applications. I contacted Digium creators of the "Incredible Hulk of Open Source Telephony" for comment... Their spokesperson The Hulk was nice enough to comment.

Me: Hulk, I'd just like to say that I love open source Asterisk, which was created in the good ole' USA!

Hulk American Flag!

Hulk: Hulk like USA except when USA Army tanks and helicopters shoot Hulk. Hulk like open spaces so Hulk jump high. Hulk like open source too.

Me: What are your thoughts on Nerd Vittles claiming Digium is breaking existing Asterisk applications in the new Asterisk 1.6?

Hulk: Me hate puny Nerds. Nerds weak.

Me: Yes, but what about his claim you are breaking Asterisk applications?

Hulk: Me Hulk. Me like break things.

Me: Yes, but if you break Asterisk, you will no longer be the "Incredible Hulk of Open Source Telephony"

Hulk: You threaten Hulk. You make Hulk very angry.

Me: Whoah. Calm down there big guy. I'm just sayin'

Hulk: You no say! You not make Hulk angry.

Me: Digium's Jared Smith said the following, "APIs change when major versions of the software are released. (APIs are Application Programming Interfaces -- think of them as building blocks inside of the Asterisk code that both Asterisk and third-party programs can use to do various things.) The problem is, when we make Asterisk better, we often have to change those APIs to do so. What are your thoughts?

Hulk: I like building blocks. Hulk like smash blocks of buildings!

Me: So you like breaking the building blocks of programming? That's not a good idea. Do you know that proprietary PBXs often "locked you in" forcing you to use their solutions?

Hulk: Hulk no like being locked in. Thunderbolt Ross try capture Hulk. Make Hulk very angry.

Me: Nerd gave an example of how the new version of Asterisk (1.6) breaks existing dialplans and why that's a bad thing. He writes: We defy anyone to explain why "making Asterisk better" required breaking every dialplan on the planet because some developer thought Set(TIMEOUT(digit)=timeout) was a code improvement over DigitTimeout(timeout).

Hulk: You confuse Hulk. Me no understand.

Me: Exactly. Nor do the programmers that wrote code & APIs one way and now have to rewrite their code.

Hulk: That not good?

Me: No it isn't. Nerd Vittles succinctly explains:
Asterisk developers can't and won't be responsible for making sure they don't break existing applications and dialplan code, and Digium won't do anything to migrate existing code to new platforms. I'm not sure I understand how development of a piece of migration application code requires a knowledge of every third-party application in the universe. Presumably, the Asterisk development team does know when it changes the syntax of some command in the existing API. Why then would it be so difficult to provide another application that translated the "old code" into the "new syntax?" That doesn't require that any third-party apps be reviewed. And it doesn't stymie future development. Just provide the tool to fix stuff that you broke!

  Any comments to this Hulk?

Hulk: Digium broke stuff? Only Hulk break stuff. Hulk mad!

Me: You should be. Only the Hulk should be breaking things. In fact, I know you only want to "break" the competition. You want to smash Cisco, Avaya, Nortel, don't you, Hulk?

Hulk: Yes! Hulk crush Cisco, Avaya, Nortel! HULK SMASH!


Hulk Smash!

Nerd Vittles has some valid points about Asterisk 1.6.0 breaking existing APIs and I myself as a programmer am at a bit of a loss as to why Digium would do that. But to be fair to Digium, you should read Jared Smith's entire response posted on Nerd Vittles' article, which presents Digium's point of view on why they did what they did. What are your thoughts on Digium changing APIs - often a simple syntax change - that breaks existing applications?
| 4 Comments | 0 TrackBacks

Listed below are links to sites that reference Hulk Smash Asterisk 1.6!:

Hulk Smash Asterisk 1.6! TrackBack URL : http://blog.tmcnet.com/mt/mt-tb.cgi/35818

4 Comments

Great article!

I'm a huge Asterisk fan myself. Asterisk certainly is the 'Hulk' when it comes to phone systems. You can do so much more with it than a Cisco or Nortel IP-PBX.

I find it odd that Digium would change the dialplan syntax or the APIs. Add additional features sure, but change the syntax of what already works? Huh?

I think Digium could provide a tool to update the old API or dialplan to the new one automatically. Then everyone would be happy. Of course if the Hulk is happy and not angry, then he turns back into Dr. Bruce Banner.wink

Nevertheless, I can't knock Digium too much on this one. They did create the Asterisk Hulk after all.

Hulk green =! Trixbox blue

Green is the only true color!

Nice Analogy! Congratulations Tom!

Since I saw a couple of good changes/features in Asterisk new version 1.6 here:
http://www.syednetworks.com/asterisk-1-6-features

And I upgraded to new version but I faced two different issues:

1. Since i'm using Digium telephony card TDM410 FXO, so after installation I tried to check zap status with "zap" commands on CLI but unfortunately i couldn't get chan_zap.so module? what package provides me this?

2. My second problem is my zaptel hardwares are dropping some warnings for echo cancellation. I guess new version doesn't support echo cancellation or what?
please someone guide me with this. Thanks

Leave a comment

Recent Activity

Today

  • Tom Keating queued Star Trek
  • Tom Keating queued Stardust
  • Tom Keating queued The Fountain

Thursday

Wednesday

  • Tom Keating tweeted, "Worst Google News Headline Ever! - No public viewing at Neverland, but Michael Jackson may get laid: I was happi.. http://tinyurl.com/nrlsjo"

More...

Recent Comments

  • cmytroops: I was browsing the net and cam across a great read more
  • mike: Sorry if this is off topic but I’m thinking of read more
  • @NumberGarage: Our military service men and women should be driving new read more
  • https://www.google.com/accounts/o8/id?id=AItOawlacBYIyCFI8mz5HS_pdsnSDV1wLz6Vgc8: We have implemented over 50 VoIP systems in the last read more
  • Theo Barton: Its a good phone. I have had a lot of read more
  • https://me.yahoo.com/a/ea7WMvNu2Mlud7dBwQPAAus9JCfo9qE-#27391: I don't want to go through all the problems, I read more
  • Claudio G.: I contacted these folks via e-mail recently (June 2009)and they read more
  • Kinjudah De- Morgan: I am using a strong satelite receiver and a Gateway read more
  • dell gx620: I have just had my second Dell. Thinking by spending read more
  • dell gx620: I purchased a very expensive Sony Vaio in 2006. Sometimes read more

Subscribe to Blog

    View my Microsoft MVP Profile:

Blogroll

Entry Archives

Around TMCnet Blogs

  • Communications and Technology Blog - Tehrani.com:
    Problems at Joost
  • On Rad's Radar?:
    Bells Giving Up on Landlines?
  • VoIP & Gadgets Blog:
    Worst Google News Headline Ever! - No public viewing
  • Communications and Technology Blog - Tehrani.com:
    Heading to Rhode Island
  • First Coffee:
    SugarCRM Studied, Broadband 'Crucial,' EGain, OOCOSPI, NetSuite's Zander
  • On Rad's Radar?:
    Why Can't DC See What We See
  • The Readerboard:
    Tougher Actions To Save Telemarketing
  • VoIP & Gadgets Blog:
    eBuddy for iPhone Supports Push Notifications
  • Latest Whitepapers

    TMCnet Videos