Software Development

These devs delved into the world of Backbone.js and were blown away by what they found

How the world of open source changed the way Squareknot's tech team thinks about development.

Ian Stewart (left) and Jide Osan in Squareknot's Center City offices.

(Photo by Aidan Un)

Correction: Gmail is not built with Angular.js, as was stated in an earlier version of this story. (2/6/15, 11:33 p.m.)
In the coding world, Jide Osan was kind of a loner.

Osan, 24, the CTO of Center City “Github for things” startup Squareknot, never reached out to any other developers about Backbone.js, the set of tools he was using to build the front end of Squareknot, or the part of the product that every user would interact with. (Consumer tech giants like Etsy and Airbnb also use Backbone.) Instead, he read forums, blogs and Stack Overflow. It seemed like enough.
But that all changed when his first hire, a former Booz Allen Hamilton developer named Ian Stewart, discovered the world of open source developers tinkering away at Backbone behind the scenes.
Open source refers to technologies — be it apps, programming frameworks or other developer tools — that are free to use and that anyone can contribute to or improve upon.
“The very first time I reached out to the open source community, I was blown away by what I found,” said Stewart, 30.
What Stewart found got the Squareknot tech team hype on open source — and they want to get the Philadelphia tech scene in on it, too. We’ll get to why, but first, here’s the story of how Osan figured that out.
Catch Osan’s talk about Backbone and how open source can help a developer grow at our jobs fair, NET/WORK, on Feb. 10 at 3 p.m.


Osan was on the hunt.
It was early 2013 and Osan and Squareknot CEO Jason Rappaport had just moved to Philly from the Lehigh Valley, where they both went to college. They had recently pivoted from an edtech startup called GoodSemester and tossed out all their code. It was now on Osan to choose what tools to use to build the front end of their new project, Squareknot. He wanted something that could lend structure to his Javascript code and landed on Backbone and Marionette.js, a set of tools that could add even more structure and functionality to Backbone.
The Backbone/Marionette pair won him over. Osan liked the “do-it-yourself,” lightweight nature of Backbone, as opposed to the heavy-handedness of Google’s Angular.js, the front-end framework that powers the interfaces of Vevo and RJMetrics.
“It has its set of rules and you have to live by those rules,” Osan said about Angular.
Backbone, on the other hand, offers more freedom and in turn, more control over what you’re building, he said.

jide osan

Jide Osan, CTO of Squareknot, professed Backbone devotee. (Photo by Aidan Un)

The Squareknot tech team likens using Angular to building furniture with IKEA.
It’s prescriptive and harder to customize. Using Backbone, they said, is like buying the raw lumber and a saw, and Marionette is somewhere in between: it’s buying the finished wood cut to size. There’s no right or wrong, it’s all about preference and what you’re building.
(Though he admits it’s not for everyone, Osan’s passionate about Backbone and spreading the good word. He’s still hung up about that time a Philly developer dropped Backbone for Angular. “I was just like, devastated, because I couldn’t save him,” he said.)
The difference between Angular.js and Backbone.js? One's IKEA, the other's raw lumber.

Osan spent the better part of a year using Backbone and Marionette “in a vacuum,” as he put it, only consulting online articles, some of which were outdated. Then Stewart came into the picture.
Stewart, who had moved from Baltimore to join the company in the fall of 2013, was having a hard time with Backbone and Marionette, so he mined books, screencasts and eventually Marionette’s Github Issues page, where he found developers discussing bugs they found on the tool.
That’s how he met James Smith, a frequent contributor to Marionette who also happened to live in Philly. Smith was happy to meet and talk shop. They had lunch and Smith invited Stewart to join the Marionette developer chatroom on Gitter.
The chatroom, Stewart found, was a treasure trove of knowledge about Marionette. It wasn’t a static blog post that reflected only one person’s take on the tools, like Osan was used to, this was a living, breathing entity complete with real-time collaboration and soul searching about best practices. The open source project was growing and changing and here, you could watch it, be part of it.
It was just what Stewart needed to grasp Backbone and Marionette. Soon, he was answering questions, instead of just asking them.
ian stewart

Ian Stewart, Squareknot’s front-end engineer, Marionette.js Inspector contributor. (Photo by Aidan Un)

Stewart’s discovery was huge for the team.
Not only did it mean that their code would be more efficient and current (no more relying on outdated blog posts!) but it essentially grew Squareknot’s technical wingspan. The open source Marionette community, a group of developers from places like San Francisco, New York City and Australia, was a place where Squareknot could turn when they needed help.
“Especially for a small company, it can be tough to have all the knowledge in the room that you want, but apparently, it was just waiting for us in this chatroom,” Stewart said.
As for CTO Osan, he said goodbye to his lonesome developer days. Last spring, he and Stewart started going to New York City every month for a newly-created Marionette meetup in Manhattan. In December, they headed to Boston for BackboneConf, where they found a small but thriving Philly Backbone contingent: out of 18 speakers, two were from Philadelphia (Smith and Tim Griesser).



Now that Stewart had satisfied his thirst for understanding Backbone and Marionette, his next move was to give back to the community that taught him so much.

The case for open source projects on company time.

That opportunity came when Etsy developer (and one of the core Marionette contributorsJason Laster invited him to join an open source project called Marionette Inspector. Stewart is now one of the top contributors to Marionette Inspector.
Inspector, which helps with debugging apps that use Marionette, was a sort of open source unicorn. That’s because it started out as a set of tools that Laster built with and for the Etsy engineering team. It turned into an open source project when Laster convinced Etsy that Inspector could only reach its potential if other developers could contribute to it and use it.
squareknot office

Stewart and Osan at work in the Squareknot office. (Photo by Aidan Un)

That cooperative, let’s-work-together-toward-a-greater-goal spirit inspired Osan. Why not follow Etsy’s lead and let his own developers, like Stewart, work on open source projects — that Squareknot is using — on company time? Why not get other Philadelphia tech companies on board, too?
Osan is devising a plan to do just that.
Tech companies should let their developers work on open source projects on company time for just a few hours each week and it’ll pay off, he says. Developers will turn into experts, they’ll multiply their development capacity and, well, they might not be so alone anymore.

Companies: Squareknot, Etsy
Subscribe to our Newsletters
Technically Media
Connect with companies from the community
New call-to-action