Jay Taylor's notes

back to listing index

A Front End Engineer's Manifesto

[web search]
Original source (f2em.com)
Tags: user-experience frontend mani manifesto f2em.com
Clipped on: 2014-08-18

A Front End Engineer's Manifesto
  1. Most importantly and above all, I will put the needs of the user first over my own needs as a developer.

    #Permalink

  2. Progressive Enhancement and Unobtrusive JavaScript are my tools.

    Without JavaScript or CSS, or without mobile Webkit, my site may not look pretty but will still be functional.

    #Permalink

  3. Simplicity is Respect

    I will not unnecessarily tax my users' brains with complicated designs and user interfaces. I will strive to make interactions succinct and minimize mental overhead.

    #Permalink

  4. I will educate my friends and family that Web Browser choice matters

    Web Browsers should at minimum properly implement web standards and should be responsive to the advancing web. Web Browser Choice should be separate from picking an operating system. This is especially important for mobile devices.

    #Permalink

  5. I believe in the power of the Open Web

    My content was accessible when full Flash / Flex apps were popular, and I will continue to provide accessible device independent content in the face of App Store ubiquity.

    #Permalink

  6. I acknowledge that Performance is Critical

    My own developer hardware is not representative of the real world, and will be mindful of limited hardware, poor latency, and low bandwidth situations.

    #Permalink

  7. I will learn at the root, not the abstraction: JavaScript before jQuery or YUI, Prototype, Mootools, et al.

    #Permalink

  8. I believe that Open Source Code and royalty free tools represent the best future for the Web.

    Especially when considering file formats and codecs for images, audio, or video.

    #Permalink

  9. I will not underestimate the importance of accessibility

    It is not just about helping users that may have trouble differentiating colors or difficulty reading small fonts, but is about providing comprehensive access for users that may prefer to use either the keyboard or the mouse; in providing a clean print friendly format; in providing content to devices of varying technological capabilities.

    #Permalink

  10. I will give back to the Community

    I will contribute workarounds, fixes, and document issues that may help others. I will file bugs at the source with the web browser’s bug tracker.

    #Permalink

  11. I will continue to foster both hemispheres of my brain

    I will better myself not just in math and code, but also in art, music, design, and usability.

    #Permalink

  12. I will do my best to keep my knowledge current

    I understand that I cannot learn everything and will be mindful of what I do not know.

    #Permalink

  13. I accept responsibility for View Source

    I will take care to use approaches that will be compatible with current and future web browsers, including preference for feature detection over user agent sniffing when it does not violate rules #1 or #5.

    #Permalink

  14. My code will be portable

    I will be mindful of overzealous CSS specificity, overuse of CSS !important, the global JavaScript namespace, as well as numerous browser implementation quirks.

    #Permalink

  15. I will choose the right tool for the job

    Whether it be a big choice between a full stack framework and a simple DOM-centric library, or even the simple choice between CSS and JavaScript to solve a task, I will educate myself on the mistakes of those before me to make the correct choice for my project.

    #Permalink

  16. I will strive to create secure applications

    I will properly escape my output and code to prevent XSS and CSRF. I will not store sensitive information in Cookies, and will use HTTPS where appropriate. I will be responsive in correcting issues that may cause harm to applications I have created.

    #Permalink

I am a Front End Engineer.
From the brainheart of @zachleat, on giants' shoulders. Read the blog post.
AxmTYklsjo190QW
AxmTYklsjo190QW