/ethical-web-dev

A series of short books on ethical web development

Ethical Web Development

As web developers, we are responsible for shaping the experiences of user's online lives. By making choices that are ethical and user-centered, we create a better web for everyone.

In Tim Berners-Lee's The World Wide Web: A very short personal history, he states:

The dream behind the Web is of a common information space in which we communicate by sharing information. Its universality is essential: the fact that a hypertext link can point to anything, be it personal, local or global, be it draft or highly polished. There was a second part of the dream, too, dependent on the Web being so generally used that it became a realistic mirror (or in fact the primary embodiment) of the ways in which we work and play and socialize. That was that once the state of our interactions was on line, we could then use computers to help us analyse it, make sense of what we are doing, where we individually fit in, and how we can better work together.

We have the opportunity to drive that vision of a universal web for everyone forward.

Ethical Web Development will be a series of short digital books that explore the ethics of practical development topics. The books will be released throughout 2016 and early 2017 as free downloads from O'Reilly.

Building Web Apps that Work For Everyone

  • Progressive enhancement
  • Web accessibility
    • Using a screen readers and the keyboard to navigate the web
    • WCAG 2.0
    • Accessibility testing
  • Building inclusive forms

Building Web Apps that Work Everywhere

  • Responsive design
  • Web Performance
    • Performance Budgets
    • Measuring Web Performance
    • Improving performance
  • Deep links
  • Offline
  • Building offline-first apps

Building Web Apps that Respect A User's Privacy and Security

  • https
    • Why https everywhere?
    • How to implement https
  • Web tracking
    • Introduction
    • Detecting "do no track"
    • Establishing a "do not track" policy
  • Secure user data
  • Data exporting

Building Web Apps with Others

  • Coding standards
    • Linting
    • Testing
    • Continuous Integration
  • Open Source
    • Contributing to open source
    • Using an open source license
    • Consuming open source code
  • Treating other developers with respect
  • Offering and following a code of conduct for open source projects

Charities

For each title I will be donating 20% of the proceeds to a charity that promotes and encourages the open web.

Contributing

I really appreciate feedback and contributions to this project.

For feedback, please create an issue or you can email me directly at adamdscott@protonmail.com.

If you are interested in contributing, please read the CONTRIBUTING.md file for more details.

Code of Conduct

This project adheres to the [Contributor Covenant 1.4][code-of-conduct]. By participating, you are expected to honor this code. Please report unacceptable behavior to adamdscott@protonmail.com. [code-of-conduct]: http://contributor-covenant.org/version/1/4/