&yet

All of 2013

One of the most talked about presentations at RealtimeConf 2013 was yeti Lance Stout and Philipp Hancke's demonstration of WebRTC signaling over XMPP, resulting in a federated video call within the browser.

This demo caught the attention of The VoIP Users Conference, or VUC a weekly, live discussion about all the telephony things, which began in 2007. Lance and Philipp will be joining the VUC community on December 27 at noon (Eastern Time) to discuss the potential of WebRTC as an interoperable tool to communicate within established protocols.

Philipp and Lance have been working together for some time on projects (strophe.jingle and Stanza.io, respectively) that push forward the ability of developers to utilize XMPP in tandem with the web, specifically WebRTC.

Join their conversation two weeks from today on Friday, December 27, at the VoIPUsersConference.org, or track it on their Google+ community.

At &yet, we give Thanksgiving bonuses. The tradition has become something outward-focused.

Software developers hold an exceptionally privileged place in society. We feel not guilty, but grateful for this—yet we fervently believe to whom much has been given, much is required.

Last year, the thrust of our Thanksgiving bonus was providing each of our team one day of paid time off per month to donate to making the world a better place, with us matching any gifts toward that organization.

This year, we have several Thanksgiving announcements:

  1. We are continuing our program from last year of paid time off for volunteering and financial matching of accompanying donations.
  2. We are launching a new site to make our space and resources available to our community.
  3. We are making significant, ongoing financial support for open source projects via Adamantium Sponsorship of scalenpm.org and allowing our developers to allocate GitTip.

Let's talk about the new stuff:

community.andyet.com

We are today launching the first rev of a project which we hope to use to help us better share the beautiful office space and resources we feel so privileged to have with our local community.

We built many of the elements of the office we love with the aim being to share them and make them available to our community, but we haven't had a formal way to do that. This site is our first simple attempt to make that more possible.

Significant, ongoing financial support for open source projects and developers

We know that there are many thankless jobs in open source which ultimately are the hidden costs that enable all of us who work with these technologies able to do the work we love and to ultimately pay our salaries.

Building things sustainably is something we value and want to encourage everywhere we can.

We want to see more support for open source projects by the businesses that depend on them, but rather than write blog posts and tweets about what people ought to do, we're going to help lead the only way we know how—by doing something.

Specifically...

1. Adamantium sponsorship of Scalenpm.org

We have decided to have &yet and ^Lift become "Adamantium" sponsors of scalenpm.org (and not just because Adam Brault and Adam Baldwin are the respective leads of those teams!)

At this point, npm is a service we rely on as much, or more, as GitHub. And it costs real money to run on real servers.

2. GitTip budgets for &yet developers

Each developer on our team is getting $50 per week to target towards open source projects they support. We're pooling our donations as a team so that other companies are also encouraged to step up.

Based on current numbers, doing this will make our team the largest weekly donor on GitTip. This is both awesome and sad. Seriously, we're not that big—it shouldn't even be financially possible for us to be the largest!

(Big hat tip to our friends at Lincoln Loop for already doing this, too. Though they don't pool their donations, so this awesome thing they're doing isn't visible to companies.)

We hope GitTip becomes an arms race of who can best support open source developers for their contributions. We love the mission and the philosophy behind it and we hope that GitTip experiences npm-level explosive growth in this next year.

3. Team sponsorship of Substack / Browserify

We rely on Substack's work in every app we build—most notably Browserify.

We have decided to target $1000 a month as a team specifically in sponsorship of his work.

Happy Thanksgiving!

We hope you and your loved ones have a Happy Thanksgiving from the &yet team.

Thank you so much to all our fellow teammates, clients, customers, sponsors, supporters, encouragers, friends and family.

Everything we love about what we get to do would be impossible without you.

Next week, yetis Adam Baldwin and Luke Karrys will be traveling to San Francisco to speak at the second Node Summit, December 3-4. Node Summit brings together developers, leaders, and other technologists to discuss Node.js and its role in the future of the web and computing.

Adam will be there representing both ^Lift Security, and The Node Security Project, an ambitious open-source project he founded with the goal of auditing every single module in npm. Adam will be discussing Node.js security with Bert Belder of StrongLoop, Charlie Robbins of Nodejitsu, and Daniel Shaw of The Node Firm.

Luke will be speaking during NodeTalks on client solutions with Glenn Scott, of the Creative Artists Agency (CAA), and they'll discuss the challenges they faced on a recent project involving two different development teams coming together for the creation and deployment of a production node app and API to Microsoft Azure.

The Node Security Project is also a sponsor of Node Summit, so if you're interested in attending, use the discount code SPEAKERFNF to get a 25% discount to the event, and while you're there swing by NSP's booth and grab a sticker. Tickets are available at NodeSummit.com.

I’m gonna wax philosophic for a moment.

I’m sure you’ve heard the joke that the code you wrote six months ago is always terrible code. It’s a feeling we all share I’m sure.

Here's the thing: It’s not totally true, and the reason it's not true is choice.

When you are writing software you are perpetually making choices. Now, choice is a funny thing because we as humans cannot know the future. We are bound in time. The consequences of our choices are closed to us, as well or ill-informed as we happen to be it doesn’t matter.

Every choice carries with it the potential for good or bad. That’s what a choice is. The part most of us forget though is that good and bad are stupid binary terms that have nothing to do with real life.

You write the code, you make the choice in the Moment of Now. That your code could potentially be a ‘good’ or ‘bad’ decision at the same time is a bit of a paradox, but you have to find the middle of it. Find the eye of that hurricane of decisions, because the alternative is perpetual endless planning and inaction.

Only those who are willing to take the risk of writing code that’s not perfect ever write code.

And your code is never perfect. That’s the nature of it.

So: never doubt or apologize for the code you wrote in the past. And all code you’ve written is in the past, even the code you just finished writing just now.

Accept that you made the choice and you can always make it again when you look at the code tomorrow with more information.

One of the hardest things is when someone else finds a better way to do something that you already did. You just can’t forget that they had the benefit of YOU making the choice. They’re just operating in the aftermath.

You’re never allowed to doubt yourself again is what I’m saying. Or you are, but you simultaneously have to have confidence in yourself.

As one of my favorite authors (Stephen R Donaldson) says, you have to do both and ride the "eye of the paradox".

I'll leave you with a quote from Donaldson about the necessity of freedom:

… are you a person—with volition and maybe some stubbornness and at least the capacity if not the actual determination to do something surprising—or are you a tool? A tool just serves its user. It’s only as good as the skill of its user, and it’s not good for anything else. So if you want to accomplish something special—something more than you can do for yourself—you can’t use a tool. You have to use a person and hope the surprises will work in your favor. You have to use something that’s free to not be what you had in mind.

--Thomas Covenant (in Stephen R Donaldson's The One Tree)

This year's RealtimeConf was the most complex and ambitious thing I've ever been part of. At final count, we had 400 people involved in the making of the event. (What's quite humorous is we had 200 attendees, and 100 of those included among the contributors.)

Taking into account our staff expenses, we "only" lost $230,000 putting on RealtimeConf. We had several members of our team focused mostly full-time on the event for over six months. If our team worked for free, we would have still lost around $50,000. (Incidentally, we are very grateful to our very generous "tip jar" contributors.)

The assumption most people have made (and most certainly will make based on the above) is that we've decided not to reprise the conference because we overextended ourselves and lost too much money.

Yes, it was a ton of work—but the large ensemble involved truly loved doing it and I believe the vast majority would gladly do it again. Now, it was a bit of an insane time for me because I'd also committed to speaking at JSConf EU and LxJS in the month prior to the conference. But the amazing work of Mel, Amy, Mike, Jenn, Kathryn, Ben, and the rest of our team made that possible.

And we knew we had made investments that weren't possibly sustainable by ticket sales or sponsorship and we pushed ahead regardless because we knew we could. (Let me be really clear: we are painfully lucky to be able to absorb this kind of loss and we know it. There have been times—even in our recent past—that wouldn't have been a possibility.)

So, no—it wasn't the massive amount of energy and money we poured into the event which informed the decision to not do another RealtimeConf.

To understand why we wouldn't reprise the event, let's talk about why we put on the conference.

In 2011 we had two original purposes in mind in creating the conference:

  1. WebSocket was just coming on the scene and we wanted to get together people who were building and experimenting with things on top of this new transport.

  2. More importantly, we wanted to help bring together our friends in the XMPP and web dev communities and positively influence the direction of each with that exposure.

As far as the first is concerned, we attended a lot of conferences in 2013 and all of the web development events had WebSocket-focused content. Realtime apps are still a newer area of web app development, but they're no longer a green field.

And regarding the second: in the first two years of the conference we felt those connections and discussions happening, but with little fruit. This past year, that's finally happened in dramatic fashion, thanks largely to WebRTC. The XMPP community is more focused on the web than perhaps at any point in the technology's history, and the tooling for web is dramatically better as a result.

Thus, as far as &yet is concerned, we have served our purpose, and we're ready to move on to different challenges.

In hindsight, this is a pattern we've followed for years: We've gained some experience and even recognition in an area, and rather than capitalizing on that for maximum financial gain or because it would be easier, we've used it to empower the next step we could take to best leverage our position for greater gain.

We feel compelled to use our position to be beneficial to the web and our local communities, but to do so patiently, without overextending our reach in the process.

There's no investor hammering on us to make crazy profits—having "enough" is good enough for us. Most months, &yet breaks even and we're happy with that.

And so, sometimes, we decide to move on to taking the next small step.

We are fond of vague ideas—things that have just gut feelings for a compass. It feels right now like the future path is clear for the RealtimeConf community and we'd like to move on to blurrier ground.

One notion that's bound up in this decision as well—and one strongly alluded to throughout the conference narrative—is that we believe there's something greater than software, engineering, design, the web, etc.

RealtimeConf is a pretty hardcore technology-focused conference. We have always had a thread of "let's look at the big picture" throughout the conference (especially the last two years) but nevertheless, it's a tech-minded event for tech-minded people.

As we've said in the past, we believe the web is not for web developers. It's for everyone.

We've identified three areas of focus that we want to strongly push towards in the wake and spirit of what we've been able to do with RealtimeConf.

1. Education

We want to bring experience and engagement to technology education. We are beginning to craft an education experience that will ultimately look like a mashup of RealtimeConf, Human JavaScript, and a few new elements.

2. Indie Web / Indie Data / "Indie Com"

We want to continue to create and improve tools, open source software, and experiences that empower the average person to be part of the indie web movement, to own their own data, and to enjoy unsiloed communication. We are really just getting started with this, as far as we're concerned.

3. A new event

At this point, as far as indie web, indie data, and indie com are concerned, RealtimeConf was quite effectively preaching to the choir. In the spirit of our belief that the web is not for web developers, we'd like to take that message and experience to a broader audience—but we believe in taking incremental steps rather than trying to eat the whole world in one bite.

We aren't revealing anything just yet, but expect a future event aimed at a broader audience—something greater than RealtimeConf. ;)

If you want to be kept in the loop on what we're doing with these, follow us on Twitter or join our &yet newsletter

We appreciate your help spreading the word. We'd love to hear your own thoughts via a good old-fashioned blog post!

And Bang uses a service called Intercom for support communication and notifications. We were recently notified that Intercom was affected by a security breach of one of their database providers, MongoHQ. For the sake of transparency, we want to pass the information along to our users.

Intercom found that 1 out of the 30 databases on MongoHQ had been accessed and states:

"The data we store on MongoHQ is limited. The user records are not labeled with the customer name, product name, or domain name of the app with which they are associated. We don't store Intercom account information, passwords, billing information, or any Intercom messages or conversations, on MongoHQ."

More detail on the breach is provided by Intercom on their website.

We feel confident that Intercom handled the breach well and is taking appropriate action. The analysis of the breach provided by Intercom gives us confidence that And Bang user support data is in good hands.

At &yet we take security very seriously and we want to take this opportunity to remind you that we will never ask you for, nor want you to send to us your password, confidential information, or links to things that may include confidential information.

If you ever have a security concern about And Bang please email us at security@andbang.com.

Today, yeti Henrik Joreteg, will be discussing WebRTC on the weekly podcast, The Web Ahead. The hour long show allows host Jen Simmons the opportunity to chat one on one with each week's guest on the burgeoning technologies and platforms that are pushing the web forward.

Henrik is author of the popular library, SimpleWebRTC and lead developer for Talky, a tool we built for simple video chat and screen sharing. He's also heading up the effort to push WebRTC forward at IsWebRTCReadyYet.com.

Henrik first spoke on WebRTC at JSConf Brazil and built AT&T's WebRTC focused att.js, which was showcased by AT&T at CES earlier this year. He spoke recently about WebRTC, first on a Realtime Data panel at EdgeConf this past September, and again at RealtimeConf 2013, in Portland a few weeks ago. Henrik will also be speaking at Cascadia.js later this month.

Go to 5by5's website to hear today's podcast with Henrik and Jen.

Edit: You can hear this podcast (Episode 59) by visiting The Web Ahead.

We made the RealtimeConf, in large part, to bring the Web and XMPP communities together. This year, we've seen huge strides in these two communities coming together. Most recently Lance Stout (an &yet team member), and Philipp Hancke were elected into the XMPP Standards Foundation (XSF) Council. This council is the five people in charge of approving extensions to XMPP. It is encouraging to see two people who have been contributing to XMPP tools for the web elected to this council.

Mike "Bear" Taylor (another &yet team member) was also re-elected to the board, which has been making the advantages of XMPP clear to developers over the years. But XMPP has always been a tough-sell for web developers.

JavaScript is ill-equipped to deal with streaming XML. Additionally, modern development tends to use language data structures (namely JSON) for APIs, databases, and protocols. As such, web developers have a difficult time dealing with XMPP, finding XML stanzas to be archaic.

Web developers are a pragmatic bunch, preferring simple interfaces rather than difficult-to-implement interfaces, regardless of additional benefits. Due to this, the XMPP community has changed their attitude and tactics. They used to try and convince web developers to use XMPP whereas now they are bringing XMPP to web developers with more web-friendly interfaces.

Lance Stout and Lloyd Watkin have independently brought us libraries for higher level JSON APIs and modern WebSockets for XMPP. These competing efforts are Stanza.io and XMPP-FTW. Along with Lance's efforts on the XMPP over WebSockets standard, this helps bridge the gap to XMPP.

In response to the XMPP communities attitude change, the web community has responded in kind. Nowhere was this more clear than at this year's RealtimeConf and WebRTC Camp in Portland, OR. Federation was the main theme of RealtimeConf, and WebRTC (video calling and data peering for the web) was the new hot technology. It quickly became clear that XMPP's Jingle was the perfect way to federate WebRTC.

Lance Stout and Philipp Hancke presented Jingle calls working between Lance's Stanza.io and Philipp's Strophe-Jingle. Combining a new simple JSON API to XMPP, XMPP's powerful Jingle extension, and WebRTC, it became immediately clear to those who attended that federated peering had arrived to the web.

The XSF and community have been busy on other efforts as well.

  • Peter-Saint Andre has written a manifesto for making the XMPP network a TLS secure-only network.
  • The new xmpp.net site now has tests for verifying encryption.
  • New users will soon have an easier way to discover and register on public servers.
  • xmpp.org will be rebranding to focus on helping new developers.

XMPP brings strong identity, rosters and presence, capabilities negotiation, data-peering, and countless other capabilities with it. With these efforts, the capabilities of web applications take a huge leap forward.

After years spent compiling, eight months of writing, editing and rewriting, figuring out the process for epublishing and learning how to use Gumroad (which we highly recommend!) – Human JavaScript is finally available.

As an experiment, we released it a week ago to see what the reaction would be and so far the feedback has been overwhelmingly positive. Here's what people have said about Human JavaScript in the past week:

"...required reading for every JavaScript Developer." @svenlito

"Human Javascript is one of these books I would have loved to have read two years ago. Great book!" @normanrz

"Never thought I'd enjoy reading a book about JS. And it's a great resource for the new guy." @KevSpence

"The best book you can buy right now to get a grip on frontend JavaScript" @janl

"This looks like what I've wanted to exist to give to people stuck in $-all-the-things land so many times. Insta-buy." @JeremyMorrell

"...winner for best intro vid." @voodootikigod

And now it can be yours for $29!

Your purchase includes

  • 100+ pages of clear explanations
  • Code examples
  • Project skeleton for JavaScript applications
  • A lifetime subscription to updates of the book

Not to mention a foreward by Jan Lehnardt, Open Source Software developer responsible for all sorts of cool things like hood.ie, mustache.js and Apache CouchDB. Read an excerpt from it at humanjavascript.com.

Human JavaScript is available in DRM-free Kindle, ePub, or PDF. 100 user site licenses are also available for your dev team for $249. We'll keep you posted on the other publishing options we've been looking into.

Henrik also added some info to the Human JavaScript site last week, if you're needing persuading. Check out the table of contents on the book at humanjavascript.com.

If you have questions, make sure to ping @HenrikJoreteg on Twitter! Feedback from you helps us make the book a more agile and accurate resource for every reader.

We look forward to your reviews!

Inspired by a tweet from @seriouspony, we are offering a special discount scholarship ticket with the aim of increasing the number of amazing women part of the RealtimeConf community. (We already have some truly incredible women part of this community, but we'd sure love to see more.)

This ticket is just $399 for women who will commit to submitting a talk at next year's RealtimeConf.This includes admission to RealtimeConf and WebRTC Camp. (Don't miss checking out the RealtimeConf content.)

This is a savings of over $600 off the ticket price and there will be a limited number of these tickets available.

Given the significant role women have played on making our team better and that 8 of the 10 best conference talks I've heard in 2013 were delivered by women, this is an investment in the future quality of overall culture and presentations at RealtimeConf.

Please help us spread the word!

$399 Realtime Week scholarship ticket

We make web software for human people.
(And have a nearly inappropriate amount of fun doing it.)

Blog feedFollow us on Twitter