[{"data":1,"prerenderedAt":7994},["ShallowReactive",2],{"/en-us/blog/learning-python-with-a-little-help-from-ai-code-suggestions":3,"navigation-en-us":37,"banner-en-us":465,"footer-en-us":482,"blogAuthors-en-us":726,"next-steps-en-us":7973,"footer-source-/en-us/blog/learning-python-with-a-little-help-from-ai-code-suggestions/":7988},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":16,"config":27,"_id":30,"_type":31,"title":32,"_source":33,"_file":34,"_stem":35,"_extension":36},"/en-us/blog/learning-python-with-a-little-help-from-ai-code-suggestions","blog",false,"",{"title":9,"description":10,"ogTitle":9,"ogDescription":10,"noIndex":6,"ogImage":11,"ogUrl":12,"ogSiteName":13,"ogType":14,"canonicalUrls":12,"schema":15},"Learning Python with a little help from AI","Use this guided tutorial, along with GitLab Duo Code Suggestions, to learn a new programming language.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663918/Blog/Hero%20Images/aipower.jpg","https://about.gitlab.com/blog/learning-python-with-a-little-help-from-ai-code-suggestions","https://about.gitlab.com","article","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Learning Python with a little help from AI\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Michael Friedrich\"}],\n        \"datePublished\": \"2023-11-09\",\n      }",{"title":9,"description":10,"authors":17,"heroImage":11,"date":19,"body":20,"category":21,"tags":22},[18],"Michael Friedrich","2023-11-09","Learning a new programming language can help broaden your software\ndevelopment expertise, open career opportunities, or create fun challenges.\nHowever, it can be difficult to decide on one specific approach to learning\na new language. Artificial intelligence (AI) can help. In this tutorial,\nyou'll learn how to leverage AI-powered GitLab Duo Code Suggestions for a\nguided experience in learning the Python programming language with a\npractical hands-on example.\n\n\n- [Preparations](#preparations)\n  - [VS Code](#vs-code)\n  - [Code Suggestions](#code-suggestions)\n- [Learning a new programming language:\nPython](#learning-a-new-programming-language-python)\n    - [Development environment for Python](#development-environment-for-python)\n    - [Hello, World](#hello-world)\n- [Start learning Python with a practical\nexample](#start-learning-python-with-a-practical-example)\n    - [Define variables and print them](#define-variables-and-print-them)\n    - [Explore variable types](#explore-variable-types)\n- [File I/O: Read and print a log file](#file-io-read-and-print-a-log-file)\n\n- [Flow control](#flow-control)\n    - [Loops and lists to collect files](#loops-and-lists-to-collect-files)\n    - [Conditionally collect files](#conditionally-collect-files)\n- [Functions](#functions)\n    - [Start with a simple log format](#start-with-a-simple-log-format)\n    - [String and data structure operations](#string-and-data-structure-operations)\n    - [Parse log files using regular expressions](#parse-log-files-using-regular-expressions)\n    - [Advanced log format: auth.log](#advanced-log-format-authlog)\n    - [Parsing more types: Structured logging](#parsing-more-types-structured-logging)\n- [Printing results and formatting](#printing-results-and-formatting)\n\n- [Dependency management and continuous\nverification](#dependency-management-and-continuous-verification)\n    - [Pip and pyenv: Bringing structure into Python](#pip-and-pyenv-bringing-structure-into-python)\n    - [Automation: Configure CI/CD pipeline for Python](#automation-configure-cicd-pipeline-for-python)\n- [What is next](#what-is-next)\n    - [Async learning exercises](#async-learning-exercises)\n    - [Share your feedback](#share-your-feedback)\n\n## Preparations \n\n\nChoose your [preferred and supported\nIDE](https://docs.gitlab.com/ee/user/project/repository/code_suggestions.html#enable-code-suggestions-in-other-ides-and-editors),\nand follow the documentation to enable Code Suggestions for [GitLab.com\nSaaS](https://docs.gitlab.com/ee/user/project/repository/code_suggestions.html#enable-code-suggestions-on-gitlab-saas)\nor [GitLab self-managed\ninstances](https://docs.gitlab.com/ee/user/project/repository/code_suggestions.html#enable-code-suggestions-on-self-managed-gitlab).\n\n\nProgramming languages can require installing the language interpreter\ncommand-line tools or compilers that generate binaries from source code to\nbuild and run the application.\n\n\n**Tip:** You can also use [GitLab Remote Development\nworkspaces](/blog/quick-start-guide-for-gitlab-workspaces/) to\ncreate your own cloud development environments, instead of local development\nenvironments. This blog post focuses on using VS Code and the GitLab Web\nIDE. \n\n\n### VS Code\n\n\n[Install VS Code](https://code.visualstudio.com/download) on your client,\nand open it. Navigate to the `Extensions` menu and search for `gitlab\nworkflow`. Install the [GitLab Workflow extension for VS\nCode](https://marketplace.visualstudio.com/items?itemName=GitLab.gitlab-workflow).\nVS Code will also detect the programming languages, and offer to install\nadditional plugins for syntax highlighting and development experience. For\nexample, install the [Python\nextension](https://marketplace.visualstudio.com/items?itemName=ms-python.python).\n\n\n### Code Suggestions\n\n\nFamiliarize yourself with suggestions before actually verifying the\nsuggestions. GitLab Duo Code Suggestions are provided as you type, so you do\nnot need use specific keyboard shortcuts. To accept a code suggestion, press\nthe `tab` key. Also note that writing new code works more reliably than\nrefactoring existing code. AI is non-deterministic, which means that the\nsame suggestion may not be repeated after deleting the code suggestion.\nWhile Code Suggestions is in Beta, we are working on improving the accuracy\nof generated content overall. Please review the [known\nlimitations](https://docs.gitlab.com/ee/user/project/repository/code_suggestions.html#known-limitations),\nas this could affect your learning experience.\n\n\n**Tip:** The latest release of Code Suggestions supports multiline\ninstructions. You can refine the specifications to your needs to get better\nsuggestions. We will practice this method throughout the blog post.\n\n\n## Learning a new programming language: Python  \n\n\nNow, let's dig into learning Python, which is one of the [supported\nlanguages in Code\nSuggestions](https://docs.gitlab.com/ee/user/project/repository/code_suggestions.html#supported-languages). \n\n\nBefore diving into the source code, make sure to set up your development\nenvironment.\n\n\n### Development environment for Python \n\n\n1) Create a new project `learn-python-ai` in GitLab, and clone the project\ninto your development environment. All code snippets are available in this\n[\"Learn Python with AI\"\nproject](https://gitlab.com/gitlab-de/use-cases/ai/learn-with-ai/learn-python-ai).\n\n\n```shell\n\ngit clone https://gitlab.com/NAMESPACE/learn-python-ai.git\n\n\ncd learn-python-ai\n\n\ngit status\n\n```\n\n\n2) Install Python and the build toolchain. Example on macOS using Homebrew:\n\n\n```\n\nbrew install python\n\n```\n\n\n3) Consider adding a `.gitignore` file for Python, for example this\n[.gitignore template for\nPython](https://gitlab.com/gitlab-org/gitlab/-/blob/master/vendor/gitignore/Python.gitignore?ref_type=heads). \n\n\nYou are all set to learn Python! \n\n\n### Hello, World\n\n\nStart your learning journey in the [official\ndocumentation](https://www.python.org/about/gettingstarted/), and review the\nlinked resources, for example, the [Python\ntutorial](https://docs.python.org/3/tutorial/index.html). The\n[library](https://docs.python.org/3/library/index.html) and [language\nreference](https://docs.python.org/3/reference/index.html) documentation can\nbe helpful, too. \n\n\n**Tip:** When I touched base with Python in 2005, I did not have many use\ncases except as a framework to test Windows 2000 drivers. Later, in 2016, I\nrefreshed my knowledge with the book \"Head First Python, 2nd Edition,\"\nproviding great practical examples for the best learning experience – two\nweeks later, I could explain the differences between Python 2 and 3. You do\nnot need to worry about Python 2 – it has been deprecated some years ago,\nand we will focus only on Python 3 in this blog post. In August 2023, \"[Head\nFirst Python, 3rd\nEdition](https://www.oreilly.com/library/view/head-first-python/9781492051282/)\"\nwas published. The book provides a great learning resource, along with the\nexercises shared in this blog post. \n\n\nCreate a new file `hello.py` in the root directory of the project and start\nwith a comment saying `# Hello world`. Review and accept the suggestion by\npressing the `tab` key and save the file (keyboard shortcut: cmd s). \n\n\n```\n\n# Hello world\n\n```\n\n\nCommit the change to the Git repository. In VS Code, use the keyboard\nshortcut `ctrl shift G`, add a commit message, and hit `cmd enter` to\nsubmit. \n\n\nUse the command palette (`cmd shift p`) and search for `create terminal` to\nopen a new terminal. Run the code with the Python interpreter. On macOS, the\nbinary from Homebrew is called `python3`, other operating systems and\ndistributions might use `python` without the version.\n\n\n```shell\n\npython3 hello.py\n\n```\n\n\n![Hello World, hello GitLab Duo Code\nSuggestions](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_python_code_sugestions_hello_world.png)\n\n\n**Tip:** Adding code comments in Python starting with the `#` character\nbefore you start writing a function or algorithm will help Code Suggestions\nwith more context to provide better suggestions. In the example above, we\ndid that with `# Hello world`, and will continue doing so in the next\nexercises.\n\n\nAdd `hello.py` to Git, commit all changes and push them to your GitLab\nproject.\n\n\n```shell\n\ngit add hello.py\n\n\ngit commit -avm \"Initialize Python\"\n\n\ngit push\n\n```\n\n\nThe source code for all exercises in this blog post is available in this\n[\"Learn Python with AI\"\nproject](https://gitlab.com/gitlab-de/use-cases/ai/learn-with-ai/learn-python-ai).\n\n\n## Start learning Python with a practical example \n\n\nThe learning goal in the following sections involves diving into the\nlanguage datatypes, variables, flow control, and functions. We will also\nlook into file operations, string parsing, and data structure operations for\nprinting the results. The exercises will help build a command-line\napplication that reads different log formats, works with the data, and\nprovides a summary. This will be the foundation for future projects that\nfetch logs from REST APIs, and inspire more ideas such as rendering images,\ncreating a web server, or adding Observability metrics.\n\n\n![Parsing log files into structured objects, example result after following\nthe\nexercises](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_terminal_parsing_logs_and_pretty_print_results.png)\n\n\nAs an experienced admin, you can put the script into production and use\nreal-world log format exmples. Parsing and analyzing logs in stressful\nproduction incidents can be time-consuming. A local CLI tool is sometimes\nfaster than a log management tool.\n\n\nLet's get started: Create a new file called `log_reader.py` in the directory\nroot, add it to Git, and create a Git commit.\n\n\n### Define variables and print them\n\n\nAs a first step, we need to define the log files location, and the expected\nfile suffix. Therefore, let's create two variables and print them. Actually,\nask Code Suggestions to do that for you by writing only the code comments\nand accepting the suggestions. Sometimes, you need to experiment with\nsuggestions and delete already accepted code blocks. Do not worry – the\nquality of the suggestions will improve over time as the model generates\nbetter suggestions with more context.\n\n\n![Define log path and file suffix\nvariables](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_log_reader_variables_01.png){:\n.shadow}\n\n\n![Print the variables to\nverify](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_log_reader_variables_02.png){:\n.shadow}\n\n\n```python\n\n# Specify the path and file suffix in variables\n\npath = '/var/log/'\n\nfile_suffix = '.log'\n\n\n# Print the variables \n\n\nprint(path)\n\nprint(file_suffix)\n\n```\n\n\nNavigate into the VS Code terminal and run the Python script:\n\n\n```shell\n\npython3 log_reader.py\n\n```\n\n\n![VS Code terminal, printing the\nvariables](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_terminal_print_variables.png)\n\n\nPython supports many different types in the [standard\nlibrary](https://docs.python.org/3/library/index.html). Most common types\nare: Numeric (int, float, complex), Boolean (True, False), and String (str).\nData structures include support for lists, tuples, and dictionaries. \n\n\n### Explore variable types \n\n\nTo practice different variable types, let's define a limit of log files to\nread as a variable with the `integer` type.\n\n\n![Log file\nvariable](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_log_reader_variables_03.png){:\n.shadow}\n\n\n```python\n\n# Define log file limit variable \n\nlog_file_limit = 1024 \n\n```\n\n\nCreate a Boolean variable that forces to read all files in the directory, no\nmatter the log file suffix. \n\n\n```python\n\n# Define boolean variable whether to read all files recursively\n\nread_all_files_recursively = True\n\n```\n\n\n## File I/O: Read and print a log file\n\n\nCreate a directory called `log-data` in your project tree. You can copy all\nfile examples from the [log-data directory in the example\nproject](https://gitlab.com/gitlab-de/use-cases/ai/learn-with-ai/learn-python-ai/-/tree/main/log-data?ref_type=heads).  \n\n\nCreate a new file `sample.log` with the following content, or any other two\nlines that provide a different message at the end.\n\n\n```\n\nOct 17 00:00:04 ebpf-chaos systemd[1]: dpkg-db-backup.service: Deactivated\nsuccessfully.\n\nOct 17 00:00:04 ebpf-chaos systemd[1]: Finished Daily dpkg database backup\nservice.\n\n```\n\n\nInstruct Code Suggestions to read the file `log-data/sample.log` and print\nthe content. \n\n\n![Code Suggestions: Read log file and print\nit](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_read_log_file_and_print.png){:\n.shadow}\n\n\n```python\n\n# Read the file in log-data/sample.log and print its content\n\nwith open('log-data/sample.log', 'r') as f:\n    print(f.read())\n```\n\n\n**Tip:** You will notice the indent here. The `with open() as f:` statement\nopens a new scope where `f` is available as stream. This flow requires\nindenting )`tab`) the code block, and perform actions in this scope, calling\n`f.read()` to read the file contents, and passing the immediate value as\nparameter into the `print()` function.\n\n\nNavigate into the terminal, and run the script again with `python3\nlog_reader.py`. You will see the file content shown in the VS Code editor,\nalso printed into the terminal.\n\n\n![VS Code terminal: Read log file, and print\nit](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_terminal_print_logfile_show_file_sample.png)\n\n\n## Flow control \n\n\nReading one log file is not enough – we want to analyze all files in a given\ndirectory recursively. For the next exercise, we instruct Code Suggestions\nto create an index of all files. \n\n\nPrepare the `log-data` directory with more example files from the [log-data\ndirectory in the example\nproject](https://gitlab.com/gitlab-de/use-cases/ai/learn-with-ai/learn-python-ai/-/tree/main/log-data?ref_type=heads).\nThe directory tree should look as follows:\n\n\n```shell\n\ntree log-data                                                             ─╯\n\nlog-data\n\n├── sample.log\n\n└── var\n    └── log\n        ├── auth.log\n        ├── syslog.log\n        └── syslog_structured.log\n\n3 directories, 4 files\n\n```\n\n\n### Loops and lists to collect files \n\n\nModify the `path` variable to use the value `log-data/`. \n\n\n```python\n\n# Specify the path and file suffix in variables\n\npath = 'log-data/'\n\nfile_suffix = '.log'\n\n```\n\n\nTell Code Suggestions to read all file paths in the directory into a list.\nAfter the collection loop, print the list of file paths. \n\n\n```python\n\n# Read all file paths in the directory into a list\n\n\n# Print the list of log file paths\n\n```\n\n\n![Code Suggestion, collect file\npaths](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_collect_files.png){:\n.shadow}\n\n\nAn example of a suggestion could look like this:\n\n\n```python\n\n# Read all file paths in the directory into a list\n\nimport os\n\n\n# Read all file paths in the directory into a list\n\nlog_files = []\n\nfor root, directories, files in os.walk(path):\n    for file in files:\n        if file.endswith(file_suffix):\n            log_files.append(os.path.join(root, file))\n\n# Print the list of log file paths\n\n\nprint(log_files)\n\n```\n\n\nLet's analyze what happens here: The `import os` statement is required to\nbring the `os` library into the current scope, and we are able to call\n`os.walk()` later. The `log_files`\n[list](https://docs.python.org/3/library/stdtypes.html#sequence-types-list-tuple-range)\nis initialized as an empty list using empty brackets. `os.walk()` expects a\npath as directory tree to start searching for files. The function returns a\ngenerator object, which will walk the directory tree recursively. The\nreturned tuples include the collected files, which we want to access in a\nloop iteraor, using the `for` loop notation. When the file ends with the\ndefined suffix, its full path is appended to the list. This is an optimized\nand complex example. Do not worry about understanding everything just yet -\nwe will revisit this later. \n\n\n### Conditionally collect files \n\n\nModify the instructions and add the Boolean flag evaluation for\n`read_all_files_recursively` as an input to the glob() function. \n\n\n```python\n\n# Read all file paths in the top level directory into a list\n\n# If read_all_files_recursively is True, read all files recursively\n\n```\n\n\n![Code Suggestions, read files recursively\nconditionally](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_read_files_recursively_conditionally.png){:\n.shadow}\n\n\n```\n\n# Read all file paths in the top level directory \n\nimport os\n\n\n# Read all file paths in the top level directory into a list\n\n# If read_all_files_recursively is True, read all files recursively\n\n\nlog_files = []\n\nfor file in os.listdir(path):\n    if file.endswith(file_suffix):\n        log_files.append(os.path.join(path, file))\n\nif read_all_files_recursively:\n    for root, directories, files in os.walk(path):\n        for file in files:\n            if file.endswith(file_suffix):               \n                log_files.append(os.path.join(root, file))\n\n# Print log_files\n\nprint(log_files)\n\n```\n\n\nThe result is not optimal yet because it always executes the first loop, and\noptionally the second loop. This flow leads to duplicated results when the\nscript is executed.\n\n\n```\n\npython3 log_reader.py\n\n\n['log-data/sample.log', 'log-data/sample.log', 'log-data/var/log/auth.log']\n\n```\n\n\nExperiment with Code Suggestions instructions to get a solution for the\nproblem. There are different approaches you can take: \n\n\n1) A potential solution is to wrap the source code into an if-then-else\nblock, and move the `os.listdir()` loop into the else-block. \n\n\n```python\n\nif read_all_files_recursively:\n    for root, directories, files in os.walk(path):\n        for file in files:\n            if file.endswith(file_suffix):               \n                log_files.append(os.path.join(root, file))\nelse:\n    for file in os.listdir(path):\n        if file.endswith(file_suffix):\n            log_files.append(os.path.join(path, file))  \n\n```\n\n\n2) Alternatively, do not use `append()` to always add a new list entry, but\ncheck if the item exists in the list first. \n\n\n```python\n\nfor file in os.listdir(path):\n    if file.endswith(file_suffix):\n        # check if the entry exists in the list already\n        if os.path.isfile(os.path.join(path, file)):\n            log_files.append(os.path.join(path, file))\n\nif read_all_files_recursively:\n    for root, directories, files in os.walk(path):\n        for file in files:\n            if file.endswith(file_suffix):\n                # check if the entry exists in the list already\n                if file not in log_files:\n                    log_files.append(os.path.join(root, file))\n```\n\n\n3) Or, we could eliminate duplicate entries after collecting all items.\nPython allows converting lists into\n[sets](https://docs.python.org/3/library/stdtypes.html#set-types-set-frozenset),\nwhich hold unique entries. After applying `set()`, you can again convert the\nset back into a list. Code Suggestions knows about this possibility, and\nwill help with the comment `# Ensure that only unique file paths are in the\nlist` \n\n\n![Code Suggestions, converting a list to unique\nitems](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_unique_list.png){:\n.shadow}\n\n\n```python\n\n# Ensure that only unique file paths are in the list\n\n\nlog_files = list(set(log_files))\n\n```\n\n\n4) Take a step back and evaluate whether the variable\nread_all_files_recursively makes sense. Maybe the default behavior should\njust be reading all files recursively?\n\n\n**Tip for testing different paths in VS Code:** Select the code blocks, and\npress [`cmd /` on\nmacOS](https://code.visualstudio.com/docs/getstarted/keybindings) to comment\nout the code. \n\n\n## Functions \n\n\nLet's create a function called `parse_log_file` that parses a log file, and\nreturns the extracted data. We will define the expected log format and\ncolumns to extract, following the [syslog format\nspecification](https://en.wikipedia.org/wiki/Syslog). There are different\nlog format types and also customized formats by developers that need to be\ntaken into account – exercise for later. \n\n\n### Start with a simple log format \n\n\nInspect a running Linux VM, or use the following example log file example\nfor additional implementation.\n\n\n```\n\nless /var/log/syslog | grep -v docker \n\n\nOct 17 00:00:04 ebpf-chaos systemd[1]: Starting Daily dpkg database backup\nservice...\n\nOct 17 00:00:04 ebpf-chaos systemd[1]: Starting Rotate log files...\n\nOct 17 00:00:04 ebpf-chaos systemd[1]: dpkg-db-backup.service: Deactivated\nsuccessfully.\n\nOct 17 00:00:04 ebpf-chaos systemd[1]: Finished Daily dpkg database backup\nservice.\n\nOct 17 00:00:04 ebpf-chaos systemd[1]: logrotate.service: Deactivated\nsuccessfully.\n\nOct 17 00:00:04 ebpf-chaos systemd[1]: Finished Rotate log files.\n\nOct 17 00:17:01 ebpf-chaos CRON[727495]: (root) CMD (   cd / && run-parts\n--report /etc/cron.hourly)\n\n```\n\n\nWe can create an algorithm to split each log line by whitespaces, and then\njoin the results again. Let's ask Code Suggestions for help. \n\n\n```python\n\n# Split log line \"Oct 17 00:00:04 ebpf-chaos systemd[1]: Finished Rotate log\nfiles.\" by whitespaces and save in a list\n\n\nlog_line = \"Oct 17 00:00:04 ebpf-chaos systemd[1]: Finished Rotate log\nfiles.\"\n\nlog_line_split = log_line.split(\" \")\n\nprint(log_line_split)\n\n```\n\n\nRun the script again to verify the result.\n\n\n```shell\n\npython3 log_reader.py\n\n\n['Oct', '17', '00:00:04', 'ebpf-chaos', 'systemd[1]:', 'Finished', 'Rotate',\n'log', 'files.']\n\n```\n\n\nThe first three items are part of the datetime string, followed by the host,\nservice, and remaining log message items. Let's practice string operations\nin Python as the next step. \n\n\n### String and data structure operations\n\n\nLet's ask Code Suggestions for help with learning to join strings, and\nperform list operations.\n\n\n1. Join the first three items with a whitespace again. \n\n2. Keep host and service. \n\n3. Join the remaining variable item count into a string, separated with\nwhitespaces, again. \n\n4. Store the identified column keys, and their respective values in a new\ndata structure:\n[dictionary](https://docs.python.org/3/library/stdtypes.html#mapping-types-dict). \n\n\n![Code suggestions for list items with string\noperations](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_list_items_string_join_extract.png){:\n.shadow}\n\n\n```shell \n\npython3 log_reader.py\n\n\n# Array\n\n['Oct', '17', '00:00:04', 'ebpf-chaos', 'systemd[1]:', 'Finished', 'Rotate',\n'log', 'files.']\n\n\n# Dictionary \n\n{'datetime': 'Oct 17 00:00:04', 'host': 'ebpf-chaos', 'service':\n'systemd[1]:', 'message': ' ebpf-chaos systemd[1]: Finished Rotate log\nfiles.'}\n\n```\n\n\nA working suggestion can look like the following:\n\n\n```python\n\n# Initialize results dictionary with empty values for datetime, host,\nservice, message\n\n# Loop over log line split \n\n# Join the first three list items as date string\n\n# Item 4: host \n\n# Item 5: service\n\n# Join the remaining items into a string, separated with whitespaces \n\n# Print the results after the loop \n\n\nresults = {'datetime': '', 'host': '', 'service': '', 'message': ''}\n\n\nfor item in log_line_split:\n\n    if results['datetime'] == '':\n        results['datetime'] = ' '.join(log_line_split[0:3])\n\n    elif results['host'] == '':\n        results['host'] = log_line_split[3]\n\n    elif results['service'] == '':\n        results['service'] = log_line_split[4]\n\n    else:\n        results['message'] += ' ' + item\n\nprint(results)\n\n\n```\n\n\nThe suggested algorithm loops over all log line items, and applies the same\noperation for the first three items. `log_line_split[0:3]` extracts a slice\nof three items into a new list. Calling `join()` on a separator character\nand passing the array as an argument joins the items into a string. The\nalgorithm continues to check for not initialized values for host (Item 4)\nand service (Item 5)and concludes with the remaining list items appended\ninto the message string. To be honest, I would have used a slightly\ndifferent algorithm, but it is a great learning curve to see other\nalgorithms, and ways to implement them. Practice with different\ninstructions, and data structures, and continue printing the data sets. \n\n\n**Tip:** If you need to terminate a script early, you can use `sys.exit()`.\nThe remaining code will not be executed. \n\n\n```python\n\nimport sys \n\nsys.exit(1)\n\n```\n\n\nImagine doing these operations for different log formats, and message types\n– it can get complicated and error-prone very quickly. Maybe there is\nanother approach. \n\n\n### Parse log files using regular expressions\n\n\nThere are different syslog format RFCs – [RFC\n3164](https://datatracker.ietf.org/doc/html/rfc3164) is obsolete but still\nfound in the wild as default configuration (matching the pattern above),\nwhile [RFC 5424](https://datatracker.ietf.org/doc/html/rfc5424) is more\nmodern, including datetime with timezone information. Parsing this format\ncan be tricky, so let's ask Code Suggestions for advice. \n\n\nIn some cases, the suggestions include regular expressions. They might not\nmatch immediately, making the code more complex to debug, with trial and\nerrors. A good standalone resource to text and explain regular expressions\nis [regex101.com](https://regex101.com/).  \n\n\n**Tip:** You can skip diving deep into regular expressions using the\nfollowing code snippet as a quick cheat. The next step involves instructing\nCode Suggestions to use these log patterns, and help us extract all valuable\ncolumns. \n\n\n```python\n\n# Define the syslog log format regex in a dictionary\n\n# Add entries for RFC3164, RFC5424\n\nregex_log_pattern = {\n    'rfc3164': '([A-Z][a-z][a-z]\\s{1,2}\\d{1,2}\\s\\d{2}[:]\\d{2}[:]\\d{2})\\s([\\w][\\w\\d\\.@-]*)\\s(.*)$',\n    'rfc5424': '(?:(\\d{4}[-]\\d{2}[-]\\d{2}[T]\\d{2}[:]\\d{2}[:]\\d{2}(?:\\.\\d{1,6})?(?:[+-]\\d{2}[:]\\d{2}|Z)?)|-)\\s(?:([\\w][\\w\\d\\.@-]*)|-)\\s(.*)$;'\n}\n\n```\n\n\nWe know what the function should do, and its input parameters – the file\nname, and a log pattern to match. The log lines should be split by this\nregular expression, returning a key-value dictionary for each log line. The\nfunction should return a list of dictionaries. \n\n\n```python\n\n# Create a function that parses a log file\n\n# Input parameter: file path\n\n# Match log line against regex_log_pattern\n\n# Return the results as dictionary list: log line, pattern, extracted\ncolumns\n\n```\n\n\n![Code suggestion based on a multiline comment instruction to get a function\nthat parses a log file based on regex\npatterns](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_log_format_regex_function_instructions_01.png){:\n.shadow}\n\n\nRemember the indent for opening a new scope? The same applies for functions\nin Python. The `def` identifier requires a function name, and a list of\nparameters, followed by an opening colon. The next lines of code require the\nindent. VS Code will help with live-linting wrong indent, before the script\nexecution fails, or the CI/CD pipelines. \n\n\nContinue with Code Suggestions – it might already know that you want to\nparse all log files, and parse them using the newly created function. \n\n\n![Code suggestion to parse all log files, and print the result\nset](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_log_format_regex_function_instructions_02.png){:\n.shadow}\n\n\nA full working example can look like this: \n\n\n```\n\nimport os\n\n\n# Specify the path and file suffix in variables\n\npath = 'log-data/'\n\nfile_suffix = '.log'\n\n\n# Read all file paths in the directory into a list\n\nlog_files = []\n\nfor root, directories, files in os.walk(path):\n    for file in files:\n        if file.endswith(file_suffix):\n            log_files.append(os.path.join(root, file))\n\n# Define the syslog log format regex in a dictionary\n\n# Add entries for RFC3164, RFC5424\n\nregex_log_pattern = {\n    'rfc3164': '([A-Z][a-z][a-z]\\s{1,2}\\d{1,2}\\s\\d{2}[:]\\d{2}[:]\\d{2})\\s([\\w][\\w\\d\\.@-]*)\\s(.*)$',\n    'rfc5424': '(?:(\\d{4}[-]\\d{2}[-]\\d{2}[T]\\d{2}[:]\\d{2}[:]\\d{2}(?:\\.\\d{1,6})?(?:[+-]\\d{2}[:]\\d{2}|Z)?)|-)\\s(?:([\\w][\\w\\d\\.@-]*)|-)\\s(.*)$;'\n}\n\n\n# Create a function that parses a log file\n\n# Input parameter: file path\n\n# Match log line against regex_log_pattern\n\n# Return the results as dictionary list: log line, pattern name, extracted\ncolumns\n\nimport re\n\n\ndef parse_log_file(file_path):\n    # Read the log file\n    with open(file_path, 'r') as f:\n        log_lines = f.readlines()\n\n    # Create a list to store the results\n    results = []\n\n    # Iterate over the log lines\n    for log_line in log_lines:\n        # Match the log line against the regex pattern\n        for pattern_name, pattern in regex_log_pattern.items():\n            match = re.match(pattern, log_line)\n\n            # If the log line matches the pattern, add the results to the list\n            if match:\n                extracted_columns = match.groups()\n                results.append({\n                    'log_line': log_line,\n                    'pattern_name': pattern_name,\n                    'extracted_columns': extracted_columns,\n                    'source_file': file_path\n                })\n\n    # Return the results\n    return results\n\n# Parse all files and print results\n\nfor log_file in log_files:\n    results = parse_log_file(log_file)\n    print(results)\n```\n\n\nLet's unpack what the `parse_log_file()` function does:\n\n\n1. Opens the file from `file_path` parameter. \n\n2. Reads all lines into a new variable `log_lines`. \n\n3. Creates a results list to store all items. \n\n4. Iterates over the log lines. \n\n5. Matches against all regex patterns configured in regex_log_pattern. \n\n6. If a match is found, extracts the matching column values.\n\n7. Creates a results item, including the values for the keys `log_line`,\n`pattern_name`, `extracted_colums`, `source_file`. \n\n8. Appends the results item to the results list.\n\n9. Returns the results list. \n\n\nThere are different variations to this – especially for the returned result\ndata structure. For this specific case, log lines come as list already.\nAdding a dictionary object instead of a raw log line allows function callers\nto extract the desired information in the next step. Once a working example\nhas been implemented, you can refactor the code later, too. \n\n\n### Advanced log format: auth.log\n\n\nParsing the syslog on a Linux distribution might not unveil the necessary\ndata to analyze. On a virtual machine that exposes port 22 (SSH) to the\nworld, the authentication log is much more interesting – plenty of bots and\nmalicious actors testing default password combinations and often brute force\nattacks.\n\n\nThe following snippet from `/var/log/auth.log` on one of my private servers\nshows the authentication log format and the random attempts from bots using\ndifferent usernames, etc. \n\n\n```\n\nOct 15 00:00:19 ebpf-chaos sshd[3967944]: Failed password for invalid user\nubuntu from 93.254.246.194 port 48840 ssh2\n\nOct 15 00:00:20 ebpf-chaos sshd[3967916]: Failed password for root from\n180.101.88.227 port 44397 ssh2\n\nOct 15 00:00:21 ebpf-chaos sshd[3967944]: Received disconnect from\n93.254.246.194 port 48840:11: Bye Bye [preauth]\n\nOct 15 00:00:21 ebpf-chaos sshd[3967944]: Disconnected from invalid user\nubuntu 93.254.246.194 port 48840 [preauth]\n\nOct 15 00:00:24 ebpf-chaos sshd[3967916]: Failed password for root from\n180.101.88.227 port 44397 ssh2\n\nOct 15 00:00:25 ebpf-chaos sshd[3967916]: Received disconnect from\n180.101.88.227 port 44397:11:  [preauth]\n\nOct 15 00:00:25 ebpf-chaos sshd[3967916]: Disconnected from authenticating\nuser root 180.101.88.227 port 44397 [preauth]\n\nOct 15 00:00:25 ebpf-chaos sshd[3967916]: PAM 2 more authentication\nfailures; logname= uid=0 euid=0 tty=ssh ruser= rhost=180.101.88.227 \nuser=root\n\nOct 15 00:00:25 ebpf-chaos sshd[3967998]: Invalid user teamspeak from\n185.218.20.10 port 33436\n\n```\n\n\n**Tip for intrusion prevention:** Add a firewall setup, and use\n[fail2ban](https://en.wikipedia.org/wiki/Fail2ban) to block invalid auth\nlogins. \n\n\nThe next exercise is to extend the logic to understand the free form log\nmessage parts, for example `Failed password for invalid user ubuntu from\n93.254.246.194 port 48840 ssh2`. The task is to store the data in an\noptional dictionary with key value pairs. \n\n\nCreate a new function that takes the previously parsed log line results as\ninput, and specifically parses the last list item for each line.\n\n\n1. Count the number of `Failed password` and `Invalid user` messages.\n\n2. Return the results with count, log file, pattern \n\n\n![Code suggestions for a log file message parser to count auth.log\nfailures](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_parse_log_message_auth_log.png){:\n.shadow}\n\n\nA working suggestion can look like the following code:\n\n\n```python\n\n# Create a function that parses a log file message from the last\nextracted_columns entry \n\n# Input: Parsed log lines results list \n\n# Loop over all log lines in the list, and extract the last list item as\nmessage \n\n# Count failure strings in the message: Failed password, Invalid user \n\n# Return the results if failure count greater 0: log_file, count, failure\nstring\n\ndef parse_log_file_message(results):\n    failure_results = []\n\n    # Iterate over the log lines\n    for result in results:\n        # Extract the message from the last list item\n        message = result['extracted_columns'][-1]\n\n        # Count the number of failure strings in the message\n        failure_count = message.count('Failed password') + message.count('Invalid user')\n\n        # If the failure count is greater than 0, add the results to the list\n        if failure_count > 0:\n            failure_results.append({\n                'log_file': result['source_file'],\n                'count': failure_count,\n                'failure_string': message\n            })\n\n    # Return the results\n    return failure_results\n\n# Parse all files and print results\n\nfor log_file in log_files:\n    results = parse_log_file(log_file)\n    failure_results = parse_log_file_message(results)\n    print(failure_results)\n```\n\n\nThe algorithm follows the previous implementations: First, create a results\narray to store matching data. Then, iterate over the already parsed\nlog_lines in the list. Each log line contains the `extracted_columns` key,\nwhich holds the free-form message string at the end. The next step is to\ncall the string object function `count()` to count how many times a given\ncharacter sequence is contained in a string. The returned numbers are added\nup to the `failure_count` variable. If it is greater than zero, the result\nis added to the results list, including the `log_file`, `count` and\n`failure_string` key-value pairs. After returning the parsed log message\nresults, loop through all log files, parse them, and print the results\nagain. \n\n\nExecute the script to inspect the detected matches. Note that the data\nstructure can be optimized in future learning steps.\n\n\n```\n\npython3 log_reader.py\n\n\n[{'log_file': 'log-data/var/log/auth.log', 'count': 1, 'failure_string':\n'sshd[3967944]: Failed password for invalid user ubuntu from 93.254.246.194\nport 48840 ssh2'}, {'log_file': 'log-data/var/log/auth.log', 'count': 1,\n'failure_string': 'sshd[3967916]: Failed password for root from\n180.101.88.227 port 44397 ssh2'}, {'log_file': 'log-data/var/log/auth.log',\n'count': 1, 'failure_string': 'sshd[3967916]: Failed password for root from\n180.101.88.227 port 44397 ssh2'}, {'log_file': 'log-data/var/log/auth.log',\n'count': 1, 'failure_string': 'sshd[3967998]: Invalid user teamspeak from\n185.218.20.10 port 33436'}, {'log_file': 'log-data/var/log/auth.log',\n'count': 1, 'failure_string': 'sshd[3967998]: Failed password for invalid\nuser teamspeak from 185.218.20.10 port 33436 ssh2'}, {'log_file':\n'log-data/var/log/auth.log', 'count': 1, 'failure_string': 'sshd[3968077]:\nInvalid user mcserver from 218.211.33.146 port 50950'}]\n\n\n```\n\n\n### Parsing more types: Structured logging\n\n\nApplication developers can use the structured logging format to help machine\nparsers to extract the key value pairs. Prometheus provides this information\nin the following structure in syslog:\n\n\n```\n\nOct 17 19:00:10 ebpf-chaos prometheus[594]: ts=2023-10-17T19:00:10.425Z\ncaller=compact.go:519 level=info component=tsdb m\n\nsg=\"write block\" mint=1697558404661 maxt=1697565600000\nulid=01HCZG4ZX51GTH8H7PVBYDF4N6 duration=148.675854ms\n\nOct 17 19:00:10 ebpf-chaos prometheus[594]: ts=2023-10-17T19:00:10.464Z\ncaller=head.go:1213 level=info component=tsdb msg\n\n=\"Head GC completed\" caller=truncateMemory duration=6.845245ms\n\nOct 17 19:00:10 ebpf-chaos prometheus[594]: ts=2023-10-17T19:00:10.467Z\ncaller=checkpoint.go:100 level=info component=tsd\n\nb msg=\"Creating checkpoint\" from_segment=2308 to_segment=2309\nmint=1697565600000\n\nOct 17 19:00:10 ebpf-chaos prometheus[594]: ts=2023-10-17T19:00:10.517Z\ncaller=head.go:1185 level=info component=tsdb msg\n\n=\"WAL checkpoint complete\" first=2308 last=2309 duration=50.052621ms\n\n```\n\n\nThis format is easier to parse for scripts, because the message part can be\nsplit by whitespaces, and the assignment character `=`. Strings that contain\nwhitespaces are guaranteed to be enclosed with quotes. The downside is that\nnot all programming language libraries provide ready-to-use structured\nlogging libraries, making it harder for developers to adopt this format. \n\n\nPractice following the previous example to parse the `auth.log` format with\nadditional information. Tell Code Suggestions that you are expecting\nstructured logging format with key-value pairs, and which returned data\nstructure would be great:\n\n\n```python\n\n# Create a function that parses a log file message from the last\nextracted_columns entry \n\n# Input: Parsed log lines results list \n\n# Loop over all log lines in the list, and extract the last list item as\nmessage \n\n# Parse structured logging key-value pairs into a dictionary\n\n# Return results: log_file, dictionary \n\n```\n\n\n![Code suggestions for parsing structured logging format in the log file\nmessage\npart](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_propose_structured_logging_message_parser.png){:\n.shadow}\n\n\n### Printing results and formatting\n\n\nMany of the examples used the `print()` statement to print the content on\nthe terminal. Python objects in the standard library support text\nrepresentation, and for some types it makes more sense (string, numbers),\nothers cannot provide much details (functions, etc.). \n\n\nYou can also pretty-print almost any data structure (lists, sets,\ndictionaries) in Python. The JSON library can format data structures in a\nreadable format, and use a given spaces indent to draw the JSON structure on\nthe terminal. Note that we use the `import` statement here to bring\nlibraries into the current scope, and access their methods, for example\n`json.dumps`. \n\n\n```python\n\nimport json \n\nprint(json.dumps(structured_results, indent=4))\n\n```\n\n\n![Parsing log files into structured objects, example result after following\nthe\nexercises](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_terminal_parsing_logs_and_pretty_print_results.png)\n\n\nPractice with modifying the existing source code, and replace the code\nsnippets where appropriate. Alternatively, create a new function that\nimplements pretty printing.\n\n\n```python\n\n# Create a pretty print function with indent 4 \n\n```\n\n\n![Code suggestions for pretty-print\nfunction](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/vs_code_code_suggestions_pretty_print.png){:\n.shadow}\n\n\nThis idea works in a similar fashion with creating your own logger\nfunctions...but we have to stop learning and take a break. Before we\nconclude the first blog post in the learning series, let's ensure that CI/CD\nand dependencies are set up properly for future exercises and async\npractice. \n\n\n## Dependency management and continuous verification  \n\n\n### Pip and pyenv: Bringing structure into Python \n\n\nDependencies can be managed in the [`requirements.txt`\nfile](https://pip.pypa.io/en/stable/reference/requirements-file-format/),\nincluding optional version dependencies. Using `requirements.txt` file also\nhas the advantage of being the single source of truth for local development\nenvironments and running continuous builds with GitLab CI/CD. They can use\nthe same installation command:\n\n\n```shell\n\npip install -r requirements.txt\n\n```\n\n\nSome Linux distributions do not install the pip package manager by default,\nfor example, Ubuntu/Debian require to install the `python3-pip` package. \n\n\nYou can manage different virtual environments using\n[venv](https://docs.python.org/3/library/venv.html). This workflow can be\nbeneficial to install Python dependencies into the virtual environment,\ninstead of globally into the OS path which might break on upgrades. \n\n\n```shell\n\npip install virtualenv\n\nvirtualenv venv\n\nsource venv/bin/activate \n\n```\n\n\n### Automation: Configure CI/CD pipeline for Python\n\n\nThe [CI/CD pipeline](https://docs.gitlab.com/ee/ci/) should continuously\nlint, test, and build the code. You can mimic the steps from the local\ndevelopment, and add testing more environments and versions: \n\n\n1. Lint the source code and check for formatting errors. The example uses\n[Pyflakes](https://pypi.org/project/pyflakes/), a mature linter, and\n[Ruff](https://docs.astral.sh/ruff/ ), a fast linter written in Rust. \n\n2. Cache dependencies installed using the pip package manager, following the\ndocumentation for [Python caching in GitLab\nCI/CD](https://docs.gitlab.com/ee/ci/caching/#cache-python-dependencies).\nThis saves time and resources on repeated CI/CD pipeline runs.\n\n3. Use parallel matrix builds to test different Python versions, based on\nthe available container images on Docker Hub and their tags. \n\n\n```yaml\n\nstages:\n  - lint\n  - test\n\ndefault:\n  image: python:latest\n  cache:                      # Pip's cache doesn't store the python packages\n    paths:                    # https://pip.pypa.io/en/stable/topics/caching/\n      - .cache/pip\n  before_script:\n    - python -V               # Print out python version for debugging\n    - pip install virtualenv\n    - virtualenv venv\n    - source venv/bin/activate\n\nvariables:  # Change pip's cache directory to be inside the project\ndirectory since we can only cache local items.\n  PIP_CACHE_DIR: \"$CI_PROJECT_DIR/.cache/pip\"\n\n# lint template\n\n.lint-tmpl:\n  script:\n    - echo \"Linting Python version $VERSION\"\n  parallel:\n    matrix:\n      - VERSION: ['3.9', '3.10', '3.11', '3.12']   # https://hub.docker.com/_/python\n\n# Lint, using Pyflakes: https://pypi.org/project/pyflakes/ \n\nlint-pyflakes:\n  extends: [.lint-tmpl]\n  script:\n    - pip install -r requirements.txt\n    - find . -not -path './venv' -type f -name '*.py' -exec sh -c 'pyflakes {}' \\;\n\n# Lint, using Ruff (Rust): https://docs.astral.sh/ruff/ \n\nlint-ruff:\n  extends: [.lint-tmpl]\n  script:\n    - pip install -r requirements.txt\n    - ruff .\n```\n\n\n![GitLab CI/CD Python lint job view, part of matrix\nbuilds](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/gitlab_cicd_python_lint_job_log_view.png)\n\n\n## What is next \n\n\nFun fact: GitLab Duo Code Suggestions also helped writing this blog post in\nVS Code, knowing about the context. In the screenshot, I just wanted to add\na tip about [regex101](https://regex101.com/), and GitLab Duo already knew. \n\n\n![Writing the GitLab blog post in VS Code with support from GitLab Duo Code\nSuggestions](https://about.gitlab.com/images/blogimages/learn-python-with-ai-code-suggestions-getting-started/gitlab_duo_code_suggestions_helping_write_the_learning_python_ai_blog_post.png)\n\n\nIn an upcoming blog, we will look into advanced learning examples with more\npractical (log) filtering and parallel operations, how to fetch logs from\nAPI endpoints (CI/CD job logs for example), and more data analytics and\nobservability. Until then, here are a few recommendations for practicing\nasync.\n\n\n### Async learning exercises\n\n\n- Implement the missing `log_file_limit` variable check. \n\n- Print a summary of the results in Markdown, not only JSON format. \n\n- Extend the script to accept a search filter as environment variable.\nPrint/count only filtered results. \n\n- Extend the script to accept a date range. It might require parsing the\ndatetime column in a time object to compare the range. \n\n- Inspect a GitLab CI/CD pipeline job log, and download the raw format.\nExtend the log parser to parse this specific format, and print a summary. \n\n\n### Share your feedback\n\n\nWhich programming language are you learning or considering learning? Start a\nnew topic on our [community](/community/) forum or Discord and share your\nexperience.\n\n\nWhen you use [GitLab Duo](/gitlab-duo/) Code Suggestions, please share your\nthoughts and feedback [in the feedback\nissue](https://gitlab.com/gitlab-org/gitlab/-/issues/405152).\n","ai-ml",[23,24,25,26],"DevSecOps platform","tutorial","workflow","AI/ML",{"slug":28,"featured":6,"template":29},"learning-python-with-a-little-help-from-ai-code-suggestions","BlogPost","content:en-us:blog:learning-python-with-a-little-help-from-ai-code-suggestions.yml","yaml","Learning Python With A Little Help From Ai Code Suggestions","content","en-us/blog/learning-python-with-a-little-help-from-ai-code-suggestions.yml","en-us/blog/learning-python-with-a-little-help-from-ai-code-suggestions","yml",{"_path":38,"_dir":39,"_draft":6,"_partial":6,"_locale":7,"data":40,"_id":461,"_type":31,"title":462,"_source":33,"_file":463,"_stem":464,"_extension":36},"/shared/en-us/main-navigation","en-us",{"logo":41,"freeTrial":46,"sales":51,"login":56,"items":61,"search":392,"minimal":423,"duo":442,"pricingDeployment":451},{"config":42},{"href":43,"dataGaName":44,"dataGaLocation":45},"/","gitlab logo","header",{"text":47,"config":48},"Get free trial",{"href":49,"dataGaName":50,"dataGaLocation":45},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":52,"config":53},"Talk to sales",{"href":54,"dataGaName":55,"dataGaLocation":45},"/sales/","sales",{"text":57,"config":58},"Sign in",{"href":59,"dataGaName":60,"dataGaLocation":45},"https://gitlab.com/users/sign_in/","sign in",[62,106,203,208,313,373],{"text":63,"config":64,"cards":66,"footer":89},"Platform",{"dataNavLevelOne":65},"platform",[67,73,81],{"title":63,"description":68,"link":69},"The most comprehensive AI-powered DevSecOps Platform",{"text":70,"config":71},"Explore our Platform",{"href":72,"dataGaName":65,"dataGaLocation":45},"/platform/",{"title":74,"description":75,"link":76},"GitLab Duo (AI)","Build software faster with AI at every stage of development",{"text":77,"config":78},"Meet GitLab Duo",{"href":79,"dataGaName":80,"dataGaLocation":45},"/gitlab-duo/","gitlab duo ai",{"title":82,"description":83,"link":84},"Why GitLab","10 reasons why Enterprises choose GitLab",{"text":85,"config":86},"Learn more",{"href":87,"dataGaName":88,"dataGaLocation":45},"/why-gitlab/","why gitlab",{"title":90,"items":91},"Get started with",[92,97,102],{"text":93,"config":94},"Platform Engineering",{"href":95,"dataGaName":96,"dataGaLocation":45},"/solutions/platform-engineering/","platform engineering",{"text":98,"config":99},"Developer Experience",{"href":100,"dataGaName":101,"dataGaLocation":45},"/developer-experience/","Developer experience",{"text":103,"config":104},"MLOps",{"href":105,"dataGaName":103,"dataGaLocation":45},"/topics/devops/the-role-of-ai-in-devops/",{"text":107,"left":108,"config":109,"link":111,"lists":115,"footer":185},"Product",true,{"dataNavLevelOne":110},"solutions",{"text":112,"config":113},"View all Solutions",{"href":114,"dataGaName":110,"dataGaLocation":45},"/solutions/",[116,141,164],{"title":117,"description":118,"link":119,"items":124},"Automation","CI/CD and automation to accelerate deployment",{"config":120},{"icon":121,"href":122,"dataGaName":123,"dataGaLocation":45},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[125,129,133,137],{"text":126,"config":127},"CI/CD",{"href":128,"dataGaLocation":45,"dataGaName":126},"/solutions/continuous-integration/",{"text":130,"config":131},"AI-Assisted Development",{"href":79,"dataGaLocation":45,"dataGaName":132},"AI assisted development",{"text":134,"config":135},"Source Code Management",{"href":136,"dataGaLocation":45,"dataGaName":134},"/solutions/source-code-management/",{"text":138,"config":139},"Automated Software Delivery",{"href":122,"dataGaLocation":45,"dataGaName":140},"Automated software delivery",{"title":142,"description":143,"link":144,"items":149},"Security","Deliver code faster without compromising security",{"config":145},{"href":146,"dataGaName":147,"dataGaLocation":45,"icon":148},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[150,154,159],{"text":151,"config":152},"Application Security Testing",{"href":146,"dataGaName":153,"dataGaLocation":45},"Application security testing",{"text":155,"config":156},"Software Supply Chain Security",{"href":157,"dataGaLocation":45,"dataGaName":158},"/solutions/supply-chain/","Software supply chain security",{"text":160,"config":161},"Software Compliance",{"href":162,"dataGaName":163,"dataGaLocation":45},"/solutions/software-compliance/","software compliance",{"title":165,"link":166,"items":171},"Measurement",{"config":167},{"icon":168,"href":169,"dataGaName":170,"dataGaLocation":45},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[172,176,180],{"text":173,"config":174},"Visibility & Measurement",{"href":169,"dataGaLocation":45,"dataGaName":175},"Visibility and Measurement",{"text":177,"config":178},"Value Stream Management",{"href":179,"dataGaLocation":45,"dataGaName":177},"/solutions/value-stream-management/",{"text":181,"config":182},"Analytics & Insights",{"href":183,"dataGaLocation":45,"dataGaName":184},"/solutions/analytics-and-insights/","Analytics and insights",{"title":186,"items":187},"GitLab for",[188,193,198],{"text":189,"config":190},"Enterprise",{"href":191,"dataGaLocation":45,"dataGaName":192},"/enterprise/","enterprise",{"text":194,"config":195},"Small Business",{"href":196,"dataGaLocation":45,"dataGaName":197},"/small-business/","small business",{"text":199,"config":200},"Public Sector",{"href":201,"dataGaLocation":45,"dataGaName":202},"/solutions/public-sector/","public sector",{"text":204,"config":205},"Pricing",{"href":206,"dataGaName":207,"dataGaLocation":45,"dataNavLevelOne":207},"/pricing/","pricing",{"text":209,"config":210,"link":212,"lists":216,"feature":300},"Resources",{"dataNavLevelOne":211},"resources",{"text":213,"config":214},"View all resources",{"href":215,"dataGaName":211,"dataGaLocation":45},"/resources/",[217,250,272],{"title":218,"items":219},"Getting started",[220,225,230,235,240,245],{"text":221,"config":222},"Install",{"href":223,"dataGaName":224,"dataGaLocation":45},"/install/","install",{"text":226,"config":227},"Quick start guides",{"href":228,"dataGaName":229,"dataGaLocation":45},"/get-started/","quick setup checklists",{"text":231,"config":232},"Learn",{"href":233,"dataGaLocation":45,"dataGaName":234},"https://university.gitlab.com/","learn",{"text":236,"config":237},"Product documentation",{"href":238,"dataGaName":239,"dataGaLocation":45},"https://docs.gitlab.com/","product documentation",{"text":241,"config":242},"Best practice videos",{"href":243,"dataGaName":244,"dataGaLocation":45},"/getting-started-videos/","best practice videos",{"text":246,"config":247},"Integrations",{"href":248,"dataGaName":249,"dataGaLocation":45},"/integrations/","integrations",{"title":251,"items":252},"Discover",[253,258,262,267],{"text":254,"config":255},"Customer success stories",{"href":256,"dataGaName":257,"dataGaLocation":45},"/customers/","customer success stories",{"text":259,"config":260},"Blog",{"href":261,"dataGaName":5,"dataGaLocation":45},"/blog/",{"text":263,"config":264},"Remote",{"href":265,"dataGaName":266,"dataGaLocation":45},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":268,"config":269},"TeamOps",{"href":270,"dataGaName":271,"dataGaLocation":45},"/teamops/","teamops",{"title":273,"items":274},"Connect",[275,280,285,290,295],{"text":276,"config":277},"GitLab Services",{"href":278,"dataGaName":279,"dataGaLocation":45},"/services/","services",{"text":281,"config":282},"Community",{"href":283,"dataGaName":284,"dataGaLocation":45},"/community/","community",{"text":286,"config":287},"Forum",{"href":288,"dataGaName":289,"dataGaLocation":45},"https://forum.gitlab.com/","forum",{"text":291,"config":292},"Events",{"href":293,"dataGaName":294,"dataGaLocation":45},"/events/","events",{"text":296,"config":297},"Partners",{"href":298,"dataGaName":299,"dataGaLocation":45},"/partners/","partners",{"backgroundColor":301,"textColor":302,"text":303,"image":304,"link":308},"#2f2a6b","#fff","Insights for the future of software development",{"altText":305,"config":306},"the source promo card",{"src":307},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":309,"config":310},"Read the latest",{"href":311,"dataGaName":312,"dataGaLocation":45},"/the-source/","the source",{"text":314,"config":315,"lists":317},"Company",{"dataNavLevelOne":316},"company",[318],{"items":319},[320,325,331,333,338,343,348,353,358,363,368],{"text":321,"config":322},"About",{"href":323,"dataGaName":324,"dataGaLocation":45},"/company/","about",{"text":326,"config":327,"footerGa":330},"Jobs",{"href":328,"dataGaName":329,"dataGaLocation":45},"/jobs/","jobs",{"dataGaName":329},{"text":291,"config":332},{"href":293,"dataGaName":294,"dataGaLocation":45},{"text":334,"config":335},"Leadership",{"href":336,"dataGaName":337,"dataGaLocation":45},"/company/team/e-group/","leadership",{"text":339,"config":340},"Team",{"href":341,"dataGaName":342,"dataGaLocation":45},"/company/team/","team",{"text":344,"config":345},"Handbook",{"href":346,"dataGaName":347,"dataGaLocation":45},"https://handbook.gitlab.com/","handbook",{"text":349,"config":350},"Investor relations",{"href":351,"dataGaName":352,"dataGaLocation":45},"https://ir.gitlab.com/","investor relations",{"text":354,"config":355},"Trust Center",{"href":356,"dataGaName":357,"dataGaLocation":45},"/security/","trust center",{"text":359,"config":360},"AI Transparency Center",{"href":361,"dataGaName":362,"dataGaLocation":45},"/ai-transparency-center/","ai transparency center",{"text":364,"config":365},"Newsletter",{"href":366,"dataGaName":367,"dataGaLocation":45},"/company/contact/","newsletter",{"text":369,"config":370},"Press",{"href":371,"dataGaName":372,"dataGaLocation":45},"/press/","press",{"text":374,"config":375,"lists":376},"Contact us",{"dataNavLevelOne":316},[377],{"items":378},[379,382,387],{"text":52,"config":380},{"href":54,"dataGaName":381,"dataGaLocation":45},"talk to sales",{"text":383,"config":384},"Support portal",{"href":385,"dataGaName":386,"dataGaLocation":45},"https://support.gitlab.com","support portal",{"text":388,"config":389},"Customer portal",{"href":390,"dataGaName":391,"dataGaLocation":45},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":393,"login":394,"suggestions":401},"Close",{"text":395,"link":396},"To search repositories and projects, login to",{"text":397,"config":398},"gitlab.com",{"href":59,"dataGaName":399,"dataGaLocation":400},"search login","search",{"text":402,"default":403},"Suggestions",[404,406,410,412,416,420],{"text":74,"config":405},{"href":79,"dataGaName":74,"dataGaLocation":400},{"text":407,"config":408},"Code Suggestions (AI)",{"href":409,"dataGaName":407,"dataGaLocation":400},"/solutions/code-suggestions/",{"text":126,"config":411},{"href":128,"dataGaName":126,"dataGaLocation":400},{"text":413,"config":414},"GitLab on AWS",{"href":415,"dataGaName":413,"dataGaLocation":400},"/partners/technology-partners/aws/",{"text":417,"config":418},"GitLab on Google Cloud",{"href":419,"dataGaName":417,"dataGaLocation":400},"/partners/technology-partners/google-cloud-platform/",{"text":421,"config":422},"Why GitLab?",{"href":87,"dataGaName":421,"dataGaLocation":400},{"freeTrial":424,"mobileIcon":429,"desktopIcon":434,"secondaryButton":437},{"text":425,"config":426},"Start free trial",{"href":427,"dataGaName":50,"dataGaLocation":428},"https://gitlab.com/-/trials/new/","nav",{"altText":430,"config":431},"Gitlab Icon",{"src":432,"dataGaName":433,"dataGaLocation":428},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":430,"config":435},{"src":436,"dataGaName":433,"dataGaLocation":428},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":438,"config":439},"Get Started",{"href":440,"dataGaName":441,"dataGaLocation":428},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/compare/gitlab-vs-github/","get started",{"freeTrial":443,"mobileIcon":447,"desktopIcon":449},{"text":444,"config":445},"Learn more about GitLab Duo",{"href":79,"dataGaName":446,"dataGaLocation":428},"gitlab duo",{"altText":430,"config":448},{"src":432,"dataGaName":433,"dataGaLocation":428},{"altText":430,"config":450},{"src":436,"dataGaName":433,"dataGaLocation":428},{"freeTrial":452,"mobileIcon":457,"desktopIcon":459},{"text":453,"config":454},"Back to pricing",{"href":206,"dataGaName":455,"dataGaLocation":428,"icon":456},"back to pricing","GoBack",{"altText":430,"config":458},{"src":432,"dataGaName":433,"dataGaLocation":428},{"altText":430,"config":460},{"src":436,"dataGaName":433,"dataGaLocation":428},"content:shared:en-us:main-navigation.yml","Main Navigation","shared/en-us/main-navigation.yml","shared/en-us/main-navigation",{"_path":466,"_dir":39,"_draft":6,"_partial":6,"_locale":7,"title":467,"button":468,"image":473,"config":477,"_id":479,"_type":31,"_source":33,"_file":480,"_stem":481,"_extension":36},"/shared/en-us/banner","is now in public beta!",{"text":469,"config":470},"Try the Beta",{"href":471,"dataGaName":472,"dataGaLocation":45},"/gitlab-duo/agent-platform/","duo banner",{"altText":474,"config":475},"GitLab Duo Agent Platform",{"src":476},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1753720689/somrf9zaunk0xlt7ne4x.svg",{"layout":478},"release","content:shared:en-us:banner.yml","shared/en-us/banner.yml","shared/en-us/banner",{"_path":483,"_dir":39,"_draft":6,"_partial":6,"_locale":7,"data":484,"_id":722,"_type":31,"title":723,"_source":33,"_file":724,"_stem":725,"_extension":36},"/shared/en-us/main-footer",{"text":485,"source":486,"edit":492,"contribute":497,"config":502,"items":507,"minimal":714},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":487,"config":488},"View page source",{"href":489,"dataGaName":490,"dataGaLocation":491},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":493,"config":494},"Edit this page",{"href":495,"dataGaName":496,"dataGaLocation":491},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":498,"config":499},"Please contribute",{"href":500,"dataGaName":501,"dataGaLocation":491},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":503,"facebook":504,"youtube":505,"linkedin":506},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[508,555,607,651,680],{"title":204,"links":509,"subMenu":524},[510,514,519],{"text":511,"config":512},"View plans",{"href":206,"dataGaName":513,"dataGaLocation":491},"view plans",{"text":515,"config":516},"Why Premium?",{"href":517,"dataGaName":518,"dataGaLocation":491},"/pricing/premium/","why premium",{"text":520,"config":521},"Why Ultimate?",{"href":522,"dataGaName":523,"dataGaLocation":491},"/pricing/ultimate/","why ultimate",[525],{"title":526,"links":527},"Contact Us",[528,531,533,535,540,545,550],{"text":529,"config":530},"Contact sales",{"href":54,"dataGaName":55,"dataGaLocation":491},{"text":383,"config":532},{"href":385,"dataGaName":386,"dataGaLocation":491},{"text":388,"config":534},{"href":390,"dataGaName":391,"dataGaLocation":491},{"text":536,"config":537},"Status",{"href":538,"dataGaName":539,"dataGaLocation":491},"https://status.gitlab.com/","status",{"text":541,"config":542},"Terms of use",{"href":543,"dataGaName":544,"dataGaLocation":491},"/terms/","terms of use",{"text":546,"config":547},"Privacy statement",{"href":548,"dataGaName":549,"dataGaLocation":491},"/privacy/","privacy statement",{"text":551,"config":552},"Cookie preferences",{"dataGaName":553,"dataGaLocation":491,"id":554,"isOneTrustButton":108},"cookie preferences","ot-sdk-btn",{"title":107,"links":556,"subMenu":563},[557,560],{"text":23,"config":558},{"href":72,"dataGaName":559,"dataGaLocation":491},"devsecops platform",{"text":130,"config":561},{"href":79,"dataGaName":562,"dataGaLocation":491},"ai-assisted development",[564],{"title":565,"links":566},"Topics",[567,572,577,582,587,592,597,602],{"text":568,"config":569},"CICD",{"href":570,"dataGaName":571,"dataGaLocation":491},"/topics/ci-cd/","cicd",{"text":573,"config":574},"GitOps",{"href":575,"dataGaName":576,"dataGaLocation":491},"/topics/gitops/","gitops",{"text":578,"config":579},"DevOps",{"href":580,"dataGaName":581,"dataGaLocation":491},"/topics/devops/","devops",{"text":583,"config":584},"Version Control",{"href":585,"dataGaName":586,"dataGaLocation":491},"/topics/version-control/","version control",{"text":588,"config":589},"DevSecOps",{"href":590,"dataGaName":591,"dataGaLocation":491},"/topics/devsecops/","devsecops",{"text":593,"config":594},"Cloud Native",{"href":595,"dataGaName":596,"dataGaLocation":491},"/topics/cloud-native/","cloud native",{"text":598,"config":599},"AI for Coding",{"href":600,"dataGaName":601,"dataGaLocation":491},"/topics/devops/ai-for-coding/","ai for coding",{"text":603,"config":604},"Agentic AI",{"href":605,"dataGaName":606,"dataGaLocation":491},"/topics/agentic-ai/","agentic ai",{"title":608,"links":609},"Solutions",[610,612,614,619,623,626,630,633,635,638,641,646],{"text":151,"config":611},{"href":146,"dataGaName":151,"dataGaLocation":491},{"text":140,"config":613},{"href":122,"dataGaName":123,"dataGaLocation":491},{"text":615,"config":616},"Agile development",{"href":617,"dataGaName":618,"dataGaLocation":491},"/solutions/agile-delivery/","agile delivery",{"text":620,"config":621},"SCM",{"href":136,"dataGaName":622,"dataGaLocation":491},"source code management",{"text":568,"config":624},{"href":128,"dataGaName":625,"dataGaLocation":491},"continuous integration & delivery",{"text":627,"config":628},"Value stream management",{"href":179,"dataGaName":629,"dataGaLocation":491},"value stream management",{"text":573,"config":631},{"href":632,"dataGaName":576,"dataGaLocation":491},"/solutions/gitops/",{"text":189,"config":634},{"href":191,"dataGaName":192,"dataGaLocation":491},{"text":636,"config":637},"Small business",{"href":196,"dataGaName":197,"dataGaLocation":491},{"text":639,"config":640},"Public sector",{"href":201,"dataGaName":202,"dataGaLocation":491},{"text":642,"config":643},"Education",{"href":644,"dataGaName":645,"dataGaLocation":491},"/solutions/education/","education",{"text":647,"config":648},"Financial services",{"href":649,"dataGaName":650,"dataGaLocation":491},"/solutions/finance/","financial services",{"title":209,"links":652},[653,655,657,659,662,664,666,668,670,672,674,676,678],{"text":221,"config":654},{"href":223,"dataGaName":224,"dataGaLocation":491},{"text":226,"config":656},{"href":228,"dataGaName":229,"dataGaLocation":491},{"text":231,"config":658},{"href":233,"dataGaName":234,"dataGaLocation":491},{"text":236,"config":660},{"href":238,"dataGaName":661,"dataGaLocation":491},"docs",{"text":259,"config":663},{"href":261,"dataGaName":5,"dataGaLocation":491},{"text":254,"config":665},{"href":256,"dataGaName":257,"dataGaLocation":491},{"text":263,"config":667},{"href":265,"dataGaName":266,"dataGaLocation":491},{"text":276,"config":669},{"href":278,"dataGaName":279,"dataGaLocation":491},{"text":268,"config":671},{"href":270,"dataGaName":271,"dataGaLocation":491},{"text":281,"config":673},{"href":283,"dataGaName":284,"dataGaLocation":491},{"text":286,"config":675},{"href":288,"dataGaName":289,"dataGaLocation":491},{"text":291,"config":677},{"href":293,"dataGaName":294,"dataGaLocation":491},{"text":296,"config":679},{"href":298,"dataGaName":299,"dataGaLocation":491},{"title":314,"links":681},[682,684,686,688,690,692,694,698,703,705,707,709],{"text":321,"config":683},{"href":323,"dataGaName":316,"dataGaLocation":491},{"text":326,"config":685},{"href":328,"dataGaName":329,"dataGaLocation":491},{"text":334,"config":687},{"href":336,"dataGaName":337,"dataGaLocation":491},{"text":339,"config":689},{"href":341,"dataGaName":342,"dataGaLocation":491},{"text":344,"config":691},{"href":346,"dataGaName":347,"dataGaLocation":491},{"text":349,"config":693},{"href":351,"dataGaName":352,"dataGaLocation":491},{"text":695,"config":696},"Sustainability",{"href":697,"dataGaName":695,"dataGaLocation":491},"/sustainability/",{"text":699,"config":700},"Diversity, inclusion and belonging (DIB)",{"href":701,"dataGaName":702,"dataGaLocation":491},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":354,"config":704},{"href":356,"dataGaName":357,"dataGaLocation":491},{"text":364,"config":706},{"href":366,"dataGaName":367,"dataGaLocation":491},{"text":369,"config":708},{"href":371,"dataGaName":372,"dataGaLocation":491},{"text":710,"config":711},"Modern Slavery Transparency Statement",{"href":712,"dataGaName":713,"dataGaLocation":491},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":715},[716,718,720],{"text":541,"config":717},{"href":543,"dataGaName":544,"dataGaLocation":491},{"text":546,"config":719},{"href":548,"dataGaName":549,"dataGaLocation":491},{"text":551,"config":721},{"dataGaName":553,"dataGaLocation":491,"id":554,"isOneTrustButton":108},"content:shared:en-us:main-footer.yml","Main Footer","shared/en-us/main-footer.yml","shared/en-us/main-footer",[727,740,751,762,773,784,795,806,816,826,837,848,858,869,880,890,900,910,920,931,941,951,961,972,983,993,1004,1015,1025,1036,1046,1057,1068,1079,1090,1100,1111,1122,1132,1143,1153,1164,1175,1185,1195,1206,1216,1226,1236,1247,1258,1269,1280,1290,1301,1312,1323,1334,1344,1355,1367,1378,1389,1399,1411,1422,1432,1443,1453,1464,1474,1485,1496,1506,1516,1526,1537,1547,1557,1567,1577,1588,1598,1609,1619,1630,1640,1650,1660,1671,1682,1693,1704,1715,1727,1737,1748,1758,1769,1780,1791,1802,1812,1823,1834,1845,1856,1866,1877,1888,1899,1909,1922,1932,1943,1954,1965,1975,1986,1997,2008,2018,2028,2038,2048,2059,2069,2079,2090,2100,2111,2121,2132,2143,2153,2164,2174,2184,2194,2205,2215,2225,2236,2247,2257,2268,2279,2290,2300,2313,2324,2334,2346,2358,2368,2378,2389,2399,2410,2422,2433,2444,2455,2467,2478,2488,2498,2509,2519,2529,2540,2551,2561,2572,2583,2593,2603,2614,2625,2635,2646,2656,2667,2678,2689,2699,2709,2720,2731,2741,2751,2762,2774,2784,2794,2804,2815,2826,2836,2846,2856,2866,2876,2887,2898,2908,2919,2929,2939,2949,2959,2969,2980,2990,3000,3011,3021,3031,3042,3053,3063,3075,3085,3095,3107,3118,3129,3139,3150,3161,3172,3182,3194,3205,3215,3226,3237,3248,3259,3270,3281,3292,3302,3313,3324,3335,3345,3355,3366,3376,3386,3397,3408,3421,3432,3443,3453,3464,3476,3487,3498,3509,3519,3529,3540,3550,3561,3572,3583,3593,3603,3613,3623,3634,3645,3656,3667,3679,3690,3702,3713,3723,3733,3745,3755,3766,3776,3787,3797,3807,3818,3830,3840,3850,3860,3871,3881,3892,3902,3912,3923,3934,3945,3957,3968,3978,3989,4000,4010,4020,4031,4042,4053,4064,4074,4085,4096,4107,4117,4128,4139,4149,4160,4171,4182,4192,4202,4213,4224,4234,4245,4256,4267,4277,4287,4298,4309,4320,4331,4342,4352,4363,4374,4384,4394,4404,4416,4428,4438,4450,4460,4471,4482,4493,4504,4517,4527,4538,4549,4559,4569,4579,4590,4600,4611,4622,4632,4643,4653,4664,4675,4686,4697,4708,4719,4729,4739,4750,4761,4771,4781,4791,4802,4813,4823,4833,4843,4853,4864,4874,4884,4895,4905,4916,4926,4937,4948,4958,4968,4979,4989,4999,5010,5021,5032,5043,5053,5065,5076,5087,5097,5107,5117,5128,5139,5150,5161,5171,5182,5193,5203,5214,5226,5236,5246,5256,5267,5278,5289,5299,5309,5320,5331,5341,5353,5363,5373,5384,5394,5405,5417,5428,5438,5449,5460,5470,5481,5492,5504,5514,5524,5535,5545,5556,5566,5577,5587,5597,5608,5618,5628,5638,5648,5659,5669,5680,5691,5701,5711,5722,5732,5742,5752,5762,5773,5784,5796,5807,5818,5830,5842,5853,5864,5874,5885,5895,5905,5916,5927,5938,5948,5958,5968,5978,5988,5999,6011,6022,6034,6045,6055,6065,6076,6086,6096,6106,6116,6126,6136,6147,6157,6167,6178,6188,6198,6209,6220,6230,6242,6253,6263,6275,6286,6296,6307,6318,6328,6338,6348,6360,6370,6381,6392,6403,6414,6424,6434,6445,6457,6467,6477,6488,6498,6509,6519,6531,6542,6552,6562,6573,6585,6595,6608,6618,6630,6641,6651,6661,6672,6682,6693,6704,6715,6726,6737,6748,6759,6770,6781,6792,6803,6814,6825,6836,6847,6857,6870,6880,6891,6901,6912,6922,6932,6943,6954,6965,6975,6985,6996,7006,7017,7028,7040,7051,7061,7072,7083,7093,7103,7113,7123,7133,7144,7154,7165,7175,7186,7201,7212,7222,7233,7244,7255,7266,7277,7287,7298,7309,7320,7330,7341,7351,7361,7371,7381,7391,7402,7414,7424,7435,7446,7458,7468,7479,7489,7501,7512,7522,7532,7543,7554,7564,7575,7585,7595,7606,7617,7628,7639,7649,7660,7671,7681,7691,7701,7712,7723,7733,7743,7754,7765,7775,7785,7795,7806,7816,7827,7838,7849,7859,7869,7879,7889,7900,7911,7921,7931,7941,7951,7962],{"_path":728,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":730,"config":735,"_id":737,"_type":31,"title":731,"_source":33,"_file":738,"_stem":739,"_extension":36},"/en-us/blog/authors/aakriti-gupta","authors",{"name":731,"config":732},"Aakriti Gupta",{"headshot":733,"ctfId":734},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681960/Blog/Author%20Headshots/aakriti.jpg","aakritigupta",{"template":736},"BlogAuthor","content:en-us:blog:authors:aakriti-gupta.yml","en-us/blog/authors/aakriti-gupta.yml","en-us/blog/authors/aakriti-gupta",{"_path":741,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":742,"config":746,"_id":747,"_type":31,"title":748,"_source":33,"_file":749,"_stem":750,"_extension":36},"/en-us/blog/authors/aaron-peters-member-good-docs-project",{"name":743,"config":744},"Aaron Peters, Member, Good Docs Project",{"headshot":7,"ctfId":745},"7KZoxZ7kn5c5DAvuDP6wtx",{"template":736},"content:en-us:blog:authors:aaron-peters-member-good-docs-project.yml","Aaron Peters Member Good Docs Project","en-us/blog/authors/aaron-peters-member-good-docs-project.yml","en-us/blog/authors/aaron-peters-member-good-docs-project",{"_path":752,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":753,"config":758,"_id":759,"_type":31,"title":754,"_source":33,"_file":760,"_stem":761,"_extension":36},"/en-us/blog/authors/aathira-nair",{"name":754,"config":755},"Aathira Nair",{"headshot":756,"ctfId":757},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663871/Blog/Author%20Headshots/anair5-headshot.jpg","anair",{"template":736},"content:en-us:blog:authors:aathira-nair.yml","en-us/blog/authors/aathira-nair.yml","en-us/blog/authors/aathira-nair",{"_path":763,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":764,"config":769,"_id":770,"_type":31,"title":765,"_source":33,"_file":771,"_stem":772,"_extension":36},"/en-us/blog/authors/abdulkader-benchi",{"name":765,"config":766},"Abdulkader Benchi",{"headshot":767,"ctfId":768},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659488/Blog/Author%20Headshots/gitlab-logo-extra-whitespace.png","Abdulkader-Benchi",{"template":736},"content:en-us:blog:authors:abdulkader-benchi.yml","en-us/blog/authors/abdulkader-benchi.yml","en-us/blog/authors/abdulkader-benchi",{"_path":774,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":775,"config":780,"_id":781,"_type":31,"title":776,"_source":33,"_file":782,"_stem":783,"_extension":36},"/en-us/blog/authors/abubakar-siddiq-ango",{"name":776,"config":777},"Abubakar Siddiq Ango",{"headshot":778,"ctfId":779},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749660104/Blog/Author%20Headshots/abuango-headshot.jpg","abuango",{"template":736},"content:en-us:blog:authors:abubakar-siddiq-ango.yml","en-us/blog/authors/abubakar-siddiq-ango.yml","en-us/blog/authors/abubakar-siddiq-ango",{"_path":785,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":786,"config":791,"_id":792,"_type":31,"title":787,"_source":33,"_file":793,"_stem":794,"_extension":36},"/en-us/blog/authors/achilleas-pipinellis",{"name":787,"config":788},"Achilleas Pipinellis",{"headshot":789,"ctfId":790},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671703/Blog/Author%20Headshots/axil-headshot.jpg","Achilleas-Pipinellis",{"template":736},"content:en-us:blog:authors:achilleas-pipinellis.yml","en-us/blog/authors/achilleas-pipinellis.yml","en-us/blog/authors/achilleas-pipinellis",{"_path":796,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":797,"config":801,"_id":802,"_type":31,"title":803,"_source":33,"_file":804,"_stem":805,"_extension":36},"/en-us/blog/authors/adfinis-sygroup",{"name":798,"config":799},"Adfinis SyGroup",{"headshot":767,"ctfId":800},"Adfinis-SyGroup",{"template":736},"content:en-us:blog:authors:adfinis-sygroup.yml","Adfinis Sygroup","en-us/blog/authors/adfinis-sygroup.yml","en-us/blog/authors/adfinis-sygroup",{"_path":807,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":808,"config":812,"_id":813,"_type":31,"title":809,"_source":33,"_file":814,"_stem":815,"_extension":36},"/en-us/blog/authors/ahmet-kizilay",{"name":809,"config":810},"Ahmet Kizilay",{"headshot":767,"ctfId":811},"Ahmet-Kizilay",{"template":736},"content:en-us:blog:authors:ahmet-kizilay.yml","en-us/blog/authors/ahmet-kizilay.yml","en-us/blog/authors/ahmet-kizilay",{"_path":817,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":818,"config":822,"_id":823,"_type":31,"title":819,"_source":33,"_file":824,"_stem":825,"_extension":36},"/en-us/blog/authors/akashdeep-dhar",{"name":819,"config":820},"Akashdeep Dhar",{"headshot":7,"ctfId":821},"t0xic0der",{"template":736},"content:en-us:blog:authors:akashdeep-dhar.yml","en-us/blog/authors/akashdeep-dhar.yml","en-us/blog/authors/akashdeep-dhar",{"_path":827,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":828,"config":833,"_id":834,"_type":31,"title":829,"_source":33,"_file":835,"_stem":836,"_extension":36},"/en-us/blog/authors/alana-bellucci",{"name":829,"config":830},"Alana Bellucci",{"headshot":831,"ctfId":832},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664907/Blog/Author%20Headshots/abellucci-headshot.jpg","abellucci",{"template":736},"content:en-us:blog:authors:alana-bellucci.yml","en-us/blog/authors/alana-bellucci.yml","en-us/blog/authors/alana-bellucci",{"_path":838,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":839,"config":844,"_id":845,"_type":31,"title":840,"_source":33,"_file":846,"_stem":847,"_extension":36},"/en-us/blog/authors/alex-fracazo",{"name":840,"config":841},"Alex Fracazo",{"headshot":842,"ctfId":843},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663572/Blog/Author%20Headshots/Alex_Fracazo_headshot.png","1fd3avORyzEvt4jtKpkT2k",{"template":736},"content:en-us:blog:authors:alex-fracazo.yml","en-us/blog/authors/alex-fracazo.yml","en-us/blog/authors/alex-fracazo",{"_path":849,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":850,"config":854,"_id":855,"_type":31,"title":851,"_source":33,"_file":856,"_stem":857,"_extension":36},"/en-us/blog/authors/alex-groleau",{"name":851,"config":852},"Alex Groleau",{"headshot":767,"ctfId":853},"3VVHytQSHu9ehZgsUEJ3qq",{"template":736},"content:en-us:blog:authors:alex-groleau.yml","en-us/blog/authors/alex-groleau.yml","en-us/blog/authors/alex-groleau",{"_path":859,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":860,"config":865,"_id":866,"_type":31,"title":861,"_source":33,"_file":867,"_stem":868,"_extension":36},"/en-us/blog/authors/alex-mark",{"name":861,"config":862},"Alex Mark",{"headshot":863,"ctfId":864},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1755709078/j3vuvongn6hbucxwaufz.png","alexmark",{"template":736},"content:en-us:blog:authors:alex-mark.yml","en-us/blog/authors/alex-mark.yml","en-us/blog/authors/alex-mark",{"_path":870,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":871,"config":876,"_id":877,"_type":31,"title":872,"_source":33,"_file":878,"_stem":879,"_extension":36},"/en-us/blog/authors/alex-martin",{"name":872,"config":873},"Alex Martin",{"headshot":874,"ctfId":875},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666415/Blog/Author%20Headshots/alex_martin_headshot.png","4vZLX2E8BoR3LCNoYdooCY",{"template":736},"content:en-us:blog:authors:alex-martin.yml","en-us/blog/authors/alex-martin.yml","en-us/blog/authors/alex-martin",{"_path":881,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":882,"config":886,"_id":887,"_type":31,"title":883,"_source":33,"_file":888,"_stem":889,"_extension":36},"/en-us/blog/authors/alexander-dietrich",{"name":883,"config":884},"Alexander Dietrich",{"headshot":767,"ctfId":885},"2CzeEOPVjjGKpdblIm0JfO",{"template":736},"content:en-us:blog:authors:alexander-dietrich.yml","en-us/blog/authors/alexander-dietrich.yml","en-us/blog/authors/alexander-dietrich",{"_path":891,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":892,"config":896,"_id":897,"_type":31,"title":893,"_source":33,"_file":898,"_stem":899,"_extension":36},"/en-us/blog/authors/alexander-malaev",{"name":893,"config":894},"Alexander Malaev",{"headshot":767,"ctfId":895},"Alexander-Malaev",{"template":736},"content:en-us:blog:authors:alexander-malaev.yml","en-us/blog/authors/alexander-malaev.yml","en-us/blog/authors/alexander-malaev",{"_path":901,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":902,"config":906,"_id":907,"_type":31,"title":903,"_source":33,"_file":908,"_stem":909,"_extension":36},"/en-us/blog/authors/alexander-pereverzevs",{"name":903,"config":904},"Alexander Pereverzevs",{"headshot":7,"ctfId":905},"lokalise",{"template":736},"content:en-us:blog:authors:alexander-pereverzevs.yml","en-us/blog/authors/alexander-pereverzevs.yml","en-us/blog/authors/alexander-pereverzevs",{"_path":911,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":912,"config":916,"_id":917,"_type":31,"title":913,"_source":33,"_file":918,"_stem":919,"_extension":36},"/en-us/blog/authors/alexis-ginsberg",{"name":913,"config":914},"Alexis Ginsberg",{"headshot":767,"ctfId":915},"lmDIchpcDx48jKuke2B4l",{"template":736},"content:en-us:blog:authors:alexis-ginsberg.yml","en-us/blog/authors/alexis-ginsberg.yml","en-us/blog/authors/alexis-ginsberg",{"_path":921,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":922,"config":927,"_id":928,"_type":31,"title":923,"_source":33,"_file":929,"_stem":930,"_extension":36},"/en-us/blog/authors/allie-holland",{"name":923,"config":924},"Allie Holland",{"headshot":925,"ctfId":926},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664869/Blog/Author%20Headshots/allie_headshot.png","4Sc66Y8dwHEHwBNuJSh4Mv",{"template":736},"content:en-us:blog:authors:allie-holland.yml","en-us/blog/authors/allie-holland.yml","en-us/blog/authors/allie-holland",{"_path":932,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":933,"config":937,"_id":938,"_type":31,"title":934,"_source":33,"_file":939,"_stem":940,"_extension":36},"/en-us/blog/authors/allison-whilden",{"name":934,"config":935},"Allison Whilden",{"headshot":767,"ctfId":936},"Allison-Whilden",{"template":736},"content:en-us:blog:authors:allison-whilden.yml","en-us/blog/authors/allison-whilden.yml","en-us/blog/authors/allison-whilden",{"_path":942,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":943,"config":947,"_id":948,"_type":31,"title":944,"_source":33,"_file":949,"_stem":950,"_extension":36},"/en-us/blog/authors/alyssa-rock",{"name":944,"config":945},"Alyssa Rock",{"headshot":767,"ctfId":946},"4T2hddEfeK0Kp1zF8Ncvej",{"template":736},"content:en-us:blog:authors:alyssa-rock.yml","en-us/blog/authors/alyssa-rock.yml","en-us/blog/authors/alyssa-rock",{"_path":952,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":953,"config":957,"_id":958,"_type":31,"title":954,"_source":33,"_file":959,"_stem":960,"_extension":36},"/en-us/blog/authors/amanda-folson",{"name":954,"config":955},"Amanda Folson",{"headshot":767,"ctfId":956},"Amanda-Folson",{"template":736},"content:en-us:blog:authors:amanda-folson.yml","en-us/blog/authors/amanda-folson.yml","en-us/blog/authors/amanda-folson",{"_path":962,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":963,"config":968,"_id":969,"_type":31,"title":964,"_source":33,"_file":970,"_stem":971,"_extension":36},"/en-us/blog/authors/amanda-rueda",{"name":964,"config":965},"Amanda Rueda",{"headshot":966,"ctfId":967},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749660008/Blog/Author%20Headshots/amanda_rueda_headshot.png","73IHSOcUmhlsh9XDSEiyjs",{"template":736},"content:en-us:blog:authors:amanda-rueda.yml","en-us/blog/authors/amanda-rueda.yml","en-us/blog/authors/amanda-rueda",{"_path":973,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":974,"config":979,"_id":980,"_type":31,"title":975,"_source":33,"_file":981,"_stem":982,"_extension":36},"/en-us/blog/authors/amar-patel",{"name":975,"config":976},"Amar Patel",{"headshot":977,"ctfId":978},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663805/Blog/Author%20Headshots/amar_patel_headshot.png","1EUBoP8mmMLhdha2tRo0vB",{"template":736},"content:en-us:blog:authors:amar-patel.yml","en-us/blog/authors/amar-patel.yml","en-us/blog/authors/amar-patel",{"_path":984,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":985,"config":989,"_id":990,"_type":31,"title":986,"_source":33,"_file":991,"_stem":992,"_extension":36},"/en-us/blog/authors/amara-nwaigwe",{"name":986,"config":987},"Amara Nwaigwe",{"headshot":767,"ctfId":988},"Amara-Nwaigwe",{"template":736},"content:en-us:blog:authors:amara-nwaigwe.yml","en-us/blog/authors/amara-nwaigwe.yml","en-us/blog/authors/amara-nwaigwe",{"_path":994,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":995,"config":1000,"_id":1001,"_type":31,"title":996,"_source":33,"_file":1002,"_stem":1003,"_extension":36},"/en-us/blog/authors/amelia-bauerly",{"name":996,"config":997},"Amelia Bauerly",{"headshot":998,"ctfId":999},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670746/Blog/Author%20Headshots/ameliabauerly-headshot.jpg","ameliabauerly",{"template":736},"content:en-us:blog:authors:amelia-bauerly.yml","en-us/blog/authors/amelia-bauerly.yml","en-us/blog/authors/amelia-bauerly",{"_path":1005,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1006,"config":1011,"_id":1012,"_type":31,"title":1007,"_source":33,"_file":1013,"_stem":1014,"_extension":36},"/en-us/blog/authors/ameya-darshan",{"name":1007,"config":1008},"Ameya Darshan",{"headshot":1009,"ctfId":1010},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667342/Blog/Author%20Headshots/ameya_darshan_headshot.png","79paMp2QSqRdFtZznJ6uNr",{"template":736},"content:en-us:blog:authors:ameya-darshan.yml","en-us/blog/authors/ameya-darshan.yml","en-us/blog/authors/ameya-darshan",{"_path":1016,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1017,"config":1021,"_id":1022,"_type":31,"title":1018,"_source":33,"_file":1023,"_stem":1024,"_extension":36},"/en-us/blog/authors/andrea-borga",{"name":1018,"config":1019},"Andrea Borga",{"headshot":767,"ctfId":1020},"6dPpfov6kpNcMdmyHyhKcN",{"template":736},"content:en-us:blog:authors:andrea-borga.yml","en-us/blog/authors/andrea-borga.yml","en-us/blog/authors/andrea-borga",{"_path":1026,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1027,"config":1032,"_id":1033,"_type":31,"title":1028,"_source":33,"_file":1034,"_stem":1035,"_extension":36},"/en-us/blog/authors/andreas-brandl",{"name":1028,"config":1029},"Andreas Brandl",{"headshot":1030,"ctfId":1031},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683343/Blog/Author%20Headshots/abrandl-headshot.jpg","abrandl",{"template":736},"content:en-us:blog:authors:andreas-brandl.yml","en-us/blog/authors/andreas-brandl.yml","en-us/blog/authors/andreas-brandl",{"_path":1037,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1038,"config":1042,"_id":1043,"_type":31,"title":1039,"_source":33,"_file":1044,"_stem":1045,"_extension":36},"/en-us/blog/authors/andrew-chilton",{"name":1039,"config":1040},"Andrew Chilton",{"headshot":7,"ctfId":1041},"chilts",{"template":736},"content:en-us:blog:authors:andrew-chilton.yml","en-us/blog/authors/andrew-chilton.yml","en-us/blog/authors/andrew-chilton",{"_path":1047,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1048,"config":1053,"_id":1054,"_type":31,"title":1049,"_source":33,"_file":1055,"_stem":1056,"_extension":36},"/en-us/blog/authors/andrew-fontaine",{"name":1049,"config":1050},"Andrew Fontaine",{"headshot":1051,"ctfId":1052},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672447/Blog/Author%20Headshots/afontaine-headshot.jpg","afontaine",{"template":736},"content:en-us:blog:authors:andrew-fontaine.yml","en-us/blog/authors/andrew-fontaine.yml","en-us/blog/authors/andrew-fontaine",{"_path":1058,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1059,"config":1064,"_id":1065,"_type":31,"title":1060,"_source":33,"_file":1066,"_stem":1067,"_extension":36},"/en-us/blog/authors/andrew-kelly",{"name":1060,"config":1061},"Andrew Kelly",{"headshot":1062,"ctfId":1063},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681953/Blog/Author%20Headshots/ankelly-headshot.jpg","ankelly",{"template":736},"content:en-us:blog:authors:andrew-kelly.yml","en-us/blog/authors/andrew-kelly.yml","en-us/blog/authors/andrew-kelly",{"_path":1069,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1070,"config":1075,"_id":1076,"_type":31,"title":1071,"_source":33,"_file":1077,"_stem":1078,"_extension":36},"/en-us/blog/authors/andrew-newdigate",{"name":1071,"config":1072},"Andrew Newdigate",{"headshot":1073,"ctfId":1074},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670199/Blog/Author%20Headshots/andrewn-headshot.jpg","andrewn",{"template":736},"content:en-us:blog:authors:andrew-newdigate.yml","en-us/blog/authors/andrew-newdigate.yml","en-us/blog/authors/andrew-newdigate",{"_path":1080,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1081,"config":1086,"_id":1087,"_type":31,"title":1082,"_source":33,"_file":1088,"_stem":1089,"_extension":36},"/en-us/blog/authors/andrew-patterson",{"name":1082,"config":1083},"Andrew Patterson",{"headshot":1084,"ctfId":1085},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669197/Blog/Author%20Headshots/andrew_patterson_headshot.png","6qJ1J2ePA6FVQaVLqx0C0d",{"template":736},"content:en-us:blog:authors:andrew-patterson.yml","en-us/blog/authors/andrew-patterson.yml","en-us/blog/authors/andrew-patterson",{"_path":1091,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1092,"config":1096,"_id":1097,"_type":31,"title":1093,"_source":33,"_file":1098,"_stem":1099,"_extension":36},"/en-us/blog/authors/andrew-taylor",{"name":1093,"config":1094},"Andrew Taylor",{"headshot":767,"ctfId":1095},"Andrew-Taylor",{"template":736},"content:en-us:blog:authors:andrew-taylor.yml","en-us/blog/authors/andrew-taylor.yml","en-us/blog/authors/andrew-taylor",{"_path":1101,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1102,"config":1107,"_id":1108,"_type":31,"title":1103,"_source":33,"_file":1109,"_stem":1110,"_extension":36},"/en-us/blog/authors/andrew-thomas",{"name":1103,"config":1104},"Andrew Thomas",{"headshot":1105,"ctfId":1106},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663944/Blog/Author%20Headshots/awthomas-headshot.jpg","awthomas",{"template":736},"content:en-us:blog:authors:andrew-thomas.yml","en-us/blog/authors/andrew-thomas.yml","en-us/blog/authors/andrew-thomas",{"_path":1112,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1113,"config":1118,"_id":1119,"_type":31,"title":1114,"_source":33,"_file":1120,"_stem":1121,"_extension":36},"/en-us/blog/authors/andy-bradfield",{"name":1114,"role":1115,"config":1116},"Andy Bradfield","Vice President, IBM Z Hybrid Cloud",{"headshot":1117},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750433790/essf1v0fbgzygctp8cuc.jpg",{"template":736},"content:en-us:blog:authors:andy-bradfield.yml","en-us/blog/authors/andy-bradfield.yml","en-us/blog/authors/andy-bradfield",{"_path":1123,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1124,"config":1128,"_id":1129,"_type":31,"title":1125,"_source":33,"_file":1130,"_stem":1131,"_extension":36},"/en-us/blog/authors/andy-rogers",{"name":1125,"config":1126},"Andy Rogers",{"headshot":767,"ctfId":1127},"Andy-Rogers",{"template":736},"content:en-us:blog:authors:andy-rogers.yml","en-us/blog/authors/andy-rogers.yml","en-us/blog/authors/andy-rogers",{"_path":1133,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1134,"config":1139,"_id":1140,"_type":31,"title":1135,"_source":33,"_file":1141,"_stem":1142,"_extension":36},"/en-us/blog/authors/andy-volpe",{"name":1135,"config":1136},"Andy Volpe",{"headshot":1137,"ctfId":1138},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669776/Blog/Author%20Headshots/andyvolpe-headshot.png","andyvolpe",{"template":736},"content:en-us:blog:authors:andy-volpe.yml","en-us/blog/authors/andy-volpe.yml","en-us/blog/authors/andy-volpe",{"_path":1144,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1145,"config":1149,"_id":1150,"_type":31,"title":1146,"_source":33,"_file":1151,"_stem":1152,"_extension":36},"/en-us/blog/authors/angelo-stavrow",{"name":1146,"config":1147},"Angelo Stavrow",{"headshot":767,"ctfId":1148},"Angelo-Stavrow",{"template":736},"content:en-us:blog:authors:angelo-stavrow.yml","en-us/blog/authors/angelo-stavrow.yml","en-us/blog/authors/angelo-stavrow",{"_path":1154,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1155,"config":1160,"_id":1161,"_type":31,"title":1156,"_source":33,"_file":1162,"_stem":1163,"_extension":36},"/en-us/blog/authors/anna-vovchenko",{"name":1156,"config":1157},"Anna Vovchenko",{"headshot":1158,"ctfId":1159},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669159/Blog/Author%20Headshots/anna_vovchenko_headshot.png","4bLGBzB5LA0jYw0y9IqCs2",{"template":736},"content:en-us:blog:authors:anna-vovchenko.yml","en-us/blog/authors/anna-vovchenko.yml","en-us/blog/authors/anna-vovchenko",{"_path":1165,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1166,"config":1171,"_id":1172,"_type":31,"title":1167,"_source":33,"_file":1173,"_stem":1174,"_extension":36},"/en-us/blog/authors/annabel-dunstone-gray",{"name":1167,"config":1168},"Annabel Dunstone Gray",{"headshot":1169,"ctfId":1170},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679009/Blog/Author%20Headshots/annabeldunstone-headshot.jpg","annabeldunstone",{"template":736},"content:en-us:blog:authors:annabel-dunstone-gray.yml","en-us/blog/authors/annabel-dunstone-gray.yml","en-us/blog/authors/annabel-dunstone-gray",{"_path":1176,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1177,"config":1181,"_id":1182,"_type":31,"title":1178,"_source":33,"_file":1183,"_stem":1184,"_extension":36},"/en-us/blog/authors/anshuman-singh",{"name":1178,"config":1179},"Anshuman Singh",{"headshot":767,"ctfId":1180},"4xzrY67JSkxp4j7hlK1DWA",{"template":736},"content:en-us:blog:authors:anshuman-singh.yml","en-us/blog/authors/anshuman-singh.yml","en-us/blog/authors/anshuman-singh",{"_path":1186,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1187,"config":1191,"_id":1192,"_type":31,"title":1188,"_source":33,"_file":1193,"_stem":1194,"_extension":36},"/en-us/blog/authors/anthony-davanzo",{"name":1188,"config":1189},"Anthony Davanzo",{"headshot":767,"ctfId":1190},"4KccrB6k5jq46xQRDOdWSb",{"template":736},"content:en-us:blog:authors:anthony-davanzo.yml","en-us/blog/authors/anthony-davanzo.yml","en-us/blog/authors/anthony-davanzo",{"_path":1196,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1197,"config":1202,"_id":1203,"_type":31,"title":1198,"_source":33,"_file":1204,"_stem":1205,"_extension":36},"/en-us/blog/authors/anton-smith",{"name":1198,"config":1199},"Anton Smith",{"headshot":1200,"ctfId":1201},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679625/Blog/Author%20Headshots/anton-headshot.png","anton",{"template":736},"content:en-us:blog:authors:anton-smith.yml","en-us/blog/authors/anton-smith.yml","en-us/blog/authors/anton-smith",{"_path":1207,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1208,"config":1212,"_id":1213,"_type":31,"title":1209,"_source":33,"_file":1214,"_stem":1215,"_extension":36},"/en-us/blog/authors/aricka-flowers",{"name":1209,"config":1210},"Aricka Flowers",{"headshot":7,"ctfId":1211},"atflowers",{"template":736},"content:en-us:blog:authors:aricka-flowers.yml","en-us/blog/authors/aricka-flowers.yml","en-us/blog/authors/aricka-flowers",{"_path":1217,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1218,"config":1222,"_id":1223,"_type":31,"title":1219,"_source":33,"_file":1224,"_stem":1225,"_extension":36},"/en-us/blog/authors/ariel-camus",{"name":1219,"config":1220},"Ariel Camus",{"headshot":7,"ctfId":1221},"arielcamus",{"template":736},"content:en-us:blog:authors:ariel-camus.yml","en-us/blog/authors/ariel-camus.yml","en-us/blog/authors/ariel-camus",{"_path":1227,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1228,"config":1232,"_id":1233,"_type":31,"title":1229,"_source":33,"_file":1234,"_stem":1235,"_extension":36},"/en-us/blog/authors/arunoda-susiripala",{"name":1229,"config":1230},"Arunoda Susiripala",{"headshot":767,"ctfId":1231},"7kQaq0xFWPi2zRW6NZIDHp",{"template":736},"content:en-us:blog:authors:arunoda-susiripala.yml","en-us/blog/authors/arunoda-susiripala.yml","en-us/blog/authors/arunoda-susiripala",{"_path":1237,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1238,"config":1242,"_id":1244,"_type":31,"title":1239,"_source":33,"_file":1245,"_stem":1246,"_extension":36},"/en-us/blog/authors/ashher-syed",{"name":1239,"config":1240},"Ashher Syed",{"headshot":1241},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1753883485/jnsltidrjyzzbxlmllua.png",{"template":736,"gitlabHandle":1243},"ashhers","content:en-us:blog:authors:ashher-syed.yml","en-us/blog/authors/ashher-syed.yml","en-us/blog/authors/ashher-syed",{"_path":1248,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1249,"config":1254,"_id":1255,"_type":31,"title":1250,"_source":33,"_file":1256,"_stem":1257,"_extension":36},"/en-us/blog/authors/ashley-knobloch",{"name":1250,"config":1251},"Ashley Knobloch",{"headshot":1252,"ctfId":1253},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682879/Blog/Author%20Headshots/aknobloch-headshot.jpg","aknobloch",{"template":736},"content:en-us:blog:authors:ashley-knobloch.yml","en-us/blog/authors/ashley-knobloch.yml","en-us/blog/authors/ashley-knobloch",{"_path":1259,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1260,"config":1265,"_id":1266,"_type":31,"title":1261,"_source":33,"_file":1267,"_stem":1268,"_extension":36},"/en-us/blog/authors/ashley-kramer",{"name":1261,"config":1262},"Ashley Kramer",{"headshot":1263,"ctfId":1264},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662520/Blog/Author%20Headshots/akramer-headshot.jpg","akramer",{"template":736},"content:en-us:blog:authors:ashley-kramer.yml","en-us/blog/authors/ashley-kramer.yml","en-us/blog/authors/ashley-kramer",{"_path":1270,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1271,"config":1275,"_id":1276,"_type":31,"title":1277,"_source":33,"_file":1278,"_stem":1279,"_extension":36},"/en-us/blog/authors/ashley-mcalpin",{"name":1272,"config":1273},"Ashley McAlpin",{"headshot":767,"ctfId":1274},"Ashley-McAlpin",{"template":736},"content:en-us:blog:authors:ashley-mcalpin.yml","Ashley Mcalpin","en-us/blog/authors/ashley-mcalpin.yml","en-us/blog/authors/ashley-mcalpin",{"_path":1281,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1282,"config":1286,"_id":1287,"_type":31,"title":1283,"_source":33,"_file":1288,"_stem":1289,"_extension":36},"/en-us/blog/authors/ashley-smith",{"name":1283,"config":1284},"Ashley Smith",{"headshot":767,"ctfId":1285},"Ashley-Smith",{"template":736},"content:en-us:blog:authors:ashley-smith.yml","en-us/blog/authors/ashley-smith.yml","en-us/blog/authors/ashley-smith",{"_path":1291,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1292,"config":1296,"_id":1297,"_type":31,"title":1298,"_source":33,"_file":1299,"_stem":1300,"_extension":36},"/en-us/blog/authors/atlassian-bitbucket-github-gitlab",{"name":1293,"config":1294},"Atlassian Bitbucket, GitHub, GitLab",{"headshot":767,"ctfId":1295},"Atlassian-Bitbucket-GitHub-GitLab",{"template":736},"content:en-us:blog:authors:atlassian-bitbucket-github-gitlab.yml","Atlassian Bitbucket Github Gitlab","en-us/blog/authors/atlassian-bitbucket-github-gitlab.yml","en-us/blog/authors/atlassian-bitbucket-github-gitlab",{"_path":1302,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1303,"config":1308,"_id":1309,"_type":31,"title":1304,"_source":33,"_file":1310,"_stem":1311,"_extension":36},"/en-us/blog/authors/austin-regnery",{"name":1304,"config":1305},"Austin Regnery",{"headshot":1306,"ctfId":1307},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679497/Blog/Author%20Headshots/aregnery-headshot.jpg","aregnery",{"template":736},"content:en-us:blog:authors:austin-regnery.yml","en-us/blog/authors/austin-regnery.yml","en-us/blog/authors/austin-regnery",{"_path":1313,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1314,"config":1319,"_id":1320,"_type":31,"title":1315,"_source":33,"_file":1321,"_stem":1322,"_extension":36},"/en-us/blog/authors/ayoub-fandi",{"name":1315,"config":1316},"Ayoub Fandi",{"headshot":1317,"ctfId":1318},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664292/Blog/Author%20Headshots/ayofan-headshot.jpg","ayofan",{"template":736},"content:en-us:blog:authors:ayoub-fandi.yml","en-us/blog/authors/ayoub-fandi.yml","en-us/blog/authors/ayoub-fandi",{"_path":1324,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1325,"config":1329,"_id":1330,"_type":31,"title":1331,"_source":33,"_file":1332,"_stem":1333,"_extension":36},"/en-us/blog/authors/bahubali-bill-shetti",{"name":1326,"config":1327},"Bahubali (Bill) Shetti",{"headshot":767,"ctfId":1328},"4rFnUJeUt0JNGQwwCZSLMj",{"template":736},"content:en-us:blog:authors:bahubali-bill-shetti.yml","Bahubali Bill Shetti","en-us/blog/authors/bahubali-bill-shetti.yml","en-us/blog/authors/bahubali-bill-shetti",{"_path":1335,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1336,"config":1340,"_id":1341,"_type":31,"title":1337,"_source":33,"_file":1342,"_stem":1343,"_extension":36},"/en-us/blog/authors/baksheesh-singh-ghuman",{"name":1337,"config":1338},"Baksheesh Singh Ghuman",{"headshot":767,"ctfId":1339},"Baksheesh-Singh-Ghuman",{"template":736},"content:en-us:blog:authors:baksheesh-singh-ghuman.yml","en-us/blog/authors/baksheesh-singh-ghuman.yml","en-us/blog/authors/baksheesh-singh-ghuman",{"_path":1345,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1346,"config":1351,"_id":1352,"_type":31,"title":1347,"_source":33,"_file":1353,"_stem":1354,"_extension":36},"/en-us/blog/authors/bala-allam",{"name":1347,"config":1348},"Bala Allam",{"headshot":1349,"ctfId":1350},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663541/Blog/Author%20Headshots/bala_allam_headshot.png","2rLcMDIniW4zfuD8s0ckVt",{"template":736},"content:en-us:blog:authors:bala-allam.yml","en-us/blog/authors/bala-allam.yml","en-us/blog/authors/bala-allam",{"_path":1356,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1357,"config":1362,"_id":1363,"_type":31,"title":1364,"_source":33,"_file":1365,"_stem":1366,"_extension":36},"/en-us/blog/authors/balasankar-balu-c",{"name":1358,"config":1359},"Balasankar 'Balu' C",{"headshot":1360,"ctfId":1361},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681201/Blog/Author%20Headshots/balasankarc-headshot.jpg","balasankarc",{"template":736},"content:en-us:blog:authors:balasankar-balu-c.yml","Balasankar Balu C","en-us/blog/authors/balasankar-balu-c.yml","en-us/blog/authors/balasankar-balu-c",{"_path":1368,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1369,"config":1374,"_id":1375,"_type":31,"title":1370,"_source":33,"_file":1376,"_stem":1377,"_extension":36},"/en-us/blog/authors/bart-zhang",{"name":1370,"config":1371},"Bart Zhang",{"headshot":1372,"ctfId":1373},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664177/Blog/Author%20Headshots/bartzhang-headshot.jpg","bartzhang",{"template":736},"content:en-us:blog:authors:bart-zhang.yml","en-us/blog/authors/bart-zhang.yml","en-us/blog/authors/bart-zhang",{"_path":1379,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1380,"config":1385,"_id":1386,"_type":31,"title":1381,"_source":33,"_file":1387,"_stem":1388,"_extension":36},"/en-us/blog/authors/beatriz-barbosa",{"name":1381,"config":1382},"Beatriz Barbosa",{"headshot":1383,"ctfId":1384},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665252/Blog/Author%20Headshots/beatriz_barbosa.png","7GdHsfTvzkhnGh2qQmZF91",{"template":736},"content:en-us:blog:authors:beatriz-barbosa.yml","en-us/blog/authors/beatriz-barbosa.yml","en-us/blog/authors/beatriz-barbosa",{"_path":1390,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1391,"config":1395,"_id":1396,"_type":31,"title":1392,"_source":33,"_file":1397,"_stem":1398,"_extension":36},"/en-us/blog/authors/becka-lippert",{"name":1392,"config":1393},"Becka Lippert",{"headshot":767,"ctfId":1394},"7wX6Hbvb3AbKwa6NnClvBX",{"template":736},"content:en-us:blog:authors:becka-lippert.yml","en-us/blog/authors/becka-lippert.yml","en-us/blog/authors/becka-lippert",{"_path":1400,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1401,"config":1406,"_id":1407,"_type":31,"title":1408,"_source":33,"_file":1409,"_stem":1410,"_extension":36},"/en-us/blog/authors/ben-leduc-mills",{"name":1402,"config":1403},"Ben Leduc-Mills",{"headshot":1404,"ctfId":1405},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682380/Blog/Author%20Headshots/leducmills-headshot.png","leducmills",{"template":736},"content:en-us:blog:authors:ben-leduc-mills.yml","Ben Leduc Mills","en-us/blog/authors/ben-leduc-mills.yml","en-us/blog/authors/ben-leduc-mills",{"_path":1412,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1413,"config":1418,"_id":1419,"_type":31,"title":1414,"_source":33,"_file":1420,"_stem":1421,"_extension":36},"/en-us/blog/authors/ben-ridley",{"name":1414,"config":1415},"Ben Ridley",{"headshot":1416,"ctfId":1417},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659973/Blog/Author%20Headshots/bridley-headshot.jpg","bridley",{"template":736},"content:en-us:blog:authors:ben-ridley.yml","en-us/blog/authors/ben-ridley.yml","en-us/blog/authors/ben-ridley",{"_path":1423,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1424,"config":1428,"_id":1429,"_type":31,"title":1425,"_source":33,"_file":1430,"_stem":1431,"_extension":36},"/en-us/blog/authors/benedikt-rollik",{"name":1425,"config":1426},"Benedikt Rollik",{"headshot":767,"ctfId":1427},"Benedikt-Rollik",{"template":736},"content:en-us:blog:authors:benedikt-rollik.yml","en-us/blog/authors/benedikt-rollik.yml","en-us/blog/authors/benedikt-rollik",{"_path":1433,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1434,"config":1439,"_id":1440,"_type":31,"title":1435,"_source":33,"_file":1441,"_stem":1442,"_extension":36},"/en-us/blog/authors/benjamin-skierlak",{"name":1435,"config":1436},"Benjamin Skierlak",{"headshot":1437,"ctfId":1438},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659471/Blog/Author%20Headshots/Benjamin_Skierlak_headshot.png","Kzp6pkUjPORYYMoeLFPRf",{"template":736},"content:en-us:blog:authors:benjamin-skierlak.yml","en-us/blog/authors/benjamin-skierlak.yml","en-us/blog/authors/benjamin-skierlak",{"_path":1444,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1445,"config":1449,"_id":1450,"_type":31,"title":1446,"_source":33,"_file":1451,"_stem":1452,"_extension":36},"/en-us/blog/authors/bert-van-eyck",{"name":1446,"config":1447},"Bert Van Eyck",{"headshot":7,"ctfId":1448},"bertveproximus",{"template":736},"content:en-us:blog:authors:bert-van-eyck.yml","en-us/blog/authors/bert-van-eyck.yml","en-us/blog/authors/bert-van-eyck",{"_path":1454,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1455,"config":1460,"_id":1461,"_type":31,"title":1456,"_source":33,"_file":1462,"_stem":1463,"_extension":36},"/en-us/blog/authors/betsy-bula",{"name":1456,"config":1457},"Betsy Bula",{"headshot":1458,"ctfId":1459},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679451/Blog/Author%20Headshots/bbula-headshot.jpg","bbula",{"template":736},"content:en-us:blog:authors:betsy-bula.yml","en-us/blog/authors/betsy-bula.yml","en-us/blog/authors/betsy-bula",{"_path":1465,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1466,"config":1470,"_id":1471,"_type":31,"title":1467,"_source":33,"_file":1472,"_stem":1473,"_extension":36},"/en-us/blog/authors/betsy-church",{"name":1467,"config":1468},"Betsy Church",{"headshot":7,"ctfId":1469},"bchurch",{"template":736},"content:en-us:blog:authors:betsy-church.yml","en-us/blog/authors/betsy-church.yml","en-us/blog/authors/betsy-church",{"_path":1475,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1476,"config":1481,"_id":1482,"_type":31,"title":1477,"_source":33,"_file":1483,"_stem":1484,"_extension":36},"/en-us/blog/authors/bill-staples",{"name":1477,"config":1478,"role":1480},"Bill Staples",{"headshot":1479},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750434080/glxv59lh9qftpdbsb4ph.png","CEO",{"template":736},"content:en-us:blog:authors:bill-staples.yml","en-us/blog/authors/bill-staples.yml","en-us/blog/authors/bill-staples",{"_path":1486,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1487,"config":1492,"_id":1493,"_type":31,"title":1488,"_source":33,"_file":1494,"_stem":1495,"_extension":36},"/en-us/blog/authors/bob-van-landuyt",{"name":1488,"config":1489},"Bob Van Landuyt",{"headshot":1490,"ctfId":1491},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667520/Blog/Author%20Headshots/reprazent-headshot.png","reprazent",{"template":736},"content:en-us:blog:authors:bob-van-landuyt.yml","en-us/blog/authors/bob-van-landuyt.yml","en-us/blog/authors/bob-van-landuyt",{"_path":1497,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1498,"config":1502,"_id":1503,"_type":31,"title":1499,"_source":33,"_file":1504,"_stem":1505,"_extension":36},"/en-us/blog/authors/boris-baldassari",{"name":1499,"config":1500},"Boris Baldassari",{"headshot":7,"ctfId":1501},"bbaldassari",{"template":736},"content:en-us:blog:authors:boris-baldassari.yml","en-us/blog/authors/boris-baldassari.yml","en-us/blog/authors/boris-baldassari",{"_path":1507,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1508,"config":1512,"_id":1513,"_type":31,"title":1509,"_source":33,"_file":1514,"_stem":1515,"_extension":36},"/en-us/blog/authors/borivoje-tasovac",{"name":1509,"config":1510},"Borivoje Tasovac",{"headshot":7,"ctfId":1511},"borivoje",{"template":736},"content:en-us:blog:authors:borivoje-tasovac.yml","en-us/blog/authors/borivoje-tasovac.yml","en-us/blog/authors/borivoje-tasovac",{"_path":1517,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1518,"config":1522,"_id":1523,"_type":31,"title":1519,"_source":33,"_file":1524,"_stem":1525,"_extension":36},"/en-us/blog/authors/brad-downey",{"name":1519,"config":1520},"Brad Downey",{"headshot":767,"ctfId":1521},"6b6RTu6832NFEju2zKJhbE",{"template":736},"content:en-us:blog:authors:brad-downey.yml","en-us/blog/authors/brad-downey.yml","en-us/blog/authors/brad-downey",{"_path":1527,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1528,"config":1533,"_id":1534,"_type":31,"title":1529,"_source":33,"_file":1535,"_stem":1536,"_extension":36},"/en-us/blog/authors/bradley-lee",{"name":1529,"config":1530},"Bradley Lee",{"headshot":1531,"ctfId":1532},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666491/Blog/Author%20Headshots/bradleylee-headshot.jpg","bradleylee",{"template":736},"content:en-us:blog:authors:bradley-lee.yml","en-us/blog/authors/bradley-lee.yml","en-us/blog/authors/bradley-lee",{"_path":1538,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1539,"config":1543,"_id":1544,"_type":31,"title":1540,"_source":33,"_file":1545,"_stem":1546,"_extension":36},"/en-us/blog/authors/brandon-foo",{"name":1540,"config":1541},"Brandon Foo",{"headshot":767,"ctfId":1542},"Brandon-Foo",{"template":736},"content:en-us:blog:authors:brandon-foo.yml","en-us/blog/authors/brandon-foo.yml","en-us/blog/authors/brandon-foo",{"_path":1548,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1549,"config":1553,"_id":1554,"_type":31,"title":1550,"_source":33,"_file":1555,"_stem":1556,"_extension":36},"/en-us/blog/authors/brandon-jung",{"name":1550,"config":1551},"Brandon Jung",{"headshot":767,"ctfId":1552},"Brandon-Jung",{"template":736},"content:en-us:blog:authors:brandon-jung.yml","en-us/blog/authors/brandon-jung.yml","en-us/blog/authors/brandon-jung",{"_path":1558,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1559,"config":1563,"_id":1564,"_type":31,"title":1560,"_source":33,"_file":1565,"_stem":1566,"_extension":36},"/en-us/blog/authors/brandon-lyon",{"name":1560,"config":1561},"Brandon Lyon",{"headshot":7,"ctfId":1562},"brandonlyon",{"template":736},"content:en-us:blog:authors:brandon-lyon.yml","en-us/blog/authors/brandon-lyon.yml","en-us/blog/authors/brandon-lyon",{"_path":1568,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1569,"config":1573,"_id":1574,"_type":31,"title":1570,"_source":33,"_file":1575,"_stem":1576,"_extension":36},"/en-us/blog/authors/brein-matturro",{"name":1570,"config":1571},"Brein Matturro",{"headshot":7,"ctfId":1572},"bmatturro",{"template":736},"content:en-us:blog:authors:brein-matturro.yml","en-us/blog/authors/brein-matturro.yml","en-us/blog/authors/brein-matturro",{"_path":1578,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1579,"config":1583,"_id":1584,"_type":31,"title":1585,"_source":33,"_file":1586,"_stem":1587,"_extension":36},"/en-us/blog/authors/brendan-oleary",{"name":1580,"config":1581},"Brendan O'Leary",{"headshot":7,"ctfId":1582},"brendan",{"template":736},"content:en-us:blog:authors:brendan-oleary.yml","Brendan Oleary","en-us/blog/authors/brendan-oleary.yml","en-us/blog/authors/brendan-oleary",{"_path":1589,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1590,"config":1594,"_id":1595,"_type":31,"title":1591,"_source":33,"_file":1596,"_stem":1597,"_extension":36},"/en-us/blog/authors/brendan-regan",{"name":1591,"config":1592},"Brendan Regan",{"headshot":7,"ctfId":1593},"brendanregan11",{"template":736},"content:en-us:blog:authors:brendan-regan.yml","en-us/blog/authors/brendan-regan.yml","en-us/blog/authors/brendan-regan",{"_path":1599,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1600,"config":1605,"_id":1606,"_type":31,"title":1601,"_source":33,"_file":1607,"_stem":1608,"_extension":36},"/en-us/blog/authors/brett-walker",{"name":1601,"config":1602},"Brett Walker",{"headshot":1603,"ctfId":1604},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670155/Blog/Author%20Headshots/digitalmoksha-headshot.jpg","digitalmoksha",{"template":736},"content:en-us:blog:authors:brett-walker.yml","en-us/blog/authors/brett-walker.yml","en-us/blog/authors/brett-walker",{"_path":1610,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1611,"config":1615,"_id":1616,"_type":31,"title":1612,"_source":33,"_file":1617,"_stem":1618,"_extension":36},"/en-us/blog/authors/brian-glanz",{"name":1612,"config":1613},"Brian Glanz",{"headshot":7,"ctfId":1614},"brianglanz",{"template":736},"content:en-us:blog:authors:brian-glanz.yml","en-us/blog/authors/brian-glanz.yml","en-us/blog/authors/brian-glanz",{"_path":1620,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1621,"config":1625,"_id":1626,"_type":31,"title":1627,"_source":33,"_file":1628,"_stem":1629,"_extension":36},"/en-us/blog/authors/brian-oconnell",{"name":1622,"config":1623},"Brian O'Connell",{"headshot":767,"ctfId":1624},"Brian-OConnell",{"template":736},"content:en-us:blog:authors:brian-oconnell.yml","Brian Oconnell","en-us/blog/authors/brian-oconnell.yml","en-us/blog/authors/brian-oconnell",{"_path":1631,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1632,"config":1636,"_id":1637,"_type":31,"title":1633,"_source":33,"_file":1638,"_stem":1639,"_extension":36},"/en-us/blog/authors/brian-rhea",{"name":1633,"config":1634},"Brian Rhea",{"headshot":7,"ctfId":1635},"brhea",{"template":736},"content:en-us:blog:authors:brian-rhea.yml","en-us/blog/authors/brian-rhea.yml","en-us/blog/authors/brian-rhea",{"_path":1641,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1642,"config":1646,"_id":1647,"_type":31,"title":1643,"_source":33,"_file":1648,"_stem":1649,"_extension":36},"/en-us/blog/authors/brian-wald",{"name":1643,"config":1644},"Brian Wald",{"headshot":767,"ctfId":1645},"78qOxgHKlgDY2IxMrBrgCu",{"template":736},"content:en-us:blog:authors:brian-wald.yml","en-us/blog/authors/brian-wald.yml","en-us/blog/authors/brian-wald",{"_path":1651,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1652,"config":1656,"_id":1657,"_type":31,"title":1653,"_source":33,"_file":1658,"_stem":1659,"_extension":36},"/en-us/blog/authors/brittany-rohde",{"name":1653,"config":1654},"Brittany Rohde",{"headshot":7,"ctfId":1655},"brittanyr",{"template":736},"content:en-us:blog:authors:brittany-rohde.yml","en-us/blog/authors/brittany-rohde.yml","en-us/blog/authors/brittany-rohde",{"_path":1661,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1662,"config":1667,"_id":1668,"_type":31,"title":1663,"_source":33,"_file":1669,"_stem":1670,"_extension":36},"/en-us/blog/authors/bryan-behrenshausen",{"name":1663,"config":1664},"Bryan Behrenshausen",{"headshot":1665,"ctfId":1666},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670181/Blog/Author%20Headshots/bbehr-headshot.jpg","bbehr",{"template":736},"content:en-us:blog:authors:bryan-behrenshausen.yml","en-us/blog/authors/bryan-behrenshausen.yml","en-us/blog/authors/bryan-behrenshausen",{"_path":1672,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1673,"config":1678,"_id":1679,"_type":31,"title":1674,"_source":33,"_file":1680,"_stem":1681,"_extension":36},"/en-us/blog/authors/bryan-may",{"name":1674,"config":1675},"Bryan May",{"headshot":1676,"ctfId":1677},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749668135/Blog/Author%20Headshots/bryan-may-headshot.jpg","bryanmay",{"template":736},"content:en-us:blog:authors:bryan-may.yml","en-us/blog/authors/bryan-may.yml","en-us/blog/authors/bryan-may",{"_path":1683,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1684,"config":1689,"_id":1690,"_type":31,"title":1685,"_source":33,"_file":1691,"_stem":1692,"_extension":36},"/en-us/blog/authors/byron-boots",{"name":1685,"config":1686},"Byron Boots",{"headshot":1687,"ctfId":1688},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662281/Blog/Author%20Headshots/byron_boots_headshot.png","7ezFbRYF2Cu5JTBQXRp7mw",{"template":736},"content:en-us:blog:authors:byron-boots.yml","en-us/blog/authors/byron-boots.yml","en-us/blog/authors/byron-boots",{"_path":1694,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1695,"config":1700,"_id":1701,"_type":31,"title":1696,"_source":33,"_file":1702,"_stem":1703,"_extension":36},"/en-us/blog/authors/camellia-yang",{"name":1696,"config":1697},"Camellia Yang",{"headshot":1698,"ctfId":1699},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682106/Blog/Author%20Headshots/cam.png","camx",{"template":736},"content:en-us:blog:authors:camellia-yang.yml","en-us/blog/authors/camellia-yang.yml","en-us/blog/authors/camellia-yang",{"_path":1705,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1706,"config":1711,"_id":1712,"_type":31,"title":1707,"_source":33,"_file":1713,"_stem":1714,"_extension":36},"/en-us/blog/authors/cameron-swords",{"name":1707,"config":1708},"Cameron Swords",{"headshot":1709,"ctfId":1710},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667598/Blog/Author%20Headshots/cam_swords-headshot.jpg","camswords",{"template":736},"content:en-us:blog:authors:cameron-swords.yml","en-us/blog/authors/cameron-swords.yml","en-us/blog/authors/cameron-swords",{"_path":1716,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1717,"config":1723,"_id":1724,"_type":31,"title":1719,"_source":33,"_file":1725,"_stem":1726,"_extension":36},"/en-us/blog/authors/carl-myers",{"role":1718,"name":1719,"config":1720},"Manager, CI Platform team, Indeed","Carl Myers",{"headshot":1721,"ctfId":1722},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665044/Blog/Author%20Headshots/image1.jpg","7KelbQ0LsGSGf4TpT0qAlp",{"template":736},"content:en-us:blog:authors:carl-myers.yml","en-us/blog/authors/carl-myers.yml","en-us/blog/authors/carl-myers",{"_path":1728,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1729,"config":1733,"_id":1734,"_type":31,"title":1730,"_source":33,"_file":1735,"_stem":1736,"_extension":36},"/en-us/blog/authors/carol-teskey",{"name":1730,"config":1731},"Carol Teskey",{"headshot":7,"ctfId":1732},"cteskey",{"template":736},"content:en-us:blog:authors:carol-teskey.yml","en-us/blog/authors/carol-teskey.yml","en-us/blog/authors/carol-teskey",{"_path":1738,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1739,"config":1744,"_id":1745,"_type":31,"title":1740,"_source":33,"_file":1746,"_stem":1747,"_extension":36},"/en-us/blog/authors/cesar-saavedra",{"name":1740,"config":1741},"Cesar Saavedra",{"headshot":1742,"ctfId":1743},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659600/Blog/Author%20Headshots/csaavedra1-headshot.jpg","csaavedra1",{"template":736},"content:en-us:blog:authors:cesar-saavedra.yml","en-us/blog/authors/cesar-saavedra.yml","en-us/blog/authors/cesar-saavedra",{"_path":1749,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1750,"config":1754,"_id":1755,"_type":31,"title":1751,"_source":33,"_file":1756,"_stem":1757,"_extension":36},"/en-us/blog/authors/chad-malchow",{"name":1751,"config":1752},"Chad Malchow",{"headshot":767,"ctfId":1753},"Chad-Malchow",{"template":736},"content:en-us:blog:authors:chad-malchow.yml","en-us/blog/authors/chad-malchow.yml","en-us/blog/authors/chad-malchow",{"_path":1759,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1760,"config":1765,"_id":1766,"_type":31,"title":1761,"_source":33,"_file":1767,"_stem":1768,"_extension":36},"/en-us/blog/authors/chance-feick",{"name":1761,"config":1762},"Chance Feick",{"headshot":1763,"ctfId":1764},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666442/Blog/Author%20Headshots/chance_feick_headshot.png","18dtRbXV47xqf5iDrOIduM",{"template":736},"content:en-us:blog:authors:chance-feick.yml","en-us/blog/authors/chance-feick.yml","en-us/blog/authors/chance-feick",{"_path":1770,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1771,"config":1776,"_id":1777,"_type":31,"title":1772,"_source":33,"_file":1778,"_stem":1779,"_extension":36},"/en-us/blog/authors/chandler-gibbons",{"name":1772,"config":1773},"Chandler Gibbons",{"headshot":1774,"ctfId":1775},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663276/Blog/Author%20Headshots/chandlergibb-headshot.jpg","chandlergibb",{"template":736},"content:en-us:blog:authors:chandler-gibbons.yml","en-us/blog/authors/chandler-gibbons.yml","en-us/blog/authors/chandler-gibbons",{"_path":1781,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1782,"config":1786,"_id":1787,"_type":31,"title":1788,"_source":33,"_file":1789,"_stem":1790,"_extension":36},"/en-us/blog/authors/charl-de-wit",{"name":1783,"config":1784},"Charl de Wit",{"headshot":767,"ctfId":1785},"45mQeypQVLNvvTWMzserbR",{"template":736},"content:en-us:blog:authors:charl-de-wit.yml","Charl De Wit","en-us/blog/authors/charl-de-wit.yml","en-us/blog/authors/charl-de-wit",{"_path":1792,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1793,"config":1798,"_id":1799,"_type":31,"title":1794,"_source":33,"_file":1800,"_stem":1801,"_extension":36},"/en-us/blog/authors/charlie-ablett",{"name":1794,"config":1795},"Charlie Ablett",{"headshot":1796,"ctfId":1797},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670131/Blog/Author%20Headshots/cablett-headshot.png","cablett",{"template":736},"content:en-us:blog:authors:charlie-ablett.yml","en-us/blog/authors/charlie-ablett.yml","en-us/blog/authors/charlie-ablett",{"_path":1803,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1804,"config":1808,"_id":1809,"_type":31,"title":1805,"_source":33,"_file":1810,"_stem":1811,"_extension":36},"/en-us/blog/authors/charvi-mendiratta",{"name":1805,"config":1806},"Charvi Mendiratta",{"headshot":767,"ctfId":1807},"YV7WvnjPWFS3JhXmSYJLk",{"template":736},"content:en-us:blog:authors:charvi-mendiratta.yml","en-us/blog/authors/charvi-mendiratta.yml","en-us/blog/authors/charvi-mendiratta",{"_path":1813,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1814,"config":1819,"_id":1820,"_type":31,"title":1815,"_source":33,"_file":1821,"_stem":1822,"_extension":36},"/en-us/blog/authors/cherry-han",{"name":1815,"config":1816},"Cherry Han",{"headshot":1817,"ctfId":1818},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750713473/ehktvdbix2o1t0mmcvll.png","6gkuhRkgzCNP1Ee6J14yLu",{"template":736},"content:en-us:blog:authors:cherry-han.yml","en-us/blog/authors/cherry-han.yml","en-us/blog/authors/cherry-han",{"_path":1824,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1825,"config":1829,"_id":1831,"_type":31,"title":1826,"_source":33,"_file":1832,"_stem":1833,"_extension":36},"/en-us/blog/authors/chloe-cartron",{"name":1826,"config":1827},"Chloe Cartron",{"headshot":1828},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1754425488/d0uiiypsxa5ajnbdm6jn.png",{"template":736,"gitlabHandle":1830},"ChloeCartron","content:en-us:blog:authors:chloe-cartron.yml","en-us/blog/authors/chloe-cartron.yml","en-us/blog/authors/chloe-cartron",{"_path":1835,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1836,"config":1841,"_id":1842,"_type":31,"title":1837,"_source":33,"_file":1843,"_stem":1844,"_extension":36},"/en-us/blog/authors/chloe-whitestone",{"name":1837,"config":1838},"Chloe Whitestone",{"headshot":1839,"ctfId":1840},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678693/Blog/Author%20Headshots/chloe-headshot.jpg","chloe",{"template":736},"content:en-us:blog:authors:chloe-whitestone.yml","en-us/blog/authors/chloe-whitestone.yml","en-us/blog/authors/chloe-whitestone",{"_path":1846,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1847,"config":1852,"_id":1853,"_type":31,"title":1848,"_source":33,"_file":1854,"_stem":1855,"_extension":36},"/en-us/blog/authors/chris-balane",{"name":1848,"config":1849},"Chris Balane",{"headshot":1850,"ctfId":1851},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667630/Blog/Author%20Headshots/chris_balane_headshot.png","40SOCfTl3frynjL3dbg63o",{"template":736},"content:en-us:blog:authors:chris-balane.yml","en-us/blog/authors/chris-balane.yml","en-us/blog/authors/chris-balane",{"_path":1857,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1858,"config":1862,"_id":1863,"_type":31,"title":1859,"_source":33,"_file":1864,"_stem":1865,"_extension":36},"/en-us/blog/authors/chris-baus",{"name":1859,"config":1860},"Chris Baus",{"headshot":7,"ctfId":1861},"chrisbaus",{"template":736},"content:en-us:blog:authors:chris-baus.yml","en-us/blog/authors/chris-baus.yml","en-us/blog/authors/chris-baus",{"_path":1867,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1868,"config":1873,"_id":1874,"_type":31,"title":1869,"_source":33,"_file":1875,"_stem":1876,"_extension":36},"/en-us/blog/authors/chris-micek",{"name":1869,"config":1870},"Chris Micek",{"headshot":1871,"ctfId":1872},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666144/Blog/Author%20Headshots/chris_micek_headshot.png","62ZsvfXlttQEQ1tnikgoq9",{"template":736},"content:en-us:blog:authors:chris-micek.yml","en-us/blog/authors/chris-micek.yml","en-us/blog/authors/chris-micek",{"_path":1878,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1879,"config":1884,"_id":1885,"_type":31,"title":1880,"_source":33,"_file":1886,"_stem":1887,"_extension":36},"/en-us/blog/authors/chris-moberly",{"name":1880,"config":1881},"Chris Moberly",{"headshot":1882,"ctfId":1883},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664235/Blog/Author%20Headshots/cmoberly-headshot.jpg","cmoberly",{"template":736},"content:en-us:blog:authors:chris-moberly.yml","en-us/blog/authors/chris-moberly.yml","en-us/blog/authors/chris-moberly",{"_path":1889,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1890,"config":1894,"_id":1895,"_type":31,"title":1896,"_source":33,"_file":1897,"_stem":1898,"_extension":36},"/en-us/blog/authors/chris-sterry-dotscience",{"name":1891,"config":1892},"Chris Sterry, Dotscience",{"headshot":767,"ctfId":1893},"Chris-Sterry-Dotscience",{"template":736},"content:en-us:blog:authors:chris-sterry-dotscience.yml","Chris Sterry Dotscience","en-us/blog/authors/chris-sterry-dotscience.yml","en-us/blog/authors/chris-sterry-dotscience",{"_path":1900,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1901,"config":1905,"_id":1906,"_type":31,"title":1902,"_source":33,"_file":1907,"_stem":1908,"_extension":36},"/en-us/blog/authors/chris-ward",{"name":1902,"config":1903},"Chris Ward",{"headshot":7,"ctfId":1904},"chrischinchilla",{"template":736},"content:en-us:blog:authors:chris-ward.yml","en-us/blog/authors/chris-ward.yml","en-us/blog/authors/chris-ward",{"_path":1910,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1911,"config":1918,"_id":1919,"_type":31,"title":1913,"_source":33,"_file":1920,"_stem":1921,"_extension":36},"/en-us/blog/authors/chris-weber",{"role":1912,"name":1913,"config":1914},"CRO ","Chris Weber",{"headshot":1915,"linkedin":1916,"ctfId":1917},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670579/Blog/Author%20Headshots/Chris_Weber_Photo.png","https://www.linkedin.com/in/chris-weber/","4V6qmuzCIjMs5IdD7EKS5X",{"template":736},"content:en-us:blog:authors:chris-weber.yml","en-us/blog/authors/chris-weber.yml","en-us/blog/authors/chris-weber",{"_path":1923,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1924,"config":1928,"_id":1929,"_type":31,"title":1925,"_source":33,"_file":1930,"_stem":1931,"_extension":36},"/en-us/blog/authors/chrissie-buchanan",{"name":1925,"config":1926},"Chrissie Buchanan",{"headshot":767,"ctfId":1927},"cbuchanan",{"template":736},"content:en-us:blog:authors:chrissie-buchanan.yml","en-us/blog/authors/chrissie-buchanan.yml","en-us/blog/authors/chrissie-buchanan",{"_path":1933,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1934,"config":1939,"_id":1940,"_type":31,"title":1935,"_source":33,"_file":1941,"_stem":1942,"_extension":36},"/en-us/blog/authors/christen-dybenko",{"name":1935,"config":1936},"Christen Dybenko",{"headshot":1937,"ctfId":1938},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749668811/Blog/Author%20Headshots/cdybenko-headshot.jpg","cdybenko",{"template":736},"content:en-us:blog:authors:christen-dybenko.yml","en-us/blog/authors/christen-dybenko.yml","en-us/blog/authors/christen-dybenko",{"_path":1944,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1945,"config":1950,"_id":1951,"_type":31,"title":1946,"_source":33,"_file":1952,"_stem":1953,"_extension":36},"/en-us/blog/authors/christian-couder",{"name":1946,"config":1947},"Christian Couder",{"headshot":1948,"ctfId":1949},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663687/Blog/Author%20Headshots/chriscool-headshot.jpg","chriscool",{"template":736},"content:en-us:blog:authors:christian-couder.yml","en-us/blog/authors/christian-couder.yml","en-us/blog/authors/christian-couder",{"_path":1955,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1956,"config":1961,"_id":1962,"_type":31,"title":1957,"_source":33,"_file":1963,"_stem":1964,"_extension":36},"/en-us/blog/authors/christian-nnachi",{"name":1957,"config":1958},"Christian Nnachi",{"headshot":1959,"ctfId":1960},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665343/Blog/Author%20Headshots/christian_nnachi_headshot.png","6pE7HjtzzpRhBFVdwTFjEX",{"template":736},"content:en-us:blog:authors:christian-nnachi.yml","en-us/blog/authors/christian-nnachi.yml","en-us/blog/authors/christian-nnachi",{"_path":1966,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1967,"config":1971,"_id":1972,"_type":31,"title":1968,"_source":33,"_file":1973,"_stem":1974,"_extension":36},"/en-us/blog/authors/christian-simko",{"name":1968,"config":1969},"Christian Simko",{"headshot":7,"ctfId":1970},"csimko",{"template":736},"content:en-us:blog:authors:christian-simko.yml","en-us/blog/authors/christian-simko.yml","en-us/blog/authors/christian-simko",{"_path":1976,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1977,"config":1982,"_id":1983,"_type":31,"title":1978,"_source":33,"_file":1984,"_stem":1985,"_extension":36},"/en-us/blog/authors/christie-lenneville",{"name":1978,"config":1979},"Christie Lenneville",{"headshot":1980,"ctfId":1981},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670047/Blog/Author%20Headshots/clenneville-headshot.jpg","clenneville",{"template":736},"content:en-us:blog:authors:christie-lenneville.yml","en-us/blog/authors/christie-lenneville.yml","en-us/blog/authors/christie-lenneville",{"_path":1987,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1988,"config":1992,"_id":1993,"_type":31,"title":1994,"_source":33,"_file":1995,"_stem":1996,"_extension":36},"/en-us/blog/authors/christina-hupy-phd",{"name":1989,"config":1990},"Christina Hupy, Ph.D.",{"headshot":7,"ctfId":1991},"chupy",{"template":736},"content:en-us:blog:authors:christina-hupy-phd.yml","Christina Hupy Phd","en-us/blog/authors/christina-hupy-phd.yml","en-us/blog/authors/christina-hupy-phd",{"_path":1998,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":1999,"config":2004,"_id":2005,"_type":31,"title":2000,"_source":33,"_file":2006,"_stem":2007,"_extension":36},"/en-us/blog/authors/christina-lohr",{"name":2000,"config":2001},"Christina Lohr",{"headshot":2002,"ctfId":2003},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662499/Blog/Author%20Headshots/lohrc-headshot.jpg","lohrc",{"template":736},"content:en-us:blog:authors:christina-lohr.yml","en-us/blog/authors/christina-lohr.yml","en-us/blog/authors/christina-lohr",{"_path":2009,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2010,"config":2014,"_id":2015,"_type":31,"title":2011,"_source":33,"_file":2016,"_stem":2017,"_extension":36},"/en-us/blog/authors/christine-yoshida",{"name":2011,"config":2012},"Christine Yoshida",{"headshot":7,"ctfId":2013},"cyoshida",{"template":736},"content:en-us:blog:authors:christine-yoshida.yml","en-us/blog/authors/christine-yoshida.yml","en-us/blog/authors/christine-yoshida",{"_path":2019,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2020,"config":2024,"_id":2025,"_type":31,"title":2021,"_source":33,"_file":2026,"_stem":2027,"_extension":36},"/en-us/blog/authors/christopher-watson",{"name":2021,"config":2022},"Christopher Watson",{"headshot":767,"ctfId":2023},"Christopher-Watson",{"template":736},"content:en-us:blog:authors:christopher-watson.yml","en-us/blog/authors/christopher-watson.yml","en-us/blog/authors/christopher-watson",{"_path":2029,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2030,"config":2034,"_id":2035,"_type":31,"title":2031,"_source":33,"_file":2036,"_stem":2037,"_extension":36},"/en-us/blog/authors/christos-bacharakis",{"name":2031,"config":2032},"Christos Bacharakis",{"headshot":767,"ctfId":2033},"Christos-Bacharakis",{"template":736},"content:en-us:blog:authors:christos-bacharakis.yml","en-us/blog/authors/christos-bacharakis.yml","en-us/blog/authors/christos-bacharakis",{"_path":2039,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2040,"config":2044,"_id":2045,"_type":31,"title":2041,"_source":33,"_file":2046,"_stem":2047,"_extension":36},"/en-us/blog/authors/cindy-blake",{"name":2041,"config":2042},"Cindy Blake",{"headshot":767,"ctfId":2043},"cblake",{"template":736},"content:en-us:blog:authors:cindy-blake.yml","en-us/blog/authors/cindy-blake.yml","en-us/blog/authors/cindy-blake",{"_path":2049,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2050,"config":2055,"_id":2056,"_type":31,"title":2051,"_source":33,"_file":2057,"_stem":2058,"_extension":36},"/en-us/blog/authors/claire-champernowne",{"name":2051,"config":2052},"Claire Champernowne",{"headshot":2053,"ctfId":2054},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664698/Blog/Author%20Headshots/clair_champernowne_headshot.png","jNt5P04nQ4dptXOKZZ8ZQ",{"template":736},"content:en-us:blog:authors:claire-champernowne.yml","en-us/blog/authors/claire-champernowne.yml","en-us/blog/authors/claire-champernowne",{"_path":2060,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2061,"config":2065,"_id":2066,"_type":31,"title":2062,"_source":33,"_file":2067,"_stem":2068,"_extension":36},"/en-us/blog/authors/clement-ho",{"name":2062,"config":2063},"Clement Ho",{"headshot":7,"ctfId":2064},"ClemMakesApps",{"template":736},"content:en-us:blog:authors:clement-ho.yml","en-us/blog/authors/clement-ho.yml","en-us/blog/authors/clement-ho",{"_path":2070,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2071,"config":2075,"_id":2076,"_type":31,"title":2072,"_source":33,"_file":2077,"_stem":2078,"_extension":36},"/en-us/blog/authors/colin-fletcher",{"name":2072,"config":2073},"Colin Fletcher",{"headshot":7,"ctfId":2074},"cfletcher1",{"template":736},"content:en-us:blog:authors:colin-fletcher.yml","en-us/blog/authors/colin-fletcher.yml","en-us/blog/authors/colin-fletcher",{"_path":2080,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2081,"config":2086,"_id":2087,"_type":31,"title":2082,"_source":33,"_file":2088,"_stem":2089,"_extension":36},"/en-us/blog/authors/connor-gilbert",{"name":2082,"config":2083},"Connor Gilbert",{"headshot":2084,"ctfId":2085},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665913/Blog/Author%20Headshots/connorgilbert-headshot.jpg","connorgilbert",{"template":736},"content:en-us:blog:authors:connor-gilbert.yml","en-us/blog/authors/connor-gilbert.yml","en-us/blog/authors/connor-gilbert",{"_path":2091,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2092,"config":2096,"_id":2097,"_type":31,"title":2093,"_source":33,"_file":2098,"_stem":2099,"_extension":36},"/en-us/blog/authors/connor-shea",{"name":2093,"config":2094},"Connor Shea",{"headshot":767,"ctfId":2095},"Connor-Shea",{"template":736},"content:en-us:blog:authors:connor-shea.yml","en-us/blog/authors/connor-shea.yml","en-us/blog/authors/connor-shea",{"_path":2101,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2102,"config":2107,"_id":2108,"_type":31,"title":2103,"_source":33,"_file":2109,"_stem":2110,"_extension":36},"/en-us/blog/authors/corey-oas",{"name":2103,"config":2104},"Corey Oas",{"headshot":2105,"ctfId":2106},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667633/Blog/Author%20Headshots/corey_oas_headshot.png","1Dd1lJ4aKCv36YWdlUhlPf",{"template":736},"content:en-us:blog:authors:corey-oas.yml","en-us/blog/authors/corey-oas.yml","en-us/blog/authors/corey-oas",{"_path":2112,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2113,"config":2117,"_id":2118,"_type":31,"title":2114,"_source":33,"_file":2119,"_stem":2120,"_extension":36},"/en-us/blog/authors/cormac-foster",{"name":2114,"config":2115},"Cormac Foster",{"headshot":7,"ctfId":2116},"cfoster3",{"template":736},"content:en-us:blog:authors:cormac-foster.yml","en-us/blog/authors/cormac-foster.yml","en-us/blog/authors/cormac-foster",{"_path":2122,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2123,"config":2128,"_id":2129,"_type":31,"title":2124,"_source":33,"_file":2130,"_stem":2131,"_extension":36},"/en-us/blog/authors/costel-maxim",{"name":2124,"config":2125},"Costel Maxim",{"headshot":2126,"ctfId":2127},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663173/Blog/Author%20Headshots/costel_maxim_headshot.png","3QzzrMksaRD9ZPytt0SPPL",{"template":736},"content:en-us:blog:authors:costel-maxim.yml","en-us/blog/authors/costel-maxim.yml","en-us/blog/authors/costel-maxim",{"_path":2133,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2134,"config":2139,"_id":2140,"_type":31,"title":2135,"_source":33,"_file":2141,"_stem":2142,"_extension":36},"/en-us/blog/authors/courtney-meddaugh",{"name":2135,"config":2136},"Courtney Meddaugh",{"headshot":2137,"ctfId":2138},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665168/Blog/Author%20Headshots/courtney_meddaugh_headshot.png","5avtK3YS9MrDBkaOnB9ZmG",{"template":736},"content:en-us:blog:authors:courtney-meddaugh.yml","en-us/blog/authors/courtney-meddaugh.yml","en-us/blog/authors/courtney-meddaugh",{"_path":2144,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2145,"config":2149,"_id":2150,"_type":31,"title":2146,"_source":33,"_file":2151,"_stem":2152,"_extension":36},"/en-us/blog/authors/craig-gomes",{"name":2146,"config":2147},"Craig Gomes",{"headshot":7,"ctfId":2148},"craiggomes",{"template":736},"content:en-us:blog:authors:craig-gomes.yml","en-us/blog/authors/craig-gomes.yml","en-us/blog/authors/craig-gomes",{"_path":2154,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2155,"config":2160,"_id":2161,"_type":31,"title":2156,"_source":33,"_file":2162,"_stem":2163,"_extension":36},"/en-us/blog/authors/craig-miskell",{"name":2156,"config":2157},"Craig Miskell",{"headshot":2158,"ctfId":2159},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667372/Blog/Author%20Headshots/cmiskell-headshot.jpg","cmiskell",{"template":736},"content:en-us:blog:authors:craig-miskell.yml","en-us/blog/authors/craig-miskell.yml","en-us/blog/authors/craig-miskell",{"_path":2165,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2166,"config":2170,"_id":2171,"_type":31,"title":2167,"_source":33,"_file":2172,"_stem":2173,"_extension":36},"/en-us/blog/authors/creighton-swank",{"name":2167,"config":2168},"Creighton Swank",{"headshot":767,"ctfId":2169},"5uf3k9lutpbelxJQ373eWu",{"template":736},"content:en-us:blog:authors:creighton-swank.yml","en-us/blog/authors/creighton-swank.yml","en-us/blog/authors/creighton-swank",{"_path":2175,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2176,"config":2180,"_id":2181,"_type":31,"title":2177,"_source":33,"_file":2182,"_stem":2183,"_extension":36},"/en-us/blog/authors/daisy-miclat",{"name":2177,"config":2178},"Daisy Miclat",{"headshot":767,"ctfId":2179},"IU4zOKoPhWS7hok7qsy7w",{"template":736},"content:en-us:blog:authors:daisy-miclat.yml","en-us/blog/authors/daisy-miclat.yml","en-us/blog/authors/daisy-miclat",{"_path":2185,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2186,"config":2190,"_id":2191,"_type":31,"title":2187,"_source":33,"_file":2192,"_stem":2193,"_extension":36},"/en-us/blog/authors/dan-luhring",{"name":2187,"config":2188},"Dan Luhring",{"headshot":7,"ctfId":2189},"danluhring",{"template":736},"content:en-us:blog:authors:dan-luhring.yml","en-us/blog/authors/dan-luhring.yml","en-us/blog/authors/dan-luhring",{"_path":2195,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2196,"config":2201,"_id":2202,"_type":31,"title":2197,"_source":33,"_file":2203,"_stem":2204,"_extension":36},"/en-us/blog/authors/dan-rabinovitz",{"name":2197,"config":2198},"Dan Rabinovitz",{"headshot":2199,"ctfId":2200},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664796/Blog/Author%20Headshots/dan_rabinovitz_headshot.png","31AXb267jy94budCWQZQyr",{"template":736},"content:en-us:blog:authors:dan-rabinovitz.yml","en-us/blog/authors/dan-rabinovitz.yml","en-us/blog/authors/dan-rabinovitz",{"_path":2206,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2207,"config":2211,"_id":2212,"_type":31,"title":2208,"_source":33,"_file":2213,"_stem":2214,"_extension":36},"/en-us/blog/authors/daniel-berman",{"name":2208,"config":2209},"Daniel Berman",{"headshot":767,"ctfId":2210},"Daniel-Berman",{"template":736},"content:en-us:blog:authors:daniel-berman.yml","en-us/blog/authors/daniel-berman.yml","en-us/blog/authors/daniel-berman",{"_path":2216,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2217,"config":2221,"_id":2222,"_type":31,"title":2218,"_source":33,"_file":2223,"_stem":2224,"_extension":36},"/en-us/blog/authors/daniel-gruesso",{"name":2218,"config":2219},"Daniel Gruesso",{"headshot":7,"ctfId":2220},"danielgruesso",{"template":736},"content:en-us:blog:authors:daniel-gruesso.yml","en-us/blog/authors/daniel-gruesso.yml","en-us/blog/authors/daniel-gruesso",{"_path":2226,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2227,"config":2232,"_id":2233,"_type":31,"title":2228,"_source":33,"_file":2234,"_stem":2235,"_extension":36},"/en-us/blog/authors/daniel-hauenstein",{"name":2228,"config":2229},"Daniel Hauenstein",{"headshot":2230,"ctfId":2231},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662434/Blog/Author%20Headshots/daniel_hauenstein_headshot.png","2gXGuSmuvZSxv0iCn4sinV",{"template":736},"content:en-us:blog:authors:daniel-hauenstein.yml","en-us/blog/authors/daniel-hauenstein.yml","en-us/blog/authors/daniel-hauenstein",{"_path":2237,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2238,"config":2243,"_id":2244,"_type":31,"title":2239,"_source":33,"_file":2245,"_stem":2246,"_extension":36},"/en-us/blog/authors/daniel-helfand",{"name":2239,"config":2240},"Daniel Helfand",{"headshot":2241,"ctfId":2242},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662418/Blog/Author%20Headshots/dhelfand.png","b9sRP0HJhdPsOEruWUfih",{"template":736},"content:en-us:blog:authors:daniel-helfand.yml","en-us/blog/authors/daniel-helfand.yml","en-us/blog/authors/daniel-helfand",{"_path":2248,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2249,"config":2253,"_id":2254,"_type":31,"title":2250,"_source":33,"_file":2255,"_stem":2256,"_extension":36},"/en-us/blog/authors/daniel-mora",{"name":2250,"config":2251},"Daniel Mora",{"headshot":7,"ctfId":2252},"dmoraberlin",{"template":736},"content:en-us:blog:authors:daniel-mora.yml","en-us/blog/authors/daniel-mora.yml","en-us/blog/authors/daniel-mora",{"_path":2258,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2259,"config":2263,"_id":2265,"_type":31,"title":2260,"_source":33,"_file":2266,"_stem":2267,"_extension":36},"/en-us/blog/authors/daniel-murphy",{"name":2260,"config":2261},"Daniel Murphy",{"headshot":2262},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1752519199/fabr89uottv7n6r2jldp.png",{"template":736,"gitlabHandle":2264},"daniel-murphy","content:en-us:blog:authors:daniel-murphy.yml","en-us/blog/authors/daniel-murphy.yml","en-us/blog/authors/daniel-murphy",{"_path":2269,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2270,"config":2275,"_id":2276,"_type":31,"title":2271,"_source":33,"_file":2277,"_stem":2278,"_extension":36},"/en-us/blog/authors/darby-frey",{"name":2271,"config":2272},"Darby Frey",{"headshot":2273,"ctfId":2274},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749668565/Blog/Author%20Headshots/darbyfrey-headshot.png","darbyfrey",{"template":736},"content:en-us:blog:authors:darby-frey.yml","en-us/blog/authors/darby-frey.yml","en-us/blog/authors/darby-frey",{"_path":2280,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2281,"config":2286,"_id":2287,"_type":31,"title":2282,"_source":33,"_file":2288,"_stem":2289,"_extension":36},"/en-us/blog/authors/darren-eastman",{"name":2282,"config":2283},"Darren Eastman",{"headshot":2284,"ctfId":2285},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665148/Blog/Author%20Headshots/darren_eastman.png","DarrenEastman",{"template":736},"content:en-us:blog:authors:darren-eastman.yml","en-us/blog/authors/darren-eastman.yml","en-us/blog/authors/darren-eastman",{"_path":2291,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2292,"config":2296,"_id":2297,"_type":31,"title":2293,"_source":33,"_file":2298,"_stem":2299,"_extension":36},"/en-us/blog/authors/darren-murph",{"name":2293,"config":2294},"Darren Murph",{"headshot":7,"ctfId":2295},"dmurph",{"template":736},"content:en-us:blog:authors:darren-murph.yml","en-us/blog/authors/darren-murph.yml","en-us/blog/authors/darren-murph",{"_path":2301,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2302,"config":2309,"_id":2310,"_type":31,"title":2304,"_source":33,"_file":2311,"_stem":2312,"_extension":36},"/en-us/blog/authors/darwin-sanoy",{"role":2303,"name":2304,"config":2305},"Field Chief Cloud Architect","Darwin Sanoy",{"headshot":2306,"linkedin":2307,"ctfId":2308},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659751/Blog/Author%20Headshots/Darwin-Sanoy-headshot-395-square-gitlab-teampage-avatar.png","https://linkedin.com/in/darwinsanoy","DarwinJS",{"template":736},"content:en-us:blog:authors:darwin-sanoy.yml","en-us/blog/authors/darwin-sanoy.yml","en-us/blog/authors/darwin-sanoy",{"_path":2314,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2315,"config":2320,"_id":2321,"_type":31,"title":2316,"_source":33,"_file":2322,"_stem":2323,"_extension":36},"/en-us/blog/authors/dave-steer",{"name":2316,"config":2317},"Dave Steer",{"headshot":2318,"ctfId":2319},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749658895/Blog/Author%20Headshots/dsteer-headshot.jpg","dsteer",{"template":736},"content:en-us:blog:authors:dave-steer.yml","en-us/blog/authors/dave-steer.yml","en-us/blog/authors/dave-steer",{"_path":2325,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2326,"config":2330,"_id":2331,"_type":31,"title":2327,"_source":33,"_file":2332,"_stem":2333,"_extension":36},"/en-us/blog/authors/dave-wentzel",{"name":2327,"config":2328},"Dave Wentzel",{"headshot":767,"ctfId":2329},"Dave-Wentzel",{"template":736},"content:en-us:blog:authors:dave-wentzel.yml","en-us/blog/authors/dave-wentzel.yml","en-us/blog/authors/dave-wentzel",{"_path":2335,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2336,"config":2341,"_id":2342,"_type":31,"title":2343,"_source":33,"_file":2344,"_stem":2345,"_extension":36},"/en-us/blog/authors/david-desanto-chief-product-officer-gitlab",{"name":2337,"config":2338},"David DeSanto, Chief Product Officer, GitLab",{"headshot":2339,"ctfId":2340},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749660185/Blog/Author%20Headshots/david-headshot.jpg","david",{"template":736},"content:en-us:blog:authors:david-desanto-chief-product-officer-gitlab.yml","David Desanto Chief Product Officer Gitlab","en-us/blog/authors/david-desanto-chief-product-officer-gitlab.yml","en-us/blog/authors/david-desanto-chief-product-officer-gitlab",{"_path":2347,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2348,"config":2353,"_id":2354,"_type":31,"title":2355,"_source":33,"_file":2356,"_stem":2357,"_extension":36},"/en-us/blog/authors/david-oregan",{"name":2349,"config":2350},"David O'Regan",{"headshot":2351,"ctfId":2352},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659853/Blog/Author%20Headshots/oregand-headshot.png","oregand",{"template":736},"content:en-us:blog:authors:david-oregan.yml","David Oregan","en-us/blog/authors/david-oregan.yml","en-us/blog/authors/david-oregan",{"_path":2359,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2360,"config":2364,"_id":2365,"_type":31,"title":2361,"_source":33,"_file":2366,"_stem":2367,"_extension":36},"/en-us/blog/authors/david-planella",{"name":2361,"config":2362},"David Planella",{"headshot":767,"ctfId":2363},"1Ehi3fTex4dxUCV2kYz4Vh",{"template":736},"content:en-us:blog:authors:david-planella.yml","en-us/blog/authors/david-planella.yml","en-us/blog/authors/david-planella",{"_path":2369,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2370,"config":2374,"_id":2375,"_type":31,"title":2371,"_source":33,"_file":2376,"_stem":2377,"_extension":36},"/en-us/blog/authors/david-russell",{"name":2371,"config":2372},"David Russell",{"headshot":767,"ctfId":2373},"David-Russell",{"template":736},"content:en-us:blog:authors:david-russell.yml","en-us/blog/authors/david-russell.yml","en-us/blog/authors/david-russell",{"_path":2379,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2380,"config":2385,"_id":2386,"_type":31,"title":2381,"_source":33,"_file":2387,"_stem":2388,"_extension":36},"/en-us/blog/authors/david-smith",{"name":2381,"config":2382},"David Smith",{"headshot":2383,"ctfId":2384},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671135/Blog/Author%20Headshots/dawsmith-headshot.jpg","dawsmith",{"template":736},"content:en-us:blog:authors:david-smith.yml","en-us/blog/authors/david-smith.yml","en-us/blog/authors/david-smith",{"_path":2390,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2391,"config":2395,"_id":2396,"_type":31,"title":2392,"_source":33,"_file":2397,"_stem":2398,"_extension":36},"/en-us/blog/authors/davis-townsend",{"name":2392,"config":2393},"Davis Townsend",{"headshot":7,"ctfId":2394},"davistownsend",{"template":736},"content:en-us:blog:authors:davis-townsend.yml","en-us/blog/authors/davis-townsend.yml","en-us/blog/authors/davis-townsend",{"_path":2400,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2401,"config":2405,"_id":2407,"_type":31,"title":2402,"_source":33,"_file":2408,"_stem":2409,"_extension":36},"/en-us/blog/authors/davoud-tu",{"name":2402,"config":2403},"Davoud Tu",{"headshot":2404},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1756481763/pfdaqbndnstiqlmxh3ee.png",{"template":736,"gitlabHandle":2406},"davoudtu","content:en-us:blog:authors:davoud-tu.yml","en-us/blog/authors/davoud-tu.yml","en-us/blog/authors/davoud-tu",{"_path":2411,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2412,"config":2417,"_id":2418,"_type":31,"title":2419,"_source":33,"_file":2420,"_stem":2421,"_extension":36},"/en-us/blog/authors/dean-agron-co-founder-and-ceo-oxeye",{"name":2413,"config":2414},"Dean Agron, co-founder and CEO, Oxeye",{"headshot":2415,"ctfId":2416},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671963/Blog/Author%20Headshots/Dean_Photo__1_.jpg","6wQ0QwFZdbzAtYGZgnALkw",{"template":736},"content:en-us:blog:authors:dean-agron-co-founder-and-ceo-oxeye.yml","Dean Agron Co Founder And Ceo Oxeye","en-us/blog/authors/dean-agron-co-founder-and-ceo-oxeye.yml","en-us/blog/authors/dean-agron-co-founder-and-ceo-oxeye",{"_path":2423,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2424,"config":2429,"_id":2430,"_type":31,"title":2425,"_source":33,"_file":2431,"_stem":2432,"_extension":36},"/en-us/blog/authors/deepa-mahalingam",{"name":2425,"config":2426},"Deepa Mahalingam",{"headshot":2427,"ctfId":2428},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662019/Blog/Author%20Headshots/deepa-headshot.jpg","M54z9AWDuU7L9nBR9gRF4",{"template":736},"content:en-us:blog:authors:deepa-mahalingam.yml","en-us/blog/authors/deepa-mahalingam.yml","en-us/blog/authors/deepa-mahalingam",{"_path":2434,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2435,"config":2440,"_id":2441,"_type":31,"title":2436,"_source":33,"_file":2442,"_stem":2443,"_extension":36},"/en-us/blog/authors/dennis-appelt",{"name":2436,"config":2437},"Dennis Appelt",{"headshot":2438,"ctfId":2439},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672032/Blog/Author%20Headshots/dappelt-headshot.jpg","dappelt",{"template":736},"content:en-us:blog:authors:dennis-appelt.yml","en-us/blog/authors/dennis-appelt.yml","en-us/blog/authors/dennis-appelt",{"_path":2445,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2446,"config":2451,"_id":2452,"_type":31,"title":2447,"_source":33,"_file":2453,"_stem":2454,"_extension":36},"/en-us/blog/authors/dennis-tang",{"name":2447,"config":2448},"Dennis Tang",{"headshot":2449,"ctfId":2450},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672189/Blog/Author%20Headshots/dennis-headshot.jpg","dennis",{"template":736},"content:en-us:blog:authors:dennis-tang.yml","en-us/blog/authors/dennis-tang.yml","en-us/blog/authors/dennis-tang",{"_path":2456,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2457,"config":2461,"_id":2463,"_type":31,"title":2464,"_source":33,"_file":2465,"_stem":2466,"_extension":36},"/en-us/blog/authors/dennis-van-rooijen",{"name":2458,"config":2459},"Dennis van Rooijen",{"headshot":2460},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758031391/muvwg1sxetzekmuhqdql.png",{"template":736,"gitlabHandle":2462},"dvanrooijen2","content:en-us:blog:authors:dennis-van-rooijen.yml","Dennis Van Rooijen","en-us/blog/authors/dennis-van-rooijen.yml","en-us/blog/authors/dennis-van-rooijen",{"_path":2468,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2469,"config":2474,"_id":2475,"_type":31,"title":2470,"_source":33,"_file":2476,"_stem":2477,"_extension":36},"/en-us/blog/authors/devin-sylva",{"name":2470,"config":2471},"Devin Sylva",{"headshot":2472,"ctfId":2473},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679087/Blog/Author%20Headshots/devin-headshot.jpg","devin",{"template":736},"content:en-us:blog:authors:devin-sylva.yml","en-us/blog/authors/devin-sylva.yml","en-us/blog/authors/devin-sylva",{"_path":2479,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2480,"config":2484,"_id":2485,"_type":31,"title":2481,"_source":33,"_file":2486,"_stem":2487,"_extension":36},"/en-us/blog/authors/dhruv-jain",{"name":2481,"config":2482},"Dhruv Jain",{"headshot":767,"ctfId":2483},"2wyibk9HBKn6PjgaEuzXuZ",{"template":736},"content:en-us:blog:authors:dhruv-jain.yml","en-us/blog/authors/dhruv-jain.yml","en-us/blog/authors/dhruv-jain",{"_path":2489,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2490,"config":2494,"_id":2495,"_type":31,"title":2491,"_source":33,"_file":2496,"_stem":2497,"_extension":36},"/en-us/blog/authors/diana-logan",{"name":2491,"config":2492},"Diana Logan",{"headshot":767,"ctfId":2493},"6poIwhQe6W9ysm5rBuSPXX",{"template":736},"content:en-us:blog:authors:diana-logan.yml","en-us/blog/authors/diana-logan.yml","en-us/blog/authors/diana-logan",{"_path":2499,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2500,"config":2505,"_id":2506,"_type":31,"title":2501,"_source":33,"_file":2507,"_stem":2508,"_extension":36},"/en-us/blog/authors/dilan-orrino",{"name":2501,"config":2502},"Dilan Orrino",{"headshot":2503,"ctfId":2504},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666180/Blog/Author%20Headshots/dorrino-headshot.png","dorrino",{"template":736},"content:en-us:blog:authors:dilan-orrino.yml","en-us/blog/authors/dilan-orrino.yml","en-us/blog/authors/dilan-orrino",{"_path":2510,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2511,"config":2515,"_id":2516,"_type":31,"title":2512,"_source":33,"_file":2517,"_stem":2518,"_extension":36},"/en-us/blog/authors/dimitrie-hoekstra",{"name":2512,"config":2513},"Dimitrie Hoekstra",{"headshot":7,"ctfId":2514},"dimitrieh",{"template":736},"content:en-us:blog:authors:dimitrie-hoekstra.yml","en-us/blog/authors/dimitrie-hoekstra.yml","en-us/blog/authors/dimitrie-hoekstra",{"_path":2520,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2521,"config":2525,"_id":2526,"_type":31,"title":2522,"_source":33,"_file":2527,"_stem":2528,"_extension":36},"/en-us/blog/authors/dinesh-bolkensteyn",{"name":2522,"config":2523},"Dinesh Bolkensteyn",{"headshot":767,"ctfId":2524},"EpylYWgjPmFOL5NX3Zxmk",{"template":736},"content:en-us:blog:authors:dinesh-bolkensteyn.yml","en-us/blog/authors/dinesh-bolkensteyn.yml","en-us/blog/authors/dinesh-bolkensteyn",{"_path":2530,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2531,"config":2535,"_id":2536,"_type":31,"title":2537,"_source":33,"_file":2538,"_stem":2539,"_extension":36},"/en-us/blog/authors/dj-mountney",{"name":2532,"config":2533},"DJ Mountney",{"headshot":767,"ctfId":2534},"DJ-Mountney",{"template":736},"content:en-us:blog:authors:dj-mountney.yml","Dj Mountney","en-us/blog/authors/dj-mountney.yml","en-us/blog/authors/dj-mountney",{"_path":2541,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2542,"config":2546,"_id":2547,"_type":31,"title":2548,"_source":33,"_file":2549,"_stem":2550,"_extension":36},"/en-us/blog/authors/dmitriy-job",{"name":2543,"config":2544},"Dmitriy, Job",{"headshot":767,"ctfId":2545},"Dmitriy-Job",{"template":736},"content:en-us:blog:authors:dmitriy-job.yml","Dmitriy Job","en-us/blog/authors/dmitriy-job.yml","en-us/blog/authors/dmitriy-job",{"_path":2552,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2553,"config":2557,"_id":2558,"_type":31,"title":2554,"_source":33,"_file":2559,"_stem":2560,"_extension":36},"/en-us/blog/authors/dmitriy-zaporozhets",{"name":2554,"config":2555},"Dmitriy Zaporozhets",{"headshot":767,"ctfId":2556},"Dmitriy-Zaporozhets",{"template":736},"content:en-us:blog:authors:dmitriy-zaporozhets.yml","en-us/blog/authors/dmitriy-zaporozhets.yml","en-us/blog/authors/dmitriy-zaporozhets",{"_path":2562,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2563,"config":2568,"_id":2569,"_type":31,"title":2564,"_source":33,"_file":2570,"_stem":2571,"_extension":36},"/en-us/blog/authors/dmitry-gruzd",{"name":2564,"config":2565},"Dmitry Gruzd",{"headshot":2566,"ctfId":2567},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682014/Blog/Author%20Headshots/dgruzd-headshot.jpg","dgruzd",{"template":736},"content:en-us:blog:authors:dmitry-gruzd.yml","en-us/blog/authors/dmitry-gruzd.yml","en-us/blog/authors/dmitry-gruzd",{"_path":2573,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2574,"config":2579,"_id":2580,"_type":31,"title":2575,"_source":33,"_file":2581,"_stem":2582,"_extension":36},"/en-us/blog/authors/dominic-couture",{"name":2575,"config":2576},"Dominic Couture",{"headshot":2577,"ctfId":2578},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683783/Blog/Author%20Headshots/dominic.png","3K2DmuMWV5isBeVtKsplia",{"template":736},"content:en-us:blog:authors:dominic-couture.yml","en-us/blog/authors/dominic-couture.yml","en-us/blog/authors/dominic-couture",{"_path":2584,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2585,"config":2589,"_id":2590,"_type":31,"title":2586,"_source":33,"_file":2591,"_stem":2592,"_extension":36},"/en-us/blog/authors/douglas-alexandre",{"name":2586,"config":2587},"Douglas Alexandre",{"headshot":767,"ctfId":2588},"Douglas-Alexandre",{"template":736},"content:en-us:blog:authors:douglas-alexandre.yml","en-us/blog/authors/douglas-alexandre.yml","en-us/blog/authors/douglas-alexandre",{"_path":2594,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2595,"config":2599,"_id":2600,"_type":31,"title":2596,"_source":33,"_file":2601,"_stem":2602,"_extension":36},"/en-us/blog/authors/douwe-maan",{"name":2596,"config":2597},"Douwe Maan",{"headshot":7,"ctfId":2598},"DouweM",{"template":736},"content:en-us:blog:authors:douwe-maan.yml","en-us/blog/authors/douwe-maan.yml","en-us/blog/authors/douwe-maan",{"_path":2604,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2605,"config":2610,"_id":2611,"_type":31,"title":2606,"_source":33,"_file":2612,"_stem":2613,"_extension":36},"/en-us/blog/authors/dov-hershkovitch",{"name":2606,"config":2607},"Dov Hershkovitch",{"headshot":2608,"ctfId":2609},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665628/Blog/Author%20Headshots/dhershkovitch-headshot.png","dhershkovitch",{"template":736},"content:en-us:blog:authors:dov-hershkovitch.yml","en-us/blog/authors/dov-hershkovitch.yml","en-us/blog/authors/dov-hershkovitch",{"_path":2615,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2616,"config":2620,"_id":2621,"_type":31,"title":2622,"_source":33,"_file":2623,"_stem":2624,"_extension":36},"/en-us/blog/authors/dr-elle-obrien",{"name":2617,"config":2618},"Dr. Elle O'Brien",{"headshot":767,"ctfId":2619},"Dr-Elle-OBrien",{"template":736},"content:en-us:blog:authors:dr-elle-obrien.yml","Dr Elle Obrien","en-us/blog/authors/dr-elle-obrien.yml","en-us/blog/authors/dr-elle-obrien",{"_path":2626,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2627,"config":2631,"_id":2632,"_type":31,"title":2628,"_source":33,"_file":2633,"_stem":2634,"_extension":36},"/en-us/blog/authors/drew-blessing",{"name":2628,"config":2629},"Drew Blessing",{"headshot":767,"ctfId":2630},"Drew-Blessing",{"template":736},"content:en-us:blog:authors:drew-blessing.yml","en-us/blog/authors/drew-blessing.yml","en-us/blog/authors/drew-blessing",{"_path":2636,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2637,"config":2642,"_id":2643,"_type":31,"title":2638,"_source":33,"_file":2644,"_stem":2645,"_extension":36},"/en-us/blog/authors/dylan-griffith",{"name":2638,"config":2639},"Dylan Griffith",{"headshot":2640,"ctfId":2641},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672822/Blog/Author%20Headshots/DylanGriffith-headshot.jpg","DylanGriffith",{"template":736},"content:en-us:blog:authors:dylan-griffith.yml","en-us/blog/authors/dylan-griffith.yml","en-us/blog/authors/dylan-griffith",{"_path":2647,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2648,"config":2652,"_id":2653,"_type":31,"title":2649,"_source":33,"_file":2654,"_stem":2655,"_extension":36},"/en-us/blog/authors/eddie-glenn",{"name":2649,"config":2650},"Eddie Glenn",{"headshot":7,"ctfId":2651},"eglenn",{"template":736},"content:en-us:blog:authors:eddie-glenn.yml","en-us/blog/authors/eddie-glenn.yml","en-us/blog/authors/eddie-glenn",{"_path":2657,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2658,"config":2663,"_id":2664,"_type":31,"title":2659,"_source":33,"_file":2665,"_stem":2666,"_extension":36},"/en-us/blog/authors/eduardo-bonet",{"name":2659,"config":2660},"Eduardo Bonet",{"headshot":2661,"ctfId":2662},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682722/Blog/Author%20Headshots/eduardobonet-headshot.jpg","eduardobonet",{"template":736},"content:en-us:blog:authors:eduardo-bonet.yml","en-us/blog/authors/eduardo-bonet.yml","en-us/blog/authors/eduardo-bonet",{"_path":2668,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2669,"config":2674,"_id":2675,"_type":31,"title":2670,"_source":33,"_file":2676,"_stem":2677,"_extension":36},"/en-us/blog/authors/eliran-mesika",{"name":2670,"config":2671},"Eliran Mesika",{"headshot":2672,"ctfId":2673},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670111/Blog/Author%20Headshots/eliran.jpg","eliranmesika",{"template":736},"content:en-us:blog:authors:eliran-mesika.yml","en-us/blog/authors/eliran-mesika.yml","en-us/blog/authors/eliran-mesika",{"_path":2679,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2680,"config":2685,"_id":2686,"_type":31,"title":2681,"_source":33,"_file":2687,"_stem":2688,"_extension":36},"/en-us/blog/authors/elisabeth-burrows",{"name":2681,"config":2682},"Elisabeth Burrows",{"headshot":2683,"ctfId":2684},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659535/Blog/Author%20Headshots/liz_burrows_headshot.png","6Nj2Lio5W7HdeNYoysVgCf",{"template":736},"content:en-us:blog:authors:elisabeth-burrows.yml","en-us/blog/authors/elisabeth-burrows.yml","en-us/blog/authors/elisabeth-burrows",{"_path":2690,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2691,"config":2695,"_id":2696,"_type":31,"title":2692,"_source":33,"_file":2697,"_stem":2698,"_extension":36},"/en-us/blog/authors/elliot-rushton",{"name":2692,"config":2693},"Elliot Rushton",{"headshot":7,"ctfId":2694},"erushton",{"template":736},"content:en-us:blog:authors:elliot-rushton.yml","en-us/blog/authors/elliot-rushton.yml","en-us/blog/authors/elliot-rushton",{"_path":2700,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2701,"config":2705,"_id":2706,"_type":31,"title":2702,"_source":33,"_file":2707,"_stem":2708,"_extension":36},"/en-us/blog/authors/emilie-schario",{"name":2702,"config":2703},"Emilie Schario",{"headshot":7,"ctfId":2704},"emilie",{"template":736},"content:en-us:blog:authors:emilie-schario.yml","en-us/blog/authors/emilie-schario.yml","en-us/blog/authors/emilie-schario",{"_path":2710,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2711,"config":2716,"_id":2717,"_type":31,"title":2712,"_source":33,"_file":2718,"_stem":2719,"_extension":36},"/en-us/blog/authors/emilio-salvador",{"name":2712,"config":2713},"Emilio Salvador",{"headshot":2714,"ctfId":2715},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749660161/Blog/Author%20Headshots/esalvadorp-headshot.png","esalvadorp",{"template":736},"content:en-us:blog:authors:emilio-salvador.yml","en-us/blog/authors/emilio-salvador.yml","en-us/blog/authors/emilio-salvador",{"_path":2721,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2722,"config":2727,"_id":2728,"_type":31,"title":2723,"_source":33,"_file":2729,"_stem":2730,"_extension":36},"/en-us/blog/authors/emily-bauman",{"name":2723,"config":2724},"Emily Bauman",{"headshot":2725,"ctfId":2726},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664145/Blog/Author%20Headshots/emilybauman-headshot.jpg","emilybauman",{"template":736},"content:en-us:blog:authors:emily-bauman.yml","en-us/blog/authors/emily-bauman.yml","en-us/blog/authors/emily-bauman",{"_path":2732,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2733,"config":2737,"_id":2738,"_type":31,"title":2734,"_source":33,"_file":2739,"_stem":2740,"_extension":36},"/en-us/blog/authors/emily-chin",{"name":2734,"config":2735},"Emily Chin",{"headshot":7,"ctfId":2736},"echin",{"template":736},"content:en-us:blog:authors:emily-chin.yml","en-us/blog/authors/emily-chin.yml","en-us/blog/authors/emily-chin",{"_path":2742,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2743,"config":2747,"_id":2748,"_type":31,"title":2744,"_source":33,"_file":2749,"_stem":2750,"_extension":36},"/en-us/blog/authors/emily-kyle",{"name":2744,"config":2745},"Emily Kyle",{"headshot":767,"ctfId":2746},"Emily-Kyle",{"template":736},"content:en-us:blog:authors:emily-kyle.yml","en-us/blog/authors/emily-kyle.yml","en-us/blog/authors/emily-kyle",{"_path":2752,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2753,"config":2757,"_id":2758,"_type":31,"title":2759,"_source":33,"_file":2760,"_stem":2761,"_extension":36},"/en-us/blog/authors/emily-von-hoffmann",{"name":2754,"config":2755},"Emily von Hoffmann",{"headshot":767,"ctfId":2756},"evhoffmann",{"template":736},"content:en-us:blog:authors:emily-von-hoffmann.yml","Emily Von Hoffmann","en-us/blog/authors/emily-von-hoffmann.yml","en-us/blog/authors/emily-von-hoffmann",{"_path":2763,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2764,"config":2769,"_id":2770,"_type":31,"title":2771,"_source":33,"_file":2772,"_stem":2773,"_extension":36},"/en-us/blog/authors/enrique-alcntara",{"name":2765,"config":2766},"Enrique Alcántara",{"headshot":2767,"ctfId":2768},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669746/Blog/Author%20Headshots/ealcantara-headshot.jpg","3E3c30ZWRUTq6rlFiYrjtq",{"template":736},"content:en-us:blog:authors:enrique-alcntara.yml","Enrique Alcntara","en-us/blog/authors/enrique-alcntara.yml","en-us/blog/authors/enrique-alcntara",{"_path":2775,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2776,"config":2780,"_id":2781,"_type":31,"title":2777,"_source":33,"_file":2782,"_stem":2783,"_extension":36},"/en-us/blog/authors/eric-brinkman",{"name":2777,"config":2778},"Eric Brinkman",{"headshot":7,"ctfId":2779},"ebrinkman",{"template":736},"content:en-us:blog:authors:eric-brinkman.yml","en-us/blog/authors/eric-brinkman.yml","en-us/blog/authors/eric-brinkman",{"_path":2785,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2786,"config":2790,"_id":2791,"_type":31,"title":2787,"_source":33,"_file":2792,"_stem":2793,"_extension":36},"/en-us/blog/authors/eric-eastwood",{"name":2787,"config":2788},"Eric Eastwood",{"headshot":7,"ctfId":2789},"MadLittleMods",{"template":736},"content:en-us:blog:authors:eric-eastwood.yml","en-us/blog/authors/eric-eastwood.yml","en-us/blog/authors/eric-eastwood",{"_path":2795,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2796,"config":2800,"_id":2801,"_type":31,"title":2797,"_source":33,"_file":2802,"_stem":2803,"_extension":36},"/en-us/blog/authors/eric-rosenberg",{"name":2797,"config":2798},"Eric Rosenberg",{"headshot":7,"ctfId":2799},"ericrosenberg88",{"template":736},"content:en-us:blog:authors:eric-rosenberg.yml","en-us/blog/authors/eric-rosenberg.yml","en-us/blog/authors/eric-rosenberg",{"_path":2805,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2806,"config":2811,"_id":2812,"_type":31,"title":2807,"_source":33,"_file":2813,"_stem":2814,"_extension":36},"/en-us/blog/authors/eric-rubin",{"name":2807,"config":2808},"Eric Rubin",{"headshot":2809,"ctfId":2810},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682494/Blog/Author%20Headshots/ericrubin-headshot.png","ericrubin",{"template":736},"content:en-us:blog:authors:eric-rubin.yml","en-us/blog/authors/eric-rubin.yml","en-us/blog/authors/eric-rubin",{"_path":2816,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2817,"config":2822,"_id":2823,"_type":31,"title":2818,"_source":33,"_file":2824,"_stem":2825,"_extension":36},"/en-us/blog/authors/eric-schurter",{"name":2818,"config":2819},"Eric Schurter",{"headshot":2820,"ctfId":2821},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679281/Blog/Author%20Headshots/ericschurter-headshot.jpg","ericschurter",{"template":736},"content:en-us:blog:authors:eric-schurter.yml","en-us/blog/authors/eric-schurter.yml","en-us/blog/authors/eric-schurter",{"_path":2827,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2828,"config":2832,"_id":2833,"_type":31,"title":2829,"_source":33,"_file":2834,"_stem":2835,"_extension":36},"/en-us/blog/authors/erica-huang",{"name":2829,"config":2830},"Erica Huang",{"headshot":7,"ctfId":2831},"exhuang",{"template":736},"content:en-us:blog:authors:erica-huang.yml","en-us/blog/authors/erica-huang.yml","en-us/blog/authors/erica-huang",{"_path":2837,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2838,"config":2842,"_id":2843,"_type":31,"title":2839,"_source":33,"_file":2844,"_stem":2845,"_extension":36},"/en-us/blog/authors/erica-lindberg",{"name":2839,"config":2840},"Erica Lindberg",{"headshot":767,"ctfId":2841},"Erica-Lindberg",{"template":736},"content:en-us:blog:authors:erica-lindberg.yml","en-us/blog/authors/erica-lindberg.yml","en-us/blog/authors/erica-lindberg",{"_path":2847,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2848,"config":2852,"_id":2853,"_type":31,"title":2849,"_source":33,"_file":2854,"_stem":2855,"_extension":36},"/en-us/blog/authors/erich-wegscheider",{"name":2849,"config":2850},"Erich Wegscheider",{"headshot":7,"ctfId":2851},"ewegscheider",{"template":736},"content:en-us:blog:authors:erich-wegscheider.yml","en-us/blog/authors/erich-wegscheider.yml","en-us/blog/authors/erich-wegscheider",{"_path":2857,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2858,"config":2862,"_id":2863,"_type":31,"title":2859,"_source":33,"_file":2864,"_stem":2865,"_extension":36},"/en-us/blog/authors/erick-banks",{"name":2859,"config":2860},"Erick Banks",{"headshot":767,"ctfId":2861},"4CGXhAxudTq69aZOtPnLfu",{"template":736},"content:en-us:blog:authors:erick-banks.yml","en-us/blog/authors/erick-banks.yml","en-us/blog/authors/erick-banks",{"_path":2867,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2868,"config":2872,"_id":2873,"_type":31,"title":2869,"_source":33,"_file":2874,"_stem":2875,"_extension":36},"/en-us/blog/authors/erika-feldman",{"name":2869,"config":2870},"Erika Feldman",{"headshot":767,"ctfId":2871},"78oCat8vvbl6mzXsLawd9d",{"template":736},"content:en-us:blog:authors:erika-feldman.yml","en-us/blog/authors/erika-feldman.yml","en-us/blog/authors/erika-feldman",{"_path":2877,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2878,"config":2882,"_id":2883,"_type":31,"title":2884,"_source":33,"_file":2885,"_stem":2886,"_extension":36},"/en-us/blog/authors/erin-krengel-pulumi",{"name":2879,"config":2880},"Erin Krengel, Pulumi",{"headshot":767,"ctfId":2881},"Erin-Krengel-Pulumi",{"template":736},"content:en-us:blog:authors:erin-krengel-pulumi.yml","Erin Krengel Pulumi","en-us/blog/authors/erin-krengel-pulumi.yml","en-us/blog/authors/erin-krengel-pulumi",{"_path":2888,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2889,"config":2893,"_id":2894,"_type":31,"title":2895,"_source":33,"_file":2896,"_stem":2897,"_extension":36},"/en-us/blog/authors/ernst-van-nierop",{"name":2890,"config":2891},"Ernst van Nierop",{"headshot":7,"ctfId":2892},"ernstvn",{"template":736},"content:en-us:blog:authors:ernst-van-nierop.yml","Ernst Van Nierop","en-us/blog/authors/ernst-van-nierop.yml","en-us/blog/authors/ernst-van-nierop",{"_path":2899,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2900,"config":2904,"_id":2905,"_type":31,"title":2901,"_source":33,"_file":2906,"_stem":2907,"_extension":36},"/en-us/blog/authors/esther-shein",{"name":2901,"config":2902},"Esther Shein",{"headshot":767,"ctfId":2903},"Esther-Shein",{"template":736},"content:en-us:blog:authors:esther-shein.yml","en-us/blog/authors/esther-shein.yml","en-us/blog/authors/esther-shein",{"_path":2909,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2910,"config":2915,"_id":2916,"_type":31,"title":2911,"_source":33,"_file":2917,"_stem":2918,"_extension":36},"/en-us/blog/authors/ethan-strike",{"name":2911,"config":2912},"Ethan Strike",{"headshot":2913,"ctfId":2914},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679067/Blog/Author%20Headshots/estrike-headshot.png","estrike",{"template":736},"content:en-us:blog:authors:ethan-strike.yml","en-us/blog/authors/ethan-strike.yml","en-us/blog/authors/ethan-strike",{"_path":2920,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2921,"config":2925,"_id":2926,"_type":31,"title":2922,"_source":33,"_file":2927,"_stem":2928,"_extension":36},"/en-us/blog/authors/ethan-urie",{"name":2922,"config":2923},"Ethan Urie",{"headshot":767,"ctfId":2924},"mJhtQw4TY9ZRNF7dfitIF",{"template":736},"content:en-us:blog:authors:ethan-urie.yml","en-us/blog/authors/ethan-urie.yml","en-us/blog/authors/ethan-urie",{"_path":2930,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2931,"config":2935,"_id":2936,"_type":31,"title":2932,"_source":33,"_file":2937,"_stem":2938,"_extension":36},"/en-us/blog/authors/eugene-lim",{"name":2932,"config":2933},"Eugene Lim",{"headshot":767,"ctfId":2934},"6KHdIdghkUfSTzV2MzxNcj",{"template":736},"content:en-us:blog:authors:eugene-lim.yml","en-us/blog/authors/eugene-lim.yml","en-us/blog/authors/eugene-lim",{"_path":2940,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2941,"config":2945,"_id":2946,"_type":31,"title":2942,"_source":33,"_file":2947,"_stem":2948,"_extension":36},"/en-us/blog/authors/eugenia-hannon",{"name":2942,"config":2943},"Eugenia Hannon",{"headshot":7,"ctfId":2944},"eugeniah",{"template":736},"content:en-us:blog:authors:eugenia-hannon.yml","en-us/blog/authors/eugenia-hannon.yml","en-us/blog/authors/eugenia-hannon",{"_path":2950,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2951,"config":2955,"_id":2956,"_type":31,"title":2952,"_source":33,"_file":2957,"_stem":2958,"_extension":36},"/en-us/blog/authors/ev-kontsevoy",{"name":2952,"config":2953},"Ev Kontsevoy",{"headshot":7,"ctfId":2954},"ekontsevoy",{"template":736},"content:en-us:blog:authors:ev-kontsevoy.yml","en-us/blog/authors/ev-kontsevoy.yml","en-us/blog/authors/ev-kontsevoy",{"_path":2960,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2961,"config":2965,"_id":2966,"_type":31,"title":2962,"_source":33,"_file":2967,"_stem":2968,"_extension":36},"/en-us/blog/authors/eva-sasson",{"name":2962,"config":2963},"Eva Sasson",{"headshot":767,"ctfId":2964},"Eva-Sasson",{"template":736},"content:en-us:blog:authors:eva-sasson.yml","en-us/blog/authors/eva-sasson.yml","en-us/blog/authors/eva-sasson",{"_path":2970,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2971,"config":2976,"_id":2977,"_type":31,"title":2972,"_source":33,"_file":2978,"_stem":2979,"_extension":36},"/en-us/blog/authors/fabian-zimmer",{"name":2972,"config":2973},"Fabian Zimmer",{"headshot":2974,"ctfId":2975},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750713473/q6awwqbxtg0a4x9gtmhs.png","3TK88UogcX5lx83kWMVuvI",{"template":736},"content:en-us:blog:authors:fabian-zimmer.yml","en-us/blog/authors/fabian-zimmer.yml","en-us/blog/authors/fabian-zimmer",{"_path":2981,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2982,"config":2986,"_id":2987,"_type":31,"title":2983,"_source":33,"_file":2988,"_stem":2989,"_extension":36},"/en-us/blog/authors/fabio-akita",{"name":2983,"config":2984},"Fabio Akita",{"headshot":767,"ctfId":2985},"Fabio-Akita",{"template":736},"content:en-us:blog:authors:fabio-akita.yml","en-us/blog/authors/fabio-akita.yml","en-us/blog/authors/fabio-akita",{"_path":2991,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":2992,"config":2996,"_id":2997,"_type":31,"title":2993,"_source":33,"_file":2998,"_stem":2999,"_extension":36},"/en-us/blog/authors/fabio-busatto",{"name":2993,"config":2994},"Fabio Busatto",{"headshot":7,"ctfId":2995},"bikebilly",{"template":736},"content:en-us:blog:authors:fabio-busatto.yml","en-us/blog/authors/fabio-busatto.yml","en-us/blog/authors/fabio-busatto",{"_path":3001,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3002,"config":3007,"_id":3008,"_type":31,"title":3003,"_source":33,"_file":3009,"_stem":3010,"_extension":36},"/en-us/blog/authors/fabio-pitino",{"name":3003,"config":3004},"Fabio Pitino",{"headshot":3005,"ctfId":3006},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659958/Blog/Author%20Headshots/fabiopitino-headshot.jpg","fabiopitino",{"template":736},"content:en-us:blog:authors:fabio-pitino.yml","en-us/blog/authors/fabio-pitino.yml","en-us/blog/authors/fabio-pitino",{"_path":3012,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3013,"config":3017,"_id":3018,"_type":31,"title":3014,"_source":33,"_file":3019,"_stem":3020,"_extension":36},"/en-us/blog/authors/farnoosh-seifoddini",{"name":3014,"config":3015},"Farnoosh Seifoddini",{"headshot":7,"ctfId":3016},"fseifoddini",{"template":736},"content:en-us:blog:authors:farnoosh-seifoddini.yml","en-us/blog/authors/farnoosh-seifoddini.yml","en-us/blog/authors/farnoosh-seifoddini",{"_path":3022,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3023,"config":3027,"_id":3028,"_type":31,"title":3024,"_source":33,"_file":3029,"_stem":3030,"_extension":36},"/en-us/blog/authors/fatih-acet",{"name":3024,"config":3025},"Fatih Acet",{"headshot":7,"ctfId":3026},"fatihacet",{"template":736},"content:en-us:blog:authors:fatih-acet.yml","en-us/blog/authors/fatih-acet.yml","en-us/blog/authors/fatih-acet",{"_path":3032,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3033,"config":3038,"_id":3039,"_type":31,"title":3034,"_source":33,"_file":3040,"_stem":3041,"_extension":36},"/en-us/blog/authors/fatima-sarah-khalid",{"name":3034,"config":3035},"Fatima Sarah Khalid",{"headshot":3036,"ctfId":3037},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663337/Blog/Author%20Headshots/sugaroverflow-headshot.jpg","sugaroverflow",{"template":736},"content:en-us:blog:authors:fatima-sarah-khalid.yml","en-us/blog/authors/fatima-sarah-khalid.yml","en-us/blog/authors/fatima-sarah-khalid",{"_path":3043,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3044,"config":3049,"_id":3050,"_type":31,"title":3045,"_source":33,"_file":3051,"_stem":3052,"_extension":36},"/en-us/blog/authors/fernando-diaz",{"name":3045,"config":3046},"Fernando Diaz",{"headshot":3047,"ctfId":3048},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659556/Blog/Author%20Headshots/fern_diaz.png","fjdiaz",{"template":736},"content:en-us:blog:authors:fernando-diaz.yml","en-us/blog/authors/fernando-diaz.yml","en-us/blog/authors/fernando-diaz",{"_path":3054,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3055,"config":3059,"_id":3060,"_type":31,"title":3056,"_source":33,"_file":3061,"_stem":3062,"_extension":36},"/en-us/blog/authors/filipa-lacerda",{"name":3056,"config":3057},"Filipa Lacerda",{"headshot":7,"ctfId":3058},"filipa",{"template":736},"content:en-us:blog:authors:filipa-lacerda.yml","en-us/blog/authors/filipa-lacerda.yml","en-us/blog/authors/filipa-lacerda",{"_path":3064,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3065,"config":3070,"_id":3071,"_type":31,"title":3072,"_source":33,"_file":3073,"_stem":3074,"_extension":36},"/en-us/blog/authors/flix-veillette-potvin",{"name":3066,"config":3067}," Félix Veillette-Potvin",{"headshot":3068,"ctfId":3069},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662606/Blog/Author%20Headshots/_F%C3%A9lix_Veillette-Potvin_headshot.png","3nkwcdE5K3Uw9nrovEngxW",{"template":736},"content:en-us:blog:authors:flix-veillette-potvin.yml","Flix Veillette Potvin","en-us/blog/authors/flix-veillette-potvin.yml","en-us/blog/authors/flix-veillette-potvin",{"_path":3076,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3077,"config":3081,"_id":3082,"_type":31,"title":3078,"_source":33,"_file":3083,"_stem":3084,"_extension":36},"/en-us/blog/authors/forrest-brazeal",{"name":3078,"config":3079},"Forrest Brazeal",{"headshot":7,"ctfId":3080},"fbrazeal",{"template":736},"content:en-us:blog:authors:forrest-brazeal.yml","en-us/blog/authors/forrest-brazeal.yml","en-us/blog/authors/forrest-brazeal",{"_path":3086,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3087,"config":3091,"_id":3092,"_type":31,"title":3088,"_source":33,"_file":3093,"_stem":3094,"_extension":36},"/en-us/blog/authors/francis-ofungwu",{"name":3088,"config":3089},"Francis Ofungwu",{"headshot":767,"ctfId":3090},"fofungwu",{"template":736},"content:en-us:blog:authors:francis-ofungwu.yml","en-us/blog/authors/francis-ofungwu.yml","en-us/blog/authors/francis-ofungwu",{"_path":3096,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3097,"config":3102,"_id":3103,"_type":31,"title":3104,"_source":33,"_file":3105,"_stem":3106,"_extension":36},"/en-us/blog/authors/frdric-caplette",{"name":3098,"config":3099},"Frédéric Caplette",{"headshot":3100,"ctfId":3101},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749661878/Blog/Author%20Headshots/frederic_caplette_headshot.png","6nMRwNMwciKSX03zmbBbPF",{"template":736},"content:en-us:blog:authors:frdric-caplette.yml","Frdric Caplette","en-us/blog/authors/frdric-caplette.yml","en-us/blog/authors/frdric-caplette",{"_path":3108,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3109,"config":3114,"_id":3115,"_type":31,"title":3110,"_source":33,"_file":3116,"_stem":3117,"_extension":36},"/en-us/blog/authors/gabe-weaver",{"name":3110,"config":3111},"Gabe Weaver",{"headshot":3112,"ctfId":3113},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667605/Blog/Author%20Headshots/gweaver-headshot.jpg","gweaver",{"template":736},"content:en-us:blog:authors:gabe-weaver.yml","en-us/blog/authors/gabe-weaver.yml","en-us/blog/authors/gabe-weaver",{"_path":3119,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3120,"config":3125,"_id":3126,"_type":31,"title":3121,"_source":33,"_file":3127,"_stem":3128,"_extension":36},"/en-us/blog/authors/gabriel-engel",{"name":3121,"config":3122},"Gabriel Engel",{"headshot":3123,"ctfId":3124},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664747/Blog/Author%20Headshots/gabrielengel_gl-headshot.jpg","gabrielengelgl",{"template":736},"content:en-us:blog:authors:gabriel-engel.yml","en-us/blog/authors/gabriel-engel.yml","en-us/blog/authors/gabriel-engel",{"_path":3130,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3131,"config":3135,"_id":3136,"_type":31,"title":3132,"_source":33,"_file":3137,"_stem":3138,"_extension":36},"/en-us/blog/authors/gabriel-le-breton",{"name":3132,"config":3133},"Gabriel Le Breton",{"headshot":767,"ctfId":3134},"Gabriel-Le-Breton",{"template":736},"content:en-us:blog:authors:gabriel-le-breton.yml","en-us/blog/authors/gabriel-le-breton.yml","en-us/blog/authors/gabriel-le-breton",{"_path":3140,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3141,"config":3146,"_id":3147,"_type":31,"title":3142,"_source":33,"_file":3148,"_stem":3149,"_extension":36},"/en-us/blog/authors/gabriel-mazetto",{"name":3142,"config":3143},"Gabriel Mazetto",{"headshot":3144,"ctfId":3145},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678982/Blog/Author%20Headshots/brodock-headshot.jpg","brodock",{"template":736},"content:en-us:blog:authors:gabriel-mazetto.yml","en-us/blog/authors/gabriel-mazetto.yml","en-us/blog/authors/gabriel-mazetto",{"_path":3151,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3152,"config":3157,"_id":3158,"_type":31,"title":3153,"_source":33,"_file":3159,"_stem":3160,"_extension":36},"/en-us/blog/authors/gavin-peltz",{"name":3153,"config":3154},"Gavin Peltz",{"headshot":3155,"ctfId":3156},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662831/Blog/Author%20Headshots/gavin_peltz.png","27UwgXDMqa0oBWV93rXTgN",{"template":736},"content:en-us:blog:authors:gavin-peltz.yml","en-us/blog/authors/gavin-peltz.yml","en-us/blog/authors/gavin-peltz",{"_path":3162,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3163,"config":3168,"_id":3169,"_type":31,"title":3164,"_source":33,"_file":3170,"_stem":3171,"_extension":36},"/en-us/blog/authors/george-kichukov",{"name":3164,"config":3165},"George Kichukov",{"headshot":3166,"ctfId":3167},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664866/Blog/Author%20Headshots/george_kichukov.png","7e8bn05u4pXwYjkRrqdprE",{"template":736},"content:en-us:blog:authors:george-kichukov.yml","en-us/blog/authors/george-kichukov.yml","en-us/blog/authors/george-kichukov",{"_path":3173,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3174,"config":3178,"_id":3179,"_type":31,"title":3175,"_source":33,"_file":3180,"_stem":3181,"_extension":36},"/en-us/blog/authors/gerard-hickey",{"name":3175,"config":3176},"Gerard Hickey",{"headshot":7,"ctfId":3177},"ghickey",{"template":736},"content:en-us:blog:authors:gerard-hickey.yml","en-us/blog/authors/gerard-hickey.yml","en-us/blog/authors/gerard-hickey",{"_path":3183,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3184,"config":3189,"_id":3190,"_type":31,"title":3191,"_source":33,"_file":3192,"_stem":3193,"_extension":36},"/en-us/blog/authors/gerardo-lopez-fernandez",{"name":3185,"config":3186},"Gerardo Lopez-Fernandez",{"headshot":3187,"ctfId":3188},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679925/Blog/Author%20Headshots/glopezfernandez-headshot.jpg","glopezfernandez",{"template":736},"content:en-us:blog:authors:gerardo-lopez-fernandez.yml","Gerardo Lopez Fernandez","en-us/blog/authors/gerardo-lopez-fernandez.yml","en-us/blog/authors/gerardo-lopez-fernandez",{"_path":3195,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3196,"config":3201,"_id":3202,"_type":31,"title":3197,"_source":33,"_file":3203,"_stem":3204,"_extension":36},"/en-us/blog/authors/gina-doyle",{"name":3197,"config":3198},"Gina Doyle",{"headshot":3199,"ctfId":3200},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679201/Blog/Author%20Headshots/gdoyle-headshot.png","gdoyle",{"template":736},"content:en-us:blog:authors:gina-doyle.yml","en-us/blog/authors/gina-doyle.yml","en-us/blog/authors/gina-doyle",{"_path":3206,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3207,"config":3210,"_id":3211,"_type":31,"title":3212,"_source":33,"_file":3213,"_stem":3214,"_extension":36},"/en-us/blog/authors/gitlab",{"name":3208,"config":3209},"GitLab",{"headshot":767,"ctfId":3208},{"template":736},"content:en-us:blog:authors:gitlab.yml","Gitlab","en-us/blog/authors/gitlab.yml","en-us/blog/authors/gitlab",{"_path":3216,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3217,"config":3221,"_id":3222,"_type":31,"title":3223,"_source":33,"_file":3224,"_stem":3225,"_extension":36},"/en-us/blog/authors/gitlab-ai-assisted-group",{"name":3218,"config":3219},"GitLab AI Assisted Group",{"headshot":767,"ctfId":3220},"GitLab-AI-Assisted-Group",{"template":736},"content:en-us:blog:authors:gitlab-ai-assisted-group.yml","Gitlab Ai Assisted Group","en-us/blog/authors/gitlab-ai-assisted-group.yml","en-us/blog/authors/gitlab-ai-assisted-group",{"_path":3227,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3228,"config":3232,"_id":3233,"_type":31,"title":3234,"_source":33,"_file":3235,"_stem":3236,"_extension":36},"/en-us/blog/authors/gitlab-france-team",{"name":3229,"config":3230},"GitLab France Team",{"headshot":767,"ctfId":3231},"1gfblqN0ibYIuWGk7MOTny",{"template":736},"content:en-us:blog:authors:gitlab-france-team.yml","Gitlab France Team","en-us/blog/authors/gitlab-france-team.yml","en-us/blog/authors/gitlab-france-team",{"_path":3238,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3239,"config":3243,"_id":3244,"_type":31,"title":3245,"_source":33,"_file":3246,"_stem":3247,"_extension":36},"/en-us/blog/authors/gitlab-germany-team",{"name":3240,"config":3241},"GitLab Germany Team",{"headshot":767,"ctfId":3242},"6tNquF8jQeRRRi8k3ZXpvS",{"template":736},"content:en-us:blog:authors:gitlab-germany-team.yml","Gitlab Germany Team","en-us/blog/authors/gitlab-germany-team.yml","en-us/blog/authors/gitlab-germany-team",{"_path":3249,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3250,"config":3254,"_id":3255,"_type":31,"title":3256,"_source":33,"_file":3257,"_stem":3258,"_extension":36},"/en-us/blog/authors/gitlab-japan-team",{"name":3251,"config":3252},"GitLab Japan Team",{"headshot":767,"ctfId":3253},"5YWHF8vG80rluQ41QjgP7V",{"template":736},"content:en-us:blog:authors:gitlab-japan-team.yml","Gitlab Japan Team","en-us/blog/authors/gitlab-japan-team.yml","en-us/blog/authors/gitlab-japan-team",{"_path":3260,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3261,"config":3265,"_id":3266,"_type":31,"title":3267,"_source":33,"_file":3268,"_stem":3269,"_extension":36},"/en-us/blog/authors/gitlab-security-team",{"name":3262,"config":3263},"GitLab Security Team",{"headshot":767,"ctfId":3264},"GitLab-Security-Team",{"template":736},"content:en-us:blog:authors:gitlab-security-team.yml","Gitlab Security Team","en-us/blog/authors/gitlab-security-team.yml","en-us/blog/authors/gitlab-security-team",{"_path":3271,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3272,"config":3276,"_id":3277,"_type":31,"title":3278,"_source":33,"_file":3279,"_stem":3280,"_extension":36},"/en-us/blog/authors/gitlab-team",{"name":3273,"config":3274},"GitLab Team",{"headshot":767,"ctfId":3275},"GitLab-Team",{"template":736},"content:en-us:blog:authors:gitlab-team.yml","Gitlab Team","en-us/blog/authors/gitlab-team.yml","en-us/blog/authors/gitlab-team",{"_path":3282,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3283,"config":3287,"_id":3288,"_type":31,"title":3289,"_source":33,"_file":3290,"_stem":3291,"_extension":36},"/en-us/blog/authors/gitlab-vulnerability-research-team",{"name":3284,"config":3285},"GitLab Vulnerability Research Team",{"headshot":767,"ctfId":3286},"GitLab-Vulnerability-Research-Team",{"template":736},"content:en-us:blog:authors:gitlab-vulnerability-research-team.yml","Gitlab Vulnerability Research Team","en-us/blog/authors/gitlab-vulnerability-research-team.yml","en-us/blog/authors/gitlab-vulnerability-research-team",{"_path":3293,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3294,"config":3298,"_id":3299,"_type":31,"title":3295,"_source":33,"_file":3300,"_stem":3301,"_extension":36},"/en-us/blog/authors/goetz-buerkle",{"name":3295,"config":3296},"Goetz Buerkle",{"headshot":767,"ctfId":3297},"Goetz-Buerkle",{"template":736},"content:en-us:blog:authors:goetz-buerkle.yml","en-us/blog/authors/goetz-buerkle.yml","en-us/blog/authors/goetz-buerkle",{"_path":3303,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3304,"config":3309,"_id":3310,"_type":31,"title":3305,"_source":33,"_file":3311,"_stem":3312,"_extension":36},"/en-us/blog/authors/gosia-ksionek",{"name":3305,"config":3306},"Gosia Ksionek",{"headshot":3307,"ctfId":3308},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680521/Blog/Author%20Headshots/mksionek-headshot.jpg","mksionek",{"template":736},"content:en-us:blog:authors:gosia-ksionek.yml","en-us/blog/authors/gosia-ksionek.yml","en-us/blog/authors/gosia-ksionek",{"_path":3314,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3315,"config":3320,"_id":3321,"_type":31,"title":3316,"_source":33,"_file":3322,"_stem":3323,"_extension":36},"/en-us/blog/authors/grant-hickman",{"name":3316,"config":3317},"Grant Hickman",{"headshot":3318,"ctfId":3319},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682570/Blog/Author%20Headshots/g.png","ghickman",{"template":736},"content:en-us:blog:authors:grant-hickman.yml","en-us/blog/authors/grant-hickman.yml","en-us/blog/authors/grant-hickman",{"_path":3325,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3326,"config":3331,"_id":3332,"_type":31,"title":3327,"_source":33,"_file":3333,"_stem":3334,"_extension":36},"/en-us/blog/authors/grant-young",{"name":3327,"config":3328},"Grant Young",{"headshot":3329,"ctfId":3330},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666346/Blog/Author%20Headshots/grantyoung-headshot.jpg","grantyoung",{"template":736},"content:en-us:blog:authors:grant-young.yml","en-us/blog/authors/grant-young.yml","en-us/blog/authors/grant-young",{"_path":3336,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3337,"config":3341,"_id":3342,"_type":31,"title":3338,"_source":33,"_file":3343,"_stem":3344,"_extension":36},"/en-us/blog/authors/greg-alfaro",{"name":3338,"config":3339},"Greg Alfaro",{"headshot":7,"ctfId":3340},"7zzMrU9Fbdw0QGxdFjJ1jE",{"template":736},"content:en-us:blog:authors:greg-alfaro.yml","en-us/blog/authors/greg-alfaro.yml","en-us/blog/authors/greg-alfaro",{"_path":3346,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3347,"config":3351,"_id":3352,"_type":31,"title":3348,"_source":33,"_file":3353,"_stem":3354,"_extension":36},"/en-us/blog/authors/greg-johnson",{"name":3348,"config":3349},"Greg Johnson",{"headshot":7,"ctfId":3350},"codeEmitter",{"template":736},"content:en-us:blog:authors:greg-johnson.yml","en-us/blog/authors/greg-johnson.yml","en-us/blog/authors/greg-johnson",{"_path":3356,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3357,"config":3362,"_id":3363,"_type":31,"title":3358,"_source":33,"_file":3364,"_stem":3365,"_extension":36},"/en-us/blog/authors/greg-myers",{"name":3358,"config":3359},"Greg Myers",{"headshot":3360,"ctfId":3361},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665570/Blog/Author%20Headshots/greg_myers_headshot.png","2uUYKgdtszyGfoOHbakiQX",{"template":736},"content:en-us:blog:authors:greg-myers.yml","en-us/blog/authors/greg-myers.yml","en-us/blog/authors/greg-myers",{"_path":3367,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3368,"config":3372,"_id":3373,"_type":31,"title":3369,"_source":33,"_file":3374,"_stem":3375,"_extension":36},"/en-us/blog/authors/grzegorz-bizon",{"name":3369,"config":3370},"Grzegorz Bizon",{"headshot":767,"ctfId":3371},"Grzegorz-Bizon",{"template":736},"content:en-us:blog:authors:grzegorz-bizon.yml","en-us/blog/authors/grzegorz-bizon.yml","en-us/blog/authors/grzegorz-bizon",{"_path":3377,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3378,"config":3382,"_id":3383,"_type":31,"title":3379,"_source":33,"_file":3384,"_stem":3385,"_extension":36},"/en-us/blog/authors/guenjun-yoo",{"name":3379,"config":3380},"Guenjun Yoo",{"headshot":7,"ctfId":3381},"gyoo",{"template":736},"content:en-us:blog:authors:guenjun-yoo.yml","en-us/blog/authors/guenjun-yoo.yml","en-us/blog/authors/guenjun-yoo",{"_path":3387,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3388,"config":3392,"_id":3393,"_type":31,"title":3394,"_source":33,"_file":3395,"_stem":3396,"_extension":36},"/en-us/blog/authors/guest-author-andr-arko-of-ruby-together",{"name":3389,"config":3390},"Guest author André Arko of Ruby Together",{"headshot":767,"ctfId":3391},"Guest-author-Andr-Arko-of-Ruby-Together",{"template":736},"content:en-us:blog:authors:guest-author-andr-arko-of-ruby-together.yml","Guest Author Andr Arko Of Ruby Together","en-us/blog/authors/guest-author-andr-arko-of-ruby-together.yml","en-us/blog/authors/guest-author-andr-arko-of-ruby-together",{"_path":3398,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3399,"config":3403,"_id":3404,"_type":31,"title":3405,"_source":33,"_file":3406,"_stem":3407,"_extension":36},"/en-us/blog/authors/guest-author-andr-miranda",{"name":3400,"config":3401},"Guest author André Miranda",{"headshot":767,"ctfId":3402},"Guest-author-Andr-Miranda",{"template":736},"content:en-us:blog:authors:guest-author-andr-miranda.yml","Guest Author Andr Miranda","en-us/blog/authors/guest-author-andr-miranda.yml","en-us/blog/authors/guest-author-andr-miranda",{"_path":3409,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3410,"config":3416,"_id":3417,"_type":31,"title":3418,"_source":33,"_file":3419,"_stem":3420,"_extension":36},"/en-us/blog/authors/gufran-yeilyurt-obss",{"name":3411,"config":3412},"Gufran Yeşilyurt, OBSS",{"headshot":3413,"linkedin":3414,"ctfId":3415},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666380/Blog/Author%20Headshots/1643972670650.jpg","https://www.linkedin.com/in/gufran-yesilyurt/","2ydYMU86my71BUASual2EI",{"template":736},"content:en-us:blog:authors:gufran-yeilyurt-obss.yml","Gufran Yeilyurt Obss","en-us/blog/authors/gufran-yeilyurt-obss.yml","en-us/blog/authors/gufran-yeilyurt-obss",{"_path":3422,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3423,"config":3427,"_id":3428,"_type":31,"title":3429,"_source":33,"_file":3430,"_stem":3431,"_extension":36},"/en-us/blog/authors/gustaw-fit-of-zoopla",{"name":3424,"config":3425},"Gustaw Fit of Zoopla",{"headshot":767,"ctfId":3426},"Gustaw-Fit-of-Zoopla",{"template":736},"content:en-us:blog:authors:gustaw-fit-of-zoopla.yml","Gustaw Fit Of Zoopla","en-us/blog/authors/gustaw-fit-of-zoopla.yml","en-us/blog/authors/gustaw-fit-of-zoopla",{"_path":3433,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3434,"config":3438,"_id":3439,"_type":31,"title":3440,"_source":33,"_file":3441,"_stem":3442,"_extension":36},"/en-us/blog/authors/guy-bar-gil-product-manager-at-whitesource",{"name":3435,"config":3436},"Guy Bar-Gil, Product Manager at WhiteSource",{"headshot":767,"ctfId":3437},"Guy-BarGil-Product-Manager-at-WhiteSource",{"template":736},"content:en-us:blog:authors:guy-bar-gil-product-manager-at-whitesource.yml","Guy Bar Gil Product Manager At Whitesource","en-us/blog/authors/guy-bar-gil-product-manager-at-whitesource.yml","en-us/blog/authors/guy-bar-gil-product-manager-at-whitesource",{"_path":3444,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3445,"config":3449,"_id":3450,"_type":31,"title":3446,"_source":33,"_file":3451,"_stem":3452,"_extension":36},"/en-us/blog/authors/gyan-chawdhary",{"name":3446,"config":3447},"Gyan Chawdhary",{"headshot":767,"ctfId":3448},"Gyan-Chawdhary",{"template":736},"content:en-us:blog:authors:gyan-chawdhary.yml","en-us/blog/authors/gyan-chawdhary.yml","en-us/blog/authors/gyan-chawdhary",{"_path":3454,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3455,"config":3460,"_id":3461,"_type":31,"title":3456,"_source":33,"_file":3462,"_stem":3463,"_extension":36},"/en-us/blog/authors/haim-snir",{"name":3456,"config":3457},"Haim Snir",{"headshot":3458,"ctfId":3459},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664386/Blog/Author%20Headshots/hsnir1-headshot.jpg","hsnir1",{"template":736},"content:en-us:blog:authors:haim-snir.yml","en-us/blog/authors/haim-snir.yml","en-us/blog/authors/haim-snir",{"_path":3465,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3466,"config":3471,"_id":3472,"_type":31,"title":3473,"_source":33,"_file":3474,"_stem":3475,"_extension":36},"/en-us/blog/authors/hakeem-abdul-razak",{"name":3467,"config":3468},"Hakeem Abdul-Razak",{"headshot":3469,"ctfId":3470},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662077/Blog/Author%20Headshots/Hakeem_Abdul-Razak_headshot.png","7H6nuZfVCK5mqJBK4fuaDH",{"template":736},"content:en-us:blog:authors:hakeem-abdul-razak.yml","Hakeem Abdul Razak","en-us/blog/authors/hakeem-abdul-razak.yml","en-us/blog/authors/hakeem-abdul-razak",{"_path":3477,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3478,"config":3482,"_id":3484,"_type":31,"title":3479,"_source":33,"_file":3485,"_stem":3486,"_extension":36},"/en-us/blog/authors/halil-coban",{"name":3479,"config":3480},"Halil Coban",{"headshot":3481},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1751039592/hlxd6cnlgdioobqfvwus.png",{"template":736,"gitlabHandle":3483},"halilcoban","content:en-us:blog:authors:halil-coban.yml","en-us/blog/authors/halil-coban.yml","en-us/blog/authors/halil-coban",{"_path":3488,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3489,"config":3494,"_id":3495,"_type":31,"title":3490,"_source":33,"_file":3496,"_stem":3497,"_extension":36},"/en-us/blog/authors/hannah-sutor",{"name":3490,"config":3491},"Hannah Sutor",{"headshot":3492,"ctfId":3493},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665588/Blog/Author%20Headshots/hsutor-headshot.png","hsutor",{"template":736},"content:en-us:blog:authors:hannah-sutor.yml","en-us/blog/authors/hannah-sutor.yml","en-us/blog/authors/hannah-sutor",{"_path":3499,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3500,"config":3505,"_id":3506,"_type":31,"title":3501,"_source":33,"_file":3507,"_stem":3508,"_extension":36},"/en-us/blog/authors/harjeet-sharma",{"name":3501,"config":3502},"Harjeet Sharma",{"headshot":3503,"ctfId":3504},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665497/Blog/Author%20Headshots/harjeet_sharma_headshot.png","723O6GGQQEu75MCuhw6lqh",{"template":736},"content:en-us:blog:authors:harjeet-sharma.yml","en-us/blog/authors/harjeet-sharma.yml","en-us/blog/authors/harjeet-sharma",{"_path":3510,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3511,"config":3515,"_id":3516,"_type":31,"title":3512,"_source":33,"_file":3517,"_stem":3518,"_extension":36},"/en-us/blog/authors/haydn-mackay",{"name":3512,"config":3513},"Haydn Mackay",{"headshot":767,"ctfId":3514},"Haydn-Mackay",{"template":736},"content:en-us:blog:authors:haydn-mackay.yml","en-us/blog/authors/haydn-mackay.yml","en-us/blog/authors/haydn-mackay",{"_path":3520,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3521,"config":3525,"_id":3526,"_type":31,"title":3522,"_source":33,"_file":3527,"_stem":3528,"_extension":36},"/en-us/blog/authors/hazel-yang",{"name":3522,"config":3523},"Hazel Yang",{"headshot":7,"ctfId":3524},"hazelyang",{"template":736},"content:en-us:blog:authors:hazel-yang.yml","en-us/blog/authors/hazel-yang.yml","en-us/blog/authors/hazel-yang",{"_path":3530,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3531,"config":3535,"_id":3536,"_type":31,"title":3537,"_source":33,"_file":3538,"_stem":3539,"_extension":36},"/en-us/blog/authors/heather-mcnamee",{"name":3532,"config":3533},"Heather McNamee",{"headshot":767,"ctfId":3534},"Heather-McNamee",{"template":736},"content:en-us:blog:authors:heather-mcnamee.yml","Heather Mcnamee","en-us/blog/authors/heather-mcnamee.yml","en-us/blog/authors/heather-mcnamee",{"_path":3541,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3542,"config":3546,"_id":3547,"_type":31,"title":3543,"_source":33,"_file":3548,"_stem":3549,"_extension":36},"/en-us/blog/authors/heather-simpson",{"name":3543,"config":3544},"Heather Simpson",{"headshot":767,"ctfId":3545},"hsimpson",{"template":736},"content:en-us:blog:authors:heather-simpson.yml","en-us/blog/authors/heather-simpson.yml","en-us/blog/authors/heather-simpson",{"_path":3551,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3552,"config":3557,"_id":3558,"_type":31,"title":3553,"_source":33,"_file":3559,"_stem":3560,"_extension":36},"/en-us/blog/authors/hillary-benson",{"name":3553,"config":3554},"Hillary Benson",{"headshot":3555,"ctfId":3556},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683387/Blog/Author%20Headshots/hillarybensonheadshot.png","45VEFoISCoOhRXzyPyAf1x",{"template":736},"content:en-us:blog:authors:hillary-benson.yml","en-us/blog/authors/hillary-benson.yml","en-us/blog/authors/hillary-benson",{"_path":3562,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3563,"config":3567,"_id":3569,"_type":31,"title":3564,"_source":33,"_file":3570,"_stem":3571,"_extension":36},"/en-us/blog/authors/himanshu-kapoor",{"name":3564,"config":3565},"Himanshu Kapoor",{"headshot":3566},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1754585086/hfuoktkehmq0jyfybrnt.png",{"template":736,"gitlabHandle":3568},"himkp","content:en-us:blog:authors:himanshu-kapoor.yml","en-us/blog/authors/himanshu-kapoor.yml","en-us/blog/authors/himanshu-kapoor",{"_path":3573,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3574,"config":3579,"_id":3580,"_type":31,"title":3575,"_source":33,"_file":3581,"_stem":3582,"_extension":36},"/en-us/blog/authors/hiroki-suezawa",{"name":3575,"config":3576},"Hiroki Suezawa",{"headshot":3577,"ctfId":3578},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662370/Blog/Author%20Headshots/hiroki_suezawa.png","cw6ZIj0yjr1uw2LAFr23h",{"template":736},"content:en-us:blog:authors:hiroki-suezawa.yml","en-us/blog/authors/hiroki-suezawa.yml","en-us/blog/authors/hiroki-suezawa",{"_path":3584,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3585,"config":3589,"_id":3590,"_type":31,"title":3586,"_source":33,"_file":3591,"_stem":3592,"_extension":36},"/en-us/blog/authors/holly-reynolds",{"name":3586,"config":3587},"Holly Reynolds",{"headshot":7,"ctfId":3588},"hollyreynolds",{"template":736},"content:en-us:blog:authors:holly-reynolds.yml","en-us/blog/authors/holly-reynolds.yml","en-us/blog/authors/holly-reynolds",{"_path":3594,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3595,"config":3599,"_id":3600,"_type":31,"title":3596,"_source":33,"_file":3601,"_stem":3602,"_extension":36},"/en-us/blog/authors/huldra",{"name":3596,"config":3597},"Huldra",{"headshot":7,"ctfId":3598},"huldra",{"template":736},"content:en-us:blog:authors:huldra.yml","en-us/blog/authors/huldra.yml","en-us/blog/authors/huldra",{"_path":3604,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3605,"config":3609,"_id":3610,"_type":31,"title":3606,"_source":33,"_file":3611,"_stem":3612,"_extension":36},"/en-us/blog/authors/iain-camacho",{"name":3606,"config":3607},"Iain Camacho",{"headshot":7,"ctfId":3608},"icamacho",{"template":736},"content:en-us:blog:authors:iain-camacho.yml","en-us/blog/authors/iain-camacho.yml","en-us/blog/authors/iain-camacho",{"_path":3614,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3615,"config":3619,"_id":3620,"_type":31,"title":3616,"_source":33,"_file":3621,"_stem":3622,"_extension":36},"/en-us/blog/authors/ian-bartholomew",{"name":3616,"config":3617},"Ian Bartholomew",{"headshot":767,"ctfId":3618},"7D4PE43CXfi8pgOSCmipH0",{"template":736},"content:en-us:blog:authors:ian-bartholomew.yml","en-us/blog/authors/ian-bartholomew.yml","en-us/blog/authors/ian-bartholomew",{"_path":3624,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3625,"config":3630,"_id":3631,"_type":31,"title":3626,"_source":33,"_file":3632,"_stem":3633,"_extension":36},"/en-us/blog/authors/ian-khor",{"name":3626,"config":3627},"Ian Khor",{"headshot":3628,"ctfId":3629},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662933/Blog/Author%20Headshots/ian_khor_headshot.png","nSk8fzDwtG3LVFWwg8HrF",{"template":736},"content:en-us:blog:authors:ian-khor.yml","en-us/blog/authors/ian-khor.yml","en-us/blog/authors/ian-khor",{"_path":3635,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3636,"config":3641,"_id":3642,"_type":31,"title":3637,"_source":33,"_file":3643,"_stem":3644,"_extension":36},"/en-us/blog/authors/ian-pedowitz",{"name":3637,"config":3638},"Ian Pedowitz",{"headshot":3639,"ctfId":3640},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683040/Blog/Author%20Headshots/ipedowitz-headshot.jpg","ipedowitz",{"template":736},"content:en-us:blog:authors:ian-pedowitz.yml","en-us/blog/authors/ian-pedowitz.yml","en-us/blog/authors/ian-pedowitz",{"_path":3646,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3647,"config":3652,"_id":3653,"_type":31,"title":3648,"_source":33,"_file":3654,"_stem":3655,"_extension":36},"/en-us/blog/authors/igor-drozdov",{"name":3648,"config":3649},"Igor Drozdov",{"headshot":3650,"ctfId":3651},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672455/Blog/Author%20Headshots/igor.png","igordrozdov",{"template":736},"content:en-us:blog:authors:igor-drozdov.yml","en-us/blog/authors/igor-drozdov.yml","en-us/blog/authors/igor-drozdov",{"_path":3657,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3658,"config":3663,"_id":3664,"_type":31,"title":3659,"_source":33,"_file":3665,"_stem":3666,"_extension":36},"/en-us/blog/authors/igor-wiedler",{"name":3659,"config":3660},"Igor Wiedler",{"headshot":3661,"ctfId":3662},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681841/Blog/Author%20Headshots/igorwwwwwwwwwwwwwwwwwwww-headshot.png","igorwwwwwwwwwwwwwwwwwwww",{"template":736},"content:en-us:blog:authors:igor-wiedler.yml","en-us/blog/authors/igor-wiedler.yml","en-us/blog/authors/igor-wiedler",{"_path":3668,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3669,"config":3674,"_id":3675,"_type":31,"title":3676,"_source":33,"_file":3677,"_stem":3678,"_extension":36},"/en-us/blog/authors/inchul-yoo-sunjung-park",{"name":3670,"config":3671},"Inchul Yoo, Sunjung Park",{"headshot":3672,"ctfId":3673},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669731/Blog/Author%20Headshots/sunjungp-headshot.png","sunjungp",{"template":736},"content:en-us:blog:authors:inchul-yoo-sunjung-park.yml","Inchul Yoo Sunjung Park","en-us/blog/authors/inchul-yoo-sunjung-park.yml","en-us/blog/authors/inchul-yoo-sunjung-park",{"_path":3680,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3681,"config":3686,"_id":3687,"_type":31,"title":3682,"_source":33,"_file":3688,"_stem":3689,"_extension":36},"/en-us/blog/authors/isaac-dawson",{"name":3682,"config":3683},"Isaac Dawson",{"headshot":3684,"ctfId":3685},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669814/Blog/Author%20Headshots/idawson-headshot.jpg","idawson",{"template":736},"content:en-us:blog:authors:isaac-dawson.yml","en-us/blog/authors/isaac-dawson.yml","en-us/blog/authors/isaac-dawson",{"_path":3691,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3692,"config":3696,"_id":3698,"_type":31,"title":3699,"_source":33,"_file":3700,"_stem":3701,"_extension":36},"/en-us/blog/authors/issei-hamada-sony-biz-networks-corporation",{"config":3693,"name":3695},{"headshot":3694},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1760414048/buvcowublhq36ongtzbx.png","Issei Hamada, Sony Biz Networks Corporation",{"template":736,"gitlabHandle":3697},"https://gitlab.com/issei-hamada","content:en-us:blog:authors:issei-hamada-sony-biz-networks-corporation.yml","Issei Hamada Sony Biz Networks Corporation","en-us/blog/authors/issei-hamada-sony-biz-networks-corporation.yml","en-us/blog/authors/issei-hamada-sony-biz-networks-corporation",{"_path":3703,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3704,"config":3709,"_id":3710,"_type":31,"title":3705,"_source":33,"_file":3711,"_stem":3712,"_extension":36},"/en-us/blog/authors/itzik-gan-baruch",{"name":3705,"config":3706},"Itzik Gan Baruch",{"headshot":3707,"ctfId":3708},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749658921/Blog/Author%20Headshots/iganbaruch-headshot.jpg","iganbaruch",{"template":736},"content:en-us:blog:authors:itzik-gan-baruch.yml","en-us/blog/authors/itzik-gan-baruch.yml","en-us/blog/authors/itzik-gan-baruch",{"_path":3714,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3715,"config":3719,"_id":3720,"_type":31,"title":3716,"_source":33,"_file":3721,"_stem":3722,"_extension":36},"/en-us/blog/authors/ivan-lychev",{"name":3716,"config":3717},"Ivan Lychev",{"headshot":7,"ctfId":3718},"iLychevAD",{"template":736},"content:en-us:blog:authors:ivan-lychev.yml","en-us/blog/authors/ivan-lychev.yml","en-us/blog/authors/ivan-lychev",{"_path":3724,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3725,"config":3729,"_id":3730,"_type":31,"title":3726,"_source":33,"_file":3731,"_stem":3732,"_extension":36},"/en-us/blog/authors/ivan-nemytchenko",{"name":3726,"config":3727},"Ivan Nemytchenko",{"headshot":767,"ctfId":3728},"Ivan-Nemytchenko",{"template":736},"content:en-us:blog:authors:ivan-nemytchenko.yml","en-us/blog/authors/ivan-nemytchenko.yml","en-us/blog/authors/ivan-nemytchenko",{"_path":3734,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3735,"config":3741,"_id":3742,"_type":31,"title":3737,"_source":33,"_file":3743,"_stem":3744,"_extension":36},"/en-us/blog/authors/ivanha-paz",{"role":3736,"name":3737,"config":3738},"DevRel Lead at Jam","Ivanha Paz",{"headshot":3739,"ctfId":3740},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670359/Blog/Author%20Headshots/Ivanha_Paz_-_headshot.jpg","7sP877dkX9NIHekQO3HbUH",{"template":736},"content:en-us:blog:authors:ivanha-paz.yml","en-us/blog/authors/ivanha-paz.yml","en-us/blog/authors/ivanha-paz",{"_path":3746,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3747,"config":3751,"_id":3752,"_type":31,"title":3748,"_source":33,"_file":3753,"_stem":3754,"_extension":36},"/en-us/blog/authors/jacie-bandur",{"name":3748,"config":3749},"Jacie Bandur",{"headshot":7,"ctfId":3750},"jbandur",{"template":736},"content:en-us:blog:authors:jacie-bandur.yml","en-us/blog/authors/jacie-bandur.yml","en-us/blog/authors/jacie-bandur",{"_path":3756,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3757,"config":3762,"_id":3763,"_type":31,"title":3758,"_source":33,"_file":3764,"_stem":3765,"_extension":36},"/en-us/blog/authors/jacki-bauer",{"name":3758,"config":3759},"Jacki Bauer",{"headshot":3760,"ctfId":3761},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669728/Blog/Author%20Headshots/jackib-headshot.jpg","7nGz3EarOjQXW2gQuJaF1Z",{"template":736},"content:en-us:blog:authors:jacki-bauer.yml","en-us/blog/authors/jacki-bauer.yml","en-us/blog/authors/jacki-bauer",{"_path":3767,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3768,"config":3772,"_id":3773,"_type":31,"title":3769,"_source":33,"_file":3774,"_stem":3775,"_extension":36},"/en-us/blog/authors/jackie-meshell",{"name":3769,"config":3770},"Jackie Meshell",{"headshot":7,"ctfId":3771},"jmeshell",{"template":736},"content:en-us:blog:authors:jackie-meshell.yml","en-us/blog/authors/jackie-meshell.yml","en-us/blog/authors/jackie-meshell",{"_path":3777,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3778,"config":3783,"_id":3784,"_type":31,"title":3779,"_source":33,"_file":3785,"_stem":3786,"_extension":36},"/en-us/blog/authors/jackie-porter",{"name":3779,"config":3780},"Jackie Porter",{"headshot":3781,"ctfId":3782},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664942/Blog/Author%20Headshots/jreporter-headshot.png","jreporter",{"template":736},"content:en-us:blog:authors:jackie-porter.yml","en-us/blog/authors/jackie-porter.yml","en-us/blog/authors/jackie-porter",{"_path":3788,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3789,"config":3793,"_id":3794,"_type":31,"title":3790,"_source":33,"_file":3795,"_stem":3796,"_extension":36},"/en-us/blog/authors/jacob-schatz",{"name":3790,"config":3791},"Jacob Schatz",{"headshot":7,"ctfId":3792},"jschatz1",{"template":736},"content:en-us:blog:authors:jacob-schatz.yml","en-us/blog/authors/jacob-schatz.yml","en-us/blog/authors/jacob-schatz",{"_path":3798,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3799,"config":3803,"_id":3804,"_type":31,"title":3800,"_source":33,"_file":3805,"_stem":3806,"_extension":36},"/en-us/blog/authors/jacob-vosmaer",{"name":3800,"config":3801},"Jacob Vosmaer",{"headshot":767,"ctfId":3802},"Jacob-Vosmaer",{"template":736},"content:en-us:blog:authors:jacob-vosmaer.yml","en-us/blog/authors/jacob-vosmaer.yml","en-us/blog/authors/jacob-vosmaer",{"_path":3808,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3809,"config":3814,"_id":3815,"_type":31,"title":3810,"_source":33,"_file":3816,"_stem":3817,"_extension":36},"/en-us/blog/authors/jacques-erasmus",{"name":3810,"config":3811},"Jacques Erasmus",{"headshot":3812,"ctfId":3813},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682633/Blog/Author%20Headshots/jerasmus-headshot.png","jerasmus",{"template":736},"content:en-us:blog:authors:jacques-erasmus.yml","en-us/blog/authors/jacques-erasmus.yml","en-us/blog/authors/jacques-erasmus",{"_path":3819,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3820,"config":3825,"_id":3826,"_type":31,"title":3827,"_source":33,"_file":3828,"_stem":3829,"_extension":36},"/en-us/blog/authors/jaime-martnez",{"name":3821,"config":3822},"Jaime Martínez",{"headshot":3823,"ctfId":3824},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679630/Blog/Author%20Headshots/jaime-headshot.jpg","jaime",{"template":736},"content:en-us:blog:authors:jaime-martnez.yml","Jaime Martnez","en-us/blog/authors/jaime-martnez.yml","en-us/blog/authors/jaime-martnez",{"_path":3831,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3832,"config":3836,"_id":3837,"_type":31,"title":3833,"_source":33,"_file":3838,"_stem":3839,"_extension":36},"/en-us/blog/authors/jake-foster",{"name":3833,"config":3834},"Jake Foster",{"headshot":767,"ctfId":3835},"jakefoster1",{"template":736},"content:en-us:blog:authors:jake-foster.yml","en-us/blog/authors/jake-foster.yml","en-us/blog/authors/jake-foster",{"_path":3841,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3842,"config":3846,"_id":3847,"_type":31,"title":3843,"_source":33,"_file":3848,"_stem":3849,"_extension":36},"/en-us/blog/authors/jake-stein",{"name":3843,"config":3844},"Jake Stein",{"headshot":767,"ctfId":3845},"Jake-Stein",{"template":736},"content:en-us:blog:authors:jake-stein.yml","en-us/blog/authors/jake-stein.yml","en-us/blog/authors/jake-stein",{"_path":3851,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3852,"config":3856,"_id":3857,"_type":31,"title":3853,"_source":33,"_file":3858,"_stem":3859,"_extension":36},"/en-us/blog/authors/james-dang",{"name":3853,"config":3854},"James Dang",{"headshot":767,"ctfId":3855},"James-Dang",{"template":736},"content:en-us:blog:authors:james-dang.yml","en-us/blog/authors/james-dang.yml","en-us/blog/authors/james-dang",{"_path":3861,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3862,"config":3867,"_id":3868,"_type":31,"title":3863,"_source":33,"_file":3869,"_stem":3870,"_extension":36},"/en-us/blog/authors/james-heimbuck",{"name":3863,"config":3864},"James Heimbuck",{"headshot":3865,"ctfId":3866},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666934/Blog/Author%20Headshots/jheimbuck_gl-headshot.png","jheimbuckgl",{"template":736},"content:en-us:blog:authors:james-heimbuck.yml","en-us/blog/authors/james-heimbuck.yml","en-us/blog/authors/james-heimbuck",{"_path":3872,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3873,"config":3877,"_id":3878,"_type":31,"title":3874,"_source":33,"_file":3879,"_stem":3880,"_extension":36},"/en-us/blog/authors/james-ramsay",{"name":3874,"config":3875},"James Ramsay",{"headshot":7,"ctfId":3876},"jramsay",{"template":736},"content:en-us:blog:authors:james-ramsay.yml","en-us/blog/authors/james-ramsay.yml","en-us/blog/authors/james-ramsay",{"_path":3882,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3883,"config":3888,"_id":3889,"_type":31,"title":3884,"_source":33,"_file":3890,"_stem":3891,"_extension":36},"/en-us/blog/authors/james-wormwell",{"name":3884,"config":3885},"James Wormwell",{"headshot":3886,"ctfId":3887},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659474/Blog/Author%20Headshots/james_wormwell_headshot.png","CPPijHb0Op5C5aVcvsOEf",{"template":736},"content:en-us:blog:authors:james-wormwell.yml","en-us/blog/authors/james-wormwell.yml","en-us/blog/authors/james-wormwell",{"_path":3893,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3894,"config":3898,"_id":3899,"_type":31,"title":3895,"_source":33,"_file":3900,"_stem":3901,"_extension":36},"/en-us/blog/authors/jamie-hurewitz",{"name":3895,"config":3896},"Jamie Hurewitz",{"headshot":767,"ctfId":3897},"Jamie-Hurewitz",{"template":736},"content:en-us:blog:authors:jamie-hurewitz.yml","en-us/blog/authors/jamie-hurewitz.yml","en-us/blog/authors/jamie-hurewitz",{"_path":3903,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3904,"config":3908,"_id":3909,"_type":31,"title":3905,"_source":33,"_file":3910,"_stem":3911,"_extension":36},"/en-us/blog/authors/jamie-rachel",{"name":3905,"config":3906},"Jamie Rachel",{"headshot":7,"ctfId":3907},"jrachel1",{"template":736},"content:en-us:blog:authors:jamie-rachel.yml","en-us/blog/authors/jamie-rachel.yml","en-us/blog/authors/jamie-rachel",{"_path":3913,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3914,"config":3919,"_id":3920,"_type":31,"title":3915,"_source":33,"_file":3921,"_stem":3922,"_extension":36},"/en-us/blog/authors/jan-provaznik",{"name":3915,"config":3916},"Jan Provaznik",{"headshot":3917,"ctfId":3918},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683397/Blog/Author%20Headshots/jprovaznik-headshot.png","jprovaznik",{"template":736},"content:en-us:blog:authors:jan-provaznik.yml","en-us/blog/authors/jan-provaznik.yml","en-us/blog/authors/jan-provaznik",{"_path":3924,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3925,"config":3930,"_id":3931,"_type":31,"title":3926,"_source":33,"_file":3932,"_stem":3933,"_extension":36},"/en-us/blog/authors/janis-altherr",{"name":3926,"config":3927},"Janis Altherr",{"headshot":3928,"ctfId":3929},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663163/Blog/Author%20Headshots/janis-headshot.jpg","janis",{"template":736},"content:en-us:blog:authors:janis-altherr.yml","en-us/blog/authors/janis-altherr.yml","en-us/blog/authors/janis-altherr",{"_path":3935,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3936,"config":3941,"_id":3942,"_type":31,"title":3937,"_source":33,"_file":3943,"_stem":3944,"_extension":36},"/en-us/blog/authors/jannik-lehmann",{"name":3937,"config":3938},"Jannik Lehmann",{"headshot":3939,"ctfId":3940},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665530/Blog/Author%20Headshots/jannik_lehmann_headshot.png","1N3FaKXgM0jmYL8jdnWKGN",{"template":736},"content:en-us:blog:authors:jannik-lehmann.yml","en-us/blog/authors/jannik-lehmann.yml","en-us/blog/authors/jannik-lehmann",{"_path":3946,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3947,"config":3952,"_id":3953,"_type":31,"title":3954,"_source":33,"_file":3955,"_stem":3956,"_extension":36},"/en-us/blog/authors/jarka-koanov-et-al",{"name":3948,"config":3949},"Jarka Košanová et al",{"headshot":3950,"ctfId":3951},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672956/Blog/Author%20Headshots/jarka-headshot.jpg","jarka",{"template":736},"content:en-us:blog:authors:jarka-koanov-et-al.yml","Jarka Koanov Et Al","en-us/blog/authors/jarka-koanov-et-al.yml","en-us/blog/authors/jarka-koanov-et-al",{"_path":3958,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3959,"config":3963,"_id":3964,"_type":31,"title":3965,"_source":33,"_file":3966,"_stem":3967,"_extension":36},"/en-us/blog/authors/jason-blais-mattermost",{"name":3960,"config":3961},"Jason Blais – Mattermost",{"headshot":7,"ctfId":3962},"jasonblais",{"template":736},"content:en-us:blog:authors:jason-blais-mattermost.yml","Jason Blais Mattermost","en-us/blog/authors/jason-blais-mattermost.yml","en-us/blog/authors/jason-blais-mattermost",{"_path":3969,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3970,"config":3974,"_id":3975,"_type":31,"title":3971,"_source":33,"_file":3976,"_stem":3977,"_extension":36},"/en-us/blog/authors/jason-chen",{"name":3971,"config":3972},"Jason Chen",{"headshot":767,"ctfId":3973},"Jason-Chen",{"template":736},"content:en-us:blog:authors:jason-chen.yml","en-us/blog/authors/jason-chen.yml","en-us/blog/authors/jason-chen",{"_path":3979,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3980,"config":3985,"_id":3986,"_type":31,"title":3981,"_source":33,"_file":3987,"_stem":3988,"_extension":36},"/en-us/blog/authors/jason-colyer",{"name":3981,"config":3982},"Jason Colyer",{"headshot":3983,"ctfId":3984},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670540/Blog/Author%20Headshots/jcolyer-headshot.jpg","jcolyer",{"template":736},"content:en-us:blog:authors:jason-colyer.yml","en-us/blog/authors/jason-colyer.yml","en-us/blog/authors/jason-colyer",{"_path":3990,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":3991,"config":3996,"_id":3997,"_type":31,"title":3992,"_source":33,"_file":3998,"_stem":3999,"_extension":36},"/en-us/blog/authors/jason-plum",{"name":3992,"config":3993},"Jason Plum",{"headshot":3994,"ctfId":3995},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683234/Blog/Author%20Headshots/WarheadsSE-headshot.jpg","WarheadsSE",{"template":736},"content:en-us:blog:authors:jason-plum.yml","en-us/blog/authors/jason-plum.yml","en-us/blog/authors/jason-plum",{"_path":4001,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4002,"config":4006,"_id":4007,"_type":31,"title":4003,"_source":33,"_file":4008,"_stem":4009,"_extension":36},"/en-us/blog/authors/jason-yavorska",{"name":4003,"config":4004},"Jason Yavorska",{"headshot":7,"ctfId":4005},"jyavorska",{"template":736},"content:en-us:blog:authors:jason-yavorska.yml","en-us/blog/authors/jason-yavorska.yml","en-us/blog/authors/jason-yavorska",{"_path":4011,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4012,"config":4016,"_id":4017,"_type":31,"title":4013,"_source":33,"_file":4018,"_stem":4019,"_extension":36},"/en-us/blog/authors/jay-newman",{"name":4013,"config":4014},"Jay Newman",{"headshot":767,"ctfId":4015},"Jay-Newman",{"template":736},"content:en-us:blog:authors:jay-newman.yml","en-us/blog/authors/jay-newman.yml","en-us/blog/authors/jay-newman",{"_path":4021,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4022,"config":4027,"_id":4028,"_type":31,"title":4023,"_source":33,"_file":4029,"_stem":4030,"_extension":36},"/en-us/blog/authors/jayson-salazar",{"name":4023,"config":4024},"Jayson Salazar",{"headshot":4025,"ctfId":4026},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669832/Blog/Author%20Headshots/jdsalaro-headshot.png","787SqtoQNu4DE3WGWE1WMv",{"template":736},"content:en-us:blog:authors:jayson-salazar.yml","en-us/blog/authors/jayson-salazar.yml","en-us/blog/authors/jayson-salazar",{"_path":4032,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4033,"config":4037,"_id":4038,"_type":31,"title":4039,"_source":33,"_file":4040,"_stem":4041,"_extension":36},"/en-us/blog/authors/jd-alex",{"name":4034,"config":4035},"JD Alex",{"headshot":7,"ctfId":4036},"jalex1",{"template":736},"content:en-us:blog:authors:jd-alex.yml","Jd Alex","en-us/blog/authors/jd-alex.yml","en-us/blog/authors/jd-alex",{"_path":4043,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4044,"config":4048,"_id":4049,"_type":31,"title":4050,"_source":33,"_file":4051,"_stem":4052,"_extension":36},"/en-us/blog/authors/jean-philippe-baconnais",{"name":4045,"config":4046},"Jean-Philippe Baconnais",{"headshot":7,"ctfId":4047},"jeanphibaconnais",{"template":736},"content:en-us:blog:authors:jean-philippe-baconnais.yml","Jean Philippe Baconnais","en-us/blog/authors/jean-philippe-baconnais.yml","en-us/blog/authors/jean-philippe-baconnais",{"_path":4054,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4055,"config":4060,"_id":4061,"_type":31,"title":4056,"_source":33,"_file":4062,"_stem":4063,"_extension":36},"/en-us/blog/authors/jeff-burrows",{"name":4056,"config":4057},"Jeff Burrows",{"headshot":4058,"ctfId":4059},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749680588/Blog/Author%20Headshots/jburrows001-headshot.jpg","jburrows001",{"template":736},"content:en-us:blog:authors:jeff-burrows.yml","en-us/blog/authors/jeff-burrows.yml","en-us/blog/authors/jeff-burrows",{"_path":4065,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4066,"config":4070,"_id":4071,"_type":31,"title":4067,"_source":33,"_file":4072,"_stem":4073,"_extension":36},"/en-us/blog/authors/jeff-kelsey",{"name":4067,"config":4068},"Jeff Kelsey",{"headshot":767,"ctfId":4069},"Jeff-Kelsey",{"template":736},"content:en-us:blog:authors:jeff-kelsey.yml","en-us/blog/authors/jeff-kelsey.yml","en-us/blog/authors/jeff-kelsey",{"_path":4075,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4076,"config":4081,"_id":4082,"_type":31,"title":4077,"_source":33,"_file":4083,"_stem":4084,"_extension":36},"/en-us/blog/authors/jeff-park",{"name":4077,"config":4078},"Jeff Park",{"headshot":4079,"ctfId":4080},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662462/Blog/Author%20Headshots/jeff_park.png","6f3sZWoxqV0RIufjUp6ohq",{"template":736},"content:en-us:blog:authors:jeff-park.yml","en-us/blog/authors/jeff-park.yml","en-us/blog/authors/jeff-park",{"_path":4086,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4087,"config":4092,"_id":4093,"_type":31,"title":4088,"_source":33,"_file":4094,"_stem":4095,"_extension":36},"/en-us/blog/authors/jeff-tucker",{"name":4088,"config":4089},"Jeff Tucker",{"headshot":4090,"ctfId":4091},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662256/Blog/Author%20Headshots/jeff_tucker_headshot.png","QsMDilyLUNsS2rvyaG3ne",{"template":736},"content:en-us:blog:authors:jeff-tucker.yml","en-us/blog/authors/jeff-tucker.yml","en-us/blog/authors/jeff-tucker",{"_path":4097,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4098,"config":4103,"_id":4104,"_type":31,"title":4099,"_source":33,"_file":4105,"_stem":4106,"_extension":36},"/en-us/blog/authors/jensen-stava",{"name":4099,"config":4100},"Jensen Stava",{"headshot":4101,"ctfId":4102},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679862/Blog/Author%20Headshots/jstava-headshot.png","jstava",{"template":736},"content:en-us:blog:authors:jensen-stava.yml","en-us/blog/authors/jensen-stava.yml","en-us/blog/authors/jensen-stava",{"_path":4108,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4109,"config":4113,"_id":4114,"_type":31,"title":4110,"_source":33,"_file":4115,"_stem":4116,"_extension":36},"/en-us/blog/authors/jeremy-cooper",{"name":4110,"config":4111},"Jeremy Cooper",{"headshot":767,"ctfId":4112},"6sXs62l8jODDcUlS9OPgTu",{"template":736},"content:en-us:blog:authors:jeremy-cooper.yml","en-us/blog/authors/jeremy-cooper.yml","en-us/blog/authors/jeremy-cooper",{"_path":4118,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4119,"config":4124,"_id":4125,"_type":31,"title":4120,"_source":33,"_file":4126,"_stem":4127,"_extension":36},"/en-us/blog/authors/jeremy-elder",{"name":4120,"config":4121},"Jeremy Elder",{"headshot":4122,"ctfId":4123},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666146/Blog/Author%20Headshots/jeldergl-headshot.jpg","jeldergl",{"template":736},"content:en-us:blog:authors:jeremy-elder.yml","en-us/blog/authors/jeremy-elder.yml","en-us/blog/authors/jeremy-elder",{"_path":4129,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4130,"config":4135,"_id":4136,"_type":31,"title":4131,"_source":33,"_file":4137,"_stem":4138,"_extension":36},"/en-us/blog/authors/jeremy-wagner",{"name":4131,"config":4132},"Jeremy Wagner",{"headshot":4133,"ctfId":4134},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663285/Blog/Author%20Headshots/jeremywagner-headshot.jpg","jeremywagner",{"template":736},"content:en-us:blog:authors:jeremy-wagner.yml","en-us/blog/authors/jeremy-wagner.yml","en-us/blog/authors/jeremy-wagner",{"_path":4140,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4141,"config":4145,"_id":4146,"_type":31,"title":4142,"_source":33,"_file":4147,"_stem":4148,"_extension":36},"/en-us/blog/authors/jeremy-watson",{"name":4142,"config":4143},"Jeremy Watson",{"headshot":7,"ctfId":4144},"jeremy",{"template":736},"content:en-us:blog:authors:jeremy-watson.yml","en-us/blog/authors/jeremy-watson.yml","en-us/blog/authors/jeremy-watson",{"_path":4150,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4151,"config":4156,"_id":4157,"_type":31,"title":4152,"_source":33,"_file":4158,"_stem":4159,"_extension":36},"/en-us/blog/authors/jerez-solis",{"name":4152,"config":4153},"Jerez Solis",{"headshot":4154,"ctfId":4155},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664494/Blog/Author%20Headshots/jerezsolis.jpg","1Tx8fzD6QQglwxBTAlwAOZ",{"template":736},"content:en-us:blog:authors:jerez-solis.yml","en-us/blog/authors/jerez-solis.yml","en-us/blog/authors/jerez-solis",{"_path":4161,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4162,"config":4166,"_id":4167,"_type":31,"title":4168,"_source":33,"_file":4169,"_stem":4170,"_extension":36},"/en-us/blog/authors/jeroen-van-baarsen",{"name":4163,"config":4164},"Jeroen van Baarsen",{"headshot":767,"ctfId":4165},"Jeroen-van-Baarsen",{"template":736},"content:en-us:blog:authors:jeroen-van-baarsen.yml","Jeroen Van Baarsen","en-us/blog/authors/jeroen-van-baarsen.yml","en-us/blog/authors/jeroen-van-baarsen",{"_path":4172,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4173,"config":4178,"_id":4179,"_type":31,"title":4174,"_source":33,"_file":4180,"_stem":4181,"_extension":36},"/en-us/blog/authors/jessica-hurwitz",{"name":4174,"config":4175},"Jessica Hurwitz",{"headshot":4176,"ctfId":4177},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659532/Blog/Author%20Headshots/jessica_hurwitz_headshot.png","6c35XpCSITw8fPmcAX67of",{"template":736},"content:en-us:blog:authors:jessica-hurwitz.yml","en-us/blog/authors/jessica-hurwitz.yml","en-us/blog/authors/jessica-hurwitz",{"_path":4183,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4184,"config":4188,"_id":4189,"_type":31,"title":4185,"_source":33,"_file":4190,"_stem":4191,"_extension":36},"/en-us/blog/authors/jim-riley",{"name":4185,"config":4186},"Jim Riley",{"headshot":7,"ctfId":4187},"GitLabcom-username-jrileyinva",{"template":736},"content:en-us:blog:authors:jim-riley.yml","en-us/blog/authors/jim-riley.yml","en-us/blog/authors/jim-riley",{"_path":4193,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4194,"config":4198,"_id":4199,"_type":31,"title":4195,"_source":33,"_file":4200,"_stem":4201,"_extension":36},"/en-us/blog/authors/jim-thavisouk",{"name":4195,"config":4196},"Jim Thavisouk",{"headshot":767,"ctfId":4197},"jimthavisouk",{"template":736},"content:en-us:blog:authors:jim-thavisouk.yml","en-us/blog/authors/jim-thavisouk.yml","en-us/blog/authors/jim-thavisouk",{"_path":4203,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4204,"config":4208,"_id":4209,"_type":31,"title":4210,"_source":33,"_file":4211,"_stem":4212,"_extension":36},"/en-us/blog/authors/job-van-der-voort",{"name":4205,"config":4206},"Job van der Voort",{"headshot":767,"ctfId":4207},"Job-van-der-Voort",{"template":736},"content:en-us:blog:authors:job-van-der-voort.yml","Job Van Der Voort","en-us/blog/authors/job-van-der-voort.yml","en-us/blog/authors/job-van-der-voort",{"_path":4214,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4215,"config":4220,"_id":4221,"_type":31,"title":4216,"_source":33,"_file":4222,"_stem":4223,"_extension":36},"/en-us/blog/authors/jocelyn-eillis",{"name":4216,"config":4217},"Jocelyn Eillis",{"headshot":4218,"ctfId":4219},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750713473/geqmxc4jkh4uy89m9loe.png","eGPL69Bvlva57elmDjuSo",{"template":736},"content:en-us:blog:authors:jocelyn-eillis.yml","en-us/blog/authors/jocelyn-eillis.yml","en-us/blog/authors/jocelyn-eillis",{"_path":4225,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4226,"config":4230,"_id":4231,"_type":31,"title":4227,"_source":33,"_file":4232,"_stem":4233,"_extension":36},"/en-us/blog/authors/jochen-roth",{"name":4227,"config":4228},"Jochen Roth",{"headshot":7,"ctfId":4229},"ochorocho",{"template":736},"content:en-us:blog:authors:jochen-roth.yml","en-us/blog/authors/jochen-roth.yml","en-us/blog/authors/jochen-roth",{"_path":4235,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4236,"config":4241,"_id":4242,"_type":31,"title":4237,"_source":33,"_file":4243,"_stem":4244,"_extension":36},"/en-us/blog/authors/joe-randazzo",{"name":4237,"config":4238},"Joe Randazzo",{"headshot":4239,"ctfId":4240},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664711/Blog/Author%20Headshots/randazzo.jpg","5DxpEbIVcwN2ukwiEMsHlH",{"template":736},"content:en-us:blog:authors:joe-randazzo.yml","en-us/blog/authors/joe-randazzo.yml","en-us/blog/authors/joe-randazzo",{"_path":4246,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4247,"config":4252,"_id":4253,"_type":31,"title":4248,"_source":33,"_file":4254,"_stem":4255,"_extension":36},"/en-us/blog/authors/joel-krooswyk",{"name":4248,"config":4249},"Joel Krooswyk",{"headshot":4250,"ctfId":4251},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669392/Blog/Author%20Headshots/jkrooswyk-headshot.jpg","jkrooswyk",{"template":736},"content:en-us:blog:authors:joel-krooswyk.yml","en-us/blog/authors/joel-krooswyk.yml","en-us/blog/authors/joel-krooswyk",{"_path":4257,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4258,"config":4263,"_id":4264,"_type":31,"title":4259,"_source":33,"_file":4265,"_stem":4266,"_extension":36},"/en-us/blog/authors/joern-schneeweisz",{"name":4259,"config":4260},"Joern Schneeweisz",{"headshot":4261,"ctfId":4262},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679144/Blog/Author%20Headshots/joernchen-headshot.png","joernchen",{"template":736},"content:en-us:blog:authors:joern-schneeweisz.yml","en-us/blog/authors/joern-schneeweisz.yml","en-us/blog/authors/joern-schneeweisz",{"_path":4268,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4269,"config":4273,"_id":4274,"_type":31,"title":4270,"_source":33,"_file":4275,"_stem":4276,"_extension":36},"/en-us/blog/authors/joey-salazar",{"name":4270,"config":4271},"Joey Salazar",{"headshot":767,"ctfId":4272},"4LgUP4bzQV6kuhoZNFID9r",{"template":736},"content:en-us:blog:authors:joey-salazar.yml","en-us/blog/authors/joey-salazar.yml","en-us/blog/authors/joey-salazar",{"_path":4278,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4279,"config":4283,"_id":4284,"_type":31,"title":4280,"_source":33,"_file":4285,"_stem":4286,"_extension":36},"/en-us/blog/authors/johanna-ambrosio",{"name":4280,"config":4281},"Johanna Ambrosio",{"headshot":767,"ctfId":4282},"Johanna-Ambrosio",{"template":736},"content:en-us:blog:authors:johanna-ambrosio.yml","en-us/blog/authors/johanna-ambrosio.yml","en-us/blog/authors/johanna-ambrosio",{"_path":4288,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4289,"config":4294,"_id":4295,"_type":31,"title":4290,"_source":33,"_file":4296,"_stem":4297,"_extension":36},"/en-us/blog/authors/johannes-bauer",{"name":4290,"config":4291},"Johannes Bauer",{"headshot":4292,"ctfId":4293},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662611/Blog/Author%20Headshots/johannes_bauer_headshot.png","6Snkao4VD1IxGOzV1YpcMZ",{"template":736},"content:en-us:blog:authors:johannes-bauer.yml","en-us/blog/authors/johannes-bauer.yml","en-us/blog/authors/johannes-bauer",{"_path":4299,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4300,"config":4305,"_id":4306,"_type":31,"title":4301,"_source":33,"_file":4307,"_stem":4308,"_extension":36},"/en-us/blog/authors/john-cai",{"name":4301,"config":4302},"John Cai",{"headshot":4303,"ctfId":4304},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667386/Blog/Author%20Headshots/jcaigitlab-headshot.jpg","jcaigitlab",{"template":736},"content:en-us:blog:authors:john-cai.yml","en-us/blog/authors/john-cai.yml","en-us/blog/authors/john-cai",{"_path":4310,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4311,"config":4316,"_id":4317,"_type":31,"title":4312,"_source":33,"_file":4318,"_stem":4319,"_extension":36},"/en-us/blog/authors/john-coghlan",{"name":4312,"config":4313},"John Coghlan",{"headshot":4314,"ctfId":4315},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670167/Blog/Author%20Headshots/johncoghlan-headshot.jpg","johncoghlan",{"template":736},"content:en-us:blog:authors:john-coghlan.yml","en-us/blog/authors/john-coghlan.yml","en-us/blog/authors/john-coghlan",{"_path":4321,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4322,"config":4327,"_id":4328,"_type":31,"title":4323,"_source":33,"_file":4329,"_stem":4330,"_extension":36},"/en-us/blog/authors/john-crowley",{"name":4323,"config":4324},"John Crowley",{"headshot":4325,"ctfId":4326},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666042/Blog/Author%20Headshots/john_crowley_headshot.png","64k6bR3mtIchoqBccJDaTO",{"template":736},"content:en-us:blog:authors:john-crowley.yml","en-us/blog/authors/john-crowley.yml","en-us/blog/authors/john-crowley",{"_path":4332,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4333,"config":4338,"_id":4339,"_type":31,"title":4334,"_source":33,"_file":4340,"_stem":4341,"_extension":36},"/en-us/blog/authors/john-jarvis",{"name":4334,"config":4335},"John Jarvis",{"headshot":4336,"ctfId":4337},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678622/Blog/Author%20Headshots/jarv-headshot.jpg","jarv",{"template":736},"content:en-us:blog:authors:john-jarvis.yml","en-us/blog/authors/john-jarvis.yml","en-us/blog/authors/john-jarvis",{"_path":4343,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4344,"config":4348,"_id":4349,"_type":31,"title":4345,"_source":33,"_file":4350,"_stem":4351,"_extension":36},"/en-us/blog/authors/john-jeremiah",{"name":4345,"config":4346},"John Jeremiah",{"headshot":767,"ctfId":4347},"johnjeremiah",{"template":736},"content:en-us:blog:authors:john-jeremiah.yml","en-us/blog/authors/john-jeremiah.yml","en-us/blog/authors/john-jeremiah",{"_path":4353,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4354,"config":4358,"_id":4359,"_type":31,"title":4360,"_source":33,"_file":4361,"_stem":4362,"_extension":36},"/en-us/blog/authors/john-mcguire",{"name":4355,"config":4356},"John McGuire",{"headshot":767,"ctfId":4357},"2BpYnUcWeqmuRlVM7w9ZIv",{"template":736},"content:en-us:blog:authors:john-mcguire.yml","John Mcguire","en-us/blog/authors/john-mcguire.yml","en-us/blog/authors/john-mcguire",{"_path":4364,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4365,"config":4369,"_id":4371,"_type":31,"title":4366,"_source":33,"_file":4372,"_stem":4373,"_extension":36},"/en-us/blog/authors/john-skarbek",{"name":4366,"config":4367},"John Skarbek",{"headshot":4368},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1751303547/nq8dxitzoybran2r7crm.png",{"template":736,"gitlabHandle":4370},"skarbek","content:en-us:blog:authors:john-skarbek.yml","en-us/blog/authors/john-skarbek.yml","en-us/blog/authors/john-skarbek",{"_path":4375,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4376,"config":4380,"_id":4381,"_type":31,"title":4377,"_source":33,"_file":4382,"_stem":4383,"_extension":36},"/en-us/blog/authors/john-sparrow",{"name":4377,"config":4378},"John Sparrow",{"headshot":767,"ctfId":4379},"John-Sparrow",{"template":736},"content:en-us:blog:authors:john-sparrow.yml","en-us/blog/authors/john-sparrow.yml","en-us/blog/authors/john-sparrow",{"_path":4385,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4386,"config":4390,"_id":4391,"_type":31,"title":4387,"_source":33,"_file":4392,"_stem":4393,"_extension":36},"/en-us/blog/authors/johnathan-hunt",{"name":4387,"config":4388},"Johnathan Hunt",{"headshot":767,"ctfId":4389},"JohnathanHunt",{"template":736},"content:en-us:blog:authors:johnathan-hunt.yml","en-us/blog/authors/johnathan-hunt.yml","en-us/blog/authors/johnathan-hunt",{"_path":4395,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4396,"config":4400,"_id":4401,"_type":31,"title":4397,"_source":33,"_file":4402,"_stem":4403,"_extension":36},"/en-us/blog/authors/joni-klippert",{"name":4397,"config":4398},"Joni Klippert",{"headshot":767,"ctfId":4399},"Joni-Klippert",{"template":736},"content:en-us:blog:authors:joni-klippert.yml","en-us/blog/authors/joni-klippert.yml","en-us/blog/authors/joni-klippert",{"_path":4405,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4406,"config":4411,"_id":4412,"_type":31,"title":4413,"_source":33,"_file":4414,"_stem":4415,"_extension":36},"/en-us/blog/authors/joo-alexandre-prado-tavares-cunha",{"name":4407,"config":4408},"João Alexandre Prado Tavares Cunha",{"headshot":4409,"ctfId":4410},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682771/Blog/Author%20Headshots/Alexand-headshot.jpg","Alexand",{"template":736},"content:en-us:blog:authors:joo-alexandre-prado-tavares-cunha.yml","Joo Alexandre Prado Tavares Cunha","en-us/blog/authors/joo-alexandre-prado-tavares-cunha.yml","en-us/blog/authors/joo-alexandre-prado-tavares-cunha",{"_path":4417,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4418,"config":4423,"_id":4424,"_type":31,"title":4425,"_source":33,"_file":4426,"_stem":4427,"_extension":36},"/en-us/blog/authors/joo-pereira",{"name":4419,"config":4420},"João Pereira",{"headshot":4421,"ctfId":4422},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665547/Blog/Author%20Headshots/joao_pereira.png","7wLh5rwID5R39PRA6aiAb0",{"template":736},"content:en-us:blog:authors:joo-pereira.yml","Joo Pereira","en-us/blog/authors/joo-pereira.yml","en-us/blog/authors/joo-pereira",{"_path":4429,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4430,"config":4434,"_id":4435,"_type":31,"title":4431,"_source":33,"_file":4436,"_stem":4437,"_extension":36},"/en-us/blog/authors/jordi-mon",{"name":4431,"config":4432},"Jordi Mon",{"headshot":7,"ctfId":4433},"jordimon",{"template":736},"content:en-us:blog:authors:jordi-mon.yml","en-us/blog/authors/jordi-mon.yml","en-us/blog/authors/jordi-mon",{"_path":4439,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4440,"config":4445,"_id":4446,"_type":31,"title":4447,"_source":33,"_file":4448,"_stem":4449,"_extension":36},"/en-us/blog/authors/jos-ivn-vargas",{"name":4441,"config":4442},"José Iván Vargas",{"headshot":4443,"ctfId":4444},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679024/Blog/Author%20Headshots/jivanvl-headshot.jpg","jivanvl",{"template":736},"content:en-us:blog:authors:jos-ivn-vargas.yml","Jos Ivn Vargas","en-us/blog/authors/jos-ivn-vargas.yml","en-us/blog/authors/jos-ivn-vargas",{"_path":4451,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4452,"config":4456,"_id":4457,"_type":31,"title":4453,"_source":33,"_file":4458,"_stem":4459,"_extension":36},"/en-us/blog/authors/jose-finotto",{"name":4453,"config":4454},"Jose Finotto",{"headshot":7,"ctfId":4455},"finotto",{"template":736},"content:en-us:blog:authors:jose-finotto.yml","en-us/blog/authors/jose-finotto.yml","en-us/blog/authors/jose-finotto",{"_path":4461,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4462,"config":4466,"_id":4468,"_type":31,"title":4465,"_source":33,"_file":4469,"_stem":4470,"_extension":36},"/en-us/blog/authors/joseph-burnett",{"config":4463,"name":4465},{"headshot":4464},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1752169072/teprmqbylocazrqdtuix.png","Joseph Burnett",{"template":736,"gitlabHandle":4467},"josephburnett","content:en-us:blog:authors:joseph-burnett.yml","en-us/blog/authors/joseph-burnett.yml","en-us/blog/authors/joseph-burnett",{"_path":4472,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4473,"config":4478,"_id":4479,"_type":31,"title":4474,"_source":33,"_file":4480,"_stem":4481,"_extension":36},"/en-us/blog/authors/joseph-longo",{"name":4474,"config":4475},"Joseph Longo",{"headshot":4476,"ctfId":4477},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659681/Blog/Author%20Headshots/jlongo_gitlab-headshot.jpg","jlongogitlab",{"template":736},"content:en-us:blog:authors:joseph-longo.yml","en-us/blog/authors/joseph-longo.yml","en-us/blog/authors/joseph-longo",{"_path":4483,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4484,"config":4488,"_id":4489,"_type":31,"title":4490,"_source":33,"_file":4491,"_stem":4492,"_extension":36},"/en-us/blog/authors/joseph-schorr-from-coreos",{"name":4485,"config":4486},"Joseph Schorr from CoreOS",{"headshot":767,"ctfId":4487},"Joseph-Schorr-from-CoreOS",{"template":736},"content:en-us:blog:authors:joseph-schorr-from-coreos.yml","Joseph Schorr From Coreos","en-us/blog/authors/joseph-schorr-from-coreos.yml","en-us/blog/authors/joseph-schorr-from-coreos",{"_path":4494,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4495,"config":4500,"_id":4501,"_type":31,"title":4496,"_source":33,"_file":4502,"_stem":4503,"_extension":36},"/en-us/blog/authors/josh-feehs",{"name":4496,"config":4497},"Josh Feehs",{"headshot":4498,"ctfId":4499},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683068/Blog/Author%20Headshots/Screenshot_2023-11-28_at_9.12.13_AM.png","g5S7qgnlO5aJJ00brs77P",{"template":736},"content:en-us:blog:authors:josh-feehs.yml","en-us/blog/authors/josh-feehs.yml","en-us/blog/authors/josh-feehs",{"_path":4505,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4506,"config":4512,"_id":4513,"_type":31,"title":4514,"_source":33,"_file":4515,"_stem":4516,"_extension":36},"/en-us/blog/authors/josh-kodroff-pulumi",{"role":4507,"name":4508,"config":4509},"Sr. Solutions Architect, Pulumi","Josh Kodroff, Pulumi",{"headshot":4510,"ctfId":4511},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683425/Blog/Author%20Headshots/joshkodroff.jpg","2GF0MF1ngEBxos4nRKt8tL",{"template":736},"content:en-us:blog:authors:josh-kodroff-pulumi.yml","Josh Kodroff Pulumi","en-us/blog/authors/josh-kodroff-pulumi.yml","en-us/blog/authors/josh-kodroff-pulumi",{"_path":4518,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4519,"config":4523,"_id":4524,"_type":31,"title":4520,"_source":33,"_file":4525,"_stem":4526,"_extension":36},"/en-us/blog/authors/josh-zimmerman",{"name":4520,"config":4521},"Josh Zimmerman",{"headshot":7,"ctfId":4522},"JoshZimmerman",{"template":736},"content:en-us:blog:authors:josh-zimmerman.yml","en-us/blog/authors/josh-zimmerman.yml","en-us/blog/authors/josh-zimmerman",{"_path":4528,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4529,"config":4534,"_id":4535,"_type":31,"title":4530,"_source":33,"_file":4536,"_stem":4537,"_extension":36},"/en-us/blog/authors/joshua-carroll",{"name":4530,"config":4531},"Joshua Carroll",{"headshot":4532,"ctfId":4533},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664952/Blog/Author%20Headshots/joshua_carroll_headshot.png","8HOTaXswBopyqMWFZMSv3",{"template":736},"content:en-us:blog:authors:joshua-carroll.yml","en-us/blog/authors/joshua-carroll.yml","en-us/blog/authors/joshua-carroll",{"_path":4539,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4540,"config":4545,"_id":4546,"_type":31,"title":4541,"_source":33,"_file":4547,"_stem":4548,"_extension":36},"/en-us/blog/authors/joshua-lambert",{"name":4541,"config":4542},"Joshua Lambert",{"headshot":4543,"ctfId":4544},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681281/Blog/Author%20Headshots/joshlambert-headshot.png","joshlambert",{"template":736},"content:en-us:blog:authors:joshua-lambert.yml","en-us/blog/authors/joshua-lambert.yml","en-us/blog/authors/joshua-lambert",{"_path":4550,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4551,"config":4555,"_id":4556,"_type":31,"title":4552,"_source":33,"_file":4557,"_stem":4558,"_extension":36},"/en-us/blog/authors/joyce-tompsett",{"name":4552,"config":4553},"Joyce Tompsett",{"headshot":7,"ctfId":4554},"Tompsett",{"template":736},"content:en-us:blog:authors:joyce-tompsett.yml","en-us/blog/authors/joyce-tompsett.yml","en-us/blog/authors/joyce-tompsett",{"_path":4560,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4561,"config":4565,"_id":4566,"_type":31,"title":4562,"_source":33,"_file":4567,"_stem":4568,"_extension":36},"/en-us/blog/authors/juan-broullon",{"name":4562,"config":4563},"Juan Broullon",{"headshot":7,"ctfId":4564},"jbroullon",{"template":736},"content:en-us:blog:authors:juan-broullon.yml","en-us/blog/authors/juan-broullon.yml","en-us/blog/authors/juan-broullon",{"_path":4570,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4571,"config":4575,"_id":4576,"_type":31,"title":4572,"_source":33,"_file":4577,"_stem":4578,"_extension":36},"/en-us/blog/authors/julia-lake",{"name":4572,"config":4573},"Julia Lake",{"headshot":767,"ctfId":4574},"5i9IDwCDDg3lfkiu9T3edZ",{"template":736},"content:en-us:blog:authors:julia-lake.yml","en-us/blog/authors/julia-lake.yml","en-us/blog/authors/julia-lake",{"_path":4580,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4581,"config":4586,"_id":4587,"_type":31,"title":4582,"_source":33,"_file":4588,"_stem":4589,"_extension":36},"/en-us/blog/authors/julia-miocene",{"name":4582,"config":4583},"Julia Miocene",{"headshot":4584,"ctfId":4585},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1755616177/yatkjhtf60edealtvpr4.png","6SK0DpWNK5NmfLyn2vWMPI",{"template":736},"content:en-us:blog:authors:julia-miocene.yml","en-us/blog/authors/julia-miocene.yml","en-us/blog/authors/julia-miocene",{"_path":4591,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4592,"config":4596,"_id":4597,"_type":31,"title":4593,"_source":33,"_file":4598,"_stem":4599,"_extension":36},"/en-us/blog/authors/julian-thome",{"name":4593,"config":4594},"Julian Thome",{"headshot":7,"ctfId":4595},"jthome",{"template":736},"content:en-us:blog:authors:julian-thome.yml","en-us/blog/authors/julian-thome.yml","en-us/blog/authors/julian-thome",{"_path":4601,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4602,"config":4607,"_id":4608,"_type":31,"title":4603,"_source":33,"_file":4609,"_stem":4610,"_extension":36},"/en-us/blog/authors/julie-byrne",{"name":4603,"config":4604},"Julie Byrne",{"headshot":4605,"ctfId":4606},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669432/Blog/Author%20Headshots/juliebyrne.jpg","3SaRWyz0u889xiq6rZkCO",{"template":736},"content:en-us:blog:authors:julie-byrne.yml","en-us/blog/authors/julie-byrne.yml","en-us/blog/authors/julie-byrne",{"_path":4612,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4613,"config":4618,"_id":4619,"_type":31,"title":4614,"_source":33,"_file":4620,"_stem":4621,"_extension":36},"/en-us/blog/authors/julie-griffin",{"name":4614,"config":4615},"Julie Griffin",{"headshot":4616,"ctfId":4617},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665206/Blog/Author%20Headshots/julie_griffin_-_headshot.png","3djBidFIW3or5K9uhi9LE5",{"template":736},"content:en-us:blog:authors:julie-griffin.yml","en-us/blog/authors/julie-griffin.yml","en-us/blog/authors/julie-griffin",{"_path":4623,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4624,"config":4628,"_id":4629,"_type":31,"title":4625,"_source":33,"_file":4630,"_stem":4631,"_extension":36},"/en-us/blog/authors/julien-andrieux",{"name":4625,"config":4626},"Julien Andrieux",{"headshot":767,"ctfId":4627},"Julien-Andrieux",{"template":736},"content:en-us:blog:authors:julien-andrieux.yml","en-us/blog/authors/julien-andrieux.yml","en-us/blog/authors/julien-andrieux",{"_path":4633,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4634,"config":4639,"_id":4640,"_type":31,"title":4635,"_source":33,"_file":4641,"_stem":4642,"_extension":36},"/en-us/blog/authors/juliet-wanjohi",{"name":4635,"config":4636},"Juliet Wanjohi",{"headshot":4637,"ctfId":4638},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669837/Blog/Author%20Headshots/jwanjohi-headshot.jpg","jwanjohi",{"template":736},"content:en-us:blog:authors:juliet-wanjohi.yml","en-us/blog/authors/juliet-wanjohi.yml","en-us/blog/authors/juliet-wanjohi",{"_path":4644,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4645,"config":4649,"_id":4650,"_type":31,"title":4646,"_source":33,"_file":4651,"_stem":4652,"_extension":36},"/en-us/blog/authors/justin-farris",{"name":4646,"config":4647},"Justin Farris",{"headshot":767,"ctfId":4648},"5RHYudAlWLmSj5U7AOIcbG",{"template":736},"content:en-us:blog:authors:justin-farris.yml","en-us/blog/authors/justin-farris.yml","en-us/blog/authors/justin-farris",{"_path":4654,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4655,"config":4660,"_id":4661,"_type":31,"title":4656,"_source":33,"_file":4662,"_stem":4663,"_extension":36},"/en-us/blog/authors/justin-tobler",{"name":4656,"config":4657},"Justin Tobler",{"headshot":4658,"ctfId":4659},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664737/Blog/Author%20Headshots/james_tobler_headshot.png","5pnOIbNI1Sc5IFnReNHNtv",{"template":736},"content:en-us:blog:authors:justin-tobler.yml","en-us/blog/authors/justin-tobler.yml","en-us/blog/authors/justin-tobler",{"_path":4665,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4666,"config":4671,"_id":4672,"_type":31,"title":4667,"_source":33,"_file":4673,"_stem":4674,"_extension":36},"/en-us/blog/authors/kai-armstrong",{"name":4667,"config":4668},"Kai Armstrong",{"headshot":4669,"ctfId":4670},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682535/Blog/Author%20Headshots/phikai-headshot.png","phikai",{"template":736},"content:en-us:blog:authors:kai-armstrong.yml","en-us/blog/authors/kai-armstrong.yml","en-us/blog/authors/kai-armstrong",{"_path":4676,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4677,"config":4681,"_id":4682,"_type":31,"title":4683,"_source":33,"_file":4684,"_stem":4685,"_extension":36},"/en-us/blog/authors/kamil-trzciski",{"name":4678,"config":4679},"Kamil Trzciński",{"headshot":767,"ctfId":4680},"Kamil-Trzciski",{"template":736},"content:en-us:blog:authors:kamil-trzciski.yml","Kamil Trzciski","en-us/blog/authors/kamil-trzciski.yml","en-us/blog/authors/kamil-trzciski",{"_path":4687,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4688,"config":4692,"_id":4693,"_type":31,"title":4694,"_source":33,"_file":4695,"_stem":4696,"_extension":36},"/en-us/blog/authors/karen-caras",{"name":4689,"config":4690},"Karen Carías",{"headshot":767,"ctfId":4691},"Karen-Caras",{"template":736},"content:en-us:blog:authors:karen-caras.yml","Karen Caras","en-us/blog/authors/karen-caras.yml","en-us/blog/authors/karen-caras",{"_path":4698,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4699,"config":4703,"_id":4705,"_type":31,"title":4700,"_source":33,"_file":4706,"_stem":4707,"_extension":36},"/en-us/blog/authors/karishma-kumar",{"name":4700,"config":4701},"Karishma Kumar",{"headshot":4702},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1761931048/z7wcdkw5czs9uwtpmfwg.png",{"template":736,"gitlabHandle":4704},"karishmakumar","content:en-us:blog:authors:karishma-kumar.yml","en-us/blog/authors/karishma-kumar.yml","en-us/blog/authors/karishma-kumar",{"_path":4709,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4710,"config":4715,"_id":4716,"_type":31,"title":4711,"_source":33,"_file":4717,"_stem":4718,"_extension":36},"/en-us/blog/authors/karthik-nayak",{"name":4711,"config":4712},"Karthik Nayak",{"headshot":4713,"ctfId":4714},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659809/Blog/Author%20Headshots/Screenshot_2025-06-04_at_8.49.51%C3%A2__AM.png","3Q6ZKvaiCRw7tFZdDGlecg",{"template":736},"content:en-us:blog:authors:karthik-nayak.yml","en-us/blog/authors/karthik-nayak.yml","en-us/blog/authors/karthik-nayak",{"_path":4720,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4721,"config":4725,"_id":4726,"_type":31,"title":4722,"_source":33,"_file":4727,"_stem":4728,"_extension":36},"/en-us/blog/authors/katherine-okpara",{"name":4722,"config":4723},"Katherine Okpara",{"headshot":7,"ctfId":4724},"katokpara",{"template":736},"content:en-us:blog:authors:katherine-okpara.yml","en-us/blog/authors/katherine-okpara.yml","en-us/blog/authors/katherine-okpara",{"_path":4730,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4731,"config":4735,"_id":4736,"_type":31,"title":4732,"_source":33,"_file":4737,"_stem":4738,"_extension":36},"/en-us/blog/authors/kathy-wang",{"name":4732,"config":4733},"Kathy Wang",{"headshot":7,"ctfId":4734},"kathyw",{"template":736},"content:en-us:blog:authors:kathy-wang.yml","en-us/blog/authors/kathy-wang.yml","en-us/blog/authors/kathy-wang",{"_path":4740,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4741,"config":4745,"_id":4746,"_type":31,"title":4747,"_source":33,"_file":4748,"_stem":4749,"_extension":36},"/en-us/blog/authors/keanon-okeefe",{"name":4742,"config":4743},"Keanon O’Keefe",{"headshot":7,"ctfId":4744},"kokeefe",{"template":736},"content:en-us:blog:authors:keanon-okeefe.yml","Keanon Okeefe","en-us/blog/authors/keanon-okeefe.yml","en-us/blog/authors/keanon-okeefe",{"_path":4751,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4752,"config":4757,"_id":4758,"_type":31,"title":4753,"_source":33,"_file":4759,"_stem":4760,"_extension":36},"/en-us/blog/authors/kees-valkhof",{"name":4753,"role":4754,"config":4755},"Kees Valkhof","Configuration manager at Lely",{"headshot":4756},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750331281/xojwtvpk5pif84wlahx1.jpg",{"template":736},"content:en-us:blog:authors:kees-valkhof.yml","en-us/blog/authors/kees-valkhof.yml","en-us/blog/authors/kees-valkhof",{"_path":4762,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4763,"config":4767,"_id":4768,"_type":31,"title":4764,"_source":33,"_file":4769,"_stem":4770,"_extension":36},"/en-us/blog/authors/kelly-hair",{"name":4764,"config":4765},"Kelly Hair",{"headshot":767,"ctfId":4766},"16z1eHwE7Ok5Ty4C6gpbUY",{"template":736},"content:en-us:blog:authors:kelly-hair.yml","en-us/blog/authors/kelly-hair.yml","en-us/blog/authors/kelly-hair",{"_path":4772,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4773,"config":4777,"_id":4778,"_type":31,"title":4774,"_source":33,"_file":4779,"_stem":4780,"_extension":36},"/en-us/blog/authors/kendra-marquart",{"name":4774,"config":4775},"Kendra Marquart",{"headshot":7,"ctfId":4776},"kmarquart",{"template":736},"content:en-us:blog:authors:kendra-marquart.yml","en-us/blog/authors/kendra-marquart.yml","en-us/blog/authors/kendra-marquart",{"_path":4782,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4783,"config":4787,"_id":4788,"_type":31,"title":4784,"_source":33,"_file":4789,"_stem":4790,"_extension":36},"/en-us/blog/authors/kenny-johnston",{"name":4784,"config":4785},"Kenny Johnston",{"headshot":7,"ctfId":4786},"kencjohnston",{"template":736},"content:en-us:blog:authors:kenny-johnston.yml","en-us/blog/authors/kenny-johnston.yml","en-us/blog/authors/kenny-johnston",{"_path":4792,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4793,"config":4798,"_id":4799,"_type":31,"title":4794,"_source":33,"_file":4800,"_stem":4801,"_extension":36},"/en-us/blog/authors/kevin-chu",{"name":4794,"config":4795},"Kevin Chu",{"headshot":4796,"ctfId":4797},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683472/Blog/Author%20Headshots/Screenshot_2024-01-12_at_2.12.33_PM.png","4wPeZqchWYCDsBeGjla485",{"template":736},"content:en-us:blog:authors:kevin-chu.yml","en-us/blog/authors/kevin-chu.yml","en-us/blog/authors/kevin-chu",{"_path":4803,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4804,"config":4809,"_id":4810,"_type":31,"title":4805,"_source":33,"_file":4811,"_stem":4812,"_extension":36},"/en-us/blog/authors/kevin-morrison",{"name":4805,"config":4806},"Kevin Morrison",{"headshot":4807,"ctfId":4808},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663642/Blog/Author%20Headshots/kevin_morrison_headshot.png","AcJIuz1VNQZIVdqgesMMh",{"template":736},"content:en-us:blog:authors:kevin-morrison.yml","en-us/blog/authors/kevin-morrison.yml","en-us/blog/authors/kevin-morrison",{"_path":4814,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4815,"config":4819,"_id":4820,"_type":31,"title":4816,"_source":33,"_file":4821,"_stem":4822,"_extension":36},"/en-us/blog/authors/khrystyna-humenna",{"name":4816,"config":4817},"Khrystyna Humenna",{"headshot":767,"ctfId":4818},"Khrystyna-Humenna",{"template":736},"content:en-us:blog:authors:khrystyna-humenna.yml","en-us/blog/authors/khrystyna-humenna.yml","en-us/blog/authors/khrystyna-humenna",{"_path":4824,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4825,"config":4829,"_id":4830,"_type":31,"title":4826,"_source":33,"_file":4831,"_stem":4832,"_extension":36},"/en-us/blog/authors/kim-lock",{"name":4826,"config":4827},"Kim Lock",{"headshot":7,"ctfId":4828},"KimLock",{"template":736},"content:en-us:blog:authors:kim-lock.yml","en-us/blog/authors/kim-lock.yml","en-us/blog/authors/kim-lock",{"_path":4834,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4835,"config":4839,"_id":4840,"_type":31,"title":4836,"_source":33,"_file":4841,"_stem":4842,"_extension":36},"/en-us/blog/authors/kirsten-abma",{"name":4836,"config":4837},"Kirsten Abma",{"headshot":767,"ctfId":4838},"Kirsten-Abma",{"template":736},"content:en-us:blog:authors:kirsten-abma.yml","en-us/blog/authors/kirsten-abma.yml","en-us/blog/authors/kirsten-abma",{"_path":4844,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4845,"config":4849,"_id":4850,"_type":31,"title":4846,"_source":33,"_file":4851,"_stem":4852,"_extension":36},"/en-us/blog/authors/kristian-larsson",{"name":4846,"config":4847},"Kristian Larsson",{"headshot":767,"ctfId":4848},"Kristian-Larsson",{"template":736},"content:en-us:blog:authors:kristian-larsson.yml","en-us/blog/authors/kristian-larsson.yml","en-us/blog/authors/kristian-larsson",{"_path":4854,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4855,"config":4860,"_id":4861,"_type":31,"title":4856,"_source":33,"_file":4862,"_stem":4863,"_extension":36},"/en-us/blog/authors/kristina-weis",{"name":4856,"config":4857},"Kristina Weis",{"headshot":4858,"ctfId":4859},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663955/Blog/Author%20Headshots/K-W-0155.jpg","kristinaweis",{"template":736},"content:en-us:blog:authors:kristina-weis.yml","en-us/blog/authors/kristina-weis.yml","en-us/blog/authors/kristina-weis",{"_path":4865,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4866,"config":4870,"_id":4871,"_type":31,"title":4867,"_source":33,"_file":4872,"_stem":4873,"_extension":36},"/en-us/blog/authors/kurt-dusek",{"name":4867,"config":4868},"Kurt Dusek",{"headshot":7,"ctfId":4869},"kdusek",{"template":736},"content:en-us:blog:authors:kurt-dusek.yml","en-us/blog/authors/kurt-dusek.yml","en-us/blog/authors/kurt-dusek",{"_path":4875,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4876,"config":4880,"_id":4881,"_type":31,"title":4877,"_source":33,"_file":4882,"_stem":4883,"_extension":36},"/en-us/blog/authors/kushal-koolwal",{"name":4877,"config":4878},"Kushal Koolwal",{"headshot":767,"ctfId":4879},"Kushal-Koolwal",{"template":736},"content:en-us:blog:authors:kushal-koolwal.yml","en-us/blog/authors/kushal-koolwal.yml","en-us/blog/authors/kushal-koolwal",{"_path":4885,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4886,"config":4891,"_id":4892,"_type":31,"title":4887,"_source":33,"_file":4893,"_stem":4894,"_extension":36},"/en-us/blog/authors/kushal-pandya",{"name":4887,"config":4888},"Kushal Pandya",{"headshot":4889,"ctfId":4890},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659454/Blog/Author%20Headshots/kushalpandya-headshot.png","kushalpandya",{"template":736},"content:en-us:blog:authors:kushal-pandya.yml","en-us/blog/authors/kushal-pandya.yml","en-us/blog/authors/kushal-pandya",{"_path":4896,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4897,"config":4901,"_id":4902,"_type":31,"title":4898,"_source":33,"_file":4903,"_stem":4904,"_extension":36},"/en-us/blog/authors/kwan-lee",{"name":4898,"config":4899},"Kwan Lee",{"headshot":767,"ctfId":4900},"Kwan-Lee",{"template":736},"content:en-us:blog:authors:kwan-lee.yml","en-us/blog/authors/kwan-lee.yml","en-us/blog/authors/kwan-lee",{"_path":4906,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4907,"config":4912,"_id":4913,"_type":31,"title":4908,"_source":33,"_file":4914,"_stem":4915,"_extension":36},"/en-us/blog/authors/kyla-gradin-dahl",{"name":4908,"config":4909},"Kyla Gradin Dahl",{"headshot":4910,"ctfId":4911},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682273/Blog/Author%20Headshots/kyla-headshot.jpg","kyla",{"template":736},"content:en-us:blog:authors:kyla-gradin-dahl.yml","en-us/blog/authors/kyla-gradin-dahl.yml","en-us/blog/authors/kyla-gradin-dahl",{"_path":4917,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4918,"config":4922,"_id":4923,"_type":31,"title":4919,"_source":33,"_file":4924,"_stem":4925,"_extension":36},"/en-us/blog/authors/kyle-mann",{"name":4919,"config":4920},"Kyle Mann",{"headshot":767,"ctfId":4921},"44YiW1r6sTpbC9wKBeHGgE",{"template":736},"content:en-us:blog:authors:kyle-mann.yml","en-us/blog/authors/kyle-mann.yml","en-us/blog/authors/kyle-mann",{"_path":4927,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4928,"config":4933,"_id":4934,"_type":31,"title":4929,"_source":33,"_file":4935,"_stem":4936,"_extension":36},"/en-us/blog/authors/kyle-smith",{"name":4929,"config":4930},"Kyle Smith",{"headshot":4931,"ctfId":4932},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664290/Blog/Author%20Headshots/kyle_smith_headshot.png","3Cec6opzqJpbhKXQ5nA4gU",{"template":736},"content:en-us:blog:authors:kyle-smith.yml","en-us/blog/authors/kyle-smith.yml","en-us/blog/authors/kyle-smith",{"_path":4938,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4939,"config":4943,"_id":4945,"_type":31,"title":4940,"_source":33,"_file":4946,"_stem":4947,"_extension":36},"/en-us/blog/authors/kymberlee-price",{"name":4940,"config":4941},"Kymberlee Price",{"headshot":4942},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1753961652/wggh3ikqpm5plrptfza0.png",{"template":736,"gitlabHandle":4944},"eelrebmyk","content:en-us:blog:authors:kymberlee-price.yml","en-us/blog/authors/kymberlee-price.yml","en-us/blog/authors/kymberlee-price",{"_path":4949,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4950,"config":4954,"_id":4955,"_type":31,"title":4951,"_source":33,"_file":4956,"_stem":4957,"_extension":36},"/en-us/blog/authors/lasse-schuirmann",{"name":4951,"config":4952},"Lasse Schuirmann",{"headshot":767,"ctfId":4953},"5vpo2ZOrPIS8PBp3k47S6w",{"template":736},"content:en-us:blog:authors:lasse-schuirmann.yml","en-us/blog/authors/lasse-schuirmann.yml","en-us/blog/authors/lasse-schuirmann",{"_path":4959,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4960,"config":4964,"_id":4965,"_type":31,"title":4961,"_source":33,"_file":4966,"_stem":4967,"_extension":36},"/en-us/blog/authors/laura-montemayor",{"name":4961,"config":4962},"Laura Montemayor",{"headshot":7,"ctfId":4963},"lauraMon",{"template":736},"content:en-us:blog:authors:laura-montemayor.yml","en-us/blog/authors/laura-montemayor.yml","en-us/blog/authors/laura-montemayor",{"_path":4969,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4970,"config":4975,"_id":4976,"_type":31,"title":4971,"_source":33,"_file":4977,"_stem":4978,"_extension":36},"/en-us/blog/authors/lauren-barker",{"name":4971,"config":4972},"Lauren Barker",{"headshot":4973,"ctfId":4974},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669974/Blog/Author%20Headshots/laurenbarker-headshot.jpg","laurenbarker",{"template":736},"content:en-us:blog:authors:lauren-barker.yml","en-us/blog/authors/lauren-barker.yml","en-us/blog/authors/lauren-barker",{"_path":4980,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4981,"config":4985,"_id":4986,"_type":31,"title":4982,"_source":33,"_file":4987,"_stem":4988,"_extension":36},"/en-us/blog/authors/lauren-gibbons-paul",{"name":4982,"config":4983},"Lauren Gibbons Paul",{"headshot":767,"ctfId":4984},"Lauren-Gibbons-Paul",{"template":736},"content:en-us:blog:authors:lauren-gibbons-paul.yml","en-us/blog/authors/lauren-gibbons-paul.yml","en-us/blog/authors/lauren-gibbons-paul",{"_path":4990,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":4991,"config":4995,"_id":4996,"_type":31,"title":4992,"_source":33,"_file":4997,"_stem":4998,"_extension":36},"/en-us/blog/authors/lauren-minning",{"name":4992,"config":4993},"Lauren Minning",{"headshot":7,"ctfId":4994},"lminning",{"template":736},"content:en-us:blog:authors:lauren-minning.yml","en-us/blog/authors/lauren-minning.yml","en-us/blog/authors/lauren-minning",{"_path":5000,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5001,"config":5006,"_id":5007,"_type":31,"title":5002,"_source":33,"_file":5008,"_stem":5009,"_extension":36},"/en-us/blog/authors/laurena-alves",{"name":5002,"config":5003},"Laurena Alves",{"headshot":5004,"ctfId":5005},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750713473/ip0jiy4wwyc0btfb09y5.png","Q834apoVRmcNXy507xyf5",{"template":736},"content:en-us:blog:authors:laurena-alves.yml","en-us/blog/authors/laurena-alves.yml","en-us/blog/authors/laurena-alves",{"_path":5011,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5012,"config":5017,"_id":5018,"_type":31,"title":5013,"_source":33,"_file":5019,"_stem":5020,"_extension":36},"/en-us/blog/authors/lee-faus",{"name":5013,"config":5014},"Lee Faus",{"headshot":5015,"ctfId":5016},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666427/Blog/Author%20Headshots/lee_faus_headshot.png","lfaus",{"template":736},"content:en-us:blog:authors:lee-faus.yml","en-us/blog/authors/lee-faus.yml","en-us/blog/authors/lee-faus",{"_path":5022,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5023,"config":5028,"_id":5029,"_type":31,"title":5024,"_source":33,"_file":5030,"_stem":5031,"_extension":36},"/en-us/blog/authors/lee-matos",{"name":5024,"config":5025},"Lee Matos",{"headshot":5026,"ctfId":5027},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670430/Blog/Author%20Headshots/lbot-headshot.jpg","lbot",{"template":736},"content:en-us:blog:authors:lee-matos.yml","en-us/blog/authors/lee-matos.yml","en-us/blog/authors/lee-matos",{"_path":5033,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5034,"config":5039,"_id":5040,"_type":31,"title":5035,"_source":33,"_file":5041,"_stem":5042,"_extension":36},"/en-us/blog/authors/lee-tickett",{"name":5035,"config":5036},"Lee Tickett",{"headshot":5037,"ctfId":5038},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1752592356/ibeixykxeiey9aiebylt.png","leetickett",{"template":736},"content:en-us:blog:authors:lee-tickett.yml","en-us/blog/authors/lee-tickett.yml","en-us/blog/authors/lee-tickett",{"_path":5044,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5045,"config":5049,"_id":5050,"_type":31,"title":5046,"_source":33,"_file":5051,"_stem":5052,"_extension":36},"/en-us/blog/authors/levente-polyak",{"name":5046,"config":5047},"Levente Polyak",{"headshot":7,"ctfId":5048},"anthraxx",{"template":736},"content:en-us:blog:authors:levente-polyak.yml","en-us/blog/authors/levente-polyak.yml","en-us/blog/authors/levente-polyak",{"_path":5054,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5055,"config":5060,"_id":5061,"_type":31,"title":5062,"_source":33,"_file":5063,"_stem":5064,"_extension":36},"/en-us/blog/authors/lin-jen-shin",{"name":5056,"config":5057},"Lin Jen-Shin",{"headshot":5058,"ctfId":5059},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678992/Blog/Author%20Headshots/godfat-gitlab-headshot.jpg","godfatgitlab",{"template":736},"content:en-us:blog:authors:lin-jen-shin.yml","Lin Jen Shin","en-us/blog/authors/lin-jen-shin.yml","en-us/blog/authors/lin-jen-shin",{"_path":5066,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5067,"config":5072,"_id":5073,"_type":31,"title":5068,"_source":33,"_file":5074,"_stem":5075,"_extension":36},"/en-us/blog/authors/liz-coleman",{"name":5068,"config":5069},"Liz Coleman",{"headshot":5070,"ctfId":5071},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659695/Blog/Author%20Headshots/coleman_headshot.png","5MTSBqnOko7zYTQa3vVy1c",{"template":736},"content:en-us:blog:authors:liz-coleman.yml","en-us/blog/authors/liz-coleman.yml","en-us/blog/authors/liz-coleman",{"_path":5077,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5078,"config":5083,"_id":5084,"_type":31,"title":5079,"_source":33,"_file":5085,"_stem":5086,"_extension":36},"/en-us/blog/authors/loryn-bortins",{"name":5079,"config":5080},"Loryn Bortins",{"headshot":5081,"ctfId":5082},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749668992/Blog/Author%20Headshots/loryn_bortins_headshot.png","5LgbtMISutHieB86Rk8uOL",{"template":736},"content:en-us:blog:authors:loryn-bortins.yml","en-us/blog/authors/loryn-bortins.yml","en-us/blog/authors/loryn-bortins",{"_path":5088,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5089,"config":5093,"_id":5094,"_type":31,"title":5090,"_source":33,"_file":5095,"_stem":5096,"_extension":36},"/en-us/blog/authors/lucas-charles",{"name":5090,"config":5091},"Lucas Charles",{"headshot":767,"ctfId":5092},"01OUkmRJImMowxMk3YHGNS",{"template":736},"content:en-us:blog:authors:lucas-charles.yml","en-us/blog/authors/lucas-charles.yml","en-us/blog/authors/lucas-charles",{"_path":5098,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5099,"config":5103,"_id":5104,"_type":31,"title":5100,"_source":33,"_file":5105,"_stem":5106,"_extension":36},"/en-us/blog/authors/luka-trbojevic",{"name":5100,"config":5101},"Luka Trbojevic",{"headshot":7,"ctfId":5102},"ltrbojevic",{"template":736},"content:en-us:blog:authors:luka-trbojevic.yml","en-us/blog/authors/luka-trbojevic.yml","en-us/blog/authors/luka-trbojevic",{"_path":5108,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5109,"config":5113,"_id":5114,"_type":31,"title":5110,"_source":33,"_file":5115,"_stem":5116,"_extension":36},"/en-us/blog/authors/lukas-eipert",{"name":5110,"config":5111},"Lukas Eipert",{"headshot":767,"ctfId":5112},"37PO8stm7JUQgglr4tWcmw",{"template":736},"content:en-us:blog:authors:lukas-eipert.yml","en-us/blog/authors/lukas-eipert.yml","en-us/blog/authors/lukas-eipert",{"_path":5118,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5119,"config":5124,"_id":5125,"_type":31,"title":5120,"_source":33,"_file":5126,"_stem":5127,"_extension":36},"/en-us/blog/authors/lyle-kozloff",{"name":5120,"config":5121},"Lyle Kozloff",{"headshot":5122,"ctfId":5123},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666803/Blog/Author%20Headshots/lyle-headshot.jpg","lyle",{"template":736},"content:en-us:blog:authors:lyle-kozloff.yml","en-us/blog/authors/lyle-kozloff.yml","en-us/blog/authors/lyle-kozloff",{"_path":5129,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5130,"config":5135,"_id":5136,"_type":31,"title":5131,"_source":33,"_file":5137,"_stem":5138,"_extension":36},"/en-us/blog/authors/madeline-lake",{"name":5131,"config":5132},"Madeline Lake",{"headshot":5133,"ctfId":5134},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659736/Blog/Author%20Headshots/madlake-headshot.jpg","madlake",{"template":736},"content:en-us:blog:authors:madeline-lake.yml","en-us/blog/authors/madeline-lake.yml","en-us/blog/authors/madeline-lake",{"_path":5140,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5141,"config":5146,"_id":5147,"_type":31,"title":5142,"_source":33,"_file":5148,"_stem":5149,"_extension":36},"/en-us/blog/authors/madou-coulibaly",{"name":5142,"config":5143},"Madou Coulibaly",{"headshot":5144,"ctfId":5145},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679848/Blog/Author%20Headshots/madou-headshot.jpg","madou",{"template":736},"content:en-us:blog:authors:madou-coulibaly.yml","en-us/blog/authors/madou-coulibaly.yml","en-us/blog/authors/madou-coulibaly",{"_path":5151,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5152,"config":5157,"_id":5158,"_type":31,"title":5153,"_source":33,"_file":5159,"_stem":5160,"_extension":36},"/en-us/blog/authors/magdalena-frankiewicz",{"name":5153,"config":5154},"Magdalena Frankiewicz",{"headshot":5155,"ctfId":5156},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663511/Blog/Author%20Headshots/m_frankiewicz-headshot.jpg","mfrankiewicz",{"template":736},"content:en-us:blog:authors:magdalena-frankiewicz.yml","en-us/blog/authors/magdalena-frankiewicz.yml","en-us/blog/authors/magdalena-frankiewicz",{"_path":5162,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5163,"config":5167,"_id":5168,"_type":31,"title":5164,"_source":33,"_file":5169,"_stem":5170,"_extension":36},"/en-us/blog/authors/mahesh-kumar",{"name":5164,"config":5165},"Mahesh Kumar",{"headshot":767,"ctfId":5166},"2ihYV6SzSOXfvpI2eJ87Mv",{"template":736},"content:en-us:blog:authors:mahesh-kumar.yml","en-us/blog/authors/mahesh-kumar.yml","en-us/blog/authors/mahesh-kumar",{"_path":5172,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5173,"config":5178,"_id":5179,"_type":31,"title":5174,"_source":33,"_file":5180,"_stem":5181,"_extension":36},"/en-us/blog/authors/manav-khurana",{"name":5174,"config":5175,"role":5177},"Manav Khurana",{"headshot":5176},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1757676476/ygij7nxvn2caq6vajhmy.png","Chief Product and Marketing Officer",{"template":736,"gitlabHandle":7},"content:en-us:blog:authors:manav-khurana.yml","en-us/blog/authors/manav-khurana.yml","en-us/blog/authors/manav-khurana",{"_path":5183,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5184,"config":5189,"_id":5190,"_type":31,"title":5185,"_source":33,"_file":5191,"_stem":5192,"_extension":36},"/en-us/blog/authors/manuel-kraft",{"name":5185,"config":5186},"Manuel Kraft",{"headshot":5187,"ctfId":5188},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659815/Blog/Author%20Headshots/manuel_kraft.png","5q1NADtEqxyoV1F1s6JKDz",{"template":736},"content:en-us:blog:authors:manuel-kraft.yml","en-us/blog/authors/manuel-kraft.yml","en-us/blog/authors/manuel-kraft",{"_path":5194,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5195,"config":5199,"_id":5200,"_type":31,"title":5196,"_source":33,"_file":5201,"_stem":5202,"_extension":36},"/en-us/blog/authors/marc-radulescu",{"name":5196,"config":5197},"Marc Radulescu",{"headshot":767,"ctfId":5198},"Marc-Radulescu",{"template":736},"content:en-us:blog:authors:marc-radulescu.yml","en-us/blog/authors/marc-radulescu.yml","en-us/blog/authors/marc-radulescu",{"_path":5204,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5205,"config":5210,"_id":5211,"_type":31,"title":5206,"_source":33,"_file":5212,"_stem":5213,"_extension":36},"/en-us/blog/authors/marc-shaw",{"name":5206,"config":5207},"Marc Shaw",{"headshot":5208,"ctfId":5209},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672589/Blog/Author%20Headshots/marc_shaw-headshot.jpg","marcshaw",{"template":736},"content:en-us:blog:authors:marc-shaw.yml","en-us/blog/authors/marc-shaw.yml","en-us/blog/authors/marc-shaw",{"_path":5215,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5216,"config":5221,"_id":5222,"_type":31,"title":5223,"_source":33,"_file":5224,"_stem":5225,"_extension":36},"/en-us/blog/authors/marcel-van-remmerden",{"name":5217,"config":5218},"Marcel van Remmerden",{"headshot":5219,"ctfId":5220},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669545/Blog/Author%20Headshots/mvanremmerden-headshot.jpg","7lMCQY4CU5xfTjIiMsNqkR",{"template":736},"content:en-us:blog:authors:marcel-van-remmerden.yml","Marcel Van Remmerden","en-us/blog/authors/marcel-van-remmerden.yml","en-us/blog/authors/marcel-van-remmerden",{"_path":5227,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5228,"config":5232,"_id":5233,"_type":31,"title":5229,"_source":33,"_file":5234,"_stem":5235,"_extension":36},"/en-us/blog/authors/marcia-ramos",{"name":5229,"config":5230},"Marcia Ramos",{"headshot":767,"ctfId":5231},"Marcia-Ramos",{"template":736},"content:en-us:blog:authors:marcia-ramos.yml","en-us/blog/authors/marcia-ramos.yml","en-us/blog/authors/marcia-ramos",{"_path":5237,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5238,"config":5242,"_id":5243,"_type":31,"title":5239,"_source":33,"_file":5244,"_stem":5245,"_extension":36},"/en-us/blog/authors/marco-lenzo",{"name":5239,"config":5240},"Marco Lenzo",{"headshot":767,"ctfId":5241},"Marco-Lenzo",{"template":736},"content:en-us:blog:authors:marco-lenzo.yml","en-us/blog/authors/marco-lenzo.yml","en-us/blog/authors/marco-lenzo",{"_path":5247,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5248,"config":5252,"_id":5253,"_type":31,"title":5249,"_source":33,"_file":5254,"_stem":5255,"_extension":36},"/en-us/blog/authors/marie-hargitt",{"name":5249,"config":5250},"Marie Hargitt",{"headshot":767,"ctfId":5251},"Marie-Hargitt",{"template":736},"content:en-us:blog:authors:marie-hargitt.yml","en-us/blog/authors/marie-hargitt.yml","en-us/blog/authors/marie-hargitt",{"_path":5257,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5258,"config":5263,"_id":5264,"_type":31,"title":5259,"_source":33,"_file":5265,"_stem":5266,"_extension":36},"/en-us/blog/authors/marin-jankovski",{"name":5259,"config":5260},"Marin Jankovski",{"headshot":5261,"ctfId":5262},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671628/Blog/Author%20Headshots/marin-headshot.jpg","Marin-Jankovski",{"template":736},"content:en-us:blog:authors:marin-jankovski.yml","en-us/blog/authors/marin-jankovski.yml","en-us/blog/authors/marin-jankovski",{"_path":5268,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5269,"config":5273,"_id":5274,"_type":31,"title":5275,"_source":33,"_file":5276,"_stem":5277,"_extension":36},"/en-us/blog/authors/marin-job",{"name":5270,"config":5271},"Marin, Job",{"headshot":767,"ctfId":5272},"Marin-Job",{"template":736},"content:en-us:blog:authors:marin-job.yml","Marin Job","en-us/blog/authors/marin-job.yml","en-us/blog/authors/marin-job",{"_path":5279,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5280,"config":5284,"_id":5285,"_type":31,"title":5286,"_source":33,"_file":5287,"_stem":5288,"_extension":36},"/en-us/blog/authors/mario-de-la-ossa",{"name":5281,"config":5282},"Mario de la Ossa",{"headshot":7,"ctfId":5283},"mdelaossa",{"template":736},"content:en-us:blog:authors:mario-de-la-ossa.yml","Mario De La Ossa","en-us/blog/authors/mario-de-la-ossa.yml","en-us/blog/authors/mario-de-la-ossa",{"_path":5290,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5291,"config":5295,"_id":5296,"_type":31,"title":5292,"_source":33,"_file":5297,"_stem":5298,"_extension":36},"/en-us/blog/authors/mark-art",{"name":5292,"config":5293},"Mark Art",{"headshot":767,"ctfId":5294},"55KCfyNmgPaJRmBZhiN7k5",{"template":736},"content:en-us:blog:authors:mark-art.yml","en-us/blog/authors/mark-art.yml","en-us/blog/authors/mark-art",{"_path":5300,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5301,"config":5305,"_id":5306,"_type":31,"title":5302,"_source":33,"_file":5307,"_stem":5308,"_extension":36},"/en-us/blog/authors/mark-fletcher",{"name":5302,"config":5303},"Mark Fletcher",{"headshot":7,"ctfId":5304},"markglenfletcher",{"template":736},"content:en-us:blog:authors:mark-fletcher.yml","en-us/blog/authors/mark-fletcher.yml","en-us/blog/authors/mark-fletcher",{"_path":5310,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5311,"config":5316,"_id":5317,"_type":31,"title":5312,"_source":33,"_file":5318,"_stem":5319,"_extension":36},"/en-us/blog/authors/mark-lapierre",{"name":5312,"config":5313},"Mark Lapierre",{"headshot":5314,"ctfId":5315},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669066/Blog/Author%20Headshots/mark_lapierre.png","2Fnsk5H33npbli2fy9kMqu",{"template":736},"content:en-us:blog:authors:mark-lapierre.yml","en-us/blog/authors/mark-lapierre.yml","en-us/blog/authors/mark-lapierre",{"_path":5321,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5322,"config":5327,"_id":5328,"_type":31,"title":5323,"_source":33,"_file":5329,"_stem":5330,"_extension":36},"/en-us/blog/authors/mark-loveless",{"name":5323,"config":5324},"Mark Loveless",{"headshot":5325,"ctfId":5326},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664093/Blog/Author%20Headshots/mloveless-headshot.png","mloveless",{"template":736},"content:en-us:blog:authors:mark-loveless.yml","en-us/blog/authors/mark-loveless.yml","en-us/blog/authors/mark-loveless",{"_path":5332,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5333,"config":5337,"_id":5338,"_type":31,"title":5334,"_source":33,"_file":5339,"_stem":5340,"_extension":36},"/en-us/blog/authors/mark-pundsack",{"name":5334,"config":5335},"Mark Pundsack",{"headshot":767,"ctfId":5336},"markpundsack",{"template":736},"content:en-us:blog:authors:mark-pundsack.yml","en-us/blog/authors/mark-pundsack.yml","en-us/blog/authors/mark-pundsack",{"_path":5342,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5343,"config":5348,"_id":5349,"_type":31,"title":5350,"_source":33,"_file":5351,"_stem":5352,"_extension":36},"/en-us/blog/authors/martin-brmmer",{"name":5344,"config":5345},"Martin Brümmer",{"headshot":5346,"ctfId":5347},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659427/Blog/Author%20Headshots/martin_brummer.webp","1QkLKK0UnkvZDDBzzEhkaA",{"template":736},"content:en-us:blog:authors:martin-brmmer.yml","Martin Brmmer","en-us/blog/authors/martin-brmmer.yml","en-us/blog/authors/martin-brmmer",{"_path":5354,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5355,"config":5359,"_id":5360,"_type":31,"title":5356,"_source":33,"_file":5361,"_stem":5362,"_extension":36},"/en-us/blog/authors/martynas-krupskis",{"name":5356,"config":5357},"Martynas Krupskis",{"headshot":767,"ctfId":5358},"3tK5S0f4QshGFGRrdEl7rn",{"template":736},"content:en-us:blog:authors:martynas-krupskis.yml","en-us/blog/authors/martynas-krupskis.yml","en-us/blog/authors/martynas-krupskis",{"_path":5364,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5365,"config":5369,"_id":5370,"_type":31,"title":5366,"_source":33,"_file":5371,"_stem":5372,"_extension":36},"/en-us/blog/authors/matej-latin",{"name":5366,"config":5367},"Matej Latin",{"headshot":7,"ctfId":5368},"matejlatin",{"template":736},"content:en-us:blog:authors:matej-latin.yml","en-us/blog/authors/matej-latin.yml","en-us/blog/authors/matej-latin",{"_path":5374,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5375,"config":5380,"_id":5381,"_type":31,"title":5376,"_source":33,"_file":5382,"_stem":5383,"_extension":36},"/en-us/blog/authors/mathias-ewald",{"name":5376,"config":5377},"Mathias Ewald",{"headshot":5378,"ctfId":5379},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664526/Blog/Author%20Headshots/mathias_ewald_headshot.png","7vLTPhU3yvh4xTToXcLpg9",{"template":736},"content:en-us:blog:authors:mathias-ewald.yml","en-us/blog/authors/mathias-ewald.yml","en-us/blog/authors/mathias-ewald",{"_path":5385,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5386,"config":5390,"_id":5391,"_type":31,"title":5387,"_source":33,"_file":5392,"_stem":5393,"_extension":36},"/en-us/blog/authors/matt-baldwin",{"name":5387,"config":5388},"Matt Baldwin",{"headshot":767,"ctfId":5389},"Matt-Baldwin",{"template":736},"content:en-us:blog:authors:matt-baldwin.yml","en-us/blog/authors/matt-baldwin.yml","en-us/blog/authors/matt-baldwin",{"_path":5395,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5396,"config":5401,"_id":5402,"_type":31,"title":5397,"_source":33,"_file":5403,"_stem":5404,"_extension":36},"/en-us/blog/authors/matt-coons",{"name":5397,"config":5398},"Matt Coons",{"headshot":5399,"ctfId":5400},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749661888/Blog/Author%20Headshots/mcoons-headshot.jpg","mcoons",{"template":736},"content:en-us:blog:authors:matt-coons.yml","en-us/blog/authors/matt-coons.yml","en-us/blog/authors/matt-coons",{"_path":5406,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5407,"config":5412,"_id":5413,"_type":31,"title":5414,"_source":33,"_file":5415,"_stem":5416,"_extension":36},"/en-us/blog/authors/matt-delaney",{"name":5408,"config":5409},"Matt DeLaney",{"headshot":5410,"ctfId":5411},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659749/Blog/Author%20Headshots/matt_delaney_headshot.png","6apeWdrqrZlMIdaxzV5NvZ",{"template":736},"content:en-us:blog:authors:matt-delaney.yml","Matt Delaney","en-us/blog/authors/matt-delaney.yml","en-us/blog/authors/matt-delaney",{"_path":5418,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5419,"config":5424,"_id":5425,"_type":31,"title":5420,"_source":33,"_file":5426,"_stem":5427,"_extension":36},"/en-us/blog/authors/matt-genelin",{"name":5420,"config":5421},"Matt Genelin",{"headshot":5422,"ctfId":5423},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664522/Blog/Author%20Headshots/matty_genelin.png","6x9dTYZik3lSViI8hu6dYQ",{"template":736},"content:en-us:blog:authors:matt-genelin.yml","en-us/blog/authors/matt-genelin.yml","en-us/blog/authors/matt-genelin",{"_path":5429,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5430,"config":5434,"_id":5435,"_type":31,"title":5431,"_source":33,"_file":5436,"_stem":5437,"_extension":36},"/en-us/blog/authors/matt-nguyen",{"name":5431,"config":5432},"Matt Nguyen",{"headshot":767,"ctfId":5433},"Matt-Nguyen",{"template":736},"content:en-us:blog:authors:matt-nguyen.yml","en-us/blog/authors/matt-nguyen.yml","en-us/blog/authors/matt-nguyen",{"_path":5439,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5440,"config":5445,"_id":5446,"_type":31,"title":5441,"_source":33,"_file":5447,"_stem":5448,"_extension":36},"/en-us/blog/authors/matt-nohr",{"name":5441,"config":5442},"Matt Nohr",{"headshot":5443,"ctfId":5444},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681473/Blog/Author%20Headshots/mnohr-headshot.jpg","mnohr",{"template":736},"content:en-us:blog:authors:matt-nohr.yml","en-us/blog/authors/matt-nohr.yml","en-us/blog/authors/matt-nohr",{"_path":5450,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5451,"config":5456,"_id":5457,"_type":31,"title":5452,"_source":33,"_file":5458,"_stem":5459,"_extension":36},"/en-us/blog/authors/matt-smiley",{"name":5452,"config":5453},"Matt Smiley",{"headshot":5454,"ctfId":5455},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682529/Blog/Author%20Headshots/msmiley-headshot.jpg","msmiley",{"template":736},"content:en-us:blog:authors:matt-smiley.yml","en-us/blog/authors/matt-smiley.yml","en-us/blog/authors/matt-smiley",{"_path":5461,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5462,"config":5466,"_id":5467,"_type":31,"title":5463,"_source":33,"_file":5468,"_stem":5469,"_extension":36},"/en-us/blog/authors/matt-wilson",{"name":5463,"config":5464},"Matt Wilson",{"headshot":767,"ctfId":5465},"mattwilson",{"template":736},"content:en-us:blog:authors:matt-wilson.yml","en-us/blog/authors/matt-wilson.yml","en-us/blog/authors/matt-wilson",{"_path":5471,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5472,"config":5477,"_id":5478,"_type":31,"title":5473,"_source":33,"_file":5479,"_stem":5480,"_extension":36},"/en-us/blog/authors/matthew-macfarlane",{"name":5473,"config":5474},"Matthew Macfarlane",{"headshot":5475,"ctfId":5476},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663160/Blog/Author%20Headshots/matthew_mcfarlane_headshot.png","6dyod6DIfkxY5CognC5g2N",{"template":736},"content:en-us:blog:authors:matthew-macfarlane.yml","en-us/blog/authors/matthew-macfarlane.yml","en-us/blog/authors/matthew-macfarlane",{"_path":5482,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5483,"config":5488,"_id":5489,"_type":31,"title":5484,"_source":33,"_file":5490,"_stem":5491,"_extension":36},"/en-us/blog/authors/matthew-nearents",{"name":5484,"config":5485},"Matthew Nearents",{"headshot":5486,"ctfId":5487},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681789/Blog/Author%20Headshots/mnearents-headshot.jpg","mnearents",{"template":736},"content:en-us:blog:authors:matthew-nearents.yml","en-us/blog/authors/matthew-nearents.yml","en-us/blog/authors/matthew-nearents",{"_path":5493,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5494,"config":5499,"_id":5500,"_type":31,"title":5501,"_source":33,"_file":5502,"_stem":5503,"_extension":36},"/en-us/blog/authors/matthias-kppler",{"name":5495,"config":5496},"Matthias Käppler",{"headshot":5497,"ctfId":5498},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670351/Blog/Author%20Headshots/mkaeppler-headshot.jpg","mkaeppler",{"template":736},"content:en-us:blog:authors:matthias-kppler.yml","Matthias Kppler","en-us/blog/authors/matthias-kppler.yml","en-us/blog/authors/matthias-kppler",{"_path":5505,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5506,"config":5510,"_id":5511,"_type":31,"title":5507,"_source":33,"_file":5512,"_stem":5513,"_extension":36},"/en-us/blog/authors/matthieu-fronton",{"name":5507,"config":5508},"Matthieu Fronton",{"headshot":7,"ctfId":5509},"frntn",{"template":736},"content:en-us:blog:authors:matthieu-fronton.yml","en-us/blog/authors/matthieu-fronton.yml","en-us/blog/authors/matthieu-fronton",{"_path":5515,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5516,"config":5520,"_id":5521,"_type":31,"title":5517,"_source":33,"_file":5522,"_stem":5523,"_extension":36},"/en-us/blog/authors/max-woolf",{"name":5517,"config":5518},"Max Woolf",{"headshot":767,"ctfId":5519},"Max-Woolf",{"template":736},"content:en-us:blog:authors:max-woolf.yml","en-us/blog/authors/max-woolf.yml","en-us/blog/authors/max-woolf",{"_path":5525,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5526,"config":5531,"_id":5532,"_type":31,"title":5527,"_source":33,"_file":5533,"_stem":5534,"_extension":36},"/en-us/blog/authors/maximilien-belinga",{"name":5527,"config":5528},"Maximilien Belinga",{"headshot":5529,"ctfId":5530},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665080/Blog/Author%20Headshots/max_belinga.png","4n2a5tKPKk6qCis0IzevOS",{"template":736},"content:en-us:blog:authors:maximilien-belinga.yml","en-us/blog/authors/maximilien-belinga.yml","en-us/blog/authors/maximilien-belinga",{"_path":5536,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5537,"config":5541,"_id":5542,"_type":31,"title":5538,"_source":33,"_file":5543,"_stem":5544,"_extension":36},"/en-us/blog/authors/mayank-tahilramani",{"name":5538,"config":5539},"Mayank Tahilramani",{"headshot":7,"ctfId":5540},"mayanktahil",{"template":736},"content:en-us:blog:authors:mayank-tahilramani.yml","en-us/blog/authors/mayank-tahilramani.yml","en-us/blog/authors/mayank-tahilramani",{"_path":5546,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5547,"config":5552,"_id":5553,"_type":31,"title":5548,"_source":33,"_file":5554,"_stem":5555,"_extension":36},"/en-us/blog/authors/mayra-cabrera",{"name":5548,"config":5549},"Mayra Cabrera",{"headshot":5550,"ctfId":5551},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663224/Blog/Author%20Headshots/mayra-cabrera-headshot.jpg","mayracabrera",{"template":736},"content:en-us:blog:authors:mayra-cabrera.yml","en-us/blog/authors/mayra-cabrera.yml","en-us/blog/authors/mayra-cabrera",{"_path":5557,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5558,"config":5562,"_id":5563,"_type":31,"title":5559,"_source":33,"_file":5564,"_stem":5565,"_extension":36},"/en-us/blog/authors/meghan-maneval",{"name":5559,"config":5560},"Meghan Maneval",{"headshot":7,"ctfId":5561},"mmaneval20",{"template":736},"content:en-us:blog:authors:meghan-maneval.yml","en-us/blog/authors/meghan-maneval.yml","en-us/blog/authors/meghan-maneval",{"_path":5567,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5568,"config":5573,"_id":5574,"_type":31,"title":5569,"_source":33,"_file":5575,"_stem":5576,"_extension":36},"/en-us/blog/authors/mek-stittri",{"name":5569,"config":5570},"Mek Stittri",{"headshot":5571,"ctfId":5572},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682281/Blog/Author%20Headshots/meks-headshot.png","meks",{"template":736},"content:en-us:blog:authors:mek-stittri.yml","en-us/blog/authors/mek-stittri.yml","en-us/blog/authors/mek-stittri",{"_path":5578,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5579,"config":5583,"_id":5584,"_type":31,"title":5580,"_source":33,"_file":5585,"_stem":5586,"_extension":36},"/en-us/blog/authors/melissa-farber",{"name":5580,"config":5581},"Melissa Farber",{"headshot":7,"ctfId":5582},"mfarber",{"template":736},"content:en-us:blog:authors:melissa-farber.yml","en-us/blog/authors/melissa-farber.yml","en-us/blog/authors/melissa-farber",{"_path":5588,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5589,"config":5593,"_id":5594,"_type":31,"title":5590,"_source":33,"_file":5595,"_stem":5596,"_extension":36},"/en-us/blog/authors/melissa-smolensky",{"name":5590,"config":5591},"Melissa Smolensky",{"headshot":7,"ctfId":5592},"melsmo",{"template":736},"content:en-us:blog:authors:melissa-smolensky.yml","en-us/blog/authors/melissa-smolensky.yml","en-us/blog/authors/melissa-smolensky",{"_path":5598,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5599,"config":5604,"_id":5605,"_type":31,"title":5600,"_source":33,"_file":5606,"_stem":5607,"_extension":36},"/en-us/blog/authors/melissa-ushakov",{"name":5600,"config":5601},"Melissa Ushakov",{"headshot":5602,"ctfId":5603},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666529/Blog/Author%20Headshots/mushakov-headshot.jpg","mushakov",{"template":736},"content:en-us:blog:authors:melissa-ushakov.yml","en-us/blog/authors/melissa-ushakov.yml","en-us/blog/authors/melissa-ushakov",{"_path":5609,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5610,"config":5614,"_id":5615,"_type":31,"title":5611,"_source":33,"_file":5616,"_stem":5617,"_extension":36},"/en-us/blog/authors/michael-fahey",{"name":5611,"config":5612},"Michael Fahey",{"headshot":7,"ctfId":5613},"mfahey",{"template":736},"content:en-us:blog:authors:michael-fahey.yml","en-us/blog/authors/michael-fahey.yml","en-us/blog/authors/michael-fahey",{"_path":5619,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5620,"config":5624,"_id":5625,"_type":31,"title":18,"_source":33,"_file":5626,"_stem":5627,"_extension":36},"/en-us/blog/authors/michael-friedrich",{"name":18,"config":5621},{"headshot":5622,"ctfId":5623},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659879/Blog/Author%20Headshots/dnsmichi-headshot.jpg","dnsmichi",{"template":736},"content:en-us:blog:authors:michael-friedrich.yml","en-us/blog/authors/michael-friedrich.yml","en-us/blog/authors/michael-friedrich",{"_path":5629,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5630,"config":5634,"_id":5635,"_type":31,"title":5631,"_source":33,"_file":5636,"_stem":5637,"_extension":36},"/en-us/blog/authors/michael-henriksen",{"name":5631,"config":5632},"Michael Henriksen",{"headshot":767,"ctfId":5633},"3DmojnawcJFqAgoNMCpFTX",{"template":736},"content:en-us:blog:authors:michael-henriksen.yml","en-us/blog/authors/michael-henriksen.yml","en-us/blog/authors/michael-henriksen",{"_path":5639,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5640,"config":5644,"_id":5645,"_type":31,"title":5641,"_source":33,"_file":5646,"_stem":5647,"_extension":36},"/en-us/blog/authors/michael-karampalas",{"name":5641,"config":5642},"Michael Karampalas",{"headshot":7,"ctfId":5643},"mkarampalas",{"template":736},"content:en-us:blog:authors:michael-karampalas.yml","en-us/blog/authors/michael-karampalas.yml","en-us/blog/authors/michael-karampalas",{"_path":5649,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5650,"config":5655,"_id":5656,"_type":31,"title":5651,"_source":33,"_file":5657,"_stem":5658,"_extension":36},"/en-us/blog/authors/michael-kozono",{"name":5651,"config":5652},"Michael Kozono",{"headshot":5653,"ctfId":5654},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679544/Blog/Author%20Headshots/mkozono-headshot.jpg","mkozono",{"template":736},"content:en-us:blog:authors:michael-kozono.yml","en-us/blog/authors/michael-kozono.yml","en-us/blog/authors/michael-kozono",{"_path":5660,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5661,"config":5665,"_id":5666,"_type":31,"title":5662,"_source":33,"_file":5667,"_stem":5668,"_extension":36},"/en-us/blog/authors/michael-miranda",{"name":5662,"config":5663},"Michael Miranda",{"headshot":7,"ctfId":5664},"mikemiranda",{"template":736},"content:en-us:blog:authors:michael-miranda.yml","en-us/blog/authors/michael-miranda.yml","en-us/blog/authors/michael-miranda",{"_path":5670,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5671,"config":5676,"_id":5677,"_type":31,"title":5672,"_source":33,"_file":5678,"_stem":5679,"_extension":36},"/en-us/blog/authors/michelle-gill",{"name":5672,"config":5673},"Michelle Gill",{"headshot":5674,"ctfId":5675},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666460/Blog/Author%20Headshots/michelle_gill_headshot.png","1o9MOYTUcO2koXs4FgpOEw",{"template":736},"content:en-us:blog:authors:michelle-gill.yml","en-us/blog/authors/michelle-gill.yml","en-us/blog/authors/michelle-gill",{"_path":5681,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5682,"config":5687,"_id":5688,"_type":31,"title":5683,"_source":33,"_file":5689,"_stem":5690,"_extension":36},"/en-us/blog/authors/miguel-rincon",{"name":5683,"config":5684},"Miguel Rincon",{"headshot":5685,"ctfId":5686},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681865/Blog/Author%20Headshots/mrincon-headshot.jpg","mrincon",{"template":736},"content:en-us:blog:authors:miguel-rincon.yml","en-us/blog/authors/miguel-rincon.yml","en-us/blog/authors/miguel-rincon",{"_path":5692,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5693,"config":5697,"_id":5698,"_type":31,"title":5694,"_source":33,"_file":5699,"_stem":5700,"_extension":36},"/en-us/blog/authors/mike-bartlett",{"name":5694,"config":5695},"Mike Bartlett",{"headshot":7,"ctfId":5696},"mydigitalself",{"template":736},"content:en-us:blog:authors:mike-bartlett.yml","en-us/blog/authors/mike-bartlett.yml","en-us/blog/authors/mike-bartlett",{"_path":5702,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5703,"config":5707,"_id":5708,"_type":31,"title":5704,"_source":33,"_file":5709,"_stem":5710,"_extension":36},"/en-us/blog/authors/mike-eddington",{"name":5704,"config":5705},"Mike Eddington",{"headshot":767,"ctfId":5706},"q5tK0TgB1ZovSwShKSvOJ",{"template":736},"content:en-us:blog:authors:mike-eddington.yml","en-us/blog/authors/mike-eddington.yml","en-us/blog/authors/mike-eddington",{"_path":5712,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5713,"config":5718,"_id":5719,"_type":31,"title":5714,"_source":33,"_file":5720,"_stem":5721,"_extension":36},"/en-us/blog/authors/mike-flouton",{"name":5714,"config":5715},"Mike Flouton",{"headshot":5716,"ctfId":5717},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679190/Blog/Author%20Headshots/mflouton-headshot.jpg","mflouton",{"template":736},"content:en-us:blog:authors:mike-flouton.yml","en-us/blog/authors/mike-flouton.yml","en-us/blog/authors/mike-flouton",{"_path":5723,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5724,"config":5728,"_id":5729,"_type":31,"title":5725,"_source":33,"_file":5730,"_stem":5731,"_extension":36},"/en-us/blog/authors/mike-gerwitz",{"name":5725,"config":5726},"Mike Gerwitz",{"headshot":767,"ctfId":5727},"Mike-Gerwitz",{"template":736},"content:en-us:blog:authors:mike-gerwitz.yml","en-us/blog/authors/mike-gerwitz.yml","en-us/blog/authors/mike-gerwitz",{"_path":5733,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5734,"config":5738,"_id":5739,"_type":31,"title":5735,"_source":33,"_file":5740,"_stem":5741,"_extension":36},"/en-us/blog/authors/mike-greiling",{"name":5735,"config":5736},"Mike Greiling",{"headshot":7,"ctfId":5737},"mikegreiling",{"template":736},"content:en-us:blog:authors:mike-greiling.yml","en-us/blog/authors/mike-greiling.yml","en-us/blog/authors/mike-greiling",{"_path":5743,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5744,"config":5748,"_id":5749,"_type":31,"title":5745,"_source":33,"_file":5750,"_stem":5751,"_extension":36},"/en-us/blog/authors/mike-vanbuskirk",{"name":5745,"config":5746},"Mike Vanbuskirk",{"headshot":767,"ctfId":5747},"Mike-Vanbuskirk",{"template":736},"content:en-us:blog:authors:mike-vanbuskirk.yml","en-us/blog/authors/mike-vanbuskirk.yml","en-us/blog/authors/mike-vanbuskirk",{"_path":5753,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5754,"config":5758,"_id":5759,"_type":31,"title":5755,"_source":33,"_file":5760,"_stem":5761,"_extension":36},"/en-us/blog/authors/miranda-carter",{"name":5755,"config":5756},"Miranda Carter",{"headshot":767,"ctfId":5757},"4xT4dbRh6N9i7jW5xuPhVp",{"template":736},"content:en-us:blog:authors:miranda-carter.yml","en-us/blog/authors/miranda-carter.yml","en-us/blog/authors/miranda-carter",{"_path":5763,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5764,"config":5769,"_id":5770,"_type":31,"title":5765,"_source":33,"_file":5771,"_stem":5772,"_extension":36},"/en-us/blog/authors/mitra-jozenazemian",{"name":5765,"config":5766},"Mitra Jozenazemian",{"headshot":5767,"ctfId":5768},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662373/Blog/Author%20Headshots/Screenshot_2024-10-25_at_8.23.56_AM.png","4suqsutT8w5ZmkIvSVrmWQ",{"template":736},"content:en-us:blog:authors:mitra-jozenazemian.yml","en-us/blog/authors/mitra-jozenazemian.yml","en-us/blog/authors/mitra-jozenazemian",{"_path":5774,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5775,"config":5780,"_id":5781,"_type":31,"title":5776,"_source":33,"_file":5782,"_stem":5783,"_extension":36},"/en-us/blog/authors/monmayuri-ray",{"name":5776,"config":5777},"Monmayuri Ray",{"headshot":5778,"ctfId":5779},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679381/Blog/Author%20Headshots/mray2020-headshot.png","mray2020",{"template":736},"content:en-us:blog:authors:monmayuri-ray.yml","en-us/blog/authors/monmayuri-ray.yml","en-us/blog/authors/monmayuri-ray",{"_path":5785,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5786,"config":5791,"_id":5793,"_type":31,"title":5787,"_source":33,"_file":5794,"_stem":5795,"_extension":36},"/en-us/blog/authors/naoharu-sasaki",{"name":5787,"config":5788,"role":5790},"Naoharu Sasaki",{"headshot":5789},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1751951026/qgwsq65eqcrrxemihenj.png","Senior Solutions Architect",{"template":736,"gitlabHandle":5792},"https://gitlab.com/naosasaki","content:en-us:blog:authors:naoharu-sasaki.yml","en-us/blog/authors/naoharu-sasaki.yml","en-us/blog/authors/naoharu-sasaki",{"_path":5797,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5798,"config":5803,"_id":5804,"_type":31,"title":5799,"_source":33,"_file":5805,"_stem":5806,"_extension":36},"/en-us/blog/authors/nate-rosandich",{"name":5799,"config":5800},"Nate Rosandich",{"headshot":5801,"ctfId":5802},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665774/Blog/Author%20Headshots/nate_rosandich_headshot.png","6o7KM5bD29P7qtz6yu60rZ",{"template":736},"content:en-us:blog:authors:nate-rosandich.yml","en-us/blog/authors/nate-rosandich.yml","en-us/blog/authors/nate-rosandich",{"_path":5808,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5809,"config":5814,"_id":5815,"_type":31,"title":5810,"_source":33,"_file":5816,"_stem":5817,"_extension":36},"/en-us/blog/authors/neha-khalwadekar",{"name":5810,"config":5811},"Neha Khalwadekar",{"headshot":5812,"ctfId":5813},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682666/Blog/Author%20Headshots/nkhalwadekar-headshot.jpg","nkhalwadekar",{"template":736},"content:en-us:blog:authors:neha-khalwadekar.yml","en-us/blog/authors/neha-khalwadekar.yml","en-us/blog/authors/neha-khalwadekar",{"_path":5819,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5820,"config":5825,"_id":5826,"_type":31,"title":5827,"_source":33,"_file":5828,"_stem":5829,"_extension":36},"/en-us/blog/authors/neil-mccorrison",{"name":5821,"config":5822},"Neil McCorrison",{"headshot":5823,"ctfId":5824},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669499/Blog/Author%20Headshots/nmccorrison-headshot.jpg","nmccorrison",{"template":736},"content:en-us:blog:authors:neil-mccorrison.yml","Neil Mccorrison","en-us/blog/authors/neil-mccorrison.yml","en-us/blog/authors/neil-mccorrison",{"_path":5831,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5832,"config":5837,"_id":5838,"_type":31,"title":5839,"_source":33,"_file":5840,"_stem":5841,"_extension":36},"/en-us/blog/authors/neil-mcdonald",{"name":5833,"config":5834},"Neil McDonald",{"headshot":5835,"ctfId":5836},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665769/Blog/Author%20Headshots/neil_mcdonald_headshot.png","3AlbY0x99iY5eFvSZcn1zL",{"template":736},"content:en-us:blog:authors:neil-mcdonald.yml","Neil Mcdonald","en-us/blog/authors/neil-mcdonald.yml","en-us/blog/authors/neil-mcdonald",{"_path":5843,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5844,"config":5848,"_id":5850,"_type":31,"title":5845,"_source":33,"_file":5851,"_stem":5852,"_extension":36},"/en-us/blog/authors/nick-cayou",{"name":5845,"config":5846,"role":7},"Nick Cayou",{"headshot":5847},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1751467780/nzign0cbu1g4ulxlhgop.png",{"template":736,"gitlabHandle":5849},"ncayou","content:en-us:blog:authors:nick-cayou.yml","en-us/blog/authors/nick-cayou.yml","en-us/blog/authors/nick-cayou",{"_path":5854,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5855,"config":5860,"_id":5861,"_type":31,"title":5856,"_source":33,"_file":5862,"_stem":5863,"_extension":36},"/en-us/blog/authors/nick-malcolm",{"name":5856,"config":5857},"Nick Malcolm",{"headshot":5858,"ctfId":5859},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679150/Blog/Author%20Headshots/nmalcolm-headshot.jpg","nmalcolm",{"template":736},"content:en-us:blog:authors:nick-malcolm.yml","en-us/blog/authors/nick-malcolm.yml","en-us/blog/authors/nick-malcolm",{"_path":5865,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5866,"config":5870,"_id":5871,"_type":31,"title":5867,"_source":33,"_file":5872,"_stem":5873,"_extension":36},"/en-us/blog/authors/nick-thomas",{"name":5867,"config":5868},"Nick Thomas",{"headshot":7,"ctfId":5869},"nickthomas",{"template":736},"content:en-us:blog:authors:nick-thomas.yml","en-us/blog/authors/nick-thomas.yml","en-us/blog/authors/nick-thomas",{"_path":5875,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5876,"config":5881,"_id":5882,"_type":31,"title":5877,"_source":33,"_file":5883,"_stem":5884,"_extension":36},"/en-us/blog/authors/nick-veenhof",{"name":5877,"config":5878},"Nick Veenhof",{"headshot":5879,"ctfId":5880},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679373/Blog/Author%20Headshots/nick_vh-headshot.jpg","nickvh",{"template":736},"content:en-us:blog:authors:nick-veenhof.yml","en-us/blog/authors/nick-veenhof.yml","en-us/blog/authors/nick-veenhof",{"_path":5886,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5887,"config":5891,"_id":5892,"_type":31,"title":5888,"_source":33,"_file":5893,"_stem":5894,"_extension":36},"/en-us/blog/authors/nico-meisenzahl",{"name":5888,"config":5889},"Nico Meisenzahl",{"headshot":7,"ctfId":5890},"nicomeisenzahl",{"template":736},"content:en-us:blog:authors:nico-meisenzahl.yml","en-us/blog/authors/nico-meisenzahl.yml","en-us/blog/authors/nico-meisenzahl",{"_path":5896,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5897,"config":5901,"_id":5902,"_type":31,"title":5898,"_source":33,"_file":5903,"_stem":5904,"_extension":36},"/en-us/blog/authors/nicole-schwartz",{"name":5898,"config":5899},"Nicole Schwartz",{"headshot":7,"ctfId":5900},"nicoleschwartz",{"template":736},"content:en-us:blog:authors:nicole-schwartz.yml","en-us/blog/authors/nicole-schwartz.yml","en-us/blog/authors/nicole-schwartz",{"_path":5906,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5907,"config":5912,"_id":5913,"_type":31,"title":5908,"_source":33,"_file":5914,"_stem":5915,"_extension":36},"/en-us/blog/authors/nikhil-george",{"name":5908,"config":5909},"Nikhil George",{"headshot":5910,"ctfId":5911},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666175/Blog/Author%20Headshots/ngeorge1-headshot.jpg","ngeorge1",{"template":736},"content:en-us:blog:authors:nikhil-george.yml","en-us/blog/authors/nikhil-george.yml","en-us/blog/authors/nikhil-george",{"_path":5917,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5918,"config":5923,"_id":5924,"_type":31,"title":5919,"_source":33,"_file":5925,"_stem":5926,"_extension":36},"/en-us/blog/authors/nima-badiey",{"name":5919,"config":5920},"Nima Badiey",{"headshot":5921,"ctfId":5922},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749668177/Blog/Author%20Headshots/nbadiey-headshot.jpg","nbadiey",{"template":736},"content:en-us:blog:authors:nima-badiey.yml","en-us/blog/authors/nima-badiey.yml","en-us/blog/authors/nima-badiey",{"_path":5928,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5929,"config":5934,"_id":5935,"_type":31,"title":5930,"_source":33,"_file":5936,"_stem":5937,"_extension":36},"/en-us/blog/authors/noah-ing",{"name":5930,"config":5931},"Noah Ing",{"headshot":5932,"ctfId":5933},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664410/Blog/Author%20Headshots/noahing.png","noahing",{"template":736},"content:en-us:blog:authors:noah-ing.yml","en-us/blog/authors/noah-ing.yml","en-us/blog/authors/noah-ing",{"_path":5939,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5940,"config":5944,"_id":5945,"_type":31,"title":5941,"_source":33,"_file":5946,"_stem":5947,"_extension":36},"/en-us/blog/authors/noah-manger",{"name":5941,"config":5942},"Noah Manger",{"headshot":767,"ctfId":5943},"Noah-Manger",{"template":736},"content:en-us:blog:authors:noah-manger.yml","en-us/blog/authors/noah-manger.yml","en-us/blog/authors/noah-manger",{"_path":5949,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5950,"config":5954,"_id":5955,"_type":31,"title":5951,"_source":33,"_file":5956,"_stem":5957,"_extension":36},"/en-us/blog/authors/noah-zoschke",{"name":5951,"config":5952},"Noah Zoschke",{"headshot":767,"ctfId":5953},"Noah-Zoschke",{"template":736},"content:en-us:blog:authors:noah-zoschke.yml","en-us/blog/authors/noah-zoschke.yml","en-us/blog/authors/noah-zoschke",{"_path":5959,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5960,"config":5964,"_id":5965,"_type":31,"title":5961,"_source":33,"_file":5966,"_stem":5967,"_extension":36},"/en-us/blog/authors/nolan-myers",{"name":5961,"config":5962},"Nolan Myers",{"headshot":767,"ctfId":5963},"Nolan-Myers",{"template":736},"content:en-us:blog:authors:nolan-myers.yml","en-us/blog/authors/nolan-myers.yml","en-us/blog/authors/nolan-myers",{"_path":5969,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5970,"config":5974,"_id":5975,"_type":31,"title":5971,"_source":33,"_file":5976,"_stem":5977,"_extension":36},"/en-us/blog/authors/nupur-sharma",{"name":5971,"config":5972},"Nupur Sharma",{"headshot":767,"ctfId":5973},"6p7RQDl0cDWnAxU8yu2vVK",{"template":736},"content:en-us:blog:authors:nupur-sharma.yml","en-us/blog/authors/nupur-sharma.yml","en-us/blog/authors/nupur-sharma",{"_path":5979,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5980,"config":5984,"_id":5985,"_type":31,"title":5981,"_source":33,"_file":5986,"_stem":5987,"_extension":36},"/en-us/blog/authors/nuritzi-sanchez",{"name":5981,"config":5982},"Nuritzi Sanchez",{"headshot":7,"ctfId":5983},"nuritzi",{"template":736},"content:en-us:blog:authors:nuritzi-sanchez.yml","en-us/blog/authors/nuritzi-sanchez.yml","en-us/blog/authors/nuritzi-sanchez",{"_path":5989,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":5990,"config":5995,"_id":5996,"_type":31,"title":5991,"_source":33,"_file":5997,"_stem":5998,"_extension":36},"/en-us/blog/authors/oleksandr-pysaryuk",{"name":5991,"config":5992},"Oleksandr Pysaryuk",{"headshot":5993,"ctfId":5994},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664469/Blog/Author%20Headshots/opysaryuk_headshot.png","5EbCnvbwgeZKYOUug8fFFO",{"template":736},"content:en-us:blog:authors:oleksandr-pysaryuk.yml","en-us/blog/authors/oleksandr-pysaryuk.yml","en-us/blog/authors/oleksandr-pysaryuk",{"_path":6000,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6001,"config":6006,"_id":6007,"_type":31,"title":6008,"_source":33,"_file":6009,"_stem":6010,"_extension":36},"/en-us/blog/authors/olena-horal-koretska",{"name":6002,"config":6003},"Olena Horal-Koretska",{"headshot":6004,"ctfId":6005},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681267/Blog/Author%20Headshots/ohoral-headshot.jpg","ohoral",{"template":736},"content:en-us:blog:authors:olena-horal-koretska.yml","Olena Horal Koretska","en-us/blog/authors/olena-horal-koretska.yml","en-us/blog/authors/olena-horal-koretska",{"_path":6012,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6013,"config":6017,"_id":6019,"_type":31,"title":6014,"_source":33,"_file":6020,"_stem":6021,"_extension":36},"/en-us/blog/authors/olivier-campeau",{"name":6014,"config":6015},"Olivier Campeau",{"headshot":6016},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750704785/kyqz7c4ctjvo4qpj8ldf.png",{"template":736,"gitlabHandle":6018},"oli.campeau","content:en-us:blog:authors:olivier-campeau.yml","en-us/blog/authors/olivier-campeau.yml","en-us/blog/authors/olivier-campeau",{"_path":6023,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6024,"config":6029,"_id":6030,"_type":31,"title":6031,"_source":33,"_file":6032,"_stem":6033,"_extension":36},"/en-us/blog/authors/olivier-dupr",{"name":6025,"config":6026},"Olivier Dupré",{"headshot":6027,"ctfId":6028},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750713474/cj6odchlpoqxbibenvye.png","4VIckvQsyfNxEtz4pM42aP",{"template":736},"content:en-us:blog:authors:olivier-dupr.yml","Olivier Dupr","en-us/blog/authors/olivier-dupr.yml","en-us/blog/authors/olivier-dupr",{"_path":6035,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6036,"config":6041,"_id":6042,"_type":31,"title":6037,"_source":33,"_file":6043,"_stem":6044,"_extension":36},"/en-us/blog/authors/omar-fernandez",{"name":6037,"config":6038},"Omar Fernandez",{"headshot":6039,"ctfId":6040},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749668073/Blog/Author%20Headshots/ofernandez2-headshot.jpg","ofernandez2",{"template":736},"content:en-us:blog:authors:omar-fernandez.yml","en-us/blog/authors/omar-fernandez.yml","en-us/blog/authors/omar-fernandez",{"_path":6046,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6047,"config":6051,"_id":6052,"_type":31,"title":6048,"_source":33,"_file":6053,"_stem":6054,"_extension":36},"/en-us/blog/authors/opher-vishnia",{"name":6048,"config":6049},"Opher Vishnia",{"headshot":767,"ctfId":6050},"O0F3sw3av9pRAxeP9iR7N",{"template":736},"content:en-us:blog:authors:opher-vishnia.yml","en-us/blog/authors/opher-vishnia.yml","en-us/blog/authors/opher-vishnia",{"_path":6056,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6057,"config":6061,"_id":6062,"_type":31,"title":6058,"_source":33,"_file":6063,"_stem":6064,"_extension":36},"/en-us/blog/authors/orit-golowinski",{"name":6058,"config":6059},"Orit Golowinski",{"headshot":7,"ctfId":6060},"ogolowinski",{"template":736},"content:en-us:blog:authors:orit-golowinski.yml","en-us/blog/authors/orit-golowinski.yml","en-us/blog/authors/orit-golowinski",{"_path":6066,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6067,"config":6072,"_id":6073,"_type":31,"title":6068,"_source":33,"_file":6074,"_stem":6075,"_extension":36},"/en-us/blog/authors/ottilia-westerlund",{"name":6068,"config":6069},"Ottilia Westerlund",{"headshot":6070,"ctfId":6071},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664791/Blog/Author%20Headshots/ottiliawesterlundheadshot.png","ottiliawesterlund",{"template":736},"content:en-us:blog:authors:ottilia-westerlund.yml","en-us/blog/authors/ottilia-westerlund.yml","en-us/blog/authors/ottilia-westerlund",{"_path":6077,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6078,"config":6082,"_id":6083,"_type":31,"title":6079,"_source":33,"_file":6084,"_stem":6085,"_extension":36},"/en-us/blog/authors/owen-williams",{"name":6079,"config":6080},"Owen Williams",{"headshot":767,"ctfId":6081},"Owen-Williams",{"template":736},"content:en-us:blog:authors:owen-williams.yml","en-us/blog/authors/owen-williams.yml","en-us/blog/authors/owen-williams",{"_path":6087,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6088,"config":6092,"_id":6093,"_type":31,"title":6089,"_source":33,"_file":6094,"_stem":6095,"_extension":36},"/en-us/blog/authors/pablo-carranza",{"name":6089,"config":6090},"Pablo Carranza",{"headshot":767,"ctfId":6091},"Pablo-Carranza",{"template":736},"content:en-us:blog:authors:pablo-carranza.yml","en-us/blog/authors/pablo-carranza.yml","en-us/blog/authors/pablo-carranza",{"_path":6097,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6098,"config":6102,"_id":6103,"_type":31,"title":6099,"_source":33,"_file":6104,"_stem":6105,"_extension":36},"/en-us/blog/authors/parker-ennis",{"name":6099,"config":6100},"Parker Ennis",{"headshot":7,"ctfId":6101},"parkerennis",{"template":736},"content:en-us:blog:authors:parker-ennis.yml","en-us/blog/authors/parker-ennis.yml","en-us/blog/authors/parker-ennis",{"_path":6107,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6108,"config":6112,"_id":6113,"_type":31,"title":6109,"_source":33,"_file":6114,"_stem":6115,"_extension":36},"/en-us/blog/authors/patricio-cano",{"name":6109,"config":6110},"Patricio Cano",{"headshot":767,"ctfId":6111},"Patricio-Cano",{"template":736},"content:en-us:blog:authors:patricio-cano.yml","en-us/blog/authors/patricio-cano.yml","en-us/blog/authors/patricio-cano",{"_path":6117,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6118,"config":6122,"_id":6123,"_type":31,"title":6119,"_source":33,"_file":6124,"_stem":6125,"_extension":36},"/en-us/blog/authors/patrick-deuley",{"name":6119,"config":6120},"Patrick Deuley",{"headshot":767,"ctfId":6121},"4YYemtKKpxKC4yukyFavai",{"template":736},"content:en-us:blog:authors:patrick-deuley.yml","en-us/blog/authors/patrick-deuley.yml","en-us/blog/authors/patrick-deuley",{"_path":6127,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6128,"config":6132,"_id":6133,"_type":31,"title":6129,"_source":33,"_file":6134,"_stem":6135,"_extension":36},"/en-us/blog/authors/patrick-foster",{"name":6129,"config":6130},"Patrick Foster",{"headshot":767,"ctfId":6131},"Patrick-Foster",{"template":736},"content:en-us:blog:authors:patrick-foster.yml","en-us/blog/authors/patrick-foster.yml","en-us/blog/authors/patrick-foster",{"_path":6137,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6138,"config":6143,"_id":6144,"_type":31,"title":6139,"_source":33,"_file":6145,"_stem":6146,"_extension":36},"/en-us/blog/authors/patrick-steinhardt",{"name":6139,"config":6140},"Patrick Steinhardt",{"headshot":6141,"ctfId":6142},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749661952/Blog/Author%20Headshots/pks-gitlab-headshot.png","pksgitlab",{"template":736},"content:en-us:blog:authors:patrick-steinhardt.yml","en-us/blog/authors/patrick-steinhardt.yml","en-us/blog/authors/patrick-steinhardt",{"_path":6148,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6149,"config":6153,"_id":6154,"_type":31,"title":6150,"_source":33,"_file":6155,"_stem":6156,"_extension":36},"/en-us/blog/authors/patty-cheung",{"name":6150,"config":6151},"Patty Cheung",{"headshot":767,"ctfId":6152},"pattycheung",{"template":736},"content:en-us:blog:authors:patty-cheung.yml","en-us/blog/authors/patty-cheung.yml","en-us/blog/authors/patty-cheung",{"_path":6158,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6159,"config":6163,"_id":6164,"_type":31,"title":6160,"_source":33,"_file":6165,"_stem":6166,"_extension":36},"/en-us/blog/authors/paul-badcock",{"name":6160,"config":6161},"Paul Badcock",{"headshot":767,"ctfId":6162},"TbNQIdiD4vlFB7XYXeArb",{"template":736},"content:en-us:blog:authors:paul-badcock.yml","en-us/blog/authors/paul-badcock.yml","en-us/blog/authors/paul-badcock",{"_path":6168,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6169,"config":6173,"_id":6174,"_type":31,"title":6175,"_source":33,"_file":6176,"_stem":6177,"_extension":36},"/en-us/blog/authors/paul-gascou-vaillancourt",{"name":6170,"config":6171},"Paul Gascou-Vaillancourt",{"headshot":767,"ctfId":6172},"6Yg7HWPoy2E5vwudH0EZja",{"template":736},"content:en-us:blog:authors:paul-gascou-vaillancourt.yml","Paul Gascou Vaillancourt","en-us/blog/authors/paul-gascou-vaillancourt.yml","en-us/blog/authors/paul-gascou-vaillancourt",{"_path":6179,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6180,"config":6184,"_id":6185,"_type":31,"title":6181,"_source":33,"_file":6186,"_stem":6187,"_extension":36},"/en-us/blog/authors/paul-hibbitts",{"name":6181,"config":6182},"Paul Hibbitts",{"headshot":767,"ctfId":6183},"Paul-Hibbitts",{"template":736},"content:en-us:blog:authors:paul-hibbitts.yml","en-us/blog/authors/paul-hibbitts.yml","en-us/blog/authors/paul-hibbitts",{"_path":6189,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6190,"config":6194,"_id":6195,"_type":31,"title":6191,"_source":33,"_file":6196,"_stem":6197,"_extension":36},"/en-us/blog/authors/paul-machle",{"name":6191,"config":6192},"Paul Machle",{"headshot":767,"ctfId":6193},"Paul-Machle",{"template":736},"content:en-us:blog:authors:paul-machle.yml","en-us/blog/authors/paul-machle.yml","en-us/blog/authors/paul-machle",{"_path":6199,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6200,"config":6204,"_id":6206,"_type":31,"title":6201,"_source":33,"_file":6207,"_stem":6208,"_extension":36},"/en-us/blog/authors/paul-meresanu",{"name":6201,"role":7,"config":6202},"Paul Meresanu",{"headshot":6203},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750267141/qpw5ayteg0sewyh7s8xi.png",{"template":736,"gitlabHandle":6205},"pmeresanu","content:en-us:blog:authors:paul-meresanu.yml","en-us/blog/authors/paul-meresanu.yml","en-us/blog/authors/paul-meresanu",{"_path":6210,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6211,"config":6216,"_id":6217,"_type":31,"title":6212,"_source":33,"_file":6218,"_stem":6219,"_extension":36},"/en-us/blog/authors/payton-burdette",{"name":6212,"config":6213},"Payton Burdette",{"headshot":6214,"ctfId":6215},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667712/Blog/Author%20Headshots/payton_burdette_headshot.png","42ZmAy1Ix0cQeI3hHYupW",{"template":736},"content:en-us:blog:authors:payton-burdette.yml","en-us/blog/authors/payton-burdette.yml","en-us/blog/authors/payton-burdette",{"_path":6221,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6222,"config":6226,"_id":6227,"_type":31,"title":6223,"_source":33,"_file":6228,"_stem":6229,"_extension":36},"/en-us/blog/authors/pedro-fortuna",{"name":6223,"config":6224},"Pedro Fortuna",{"headshot":767,"ctfId":6225},"7JwB4WZYF19OKwOo4yk5n4",{"template":736},"content:en-us:blog:authors:pedro-fortuna.yml","en-us/blog/authors/pedro-fortuna.yml","en-us/blog/authors/pedro-fortuna",{"_path":6231,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6232,"config":6237,"_id":6238,"_type":31,"title":6239,"_source":33,"_file":6240,"_stem":6241,"_extension":36},"/en-us/blog/authors/pedro-moreira-da-silva",{"name":6233,"config":6234},"Pedro Moreira da Silva",{"headshot":6235,"ctfId":6236},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666783/Blog/Author%20Headshots/pedroms-headshot.jpg","pedroms",{"template":736},"content:en-us:blog:authors:pedro-moreira-da-silva.yml","Pedro Moreira Da Silva","en-us/blog/authors/pedro-moreira-da-silva.yml","en-us/blog/authors/pedro-moreira-da-silva",{"_path":6243,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6244,"config":6249,"_id":6250,"_type":31,"title":6245,"_source":33,"_file":6251,"_stem":6252,"_extension":36},"/en-us/blog/authors/phil-hughes",{"name":6245,"config":6246},"Phil Hughes",{"headshot":6247,"ctfId":6248},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681552/Blog/Author%20Headshots/iamphill-headshot.jpg","iamphill",{"template":736},"content:en-us:blog:authors:phil-hughes.yml","en-us/blog/authors/phil-hughes.yml","en-us/blog/authors/phil-hughes",{"_path":6254,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6255,"config":6259,"_id":6260,"_type":31,"title":6256,"_source":33,"_file":6261,"_stem":6262,"_extension":36},"/en-us/blog/authors/philip-welz",{"name":6256,"config":6257},"Philip Welz",{"headshot":7,"ctfId":6258},"philxx",{"template":736},"content:en-us:blog:authors:philip-welz.yml","en-us/blog/authors/philip-welz.yml","en-us/blog/authors/philip-welz",{"_path":6264,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6265,"config":6270,"_id":6271,"_type":31,"title":6272,"_source":33,"_file":6273,"_stem":6274,"_extension":36},"/en-us/blog/authors/philippe-lafoucrire",{"name":6266,"config":6267},"Philippe Lafoucrière",{"headshot":6268,"ctfId":6269},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679747/Blog/Author%20Headshots/plafoucriere-headshot.jpg","plafoucriere",{"template":736},"content:en-us:blog:authors:philippe-lafoucrire.yml","Philippe Lafoucrire","en-us/blog/authors/philippe-lafoucrire.yml","en-us/blog/authors/philippe-lafoucrire",{"_path":6276,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6277,"config":6281,"_id":6282,"_type":31,"title":6283,"_source":33,"_file":6284,"_stem":6285,"_extension":36},"/en-us/blog/authors/pierre-de-la-morinerie",{"name":6278,"config":6279},"Pierre de La Morinerie",{"headshot":767,"ctfId":6280},"Pierre-de-La-Morinerie",{"template":736},"content:en-us:blog:authors:pierre-de-la-morinerie.yml","Pierre De La Morinerie","en-us/blog/authors/pierre-de-la-morinerie.yml","en-us/blog/authors/pierre-de-la-morinerie",{"_path":6287,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6288,"config":6292,"_id":6293,"_type":31,"title":6289,"_source":33,"_file":6294,"_stem":6295,"_extension":36},"/en-us/blog/authors/pierre-smeyers",{"name":6289,"config":6290},"Pierre Smeyers",{"headshot":7,"ctfId":6291},"pismy",{"template":736},"content:en-us:blog:authors:pierre-smeyers.yml","en-us/blog/authors/pierre-smeyers.yml","en-us/blog/authors/pierre-smeyers",{"_path":6297,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6298,"config":6303,"_id":6304,"_type":31,"title":6299,"_source":33,"_file":6305,"_stem":6306,"_extension":36},"/en-us/blog/authors/pini-wietchner",{"name":6299,"config":6300},"Pini Wietchner",{"headshot":6301,"ctfId":6302},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749660171/Blog/Author%20Headshots/Pini_Wietchner_headshot.png","4FclpbCSjD5ytIrKCyRL0o",{"template":736},"content:en-us:blog:authors:pini-wietchner.yml","en-us/blog/authors/pini-wietchner.yml","en-us/blog/authors/pini-wietchner",{"_path":6308,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6309,"config":6313,"_id":6314,"_type":31,"title":6315,"_source":33,"_file":6316,"_stem":6317,"_extension":36},"/en-us/blog/authors/pj-metz",{"name":6310,"config":6311},"PJ Metz",{"headshot":767,"ctfId":6312},"PjMetz",{"template":736},"content:en-us:blog:authors:pj-metz.yml","Pj Metz","en-us/blog/authors/pj-metz.yml","en-us/blog/authors/pj-metz",{"_path":6319,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6320,"config":6323,"_id":6324,"_type":31,"title":6325,"_source":33,"_file":6326,"_stem":6327,"_extension":36},"/en-us/blog/authors/plapadoo",{"name":6321,"config":6322},"plapadoo",{"headshot":767,"ctfId":6321},{"template":736},"content:en-us:blog:authors:plapadoo.yml","Plapadoo","en-us/blog/authors/plapadoo.yml","en-us/blog/authors/plapadoo",{"_path":6329,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6330,"config":6334,"_id":6335,"_type":31,"title":6331,"_source":33,"_file":6336,"_stem":6337,"_extension":36},"/en-us/blog/authors/pranay-bakre",{"name":6331,"config":6332},"Pranay Bakre",{"headshot":7,"ctfId":6333},"Darren-Eastman",{"template":736},"content:en-us:blog:authors:pranay-bakre.yml","en-us/blog/authors/pranay-bakre.yml","en-us/blog/authors/pranay-bakre",{"_path":6339,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6340,"config":6344,"_id":6345,"_type":31,"title":6341,"_source":33,"_file":6346,"_stem":6347,"_extension":36},"/en-us/blog/authors/priyanka-sharma",{"name":6341,"config":6342},"Priyanka Sharma",{"headshot":7,"ctfId":6343},"pritianka",{"template":736},"content:en-us:blog:authors:priyanka-sharma.yml","en-us/blog/authors/priyanka-sharma.yml","en-us/blog/authors/priyanka-sharma",{"_path":6349,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6350,"config":6355,"_id":6356,"_type":31,"title":6357,"_source":33,"_file":6358,"_stem":6359,"_extension":36},"/en-us/blog/authors/pter-bozs",{"name":6351,"config":6352},"Péter Bozsó",{"headshot":6353,"ctfId":6354},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666384/Blog/Author%20Headshots/pbozso_headshot.png","4i1NVYip0RqxRnbpZ9deKp",{"template":736},"content:en-us:blog:authors:pter-bozs.yml","Pter Bozs","en-us/blog/authors/pter-bozs.yml","en-us/blog/authors/pter-bozs",{"_path":6361,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6362,"config":6366,"_id":6367,"_type":31,"title":6363,"_source":33,"_file":6368,"_stem":6369,"_extension":36},"/en-us/blog/authors/quan-to",{"name":6363,"config":6364},"Quan To",{"headshot":767,"ctfId":6365},"5dswLnpCobgICjM0RpHMU2",{"template":736},"content:en-us:blog:authors:quan-to.yml","en-us/blog/authors/quan-to.yml","en-us/blog/authors/quan-to",{"_path":6371,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6372,"config":6377,"_id":6378,"_type":31,"title":6373,"_source":33,"_file":6379,"_stem":6380,"_extension":36},"/en-us/blog/authors/rachel-nienaber",{"name":6373,"config":6374},"Rachel Nienaber",{"headshot":6375,"ctfId":6376},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667065/Blog/Author%20Headshots/rnienaber-headshot.jpg","rnienaber",{"template":736},"content:en-us:blog:authors:rachel-nienaber.yml","en-us/blog/authors/rachel-nienaber.yml","en-us/blog/authors/rachel-nienaber",{"_path":6382,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6383,"config":6387,"_id":6389,"_type":31,"title":6384,"_source":33,"_file":6390,"_stem":6391,"_extension":36},"/en-us/blog/authors/radovan-bacovic",{"name":6384,"config":6385},"Radovan Bacovic",{"headshot":6386},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1760036179/vvj2tiujit6kopuz8mqp.png",{"template":736,"gitlabHandle":6388},"rbacovic","content:en-us:blog:authors:radovan-bacovic.yml","en-us/blog/authors/radovan-bacovic.yml","en-us/blog/authors/radovan-bacovic",{"_path":6393,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6394,"config":6398,"_id":6399,"_type":31,"title":6400,"_source":33,"_file":6401,"_stem":6402,"_extension":36},"/en-us/blog/authors/rahul-bhargava-cto-evolphin",{"name":6395,"config":6396},"Rahul Bhargava, CTO, Evolphin",{"headshot":767,"ctfId":6397},"Rahul-Bhargava-CTO-Evolphin",{"template":736},"content:en-us:blog:authors:rahul-bhargava-cto-evolphin.yml","Rahul Bhargava Cto Evolphin","en-us/blog/authors/rahul-bhargava-cto-evolphin.yml","en-us/blog/authors/rahul-bhargava-cto-evolphin",{"_path":6404,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6405,"config":6410,"_id":6411,"_type":31,"title":6406,"_source":33,"_file":6412,"_stem":6413,"_extension":36},"/en-us/blog/authors/raimund-hook",{"name":6406,"config":6407},"Raimund Hook",{"headshot":6408,"ctfId":6409},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749672472/Blog/Author%20Headshots/stingrayza-headshot.jpg","stingrayza",{"template":736},"content:en-us:blog:authors:raimund-hook.yml","en-us/blog/authors/raimund-hook.yml","en-us/blog/authors/raimund-hook",{"_path":6415,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6416,"config":6420,"_id":6421,"_type":31,"title":6417,"_source":33,"_file":6422,"_stem":6423,"_extension":36},"/en-us/blog/authors/raquel-campuzano",{"name":6417,"config":6418},"Raquel Campuzano",{"headshot":767,"ctfId":6419},"Raquel-Campuzano",{"template":736},"content:en-us:blog:authors:raquel-campuzano.yml","en-us/blog/authors/raquel-campuzano.yml","en-us/blog/authors/raquel-campuzano",{"_path":6425,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6426,"config":6430,"_id":6431,"_type":31,"title":6427,"_source":33,"_file":6432,"_stem":6433,"_extension":36},"/en-us/blog/authors/ray-paik",{"name":6427,"config":6428},"Ray Paik",{"headshot":7,"ctfId":6429},"rpaik",{"template":736},"content:en-us:blog:authors:ray-paik.yml","en-us/blog/authors/ray-paik.yml","en-us/blog/authors/ray-paik",{"_path":6435,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6436,"config":6441,"_id":6442,"_type":31,"title":6437,"_source":33,"_file":6443,"_stem":6444,"_extension":36},"/en-us/blog/authors/rayana-verissimo",{"name":6437,"config":6438},"Rayana Verissimo",{"headshot":6439,"ctfId":6440},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679581/Blog/Author%20Headshots/rayana-headshot.png","rayana",{"template":736},"content:en-us:blog:authors:rayana-verissimo.yml","en-us/blog/authors/rayana-verissimo.yml","en-us/blog/authors/rayana-verissimo",{"_path":6446,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6447,"config":6451,"_id":6453,"_type":31,"title":6454,"_source":33,"_file":6455,"_stem":6456,"_extension":36},"/en-us/blog/authors/rebeca-fenoy-anthony",{"name":6448,"config":6449},"Rebeca Fenoy-Anthony",{"headshot":6450},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1756988188/r1og9bwc9mxwxqeoehyi.png",{"template":736,"gitlabHandle":6452},"rfenoyanthony","content:en-us:blog:authors:rebeca-fenoy-anthony.yml","Rebeca Fenoy Anthony","en-us/blog/authors/rebeca-fenoy-anthony.yml","en-us/blog/authors/rebeca-fenoy-anthony",{"_path":6458,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6459,"config":6463,"_id":6464,"_type":31,"title":6460,"_source":33,"_file":6465,"_stem":6466,"_extension":36},"/en-us/blog/authors/rebecca-dodd",{"name":6460,"config":6461},"Rebecca Dodd",{"headshot":767,"ctfId":6462},"Rebecca-Dodd",{"template":736},"content:en-us:blog:authors:rebecca-dodd.yml","en-us/blog/authors/rebecca-dodd.yml","en-us/blog/authors/rebecca-dodd",{"_path":6468,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6469,"config":6473,"_id":6474,"_type":31,"title":6470,"_source":33,"_file":6475,"_stem":6476,"_extension":36},"/en-us/blog/authors/regis-freyd",{"name":6470,"config":6471},"Regis Freyd",{"headshot":767,"ctfId":6472},"Regis-Freyd",{"template":736},"content:en-us:blog:authors:regis-freyd.yml","en-us/blog/authors/regis-freyd.yml","en-us/blog/authors/regis-freyd",{"_path":6478,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6479,"config":6484,"_id":6485,"_type":31,"title":6480,"_source":33,"_file":6486,"_stem":6487,"_extension":36},"/en-us/blog/authors/regnard-raquedan",{"name":6480,"config":6481},"Regnard Raquedan",{"headshot":6482,"ctfId":6483},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663118/Blog/Author%20Headshots/regnard_raquedan_headshot.png","rraquedan",{"template":736},"content:en-us:blog:authors:regnard-raquedan.yml","en-us/blog/authors/regnard-raquedan.yml","en-us/blog/authors/regnard-raquedan",{"_path":6489,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6490,"config":6494,"_id":6495,"_type":31,"title":6491,"_source":33,"_file":6496,"_stem":6497,"_extension":36},"/en-us/blog/authors/renato-stanic",{"name":6491,"config":6492},"Renato Stanic",{"headshot":7,"ctfId":6493},"rstanic12",{"template":736},"content:en-us:blog:authors:renato-stanic.yml","en-us/blog/authors/renato-stanic.yml","en-us/blog/authors/renato-stanic",{"_path":6499,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6500,"config":6505,"_id":6506,"_type":31,"title":6501,"_source":33,"_file":6507,"_stem":6508,"_extension":36},"/en-us/blog/authors/ricardo-amarilla-villalba",{"name":6501,"config":6502},"Ricardo Amarilla Villalba",{"headshot":6503,"ctfId":6504},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659922/Blog/Author%20Headshots/amarilla_headshot.png","4WSHcpkt7wBzARJQ1JkIMm",{"template":736},"content:en-us:blog:authors:ricardo-amarilla-villalba.yml","en-us/blog/authors/ricardo-amarilla-villalba.yml","en-us/blog/authors/ricardo-amarilla-villalba",{"_path":6510,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6511,"config":6515,"_id":6516,"_type":31,"title":6512,"_source":33,"_file":6517,"_stem":6518,"_extension":36},"/en-us/blog/authors/riccardo-padovani",{"name":6512,"config":6513},"Riccardo Padovani",{"headshot":767,"ctfId":6514},"Riccardo-Padovani",{"template":736},"content:en-us:blog:authors:riccardo-padovani.yml","en-us/blog/authors/riccardo-padovani.yml","en-us/blog/authors/riccardo-padovani",{"_path":6520,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6521,"config":6526,"_id":6527,"_type":31,"title":6528,"_source":33,"_file":6529,"_stem":6530,"_extension":36},"/en-us/blog/authors/rmy-coutable",{"name":6522,"config":6523},"Rémy Coutable",{"headshot":6524,"ctfId":6525},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667148/Blog/Author%20Headshots/rymai-headshot.jpg","rymai",{"template":736},"content:en-us:blog:authors:rmy-coutable.yml","Rmy Coutable","en-us/blog/authors/rmy-coutable.yml","en-us/blog/authors/rmy-coutable",{"_path":6532,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6533,"config":6538,"_id":6539,"_type":31,"title":6534,"_source":33,"_file":6540,"_stem":6541,"_extension":36},"/en-us/blog/authors/rob-jackson",{"name":6534,"config":6535},"Rob Jackson",{"headshot":6536,"ctfId":6537},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664773/Blog/Author%20Headshots/rob_jackson_headshot.png","12y1rDDleLKyUs9QhZFDQe",{"template":736},"content:en-us:blog:authors:rob-jackson.yml","en-us/blog/authors/rob-jackson.yml","en-us/blog/authors/rob-jackson",{"_path":6543,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6544,"config":6548,"_id":6549,"_type":31,"title":6545,"_source":33,"_file":6550,"_stem":6551,"_extension":36},"/en-us/blog/authors/rob-ribeiro",{"name":6545,"config":6546},"Rob Ribeiro",{"headshot":767,"ctfId":6547},"Rob-Ribeiro",{"template":736},"content:en-us:blog:authors:rob-ribeiro.yml","en-us/blog/authors/rob-ribeiro.yml","en-us/blog/authors/rob-ribeiro",{"_path":6553,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6554,"config":6558,"_id":6559,"_type":31,"title":6555,"_source":33,"_file":6560,"_stem":6561,"_extension":36},"/en-us/blog/authors/robert-speicher",{"name":6555,"config":6556},"Robert Speicher",{"headshot":7,"ctfId":6557},"rspeicher",{"template":736},"content:en-us:blog:authors:robert-speicher.yml","en-us/blog/authors/robert-speicher.yml","en-us/blog/authors/robert-speicher",{"_path":6563,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6564,"config":6569,"_id":6570,"_type":31,"title":6565,"_source":33,"_file":6571,"_stem":6572,"_extension":36},"/en-us/blog/authors/robert-williams",{"name":6565,"config":6566},"Robert Williams",{"headshot":6567,"ctfId":6568},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682973/Blog/Author%20Headshots/r_williams-headshot.png","rwilliams",{"template":736},"content:en-us:blog:authors:robert-williams.yml","en-us/blog/authors/robert-williams.yml","en-us/blog/authors/robert-williams",{"_path":6574,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6575,"config":6581,"_id":6582,"_type":31,"title":6576,"_source":33,"_file":6583,"_stem":6584,"_extension":36},"/en-us/blog/authors/robin-schulman",{"name":6576,"config":6577,"role":6580},"Robin Schulman",{"headshot":6578,"ctfId":6579},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665748/Blog/Author%20Headshots/robin-headshot.png","robin","Chief Legal Officer and Head of Corporate Affairs",{"template":736},"content:en-us:blog:authors:robin-schulman.yml","en-us/blog/authors/robin-schulman.yml","en-us/blog/authors/robin-schulman",{"_path":6586,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6587,"config":6591,"_id":6592,"_type":31,"title":6588,"_source":33,"_file":6593,"_stem":6594,"_extension":36},"/en-us/blog/authors/roger-woo",{"name":6588,"config":6589},"Roger Woo",{"headshot":767,"ctfId":6590},"rogerwoo",{"template":736},"content:en-us:blog:authors:roger-woo.yml","en-us/blog/authors/roger-woo.yml","en-us/blog/authors/roger-woo",{"_path":6596,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6597,"config":6603,"_id":6604,"_type":31,"title":6605,"_source":33,"_file":6606,"_stem":6607,"_extension":36},"/en-us/blog/authors/rohit-shambhuni",{"role":6598,"name":6599,"config":6600},"Staff Application Security Engineer"," Rohit Shambhuni",{"headshot":6601,"ctfId":6602},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749661924/Blog/Author%20Headshots/rohit.png","182K42TpkCqjIAwBkZxTmD",{"template":736},"content:en-us:blog:authors:rohit-shambhuni.yml","Rohit Shambhuni","en-us/blog/authors/rohit-shambhuni.yml","en-us/blog/authors/rohit-shambhuni",{"_path":6609,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6610,"config":6614,"_id":6615,"_type":31,"title":6611,"_source":33,"_file":6616,"_stem":6617,"_extension":36},"/en-us/blog/authors/roman-kuba",{"name":6611,"config":6612},"Roman Kuba",{"headshot":7,"ctfId":6613},"rkuba",{"template":736},"content:en-us:blog:authors:roman-kuba.yml","en-us/blog/authors/roman-kuba.yml","en-us/blog/authors/roman-kuba",{"_path":6619,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6620,"config":6625,"_id":6626,"_type":31,"title":6627,"_source":33,"_file":6628,"_stem":6629,"_extension":36},"/en-us/blog/authors/romuald-atchad",{"name":6621,"config":6622},"Romuald Atchadé",{"headshot":6623,"ctfId":6624},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749683323/Blog/Author%20Headshots/romuald_headshot.png","UlDEnaT6wqUdPZMmBKpE2",{"template":736},"content:en-us:blog:authors:romuald-atchad.yml","Romuald Atchad","en-us/blog/authors/romuald-atchad.yml","en-us/blog/authors/romuald-atchad",{"_path":6631,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6632,"config":6636,"_id":6637,"_type":31,"title":6638,"_source":33,"_file":6639,"_stem":6640,"_extension":36},"/en-us/blog/authors/ronald-van-zon",{"name":6633,"config":6634},"Ronald van Zon",{"headshot":7,"ctfId":6635},"Eagllus",{"template":736},"content:en-us:blog:authors:ronald-van-zon.yml","Ronald Van Zon","en-us/blog/authors/ronald-van-zon.yml","en-us/blog/authors/ronald-van-zon",{"_path":6642,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6643,"config":6647,"_id":6648,"_type":31,"title":6644,"_source":33,"_file":6649,"_stem":6650,"_extension":36},"/en-us/blog/authors/ross-fuhrman",{"name":6644,"config":6645},"Ross Fuhrman",{"headshot":767,"ctfId":6646},"7dkuWBvIc0AQanUclt3pOk",{"template":736},"content:en-us:blog:authors:ross-fuhrman.yml","en-us/blog/authors/ross-fuhrman.yml","en-us/blog/authors/ross-fuhrman",{"_path":6652,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6653,"config":6657,"_id":6658,"_type":31,"title":6654,"_source":33,"_file":6659,"_stem":6660,"_extension":36},"/en-us/blog/authors/roy-taragan",{"name":6654,"config":6655},"Roy Taragan",{"headshot":767,"ctfId":6656},"3pnwP9gqELfda3DCOQJQCL",{"template":736},"content:en-us:blog:authors:roy-taragan.yml","en-us/blog/authors/roy-taragan.yml","en-us/blog/authors/roy-taragan",{"_path":6662,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6663,"config":6668,"_id":6669,"_type":31,"title":6664,"_source":33,"_file":6670,"_stem":6671,"_extension":36},"/en-us/blog/authors/ruby-nealon",{"name":6664,"config":6665},"Ruby Nealon",{"headshot":6666,"ctfId":6667},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749661883/Blog/Author%20Headshots/ruby_nealon_headshot.png","4N7iu9ue1QnoovueNm4S7r",{"template":736},"content:en-us:blog:authors:ruby-nealon.yml","en-us/blog/authors/ruby-nealon.yml","en-us/blog/authors/ruby-nealon",{"_path":6673,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6674,"config":6678,"_id":6679,"_type":31,"title":6675,"_source":33,"_file":6680,"_stem":6681,"_extension":36},"/en-us/blog/authors/rupert-douglas",{"name":6675,"config":6676},"Rupert Douglas",{"headshot":7,"ctfId":6677},"rdouglasgitlab",{"template":736},"content:en-us:blog:authors:rupert-douglas.yml","en-us/blog/authors/rupert-douglas.yml","en-us/blog/authors/rupert-douglas",{"_path":6683,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6684,"config":6688,"_id":6689,"_type":31,"title":6690,"_source":33,"_file":6691,"_stem":6692,"_extension":36},"/en-us/blog/authors/rusty-weston-guest-contributor",{"name":6685,"config":6686},"Rusty Weston, Guest Contributor",{"headshot":7,"ctfId":6687},"3PShSyZ6DJXnkDa5xrQs7V",{"template":736},"content:en-us:blog:authors:rusty-weston-guest-contributor.yml","Rusty Weston Guest Contributor","en-us/blog/authors/rusty-weston-guest-contributor.yml","en-us/blog/authors/rusty-weston-guest-contributor",{"_path":6694,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6695,"config":6700,"_id":6701,"_type":31,"title":6696,"_source":33,"_file":6702,"_stem":6703,"_extension":36},"/en-us/blog/authors/rutvik-shah",{"name":6696,"config":6697},"Rutvik Shah",{"headshot":6698,"ctfId":6699},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749661843/Blog/Author%20Headshots/rutvik_shah_headshot.png","6co92rUBTbWcyV3EW23iEx",{"template":736},"content:en-us:blog:authors:rutvik-shah.yml","en-us/blog/authors/rutvik-shah.yml","en-us/blog/authors/rutvik-shah",{"_path":6705,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6706,"config":6711,"_id":6712,"_type":31,"title":6707,"_source":33,"_file":6713,"_stem":6714,"_extension":36},"/en-us/blog/authors/sacha-guyon",{"name":6707,"config":6708},"Sacha Guyon",{"headshot":6709,"ctfId":6710},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664566/Blog/Author%20Headshots/sacha_guyon_headshot.png","24pBtwb7WTU9fJB9qfqJYu",{"template":736},"content:en-us:blog:authors:sacha-guyon.yml","en-us/blog/authors/sacha-guyon.yml","en-us/blog/authors/sacha-guyon",{"_path":6716,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6717,"config":6722,"_id":6723,"_type":31,"title":6718,"_source":33,"_file":6724,"_stem":6725,"_extension":36},"/en-us/blog/authors/safwan-ahmed",{"name":6718,"config":6719},"Safwan Ahmed",{"headshot":6720,"ctfId":6721},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667732/Blog/Author%20Headshots/safwan_headshot.png","2Nw8KPOPpRBiBrVxMIaEn3",{"template":736},"content:en-us:blog:authors:safwan-ahmed.yml","en-us/blog/authors/safwan-ahmed.yml","en-us/blog/authors/safwan-ahmed",{"_path":6727,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6728,"config":6732,"_id":6734,"_type":31,"title":6729,"_source":33,"_file":6735,"_stem":6736,"_extension":36},"/en-us/blog/authors/salahddine-aberkan",{"name":6729,"config":6730},"Salahddine Aberkan",{"headshot":6731},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750434234/comdtybiix8pjqdpsxow.png",{"template":736,"gitlabHandle":6733},"saberkan","content:en-us:blog:authors:salahddine-aberkan.yml","en-us/blog/authors/salahddine-aberkan.yml","en-us/blog/authors/salahddine-aberkan",{"_path":6738,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6739,"config":6744,"_id":6745,"_type":31,"title":6740,"_source":33,"_file":6746,"_stem":6747,"_extension":36},"/en-us/blog/authors/salman-ladha",{"name":6740,"config":6741},"Salman Ladha",{"headshot":6742,"ctfId":6743},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662937/Blog/Author%20Headshots/salman_ladha_headshot.png","2AYyG99S9PBB8PQIJ6aKuq",{"template":736},"content:en-us:blog:authors:salman-ladha.yml","en-us/blog/authors/salman-ladha.yml","en-us/blog/authors/salman-ladha",{"_path":6749,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6750,"config":6755,"_id":6756,"_type":31,"title":6751,"_source":33,"_file":6757,"_stem":6758,"_extension":36},"/en-us/blog/authors/sam-beckham",{"name":6751,"config":6752},"Sam Beckham",{"headshot":6753,"ctfId":6754},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749678740/Blog/Author%20Headshots/samdbeckham-headshot.jpg","samdbeckham",{"template":736},"content:en-us:blog:authors:sam-beckham.yml","en-us/blog/authors/sam-beckham.yml","en-us/blog/authors/sam-beckham",{"_path":6760,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6761,"config":6766,"_id":6767,"_type":31,"title":6762,"_source":33,"_file":6768,"_stem":6769,"_extension":36},"/en-us/blog/authors/sam-kerr",{"name":6762,"config":6763},"Sam Kerr",{"headshot":6764,"ctfId":6765},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749668841/Blog/Author%20Headshots/stkerr-headshot.jpg","stkerr",{"template":736},"content:en-us:blog:authors:sam-kerr.yml","en-us/blog/authors/sam-kerr.yml","en-us/blog/authors/sam-kerr",{"_path":6771,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6772,"config":6777,"_id":6778,"_type":31,"title":6773,"_source":33,"_file":6779,"_stem":6780,"_extension":36},"/en-us/blog/authors/sam-morris",{"name":6773,"config":6774},"Sam Morris",{"headshot":6775,"ctfId":6776},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749660148/Blog/Author%20Headshots/sam_morris.png","6JTrhUIqSCU30Y9KZOaan8",{"template":736},"content:en-us:blog:authors:sam-morris.yml","en-us/blog/authors/sam-morris.yml","en-us/blog/authors/sam-morris",{"_path":6782,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6783,"config":6788,"_id":6789,"_type":31,"title":6784,"_source":33,"_file":6790,"_stem":6791,"_extension":36},"/en-us/blog/authors/sam-white",{"name":6784,"config":6785},"Sam White",{"headshot":6786,"ctfId":6787},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682227/Blog/Author%20Headshots/sam.png","samwhite",{"template":736},"content:en-us:blog:authors:sam-white.yml","en-us/blog/authors/sam-white.yml","en-us/blog/authors/sam-white",{"_path":6793,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6794,"config":6799,"_id":6800,"_type":31,"title":6795,"_source":33,"_file":6801,"_stem":6802,"_extension":36},"/en-us/blog/authors/sam-wiskow",{"name":6795,"config":6796},"Sam Wiskow",{"headshot":6797,"ctfId":6798},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659433/Blog/Author%20Headshots/swiskow-headshot.jpg","swiskow",{"template":736},"content:en-us:blog:authors:sam-wiskow.yml","en-us/blog/authors/sam-wiskow.yml","en-us/blog/authors/sam-wiskow",{"_path":6804,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6805,"config":6810,"_id":6811,"_type":31,"title":6806,"_source":33,"_file":6812,"_stem":6813,"_extension":36},"/en-us/blog/authors/samantha-lee",{"name":6806,"config":6807},"Samantha Lee",{"headshot":6808,"ctfId":6809},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679833/Blog/Author%20Headshots/slee24-headshot.png","slee24",{"template":736},"content:en-us:blog:authors:samantha-lee.yml","en-us/blog/authors/samantha-lee.yml","en-us/blog/authors/samantha-lee",{"_path":6815,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6816,"config":6820,"_id":6821,"_type":31,"title":6822,"_source":33,"_file":6823,"_stem":6824,"_extension":36},"/en-us/blog/authors/sameer-farooqui-octoml",{"name":6817,"config":6818},"Sameer Farooqui, OctoML",{"headshot":767,"ctfId":6819},"Sameer-Farooqui-OctoML",{"template":736},"content:en-us:blog:authors:sameer-farooqui-octoml.yml","Sameer Farooqui Octoml","en-us/blog/authors/sameer-farooqui-octoml.yml","en-us/blog/authors/sameer-farooqui-octoml",{"_path":6826,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6827,"config":6832,"_id":6833,"_type":31,"title":6828,"_source":33,"_file":6834,"_stem":6835,"_extension":36},"/en-us/blog/authors/sameer-kamani",{"name":6828,"config":6829},"Sameer Kamani",{"headshot":6830,"ctfId":6831},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682359/Blog/Author%20Headshots/skamani-headshot.jpg","skamani",{"template":736},"content:en-us:blog:authors:sameer-kamani.yml","en-us/blog/authors/sameer-kamani.yml","en-us/blog/authors/sameer-kamani",{"_path":6837,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6838,"config":6843,"_id":6844,"_type":31,"title":6839,"_source":33,"_file":6845,"_stem":6846,"_extension":36},"/en-us/blog/authors/samer-akkoub",{"name":6839,"config":6840},"Samer Akkoub",{"headshot":6841,"ctfId":6842},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664173/Blog/Author%20Headshots/SamerAkkoub.png","BekAzK0RFux30pt6dvtWh",{"template":736},"content:en-us:blog:authors:samer-akkoub.yml","en-us/blog/authors/samer-akkoub.yml","en-us/blog/authors/samer-akkoub",{"_path":6848,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6849,"config":6853,"_id":6854,"_type":31,"title":6850,"_source":33,"_file":6855,"_stem":6856,"_extension":36},"/en-us/blog/authors/samuel-alfageme",{"name":6850,"config":6851},"Samuel Alfageme",{"headshot":767,"ctfId":6852},"Samuel-Alfageme",{"template":736},"content:en-us:blog:authors:samuel-alfageme.yml","en-us/blog/authors/samuel-alfageme.yml","en-us/blog/authors/samuel-alfageme",{"_path":6858,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6859,"config":6866,"_id":6867,"_type":31,"title":6861,"_source":33,"_file":6868,"_stem":6869,"_extension":36},"/en-us/blog/authors/sandra-gittlen",{"role":6860,"name":6861,"config":6862},"Managing Editor, GitLab Blog","Sandra Gittlen",{"headshot":6863,"linkedin":6864,"ctfId":6865},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659648/Blog/Author%20Headshots/Sgittlen-headshot.jpg","https://www.linkedin.com/in/sandra-gittlen-48557a294/","sgittlen",{"template":736},"content:en-us:blog:authors:sandra-gittlen.yml","en-us/blog/authors/sandra-gittlen.yml","en-us/blog/authors/sandra-gittlen",{"_path":6871,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6872,"config":6876,"_id":6877,"_type":31,"title":6873,"_source":33,"_file":6878,"_stem":6879,"_extension":36},"/en-us/blog/authors/sandra-salerno",{"name":6873,"config":6874},"Sandra Salerno",{"headshot":767,"ctfId":6875},"Sandra-Salerno",{"template":736},"content:en-us:blog:authors:sandra-salerno.yml","en-us/blog/authors/sandra-salerno.yml","en-us/blog/authors/sandra-salerno",{"_path":6881,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6882,"config":6886,"_id":6887,"_type":31,"title":6888,"_source":33,"_file":6889,"_stem":6890,"_extension":36},"/en-us/blog/authors/santiago-ruano-rincn",{"name":6883,"config":6884},"Santiago Ruano Rincón",{"headshot":7,"ctfId":6885},"topodelapradera",{"template":736},"content:en-us:blog:authors:santiago-ruano-rincn.yml","Santiago Ruano Rincn","en-us/blog/authors/santiago-ruano-rincn.yml","en-us/blog/authors/santiago-ruano-rincn",{"_path":6892,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6893,"config":6897,"_id":6898,"_type":31,"title":6894,"_source":33,"_file":6899,"_stem":6900,"_extension":36},"/en-us/blog/authors/sara-kassabian",{"name":6894,"config":6895},"Sara Kassabian",{"headshot":7,"ctfId":6896},"skassabian",{"template":736},"content:en-us:blog:authors:sara-kassabian.yml","en-us/blog/authors/sara-kassabian.yml","en-us/blog/authors/sara-kassabian",{"_path":6902,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6903,"config":6908,"_id":6909,"_type":31,"title":6904,"_source":33,"_file":6910,"_stem":6911,"_extension":36},"/en-us/blog/authors/sara-meadzinger",{"name":6904,"config":6905},"Sara Meadzinger",{"headshot":6906,"ctfId":6907},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750713474/ucbe3kgq9cylttuqy5lt.png","53lD8Rb05nXLHefXurjdvI",{"template":736},"content:en-us:blog:authors:sara-meadzinger.yml","en-us/blog/authors/sara-meadzinger.yml","en-us/blog/authors/sara-meadzinger",{"_path":6913,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6914,"config":6918,"_id":6919,"_type":31,"title":6915,"_source":33,"_file":6920,"_stem":6921,"_extension":36},"/en-us/blog/authors/sarah-daily",{"name":6915,"config":6916},"Sarah Daily",{"headshot":767,"ctfId":6917},"2YhqRPG08HF0FCF1l7oeZL",{"template":736},"content:en-us:blog:authors:sarah-daily.yml","en-us/blog/authors/sarah-daily.yml","en-us/blog/authors/sarah-daily",{"_path":6923,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6924,"config":6928,"_id":6929,"_type":31,"title":6925,"_source":33,"_file":6930,"_stem":6931,"_extension":36},"/en-us/blog/authors/sarah-german",{"name":6925,"config":6926},"Sarah German",{"headshot":6927,"ctfId":4585},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1755639969/jgc97wpptft48qsbrla7.jpg",{"template":736},"content:en-us:blog:authors:sarah-german.yml","en-us/blog/authors/sarah-german.yml","en-us/blog/authors/sarah-german",{"_path":6933,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6934,"config":6939,"_id":6940,"_type":31,"title":6935,"_source":33,"_file":6941,"_stem":6942,"_extension":36},"/en-us/blog/authors/sarah-matthies",{"name":6935,"config":6936},"Sarah Matthies",{"headshot":6937,"ctfId":6938},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664405/Blog/Author%20Headshots/Screenshot_2024-11-19_at_9.50.14_AM.png","2Giv8NnS4VVAq9RsHYqHkg",{"template":736},"content:en-us:blog:authors:sarah-matthies.yml","en-us/blog/authors/sarah-matthies.yml","en-us/blog/authors/sarah-matthies",{"_path":6944,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6945,"config":6949,"_id":6950,"_type":31,"title":6951,"_source":33,"_file":6952,"_stem":6953,"_extension":36},"/en-us/blog/authors/sarah-odonnell",{"name":6946,"config":6947},"Sarah O’Donnell",{"headshot":7,"ctfId":6948},"sarahod",{"template":736},"content:en-us:blog:authors:sarah-odonnell.yml","Sarah Odonnell","en-us/blog/authors/sarah-odonnell.yml","en-us/blog/authors/sarah-odonnell",{"_path":6955,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6956,"config":6961,"_id":6962,"_type":31,"title":6957,"_source":33,"_file":6963,"_stem":6964,"_extension":36},"/en-us/blog/authors/sarah-waldner",{"name":6957,"config":6958},"Sarah Waldner",{"headshot":6959,"ctfId":6960},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667588/Blog/Author%20Headshots/sarahwaldner-headshot.png","sarahwaldner",{"template":736},"content:en-us:blog:authors:sarah-waldner.yml","en-us/blog/authors/sarah-waldner.yml","en-us/blog/authors/sarah-waldner",{"_path":6966,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6967,"config":6971,"_id":6972,"_type":31,"title":6968,"_source":33,"_file":6973,"_stem":6974,"_extension":36},"/en-us/blog/authors/sarrah-vesselov",{"name":6968,"config":6969},"Sarrah Vesselov",{"headshot":7,"ctfId":6970},"sarrahvesselov",{"template":736},"content:en-us:blog:authors:sarrah-vesselov.yml","en-us/blog/authors/sarrah-vesselov.yml","en-us/blog/authors/sarrah-vesselov",{"_path":6976,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6977,"config":6981,"_id":6982,"_type":31,"title":6978,"_source":33,"_file":6983,"_stem":6984,"_extension":36},"/en-us/blog/authors/sarup-banskota",{"name":6978,"config":6979},"Sarup Banskota",{"headshot":767,"ctfId":6980},"3sY2Ef0sXxaJKCmArdSLsA",{"template":736},"content:en-us:blog:authors:sarup-banskota.yml","en-us/blog/authors/sarup-banskota.yml","en-us/blog/authors/sarup-banskota",{"_path":6986,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6987,"config":6992,"_id":6993,"_type":31,"title":6988,"_source":33,"_file":6994,"_stem":6995,"_extension":36},"/en-us/blog/authors/sascha-eggenberger",{"name":6988,"config":6989},"Sascha Eggenberger",{"headshot":6990,"ctfId":6991},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666141/Blog/Author%20Headshots/sascha_eggenberger_headshot.png","O6MskfzTlsw7vLqbd86bX",{"template":736},"content:en-us:blog:authors:sascha-eggenberger.yml","en-us/blog/authors/sascha-eggenberger.yml","en-us/blog/authors/sascha-eggenberger",{"_path":6997,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":6998,"config":7002,"_id":7003,"_type":31,"title":6999,"_source":33,"_file":7004,"_stem":7005,"_extension":36},"/en-us/blog/authors/sasha-bannister",{"name":6999,"config":7000},"Sasha Bannister",{"headshot":767,"ctfId":7001},"Sasha-Bannister",{"template":736},"content:en-us:blog:authors:sasha-bannister.yml","en-us/blog/authors/sasha-bannister.yml","en-us/blog/authors/sasha-bannister",{"_path":7007,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7008,"config":7013,"_id":7014,"_type":31,"title":7009,"_source":33,"_file":7015,"_stem":7016,"_extension":36},"/en-us/blog/authors/sasha-gazlay",{"name":7009,"config":7010},"Sasha Gazlay",{"headshot":7011,"ctfId":7012},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663565/Blog/Author%20Headshots/sasha_gazlay_headshot.png","77Cb6RM2x7PjvfDc64pZxa",{"template":736},"content:en-us:blog:authors:sasha-gazlay.yml","en-us/blog/authors/sasha-gazlay.yml","en-us/blog/authors/sasha-gazlay",{"_path":7018,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7019,"config":7024,"_id":7025,"_type":31,"title":7020,"_source":33,"_file":7026,"_stem":7027,"_extension":36},"/en-us/blog/authors/saumya-upadhyaya",{"name":7020,"config":7021},"Saumya Upadhyaya",{"headshot":7022,"ctfId":7023},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665624/Blog/Author%20Headshots/supadhyaya-headshot.jpg","4aP7wXPoc3veAEWbngqxKR",{"template":736},"content:en-us:blog:authors:saumya-upadhyaya.yml","en-us/blog/authors/saumya-upadhyaya.yml","en-us/blog/authors/saumya-upadhyaya",{"_path":7029,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7030,"config":7035,"_id":7036,"_type":31,"title":7037,"_source":33,"_file":7038,"_stem":7039,"_extension":36},"/en-us/blog/authors/scott-de-jonge",{"name":7031,"config":7032},"Scott de Jonge",{"headshot":7033,"ctfId":7034},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682764/Blog/Author%20Headshots/sdejonge-headshot.jpg","sdejonge",{"template":736},"content:en-us:blog:authors:scott-de-jonge.yml","Scott De Jonge","en-us/blog/authors/scott-de-jonge.yml","en-us/blog/authors/scott-de-jonge",{"_path":7041,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7042,"config":7047,"_id":7048,"_type":31,"title":7043,"_source":33,"_file":7049,"_stem":7050,"_extension":36},"/en-us/blog/authors/scott-hampton",{"name":7043,"config":7044},"Scott Hampton",{"headshot":7045,"ctfId":7046},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682259/Blog/Author%20Headshots/shampton-headshot.png","shampton",{"template":736},"content:en-us:blog:authors:scott-hampton.yml","en-us/blog/authors/scott-hampton.yml","en-us/blog/authors/scott-hampton",{"_path":7052,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7053,"config":7057,"_id":7058,"_type":31,"title":7054,"_source":33,"_file":7059,"_stem":7060,"_extension":36},"/en-us/blog/authors/scott-williamson",{"name":7054,"config":7055},"Scott Williamson",{"headshot":7,"ctfId":7056},"sfwgitlab",{"template":736},"content:en-us:blog:authors:scott-williamson.yml","en-us/blog/authors/scott-williamson.yml","en-us/blog/authors/scott-williamson",{"_path":7062,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7063,"config":7068,"_id":7069,"_type":31,"title":7064,"_source":33,"_file":7070,"_stem":7071,"_extension":36},"/en-us/blog/authors/sean-arnold",{"name":7064,"config":7065},"Sean Arnold",{"headshot":7066,"ctfId":7067},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681647/Blog/Author%20Headshots/seanarnold-headshot.jpg","seanarnold",{"template":736},"content:en-us:blog:authors:sean-arnold.yml","en-us/blog/authors/sean-arnold.yml","en-us/blog/authors/sean-arnold",{"_path":7073,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7074,"config":7078,"_id":7079,"_type":31,"title":7080,"_source":33,"_file":7081,"_stem":7082,"_extension":36},"/en-us/blog/authors/sean-mcgivern",{"name":7075,"config":7076},"Sean McGivern",{"headshot":767,"ctfId":7077},"Sean-McGivern",{"template":736},"content:en-us:blog:authors:sean-mcgivern.yml","Sean Mcgivern","en-us/blog/authors/sean-mcgivern.yml","en-us/blog/authors/sean-mcgivern",{"_path":7084,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7085,"config":7089,"_id":7090,"_type":31,"title":7086,"_source":33,"_file":7091,"_stem":7092,"_extension":36},"/en-us/blog/authors/sean-packham",{"name":7086,"config":7087},"Sean Packham",{"headshot":767,"ctfId":7088},"Sean-Packham",{"template":736},"content:en-us:blog:authors:sean-packham.yml","en-us/blog/authors/sean-packham.yml","en-us/blog/authors/sean-packham",{"_path":7094,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7095,"config":7099,"_id":7100,"_type":31,"title":7096,"_source":33,"_file":7101,"_stem":7102,"_extension":36},"/en-us/blog/authors/sebastian-latacz",{"name":7096,"config":7097},"Sebastian Latacz",{"headshot":767,"ctfId":7098},"4DoWSQV719HEWt2rbDIoQR",{"template":736},"content:en-us:blog:authors:sebastian-latacz.yml","en-us/blog/authors/sebastian-latacz.yml","en-us/blog/authors/sebastian-latacz",{"_path":7104,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7105,"config":7109,"_id":7110,"_type":31,"title":7106,"_source":33,"_file":7111,"_stem":7112,"_extension":36},"/en-us/blog/authors/sergey-nuzhdin",{"name":7106,"config":7107},"Sergey Nuzhdin",{"headshot":767,"ctfId":7108},"Sergey-Nuzhdin",{"template":736},"content:en-us:blog:authors:sergey-nuzhdin.yml","en-us/blog/authors/sergey-nuzhdin.yml","en-us/blog/authors/sergey-nuzhdin",{"_path":7114,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7115,"config":7119,"_id":7120,"_type":31,"title":7116,"_source":33,"_file":7121,"_stem":7122,"_extension":36},"/en-us/blog/authors/seth-berger",{"name":7116,"config":7117},"Seth Berger",{"headshot":7,"ctfId":7118},"sethgitlab",{"template":736},"content:en-us:blog:authors:seth-berger.yml","en-us/blog/authors/seth-berger.yml","en-us/blog/authors/seth-berger",{"_path":7124,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7125,"config":7129,"_id":7130,"_type":31,"title":7126,"_source":33,"_file":7131,"_stem":7132,"_extension":36},"/en-us/blog/authors/shane-rice",{"name":7126,"config":7127},"Shane Rice",{"headshot":767,"ctfId":7128},"3uVL7xMsEf13JzpbXYTCbM",{"template":736},"content:en-us:blog:authors:shane-rice.yml","en-us/blog/authors/shane-rice.yml","en-us/blog/authors/shane-rice",{"_path":7134,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7135,"config":7140,"_id":7141,"_type":31,"title":7136,"_source":33,"_file":7142,"_stem":7143,"_extension":36},"/en-us/blog/authors/sharon-gaudin",{"name":7136,"config":7137},"Sharon Gaudin",{"headshot":7138,"ctfId":7139},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663767/Blog/Author%20Headshots/sharongaudinheadshot.png","sgaudin",{"template":736},"content:en-us:blog:authors:sharon-gaudin.yml","en-us/blog/authors/sharon-gaudin.yml","en-us/blog/authors/sharon-gaudin",{"_path":7145,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7146,"config":7150,"_id":7151,"_type":31,"title":7147,"_source":33,"_file":7152,"_stem":7153,"_extension":36},"/en-us/blog/authors/shawn-winters",{"name":7147,"config":7148},"Shawn Winters",{"headshot":7,"ctfId":7149},"ShawnWinters",{"template":736},"content:en-us:blog:authors:shawn-winters.yml","en-us/blog/authors/shawn-winters.yml","en-us/blog/authors/shawn-winters",{"_path":7155,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7156,"config":7160,"_id":7161,"_type":31,"title":7162,"_source":33,"_file":7163,"_stem":7164,"_extension":36},"/en-us/blog/authors/sherida-mcmullan",{"name":7157,"config":7158},"Sherida McMullan",{"headshot":767,"ctfId":7159},"BpqiUFXm6aUxjXJdAeKuL",{"template":736},"content:en-us:blog:authors:sherida-mcmullan.yml","Sherida Mcmullan","en-us/blog/authors/sherida-mcmullan.yml","en-us/blog/authors/sherida-mcmullan",{"_path":7166,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7167,"config":7171,"_id":7172,"_type":31,"title":7168,"_source":33,"_file":7173,"_stem":7174,"_extension":36},"/en-us/blog/authors/shinya-maeda",{"name":7168,"config":7169},"Shinya Maeda",{"headshot":7,"ctfId":7170},"dosuken123",{"template":736},"content:en-us:blog:authors:shinya-maeda.yml","en-us/blog/authors/shinya-maeda.yml","en-us/blog/authors/shinya-maeda",{"_path":7176,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7177,"config":7182,"_id":7183,"_type":31,"title":7178,"_source":33,"_file":7184,"_stem":7185,"_extension":36},"/en-us/blog/authors/shrishti-choudhary",{"name":7178,"config":7179},"Shrishti Choudhary",{"headshot":7180,"ctfId":7181},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749671923/Blog/Author%20Headshots/shrishti.png","5tIiu8vyhWHEUi1tgQivzj",{"template":736},"content:en-us:blog:authors:shrishti-choudhary.yml","en-us/blog/authors/shrishti-choudhary.yml","en-us/blog/authors/shrishti-choudhary",{"_path":7187,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7188,"config":7197,"_id":7198,"_type":31,"title":7190,"_source":33,"_file":7199,"_stem":7200,"_extension":36},"/en-us/blog/authors/sid-sijbrandij",{"role":7189,"name":7190,"bio":7191,"config":7192},"Co-founder, Chief Executive Officer and Board Chair of GitLab Inc.","Sid Sijbrandij","Sid Sijbrandij (pronounced see-brandy) is the Co-founder, Chief Executive Officer and Board Chair of GitLab Inc., the most comprehensive AI-powered DevSecOps platform. GitLab's single application helps organizations deliver software faster and more efficiently while strengthening their security and compliance.\n\nSid's career path has been anything but traditional. He spent four years building recreational submarines for U-Boat Worx and while at Ministerie van Justitie en Veiligheid he worked on the Legis project, which developed several innovative web applications to aid lawmaking. He first saw Ruby code in 2007 and loved it so much that he taught himself how to program. In 2012, as a Ruby programmer, he encountered GitLab and discovered his passion for open source. Soon after, Sid commercialized GitLab, and by 2015 he led the company through Y Combinator's Winter 2015 batch. Under his leadership, the company has grown with an estimated 30 million+ registered users from startups to global enterprises.\n\nSid studied at the University of Twente in the Netherlands where he received an M.S. in Management Science. Sid was named one of the greatest minds of the pandemic by Forbes for spreading the gospel of remote work.",{"headshot":7193,"twitter":7194,"linkedin":7195,"ctfId":7196},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665383/Blog/Author%20Headshots/sytses-headshot.png","https://twitter.com/sytses","https://www.linkedin.com/in/sijbrandij","sytses",{"template":736},"content:en-us:blog:authors:sid-sijbrandij.yml","en-us/blog/authors/sid-sijbrandij.yml","en-us/blog/authors/sid-sijbrandij",{"_path":7202,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7203,"config":7208,"_id":7209,"_type":31,"title":7204,"_source":33,"_file":7210,"_stem":7211,"_extension":36},"/en-us/blog/authors/siddharth-mathur",{"name":7204,"config":7205},"Siddharth Mathur",{"headshot":7206,"ctfId":7207},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682662/Blog/Author%20Headshots/smathur-headshot.png","smathur",{"template":736},"content:en-us:blog:authors:siddharth-mathur.yml","en-us/blog/authors/siddharth-mathur.yml","en-us/blog/authors/siddharth-mathur",{"_path":7213,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7214,"config":7218,"_id":7219,"_type":31,"title":7215,"_source":33,"_file":7220,"_stem":7221,"_extension":36},"/en-us/blog/authors/simon-tarchichi",{"name":7215,"config":7216},"Simon Tarchichi",{"headshot":7,"ctfId":7217},"kartsims",{"template":736},"content:en-us:blog:authors:simon-tarchichi.yml","en-us/blog/authors/simon-tarchichi.yml","en-us/blog/authors/simon-tarchichi",{"_path":7223,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7224,"config":7229,"_id":7230,"_type":31,"title":7225,"_source":33,"_file":7231,"_stem":7232,"_extension":36},"/en-us/blog/authors/sophia-manicor",{"name":7225,"config":7226},"Sophia Manicor",{"headshot":7227,"ctfId":7228},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665576/Blog/Author%20Headshots/sophie_manicor_headshot.png","79Msqcc9YZrC0IvTggfQ5y",{"template":736},"content:en-us:blog:authors:sophia-manicor.yml","en-us/blog/authors/sophia-manicor.yml","en-us/blog/authors/sophia-manicor",{"_path":7234,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7235,"config":7240,"_id":7241,"_type":31,"title":7236,"_source":33,"_file":7242,"_stem":7243,"_extension":36},"/en-us/blog/authors/sri-rangan",{"name":7236,"config":7237},"Sri Rangan",{"headshot":7238,"ctfId":7239},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665808/Blog/Author%20Headshots/sri19-headshot.jpg","sri19",{"template":736},"content:en-us:blog:authors:sri-rangan.yml","en-us/blog/authors/sri-rangan.yml","en-us/blog/authors/sri-rangan",{"_path":7245,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7246,"config":7251,"_id":7252,"_type":31,"title":7247,"_source":33,"_file":7253,"_stem":7254,"_extension":36},"/en-us/blog/authors/stacy-cline",{"name":7247,"config":7248},"Stacy Cline",{"headshot":7249,"ctfId":7250},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669909/Blog/Author%20Headshots/stacycline.jpg","5a2wvqC09jbT1kGMpVoNyg",{"template":736},"content:en-us:blog:authors:stacy-cline.yml","en-us/blog/authors/stacy-cline.yml","en-us/blog/authors/stacy-cline",{"_path":7256,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7257,"config":7262,"_id":7263,"_type":31,"title":7258,"_source":33,"_file":7264,"_stem":7265,"_extension":36},"/en-us/blog/authors/stan-hu",{"name":7258,"config":7259},"Stan Hu",{"headshot":7260,"ctfId":7261},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659504/Blog/Author%20Headshots/stanhu-headshot.jpg","stanhu",{"template":736},"content:en-us:blog:authors:stan-hu.yml","en-us/blog/authors/stan-hu.yml","en-us/blog/authors/stan-hu",{"_path":7267,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7268,"config":7272,"_id":7273,"_type":31,"title":7274,"_source":33,"_file":7275,"_stem":7276,"_extension":36},"/en-us/blog/authors/stephan-hochdrfer",{"name":7269,"config":7270},"Stephan Hochdörfer",{"headshot":767,"ctfId":7271},"Stephan-Hochdrfer",{"template":736},"content:en-us:blog:authors:stephan-hochdrfer.yml","Stephan Hochdrfer","en-us/blog/authors/stephan-hochdrfer.yml","en-us/blog/authors/stephan-hochdrfer",{"_path":7278,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7279,"config":7283,"_id":7284,"_type":31,"title":7280,"_source":33,"_file":7285,"_stem":7286,"_extension":36},"/en-us/blog/authors/stephanie-garza",{"name":7280,"config":7281},"Stephanie Garza",{"headshot":7,"ctfId":7282},"StephanieGarza",{"template":736},"content:en-us:blog:authors:stephanie-garza.yml","en-us/blog/authors/stephanie-garza.yml","en-us/blog/authors/stephanie-garza",{"_path":7288,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7289,"config":7293,"_id":7294,"_type":31,"title":7295,"_source":33,"_file":7296,"_stem":7297,"_extension":36},"/en-us/blog/authors/stephen-mcguinness",{"name":7290,"config":7291},"Stephen McGuinness",{"headshot":7,"ctfId":7292},"smcguinness1",{"template":736},"content:en-us:blog:authors:stephen-mcguinness.yml","Stephen Mcguinness","en-us/blog/authors/stephen-mcguinness.yml","en-us/blog/authors/stephen-mcguinness",{"_path":7299,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7300,"config":7305,"_id":7306,"_type":31,"title":7301,"_source":33,"_file":7307,"_stem":7308,"_extension":36},"/en-us/blog/authors/stephen-walters",{"name":7301,"config":7302},"Stephen Walters",{"headshot":7303,"ctfId":7304},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664996/Blog/Author%20Headshots/stephen_walters_gitlab.png","7uMrX0SDPVz1YkZnVqLmGm",{"template":736},"content:en-us:blog:authors:stephen-walters.yml","en-us/blog/authors/stephen-walters.yml","en-us/blog/authors/stephen-walters",{"_path":7310,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7311,"config":7316,"_id":7317,"_type":31,"title":7312,"_source":33,"_file":7318,"_stem":7319,"_extension":36},"/en-us/blog/authors/steve-abrams",{"name":7312,"config":7313},"Steve Abrams",{"headshot":7314,"ctfId":7315},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681809/Blog/Author%20Headshots/sabrams-headshot.png","sabrams",{"template":736},"content:en-us:blog:authors:steve-abrams.yml","en-us/blog/authors/steve-abrams.yml","en-us/blog/authors/steve-abrams",{"_path":7321,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7322,"config":7326,"_id":7327,"_type":31,"title":7323,"_source":33,"_file":7328,"_stem":7329,"_extension":36},"/en-us/blog/authors/steve-azzopardi",{"name":7323,"config":7324},"Steve Azzopardi",{"headshot":7,"ctfId":7325},"steveazz",{"template":736},"content:en-us:blog:authors:steve-azzopardi.yml","en-us/blog/authors/steve-azzopardi.yml","en-us/blog/authors/steve-azzopardi",{"_path":7331,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7332,"config":7337,"_id":7338,"_type":31,"title":7333,"_source":33,"_file":7339,"_stem":7340,"_extension":36},"/en-us/blog/authors/steve-grossman",{"name":7333,"config":7334},"Steve Grossman",{"headshot":7335,"ctfId":7336},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682744/Blog/Author%20Headshots/Steevo-headshot.jpg","Steevo",{"template":736},"content:en-us:blog:authors:steve-grossman.yml","en-us/blog/authors/steve-grossman.yml","en-us/blog/authors/steve-grossman",{"_path":7342,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7343,"config":7347,"_id":7348,"_type":31,"title":7344,"_source":33,"_file":7349,"_stem":7350,"_extension":36},"/en-us/blog/authors/steve-ropa",{"name":7344,"config":7345},"Steve Ropa",{"headshot":767,"ctfId":7346},"Steve-Ropa",{"template":736},"content:en-us:blog:authors:steve-ropa.yml","en-us/blog/authors/steve-ropa.yml","en-us/blog/authors/steve-ropa",{"_path":7352,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7353,"config":7357,"_id":7358,"_type":31,"title":7354,"_source":33,"_file":7359,"_stem":7360,"_extension":36},"/en-us/blog/authors/steve-truong",{"name":7354,"config":7355},"Steve Truong",{"headshot":7,"ctfId":7356},"sttruong",{"template":736},"content:en-us:blog:authors:steve-truong.yml","en-us/blog/authors/steve-truong.yml","en-us/blog/authors/steve-truong",{"_path":7362,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7363,"config":7367,"_id":7368,"_type":31,"title":7364,"_source":33,"_file":7369,"_stem":7370,"_extension":36},"/en-us/blog/authors/steven-zinck",{"name":7364,"config":7365},"Steven Zinck",{"headshot":767,"ctfId":7366},"49JllsB7PFUrjj2Wi4Wa2O",{"template":736},"content:en-us:blog:authors:steven-zinck.yml","en-us/blog/authors/steven-zinck.yml","en-us/blog/authors/steven-zinck",{"_path":7372,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7373,"config":7377,"_id":7378,"_type":31,"title":7374,"_source":33,"_file":7379,"_stem":7380,"_extension":36},"/en-us/blog/authors/sunil-kowlgi",{"name":7374,"config":7375},"Sunil Kowlgi",{"headshot":767,"ctfId":7376},"Sunil-Kowlgi",{"template":736},"content:en-us:blog:authors:sunil-kowlgi.yml","en-us/blog/authors/sunil-kowlgi.yml","en-us/blog/authors/sunil-kowlgi",{"_path":7382,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7383,"config":7387,"_id":7388,"_type":31,"title":7384,"_source":33,"_file":7389,"_stem":7390,"_extension":36},"/en-us/blog/authors/suri-patel",{"name":7384,"config":7385},"Suri Patel",{"headshot":767,"ctfId":7386},"suripatel",{"template":736},"content:en-us:blog:authors:suri-patel.yml","en-us/blog/authors/suri-patel.yml","en-us/blog/authors/suri-patel",{"_path":7392,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7393,"config":7398,"_id":7399,"_type":31,"title":7394,"_source":33,"_file":7400,"_stem":7401,"_extension":36},"/en-us/blog/authors/susan-tacker",{"name":7394,"config":7395},"Susan Tacker",{"headshot":7396,"ctfId":7397},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749660253/Blog/Author%20Headshots/susantacker-headshot.jpg","6uxN75wAjT3afaKtVlr9GM",{"template":736},"content:en-us:blog:authors:susan-tacker.yml","en-us/blog/authors/susan-tacker.yml","en-us/blog/authors/susan-tacker",{"_path":7403,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7404,"config":7410,"_id":7411,"_type":31,"title":7405,"_source":33,"_file":7412,"_stem":7413,"_extension":36},"/en-us/blog/authors/susie-bitters",{"name":7405,"config":7406},"Susie Bitters",{"headshot":7407,"linkedin":7408,"ctfId":7409},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664195/Blog/Author%20Headshots/susiebittersheadshot.png","https://www.linkedin.com/in/susie-bitters-33268410/","7yiomgeGp9k4a4srjDU1QK",{"template":736},"content:en-us:blog:authors:susie-bitters.yml","en-us/blog/authors/susie-bitters.yml","en-us/blog/authors/susie-bitters",{"_path":7415,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7416,"config":7420,"_id":7421,"_type":31,"title":7417,"_source":33,"_file":7422,"_stem":7423,"_extension":36},"/en-us/blog/authors/suzanne-selhorn",{"name":7417,"config":7418},"Suzanne Selhorn",{"headshot":7419,"ctfId":4585},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1755616156/vboecuoyo8tjfdis7c5a.jpg",{"template":736},"content:en-us:blog:authors:suzanne-selhorn.yml","en-us/blog/authors/suzanne-selhorn.yml","en-us/blog/authors/suzanne-selhorn",{"_path":7425,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7426,"config":7431,"_id":7432,"_type":31,"title":7427,"_source":33,"_file":7433,"_stem":7434,"_extension":36},"/en-us/blog/authors/tanuja-jayarama-raju",{"name":7427,"config":7428},"Tanuja Jayarama Raju",{"headshot":7429,"ctfId":7430},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662262/Blog/Author%20Headshots/tanuja_jayarama_raju_headshot.png","2Fssp8ttZw6Y78hzS15kMC",{"template":736},"content:en-us:blog:authors:tanuja-jayarama-raju.yml","en-us/blog/authors/tanuja-jayarama-raju.yml","en-us/blog/authors/tanuja-jayarama-raju",{"_path":7436,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7437,"config":7442,"_id":7443,"_type":31,"title":7438,"_source":33,"_file":7444,"_stem":7445,"_extension":36},"/en-us/blog/authors/taurie-davis",{"name":7438,"config":7439},"Taurie Davis",{"headshot":7440,"ctfId":7441},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667191/Blog/Author%20Headshots/tauriedavis-headshot.jpg","tauriedavis",{"template":736},"content:en-us:blog:authors:taurie-davis.yml","en-us/blog/authors/taurie-davis.yml","en-us/blog/authors/taurie-davis",{"_path":7447,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7448,"config":7453,"_id":7454,"_type":31,"title":7455,"_source":33,"_file":7456,"_stem":7457,"_extension":36},"/en-us/blog/authors/taylor-mccaslin",{"name":7449,"config":7450},"Taylor McCaslin",{"headshot":7451,"ctfId":7452},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667996/Blog/Author%20Headshots/tmccaslin-headshot.png","tmccaslin",{"template":736},"content:en-us:blog:authors:taylor-mccaslin.yml","Taylor Mccaslin","en-us/blog/authors/taylor-mccaslin.yml","en-us/blog/authors/taylor-mccaslin",{"_path":7459,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7460,"config":7464,"_id":7465,"_type":31,"title":7461,"_source":33,"_file":7466,"_stem":7467,"_extension":36},"/en-us/blog/authors/taylor-murphy",{"name":7461,"config":7462},"Taylor Murphy",{"headshot":7,"ctfId":7463},"tayloramurphy",{"template":736},"content:en-us:blog:authors:taylor-murphy.yml","en-us/blog/authors/taylor-murphy.yml","en-us/blog/authors/taylor-murphy",{"_path":7469,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7470,"config":7475,"_id":7476,"_type":31,"title":7471,"_source":33,"_file":7477,"_stem":7478,"_extension":36},"/en-us/blog/authors/ted-gieschen",{"name":7471,"config":7472},"Ted Gieschen",{"headshot":7473,"ctfId":7474},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669010/Blog/Author%20Headshots/Screenshot_2024-06-10_at_10.16.50_AM.png","7xh91XqI5wf8CKmOr0PurA",{"template":736},"content:en-us:blog:authors:ted-gieschen.yml","en-us/blog/authors/ted-gieschen.yml","en-us/blog/authors/ted-gieschen",{"_path":7480,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7481,"config":7485,"_id":7486,"_type":31,"title":7482,"_source":33,"_file":7487,"_stem":7488,"_extension":36},"/en-us/blog/authors/thao-yeager",{"name":7482,"config":7483},"Thao Yeager",{"headshot":7,"ctfId":7484},"thaoyeager",{"template":736},"content:en-us:blog:authors:thao-yeager.yml","en-us/blog/authors/thao-yeager.yml","en-us/blog/authors/thao-yeager",{"_path":7490,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7491,"config":7496,"_id":7497,"_type":31,"title":7498,"_source":33,"_file":7499,"_stem":7500,"_extension":36},"/en-us/blog/authors/thiago-figueir",{"name":7492,"config":7493},"Thiago Figueiró",{"headshot":7494,"ctfId":7495},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667091/Blog/Author%20Headshots/thiagocsf-headshot.jpg","thiagocsf",{"template":736},"content:en-us:blog:authors:thiago-figueir.yml","Thiago Figueir","en-us/blog/authors/thiago-figueir.yml","en-us/blog/authors/thiago-figueir",{"_path":7502,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7503,"config":7508,"_id":7509,"_type":31,"title":7504,"_source":33,"_file":7510,"_stem":7511,"_extension":36},"/en-us/blog/authors/thong-kuah",{"name":7504,"config":7505},"Thong Kuah",{"headshot":7506,"ctfId":7507},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667179/Blog/Author%20Headshots/tkuah-headshot.jpg","tkuah",{"template":736},"content:en-us:blog:authors:thong-kuah.yml","en-us/blog/authors/thong-kuah.yml","en-us/blog/authors/thong-kuah",{"_path":7513,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7514,"config":7518,"_id":7519,"_type":31,"title":7515,"_source":33,"_file":7520,"_stem":7521,"_extension":36},"/en-us/blog/authors/tim-davis",{"name":7515,"config":7516},"Tim Davis",{"headshot":767,"ctfId":7517},"6PksqjEtq1Y8goFUvAUcIn",{"template":736},"content:en-us:blog:authors:tim-davis.yml","en-us/blog/authors/tim-davis.yml","en-us/blog/authors/tim-davis",{"_path":7523,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7524,"config":7528,"_id":7529,"_type":31,"title":7525,"_source":33,"_file":7530,"_stem":7531,"_extension":36},"/en-us/blog/authors/tim-lehnen",{"name":7525,"config":7526},"Tim Lehnen",{"headshot":7,"ctfId":7527},"hestenet",{"template":736},"content:en-us:blog:authors:tim-lehnen.yml","en-us/blog/authors/tim-lehnen.yml","en-us/blog/authors/tim-lehnen",{"_path":7533,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7534,"config":7539,"_id":7540,"_type":31,"title":7535,"_source":33,"_file":7541,"_stem":7542,"_extension":36},"/en-us/blog/authors/tim-rizzi",{"name":7535,"config":7536},"Tim Rizzi",{"headshot":7537,"ctfId":7538},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749661866/Blog/Author%20Headshots/trizzi-headshot.jpg","trizzi",{"template":736},"content:en-us:blog:authors:tim-rizzi.yml","en-us/blog/authors/tim-rizzi.yml","en-us/blog/authors/tim-rizzi",{"_path":7544,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7545,"config":7549,"_id":7551,"_type":31,"title":7546,"_source":33,"_file":7552,"_stem":7553,"_extension":36},"/en-us/blog/authors/tim-zallmann",{"name":7546,"config":7547},"Tim Zallmann",{"headshot":7548},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1759175957/ddfyzux6oosrseryb4pg.png",{"template":736,"gitlabHandle":7550},"timzallmann","content:en-us:blog:authors:tim-zallmann.yml","en-us/blog/authors/tim-zallmann.yml","en-us/blog/authors/tim-zallmann",{"_path":7555,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7556,"config":7560,"_id":7561,"_type":31,"title":7557,"_source":33,"_file":7562,"_stem":7563,"_extension":36},"/en-us/blog/authors/tina-sturgis",{"name":7557,"config":7558},"Tina Sturgis",{"headshot":7,"ctfId":7559},"TinaS",{"template":736},"content:en-us:blog:authors:tina-sturgis.yml","en-us/blog/authors/tina-sturgis.yml","en-us/blog/authors/tina-sturgis",{"_path":7565,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7566,"config":7570,"_id":7571,"_type":31,"title":7572,"_source":33,"_file":7573,"_stem":7574,"_extension":36},"/en-us/blog/authors/tobias-gnther",{"name":7567,"config":7568},"Tobias Günther",{"headshot":767,"ctfId":7569},"Tobias-Gnther",{"template":736},"content:en-us:blog:authors:tobias-gnther.yml","Tobias Gnther","en-us/blog/authors/tobias-gnther.yml","en-us/blog/authors/tobias-gnther",{"_path":7576,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7577,"config":7581,"_id":7582,"_type":31,"title":7578,"_source":33,"_file":7583,"_stem":7584,"_extension":36},"/en-us/blog/authors/todd-barr",{"name":7578,"config":7579},"Todd Barr",{"headshot":7,"ctfId":7580},"twbarr",{"template":736},"content:en-us:blog:authors:todd-barr.yml","en-us/blog/authors/todd-barr.yml","en-us/blog/authors/todd-barr",{"_path":7586,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7587,"config":7591,"_id":7592,"_type":31,"title":7588,"_source":33,"_file":7593,"_stem":7594,"_extension":36},"/en-us/blog/authors/tom-cooney",{"name":7588,"config":7589},"Tom Cooney",{"headshot":7,"ctfId":7590},"tomcooney",{"template":736},"content:en-us:blog:authors:tom-cooney.yml","en-us/blog/authors/tom-cooney.yml","en-us/blog/authors/tom-cooney",{"_path":7596,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7597,"config":7602,"_id":7603,"_type":31,"title":7598,"_source":33,"_file":7604,"_stem":7605,"_extension":36},"/en-us/blog/authors/tomas-vik",{"name":7598,"config":7599},"Tomas Vik",{"headshot":7600,"ctfId":7601},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681785/Blog/Author%20Headshots/viktomas-headshot.jpg","viktomas",{"template":736},"content:en-us:blog:authors:tomas-vik.yml","en-us/blog/authors/tomas-vik.yml","en-us/blog/authors/tomas-vik",{"_path":7607,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7608,"config":7613,"_id":7614,"_type":31,"title":7609,"_source":33,"_file":7615,"_stem":7616,"_extension":36},"/en-us/blog/authors/tomasz-maczukin",{"name":7609,"config":7610},"Tomasz Maczukin",{"headshot":7611,"ctfId":7612},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682116/Blog/Author%20Headshots/tmaczukin-headshot.jpg","tmaczukin",{"template":736},"content:en-us:blog:authors:tomasz-maczukin.yml","en-us/blog/authors/tomasz-maczukin.yml","en-us/blog/authors/tomasz-maczukin",{"_path":7618,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7619,"config":7624,"_id":7625,"_type":31,"title":7620,"_source":33,"_file":7626,"_stem":7627,"_extension":36},"/en-us/blog/authors/toon-claes",{"name":7620,"config":7621},"Toon Claes",{"headshot":7622,"ctfId":7623},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663082/Blog/Author%20Headshots/toon_claes_headshot.png","toon",{"template":736},"content:en-us:blog:authors:toon-claes.yml","en-us/blog/authors/toon-claes.yml","en-us/blog/authors/toon-claes",{"_path":7629,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7630,"config":7635,"_id":7636,"_type":31,"title":7631,"_source":33,"_file":7637,"_stem":7638,"_extension":36},"/en-us/blog/authors/torsten-linz",{"name":7631,"config":7632},"Torsten Linz",{"headshot":7633,"ctfId":7634},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749658907/Blog/Author%20Headshots/tlinz-headshot.jpg","tlinz",{"template":736},"content:en-us:blog:authors:torsten-linz.yml","en-us/blog/authors/torsten-linz.yml","en-us/blog/authors/torsten-linz",{"_path":7640,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7641,"config":7645,"_id":7646,"_type":31,"title":7642,"_source":33,"_file":7647,"_stem":7648,"_extension":36},"/en-us/blog/authors/trevor-knudsen",{"name":7642,"config":7643},"Trevor Knudsen",{"headshot":7,"ctfId":7644},"Tknudsen",{"template":736},"content:en-us:blog:authors:trevor-knudsen.yml","en-us/blog/authors/trevor-knudsen.yml","en-us/blog/authors/trevor-knudsen",{"_path":7650,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7651,"config":7656,"_id":7657,"_type":31,"title":7652,"_source":33,"_file":7658,"_stem":7659,"_extension":36},"/en-us/blog/authors/tristan-read",{"name":7652,"config":7653},"Tristan Read",{"headshot":7654,"ctfId":7655},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679131/Blog/Author%20Headshots/tristan.png","tristanread",{"template":736},"content:en-us:blog:authors:tristan-read.yml","en-us/blog/authors/tristan-read.yml","en-us/blog/authors/tristan-read",{"_path":7661,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7662,"config":7667,"_id":7668,"_type":31,"title":7663,"_source":33,"_file":7669,"_stem":7670,"_extension":36},"/en-us/blog/authors/tsukasa-komatsubara",{"name":7663,"config":7664},"Tsukasa Komatsubara",{"headshot":7665,"ctfId":7666},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659784/Blog/Author%20Headshots/gitlab_tsukasa.jpg","31YQLiBRrJPn35BBhY69ly",{"template":736},"content:en-us:blog:authors:tsukasa-komatsubara.yml","en-us/blog/authors/tsukasa-komatsubara.yml","en-us/blog/authors/tsukasa-komatsubara",{"_path":7672,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7673,"config":7677,"_id":7678,"_type":31,"title":7674,"_source":33,"_file":7679,"_stem":7680,"_extension":36},"/en-us/blog/authors/tsvi-zandany",{"name":7674,"config":7675},"Tsvi Zandany",{"headshot":767,"ctfId":7676},"Tsvi-Zandany",{"template":736},"content:en-us:blog:authors:tsvi-zandany.yml","en-us/blog/authors/tsvi-zandany.yml","en-us/blog/authors/tsvi-zandany",{"_path":7682,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7683,"config":7687,"_id":7688,"_type":31,"title":7684,"_source":33,"_file":7689,"_stem":7690,"_extension":36},"/en-us/blog/authors/tye-davis",{"name":7684,"config":7685},"Tye Davis",{"headshot":7,"ctfId":7686},"davistye",{"template":736},"content:en-us:blog:authors:tye-davis.yml","en-us/blog/authors/tye-davis.yml","en-us/blog/authors/tye-davis",{"_path":7692,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7693,"config":7697,"_id":7698,"_type":31,"title":7694,"_source":33,"_file":7699,"_stem":7700,"_extension":36},"/en-us/blog/authors/tyler-williams",{"name":7694,"config":7695},"Tyler Williams",{"headshot":7,"ctfId":7696},"tywilliams",{"template":736},"content:en-us:blog:authors:tyler-williams.yml","en-us/blog/authors/tyler-williams.yml","en-us/blog/authors/tyler-williams",{"_path":7702,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7703,"config":7707,"_id":7708,"_type":31,"title":7709,"_source":33,"_file":7710,"_stem":7711,"_extension":36},"/en-us/blog/authors/ulrica-de-fort-menares",{"name":7704,"config":7705},"Ulrica de Fort-Menares",{"headshot":7,"ctfId":7706},"ulrica1",{"template":736},"content:en-us:blog:authors:ulrica-de-fort-menares.yml","Ulrica De Fort Menares","en-us/blog/authors/ulrica-de-fort-menares.yml","en-us/blog/authors/ulrica-de-fort-menares",{"_path":7713,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7714,"config":7719,"_id":7720,"_type":31,"title":7715,"_source":33,"_file":7721,"_stem":7722,"_extension":36},"/en-us/blog/authors/valentine-mairet",{"name":7715,"config":7716},"Valentine Mairet",{"headshot":7717,"ctfId":7718},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749665455/Blog/Author%20Headshots/valentine_mairet_headshot.png","1AQjHTpq6sBauRMdCibxQX",{"template":736},"content:en-us:blog:authors:valentine-mairet.yml","en-us/blog/authors/valentine-mairet.yml","en-us/blog/authors/valentine-mairet",{"_path":7724,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7725,"config":7729,"_id":7730,"_type":31,"title":7726,"_source":33,"_file":7731,"_stem":7732,"_extension":36},"/en-us/blog/authors/valerie-silverthorne",{"name":7726,"config":7727},"Valerie Silverthorne",{"headshot":767,"ctfId":7728},"vsilverthorne",{"template":736},"content:en-us:blog:authors:valerie-silverthorne.yml","en-us/blog/authors/valerie-silverthorne.yml","en-us/blog/authors/valerie-silverthorne",{"_path":7734,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7735,"config":7739,"_id":7740,"_type":31,"title":7736,"_source":33,"_file":7741,"_stem":7742,"_extension":36},"/en-us/blog/authors/vanessa-wegner",{"name":7736,"config":7737},"Vanessa Wegner",{"headshot":7,"ctfId":7738},"vwegner",{"template":736},"content:en-us:blog:authors:vanessa-wegner.yml","en-us/blog/authors/vanessa-wegner.yml","en-us/blog/authors/vanessa-wegner",{"_path":7744,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7745,"config":7750,"_id":7751,"_type":31,"title":7746,"_source":33,"_file":7752,"_stem":7753,"_extension":36},"/en-us/blog/authors/veethika-mishra",{"name":7746,"config":7747},"Veethika Mishra",{"headshot":7748,"ctfId":7749},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664676/Blog/Author%20Headshots/veethika-headshot.jpg","veethika",{"template":736},"content:en-us:blog:authors:veethika-mishra.yml","en-us/blog/authors/veethika-mishra.yml","en-us/blog/authors/veethika-mishra",{"_path":7755,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7756,"config":7761,"_id":7762,"_type":31,"title":7757,"_source":33,"_file":7763,"_stem":7764,"_extension":36},"/en-us/blog/authors/vick-kelkar",{"name":7757,"config":7758},"Vick Kelkar",{"headshot":7759,"ctfId":7760},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749668508/Blog/Author%20Headshots/vkelkar-headshot.jpg","vkelkar",{"template":736},"content:en-us:blog:authors:vick-kelkar.yml","en-us/blog/authors/vick-kelkar.yml","en-us/blog/authors/vick-kelkar",{"_path":7766,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7767,"config":7771,"_id":7772,"_type":31,"title":7768,"_source":33,"_file":7773,"_stem":7774,"_extension":36},"/en-us/blog/authors/vicky-steeves",{"name":7768,"config":7769},"Vicky Steeves",{"headshot":7,"ctfId":7770},"vickysteeves",{"template":736},"content:en-us:blog:authors:vicky-steeves.yml","en-us/blog/authors/vicky-steeves.yml","en-us/blog/authors/vicky-steeves",{"_path":7776,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7777,"config":7781,"_id":7782,"_type":31,"title":7778,"_source":33,"_file":7783,"_stem":7784,"_extension":36},"/en-us/blog/authors/victor-hernandez",{"name":7778,"config":7779},"Victor Hernandez",{"headshot":767,"ctfId":7780},"KVTkvySIqkAu34p2jsXZz",{"template":736},"content:en-us:blog:authors:victor-hernandez.yml","en-us/blog/authors/victor-hernandez.yml","en-us/blog/authors/victor-hernandez",{"_path":7786,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7787,"config":7791,"_id":7792,"_type":31,"title":7788,"_source":33,"_file":7793,"_stem":7794,"_extension":36},"/en-us/blog/authors/victor-wu",{"name":7788,"config":7789},"Victor Wu",{"headshot":767,"ctfId":7790},"victorwu",{"template":736},"content:en-us:blog:authors:victor-wu.yml","en-us/blog/authors/victor-wu.yml","en-us/blog/authors/victor-wu",{"_path":7796,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7797,"config":7802,"_id":7803,"_type":31,"title":7798,"_source":33,"_file":7804,"_stem":7805,"_extension":36},"/en-us/blog/authors/viktor-nagy",{"name":7798,"config":7799},"Viktor Nagy",{"headshot":7800,"ctfId":7801},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662918/Blog/Author%20Headshots/nagy-headshot.jpg","nagyvgitlab",{"template":736},"content:en-us:blog:authors:viktor-nagy.yml","en-us/blog/authors/viktor-nagy.yml","en-us/blog/authors/viktor-nagy",{"_path":7807,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7808,"config":7812,"_id":7813,"_type":31,"title":7809,"_source":33,"_file":7814,"_stem":7815,"_extension":36},"/en-us/blog/authors/vincent-jong",{"name":7809,"config":7810},"Vincent Jong",{"headshot":767,"ctfId":7811},"Vincent-Jong",{"template":736},"content:en-us:blog:authors:vincent-jong.yml","en-us/blog/authors/vincent-jong.yml","en-us/blog/authors/vincent-jong",{"_path":7817,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7818,"config":7823,"_id":7824,"_type":31,"title":7819,"_source":33,"_file":7825,"_stem":7826,"_extension":36},"/en-us/blog/authors/vincy-wilson",{"name":7819,"config":7820},"Vincy Wilson",{"headshot":7821,"ctfId":7822},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749669069/Blog/Author%20Headshots/vincy.jpg","1iyKndVlbE3dQnxOJoSY0q",{"template":736},"content:en-us:blog:authors:vincy-wilson.yml","en-us/blog/authors/vincy-wilson.yml","en-us/blog/authors/vincy-wilson",{"_path":7828,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7829,"config":7834,"_id":7835,"_type":31,"title":7830,"_source":33,"_file":7836,"_stem":7837,"_extension":36},"/en-us/blog/authors/vishal-tak",{"name":7830,"config":7831},"Vishal Tak",{"headshot":7832,"ctfId":7833},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663854/Blog/Author%20Headshots/vishal_tak_headshot.png","6BalO1YQUIuDdhUP80bFra",{"template":736},"content:en-us:blog:authors:vishal-tak.yml","en-us/blog/authors/vishal-tak.yml","en-us/blog/authors/vishal-tak",{"_path":7839,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7840,"config":7845,"_id":7846,"_type":31,"title":7841,"_source":33,"_file":7847,"_stem":7848,"_extension":36},"/en-us/blog/authors/vitor-meireles-de-sousa",{"name":7841,"config":7842},"Vitor Meireles De Sousa",{"headshot":7843,"ctfId":7844},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682001/Blog/Author%20Headshots/vdesousa-headshot.png","vdesousa",{"template":736},"content:en-us:blog:authors:vitor-meireles-de-sousa.yml","en-us/blog/authors/vitor-meireles-de-sousa.yml","en-us/blog/authors/vitor-meireles-de-sousa",{"_path":7850,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7851,"config":7855,"_id":7856,"_type":31,"title":7852,"_source":33,"_file":7857,"_stem":7858,"_extension":36},"/en-us/blog/authors/vlad-budica",{"name":7852,"config":7853},"Vlad Budica",{"headshot":767,"ctfId":7854},"Vlad-Budica",{"template":736},"content:en-us:blog:authors:vlad-budica.yml","en-us/blog/authors/vlad-budica.yml","en-us/blog/authors/vlad-budica",{"_path":7860,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7861,"config":7865,"_id":7866,"_type":31,"title":7862,"_source":33,"_file":7867,"_stem":7868,"_extension":36},"/en-us/blog/authors/vlad-stoianovici",{"name":7862,"config":7863},"Vlad Stoianovici",{"headshot":7,"ctfId":7864},"vstoianovici",{"template":736},"content:en-us:blog:authors:vlad-stoianovici.yml","en-us/blog/authors/vlad-stoianovici.yml","en-us/blog/authors/vlad-stoianovici",{"_path":7870,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7871,"config":7875,"_id":7876,"_type":31,"title":7872,"_source":33,"_file":7877,"_stem":7878,"_extension":36},"/en-us/blog/authors/wayne-haber",{"name":7872,"config":7873},"Wayne Haber",{"headshot":7,"ctfId":7874},"whaber",{"template":736},"content:en-us:blog:authors:wayne-haber.yml","en-us/blog/authors/wayne-haber.yml","en-us/blog/authors/wayne-haber",{"_path":7880,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7881,"config":7885,"_id":7886,"_type":31,"title":7882,"_source":33,"_file":7887,"_stem":7888,"_extension":36},"/en-us/blog/authors/will-chandler",{"name":7882,"config":7883},"Will Chandler",{"headshot":767,"ctfId":7884},"DKiIGSSRIyO6QdTQkRkjs",{"template":736},"content:en-us:blog:authors:will-chandler.yml","en-us/blog/authors/will-chandler.yml","en-us/blog/authors/will-chandler",{"_path":7890,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7891,"config":7896,"_id":7897,"_type":31,"title":7892,"_source":33,"_file":7898,"_stem":7899,"_extension":36},"/en-us/blog/authors/will-leidheiser",{"name":7892,"config":7893},"Will Leidheiser",{"headshot":7894,"ctfId":7895},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749679335/Blog/Author%20Headshots/wleidheiser-headshot.jpg","wleidheiser",{"template":736},"content:en-us:blog:authors:will-leidheiser.yml","en-us/blog/authors/will-leidheiser.yml","en-us/blog/authors/will-leidheiser",{"_path":7901,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7902,"config":7907,"_id":7908,"_type":31,"title":7903,"_source":33,"_file":7909,"_stem":7910,"_extension":36},"/en-us/blog/authors/william-arias",{"name":7903,"config":7904},"William Arias",{"headshot":7905,"ctfId":7906},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667549/Blog/Author%20Headshots/warias-headshot.jpg","warias",{"template":736},"content:en-us:blog:authors:william-arias.yml","en-us/blog/authors/william-arias.yml","en-us/blog/authors/william-arias",{"_path":7912,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7913,"config":7917,"_id":7918,"_type":31,"title":7914,"_source":33,"_file":7919,"_stem":7920,"_extension":36},"/en-us/blog/authors/william-chia",{"name":7914,"config":7915},"William Chia",{"headshot":7,"ctfId":7916},"williamchia",{"template":736},"content:en-us:blog:authors:william-chia.yml","en-us/blog/authors/william-chia.yml","en-us/blog/authors/william-chia",{"_path":7922,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7923,"config":7927,"_id":7928,"_type":31,"title":7924,"_source":33,"_file":7929,"_stem":7930,"_extension":36},"/en-us/blog/authors/yannis-roussos",{"name":7924,"config":7925},"Yannis Roussos",{"headshot":7,"ctfId":7926},"iroussos",{"template":736},"content:en-us:blog:authors:yannis-roussos.yml","en-us/blog/authors/yannis-roussos.yml","en-us/blog/authors/yannis-roussos",{"_path":7932,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7933,"config":7937,"_id":7938,"_type":31,"title":7934,"_source":33,"_file":7939,"_stem":7940,"_extension":36},"/en-us/blog/authors/yevgeny-pats",{"name":7934,"config":7935},"Yevgeny Pats",{"headshot":7,"ctfId":7936},"ypats",{"template":736},"content:en-us:blog:authors:yevgeny-pats.yml","en-us/blog/authors/yevgeny-pats.yml","en-us/blog/authors/yevgeny-pats",{"_path":7942,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7943,"config":7947,"_id":7948,"_type":31,"title":7944,"_source":33,"_file":7949,"_stem":7950,"_extension":36},"/en-us/blog/authors/yorick-peterse",{"name":7944,"config":7945},"Yorick Peterse",{"headshot":767,"ctfId":7946},"Yorick-Peterse",{"template":736},"content:en-us:blog:authors:yorick-peterse.yml","en-us/blog/authors/yorick-peterse.yml","en-us/blog/authors/yorick-peterse",{"_path":7952,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7953,"config":7957,"_id":7958,"_type":31,"title":7959,"_source":33,"_file":7960,"_stem":7961,"_extension":36},"/en-us/blog/authors/zeger-jan-van-de-weg",{"name":7954,"config":7955},"Zeger-Jan van de Weg",{"headshot":7,"ctfId":7956},"zjgitlab",{"template":736},"content:en-us:blog:authors:zeger-jan-van-de-weg.yml","Zeger Jan Van De Weg","en-us/blog/authors/zeger-jan-van-de-weg.yml","en-us/blog/authors/zeger-jan-van-de-weg",{"_path":7963,"_dir":729,"_draft":6,"_partial":6,"_locale":7,"content":7964,"config":7969,"_id":7970,"_type":31,"title":7965,"_source":33,"_file":7971,"_stem":7972,"_extension":36},"/en-us/blog/authors/zhaochen-li",{"name":7965,"config":7966},"Zhaochen Li",{"headshot":7967,"ctfId":7968},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664331/Blog/Author%20Headshots/Zhaochen_Li_headshot.png","D67XqgLJdlpOsrG3ivCGT",{"template":736},"content:en-us:blog:authors:zhaochen-li.yml","en-us/blog/authors/zhaochen-li.yml","en-us/blog/authors/zhaochen-li",{"_path":7974,"_dir":39,"_draft":6,"_partial":6,"_locale":7,"header":7975,"eyebrow":7976,"blurb":7977,"button":7978,"secondaryButton":7982,"_id":7984,"_type":31,"title":7985,"_source":33,"_file":7986,"_stem":7987,"_extension":36},"/shared/en-us/next-steps","Start shipping better software faster","50%+ of the Fortune 100 trust GitLab","See what your team can do with the intelligent\n\n\nDevSecOps platform.\n",{"text":47,"config":7979},{"href":7980,"dataGaName":50,"dataGaLocation":7981},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":52,"config":7983},{"href":54,"dataGaName":55,"dataGaLocation":7981},"content:shared:en-us:next-steps.yml","Next Steps","shared/en-us/next-steps.yml","shared/en-us/next-steps",{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":7989,"content":7990,"config":7993,"_id":30,"_type":31,"title":32,"_source":33,"_file":34,"_stem":35,"_extension":36},{"title":9,"description":10,"ogTitle":9,"ogDescription":10,"noIndex":6,"ogImage":11,"ogUrl":12,"ogSiteName":13,"ogType":14,"canonicalUrls":12,"schema":15},{"title":9,"description":10,"authors":7991,"heroImage":11,"date":19,"body":20,"category":21,"tags":7992},[18],[23,24,25,26],{"slug":28,"featured":6,"template":29},1762754836354]