# Learn multi-thing development
![](https://box.kancloud.cn/2015-10-19_56245612becd0.jpg "http://bradfrost.com/blog/post/this-is-the-web/")
image source: [http://bradfrost.com/blog/post/this-is-the-web/](http://bradfrost.com/blog/post/this-is-the-web/)
A site or application can run on a wide range of computers, laptops, tablets and phones, as well as a handful of other things (watches, thermostats, fridges etc...). How you determine what things you'll support and how you will develop to support those things is called a multi-thing development strategy. Below, I list the most common multi-thing development strategies.
- Build a [responsive (RWD)](https://en.wikipedia.org/wiki/Responsive_web_design) web site/app for all things.
- Build a [RESS (responsive web design with server-side components)](http://www.lukew.com/ff/entry.asp?1392) web site/app for all things.
- Build an [adaptive/progressively](https://en.wikipedia.org/wiki/Adaptive_web_design) enhanced web site/app for all things.
- Build a website, web app, native app, or hybrid-native app for each individual thing or a grouping of things.
- Attempt to retrofit something you have already built using bits and parts from strategies 1, 2 or 3. This could be as simple as sprinkling in some screen-size agnostic UI parts or attempting to fully support other things with the entire UI.
##### General Learning:
- [Adaptive Web Design](http://adaptivewebdesign.info/) [read][$]
- [Designing with progressive enhancement](https://www.filamentgroup.com/dwpe/) [read][$]
- [Responsive Typography](#) [watch][$]
- [Responsive Web Design](https://frontendmasters.com/courses/responsive-web-design/) [watch][$]
- [Responsive HTML Email Design](https://frontendmasters.com/courses/responsive-email/) [watch][$]
- [Designing Multi-Device Experiences: An Ecosystem Approach to User Experiences across Devices](http://www.amazon.com/Designing-Multi-Device-Experiences-Ecosystem-Approach/dp/1449340385/ref=pd_sim_14_8) [read][$]
- [Responsive Web Design Fundamentals](https://www.udacity.com/courses/web-development) [watch]
- [Responsive Images](https://www.udacity.com/course/responsive-images--ud882) [watch]
- [Mobile Web Development](https://www.udacity.com/course/mobile-web-development--cs256) [watch]
- Introduction
- What is a front-end developer?
- Part I: The front-end practice
- Front-end jobs titles
- Common web tech employed
- Front-end dev skills
- Front-end devs develop for...
- Front-end on a team
- Generalist myth
- Front-end interview questions
- Front-end job boards
- Front-end salaries
- How FD's are made
- Part II: Learning front-end dev
- Self directed learning
- Learn internet/web
- Learn web browsers
- Learn DNS
- Learn HTTP/networks
- Learn web hosting
- Learn general front-end dev
- Learn UI/interaction design
- Learn HTML & CSS
- Learn SEO
- Learn JavaScript
- Learn DOM, BOM & jQuery
- Learn web fonts
- Learn accessibility
- Learn web/browser API's
- Learn JSON
- Learn front-end app architecture
- Learn Interface/API design
- Learn web dev tools
- Learn command line
- Learn node.js
- Learn module loader
- Learn package managers
- Learn version control
- Learn build & task automation
- Learn site performance optimization
- Learn JS testing
- Learn headless browsers
- Learn offline dev
- Learn security
- Learn multi-thing dev (e.g. RWD)
- Directed learning
- front-end schools, courses, & bootcamps
- Front-end devs to learn from
- Newsletters, news, & podcasts
- Part III: Front-end dev tools
- General front-end dev tools
- SEO tools
- Prototyping & wireframing tools
- Diagramming tools
- HTTP/network tools
- Code editing tools
- Browser tools
- HTML tools
- CSS tools
- DOM tools
- JavaScript tools
- App (desktop, mobile, tablet etc..) tools
- Templating tools
- UI/widget tools
- JSON tools
- Testing framework tools
- Data storage tools
- Module/package loading tools
- Module/package repo. tools
- Web/cloud/static hosting tools
- Project management & code hosting
- Collaboration & communication tools
- CMS hosted/API tools
- BAAS (for front-end devs) tools
- Offline tools
- Security tools
- Tasking (aka build) tools
- Deployment tools
- Site/app monitoring tools
- JS error monitoring tools
- Performance tools