If you've been keeping up with Web Industry Terms Part One and Part Two, you know you want a CMS to make updating content easier, HTTPS to have security and that your website lives on a server. Now, let's jump to a new stack of terms!
“This isn’t in scope,” is a sentence you may hear when working with a team for your web development project. Scope can actually apply to more than one area of our industry. We’ll often say we want to stay “in budget and on scope” to a client because we want that client’s project to be a success.
“Scope” in this sense refers to the approved business goals and functionality for the project. We work with a client to define these items early on and mutually agree to stay within these goals. If a suggestion for a specific feature is brought up that doesn’t fall within our original goals and guidelines, then it’s considered “out of scope”. The other instance where you may hear scope being brought up actually relates to the next industry term of this article.
You may hear a developer groan if they’re asked to implement some form of third-party application into a website or app, and are then told said application doesn’t have an API. Why is that?
An API, short for application programming interface, can actually refer to several different types of interfaces. For the purpose of this article, we’re referencing APIs that help to contribute to data used for web development. A Web API provides various points that a developer can reference through code in order to nab data from a specific source and then do stuff with said data. This requires that the API allows access to said data, or that the developer has some form of authentication or a token to access this data. APIs don't exist by default until they are built (hence the grumpy developer issue when needing data from a third-party) and may not contain all of the data possible. This is where scope comes in again - the API may not contain the entire scope of data available or it may require extra configuration to get said scope.
Think of an API like a restaurant. First, the restaurant has to exist before you can go and order food. But, if the door is locked, you can't go in to even attempt to order. Once you're inside, the restaurant, there's a set menu of specific items you can order. Trying to ask for pancakes when the menu doesn't even include any form of breakfast food wouldn't work, just like asking for specific data from an API that doesn't offer it won't get you anywhere.
Many major tech groups offer the ability to use an API they've built for their platforms, such as Twitter, Wordpress and Mapbox. It varies depending on the company what’s possible using said APIs. Some examples can include fetching/displaying the latest tweet for a hashtag, updating posts for your WordPress site, or creating interactive pop-ups of data for a map.
If you’ve enjoyed getting content from a website or application at lightning fast speeds, there’s a good chance that they’re using a CDN. A Content Delivery Network (CDN) is a distribution of servers across a region. When a user accesses a website or application that’s using a CDN, they actually get sent content from a server that’s closest to that user’s physical location.
An example of this if a customer hits your e-commerce website while traveling to New York, the site’s files and content comes from a server closest to New York. If that same customer catches a flight to St. Louis and goes back to the website after landing, the content is delivered from a server close to St. Louis instead. By using a server that’s physically closer to said customer, the website is much faster and has better performance compared to if the website distributed only from a single server across great distances. Not only that, but having a CDN provides reliability should you get a giant spike in traffic, something that would potentially cripple a single server.
Getting a CDN depends on your needs and what your current hosting has available. Some hosting companies like WordPress Engine actually include a CDN as an additional option for their hosting plans. Otherwise, you might have to get a CDN added and configured using a separate third-party service, such as CloudFlare.
I’ve been using some extra characters to type out the entire word “application” the last several paragraphs. Probably because I’m an English minor and certain shorthand words annoy me. Regardless, the shorthand term for application is app, and the most common context for it refers to mobile phones and tablets. These types of apps are also referred to as native apps, meaning they don’t require a web browser and are built to run specifically as a separate program on the operating system of the device.
However, applications exist beyond the range of portable devices. It can also mean a web application, which is built to run in a web browser and exists outside of the Apple Store or Google Play Store. The distinction that separates a web app from a website isn’t always very clear, especially considering how much is possible on the web. One general consensus is web applications are full of robust functionality that makes them similar to software installed on a computer. Using a service like Gmail is considered a web application, but visiting a page like this that describes the features included in Gmail is considered a website.
The term plugin generally refers to a pre-existing code that adds on an extra feature to an already existing and separate codebase. They're not exclusive to WordPress sites either, as plugins can be added to web browsers or even code editors. Plugins also range in size and purpose, such as adding functionality for event management to a framework for a responsive mobile menu.
Depending on where the plugin comes from, it’s also sometimes a dirty word for developers. Since plugins are developed by a third-party, adding one will create a dependency on someone else for how well the plugin was built, functions, and its frequency of updates. This doesn’t mean that plugins should be avoided entirely - there’s plenty of responsible plugin developers who maintain their code and provide speedy updates for security concerns. It just means a plugin should be fully vetted by a developer to make sure they’d be beneficial and not cause complications later on.
The following are just some of the most frequently used languages for the web. If you were to spot a file on a developer’s computer that ended as with these terms as the file extension, now you’ll know their secrets...
HTML: This refers to HyperText Markup Language and it’s one of the earliest and most basic ways to build a website. (Seriously, 7th grade me spent a lotta time building with this). HTML is a document that describes content on the web based on a variety of HTML elements. This list of possible elements is quite long and has been edited and added to over the last 20 years or so.
During the 90’s and early 2000’s, if you were to look at the URL for a website you’d see pages that ended with .html. Nowadays, you won’t usually see this extension in your browser’s address bar, but the output is still HTML. You can take a peep at the processed HTML by using the Inspector or View Source feature of your favorite web browser.
CSS: While content is controlled by HTML, the way that content is laid out is controlled by Cascading Style Sheets or CSS. This presentational design can range from something as simple as font sizes to arranging blocks of elements into a grid that responds to viewing size.
Early websites actually had the style and design smushed in with HTML elements, but this became unsustainable the bigger the web grew. CSS files now often exist as separate files that the HTML document brings in. The possibilities of CSS are extensive and oftentimes overwhelming, especially since newer properties depend on browser support.
PHP: The main issue with HTML that developers realized early on is that it wasn’t dynamic - what's written in an HTML file stays the same because it's a document. Essentially, the larger the website, the harder it got to manage in vanilla HTML because updating its contents requires updating numerous individual files. This is where a programming language like PHP comes in handy: It allows for the server to process various script commands (which are written in PHP language) and then return the results as HTML. So long as the server has PHP installed, a developer can write code to create templates used for multiple site pages, ask a database to return the first ten results of a specific blog category, or load different error messages based on conditions.
Originally, PHP actually stood for Personal Home Page, which was the purpose behind its creation for the original developer. It’s since been reclassified as Hypertext PreProcessor, but now you can win at Web Dev Trivia night knowing its original abbreviation.
Atomic design is a helpful design and development methodology which promotes consistency and cohesion across your entire experience and helps save time and money.
This blog post and related image were created by artificial intelligence (AI)! Can you tell?