How to Appropriately Use Web Development Jargon
To say I am the authority on Web Development Jargon is a lie, and I am far from an authority compared to many great developers who know much more about development than I do. However, in managing hundreds of web projects over the last four-plus years, I have found that simply using the wrong word can cause massive confusion and even destroy a project budget or timeline.
Everyone wants to outsource to overseas companies that can do cheaper web development. The problem with that is the difficulty in communication is so great, that this often results in terrible results, or even worse, useless code or work. Communication and using proper or some sort of standardized terminology is the best way to counteract this potential problem when working with developers, both overseas or in the US.
Here are some common terms in the web development world:
UX or User Experience refers to the actual experience and flow of the website. How you interact with the website to find information, perform an action like buying a product, or register to an event.
UI or User Interface refers to the look and feel of the website. Is the website pretty, or easy on the eyes? Does it feel in sync with the brand or colors you would expect? This is the colors, the fonts, the images, and the way the website looks from a visual standpoint.
Wireframes are typically black and white representations of a web page that are used to demonstrate the user experience and layout of a website. Wireframes are typically part of the user experience process.
Visual Designs are the final designs that are typically done once the wireframes are approved and represent the UI of the website. These will include the final colors, fonts, images and everything that the web page will look like.
Interactive Design refers to the creation of live prototypes via platforms like Invision or other interactive prototyping tools as well as potentially creating live interactive web pages as the designs.
HTML & CSS refer to the actual front-end code of the website such as the text, font, colors, buttons, forms, images, and actual elements of the live website.
Ajax is a programming language that allows you to automatically display other elements from the database without reloading the entire page. So, for instance, the term ajax add to cart means you can automatically add what’s in your cart to your cart, see if show up in the cart if there is a mini cart, without reloading the entire page, improving site speed and the user experience.
Backend Development typically refers to anything that requires server-side programming, a major programming language like PHP, Java, Python, or ASP.net, database programming like MySQL, hosting and development operations work, or anything with complex logic, that is not relevant to the obvious front facing portion of the website.
Development Operations is a vague term but typically refers to the process of managing code versions through something like Git, managing servers for a production website, a staging website, and other reasons, as well as managing deployments of code.
Hosting is the actual server and physical platform that is responsible for displaying the website on the Internet. Without hosting your website would simply not be viewable by anyone online. A codebase has to be hosted on the appropriate servers so that when a user clicks on the website address it can load and access the website via those servers.
DNS or Domain Name Services is the actual service that is routing your domain name to the servers leveraging IP address. Without DNS you would not be able to get to the appropriate code on a hosted server associated with that website. Your domain name must be routed to your hosting via DNS.
Git / Version Control is the technology that allows you manage multiple code versions of a website. This is important because if you have one or multiple developers on a project, they can use Git to manage the different features and variations in the code they are working on. This allows multiple developers to work no different features and merge code into one master code branch as well as revert back to older code if something built is not working properly or causing issues.
API refers to the technology that allows a software or platform to share data with another source. Therefore you can consume or push data to a software via API’s. If you need to integrate two software you may need to utilize both API’s of each software or simply one of the API’s of the software.
Database refers to the actual database of tables or in some cases NoSQL non-relational databases in which the data of your website or software are being stored. This is all connected and part of the website or software infrastructure.
Code Base is the actual collection of files and code that run a particular software or website.
Script is terminology that often refers to a specific set of code that can run a task or do something such as upload data to a database in the right order.
Cron Job is a software utility tool that allows a programmer to schedule a specific job or task to run at timed intervals, such as every minute, hour, or day.
Full Stack Developer: Often the most coveted type of developer refers to a developer who can handle the entire stack of an application for hosting and dev ops to backend and front-end development.