Skip to content

Instantly share code, notes, and snippets.

@NickHeiner
Created November 3, 2013 22:25
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save NickHeiner/7295597 to your computer and use it in GitHub Desktop.
Save NickHeiner/7295597 to your computer and use it in GitHub Desktop.
Thoughts on Realtimeconf 2013

Thoughts on Realtimeconf 2013

Adam Brault, the “producer and creator” behind Realtimeconf, announced shortly after it was over that this one was the last. I have a hard time believing that. Maybe the next &yet conference will have a different theme or different branding, but I’m incredulous that anyone who has that much energy and passion for bringing the tech community together can resist the urge for long.*

Throughout the weekend, it was obvious that Adam and the entire (massive) team behind Realtimeconf was incredibly excited about making a unique, compelling experience. They didn’t have to put everyone in the same hotel, but doing so made it easier to have the impromptu encounters that are critical for forming relationships. They could have left us to disperse for dinner Friday night, which would have resulted in people who already knew each other cliquing up and going out alone. Instead, the team provided dinner options which brought people together and provided an informal venue for more bonding.

There were more little touches that made getting to know each other easier. On the first morning, everyone arrived at the venue to find a passport book (with one’s twitter avatar for the picture) and a stamp with one’s twitter handle. Instead of a diaspora to find lunch, free food trucks arrived at the venue, so the path of least resistance was to stay and chat with fellow conference-goers. The lack of a printed schedule made it impossible for people to duck out for talks or events they found boring without fear of missing out on something else.** The Dream Tent at the hotel provided an obvious location for the post-conference drinks.

A conference is more than just the talks. Anyone can save themselves (or their company) hundreds (or thousands) of dollars in travel expenses and tickets by staying home and watching the videos. Being able to come together and meet people in the community is a huge value-add. The Realtime team understands that not only is this important, but because software engineers in general are not the most social bunch, we sometimes need a little bit of extra help to lower the activation energy required for new friendships.

Someone quipped that Realtimeconf is “a conference within a concert within a play within a story within a graphic novel”. There was an entire layer of philosophical cyber-punk fantasy that supplemented and enhanced the technical content. At first brush, it seems clear that the drama is intended to set the tone for the conference and create an emotional underpinning to &yet’s vision of a free and open web, as well as serve as an allegory for the struggles of women in tech and the failed communist experiment in Eastern Europe. However, as the weekend went on, it became clear that the drama served a social purpose as well. The walk from the hotel to the venue, accompanied by a marching band, loosened everyone up and got people talking to each other. The intrigue with all the little surprises, like the flags, kept everyone on their toes and gave them something to speculate about with the other attendees. Ros’ performance of her song “Legacy” provided a unique, shared experience for conference-goers to bond over.

Overall, I was pleasantly surprised at how many people bought in to the storyline. It definitely requires participation and playfulness from the audience. I didn’t encounter anyone who was a total hater, and some people were effusive in their enthusiasm. It helped that the Realtime team went all-out; this isn’t something one can do half-way.

As for the talks themselves: my favorite was by Aral Balkan. He gave a talk about Indie Data, about which he has written much on his blog in various posts. In our industry, there are many talks by brilliant tech people who you can tell would rather be behind a computer, but Aral had a captivating stage presence. He excoriated tech giants (focusing on Google) for creating closed silos of information, monetizing users’ data and robbing them of privacy, both through the companys’ own efforts and through vulnerability to government intrusion.

As he advanced this reasonable familiar thesis, I was afraid that he was going to fall into the traditional second half of the argument: “everyone needs to run their own federated social networking presence on a server in their closet, and then convince all their friends to do it as well. It’s difficult, but it’s the cost of freedom” and the close cousin “Linux can take over desktop computing via feature parity with commercial OSs like Windows and OS X”.

Instead, Aral refuted both of these as misguided, and identified a clear path forwards. He identified that the reason that Apple and Google are able to make compelling products is because they control the devices, services, and (soon) the connectivity. They are “experience-oriented”, whereas the open source world is stuck being “feature oriented”. The tech community will never convince the non-technical mainstream to run their own services or put up with the hassle of working with a rough-around-the-edges OS that has more of a setup than “open the box your computer came in and turn it on”. Instead, there needs to be an open product that controls the devices, services, and connectivity, but in a way that allows the user to retain control of their data and privacy.

Obviously, for this product to exist, people need to be willing to pay for it (since it wouldn’t be ad-supported). It sounds tough to compete with free, but I think that a significant niche can be carved out. People pay extra for non-sweatshop clothing, fair trade coffee, and environmentally friendly cars. It’s not impossible that some day privacy will make that list as well.

That’s what I took away from the talk, but you should watch the whole thing. It’s awesome.

Max Ogden also had a great talk. It’s easy to see that the way that npm encourages modularity is part of what makes node such a powerful tool. (I don’t love javascript, but node is my favorite development environment right now because of npm and the community packages.) However, Max pointed out something that I’d missed: there’s a huge difference between jQuery and Browserify. jQuery is a monolithic project with a core contrib team. If you want to change anything about how jQuery works, it has to go through that bottleneck. Conversely, Browserify is a collection of node modules, each with their own maintainers. If you want to submit a PR to fix a bug, you just need to find the right module to send it to, and you can have a conversation with the maintainer in the context of that module instead of the entire system. Also, if you like Browserify but want to make a tool that takes a slightly different direction, or you just need a subset of the functionality, it’s easy to pull in many of the same node modules and get easy code reuse instead of having fork the project.

Max said that Browserify actually wasn’t always this modular - originally, it was as monolithic as jQuery, and there were more PRs and issues than its creator, substack, could handle. Substack made the brilliant move to modularize Browserify and close all the issues, saying, “If you still care about this, [X] is the appropriate project to re-open it with.” This got him to issue-0, and he was able to find maintainers to take on dependency modules and to relieve him of the burden of managing the entire project.

Another huge feature of npm that I hadn’t realized before is that it provides isolation allowing two modules to co-exist even if they have conflicting dependencies. If you have 20 modules you transitively depend on, and they don’t all use the same version of lodash, that’s totally fine. npm will arrange the modules so every package gets what it needs. Conversely, a ruby developer at the conference shared a horror story of projects where updating one dependency will break others, so he had to choose between maintaining an aging set of dependencies and paying a huge price to update his entire dependency tree at once.***

Those are my initial reactions to Realtimeconf - I may include more in a follow-up post, but I just wanted to get this out for now. (In particular, any description of the weekend’s events that doesn’t talk about Eran Hammer’s presentation is sorely lacking.) The other talks were also intriguing and eye-opening, and I highly recommend checking them out on the Videos page. I don’t know if Realtimeconf really is gone forever, but I’ll definitely be watching &yet to see what they do next!

*In particular, the fact that @wraithgar was filming people to get their reactions presumably for use in a future promo suggests that this isn’t the last conference that &yet will put on.

**Although I think the primary purpose of not having the printed schedule was so the drama could be seamlessly inserted throughout the day

***I’m not a rubyist, so apologies if I’m misrepresenting how it works here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment