As developers, standards impact much of our day-to-day work, and yet few know how they are made. In this talk, we will cover what the W3C is, what standards are, and the different groups you can join to influence them.
Hi, today, I'm going to be talking to you about getting involved with the web standards. I'm a Web Developer Advocate at Samsung Internet, and I'm also the Co-Chair of the Developer Council at the W3C. I will be talking a bit about what the W3C is later, but first, what is Samsung Internet?
We're a browser available on Android devices. You can download us through the Google Play Store. We value privacy a lot. So we have features such as a smart anti-tracking feature which prevents websites and third-party trackers from tracking you through the internet, which means they can't build a profile on you if you don't want them to do that. As I mentioned, we are available on all Android devices through the Google Play Store. If you have a Samsung phone, then the Samsung Internet browser is on there so you can just start using.
Let's get into today's talk, what are web standards? Well, first, let's backtrack. The W3C. So, you may have heard of the W3C before - you may not have. A lot of people don't know what we do. It stands for the "World Wide Web Consortium" and this is where discussion happens about what the internet should be used like.
What are the standards? The W3C standards define an open web platform for application development that has the unprecedented potential to enable developers to build rich interactive experiences, powered by vast data stores. There should be a lot more commas or full stops somewhere in that paragraph! It sounds kind of convoluted, right?
So I've tried to distill it down to a little bit more simply what the W3C and what web standards are. So if we remove all the fluff, you get, "The W3C standards define an Open Web Platform for application development to enable developers to build interactive experiences that are available on any device." So the things that we need to pay attention to in this definition are "define" and "web", so, really, standards define an open web platform specifically.
We're not talking about mobile apps here, we're not talking about internet of things, or any other things that is connected to the internet. We are specifically talking about the web and browsers, really. And standards define that platform, so it defines how it should be used, how the tools should interact, how web applications should be built for the web platform. That is kind of what standards are in a nut shell. They're rules for how applications should be built for the web platform.
So this is an example standard. This is the CSS Style attribute standard. Here, we can see that it has the version, the latest version, editor's draft, previous version, current editors, previous editors, test suites, and all of this. And if we scroll through, we can see that, in the introduction, we are getting a definition of what this standard is. Here, we are specifically defining the style attributes. If you've ever seen HTML, you will see the style, you can add style as an attribute to a tag. And we are seeing now how this syntax should be defined. How should we use this style attribute? This is exactly what this standard is going to through and explaining, and, if you have some time, you can sit down and read through it as well.
How do web standards work? There are three different types of groups. You can join one of three different types of groups: working groups, community groups, and other kinds of groups. There are more than three, and I would be lazy and put all the rest under "other", because I don't think they're as pertinent to this talk, but I will cover them briefly.
So the first kind of group is a working group. Working groups require membership, and what does that mean? Your company has to pay W3C to be a member organization. That's how we fund the work that happens within the W3C. So depending on the size of your company, the location of your company, profits and revenue, and income for your company, it will depend on how much your company has to pay to be a member. But assuming your company is a member of the W3C, then you can join a working group.
And working groups are where deliverables are produced for the most part, right. So we are talking about standards like the CSS Sometime Attribute, the one we just saw; we're talking about software if necessary; testing suites if necessary, technical reports - things that are practical deliverables saying this is the work that we are sharing or giving to the web community at this time.
Community groups are different. You do not have to be part of a member organization to be part of a community group. Anybody can join a community group. I'm a part of a few community groups - well, one in particular. Community groups are a good entry way into standards, because this is where proposals for standards are usually introduced. Here is where we can get community feedback if this is something the community wants. Any questions the community may, and I'm using "community" very broadly here, because it encompasses many groups of people.
So developers, web users, people who are not technical or who wouldn't cast themselves as technical, we're talking about people who may use just this one specific technology and maybe nothing else. Or who this technology impacts their everyday work, even if they're not going to directly use it, right? So it encompasses all groups of people who would be specifically interested in what is being spoken about in a specific community group.
So, for example, I am part of the privacy community group, and, at the moment, we are looking at some new APIs that are being introduced, such as the first-party set API, a privacy API, which is predominantly run by Google, and they want to know how do we feel about this new API? They haven't launched it yet, so, before they launch it, before it becomes a standard, before they take it to a working group to produce a deliverable, they want to know how do we feel about it? That is what community groups are for generally.
And then you have other kinds of groups, business groups, interest groups, permanent groups. Business groups are mainly for companies, permanent groups you have to be voted in to be part of that group, and then interest groups, anyone can join again, sharing your interests in, et cetera.
How can you get involved in web standards? There are multiple ways to do that. First, you want to create an account. You want to request an account. You fill out all the information on the form, and then you hit continue, and, then somebody will approve your request, and then you have an account. Once you have joined that, let's say you want to join a working group, you go to participate again, and then you click the working group's link, and then you click the list of working groups.
You find the working group you're interested in, which one you want to join - let's say, you join the HTML working group, an HTML summary, I find out how to join maybe the unique rules about joining this particular working group. Assuming there aren't any, or I meet them, whatever, then I can go back, and I can hit "join the group" and then the process will allow me to join the working group. Somebody may have to approve my participation in the working group, but that is really it.
Let's say I wanted to join a community group. Well, the same groups page, I would scroll down, and see the community and business groups, and then I would click on "list of community groups", and there are more community groups than there are working groups. 369 community groups. And, again, I would do the same thing. Scroll until I find the community group I'm interested in. Let's say I wanted to join the accessible info graphics community group. I would click summary. At the bottom of the page, there is a join group button, and I can hit join group, and that's it. I'm now part of the community group, and, from there, I will have information about meetings, I will get emails about meetings, any special events, any special discussions happening, and all of that kind of stuff, and a mailing list I can contribute to.
Some groups may have a Slack channel or an IRC channel that corresponds to the group where asynchronous conversations can happen, but apart from that, that is kind of mainly it on how to join a group, how to get involved.
If you think you want to be a part of a specific working group, and your organization is not a member, speak to your company first. Find out if they are interested in being a member of the W3C, and if they are, they can go through a whole process of that. There is another process on how to become a member.
That's kind of it from me. If you want to follow me, there's my Twitter address, and GitHub. That's pretty much it. Thank you for watching and listening. Take care.