An Interview With Rob Eisenberg of Durandal

Selected Quotes

Rob Eisenberg is a web developer and open-source advocate based in Tallahassee, FL. He’s also the mind behind the Aurelia JavaScript Framework and a former member of the AngularJS team at Google. In this portion of our interview, Rob opens up about some of his frustrations with open source software and how it’s being supported (or not) by certain tech firms.

Cuttlesoft: Last year was a big one for open source software, with Microsoft and Apple releasing Swift and .Net respectively. Where do you see the idea of open source moving in the future?
Rob: “I see it as slowly growing. Various organizations have been hesitant, but we’re actually at a point now where you almost can’t write software without using some open source. And I think that some of these organizations that have been resistant to are realizing that that’s the case and have started to open up, and they’re hopefully starting to understand some of these benefits. Adoption is on the rise and the developers want it, so it’s really an issue of management, CTOs, and bureaucracy and internal politics. It’s gotten to a point now that companies like Microsoft and Apple have made such huge moves that nobody can really ignore it and say “we’re not doing this” anymore. I really am very happy about what Microsoft and Apple have done because it helps to push the community and companies in that direction.”

“Now, if you look at Google there’s a completely different thing going on. Microsoft historically has been very tied to developers in terms of how they’ve done their business. But at Google, their revenue has almost nothing to do with developers whatsoever, they make money from ads. So the open source that they’re doing on the side takes a very different approach.They might be working on a visible open source project but from Google’s perspective it’s not connected to their business. For example, with Polymer, a web platform being worked on at Google, if you go to the team and ask ‘is this a Google product,’ they will say no. If you say ‘I’m a developer building my business on top of this technology would you consider me a customer?’ they will tell you no. Whereas if you go to Microsoft they will say yes, .Net is a Microsoft project and yes you are our customer. These two different business perspectives have a lot of implications for the companies and that’s why I say not all open source is created equal.”

You were part of the team at Angular, and you talk about “irreconcilable differences” between yourself and the team, could you talk a bit about that?

“We disagreed on various technical choices which I felt wouldn’t be tenable in the real world, wouldn’t be flexible enough. But coming back to the business side of things, what I began to see when I worked there was that the entire development process was completely disconnected from the community. There was a lot of speak that went out that was ‘Thank you, we love our community…’ and that was genuine, they really do, but when they went back to build version 2, there were no use cases or case studies coming from anyone, not even from inside Google. There were groups inside of Google using things that they could have done an official case study with, and that didn’t happen there and it didn’t happen publicly.”

“If you do a bit of research you’ll find that Angular is actually a subteam inside of something called GreenTea which is an internal app (specifically Google’s Adwords CRM). Really, that is the driver for Angular, and if Angular does anything at all, it’s going to be this one app. Because of how they’re set up there, Angular isn’t really this independent Google product that exists to do what people think it does. It does some of those things, but that whole business side is missing. It really exists because it’s funded internally by this other thing that has it’s own agenda.”

What did you take away from that experience at Angular?

“I came to realize people are spending millions of dollars in software development building on top of these JS platforms and the platforms that they’re building upon are not officially supported. If you had a million dollars you couldn’t go to Google and say “fix this bug for me.” You can’t pay for that kind of support. It would probably happen, but in a way that’s a bit shady, you would pay a core team developer on the side to do it and he would take that money, and that would be a breach of all kinds of things. It’s just not set up to allow for those kinds of things.”

“I started to think through these kinds of things and think ‘oh my goodness,’ this is actually pretty serious from a business perspective. One of the reasons I left is because I said ‘there’s a significant problem here that almost nobody is solving,’ and it can’t be solved while I’m working as part of the Google Angular team. In order for it to be solved, a company and a product has to be created and the business side of things has to be constructed correctly to be in a position to solve that problem. If you think about the kind of money that companies are spending and potentially losing, because of changes that may be made by company X that doesn’t have that kind of accountability, it’s huge. So I said ‘we can solve this problem, but I can’t do it at Google.”

For the full interview, visit our Blog.