A brief glossary for non-technical folks embarking upon technical projects for the first time.
API Short for Application Programming Interface, an API a way for two apps (or two machines) to talk to each other. This is how software can "mash up" data from other applications into their own. For example, if you type your zip code, I can display the current temperature outside your window:
This is made possible thanks to the Open Weather Map API.
App This could mean many things: short for "application," it can refer to a specific software program built for a particular purpose; often refers specifically to software installed on a smartphone; or it could refer to an appetizer on the menu at your local restaurant, which always confuses me for a moment.
AWS Amazon Web Services. A technical service provided by Amazon for software teams that need to rent cloud-based servers for computation, file storage, or back-end services.
Back-End Software programming concerned primarily with the "brains" of the application, responsible for data storage, computation, and other logic. Back-end systems require some sort of front-end companion in order to make the workings of the system visible to users.
Cloud Generally refers to rented or leased space on servers owned by someone else, usually a company dedicated to providing computational power and storage space to clients so they don't have to buy and manage their own computers. Major cloud providers are Amazon, Google, and Microsoft. The servers are often concentrated in certain cities around the globe. In the US, I like to tell people the "cloud" is just a series of non-descript beige buildings on the ground in Virginia.
Code Computer code is a series of commands, written in text format, that provide step-by-step instructions for solving a specific problem. Most applications are made up of hundreds or thousands of such procedures, and can require thousands of lines of code in order to fully satisfy all of the application's requirements.
Front-End Software programming concerned primarily with the user interface of an application. Front-end activites can include both the visual layout and design (often referred to as the user interface) as well as the user experience of an application.
GitHub A cloud-based repository of both public and private software projects.
Mobile Web / Mobile Responsive A website that automatically reformats itself to best fit the size of the device being used is said to be responsive to the device. Responsive websites and web applications, which are inherently cross-platform, are often a good alternative to native applications which can only target a single hardware platform.
Static Website A website that appears and functions exactly the same for all users. Content is not personalized in any way. Any website you can use without identifying yourself is probably a static website. Examples include weather.com, cnn.com, your insitution's home page, etc. Most sites you use are probably not static websites, but web applications.
User Experience (UX) The niche of software engineering dedicated to designing efficient and intuitive user interface controls, steps, and affordances in order to allow users to accomplish tasks easily.
Web Application A website that allows users to login, so that the content may be personalized. Web applications also differ from "static" websites in that they can carry out computation or perform tasks on behalf of the user. Most "websites" you use are actually web applications: GMail, Facebook, Google Docs, etc.
Drop me an email: jeffrey@softwareforresearch.com
Find me on Twitter (DMs are open): @jeffcohen