Move the Web Forward

You can make the web as awesome as you want it to be.

You love web standards. You want to give back to the community. Curious about where to start? We're here to help.

Whether you're a talented web developer, web-slinging since the days of tables and font tags, or you're a hobbyist hacker, there are a number ways for you to give back. Below, we list some of the ways that anyone can contribute back to the web platform.

Our goal is to make it easy for anyone to get started contributing to the platform, whether that's learning more about how it works, teaching others, or writing specs. The web has grown due to people like you, and we want to make it even easier for people like you to give back.

Level up!

You're damn good at what you do. Let's dive into the community!

Learn

One of the most beautiful things about the web is that it's constantly changing. While these changes and improvements can be overwhelming, we're here to help you get caught up! Here are some great resources to walk you through how browsers work, and help keep you up to date on their improvements.

How do I keep up with what’s landing in browsers?

Follow them on Twitter

You should probably follow: @oDevRel (Opera developer relations), @ChromiumDev (Chrome developer relations), @mozhacks (Mozilla's web developer outpost) & @IE (Internet Explorer Team)

How do I understand how browsers work?

Other learning resources

  • CSS-tricks - provides a wealth of articles, tutorials, and downloads for the web design community.
  • HTML5doctor - a great resource for people wanting to learn about HTML5, its semantics, and how to implement it today!
  • Dive into HTML5 - takes an in depth look at a selection of HTML5 features.
  • Addy Osmani’s blog - tons of great articles for people who want to learn more about jQuery, JavaScript, HTML5, and CSS3.
  • Paul Irish’s blog - all about helping you build cool websites and keeping you up to date on the latest news.
  • Dev.Opera - Articles for learning about HTML5 features.
  • Web browser, frontend and standards feeds to follow
  • YUI Theater - Videos of talks about frontend engineering and web technologies given at Yahoo! over the years (many of them unrelated to YUI).

Reference docs/wikis

  • Mozilla’s MDN - awesome documentation regarding HTML, CSS, JavaScript, the DOM, and more. It’s also a great place to contribute! Read How to help and learn how to get started.
  • InstaCSS - quick UI to access the CSS documentation from MDN.
  • Forward-compatible websites - list of best practices for creating websites that won’t break when browsers are updated.

Itching to learn?

All it takes is a quick read of a few articles or tweets and you can scratch that knowledge bug! Trust us – once you’ve gotten started, it just keeps getting easier.

Yes, I want to do this!

Here are some developers who want to do this too:

Meet like-minded folks

Attending local meetups and conferences is a great way to connect with other developers to learn, share resources, and bring new ideas and collaborations to life. Sites like Meetup.com and Lanyrd can help you find events in your neighborhood.

Ask for help

Answer questions and participate in conversations on IRC

How to get started with freenode and irc

  • Freenode IRC channels: #html5 / #css / #javascript / #whatwg / #jquery / #yui (on irc.freenode.net)
  • Mozilla IRC channels: #css / #js (on irc.mozilla.org)

How to ask for help

  1. You’ll probably want to make a jsfiddle first.
  2. Create a reduced test case
  3. Remember: be specific!
  4. Ask on IRC, StackOverflow (even its javascript chatroom), or a group of friends

A helping hand.

We've all gotten to where we are by relying on others for help at some time or another. Don't be shy, and just ask! Just please make a jsfiddle first. =D

Yes, I want to do this!

Here are some developers who want to do this too:

Dig Deep

You clearly know your way around. Now it's time to show it.

Help Others

We've all got to start somewhere! Helping others reassures your knowledge, and also broadens the amount of concepts you're exposed to. Below are some great Open-Source projects that are always looking for help. Remember - no patch is too small!

Open-Source projects worth your time

Do what is asked in ‘ask for help’ above and check out Addy Osmani’s podcast about getting involved!

Pass it on!

Reading awesome code leads to writing awesome code. Look into the great projects listed below, and help them grow to be even more great than they already are.

Yes, I want to do this!

Here are some developers who want to do this too:

Give Feedback on Specifications

Specs codify the expected behavior. They are developed by Working Groups (WG) along with active discussion on mailing lists. While we can’t always be certain that all browser vendors will adhere to the rules set forth in a spec they provide us with something that we, as developers, can standardize against.

Are you specced out?

We're the ones using the specs, so why don't we help make specs we love? Let's stand up for standards, and help make these even better!

Yes, I want to do this!

Here are some developers who want to do this too:

Explore Frontend Features

Once you’ve picked up the basics, it’s time to dive a bit deeper into the current (and future) state of web standards! Get excited, because here, we check out advanced CSS, brand-new HTML5 features/APIs, and even what the future of these languages are expected to be. Several new capabilities are now available in browsers, and exploring these new capabilities will help us push the web forward!

Examples of how to explore features well

Cool features to explore more (and write about)

Browsers ship new CSS features all the time. The vendor prefixes we love to hate are actually there so we developers can provide feedback on if the feature meets our needs. Encourage yourself to investigate if they do! This vendor-prefixed CSS property overview, by Peter Beverloo, has a lot of experimental CSS mentioned; much of which is not well understood. Consider writing about them and the items below:

Explore the unknown!

Go for it! The only way to move the web forward is to dig in and used advanced features and APIs. Have fun - we know you will!

Yes, I want to do this!

Here are some developers who want to do this too:

Write

Publish what you learn and don’t be afraid to make mistakes. Publish to your personal blog and keep your posts updated. Be sure to speak with your own voice! Remember that it is okay to not be an absolute authority on a subject to author a post! Always ask questions and prompt conversations. There is seldom a wrong question or a wrong answer.

Teaching is a great learning tool as well. So, even if you are getting started in an area, you’re helping yourself by writing about it as well. You can always consider asking a mentor or friend for a technical review. (Addy’s done that with aplomb)

What should you write about?

Something you can teach others! Here are some ideas:

  • Why do the <br> and <hr> elements (or any element) exist?
  • How to create a slideshow with the least amount of code?
  • What is the DOM? Why does it exist?
  • Check how browsers implement a specific property and compare it to the spec.
  • How a popular website implements their homepage (with suggestions for improvement)
  • How you would fix a popular website's faults (long load-time, invalid JS, etc...)
  • Take a popular demo and make it something else (or use it practically).
  • Make a summary of popular ideas around the web lately
  • Your experience contributing to an open source project.
  • How CSS preprocessors can lead to stringy and bad code if not managed correctly
  • If you are a native speaker of a language other than English:
    • Translate some popular English web dev posts.
    • Elaborate on some of the features in the specs.

Write this down!

Regardless of how many twitter followers or github watchers you have - write about what you learn!

Yes, I want to do this!

Here are some developers who want to do this too:

File bugs

Seriously, all browser vendors would much rather you file tickets with them than tweet about bugs. =D In fact, IE10's platform previews is a great opportunty to file bug reports so things are fixed before they freeze the browser.

Stop bugging out!

This is the quickest way for browsers to get better - by filing and working on bugs. It takes just a few moments, and anybody can do it.

Yes, I want to do this!

Here are some developers who want to do this too:

Virtuoso!

You are the expert and you are bored with all these suggestions? May we suggest you these?

Hack!

Push the web to its limits! Hack on CSS, advanced HTML, and JavaScript. Hack on the browser's rendering engine. Fork github repos, dig through the code, and keep on learning. Let's make the web more awesome. There are so many ways…

Contribute to browsers

Contribute to Test Suites

Test cases are fundamental to standards and to browsers. They assure things work the same across browsers. Yet right now, the W3C test suites don't have nearly as many tests as they need. Tests are written in the languages of web developers: HTML, CSS, and JavaScript.

Contribute to specifications

Contribute to validators

I’m in your codez!

Just build stuff. Experiment, fork repos, dig through code. Contribute to the browsers, specs, validators, or great Open-Source projects!

Yes, I want to do this!

Here are some developers who want to do this too: