Web design is a term that is broadly used by many people to describe the process of creating a website. Some people interchangeably use the terms “web design” and “web development”. However, web design and web development are actually two separate processes, both of which take place during the creation of a website.
What is Web Design?
Web design is the process by which a “web designer” conceives a web design layout with a focus on appeal and usability.
There are 2 Types of Web Designers
User Experience Design (UX Design)
User Experience Design focuses on optimizing the usability of a website and how that impacts the “user”(web visitor) experience. The priority of UX design is to design a layout that offers a seamless flow making it easy and intuitive for users to find what they are looking for.
User Interface Design (UI Design)
User Interface Design focuses on creating the interfaces, such as graphics, typography, buttons, navigation, calls-to-action and images, used in input controls and informational elements, that provide an optimal user experience.
What is Web Development?
Web development is the process by which a “web developer” codes a web design provided by a web designer, into a fully functioning website. Web developers are often referred to as “programmers” because their responsibilities include web programming and database management.
Ultimately, a web developer’s job is to build (code) a website that functions well.
There are 3 Types of Web Development
The part of a website that is on the server (“server-side”) is considered to be the “back-end”. Thus, the back-end includes the “database”, application programming interfaces (APIs) and web servers. This is the part of the website that is not viewable or directly accessible to the general public (users).Of course, information from the database are indirectly accessible to users via a front-end application. Back end development involves the utilization programming languages and frameworks that usually include PHP, Ruby on Rails and a run time open source development platform such as Node.js.
Full Stack Development
Full stack development requires a comprehensive knowledge of an entire “technology stack”
This includes the set of technologies necessary to quickly and efficiently build end-to-end web applications. Thus, a full-stack web developer should be able to build complete web applications and websites. A full stack developer should also be able to determine which technologies are best suited for their project early on in the process.
Full stack development requires:
- Selecting the appropriate technologies for a given project development that includes robust testing on both the front and back end.
- Writing efficient code across the technology stack using best practices.
- Utilizing the latest technologies and tools which helps in making the best technology usage decisions.
- Troubleshooting/debugging any issues with web applications or websites.