IT terms are not easy if you are a non-coder. Still, in order to be able to keep up with modern business, it’s important to understand the basics. So get out of your comfort zone and master the tech language. We’ve compiled this DevSkiller Tech Glossary of IT terms to make it as easy as it can be.
Also try- 15 modern tech terms you should know
We’ve divided the most important technical IT terms into 10 categories. Learning these terms will boost your credibility in IT recruitment and improve your communication with developers.
Glossary of general IT terms
A programmeringssprog is used by programmers to instruct a computer to perform a certain job. It’s normally a set of instructions that can be used to achieve the desired output of a computer application written in a certain programming language.
As source code is a set of instructions and statements written by a programmer using a computer programming language. This code is later translated into machine language (binary code) by a compiler. The source code is the only stage where a programmer can read and modify a computer program.
A framework er en code that is already written and covers low(er) level, generic functionalities. Programmers can selectively change it with additional user-written code, thus providing application-specific software. A software framework provides a standard way to build and deploy applications. It consists of many predefined solutions for common functionalities that are used to help build software applications, products, and solutions on top of it.
By using a framework, developers don’t have to write all the functionalities of the software that they are working on. These functionalities are already implemented in the framework and ready to use with a single command. Frameworks can improve developer productivity as well as the quality, reliability, and robustness of new software. Thus, a knowledge of frameworks for a specific job is one of the most important skills a developer can possess. Example frameworks: Bootstrap, React, Spring Framework, Rails, Symfony.
A library is a collection of predefined functions or routines that a program can use. Libraries are particularly valuable for storing frequently used routines because you do not need to explicitly link them to every program that uses them. Example libraries: JQuery, Google Guava, RxJava, d3.js.
Agile software development describes a set of values and principles for software development under which requirements and solutions evolve through the collaborative effort of self-organizing cross-functional teams. It advocates adaptive planning, evolutionary development, early delivery, and continuous improvement, and it encourages rapid and flexible responses to change. Described in Agile Manifest.
DevOps focuses on rapid IT service delivery through the adoption of agile, lean practices in the context of a system-oriented approach. It is one of the IT terms that emphasizes people (and culture) and seeks to improve collaboration between operations and development teams.
DevOps implementations utilize technology — especially automation and monitoring tools that can leverage an increasingly programmable and dynamic infrastructure from a life cycle perspective. The core principles are consistent with many of Site Reliability Engineering (see: SRE below) principles and practices. One could view DevOps as a generalization of several core SRE principles to a wider range of organizations, management structures, and personnel. One could equivalently view SRE as a specific implementation of DevOps with some idiosyncratic extensions.
SRE (Site Reliability Engineering)
SRE is a discipline that incorporates aspects of software engineering and applies that to operations whose goals are to create ultra-scalable and highly reliable software systems. It encourages product reliability, accountability, and innovation.
A UI (User Interface) designer is someone that designs what the application looks like from the perspective of the user to enable users to interact with the application. UI designers must understand what the front-end developer expects from him/her and know how to communicate with them, as well as have design skills. Often this person does not have to be a programmer at all.
UX or a "Brugeroplevelse" designer, is a person who helps create a better experience of using the application. This person simplifies the visual part of the application and brings out the features that are used most often. His/her job is to make the application as easy and useful for the users as possible to increase usability.
A Back-end developer is involved in the process of combining a server, an application, and a database to solve a problem (server-side environment). This entire process is solidly entrenched in logic, a network of processes and queries that are resolved in split seconds to give you a certain desired output as a user. They are forskellig fra front-end-udviklere, idet back-end-udviklerens arbejde er helt fri for visuelt design. I stedet er det baseret på logiske ræsonnementer og softwarearkitektur, der har til formål at levere et bestemt resultat.
A full-stack developer is someone who is comfortable working with both back-end and front-end technologies. A general understanding of technologies from every part of the development process is necessary for a front-end developer. This, of course, means that they will not be an expert in any one particular field. Instead, they can offer a better overview of applicational possibilities and the capability to bridge the gap between how the system functions and how it looks and feels for the user.
Systemadministrator (SysOp, sysadmin)
System administrator is a person who is responsible for the upkeep, configuration, and reliable operation of computer systems, mostly servers.
Programming language and technology IT terms lis
Java is a compiled, object-oriented programming language, similar in syntax to C++. It is intended to let application developers “write once, run anywhere” meaning that compiled Java code can run on all platforms that support Java without the need for recompilation.
C is a general-purpose, imperative computer programming language supporting structured programming, lexical variable scope, and recursion. While a static type system prevents many unintended operations. C was originally developed by Dennis Ritchie between 1969 and 1973 at Bell Labs, and used to reimplement the Unix operating system. It has since become one of the de mest udbredte programmeringssprog of all time.
C++ is a general-purpose programming language. It has imperative, object-oriented, and generic programming features and it provides facilities for low-level memory manipulation.
C# (C sharp) is a programming language that is designed for building a variety of applications that run on the .NET Framework. C# is simple, powerful, type-safe, and object-oriented.
Python is one of the most commonly used programming languages (top 3 according to IEEE Spectrum forskning). It was first released in 1991 and has since gained popularity for being simple to learn, yet powerful in solving problems. The syntax is similar to C++ family yet equipped with a variety of modern solutions.
Visual Basic .NET
is a multi-paradigm, object-oriented programming language implemented on the .NET Framework. Microsoft launched VB.NET in 2002 as the successor to its original Visual Basic language. Although the “.NET” portion of the name was dropped in 2005, “Visual Basic [.NET]” is used to refer to all Visual Basic languages releases since 2002 in order to distinguish between them and the classic Visual Basic. Along with Visual C#, it is one of the two main languages targeting the .NET framework.
PHP (Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. PHP
The Perl programming language is a general-purpose Unix scripting language to make report processing easier. It was originally developed by Larry Wall in 1987. Since then, it has undergone many changes and revisions. Perl 6, which began as a redesign of Perl 5 in 2000, eventually evolved into a separate language. Both languages continue to be developed independently by different development teams and they liberally borrow ideas from one another.
Ruby is a dynamic, reflective, object-oriented, general-purpose programming language. It was designed and developed in the mid-1990s by Yukihiro “Matz” Matsumoto in Japan. According to its creator, Ruby was influenced by Perl, Smalltalk, Eiffel, Ada, and Lisp.
Hurtig is a general-purpose, multi-paradigm compiled programming language developed by Apple Inc. for iOS, macOS, watchOS, tvOS, and Linux.
R is an open-source programming language and software environment for statistical computing and graphics. It is widely used among statisticians and data miners for developing statistical software and data analysis.
Gå (often referred to as Golang) is a free and open-source programming language created by Google.
Mål C is a general-purpose, object-oriented programming language that adds Smalltalk-style messaging to the C programming language. It was the main programming language used by Apple for the OS X and iOS operating systems, and their respective application programming interfaces (APIs) Cocoa and Cocoa Touch prior to the introduction of Swift.
SQL is the most popular database programming language. Historically, this declarative programming paradigm has been a key feature for ad-hoc queries run for data introspection executed by human users directly with SQL (rather than with a UI). In modern times, SQL is also embedded in other, more general-purpose programming languages like Java in order to access data from central databases.
Læs mere: How to screen SQL developer skills
Scala is a general-purpose programming language providing support for functional programming and a strong static type system. Designed to be concise, many of Scala’s design decisions are aimed to address criticisms of Java.
Android is the world’s most popular operating system (it’s not a programming language) dedicated mainly to mobile devices. The source code was developed by Google under the Android Open Source Project (AOSP). Subsequent versions are usually released annually and are announced at Google I/O conferences.
IT-termer for databaser
er en samling af oplysninger, der lagres og bruges af softwaren, og som er organiseret på en måde, der let kan administreres. Traditionelle databaser er organiseret efter felter, poster og filer.
is a database organized with the relational model. Relationships are a logical connection between different tables established on the basis of interaction among these tables. All relational databases use SQL (Structured Query Language) to operate on data (insert, update, load). It looks like a spreadsheet. Examples: Oracle, MySQL, Postgres, SQL Server.
ikke-relationel eller ikke-SQL-database. I modsætning til relationelle databaser bruger den andre former end tabeldata, f.eks. nøgle-værdi-samlinger, strukturer på flere niveauer, grafer osv. Sådanne databaser vælges normalt på grund af deres ydeevne, skalerbarhed og fleksibilitet i skemadesdesignet.
states that it is impossible for a distributed data store to simultaneously provide more than two out of the following three guarantees: consistency (every read receives the most recent write or an error), availability (every request receives a non-error response without the guarantee that it contains the most recent write) and partition tolerance (the system continues to operate despite an arbitrary number of messages being dropped or delayed by the network between nodes). In other words, CAP theorem states that in the presence of a network partition, one has to choose between consistency and availability.
is an acronym consisting of the IT terms Atomicity, Consistency, Isolation, Durability. They are a set of properties related to the database engines guaranteeing after finishing modification data will be consistent.
IT-termer for brugergrænseflader
eller "Grafisk brugergrænseflade", er den visuelle del af softwaren eller et websted, som giver brugeren mulighed for at interagere med programmet. Hver gang du bruger et program, bruger du det ved at klikke dig gennem den grafiske brugergrænseflade.
er ansvarlig for, at applikationens grænseflade vises godt på alle mulige enheder, f.eks. telefoner, pc'er eller tablets, som vi bruger til at få adgang til applikationen.
(Cascading Style Sheets) is a method of assigning formatting rules to an HTML page which allows the content and presentation of a website to be separated. This separation gives web developers the ability to instantly change the appearance of a specific HTML element, like position, colors, fonts, etc., throughout an entire website.
is Google’s conceptual design philosophy that outlines how apps should look and work. It breaks down everything from animation, style to layout and gives guidance on patterns, components, and usability.
is a free open-source front-end web framework for designing websites and web applications. It makes it very easy to create web pages by empowering designers to select from a large collection of pre-built elements, behaviors, and shortcuts. The aim is to unify design and allow both non-technical and technical designers to improve the quality of their design.
Test af it-begreber
Test af enheder
er en softwareudviklingsproces, hvor de mindste testbare dele af en applikation (kaldet enheder) kontrolleres individuelt og uafhængigt af hinanden for at se, om de lykkes. De mest populære biblioteker er: JUnit, Mocha, NUnit, RSpec.
Integration tests are a level of software testing where individual units are combined and tested as a group. These tests are performed in order to expose defects in the interface and in interactions between integrated components or systems. It occurs after unit testing and before validation testing.
Acceptance tests are a level of software testing where a system is tested for acceptability. The purpose of this test is to evaluate the system’s compliance with business requirements, user needs, and business processes. Acceptance tests determine if a system satisfies the acceptance criteria and to enable the user, customers or other authorized entity to determine whether or not to accept the system. Read more: Grundlæggende principper for softwaretestning
Prøvning af ydeevne
Performance tests are a type of software testing that intends to determine how a system performs in terms of responsiveness and stability under a certain workload (usually under stress). Read more: Grundlæggende principper for softwaretestning
Udviklingsværktøjer og -processer It-termer
is the management of changes to documents, computer programs, large websites, and other collections of information. Changes are usually identified by number or letter code, called a “revision number,” “revision level,” or simply “revision.” For example, an initial set of files is “revision 1.” When the first change is made, the resulting set is “revision 2,” and so on. Each revision is associated with a timestamp and the person making the change. Revisions can be compared, restored, and with some types of files, merged.
er et andet populært open source-versionskontrolsystem. I modsætning til Git, alle udviklere bruger ét centraliseret repository. Læs mere: Versionskontrol med Subversion
Git is a free open source distributed version control system for tracking changes in computer files and coordinating work on those files among multiple people. It is primarily used for source code management in software development, but it can be used to keep track of changes in any set of files.
In version control systems, a commit is a saved change made to the source code. Commits are usually added/deleted files or directories, changed file contents, etc.
er en praksis, hvor alle udviklernes arbejdskopier slås sammen til en fælles hovedlinje flere gange om dagen. Læs mere: TrunkBasedDevelopment
GitHub is a popular Git hosting service. It is mostly used for code. In addition to Git, it provides several collaboration features, important IT terms such as bug tracking, feature requests, task management and wikis.
GitLab.com is a Git repository hosting that provides wikis and issue tracking functionality. It’s an open-source project developed by GitLab Inc.
Bitbucket.org is a Git and Mercurial repository hosting service owned by Atlassian. Like its counterparts, it provides several collaboration features such as issue tracking and wikis.
IDE (Integrated Development Environment) is a code editor application designed to help programmers write, run, and debug code. Examples of IDEs include Eclipse, IntelliJ IDEA, Visual Studio, PHP Storm
Build tools are used to convert programming code written by the developer into binary code that is executable by a computer and run it. It usually manages external dependencies (libraries or frameworks) which are used in the project. Examples: Gradle, Maven, Rake, MSBuild, Phing.
Automatiseringsserver (som Jenkins, Bamboo, TeamCity)
An automation server helps automate the non-human part of the software development process with continuous integration and facilitating technical aspects of continuous delivery.
Continuous integration—an extension of Trunk Based Development practice—where each integration is verified by automated tools and tested to give fast feedback and detect errors as fast as possible. Read more: Martin Fowler
is a software engineering approach in which teams produce software in short cycles, ensuring that it can be reliably released at any time. This means the deployment package is prepared and automatically tested continuously (e.g. once per day) and ready to ship to production.
Continuous deployment is similar to continuous delivery but ends up with the package being deployed to production instead of just ready to be deployed.
betyder, at en ny version af en softwarepakke sendes ind i målmiljøet.
is a distinguishing characteristic of a software item (e.g., performance, portability, or functionality).
at gøre versionspakken (funktioner) tilgængelig for slutbrugerne.
definerer den rækkefølge af faser, der skal gennemføres, før et program rulles ud i produktion. Ved at opdele implementeringslivscyklussen i faser får du øget tillid, hvilket normalt koster ekstra tid. De tidlige faser afslører de fleste problemer og giver hurtigere feedback, mens de senere faser giver langsommere og mere grundige undersøgelser. Faser kan omfatte opbygning, udrulning, test, arkivering osv. Læs mere: Martin Fowler
Billet / problem / hændelse
er en løbende rapport om et bestemt problem, dets status og andre relevante data i et problemsporingssystem. De oprettes normalt i et helpdesk- eller callcenter-miljø og har næsten altid et unikt referencenummer, også kendt som en sag, spørgsmål, eller opkaldsliste number. This number is used to allow the user or help staff to quickly locate, add to or communicate the status of the user’s issue or request.
Architecture is a term applied to both the process and the outcome of thinking out and specifying the overall structure, logical components, and logical interrelationships of a computer, its operating system, and network. Read more: WhatIs.com
(Application Programming Interface) is a set of definitions, protocols, schemas, tools, and practices to communicate with the application. To developers, API is what Graphical User Interface is to users. It allows developers (and finally other applications) to communicate with applications.
Source : Restfulapi.net
REST (Representational State Transfer) is a set of guidelines for building web services providing interoperability between remote computers. It is focused on resources and basic operations (like editing, reading, and adding) related to them. They are commonly used to expose public API.
Simple Object Access Protocol is a way of exchanging structured information between computers. Compared to REST, it’s more formal, less flexible, and requires schema definition (WSDL).
er en arkitekturstil, der er baseret på at køre på et enkelt applikationslag, som har tendens til at samle alle de funktioner, der er nødvendige for arkitekturen, i en pakke. For at sige det enkelt betyder det, at den er sammensat i ét stykke. Monolitisk software er designet til at være selvstændigt; programmets komponenter er indbyrdes forbundet og afhængige af hinanden i stedet for løst koblet, som det er tilfældet med modulære softwareprogrammer. Hvis en programkomponent skal opdateres, skal hele programmet desuden skrives om, mens et modulært program kan ændres i et separat modul (f.eks. en mikroservice) uden at påvirke andre dele af programmet. Læs mere: WhatIs.com
is a model in which components located on networked computers communicate and coordinate their actions by passing messages, appearing to its users as a single coherent system. The components interact with each other in order to achieve a common goal. Three significant characteristics of distributed systems are: concurrency of components, lack of a global clock, and independent failure of components.
Tjenesteorienteret arkitektur (SOA)
SOA is a style of software design based on discrete software components (services) that collectively provide functionalities of larger software architecture. A service is a discrete unit of functionality that can be accessed remotely and acted upon and updated independently, such as retrieving a credit card statement online. In this approach, services are provided to other components by application components, through a communication protocol over a network.
Basic principles of service-oriented architecture are independent of vendors, products, and technologies. Service-oriented architecture has been mainly been used and focused on a big enterprise scale.
Microservices are a variant of the service-oriented architecture (SOA) architectural style. The idea behind microservices is that some types of applications become easier to build and maintain when they are broken down into smaller, composable pieces which work together. Each component is autonomous, developed separately, and the application is then simply the sum of its constituent components. This is in contrast to a traditional, “monolithic” application developed in one piece.
The Microservices style is used by many organizations (like Netflix, Uber, and Facebook) today as a game-changer to achieve a high degree of agility, speed of delivery, and scale. Read more: Martin Fowler
CRUD is actually an acronym of Create, Read, Update, Delete. It describes a type of applications focused on simple data editing without any rich business operations. Colloquially called “database viewers.”
henviser til den sammensatte hardware, software, netværksressourcer og tjenester, der er nødvendige for eksistensen, driften og forvaltningen af et virksomhedens it-miljø. Det gør det muligt for en organisation at levere it-løsninger og -tjenester til sine medarbejdere, partnere og/eller kunder, og det er normalt internt i en organisation og udrulles i egne faciliteter.
A cloud service is any service made available to users on-demand via the Internet from a cloud computing provider’s servers (i.g Microsoft Azure or Amazon Web Services) as opposed to being provided from physical on-premises servers.
Software som en tjeneste (SaaS)
SaaS sometimes referred to as ‘on-demand software, is a software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted. It is the most familiar form of cloud service for consumers. SaaS providers make the application available to users through the Internet, usually a browser-based interface. Customers can then enjoy the software without having to worry about development, maintenance, support, update, or backups.
The downside, however, is that your software experience is wholly dependent on the SaaS provider, which is responsible for stability, reporting, billing, and security. Well-known examples of some SaaS companies services are Gmail, Dropbox, Salesforce, and Netflix.
Platform som en tjeneste (PaaS)
PaaS is a category of cloud computing services that functions at a lower level than SaaS, typically providing a platform on which software can be developed and deployed. PaaS providers abstract much of the work of dealing with servers and give clients an environment in which the operating system and server software, as well as the underlying server hardware and network infrastructure, are taken care of. This leaves users free to focus on the business side of scalability, and the application development of their product or service. It allows customers to develop, run, and manage applications without the complexity of building and maintaining the infrastructure typically associated with developing and launching an app.
PaaS makes the development, testing, and deployment of applications quick, simple, and cost-effective. some PaaS examples include Pivotal Cloud Foundry and Heroku.
Infrastruktur som en tjeneste (IaaS)
IaaS is the most basic cloud-service model offering computing infrastructure – IT terms like virtual machines and other resources – as a service to subscribers. It’s a lower level compared to PaaS. Typically, IaaS provides hardware, storage, servers, and data center space or network components. It allows you to quickly scale up and down with demand and pay only for what you use. This makes IaaS well-suited for workloads that are temporary, experimental or change unexpectedly. IaaS examples: Amazon Web Services and its EC2.
IT-automatisering er sammenkobling af forskellige systemer og software på en sådan måde, at de bliver selvvirkende eller selvregulerende. Læs mere: TechTarget.com
Infrastruktur som kode (IaC)
IaC (programmable infrastructure), means writing code (which can be done using a high-level language or any descriptive language) to manage configurations and automate the provisioning of infrastructure in addition to deployments. IaC is not only about writing scripts, it also involves using tested and proven software development practices that are already being used in application development, e.g. version control, testing, small deployments, use of design patterns etc. In short, this means you write code to provision and manage your server, in addition to automating processes. It’s an approach to managing IT infrastructure for the age of cloud, microservices, and continuous delivery. Read more: ThoughtWorks
består af et helt kørselsmiljø: et program plus alle dets afhængigheder, biblioteker og andre binære filer og konfigurationsfiler, der er nødvendige for at køre det, samlet i én pakke. Containere er en løsning på problemet med, hvordan man får software til at køre pålideligt, når det flyttes fra et computermiljø til et andet. Det kan være fra en udviklers bærbare computer til et testmiljø, fra et staging-miljø til et produktionsmiljø og måske fra en fysisk maskine i et datacenter til en virtuel maskine i en privat eller offentlig sky. Læs mere: CIO
er systemsoftware, der styrer computerhardware og software resources and provides common services for computer programs. All computer programs, excluding firmware, require an operating system to function. Examples: Microsoft Windows, macOS, Linux.
is an interface that enables the user to interact with a computer. It provides a user interface for access to an operating system’s services. In general, operating system shells use either a command-line interface (CLI) or graphical user interface (GUI), depending on a computer’s role and particular operation. The name comes from the fact that shells are layers around the operating system kernel.
måling af en bestemt egenskab ved et programs resultater eller effektivitet.
er en registrering af, hvad der er sket. Typisk hjælper det med at diagnosticere problemer eller få indsigt i, hvad der foregår i en applikations livscyklus.