If you started working for a tech company or that you’re surrounded by programmers, developers or architects and that you have no idea of what they are talking about, continue reading. If you regularly hear words like software architecture, PHP, HTLM5, API, TDD and continuous integration, (the list goes on and on and on) there are basic terms that you need to know. So you might not need to know if PHP is a framework or a programming language, but you need to know what’s the difference between a framework and a language. I mean it’s not that difficult except that when you google it, you often find explanations that you don’t even understand. So I decided to create this very short programming cheat sheet, based on what I hear around me and what I’ve read about.
What you will find in this programming cheat sheet is what I believe the first terms you need to know based on my experience.
Server – A server is a computer program or a device that provides functionality, that processes requests and delivers data, for other programs or devices.
Database – A database is a collection of information that is organized in a way that makes it quick and easy to access, manage, and update by a computer program when it comes to getting the data needed.
Front end – The front end and the web design are the parts of the web that users can see and interact with.
Back end – The back end consists of the server, the app and the database, this technology is what enables the front end to happen.
Framework – Here we talk about a sort of box of tools that we use for a programming language, for example Symfony, Spring, Django & AngularJs.
Library – It’s a set of pre-written codes, classes, procedures, etc. that are stored and used to assist programmers and the programming language in the development process.
Database management system – It receives information from a database administrator and then communicates it to the system in order to execute things as for example loading, retrieving and modifying existing data data from the system
API – functions & procedures that allow to create applications that access data of an operating system or other service.
Deployment – Deployment is about moving a new software or hardware from the testing phase to the production phase, getting the system available for use. This means the installation, the configuration, running, testing and all the changes that has to be done.
Integrated Development Environment – An IDE is a software application that provides comprehensive facilities to computer programmers for software development. It integrates all the tools that you need to develop a platform and normally consists of a source code editor, build automation tools and a debugger.
Cloud computing – It’s when you store data and programs on a cloud instead of storing it on the hard drive of a computer and that you access this data with an internet connection.
Infrastructure as a service – IaaS is a service model of cloud computing which consists in using a third party provider for hosting a hardware. It can be said that you are paying to access hardwares over the net, this can mean server or storage services. An example would be if you have a subscription with a hosting company to store files on their servers with a pay per use model.
Platform as a Service – With PaaS you get access to a platform on the cloud that allows you to develop and build applications that run on systems software or hardware that belong to other companies. For example, developing an ecommerce web that is running on a vendor’s server.
Software as a service – SaaS is about getting a complete software on the cloud. So you are running a complete application on the system of a third party, hosted on the cloud. A very common example would be a CRM system, here at Apiumtech we use ZOHO that enables us to get a sort of overview of our sales cycles.
Programming cheat sheet