Skip to main content

Glossary

Pear with notepad
  • ACID: In the context of tansaction processing, the acronym ACID refers to the four key properties of a transaction: atomicity, consistency, isolation, and durability.
  • Admonition: An admonition is a form of communication used to offer advice, caution, or reprimand. In technical documentation, an admonition can take the form of a specially formatted note, warning, or tip to draw the reader's attention to something important. For example, in software documentation, an admonition might warn users about a potentially disruptive operation or provide helpful tips for better utilization of a feature.
  • ADR: In the context of software development, "ADR" stands for "Architectural Decision Record." An ADR document is a way to capture and document important architectural decisions made during the development process of a software project.
  • Canary: In the software context, "canary" refers to a release strategy commonly used in continuous deployment and delivery processes. The term comes from the phrase "canary in the coal mine," a historical practice where miners used canaries to detect toxic gases. If the canary showed signs of distress, it indicated dangerous conditions, alerting the miners to evacuate.
    • Canary Release: This is a technique to reduce the risk of introducing a new software version into production by slowly rolling out the change to a small subset of users before making it available to everybody. This approach helps in detecting any unforeseen bugs or issues with minimal impact.
    • Canary Testing: Similar to canary releases, canary testing involves deploying a new version of an application to a small portion of the infrastructure (like a few servers in a cluster). The behavior of this version is monitored in comparison to the stable production deployments. If any issues arise, the change can be quickly rolled back, minimizing impact on the majority of users.
    • Canary Environment: Sometimes, "canary" also refers to a specific environment set up to mimic production closely. The new releases are deployed here first before the actual production environment. It's not just a testing or staging environment but a near replica of production with real-world traffic and data.
  • Code Freeze: A code freeze in web development is a period during which no new code is allowed to be merged into the main branch of a codebase. This practice is typically implemented in the days or weeks leading up to a major release. The main goal of a code freeze is to stabilize the codebase, ensuring that no new features or major changes are introduced that could introduce new bugs or issues.
  • CRM: Customer Relationship Management (CRM) is a technology for managing a company's relationships and interactions with potential and current customers. It involves using data analysis about customers' history with a company to improve business relationships, specifically focusing on customer retention and ultimately driving sales growth.
  • CRO: Conversion Rate Optimization (CRO) is a systematic process aimed at increasing the percentage of website visitors who take a desired action—be that filling out a form, becoming customers by making a purchase, signing up for a newsletter, or engaging with content in some other meaningful way.
  • CTA: A Call to Action (CTA) is a prompt in digital content guiding users to take a desired step, like buying or subscribing. It's vital across marketing for conversions, SEO for engagement, UX/UI for navigation, content writing for action encouragement, and CRO for optimizing conversion rates. Essentially, CTAs are key in linking user actions with business objectives, crucial for effective online interactions.
  • CWD: stands for "Current Working Directory." It's a term used in computer programming and operating system environments to refer to the directory in which a process is running. Understanding and managing the current working directory is important because it affects how programs locate resources and files, and how they execute operations that involve file and directory paths.
  • DI: Dependency Injection is a specific technique that is commonly used to implement the IoC principle. It focuses on the way components or objects obtain their dependencies (i.e., other objects or services they rely on).
  • DIP: The Dependency Inversion Principle states two essential things: High-level modules (classes or components) should not depend on low-level modules. Both should depend on abstractions. Abstractions should not depend on details. Details should depend on abstractions.
  • ERP: stands for "Enterprise Resource Planning." It's a type of software used by businesses to manage day-to-day activities such as accounting, procurement, project management, risk management, compliance, and supply chain operations. An ERP system integrates various functions into one complete system to streamline processes and information across the entire organization. While not directly related to web development, web developers often work on applications that integrate with or interact with ERP systems in business environments.
  • IoC: Inversion of Control suggests that the control of the program's flow should be inverted or shifted from the main program to a framework or container. This means that the framework or container takes responsibility for creating and managing the objects and components in the system, as well as controlling their interactions.
  • ISP: The Interface Segregation Principle states that a class should not be forced to implement interfaces it doesn't use. In other words, it's better to have several specific interfaces rather than a single general-purpose interface. By adhering to ISP, you can make your code more flexible and easier to maintain.
  • Jamstack: Jamstack is a modern web development architecture that emphasizes speed, security, and scalability. It stands for JavaScript, APIs, and Markup. It's a modern approach to building websites and applications that rely on pre-rendered pages and decoupled architecture. This method ensures high performance, enhanced security, and better scalability. It's particularly popular for static sites like blogs, portfolios, and even e-commerce platforms, where it integrates with various APIs for dynamic functionalities. The focus on pre-built static pages served over a CDN contributes significantly to its speed and efficiency, making it a preferred choice for many developers looking to optimize web performance.
  • LSP: The Liskov Substitution Principle is one of the five SOLID principles of object-oriented programming, which is meant to create more maintainable and scalable code. The principle states that objects of a superclass should be able to be replaced with objects of a subclass without affecting the correctness of the program.
  • mdn: Mozilla Developer Network.
  • MERN: Mern is an acronym for a stack of technologies used in web development, and it stands for MongoDB, Express.js, React, and Node.js.
  • minimal API surface area: Instead of providing many framework features, React is trying to utilize patterns, paradigms and JavaScript language features to accomplish the same tasks that other frameworks have dedicated APIs for.
  • PAT: A Personal Access Token (PAT) is a security token that acts as a substitute for a password in various applications, especially when dealing with automated scripts, command line utilities, or API access.
  • PRPL pattern: PRPL is an acronym that describes a pattern used to make web pages load and become interactive, faster: Preload the late-discovered resources. Render the initial route as soon as possible. Pre-cache remaining assets. Lazy load other routes and non-critical assets.
  • Regression testing: Regression testing is a type of software testing that ensures that recent code changes haven't adversely affected existing features of the software.
  • RFC: RFC stands for "Request for Comments." It is a type of document used in the technical and engineering communities, particularly in the context of the Internet and computer networking. RFCs are used to define various aspects of the Internet, including protocols, procedures, behaviors, and innovations. They serve as a means of documenting and standardizing specifications and best practices in these areas.
  • SAML: Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between parties, in particular, between an identity provider and a service provider. SAML is an XML-based markup language for security assertions (statements that service providers use to make access-control decisions).
  • SSR: SSR stands for Server-Side Rendering. It's a technique used in web development where the content of a web page is generated on the server rather than in the browser. This is in contrast to client-side rendering, where JavaScript running in the browser creates the webpage content after the initial page load.
  • Swizzle: Method swizzling is the act of interchanging the implementations of two selectors at runtime. This dynamic program modification is similar to monkey patching concept used by other dynamic languages.