I think developer tools are too complicated. Important tasks such as connecting your AWS server to the internet often requires slogging through 2,000-word manuals brimming with confusing diagrams and configuration steps. And let's not even delve into the intricacies of authentication.
Startups have been building abstraction layers on top of complex technical primitives for over a decade now. It was Heroku’s bread and butter (before Salesforce ate them alive). However, every startup bloats. As a tool is adopted for more use cases, new features are added to better serve said use cases. The audience you’re selling to grows, and new mouths to feed means new buttons in the dashboard.
The largest developer tools and infrastructure companies have shown little interest in providing more simplicity, and in most cases have become more complex over time.
Too many features and too much complexity can hamstring even the greatest products. Successfully onboarding new customers requires identifying their use-case, surfacing the right features to solve their problem, and enabling them to implement those features. Few companies do this well.
An overwhelming number of developers don’t use the “right” tool for the job, mostly because the learning curve is too steep. Take a product like Datadog’s Application Performance Monitoring (APM). APM basically measures the time and path your code takes to return a result. It’s invaluable for understanding why your application is slow, and a problem that almost every developer runs into. However, so many developers don’t leverage APM, or even a debugger, because of the steep learning curve. The limiting factor to developer tool adoption isn’t necessarily market size and willingness to pay, but instead, tool complexity.
Part of me believes that this is a design problem. Perhaps these massive companies don’t attract the right designers. Or maybe the large amount of complexity limits designers in what they want to do. Design by committee always produces subpar results.
Disruptor startups can take inspiration from large companies that aren’t innovating. They can build better products by making trade offs that their competitors can’t make because of existing product debt.
For example, Jira, software development planning software, is universally hated by developers. It’s so complex to manage that Jira Administrator is a full time role at some companies. The thought that you need to pay someone to manage the cloud service you already pay for is mind blowing. Linear, their competitor, is building a much simpler product. They’ve taken an opinionated approach to planning software, and built something beautiful from the ground up. Their results speak for themselves, as they power some of the most innovative software teams in the world.
And it's not just them; there are many examples of startups doing this:
Simple developer tools are easy to learn, and the time to effectiveness is low. They have intuitive user interfaces, and don’t require much setup to get started. Developers yearn for straightforward solutions that let them focus on what they do best: building and innovating. Companies that recognize this and work towards reducing tool complexity stand to gain a loyal user base, paving the way for a brighter, more efficient future in software development.
Maybe the friction isn’t “reducing tool complexity” but reducing perceived tool complexity. If a primary outcome for dev tools is adoption, there are roads to that end besides eliminating complexity. (Training, user experience, design, etc.)