Survey report
The State of the CLI 2023 Edition
The State of the CLI survey unveils the common tools, technologies, and usage patterns of how terminal users and the Warp community use their shell, terminal, and command line. From June to July 2023, Warp surveyed over 1,500 developers to learn about their workflows.
A note from Warp
An inaugural look at how developers use the command line
We’re super excited to present the results of our inaugural State of the CLI survey. A heartfelt thank you to everyone who participated and spread the word. The overwhelming response from Warp and the broader developer community underscores the significance of the command line in today’s development world.
With this survey, we delved into the evolving tools and practices of the command line, striving to present our findings in a clear and accessible manner. Recognizing that each developer brings a distinct touch to their terminal usage, our intent was to highlight diverse approaches while uncovering dominant trends, best practices, and shared collective pain points in the process.
We recognize a strong representation from the Warp community in our sample. While this offers insights into how Warp users use the terminal, it also introduces a bias. Thus, these results may not reflect the preferences of the wider terminal and developer communities.
For a comprehensive explanation of our survey design, processes, and demographics, please see our methodology blog post.
Key takeaways
What terminal users told us
Terminal usage
Most respondents (69%) always keep the terminal open and make significant use of it. Despite this frequent terminal usage, only 19% of respondents perceive themselves as experts.
Aesthetic preferences
Respondents value the aesthetics and readability of their terminal, prioritizing features like themes, layouts, colors, and fonts.
Pain points
70% of respondents struggle with remembering or using complex terminal commands, while only 12% and 14% find difficulties in package management and scripting respectively.
Shell customizations
The top shell customizations are autocomplete (79%), aliases (74%), and themes (74%), indicating a high priority for efficiency, ease of use, and aesthetics.
AI’s growing role
While 34% of respondents do not currently use any AI tools in the terminal, only 10% have no plans to adopt them in the future. The primary applications are command suggestions and command generation.
Learning and resources
Many respondents self-report still using Google (62%) and Stack Overflow (62%) as their leading educational resources. Technical documentation (57%) also continues to be a vital resource.
Usage & proficiency
The gap between CLI usage and proficiency
We polled our respondents about their terminal usage frequency and juxtaposed it with a self-assessment of their proficiency.
How often do you use the terminal?
1,367 votes
How would you rate your proficiency with the CLI?
1,367 votes
The terminal is an indispensable tool for a vast majority (69%) of our respondents, with it consistently open as a primary tool in their workflow. Conversely, only a mere 2% reported infrequent or no use, emphasizing the terminal’s pivotal role in modern workflows and the significant demand for command line tools.
However, when it comes to self-assessing their proficiency with the CLI, a more modest sentiment arises. Despite the frequent usage, only a fraction (19%) consider themselves as experts. The larger share of respondents feel they possess an intermediate (39%) or advanced (40%) understanding of the CLI.
This disparity highlights the intricate nature of the terminal and CLI. Regular users continually stumble upon new aspects to master and skills to sharpen.
Terminal preferences
Which terminals developers primarily use
We asked respondents their primary, secondary, and tertiary preferences for terminals. Given the population surveyed, it’s no surprise that Warp dominates as the most popular primary terminal.
However, it may be surprising to some that the embedded terminal in VSCode has surpassed iTerm2 or even the default MacOS terminal for many developers. The prominence of the MacOS terminal as a third-choice can be attributed to its presence on MacBooks. The Warp community skews heavily toward daily Mac users.
Which terminals do you primarily use?
Rated 1st
Ranked 2nd
Ranked 3rd
Terminal usage patterns
Code management, system navigation, and everything in between
The terminal proves essential for common tasks such as compiling and running code, version control, navigating file systems, managing packages, and accessing remote servers. Less frequently, the respondents turn to the CLI for system monitoring and production debugging.
Remembering or using complex terminal commands emerges as a major challenge for 70% of respondents. Meanwhile, fewer face issues with package management (12%) and task automation (14%). Could it be that developers are turning to AI tools within their terminal to mitigate these workflow challenges?
Which of the following statements describe your pain points or challenges with using the CLI?
Aesthetic preferences
Aesthetics, readability, and layouts matter
The terminal isn’t merely a functional tool; it’s a canvas for every developer. 86% customize their terminals with themes and colors, while 70% show an affinity for fine tuning fonts. Respondents also place high value in multitasking and organization, with 62% emphasizing the importance of layouts, like split panes and tabs.
How do you like to customize your terminal?
Note: Features like mouse actions and split panes are only available in certain terminals by default, whereas in other terminals you need to install them as plugins.
Shell preferences & personalizations
Zsh is the shell of choice, followed by bash and fish
Zsh tops the list as the most widely used shell among respondents, with 69% preference. Its popularity could be linked to its advanced features and customization capabilities using plugins like Oh My Zsh, in addition to its recent adoption as the default shell in macOS Catalina. Trailing behind but still robustly rooted is bash, claiming 17% of users.
Aside from these, a select few respondents use fish, PowerShell, and Nushell. The 3% who chose “whatever is default” might represent a segment not deeply invested in shell customization.
What shell do you primarily use?
1,347 votes
How do you like to customize your terminal?
1,234 votes
Three shell customization features dominate: autocomplete, aliases, and themes. This trio illuminates what developers prioritize in their shells: efficiency, user-friendliness, and an appealing visual interface. Keybindings are favored by a notably lower percentage of respondents, suggesting there’s still unexplored potential in shell customizations.
CLI toolkits
Different toolkits for diverse tasks
From the list of 50 prominent CLI applications, Git, npm, and Homebrew emerged as the top three, highlighting the prevalence of version control, package management, and software installation tasks in the respondents’ terminal workflows.
It’s essential to consider that all CLI applications are not used equally. Some are niche-specific, like Kubernetes, Terraform, and Ansible, catering to particular roles such as DevOps or system administration.
Which of the following CLI tools do you use?
At the forefront of CLI customization, Oh My Zsh stands out, capturing 64% preference due to its potent combination of adaptability and compatibility with SSH.
Within this vast landscape, tools like Neovim, Bat, and Starship emphasize the coexistence of text editing, enhanced visual outputs, and adaptable command prompts. This spectrum of tool choices underscores a central sentiment: the terminal is not just a workspace but also a canvas.
AI in the terminal
The emergence of AI in the terminal
Respondents weighed in on their use of AI tools in the terminal, specifically discussing Warp AI, GitHub Copilot for CLI, Fig AI, and CLAI from IBM.
Given that most respondents in the sample group are Warp users, it’s unsurprising that 53% use Warp AI as their primary tool in the terminal. Among those who utilize AI tools in the terminal, command suggestions (52%) and generation (46%) stand out as the primary use cases.
What do you use AI tools in the terminal for?
Future of AI in the CLI
Intelligent commands, task automation, debugging, and more?
Looking forward, respondents believe AI and automation will predominantly influence intelligent command generation and suggestions (41%), followed by the automation of repetitive tasks (22%). Debugging and improved error detection (15%) are also viewed as promising avenues for AI’s impact.
Yet, there’s a palpable caution. A significant 9.7% of users express no intention to integrate AI tools into their terminal operations in the near future.
Where do you see AI or automation making the biggest impact to your terminal workflow over the next 3 years?
Learning resources
Even with AI on the rise, Google and Stack Overflow maintain top spots
Google and Stack Overflow continue to be self-reported as the top CLI learning resources, each favored by 62% of users. Even amid reports of Stack Overflow’s waning usage, its significant relevance persists.
Interestingly, over half the respondents rely on technical documentation for accurate and current information. Emerging AI tools like ChatGPT are on the rise, but still have ground to cover to match Google’s wide-ranging search capabilities.
What percentage of people consider the following resources useful when learning about the CLI?
Stack Overflow
Technical Docs
Personal Projects
AI Tools like ChatGPT
Blogs and Forums
Open-source Projects
YouTube
Online Courses
Books
Survey respondent overview
Who responded to the survey
This report collates responses from 1,520 developers, primarily from the Warp community, surveyed between June 14 and July 14, 2023. Below is an overview of their specialization areas, company affiliations, professional experience, and other demographic details.
Which areas of development do you primarily focus on?
How many people work for your company / organization?
How many years of professional coding experience do you have?
Other notable data points
Conclusion
The CLI remains a cornerstone of developer workflows
While this survey offers a snapshot of 2023, the dynamic nature of technology ensures that trends will continue to shift. We may see increased adoption of AI tools, further personalization in terminal usage, and possibly even new, disruptive tools that reshape the CLI landscape.
We’re excited for what lies ahead. As developers continue to push boundaries, refine workflows, and introduce innovative tools, the terminal will likely remain a consistent, yet ever-evolving, cornerstone of this journey.
Learn about the survey methodology
Learn about the process behind the State of the CLI survey, the methodology, and areas of consideration for future editions.