Brent's story of UserLand

Last night Brent Simmons posted his story of UserLand.

It's interesting to hear the story from his point of view. There are lots of things I would add, or correct, but I don't have the time right now. Perhaps at some point we should do a podcast together to talk about this stuff. I think that would give you a better idea of what it was like there. It was the talking that mattered as much as the coding.

I got a lot of my best ideas in rambling conversations with Brent that would go like this. "Here's how it's always been done, so let's do it that way." Or, "Here's how it's always been done and isn't that fucked up." Or, "Here's how it's always been done, and I just thought of a much better way to do it!" That's the best part of being on a team with really good people. They lead you all over the map, having other minds there makes mine work so much better.

One of my favorite movies, Any Given Sunday, is all about that. It's not exactly a surprising story, so I'm going to take a chance at spoiling it. At the end, Al Pacino and Jamie Foxx have just won something. They're talking about the future, and Pacino, the coach, the older guy explains that the great thing about football isn't any of the things people think it is. It's the comradeship, the being part of a cause, working with other people you love, on things you believe in. It's about the people you work with more than anything. If you haven't seen the movie, and you work on a development team, I highly recommend it. It might give you a more full appreciation for the people you work with.

One thing I want to add to Brent's story is why I wanted to work with him.

I had learned in the past that you don't hire people based on their résumés. Instead, put out an invitation, and see who shows up. That's one reason open source projects are so useful. I think every serious programmer should be part of one, and every university should sponsor one. Because they attract a lot of people, and you get to try working with all of them. And if there's someone you work with very well, and no one really understands why this happens, then just work with them. Don't question the logic of it, go with the flow.

That's why I, as Brent says, "gave him a chance." It wasn't really like that. I already knew we worked well together. So we just kept working together. For a bunch of years. I would always be happy to work with Brent on something, it really doesn't matter what. And I still start open source projects hoping to find more people like Brent I can work with. It's helpful if you already know computer science concepts, but we can work with any skill set, as long as you have intelligence, drive, a sense of humor, and a reasonable desire to be perfect (as in we make shitty software, and know this version has bugs but it's shipping).

BTW, to put Fargo in perspective -- it's the continuation of all the web authoring and content management work we were doing at UserLand. Specifically, it's the realization of the idea of Clay Basket, one of the pieces Brent left out of his list, interestingly. Possibly because that's the project where I met Andre Radke, another one of the guys who joined our team. Clay Basket's idea was that you could use the same outline you use to write the documents and the code to organize the site. It was a good idea then, but now it really works. All these ideas take time. That's another big lesson. There's a continuous stream of trying ideas out, learning from the experience, and feeding that back into the next effort.

Frontier, the software we were working on, still very much exists, and is very useful, it's just called the OPML Editor now. Same software, different configuration. I'm using Fargo to write this post, but when I go back to programming in a few minutes I'll be using Frontier. On a Mac. It may not use the most recent internal technology of the Mac OS, but I don't know or care. It works just as well on today's Macs as it did on the ones that we used when Brent moved on. It must feel like a memory to Brent, but it's still very much in the here-and-now for me.

I'm using Frontier to write Node.js code. And "over there" on the Node machine, man do I miss the simple ability to watch the data of the app change in real time while the app is running. That's just one of the things that we achieved in our integration that will someday show up in "modern" development tools, if we stop ripping up the pavement every ten years and starting over. I love programming in JavaScript, but deep inside I don't trust it. In a few years there will be something "better" that isn't really better, and a new thing that does what JSON does because it will have gotten crowded with lots of packages with conflicts and too much to learn, as XML did. The ideas that we explored and developed in Frontier will be there for you all to use, when it's time.

PS: Here's a picture of Brent and myself with James Tauber and Tim Bray in 2000, in New Orleans, I think.


Last built: Wed, Jul 9, 2014 at 11:23 AM

By Dave Winer, Sunday, May 25, 2014 at 8:22 AM. Don't slam the door on the way out.