Remember that time someone used a phrase or term and you didn’t quite get it? There’s that feeling that you’re outside of a really good inside joke and then come to find out, it was just a phrase that meant something simple like “nice work.” If you think we are referring to that time your teen was quoting an online streamer, that’s a topic for a different article. We are talking about the all important development terminology. Words like “reboot” or “AFK” (away from keyboard) might make you feel like you’ve missed out on something because you didn’t major in computer science. If this is you, add some cream and sugar to your coffee and grab a notepad because we’ve got you covered.
Below is a list of common terms and phrases typically used by developers with an explanation for their meaning and significance:
General Terms and Phrases
Meaning: Generally refers to restarting something, such as your computer. Can also mean to start over or make the same thing twice.
Example: Hollywood must be running out of ideas, because they have been rebooting classic TV shows.
Data vs Information
Data: Facts or statistics gathered for analysis
Information: Facts provided or learned about something
Comparison: Information is data with context. If we told you a series of numbers, that is data, but if I start to tell you what those numbers mean, it becomes information.
Meaning: Often confused with servers (see more about servers below), database is a term that simply refers to the storage and organization of data. Most software applications these days will have a database.
Context: When you hear the phrase “Database Architecture” this is referring to a very conscious effort to organize data in a way that will allow users to access a variety of information efficiently. For example, in order to search a large amount of data, that data needs to be organized in a manner that will allow efficient searching. Just because the data is ‘there’ doesn’t mean it is easily accessible or quickly searchable and that is where a good database architecture can make or break your application.
Meaning: To understand something to the degree that you are connected with it. So if someone were to learn a particular software language and came to understand it so intimately that it becomes one with them, part of them, they have grok’d it.
When to use: When you really, truly understand something on a high level.
API: Application Programming Interface
Meaning: Often used to describe a seemingly ‘magical’ way to make things work, API is actually just a set of rules and procedures built to interpret input and return a result. API stands for ‘application programming interface’ and is a channel to request and receive data from the server in a pre-defined structure the interface can use. Integrating systems gets much easier if there is an official API available. In a real world analogy, if you were ordering food in a restaurant, the API would be the server, delivering your request and then later returning your request. It’s one part of a programming process, but is of key importance. This has become a ubiquitous term because it is common for developers to tap in to other group’s API’s for software integration.
Meaning: Simply put, a bug is an unexpected issue in software. Oftentimes, it’s a seemingly minute error in the code that wreaks havoc internally causing odd glitches or problems while using a software. Learn more about bugs and bug reporting here. More recently, developers prefer the term ‘issue’ or ‘feature request’ as these better describe the nature of what is needed.
Meaning: Simply put, servers are places that store a large amount of information. The server is the remote computer (or virtual computer) that manages the brains of the system and sends it back to the application or browser. These days, few servers are individual boxes running on a network and are, instead, a piece of a large multi-machine infrastructure where resources are used dynamically between many different virtual ‘servers’ as needed. When someone accesses a website, they are actually loading information from a server somewhere.
Fun Fact: When a bunch of these are combined together it is called a Server Farm.
Meaning: To save/archive code changes as adjustments are made.
Explanation: Oftentimes, multiple programmers are working on the same project. In order to minimize accidental overwrites on the same code file, programmers save a history of what they’ve been working on so they can easily go back to an earlier version if needed. When they save code changes to their history, they are “committing” those changes.
Meaning: Sending a set of code changes/updates.
Explanation: When developers create code, it is stored in a central repository. When adjustments are needed, developers typically make changes in an application where they can test and experiment until they are ready to publish these new updates to the live site. A commit saves that ‘version’ of the code, but the push actually sends it to the central code repository for others to be able to use. Once they are ready to do this, they “push” the updated code to the centralized server, where that code becomes available to other developers.
Meaning: You could say deployment is delivering a software product to a client for use by an audience. Often one of the last steps in the development process, software is deployed when all or part of a software product is built and ready for someone to play with. This represents when code is sent to a testing URL for QA or when it is ready for Prime Time on the live site.
What this doesn’t mean to a developer: computer criminal
What it actually means: People who appreciate technology and want to open it up, learn more about it, and gain a better understanding. While someone could use this curiosity for nefarious activities, it is not representative of hackers as a whole. The most common mindset of a ‘hacker’ is to share, improve, and enhance technology together. Thanks to the movies, ‘hacker’ is often used in a negative light, but that is rarely the case in actual development.
We hope some of these phrases and terms will bring out your inner developer and maybe even result in some street cred with your programming team along the way. As far as those phrases from your teen, well, we can’t help you there.