Sass, HAML, and Inventiveness, with Hampton Catlin

We teamed up with SiteGround
To bring you up to 65% off web hosting, plus free access to the entire SitePoint Premium library (worth $99). Get SiteGround + SitePoint Premium Now

Hampton Catlin on the Versioning Show

In this episode of the Versioning Show, David and Tim are joined by Hampton Catlin, creator of Sass, Haml and other tools and services such as Wikipedia Mobile, Tritium and Moovweb. They discuss being inventive, being first, being vulnerable, and being yourself, as well as electric razors, mohawks, saying sorry to cows, and keeping it weird.

Show Notes

Conversation Highlights

I have this habit of I’ll get kind of obsessed with a subject, or I’ll get a mission going in my head, and then I’ll kind of dive into a whole area.


I walk in being the one knowing the least, which is awesome, because that means I get to learn a lot and know a bunch of random crap that I didn’t know before.


open source software lives beyond you. It even lives beyond the company. I love that it’s out of your control once it’s out there. Especially with MIT licenses: I feel like I can do whatever with it. Just take it, go, it’s yours. That just really makes me feel like what I’m doing matters, even if nobody ends up using it. But the cool part about open source is somebody will always end up using it.


The person who invented the electric razor, their name is in a book. They didn’t totally disappear by doing something that they gave back to technology and to society. It’s just this thing that wasn’t there before and now it’s there. They will live on with this thing. It’s like a form of immortality …


I can’t stop being in the shower in the morning and just thinking about what I’m going to build, what should I build, what’s needed, what are people thinking? How can I make it better? It’s like a compulsion to make things.


Each of these, it’s because they’re weird. It’s not because I worked hard. It’s because I was first.


I know how imperfect I am, and I just want people to know that they’re OK. That’s really important to me.


If you have an idea and you’re surprised it doesn’t exist, build it if you have the time. I mean, some people don’t have the time or whatever, families, life, disease …

Hampton Catlin on the Versioning Show

Transcript

Tim:

Hey, what’s up, everybody. This is Tim Evko …

David:

… and this is M. David Green …

Tim:

… and you’re listening to episode number 18 of the Versioning Podcast.

David:

This is a place where we get together to discuss the industry of the web, from development to design, with some of the people making it happen today and planning where it’s headed in the next version.

Tim:

Today we have with us Hampton Catlin, who has done a number of incredible and exciting things for our industry. That includes being the inventor of Sass, and an HTML processing language called Haml. So we’re going to talk about some of the contributions that he’s made to this industry, as well as some other exciting things. So let’s go ahead and get this version started.


David:

Hey, Hampton, good to see you again. How are you doing today?

Hampton:

I’m doing all right. By the way, I’ll point out, you forgot to mention Wikipedia Mobile. Come on, my resume’s way longer than that.

Tim:

I didn’t know about that one.

David:

I think there were a few things that he might not have mentioned, like Wordset for example.

Tim:

It would be like a 20-minute intro to list all the things that you’ve done, so I just scooped off the top two.

[Chuckles]

Hampton:

Yeah, I do a lot of different things all the time. I definitely have trouble staying doing one thing. I joke that I’m a nerd about everything. I’m one of those people who dives into a subject, but I tend to dive in and then only get the top points, and then have some opinion about it, rather than people who actually know stuff. You should probably be interviewing them, because I tend to go in and …

Tim:

Maybe you can introduce us to them afterwards.

Hampton:

Yeah, there’s so many people. But you know, I have this habit of I’ll get kind of obsessed with a subject, or I’ll get a mission going in my head, and then I’ll kind of dive into a whole area.

David:

In that case, this should be an interesting question for you, because we usually start our show with a philosophical question for our guests, and our philosophical question for you is: in your career, what version are you, and why?

Hampton:

What version am I right now?

David:

Yep, this is the Versioning Show, and we’re curious what version you are and how you came to that.

Hampton:

Yeah, that’s funny. Right now I am kind of on the restarting phase. The company I’m working for is very small, and we are still stealth, so I can’t give any specifics. Whomp, whomp. It’s in finance stuff, and I’m writing Java code all day. We’re so small that there’s no structure. We’re all just coding, because there’s a lot to do.

I’m kind of starting off. It’s basically like I just started in a new industry, so I have to start again. I walk in being the one knowing the least, which is awesome, because that means I get to learn a lot and know a bunch of random crap that I didn’t know before.

David:

I love that. You’re resetting yourself from version zero again.

Hampton:

Let’s go with two or three. I mean, my gosh, I’ve had a long and strange life from a small religious upbringing in the Deep South to living all around the world. I feel like I’m version infinity. When me and my husband first got married, one of the things we promised each other was that we would never stop changing together. That was the goal, never to stop pushing ourselves or doing something scary or interesting. It would’ve been pretty easy for me after Sass or anything like that to get a job being the lead Sass evangelist for Google, or something, and then get paid a lot. It’d probably be a nice life, but that’s just not what I’m into.

David:

Sass is popular enough that I’m even sure that it needs an evangelist.

Hampton:

I’m sure they’d give some title like Chief Innovation Engineer or something. I’m sure I could get some sort of like … I don’t know.

David:

Probably. Well, I think one of the things a lot of people are going to be wondering about, though, is going back to when Sass came up. I’m curious, how did that come to you? How did you create something like that?

Hampton [3:54]:

I got my first job in technology when I was about 23 — or something like that — after having had a long spat of doing odd jobs. In the early 2000s, if you didn’t have a degree in computer science, it was a little hard to get a job in computers — or if you had nothing in your resume. So dropping out of college did not end up getting me a high paying job quickly, so I kind of did a bunch of odd jobs.

Then I got a job working for kind of a small consulting firm, and they gave me a chance. Pretty quickly there I was doing all right, and it seemed like it was the right career for me. I was working with these guys, especially this guy Anthony Watts, who’s a designer in Toronto. I would watch him write his CSS, and I was writing mostly Ruby back then, and he would write it like … I don’t know how long people have been doing this, but before Sass, the way a lot of the best CSS engineers — each file, you would flatten the CSS line, so every rule was on one line.

You’d type .main-page .button .red. It would all be one line, and then you’d put all the rules to the right. You’d just have columns of the same word going straight down the page. It would be like —

.main-page …
.main-page …
.main-page …

— and it was nuts. I would see them. We would say, Oh, we reorganized a page, and he would get a very sad look in his face, and he would have to go and manually go into each file and change each selector by hand that was repeated forever and ever. So find and replace all over.

Yeah, so I was working with this guy, and he was so … He was the one of the first people I ever met who was really into his CSS. This was his thing. I had already come up with Haml while at that job, and introduced that. Then Sass was kind of — I saw him doing this, so I thought, Hey, I already made one language. Why not do another, and we’ll make it so you could nest. That was the original idea. Then as soon as he said, Oh, we’re going to pre-process it … which, by the way, there was no … I mean, it’s the first web pre-processor.

I remember when I first designed it, I spent most of my time not explaining how Sass worked itself, but explaining what a pre-processor, was because they were like, O, it’s dynamic. I’m like, No, no, no, it’s not really dynamic. You compile it. They’re like, What do you mean? Can I change colors on the fly with a query parameter? You’re like, It’s not dynamic. I’m getting pretty technical I’m realizing.

Anyhow, for this guy I was working with, who was a real professional, I felt like his tools really stunk. So I convinced Natalie Weizenbaum, who’s a better programmer than me; we hung out with San Diego at RailsConf, and I pitched her on the idea. I kind of started the project, and then she jumped in and built it, and has continued to build it. There’s the story.

I feel all these things for me always come from … there’s always one friend for each thing I’ve done who impacted me, and was the person I was building it for. My friend Melissa was Wikipedia Mobile. I felt that she was complaining that she couldn’t view Wikipedia on her phone, so I built that. It ended up being official later. I ended up getting a job with them.

Haml was because I was working with a team that wanted better structured data. Wordset was because I made a dictionary for myself, and then realized we needed a better one. Yeah, that’s my philosophy. There was always somebody.

David:

I think everybody around here has certainly heard of Sass, and a lot of people have heard of Haml. I don’t know that a lot of people have heard about Wordset though. That was an interesting project.

Hampton:

Yeah, well it’s probably because it’s not very successful, but yeah …

David:

Successful on what scale? I mean, you’re the inventor of Sass.

Hampton [7:16]:

Years ago I made an iPhone app called Dictionary! A couple hundred thousand people were using it for a long time. The dictionary I used for it — the source dictionary — was really bad. Well, not really … Yeah, it was pretty bad. It’s called WordNet. People might have heard of Wiktionary, which is Wikipedia’s dictionary, but I worked it Wikimedia Foundation, and that data’s very hard to use. So I realized there was a gap, where there wasn’t a structured way to collaborate on a dictionary that could be open source. That just didn’t exist.

So my husband and I founded Wordset, and spent a year and a half just living off savings and building this kind of open-source project. Now there is an iPhone app for it, but we didn’t think it’d make any money, and it didn’t. It hit all of its personal goals. [Chuckles] It needed to exist. We didn’t get a lot of people working on it.

It’s still up, and people still do help, but it never really hit critical mass of enough English nerds to come and help out. But some really interesting design stuff; I’m pretty proud of the way it functions.

That’s Wordset. But about nine months ago we ran out of our own personal money, and then realized that we should probably go work on something that we think could make a positive difference, and make money. Hence version zero again.

Tim:

Speaking to all the work that you consistently do, how pivotal of a role — or how important does open source play into the type of projects that you launch? I noticed Sass is open source. I’m not sure if Haml is open source, but I would guess that it is. How important is open source to you?

Hampton:

Very! [Chuckles] Done — move on!

Tim:

Perfect, question answered.

Hampton:

I never give a short answer. It’s funny, open source made so much sense to me, especially MIT style — very, like, sharing. Honestly, it’s just my personality. There’s definitely some stuff I’ve done where I haven’t released all the source. Wordset itself as a server isn’t technically open source, but all the data is. It was just a call trying to figure out if it was useful. It’s not really a tool for random people to run. (If you want to help out, send me a Twitter message.)

Yeah, for me if you make something cool — I want to help people, I want to share things. I’m a developer. I want to help and share with other developers. That’s why I live. I can get personal here. I’m not planning on having kids. I don’t have to worry about money too much. I’m a white developer in San Francisco. What am I going to do in my life? I just want to have a positive influence.

I think one of the best ways is — like, open source software lives beyond you. It even lives beyond the company. I love that it’s out of your control once it’s out there. Especially with MIT licenses: I feel like I can do whatever with it. Just take it, go, it’s yours. That just really makes me feel like what I’m doing matters, even if nobody ends up using it. But the cool part about open source is somebody will always end up using it.

There’s this stupid thing I built for an iPhone project that never even launched, and I think it’s called RBResizer or something. It was like a box-sizing thing for images. Anyhow, I think I posted it on Gist publicly, and I tweeted it. I’m like, If anybody needs this …

It’s so funny. Like, that stupid little piece of 200 lines of code, it’s like a gist, it’s not even a thing, just keeps popping around the internet over and over and over again. This file’s like, Oh, check this out, use the RBResizer. That’s so cool to me. The ship went off into the sea, and it’s taking its own little life.

David:

See, that must be very gratifying, and I think there are a lot of developers out there who look at the open-source community and they see releasing something out there, and they’re afraid nobody’s ever going to touch it. They don’t really know how to get people interested in it. They think about, How do I market this to other developers? You, on the other hand, you’ve created these projects, and people have just followed in droves.

Hampton:

For every success, there’s a bunch of failures. There’s a ton. Jabble never took off. It was basically a CoffeeScripty thing, and my personal lack of execution or marketing on it was probably most to blame. I just have so many projects that I started and didn’t finish.

Tim:

I think the difference is the amount of content you keep on coming up with. The amount of ideas that you … You don’t just write it down in a book somewhere, like I do most of the time. I’m just like, Oh, that’s a good idea, let me just store that forever and not do anything about it. You actually work on these things. I’m wondering, where does the inspiration come from? Where do the ideas come from? What keeps you working on these things?

Because, I can imagine that at some point you open your inbox and you see a thousand requests for, you know, open-source help, or maintenance on something that you worked on 15 years ago and forgot existed. What keeps you coming back to this work?

Hampton [12:04]:

Fear of death. [Chuckles] That’s a fair answer — come on.

Tim:

Extra philosophical today!

Hampton:

Yeah! A lot of people have talked about this — the feeling of responsibility that open-source contributors have. People burn out a lot on projects because they feel that everybody owes them … If they don’t work on it, and everybody will be mad … I don’t know. Most of my projects I work on for a while, and then either they die or another maintainer steps in.

Sass has been maintained by Natalie and Chris for the last while. I still talk about it. I’m still involved, but I don’t code. I don’t spend my whole Saturdays on it. I’ll answer emails if people need help. I try to teach courses on it. I try to encourage people, but I don’t wake up on a Saturday morning and spend all day coding.

Right now … well, it just depends on what phase of my life, right? When I saved up a little bit of money at my last job, and then took the time to do Wordset for a year. I didn’t really think it’d make any money. We put out a bunch of open-source code from that. I don’t know, if somebody had a question now, I’d probably try to fix it …

That’s a really bad answer. What keeps driving me? I don’t know. I like making things, and I want to keep making them.

I had this weird thing happen to me — well, not weird — but I had an upbringing. Yeah, I’m just going to talk really personally, and you all can deal with it. Growing up gay in the South and in a religious household, with great parents by the way. Nobody kicked me out on the street, but it really made me question what my life was going to be, because it wasn’t going to be the story that I thought it was going to be. When I started thinking, Well, maybe this is the only life I have, or at minimum maybe I should live my life like this is the only life I have. What do I want to leave behind?

For a lot of people, that’s their family. That’s a totally valid answer, but for me it was really clear that I had this idea. I was 19 or 18. The person who invented the electric razor, their name is in a book. They didn’t totally disappear by doing something that they gave back to technology and to society. It’s just this thing that wasn’t there before and now it’s there. They will live on with this thing. It’s like a form of immortality, and I took a weird … I think saying it now, it sounds really odd, but it made a lot of sense to me back then.

It gave me a lot of peace to think that you can do something that makes the world better. Stand me on the shoulders of giants, and you just do a little bit more, and then that would be enough. Obviously, it’s never enough, so I keep doing it.

David:

That is interesting, because it sounds like that’s something that you factored into how you designed your career and how you make each of your career choices.

Hampton:

Yeah, because I want to do something new. I want to help in a different way, yeah.

Tim:

I feel guilty listening to you explain all of your very well-thought-out reasoning behind your career and your motivation. Meanwhile, I’m over here like, Oh, I like computers. Let me just do this for now. That’s very inspiring, and very motivating for me just listening to you discuss your reasoning about this, so thank you.

Hampton:

Yeah, you’re welcome. I hope you’re at that level of peace. I’m an intense person. My family is intense, and I think that’s just how we are. We’re very intellectual, and I think that’s something I can’t stop. I can’t stop being in the shower in the morning and just thinking about what I’m going to build, what should I build, what’s needed, what are people thinking? How can I make it better? It’s like a compulsion to make things.

David:

Do you think that that level of intensity was partially responsible for some of the spread of some of the technologies that you’ve developed — in terms of how they’ve been adopted, and how people have picked up on them?

Hampton [15:42]:

I don’t know, maybe. It’s funny, I feel very lazy about all of this stuff. I guess obviously I’m not or something, but I feel like I don’t spend a ton of time promoting things. I actually think that the things I’ve done have been more successful despite my laziness, mostly because they are weird. Haml was the first thing that I did that was successful, and it’s another thing where there was no languages like it before. Haml’s a markup language that — things like Jade now exist. There’s like a whole class of — I am very, very proud that there’s a whole class of these now.

There’s tons of them now, but Haml was the first kind of indented, structural markup language. Most of them are white space sensitive, but not all of them. Yes, it was just kind of style, and I just made it. I thought it was weird and fun. I actually did it by putting HTML into a notepad on my computer, and I was feeling minimalist. I was like, How much can I delete and still have it be readable, structural, and valid, so you couldn’t write not valid markup?

First, I deleted all the closing tags, and then I made it well indented, because I always well indented my HTML when I wrote it. Then I got rid of that bracket and then this bracket. Then I said … Eventually, it was this weird style of thing that hadn’t exist before, and I started using it for about six months. Then a friend told me to — a coworker was like, We’ll fly to London to talk about it. I was a kid, so I was like, Yes! I was terrified, and I shaved my head into a mohawk, dyed it red, and I bought some outfit that looked a little bit punkier than I normally would have been. That gave me some confidence, and I presented it. It was weird, and people reacted. People were talking about it, and then people showed up.

Sass was a little bit slower growth, but it was definitely weird and took a while. Wikipedia Mobile, there was no Wikipedia — you couldn’t use Wikipedia on your phone, so I built an app for it. He tried to sue me, and then instead I got a job, so that was good. Each of these, it’s because they’re weird. It’s not because I worked hard. It’s because I was first.

Tim:

So, what you’re saying is, when you’re scared, go full mohawk, and then dye it a different color?

Hampton:

Mm-hmm. [affirmative]

Tim:

All right, I’m going to try that. I’m going to try that.

Hampton:

Look, there is something nice about … I view the Universe in a very quantum way. That is, there are multiple things going on, and multiple ways to view something. You know, like who am I? Am I an outgoing person or a shy person? I’m both, and I think I’m fully both. I’m a hermit who’s very personable and likes people and then totally hates people. That doesn’t bother me that that kind of quantum exists. And for me, doing something like being somebody who I’ve never been before, it can be natural because I’m like, This is who I want to be. I wish I was this kind of person.

So if I just step into the role, then I have this weird idea. I didn’t know if everybody was going to hate it. It was so weird. It just didn’t look like anything else, and I was so afraid that they were going to hate it that, if I was up there, and I was the kid who just got his first tech job, and came from rich people in the South but had no money … I don’t know, that kind of sad character who I think of myself as at the time. That’s a lot of projection there, isn’t it?

If people didn’t like that, then I would feel it personally. If I look like somebody different, or if I make myself into what I want to be, then if somebody rejects that, that’s not me. That was somebody else. It’s okay. It gave me a little bit of safety. But now I do just occasionally do a mohawk, because it’s no longer that weird.

David:

You used that to create a persona for yourself, to present some confidence.

Hampton:

Yeah, definitely.

David:

And yet, I’ve heard you speak before, and even in this conversation, you’re very genuine and personal. You go into your own background. You put yourself out there so much, compared to a lot of people who focus on their technologies and the content and the context. You’ve really seem to put yourself into what you’re doing.

Hampton [19:40]:

I know you had Chris Coyier on not too long ago. He is one of my favorite people on the planet. He makes so much content all the time. He’s also an amazing person. Seriously, I’m always in awe at the amount of content he can do. He knows … Oh, and Vitaly. Holy moly — he just knows everything about everything.

Well, first of all, I feel like I don’t have that much knowledge. I can talk more about history, if you want — but that’s probably not very interesting here. They know so much more than I do, and I find though that people I really care about, people starting off in this industry — a lot of Sass users, it’s their first programming language, or anything like a programming language. Yeah, there you go.

A lot of the people I meet when I’m out and about are talking to people, you know, are just getting started. They’re really looking for guidance, and they want to know are they safe? Are they okay? Is this normal? What should I be doing? I have a real heart for those people. Making sure people feel supported and good, and I find that the more honest I am about myself and my fears and how much doubt I have about my own abilities, if I’m vulnerable … The messages I care most about when I get emails are people who are like, Thank you for saying that. I felt like that. Or, Thank you for admitting that you did that stupid thing.

I know how imperfect I am, and I just want people to know that they’re OK. That’s really important to me. I feel like the best way for me to demonstrate that is if I’m not ashamed of who I am, and I’m very open about my flaws and who I am and things not everybody might like, then hopefully they will too. I know that there are people out there who will care about them, love them, and accept them.

Tim:

It’s refreshing to see that your point of view is less about code, syntax, and computers and more about the people who actually use those sorts of things.

Hampton:

Oh, yeah. I like coding, sure. I also like doing sudoku sometimes, but I don’t know, they’re numbers. That’s code. It’s not a thing itself. I don’t really care about it. What I care about is what technology can do and the people side.

The first website I ever built (or maybe second, but whatever) was a joke website where I had people apologize to cows. It was a dumb idea I had. It was called Sorry, Cow, and it was tongue in cheek. It was a joke, so it was kind of, Oh, sorry. We eat you delicious cows, but we’re going to keep doing it because we literally have no other options.

It was a little petition. It went around on LiveJournal, and I think something like — I always get the number wrong — I think it was like 70,000 or 80,000 people signed that. It was on so many people’s LiveJournals, and I just made this thing in a day. I thought it was funny, and I made 70,000 people write down — they didn’t just read it; there must have been more people. (We didn’t have Google Analytics back then.) People put down their email address and their name that many times because they thought it was funny. That blew my mind that you can have that effect. You can reach that number of people? You can be Beyoncé. 70,000 people, that number is mind boggling to me. I don’t make joke websites anymore. I decided to maybe do something more valuable. [Laughs]

David:

I don’t know, something tells me that you’re not done making joke websites. I’m expecting more from you in the future, man.

Tim:

Something tells me I should start apologizing to cows a little bit, now that I think about it. I eat a lot of beef.

Hampton:

It is on the Wayback Machine, so I feel like I could totally rebuild the site and put it back up with the original shitty jokes, just for fun.

David:

It’s inspiring to the people out there who have weird ideas and are intimidated by putting them out there, and you’re demonstrating that it’s possible to put them out there.

Hampton:

If you have an idea and you’re surprised it doesn’t exist, build it if you have the time. I mean, some people don’t have the time or whatever, families, life, disease. I’m going to do a little bit of a subject change. I tend to pop stacks pretty fast.

One time I gave a talk, and I got up on stage. I was like, Go out there and build something. You can do it. Just take a weekend, just believe in yourself. You can do this. I thought this is the most innocent, straightforward talk I could ever give. The organizer of that conference came back to me later, but was like, We got a lot of complaints about your talk. I was like, Wait, what? (The talk’s online by the way. It’s scarring me though, because I usually don’t get complaints.)

He was like, Yeah, we got complaints, because people said, ‘Yeah, I don’t have weekends. Why are you assuming I have weekends? This isn’t just so easy that I even have that ability.’ I definitely changed the way I talked about that since then. I bring that up because I was caveat-ing my thing. It’s important though because — some people are not … it’s extra hard for them to do that kind of thing. I’m still going to encourage people to do it, even if it’s maybe harder than it would be for me.

Tim [24:30]:

I mean, some of us are just really lazy — like me.

Hampton:

That’s true. Oh, my gosh. I spend so much time … You don’t know how many hours I spend on Crusader Kings or Europa Universalis. I believe I’m plus 400 hours on each one of those.

Tim:

Nice.

Hampton:

They’re very, very nerdy games, and I’ve put way more mental energy into those games than … I could have reinvented, rewritten Sass three times with the amount of mental energy into those.

Tim:

Sass 2.

Hampton:

Sass 9, yeah.

David:

It sounds to me like maybe you get inspiration from the relaxation that you put into those things, and that outlet gives you the opportunity to expand your thoughts into these weird areas.

Hampton:

Oh, yeah. Some people think that if you do open-source work, you’re a workaholic. I’ve mostly done open source when I have the free time. We’re recording this, it’s almost 5 o'clock, and I’ve been at work. I got in at 7:30, and when it hits 5 o'clock, I am going to leave. That is it. I’m not going to bring my laptop, and I’m not going to do any programming tonight. If there’s a question, they can ping me on Slack, and I’ll probably answer, but beyond that I’m done, because you can’t program that much. You cannot!

That’s why I don’t expect people who have full time jobs to do open-source work. I don’t contribute to any open-source projects today, because I’m busy trying to build a company, and I think that’s OK. There’s no mythical thing. I don’t think beat yourself up if you’re busy. So maybe you need to just go relax. I make no apologies about the fact that I’m not answering your email, but I’m playing 8 hours of Sift 6. I tend to like building games, which I guess … I sit at my computer all day at work, building software, and then I go home and I build fake cities and fake civilizations and moon bases. I like that one a lot. Those are pretty fun.

Tim:

I think what I’ve learned today is, number one, I need to apologize to a lot of different animals, because I eat a lot of different animals. But secondly, I’ve learned a lot about where your inspiration comes from, and how you source different ideas, as well as your ideas towards open source. I’m definitely motivated to work on some of the ideas that I’ve had and just to, I don’t know, keep it weird because it seems like that’s where you get the most results from.

Hampton:

Keep it weird.

Tim:

Yeah, everybody, keep it weird. If you have the idea, work on it and think about the people behind the code. That’s something that I sometimes struggle with. That’s something that I often … I just like writing code and syntax, JavaScript stuff, and when I think about the people behind the stuff that I’m doing, I think that’s when I’m the most productive.

So, Hampton, thank you so much for joining us today. I think we’ve learned a lot, and there’s a ton of good stuff that we can take away here today, so thank you again so much for joining us on the Versioning Podcast.

Hampton:

You’re welcome.

[Laughter]

David:

That was inspired. You’re welcome.

Hampton:

I could say something, but it seems like the end!

[Laughter]

David:

Yeah, it’s been a pleasure chatting with you. Again, thank you so much for joining us.


Tim:

First off, that was probably the most fun that I’ve had doing an episode on this show, because Hampton just has a crazy amount of energy, and such a wide breadth of things that he wants to discuss and is interested in talking about.

David [27:58]:

I know, we went into this asking him how he came up with all of these ideas, and then he demonstrated exactly how his mind works, and how broadly he thinks.

Tim:

I think we got very close to being the most philosophical we’ve ever been on this show, which is always exciting to kind of push that a little bit further.

David:

Which is impressive, because Hampton’s also capable of going really, really deep into tech. Wasn’t he talking about maybe bringing up the topic of machine learning or something when we started this?

Tim:

Yeah, it kind of seemed like we didn’t get to that. Maybe we should have him on again to talk more about those sorts of things, but I don’t know, I think — I wanted at some point to ask him about where all of his motivation comes from, but after just hearing him talk about the types of things that he works on and his motivations, I kind of just started to understand that that’s just how his brain works. It’s fascinating. It’s fascinating to see that someone who just looks at problems differently than everybody else and just continues to go for it, but at the same time is not constantly working on open-source projects, and takes breaks, but at the same has these new ideas.

David:

The thing that I found so inspiring was his emphasis on the weird, and the value of the weird, because people feel intimidated by putting things out into the world and people feel like they’re going to be judged and evaluated. He was judged and evaluated. He gave that talk once. The very first talk he gave, he felt like he had to costume himself up just to get up the nerve to get in front of people and talk about something that he’d made that was weird. He’s demonstrated that by putting things out there into the world, no matter how weird they are, if they’re something that appeals to you, there’s somebody out there who might be interested in it, and it’s worth doing.

Tim:

Yes, speaking to that, I, for one, and I’m sure a bunch of us have thought about something and then one second later thought to ourselves, Oh, my goodness. That’s the worst idea in the world. I’m terrible. That will never see the light of day. I don’t think Hampton has ever thought that in his life.

David:

If he has, he’s kept it to himself, and that might be the only thing he’s kept to himself.

Tim:

Yeah, exactly. It seems like no matter what the idea is, in his head he’s just like, All right, let’s go for it and see what happens. Could you imagine Sass could have been one of those ideas that someone was like, Yeah, this is ridiculous. This was never going to work. Let’s just not do it.

David:

It’s true. And yet, you’ve seen how it’s taken off. I mean, there are so many child projects that rely on Sass, and industries that have been built up around the adoption and use of Sass. It’s integrated into so many websites. I wonder what the statistics are on that.

Tim:

I, for one, haven’t built anything that uses just CSS in as long as I can remember.

David:

I don’t think that anybody has, and there have been copycat projects and similar alternatives to Sass that have been out there. But everybody seems to be gravitating back towards Sass, and for good reason: it’s very solid technology.

Tim:

Another thing that really inspired me was how Hampton focuses on people. Like he said, code is fun. It’s cool, it’s OK, whatever. But the reason that he does what he does is for the person behind the software. Like I said, I sometimes find myself only focusing on solving fun code puzzles. There’s so much — it’s like a waste to do that. There’s so much more. There are people that you’re building these things for. You’re not just building stuff for other machines.

David:

This brings me back to what brought me to online communications in the first place — when I realized that I was looking at my computer and there were people in there. I could interact with them. It blew my mind, and that was what got me going down this path in the first place. It’s wonderful to hear somebody who’s taken that sense of childlike delight at the people who are using the projects, and kept that as a main focus in the work that he’s doing.

Tim:

Yeah, I have to say, I’m really motivated to just think of something weird now and just go for it.

David:

I’m going to ask you, because it’s a good opportunity …

Tim:

Sure.

David:

… What’s the weirdest thing that you’ve put out there, or that you haven’t put out there yet but you think you might?

Tim:

The weirdest thing …

David:

Regardless of whether it got any uptake, I’m just curious. Have you gone the weird path?

Tim [32]:

I would have to say maybe the most useless thing that I’ve ever built …

David:

Useless is good.

Tim:

… It’s not super weird. It was just a thing that … It’s probably not necessary, but anyways, I’ve written about this before. I’ve spoken about this before. I built a thing that allows people to build restaurant menus with HTML instead of making restaurant menus out of PDFs, because it was just something I was annoyed by. The reason I bring this up is because the same technology, just doing a find and replace, could be a resume builder or something much more helpful to society as a whole.

I was angry about restaurant menus, so I built what’s basically a giant form that you fill in the names, prices, and descriptions of food, and it creates a responsive, HTML- and CSS-based menu for restaurants. I should totally turn that into a free resume builder. In fact, I feel guilty every second that I don’t do that, but that’s probably … I don’t think anyone has used it, because I guess PDFs allow for more creativity, but that was probably the either weirdest or most useless thing that I’ve ever done.

David:

That sounds pretty weird. It’s open source though, right?

Tim:

Yes, 100%. It’s on GitHub. It’s on restaurantmenubuilder.com.

David:

We have an audience out here that could all go out and fork this and make it into something great.

Tim:

Yes, please do. Make it something that benefits people. Please. Not just to me. It was a very selfish project.

David:

Yes, support weird ideas.

Tim:

Yes, support weird ideas. You know what, if you fork this and make something super, super weird, that’s cool too.

David:

I had a weird project myself. A couple years ago, I was reading novels from the 18th century, and I was thinking to myself, they’re very caught in their society, in the times that they were written in. All the men have the masculine roles. All of the women have the feminine roles. How could I look at this, and what would it be like reading these novels if the men were in the women’s roles and the women were in the men’s roles? Just to switch that around. I thought, That’s a text processing challenge. I could do something like that.

Tim:

Oooh, that’s super cool.

David:

I wrote this little thing. I just called it the Transconceive Project, and I transconceived a couple of novels. I put them out there into the world, and it’s not something that’s gotten a lot of uptake. It’s probably because I didn’t open source my code, because my code totally sucks for the way that I approached it. I wrote it in Ruby. It’s slow. If I were going to do it again, I’d probably do it Go, and that would be fun. It was so much fun putting together this really weird little thing, and putting it out there, and I’ve gotten a very small amount of feedback from it, but it’s been so delightful when somebody comes across it and says that it changed their perspective on a book that they were familiar with.

Tim:

That sounds really cool, but I have to say, bad code or not, you should definitely open source it.

David:

My code looks bad! I’m so embarrassed! [Laughs]

Tim:

My biggest contribution ever to open source was helping to integrate responsive images into WordPress Core. None of my original code — maybe like one line — made it into WordPress Core. I don’t work on the project anymore, but I led the push for that, and I was sort of — I was co-lead developer. My original code was so terrible, and so bug-riddled, that it would have never made sense. I had no idea what to do and how to get started, but I contacted Matt Marquis and we just made it happen. It was open source, and it turned into this thing that now works incredibly for (what is it?) 25% of the internet.

I have to say, please, open source stuff. People should and hopefully will be nice and help you make it better. That’s been my experience. Open source regardless, but that leads me to another thing that Hampton sort of started to touch on. I think it’s a really good goal in mind when you open source something, or when you first put something up on GitHub. The goal being that if this thing gets big, ultimately, it should be handed off to other people to run with, because I think that sort of gets rid of the open-source guilt that a lot of our guests have spoken about. It just keeps you from getting burnt out as a developer.

David [36:04]:

That’s interesting, because it also prevents you from feeling like you can’t take responsibility for something because you just don’t have the time or the bandwidth to maintain it. The point of open source is that there is a community out there, and they can help with the things — they can fill in the gaps where your own skills might be lacking. They can build out the areas where there’s an actual need, because they see it and you might not from your one perspective.

Tim:

It’s like if you were to open up a business and it becomes massively popular, and enormous, and profitable very quickly. You can spend the rest of your life working on this business and pouring your time into it and maybe micromanaging a little bit, or you can hand it off to some capable and qualified people and go on to your next adventure.

I, for one, love handing things off, because with the WordPress thing that I worked on, it got to the point where it was a little bit too technical and little bit beyond my knowledge of the inner workings of WordPress. I could have studied up and worked on it, but I have another career. I have this podcast, and I thought to myself, You know what? Everyone working on this right now knows more about it than me. I’m not necessarily needed here. I had a good run. I started it, and now it’s my turn to sort of go do something else.

David:

Which is exactly Hampton did with Sass. He says right now he’s not hands on on it. He certainly doesn’t spend his Saturdays coding on it, but he’s got a good team of people who are maintaining it and managing it. Goodness knows the number of people who are using it in other projects. There’s no way one person could be touching all of that.


Tim:

Well, thank you so much for listening, everybody. We always enjoy getting to talk technology with all of you.

David:

We’d also like to thank SitePoint.com, and our producers, Adam Roberts and Ophelie Lechat, with production help from Ralph Mason. Please feel free to send us your comments on Twitter — @versioningshow — and give us a rating on iTunes to let us know how we’re doing.

Tim:

We’ll see you next time, and we hope you enjoyed this version.

We teamed up with SiteGround
To bring you up to 65% off web hosting, plus free access to the entire SitePoint Premium library (worth $99). Get SiteGround + SitePoint Premium Now