Author, Developer and Web Consultant
Eric started as a “hypermedia systems specialist” at Case Western Reserve University, essentially going to departments, explaining what the “web” is, and offering to hook them up with FTP sites.
While presenting a paper at a conference in Paris, Eric got his first exposure to CSS and he knew right away he had to be a part of it.
Eric developed a series of test pages that led to an invitation to join the CSS working group.
The teamwork and open ethic of the working group was inspiring to Eric, who was determined to do great work and also to reach a hand out to others to help them build on the work to move it forward.
IVAN STEGIC: Hey, everyone, you're listening to the TEN7 Podcast where we get together every fortnight, and sometimes more often, to talk about technology, business, and the humans in it. I'm your host, Ivan Stegic. My guest today is Eric Meyer, an author, developer and web consultant. He is a pioneer in using and thinking about Cascading Style Sheets, or CSS, which is the way all browsers control how web pages look on your screen. He co-founded an Event Apart, he co-authored CSS, The Definitive Guide, he created the CSS Reset and has participated as a champion of web standards for decades. He also has really good dad jokes on Twitter, so you should follow him there if you see that. I'm really excited to be talking with him today. Eric, welcome to the show. Hello. It's so nice to have you on.
ERIC MEYER: It's really nice to be here. Thanks for having me on.
IVAN: Your Twitter profile, Corduroys and Headlines (laughing). I love it.
ERIC: Yes. Yes. So you've heard about corduroy pillows?
IVAN: Yes, I have.
ERIC: They are making headlines. [laughing]
IVAN: It’s awesome. Thanks for being on the show. I was so glad to see the email from you agreeing to be on the show. It's just awesome to have you here.
ERIC: Yeah. Well, thank you.
IVAN: So, I'd love to start with where you are in the world today, where you're joining us for the show. And then we kind of talk about where you started out.
ERIC: Well, where I am today is in Cleveland Heights, Ohio, which is an inner ring suburb on the east side of Cleveland, Ohio. And I've been working from home for a long time. I was remote working from way before it was cool. But yeah, so I got a house, a yard and a family and all that stuff is where I am now.
IVAN: And have you always been in Ohio? Is that where you were born?
ERIC: No, actually. I've just been in Ohio for a very long time. I was actually born in Massachusetts. My family at that time, I'm the oldest child, so I was at that point an only child and my parents were very mobile at that point. So, I lived in a number of states that I don't even remember. Basically, my first memories are of Ohio, various places in Ohio. When I was five, we moved to a suburb of Chicago. And then when I was six, we moved to Lexington, Ohio, and stopped moving like that. My parents were just done. They were done. We lived on the edge of Lexington for several years and then moved to the woods south of Lexington after that time, and that house still stands, and I came to Cleveland for college and never left.
IVAN: And you went to high school just in Lexington then?
ERIC: I did. So, Lexington, Ohio, for any listeners who are NASCAR fans, they already know where Lexington is because the mid-Ohio race car course is just outside of Lexington, Ohio. So on race weekends you could hear the cars, you could hear the engines. The house where we moved to just south of Lexington was actually a little closer to mid-Ohio. Not that wasn't the reason we moved there. But that turned out to be the case. We were close enough that we would hear the engines and be like, Oh, it must be a motorcycle racing weekend, because you could tell from the pitch of the engines.
I don't mind racing, but I don't follow it, and that sort of thing. It just was part of the landscape pretty much. For those who aren't NASCAR fans, Lexington, Ohio is just south of Mansfield, Ohio, which is almost precisely halfway between Cleveland and Columbus. So, it's North Central Ohio.
IVAN: Okay, got it. And you went to Lexington High School. What was your high school experience like? Were you kind of prepping to be an English major in college or was it something different?
ERIC: No. It was something very different. high school was all right. I did not have nearly as horrible a time of it as some people I know had in high school. That was junior high for me, junior high was just a terrible, terrible experience for me. But high school was okay. Actually, a few years later, when I was talking to some high school friends, I think I realized why. Because one of them said, The thing that always amazed me about you was that you just didn't care if you were popular or not. Like it just didn't even occur to you to care. And I realized that's probably why I didn't have a bad time in high school because I wasn't all invested in what as adults, we would call high school drama. Am I popular? Who likes me? Who doesn't? It was just like I have my friends, I'm learning and that's fine. And I don't care about the rest of it. I don't have some major life epiphany wisdom to impart to say, this thing happened and that's why I didn't care. Just for whatever reason, I didn't.
It did seem to work out. I'm sure that there are people who can be like that, and High School is still a completely horrible experience for them. I don't want to causate there. It's correlation. For me, it worked out, for whatever reason.
IVAN: What did you want to be while you were in high school? What did you want to be when you grew up?
ERIC: I wanted to be an astronaut.
ERIC: I did. Yes. Like most kids. But I actually had a plan that did not involve becoming a fighter pilot. So, here's the thing, at the time, and we're talking when I was in high school, this was the eighties. I was in high school when the Challenger exploded. 1986. I clearly remember that moment, though, when I found out. I was literally walking down the hallway of the high school when someone told me, and I didn't believe them at first. But anyway, I wanted to be an astronaut, but at the time, basically, there were two ways to become an astronaut. It was to be a fighter pilot, or a scientist. And I like science so I decided that I would be an astrophysicist and I would make my way onto a shuttle mission by doing orbital astrophysics. That was my plan.
IVAN: That’s awesome. I kind of landed on studying physics in college. I did not have a plan. But having a plan is so much better. So that explains why you studied astronomy at Case Western Reserve University, and English and AI.
ERIC: Yeah, and it also explains why I went to Case Western Reserve University. So, I was looking for a science college, one where I could study physics. Because you start in physics, and then eventually, at least the way most people do it is you study physics and undergrad and then you graduate and you choose a type of physics, like astrophysics. I actually did apply to Williams College where they had an undergraduate astrophysics program, but they rejected me. But I also applied to a few other schools, one of which was Case Western Reserve University, which had a strong physics program. So, I went to Case. They accepted me and I went. I was in the physics program for my freshman year and at the end of that year, I said, This has been enjoyable, and I do not want to do physics for the rest of my life. I just can't see myself doing this for the rest of my life.
IVAN: Well, how did AI form part of that decision?
ERIC: So, I knocked around through a few programs in my sophomore year, and maybe a little bit my junior year. And I took undergraduate astronomy, just because I still enjoyed astronomy. I didn't mind studying it in college, I just was like, I don't want to do this for the rest of my life. So, literally because of my physics studies, my freshman year, all I had to do was take a two semester sequence of astronomy classes and I had an astronomy minor. Great. I knocked through the computer science department and took some programming classes. And then because of that, all I had to do was take a couple of AI courses and then I could have a minor in artificial intelligence, which I chose actually the philosophy of artificial intelligence. There was still some programming, but it's a philosophy of AI minor.
And I ended up in the history department. So, I actually have a degree in history. The English is a minor. It's one class short of being a double major in English and History, but the only way I could have gotten that extra class would be to take a whole other semester of classes. I was like, No, I got my degree in four years. I'm out of here. So, I took history with a very strong minor in English and the AI and astronomy were there. And I actually did do some graduate work towards a degree in English, but I never finished the degree.
IVAN: Wow, what an interesting evolution in college going in thinking you're going to be an astronaut and coming out with a degree in history, and then working in computer science.
ERIC: Yeah. So immediately upon graduating, I got myself hired as a part timer by a department of the University where my friend Jim Nower had been a classmate was working, and they needed somebody to do some hardware work. I'd been into computers since I was seven. I was really lucky that way, because for me, seven is like the late seventies.
IVAN: I was going to say seven is pretty late in the seventies or early eighties. So what computer was it?
ERIC: I'm pretty sure the first one was a PDP11 mainframe, and it happened through a summer computer camp kind of thing. And I happened to be in a place where I mean, you wouldn't think in Mansfield, Ohio that nobody's ever heard of, they’re like, They had mainframes? And yeah they did. Yeah. There was a computer camp, and they had a mainframe and I got to do a little basic and then the school that I was in had like a TRS80 model, one or three or something. And the high school had Apple 2’s, and I was enough into it that my parents got a TRS80 color computer when I was about nine or 10, I think. And within a couple of years, I had completely exceeded the capabilities of that system and convinced them to buy a Commodore 64. And then before college, I picked up an IBM PC 8086. But I got the 80286 processor upgrade card before I went to college. So I had an 8286.
IVAN: Was that a math coprocessor?
ERIC: No, I don't think so.
IVAN: That came later.
ERIC: No, it was just this is a better CPU so your computer will go faster. If I remember correctly. I mean, this is a long time ago. So someone out there might be going, Yes, it was a math coprocessor. What's wrong with you? And what's wrong with me is that I am old, and my memory is faulty. But yeah, I think it was just basically a CPU bypass with a better CPU.
IVAN: And so, you essentially got a job at the place you were studying. So, were you working and doing that English graduate studies at the same time?
ERIC: Yes. I should also say I had been a computer lab monitor while I was an undergraduate throughout my program in that same department. So the department that hired me, I had been working for them part time as a student and then once I'd graduated, they hired me part time as sort of a part-time/full-time. It's like, Well, you'll work 40 hours a week, but you won't have any actual benefits.
IVAN: [laughing] Because they could do that back then.
ERIC: But, they can do it now. I don't want to say that Case does that now, but people do that. At least it was a paid internship basically. It wasn’t a lot, but they were paying me. But I got hired full time and at that point, tuition benefits kicked in, I could take a certain number of credit hours free per semester. And so, I started doing graduate work in the English Program.
IVAN: Now the title you had or have on your LinkedIn profile for your work at Case Western is hypermedia systems specialist. That sounds amazing. I want that job. [laughing]
ERIC: Doesn’t that sound great? [laughing]
IVAN: That sounds great. What was it?
ERIC: I was a webmaster. That's what it was. I was a webmaster. And so, when I was first hired, I didn't remember if I had a title. When I was first hired full time, I was like, systems analyst one. I don't even remember. It was some very generic thing. Early to mid-1993 is when I got hired full time, like actual full time with benefits. And then it was later that same year that I first encountered the web, again, thanks to my friend Jim Nower, who at that point we were co-workers in the same department. He showed me an early beta of mosaic and I was just captivated.
I had already come into contact with hypertext. I had was doing DOS based hypertext of the Ohio revised code, which is the complete set of laws for the state of Ohio. I worked for a legal publisher in Cleveland that had the entire thing on a C-ROM, the entire Ohio Revised Code on CD ROM in a text format for DOS computers. But there was hypertext, like you could drop codes in so that when one law referred to another law, the reference would be a hyperlink, you would hit the spacebar and it would load that other thing, right? I had read about hypertext. I had an analog science fiction magazine, but they had some fact columns, and one of them was about hypermedia, about hypertext.
So, I've been familiar with it, and I saw mosaic and was like, Yes this, this. This is awesome. So I very quickly started doing web stuff and became the webmaster. And so, we were like, Okay, but the university is never going to let you put that on a business card. It's not going to let you just say, webmaster. That sounds like you made it up. So, we made up a different title that sounded more official and hypermedia system specialist was it.
IVAN: That's amazing. [laughing] Was your email address webmaster?
ERIC: No. We may have had it as an alias. We had this habit of giving our projects code names, sort of like the military and the government do, so we call it the Aurora project, because the supposed successor to the SR71 was supposed to be called the Aurora. So, in the same way that the web was a success for the Gopher, the Aurora is the successor to SR71. Anyway, we called it the Aurora project. So the email address was actually auroraatcwru.edu.
And the design and the maintenance of the website, which was all static pages at that point, there was no CMS. Part of my drive, and part of how I got to that position and that title was that we were setting up a web server, not just for the university, but for the departments of the university. We went to every department of the university, and said, Hey, so there's this web thing, okay, and then we explained what the web is, we have a server, and you can have space on it. You don't have to manage the server. We're already managing the server. We’ll give you an FTP login, you can upload files, the only thing that we require is that you put a common header and footer on all of your pages that's common to the entire university. Between those two, you can pretty much do whatever you want, as long as it doesn't violate any laws.
And so that was a lot of my job, it was not answering email, although that was certainly part of it, but it was helping departments. And, a lot of times departments would say, You know what, we don't want to manage it. You can, you can set up some pages for us. That's fine. So we would do that.
IVAN: So, you were responsible for basically version one of the website for the whole university?
ERIC: Yeah. Maybe version two. There was a version one website. Let me backup to Gopher. Some of you may not remember Gopher if you're listening to this. Gopher is prior to the web. It’s sort of like the web, except everything was text and if there was an image, it would link to the image, and you would have to load the image separately. Which, to be fair, that's what the web was like originally too, embedded images didn't actually come along for three years.
So Gopher was very much like a sort of a text mode browser, or a BBS bulletin board system. So, it had this concept of things linking to things. And for a while a lot of people who had Gopher servers would set up a web sort of portal/interface, so it took those Gopher pages and turned them into web pages. So, there was a version of that since the university had a Gopher server. The person who ran the Gopher server set up this web front end to it. And so that was sort of version one of the of the website. When I took over responsibility for it, we didn't do that. We let Gopher be Gopher and web be web, from version two onwards let’s say.
IVAN: And the Gopher protocol is from the University of Minnesota, the Minnesota Golden Gophers. That's why it was called that, it was invented there.
ERIC: That's why it's called that. Yes. And Gopher is still running, I should point out. There are still Gopher sites.
IVAN: Are there really?
ERIC: There really are.
IVAN: Oh wow. I think I just found out what I'm doing for the rest of the afternoon. Going down that deep rabbit hole.
ERIC: Going down the Gopher hole.
IVAN: Going down the Gopher hole. [laughing] There you go. Thank you.
ERIC: Glad I could help.
IVAN: It was all tables back then, right? There was no CSS in what you were working on at first.
ERIC: Right. When I started there was no CSS. Everything presentational was baked into the markup. So, if you wanted to do like a grid layout, then yes, you were almost certainly using tables. I mean, when I started, we didn't even have float or align. You couldn't even align images to the side using the align attribute that Netscape introduced in '94, I think. I didn't actually use tables for layout. I resisted, because it didn't feel right. It felt icky and terrible, and clumsy and gross. But I don't know how long I could have resisted that if CSS hadn't come along.
IVAN: Yeah. You wrote about how tables felt wrong to you. I think this was in the post about the 25th anniversary of working in CSS. Can you tell me about your first experience with CSS when you saw it at this conference and you were basically mesmerized, I would say, by it?
ERIC: Yeah, pretty much. I had gone to the second International World Wide Web Conference, because it was held in Chicago, and my friend, again, Jim Nower, and co-worker, had family in Chicago. So we drove to Chicago, which Cleveland to Chicago is six and a half, seven hours depending on the traffic, which, to any European listeners will sound like, Oh, my God, you went to another country, but in America, we call that, I went to the next state over it wasn't that big a drive, right? I live in a part of the US where if it's under a seven hour drive, then you drive instead of fly. That is just how it is.
So we drove to Chicago, crashed with his parents, and attended the conference and then the fourth International Conference had been in Boston, we actually flew to that one, a few of us. But the fifth International World Wide Web Conference was being held in Paris. I'd never been to Europe, let alone Paris and I really wanted to go. So I figured if I get a paper accepted, the university will pay for my plane flight and my hotel and send me to Europe, and I get to see Paris. And it worked somehow. [laughing] I submitted a paper, the paper got accepted.
I figured I'm going to sit in on the W3C track, just find out what's coming next. And one of the presentations was, so there's this new thing that we're working on called CSS, and it's going to be in browsers, and here are some examples. And one of the examples I remember it vividly, which is weird, because I'm actually aphantasic so I don't have visual memory. There was this example where there was just a browser window with a white background, and I want people to remember at the time, the browser background default was actually light gray, not white. There was this white background, and a line of text and then one of the words in the line of text was this huge blue text. So like if the normal line of text was 18 point, this was 108 point, which nobody would design a website like that. Right? It's a recreation of a print ad.
But it was a recreation of a print ad, right. So far beyond anything that we could do, and I had ever seen. And once again, I was like, Yes, this is what we've been waiting for. This is how we can do layout. I was maybe a little premature in that conclusion. But it's at that sort of mesmerizing moment, like you said, just that moment of certainty that I have seen something important, and I want to be part of it.
IVAN: And then what led out of that conference? [laughing] It’s a bit of a loaded question.
ERIC: No, it’s fine. So again, I didn't do any CSS testing there because I didn't have a laptop because this is 1996. Laptops were huge, bulky and didn't last very long, and heavy, and annoying to carry around. And so, I didn't have one. I literally took paper notes. In fact, because I was scanning the notebook sitting here next to me. So, when I got home from Europe, [laughing] and took a day to recover from the lack of sleep and all that and got it back into the office I was like, I have to try this. So, I tried it, and nothing seemed to work. I had a copy of the specifications and was like, Okay, it says, if I do this, this will happen. I did this, that didn't happen. Is it me? Like am I not understanding? Or are the browser's just not where I think they are?
It turned out mostly to be the second one. To be clear, when I start learning a programming language, nothing works and it's completely because I don't understand. But this was one of those moments in time where something was so new, that it was actually more the tools were failing than I was failing.
IVAN: It was theory, right?
ERIC: Yeah. There were implementations, but there were a lot of bugs. There were a lot of gaps. There were a lot of holes. And I didn't know where the holes were. And I was like, Okay, if I'm going to use this, I need to know what works. So I started building these little test pages, just a page that says, here's an element, and I put padding on it, and did the layout the way I think it should. And okay, that didn't quite work the way I thought it would. So let me expand that page so that this element just has top padding, and this element just has bottom and this one has just right and this one has just left. And then I'm going to try the various ways of shorthand padding values and see if it's all consistent. Because for all I knew, padding was fine, except there was a bug in the bottom and that was throwing things off.
Before I built the test I didn't know. So I started building these tests, when I tried to do something, I would almost inevitably either need tests to figure out if I was doing it wrong, or the browser was doing it wrong. Or I would just be like, you know what, I'm just going to build a test page before I even try to use this, because if I try to use absolute positioning, and it turns out there's no absolute positioning, then all I'm going to do is spend a morning beating my head against the monitor before I realize, Oh, it's just that the browser is ignoring me. [laughing]
IVAN: Right. [laughing] So you end up having a whole suite of these tests.
ERIC: Yeah, I ended up with a whole set of test pages. I was on the WWW style mailing list, which is where the working group members hung out, the browser makers and people who are interested in CSS, and that sort of thing. And so, I emailed the chair of the working group, Chris Willey. The session in Paris, where I had presented my paper, he actually happened to be the chair of that session. Because each session actually had three papers that were presented one after another. So, in an hour each person would get 20 minutes or 15 minutes, or whatever it was. I sort of knew him, like we had met in person, and he was also the chair of the working group, and I was really interested in this thing and I had these tests. So, I emailed him, and I said, Hey, I don't know, maybe something like this already exists, or whatever, but I put together these tests, and I didn't know if maybe the working group would be interested.
And he said, Do you mind if I share this with the browser makers? And I said, No, not at all. [laughing] Because it turned out nothing like that existed really well. Maybe there was some stuff internally, maybe the people at Netscape had a few things they'd put together and the people at Microsoft had a few things they put together, but there was no shared common resource. Test suites weren't a thing at that point, the W3C had never made one apparently had not even really ever considered one, people weren't publishing them, it just wasn't a thing.
IVAN: And who were the major browser manufacturers at the time? Because it's a very different landscape than it is right now.
ERIC: I would say Microsoft and Netscape at that junction. And at that moment in time, Netscape had more of a market dominance than I think Internet Explorer ever achieved. Netscape was literally like 95% of the browser market, a much smaller market to be clear. There were way fewer people on the web at that point. But Internet Explorer was this scrappy little edge case upstart that most snooty webmasters were like, Oh, Internet Explorer. Here's a quarter kid, download yourself a real browser. Which is sort of ironic because that's the attitude that Chrome users came to have years and years later. It's like, what is Internet Explorer good for? Downloading chrome. I've heard that joke more than once. They’re like, the only reason Microsoft installs Internet Explorer on, anyway, it’s the extra step to getting Chrome. Not really true but there was that same attitude. I mean there was also mosaic still kicking around, but it was fading because it wasn't keeping up.
IVAN: My first browser was Emissary. Do you remember that browser?
ERIC: I’m not sure if I do.
IVAN: It was really tiny, really niche. It was the only thing we could get in South Africa. It was like I don't know why that's what everybody had. And I think it basically died because something happened with Internet Explorer ,and there was a lawsuit or not exactly sure what happened, but it died and then I switched to Netscape Navigator, I think 4.
ERIC: Yeah, very, very likely 4. Four was the big one. My first version of Netscape Navigator was actually Mosaic Navigator, because they weren't originally Netscape Communications, they were the Mosaic Communications Corporation. And once again, there was at least the threat of a lawsuit. And so, they had to change their name to something else. They changed it to Netscape. That was like 0.8, I think. But anyway, Netscape 4 is when Netscape was at the height of its market dominance.
IVAN: Yeah. So you share the test suites with the group and then they invite you to be part of the group?
ERIC: Yeah, it's not an exact thing. It was a big part of the reason why I was eventually invited. I mean, I was invited to join the working group as an invited expert on wwwstyle, the mailing list, I made some sort of offhand, slightly snarky comment about how only the cool kids in the working group could answer certain questions or knew about certain plans or whatever, and that wasn't me, or whatever. And then Chris Lloyd got in touch and said, So we have these things called invited experts and you could be one. Would you like to be one? I was like, Yeah, yeah, I'd like to be one. Thank you.
That wasn't what I was going for because I didn't even know that was a thing. When I made the comment I thought, the only way that I could ever make that happen would be to get the university to become a W3C member. And becoming a W3C member is not cheap. It is a fairly substantial investment. Even for a university, at least at the time. I haven't looked recently, but it was tens of thousands of dollars per year. I was like, I don't think the university’s going to go for that. We don't do enough. I'm really the only person who's doing any W3C type stuff here. Maybe I should have tried, and maybe I did, and I was quickly shot down and I've forgotten, but whatever, I wasn't a member. And so, I didn't even know that there was a way for me to be in, I was just being sort of offhanded about it. But, yeah, Chris was like, Man, would you like to be a member of the working group as an invited expert? I said, Yes.
IVAN: I would argue that the pioneering work you've done, shaped the internet, shaped the web, shaped the layout work that people are doing in browsers and how we think about the web and how we think about design across the globe. How does that make you feel?
ERIC: I feel gratified. But I also feel that that's a little bit of an overstatement. Yes, I contributed, but I was one of many.
IVAN: Indeed. But you were there.
ERIC: I was there. I contributed. Yes. I created a test suite and that hopefully helped browsers get better faster. And I evangelized CSS and made it easier to understand and hopefully that helped more people understand it, but I wasn't the only one. There were people who had even been there before me. And there were people who were doing similar work at that time, pretty much all the members of this CSS Samurai, my good friend Molly Holzschlag was an early advocate. Jennifer, who was then Jennifer Needers, now Jennifer Robbins, but the author of Web Design In A Nutshell for O'Reilly.
We could take the rest of the podcast with me coming up with names, and I would still forget someone and feel bad about it afterwards. But that's the beginning of a sampling. Oh, Laura LeMay was also writing about HTML and CSS and stuff like that around the same time.
IVAN: I didn't realize the very many connections you have. That's amazing. I grew up in South Africa, watching the web, from what I felt like was the outside and seeing the working groups and seeing the participants and seeing all these names for so long, it just used to feel so unattainable and far away. And once I decided that I wanted to work in this industry and make a living out of it, it kind of broke down all those barriers, I kind of feel like, Wow, these are just all people that all contributed to the shared goal, to the shared vision, and what a wonderful thing we can do as humans when we put our minds together.
ERIC: I mean, we're all just folks pretty much. Even at the time, some of the email that I was getting to my personal address would be people who would say things like, How do I do what you're doing? And I'd be like, Do it!
IVAN: I don't know! Just do it!
ERIC: There's no society to get a membership card. You just published stuff, and it’s the web you can do that. And, yes, there are barriers certainly.
If you're in a situation where you have low bandwidth, sipping through a cocktail straw as we used to say.
IVAN: Awful. I can identify with that.
ERIC: That could be a problem. And you had to be able to get your stuff onto a web server, which either meant you needed to set one up, or you needed to have access to one. If you wanted a domain name, like in the late nineties, domain names, like dot com are way more expensive than they are now, a few hundred dollars at least. Once you account for inflation, you're talking mid hundreds in today's figures.
IVAN: And you can only get it at one place, right? There's not a vast amount of people you can buy it from.
ERIC: Yeah, maybe one or two. In today's dollars getting a dot com address might be four or five hundred dollars, whatever the figure was at the time. So there certainly were barriers, don't get me wrong, but at the same time, if you had a friend who worked at a hosting company, or you had a hosting company near you, that you could connect with and get some space. GeoCities came along later, a lot of people used places like Angel Fire and GeoCities.
Were basically doing it on a commercial level and at a commercial scale. What I was doing at the university is basically saying, Here's your FTP account that has this many megabytes of space, and you can put whatever you want in it. But if you could do that, then just do it, view source. Here the specifications that I read to figure out HTML and CSS and read those, that’s literally what I did.
ERIC: And it was always Everyone to the table! Come on, everyone is allowed in this pool! That ethic. I wasn't around for the sixties and seventies Unix hacker ethic, but I feel like there are at least some similarities. There was definitely, at least for me, and I think for most of the people that I can remember, because they're the people who I connected with, there was this real strong ethic of we stand on the shoulders of giants, and it's our duty to provide our shoulders for the next people. The people that came before us shared what they knew, and we learned from that and so now it's our turn to share what we know, so that people can learn from that, and then they can share what they know.
IVAN: And we can keep doing that.
ERIC: Yeah, keep doing that. The goal was always to advance the whole, not to advance the individual. I mean, sure, a lot of us were very successful in various ways. I know several people who went to work for startups and got cashouts and they only work because they want to, at this point, I was not one of those people, sadly. Well, not sadly, I still like working and I would still work even if I literally didn't have to. But there was still that, you give the information away basically. You share it.
Still, I'm still doing that. I mean, yes. I write books and the books cost money. I also write a lot of articles from my own site or for other sites that don't have payrolls. And, create tools and throw stuff out into the world, just in case anyone's interested in using them. It’s part of that same ethic. And a lot of the Unix command line utilities, somebody just wrote the program and then it became part of Unix. And so, there's sort of an ethos of if you write a command line tool that you find super useful, offer it up to the world and maybe a bunch of other people will make it useful. Same thing.
IVAN: So, after that fateful conference, you were back at Case Western, and you got involved in the web standards project, and you'd mentioned CSS Samurai a few moments ago. Tell me about that. Who founded that?
ERIC: That was John Allsop, a software developer in Australia, who's still very active. So, the web standards project was launched, and I very quickly joined up because I had the same sort of problems. I had been writing these test suites to figure out why browsers didn't agree. And then I had started publishing compatibility information to let other people know when you try to use this property, and it doesn't work in two of the five browsers at your university, this is why, or wherever you are.
I was totally on board with the yes, browsers should all agree. I wanted to be out of that job. The testing browsers and documenting what they supported and what they didn’t in CSS, I didn't want to have to do that job anymore, I wanted it to just all work and nobody would need a compatibility table.
But the steering committee or whatever it was called, the people who basically formed and launched the Web Standards Project, started creating action committees. So, there was a Dreamweaver accessibility task force at one point. There was also a CSS Action Committee, which John Allsop was asked to head. So John reached out to some people, and we eventually ended up with seven people in the Action Committee, so Seven Samurai. We called ourselves the CSS Samurai.
IVAN: Nice. And how long were you with the group?
ERIC: I never really left. My active involvement was pretty much from right after it launched until right around 2000, I think. The CSS Action Committee basically fulfilled its mandate, and at some point, called it a day. We didn’t feel like we had anything more to say at that point, so we stopped. And the Web Standards Project eventually sort of came to the same place.
IVAN: And would you say that CSS still has a ways to go in terms of standardization across browsers? Or do you think that we're in a good place now?
ERIC: Both. So as compared to when I started, we're in paradise basically. There's so much consistency. And yes, I'm not here to say that all browsers are perfectly in concordance, and everything works exactly the way you think it should, at all times, in all situations. These are highly complex systems. There are always going to be bugs. But the bugs get fixed quickly, relatively usually, and things like the web platform tests, which are in some ways a descendant of the CSS test suite, although they're much more than that.
Those things help the browser's stay very much in alignment. Generally these days if you have a problem with something in CSS not working cross browser, it's generally because whichever browser is not doing the right thing, it just hasn't implemented that feature yet.
So, there was a time where if you tried to use Flexbox, it only worked in a couple of browsers and other browsers just hadn't started. But Grid is a better example. Grid basically dropped in all the major browsers in the space of a month, which still astonishes me. April 2017, basically. It was just bam, bam, bam, bam, bam. And that was in part because of the web platform test, and it was in part because the schedules managed to align together. But whatever the reason, those all dropped basically together. And sure, there are bugs, but the bugs that get reported in Grid layout get fixed. Right now, the situation is if you try to use a Subgrid, which is super cool, it’ll work great in Firefox, which has implemented a Subgrid, Chromium hasn’t yet. They’re close but they haven’t done it yet.
You can use the Subgrid progressive enhancement way, but you can't use it and every browser will act the same way. You have to take that progressive enhancement spirit, which I'm 100% for, but that's required, it has to be a, I'm going to use Subgrid so that our browsers understand Subgrid, this will be a little bit better. And it'll be nicer and more reliable and more sort of robust. And browsers that don't understand Subgrid, it’ll be okay. It won't break the page.
So, Subgrid's supposedly coming soon. I can make no promises. So don't make investment decisions based on that or whatever. But that's what I'm told. And Subgrid and Chromium, more to the point is what I hear, but I'm not part of the Chromium development team. I don't work at Google. So I cannot speak officially for that.
IVAN: Of course. I wanted to ask about the CSS color 663399. It's in the standard. Why is Rebecca Purple, which is the name of that color so special to you?
ERIC: It’s named for my daughter. Specifically, my late daughter. My daughter Rebecca was diagnosed with what turned out to be aggressive brain cancer when she was five and a quarter. And I chronicled some of that journey through my blog, through my website, meyerweb.com. She died June 7, 2014, which was also her sixth birthday. I shared that too, because I had been sharing the journey. So, what happened was, when we put up the obituary, and we said the service will be this Thursday, June 12, people who attend are encouraged to wear purple, or other favorite color, because purple was Rebecca's favorite color. And she loved color. She just loved bright colors. She loved wearing bright colored dresses, and all that sort of thing. We didn’t want people to think they had to show up all in black. It was like, show up, wear purple in her honor or wear your favorite color. So that was the whole reason.
But Matt Robin, I believe, said we should all turn our avatars purple, the 12th. He might have suggested 663399 as a color to use so that there was some sort of commonality. But that quickly snowballed into people saying there should be a CSS named color called Rebecca Purple. Well, people are saying a CSS named color called Becca Purple, because Becca was what most people called her. I was the only one who ever just used her full name all the time. And it quickly snowballed. It became a #663399Becca and I guess it happened. People did it. I was at the funeral, so I wasn't super online that day. Then it was proposed to the W3C the CSS Working Group as 663399 should be called Becca Purple. The working group got in touch with me and asked me if this was okay, and I said it's okay. I can understand why people might object on process grounds or on the grounds that this is not a thing we've ever done before or whatever. If it happens, that's fine. If it doesn't happen, that's also fine. But if it does happen, Rebecca told us when she turned six, she wanted everyone to call her Rebecca because Becca is a little baby name. So I said, if this happens it has to be Rebecca Purple. That's the only condition I have. And I'm fine with it either way, if it happens, if it doesn't happen, just if it happens, it has to be this name. And it happened really fast. It was added to browsers practically before June was over. And now people find out about it because in browser dev consoles, when you type color, and then you start to type red, the re...
IVAN: Oh, it’s reb.
ERIC: Because Rebecca, Reb comes before red. So Rebecca Purple is the first thing on that list before you type the d for red. And so, people find it and occasionally people will wonder where that name came from. So they'll start searching, and they'll find out about it. And then occasionally, I'd get email, and more often I'll see things on Twitter, people saying I just learned this story.
Even to this day, I don't know what to say about any of it really, in some sense. I can talk about it at length and yet, when people say there are no words they’re right. There are no words. And when people say I can't understand it, I tell them I don't understand it either, and I lived it. It’s just some things that can't be understood. They just have to be survived in some cases.
IVAN: Yeah. Thank you for sharing, Eric. And thank you for telling the story, and I'm so sorry for your loss. I watched it online and you have an effect on people when you talk about it. And I think it's a positive effect. I very much appreciate you sharing. I'm grateful that you were able to do that in whatever capacity you've been able to do that. And I'm sorry for your loss.
ERIC: Thank you. I appreciate you asking. And I do have to say, as much as I would wish that Rebecca Purple never had to be a thing, it's an amazing moment of community. When I think about it, it reminds me that this is a community. It's not just an industry, it is a community. And communities are made of people. Industries are made up of people too, right. But it's a community made up of people and people decided to do this. And some people objected. And if any of them are listening now I bear absolutely no ill will. The objections were grounded in rational grounds. I get it. And if the working group had said, You know what, no, the CSS specification is not a place to honor people. There are other places to honor people, I would have 100% accepted that. I still would have the same feeling, that the community organized to do a thing and that's how almost all of this happens. It's not a case of us in the community waiting for the W3C and browser makers to bestow their gifts upon us. That's not how this works. It’s the community.
And sometimes it can take a long time, don't get me wrong. People have said for 20 years, CSS is a presentation language, but it's not a layout language. We use it for layout, but it doesn't have a way to describe layout. And we need layout, it took 20 years for Grid to answer that. But it happened and it wouldn't have happened if it hadn't been for the community saying over and over and over again, we actually want a layout language, not just a presentation language. That's where we got. And like I say, it took forever. It doesn't always take that long but sometimes it can.
For that matter, the community around preprocessors, LESS and SASS and those sorts of things, people create mix-ins and extensions and do stuff using the programming features that are built into those preprocessors. And then a working group sometimes, when a thing becomes popular enough will standardize it.
CSS variables are an example. Color functions. The working group is working on color function. So you can do things like tint or shade or otherwise, modify a color without having to supply a raw color. You could say, take this red and make it 40% lighter using the color function. That's been a LESS, SASS whatever for quite a while now. And popular enough that the working group said, Yes, we should do that thing. That should be built into the language.
IVAN: It’s amazing when the community comes together and functions like that. It’s just so wonderful to see. One final question before we wrap up. What's keeping you busy these days? What's interesting? What are you looking forward to?
ERIC: What I'm looking forward to is the work I'm doing at Igalia, which is an open source software consultancy based in Spain. Most people are probably unfamiliar with that name. But remember, when I was talking about how CSS Grid dropped in a bunch of browsers at once, Igalia completely wrote the Grid layout for Chromium. They are a big part of the reason why that happened. Because Bloomberg, the financial business, wanted a Grid layout. And there were Grid specifications, but it needed to be implemented. And so, Bloomberg hired Igalia to do that because Bloomberg couldn't hire Google. Bloomberg has a lot of money, but not that much. [laughing]. So they hired Igalia and people at Igalia worked on that, and helped make that happen. I started working for them in mid-February. I'm doing a lot of documentation. A lot of standards work. I just rejoined the working group. Thanks to Igalia being a W3C member, they appointed me to the working group.
ERIC: Yay, I'm back. I'm going to do testing again.
IVAN: [laughing] What a nice circle. What a wonderful full circle.
ERIC: Time is a flat circle. What are you going to do?
IVAN: That’s awesome. So you're looking forward to being part of the working group again, then you're doing this wonderful work with Igalia. That's awesome.
ERIC: Yeah. And I'm looking forward to college tours with my soon to be senior high school teenage daughter. We're doing that this summer. Looking forward to our youngest, who is going into fifth grade, that sort of thing. There’s a lot going on. And I'm looking forward to looking forward to summer.
IVAN: Yeah, I am too. No masks. The pandemic's winding up. It's hopeful.
ERIC: Hopefully it’ll cool down a little bit for you. It’s been super-hot I hear.
IVAN: Yes, it has. Minneapolis has been insanely hot for the last week or so. Just crazy.
ERIC: Yikes. It’s not a million degrees and full of cicadas. So there's that.
IVAN: [laughing] Right. Thank you. Thank you so much for your time today Eric. It's been so amazing talking to you.
ERIC: It's been great talking to you. Thank you for having me on. I really appreciate it.
IVAN: Eric Meyer is an author, developer, web consultant and champion of web standards. You can find him online at meyerweb.com which has been around in one form or another since the nineties.
You've been listening to the TEN7 Podcast. Find us online at ten7.com/podcast. And if you have a second, do send us a message, we love hearing from you. Our email address is [email protected] Until next time, this is Ivan Stegic. Thank you for listening.