Being a non-techie person in the tech world is getting harder and harder. Like that awkward moment when you’re talking to your development team and don’t get a single word even though you’re speaking the same language. Have you ever had that odd feeling towards computer programming terms? If not, then you either have never talked to developers or you mingle with the IT community and already know everything. This article is written for those who don’t want to google every single acronym or abbreviation heard from developers, like ‘deploy’, ‘CRM’, ‘merge’ and others.
To help you better understand the technology vocab, we came up with this tech dictionary for non-techies. Below is a vocabulary with simple explanations of 60 most basic tech terms to know. The glossary will be useful for those who shift into the coding sphere or plan software development for business. Go ahead and check them right now to avoid any confusion in communication with tech people.
General IT terms
- Software – Programs that make a computer execute tasks.
- Hardware – Internal and external physical parts of a computer or another electronic device.
- Application (App) – A piece of software that has a package of specific functions and performs them for the user or another application.
- Website – A collection of web pages that share one domain name and are publicly accessible on the Internet.
- UI (user interface) design – Software design with a focus on looks and style to make the user’s interaction as smooth as possible.
- UX (user experience) design – Software design with a focus on usability and user satisfaction with the product.
- SAAS (Software as a service) – Type of the software delivery model when it’s licensed and provided over the Internet to the end user by the software owner (person or organization) on demand.
- CRM (Customer relationship management system) – A program that helps businesses collect, store, and analyze information about customers and identify their needs for sales and marketing purposes.
- CMS (Content management system) – The program created to manage digital content, typically supporting multiple users.sl.
- API (application programming interface) – A tool that simplifies the development process as it provides completed building blocks with functionality that can be put together and implemented to a software.
- Wireframe – A prior version of a software that typically includes the design of the project on a structural level (structure of content, functionality, and user journeys).
- Prototype – A simple working version of the software that typically is the next step in project design after wireframing.
- Front end – A ‘client’ software that the users interact with. It’s a presentation layer, the way the software looks.
- Back end – A ‘server’ software that the users do not interact with directly. It’s a data access layer, the way the software works.
- Full Stack – A software developer who can build both front end and back end parts of the software.
- Framework – A set of templates\libraries for a programming platform, that facilitate software development.
- QA (Quality assurance) – The process of product review to identify if it meets required expectations or has any errors.
- Deploy – Putting the code to the server where it’ll work.
- GIT – A system for programmers to manage code content and track versions of code.
- SVN (Apache Subversion) – A system for code versions control. Helps to rollback and unite changes made at the same time when several people work on the project.
- Repository – A place where data is gathered and protected.
- Refactoring – Code structure optimization process without an impact on functionality.
- Bug – An error in the software that causes false output and operation.
- Debugging – The process of fixing and removing bugs and errors in the software.
- Debugger – The software applied to test code or software and find bugs.
- Commit – The action used to save the last changes and adjustments in the code to the repository.
- Compiling – The process of converting the source code (written on the programming language, understood by humans) into machine code (understood by machines).
- Merge – The operation that combines different versions and changes in code.
- Native App – Software built to operate on a specific platform or device. The majority of native mobile apps are created for iOS or Android.
- Architecture – A set of solutions for organizing the software structure: choosing structural elements and interfaces, the correlation between elements and their behavior.
- Library – A collection of code pieces that solve the development problem and are used to ease the software development process.
- Open Source – Source code freely available for making changes and free to download.
- CI (continuous integration) – A practice of building software development when all working copies of the code are merged into one development branch a few times during the day.
- Code Review – The process of reading code by few people to find bugs, check comments in code, and test consistency with design. This activity refers to Quality Assurance.
- Black Box Testing – A method of software testing when internal structure and specifications of the software are not taken into account, and the only functional part of the software is tested. It’s testing with a focus on inputs and outputs.
Tech management glossary
- SDLC (software development life cycle) – The process used in software development to build, design, and test high-quality software. It implies three rules: create high-quality software on time, stay within budget, and meet customers expectations.
- Agile – A software development approach that implies iterative software development, flexible planning, and continuous improvement. The main idea is to deliver software fast to the market and shape it basing on customers’ real needs.
- SCRUM – A project management methodology for effective team collaboration based on the Agile software development approach.
- Kanban – An approach for managing software development. Kanban depicts the planned work and the work that is in progress. The main idea is to optimize the process and overcome barriers.
- Waterfall – A linear software development approach. Each stage has to be completed before the next one. This approach doesn’t imply any overlapping of the development stages.
- Tracker – A tool that helps to monitor the project progress and to manage the team easily.
- Jira – One of the biggest brands of trackers that works with two software development approaches: SCRUM and Kanban. It has a variety of tools for task management, team monitoring, bugs tracking and provides advanced project analytics.
- Trello – A project management tracker based on the Kanban software development approach that doesn’t offer any reports. Best suitable for small teams.
- Redmine – Project management system.
- MVP (minimum viable product) – A product with a basic feature set that is enough to collect users feedback or even release.
- Sprint – A period of time when the predefined amount of work has to be completed by the software development team.
- Deadline – A time limit to complete tasks or achieve objectives before it will have an impact on the project.
- Release – The process of sharing the completed application with the world, usually implied by adding the app to the app stores.
- Decomposition – A project management technique used to split the complex problem into parts that are easier to execute.
- Retrospective – A meeting with the customer and development team after each sprint to present the reports about completed work, issues that need improvements, and further steps.
- Sprint Review – A meeting when software development team demonstrates the results of hard work during the sprint to the customer.
- Velocity – A key metric in the Agile approach that measures the amount of work that the team resolves during one sprint.
- User Story – The smallest amount of work in the Agile approach. A user story is a short & detailed description of a goal from a user’s perspective.
- Story Point – An estimation of task complexity in the Agile approach.
- WBS (work breakdown structure) – Distribution of a project into small parts to complete the project successfully.
- Dependencies – Correlations between tasks that establish the order in which tasks have to be executed.
- Project Plan – A formal document comprising project details that helps manage the project and its execution.
- Time and Material – A software development pricing model when the customer agrees to pay the company for the actual time spent on development & received result and for the cost of materials.
- Risk Management – The process of detecting, assessment, and priority setting for risks that arise in the software development process, adjusted by a project manager.
- Risk Register – The tool used to manage risks that looks like a scatter chart.
Sometimes, all you need is a simple explanation to understand a bunch of computer programming terminology. As a software development company, we know all the angles in coding expressions and can explain them in simple English. We hope the information above was helpful and you’ve found out the meaning of the terms you have heard about but did not know what they meant.
Sixty key words we’ve picked up for our tech glossary! How many terms can be added? Anyway, if you want to figure out the meaning of one that is missing in the article, feel free to contact us and share your suggestions!