The 2023 Trends in Developer Tools
During a retrospective meeting recently, we noted that we used more developer tools in the first half of this year than we did in the whole of 2021 and 2022 combined. The way developers like us use various tools to enhance our work seems to have shifted significantly in 2023.
Initially, it might appear that Large Language Models (LLM) and Artificial Intelligence (AI) are the primary drivers behind this surge in developer tool usage. On closer inspection, we discovered that only about 20% of the tools we are using are related to LLM and AI.
In this inspection, we uncovered a few emerging trends that have been shaping the developer landscape in 2023. These include serverless computing, observability platforms, event-driven architectures, and many others. We have focused on tools that demonstrate how these emerging trends boost developers' productivity and enable them to create software more efficiently.
In this article, we aim to showcase the most exciting developer tools that were launched in 2023. Each of these tools reflects the innovative spirit driven by these new trends in the software industry. If you're a software developer looking to enhance your productivity, these tools are certainly worth exploring.
1. From Product to Code - Lottielab
While web browsers are becoming increasingly robust and capable of handling complex animations, the process of creating them remains a challenge. Lottie is an interactive web application that provides a user-friendly interface for creating animations for your web applications, with no prior coding experience required. What's more, Lottie supports the import of vector files from other popular tools and even offers a Figma plugin that streamlines collaboration between product and engineering teams.
Our initial expectations for Lottie were modest, as is often the case with tools in this category. However, we were pleasantly surprised to find that Lottie leverages every web development trend to create a state-of-the-art product. Many features that were previously inaccessible to us are now just a few clicks away.
2. Writing Code - GitHub Copilot Chat
In October 2021, GitHub released Copilot, fundamentally changing the way developers write code. It's rare to find a developer today who isn't using Copilot or one of the other AI-powered code assistants in their daily work. In 2023, just when we thought nothing could surprise us, GitHub introduced Copilot Chat. With a simple VSCode plugin, developers can now obtain answers to their daily tasks from Copilot Chat.
While it may seem like a natural extension of Copilot, we discovered that Copilot Chat has the potential to revolutionize our workflow. For instance, when developing SDKs for various programming languages, we can seek design input in languages we're not familiar with and receive answers from Copilot Chat. Moreover, for deeper insights, we can inquire about the reasons behind its decisions, providing us with objective answers.
3. Debugging - mirrord
While Kubernetes and other Cloud-Native technologies open up new possibilities in cloud architectures, they also make debugging much more challenging. If you're developing a distributed product that extensively relies on Kubernetes features, you're likely familiar with the challenges of debugging Kubernetes architectures on your local machine.
Mirrord, an open-source tool, offers a novel approach to debugging k8s clusters locally by mirroring only the relevant parts of the cluster to your local machine. Leveraging context from the cloud and remote access to other services, mirrord provides a comprehensive view of your cluster without the need to run it locally. We found that the more we embrace the cloud-native paradigm, the more we rely on mirrord to debug our services locally, saving us valuable developer hours every week.
4. Deploying - Wing Language
Infrastructure as code and defining deployment configurations isn't a new concept. However, just when we thought this space couldn't see disruption, Wing Language emerged with the intention of transforming everything. Wing's approach is to replace the imperative code used for application runtime and the declarative code used for infrastructure deployment with a new language that combines both aspects.
Wing doesn't aim to replace all your application code but excels in what can be called the "Frontend of the Backend." It provides a robust SDK for all things related to cloud infrastructure, along with an imperative language for the operations your API typically performs. When we adopted Wing for our new project, we found that it significantly reduced our time to production and facilitated the creation of flexible, easily maintainable code.
5. Integrate - Alloy Unified API
It's common for modern applications to rely on other apps for extra functionality. These applications may include payment gateways, authentication systems, analytics tools, and more. While integrating with such APIs is relatively straightforward initially, it can become a maintenance and scaling nightmare as your application grows.
Alloy Unified API is a new tool designed to solve this problem by providing a unified API for all the integrations you need. With Alloy, you can define a single data model that connects multiple APIs, ensuring that you always receive relevant real-time data. We found Alloy to be invaluable when integrating our marketing and customer metrics with our product APIs, saving us considerable time and resources.
6. Authenticate - Descope
While authentication SaaS toolkits have been around for a while, they often fall short of addressing the fundamental needs of modern distributed applications. Descope is a new authentication-as-a-service solution that prioritizes defining authentication workflows as first-class citizens.
With Descope, you don't configure each part of the service as a separate entity but instead define the authentication flow and let Descope handle the rest. For instance, if you want your application to support login via email, phone, and social media, you can define the authentication flow for each and let Descope take care of the rest. Furthermore, Descope employs passwordless methods (biometrics, magic links, etc.) to enhance security and user-friendliness. Descope checks almost every item on the modern authentication checklist, making it a valuable tool for any contemporary application.
7. Authorize - Permit.io
Authorization is an integral part of almost any application out there, yet building it yourself in the context of modern architectures, and distributed systems can be challenging, not to mention time-consuming. Almost every permission decision in today's applications is based on multiple factors, including the user, the device, the location, the time, and more. Moreover, they often move away from using Role-Based Access Control (RBAC) in favor of more complex models (Such as Relationship and Attribute-Based Access Control -ReBAC/ABAC) to define permissions.
Permit.io, recently launched on Product Hunt, is a cloud service that simplifies permission definition through a user-friendly low-code UI interface. It supports all permission models (RBAC/ABAC/ReBAC) and seamlessly integrates with your application using their SDK, providing real-time insights into your permissions. Permit.io also offers detailed audit logs, Policy as Code for configuring permissions, GitOps features, rapid authorization decision times, and more - potentially saving months of development time.
8. Observe - Keep
In recent years, our application observability stacks have grown with an abundance of tools, each addressing different aspects of the observability puzzle. While these tools are essential for staying on top of the cloud game, they often flood us with data and alerts, turning observability into a full-time job.
Keep, an open-source tool that recently started offering a cloud service, takes a unique approach to address this issue through workflow automation. Instead of drowning in complex dashboards, you can create workflows that trigger when anomalies occur, allowing Keep to manage the rest. We initially used Keep to automate Slack messages for a specific use case in our application, but we soon realized its power in simplifying our dashboard complexity and reducing alert noise.
9. Listen - Trigger.dev
While event-driven architecture isn't a novel concept, it has gained significant traction in recent years. With the native support of platforms like Vercel (Next.js) and Serverless, building event-driven applications has become more accessible. However, one crucial aspect was missing: creating long-running jobs that listen to events and trigger additional events based on business logic.
Trigger.dev is an open-source framework (with a cloud service) that simplifies the creation of event-driven applications. You can easily download their SDK and build long-running jobs directly into your codebase, complete with features like API integrations, webhooks, scheduling, and delays. We found Trigger.dev invaluable when developing a simple application that listens to events from our marketing tools and triggers events in our application, saving us significant time and resources.
10. AI Agents - Fine.dev
While LLM and AI have gained popularity for solving various developer challenges, the user experience of these tools often focuses on the AI component rather than the developer's needs. Fine.dev seeks to bridge this gap by introducing AI agents into the realm of developers.
With Fine.dev, you can define custom AI agents that help developers with specific tasks tailored to their unique problems. Think of it as a chat agent but one that can be customized for specific stacks, technologies, applications, and more. We recently started using Fine.dev, and it feels like the missing piece in the AI puzzle.
In this article, we've showcased the most exciting developer tools launched in 2023. Each of these tools embodies the innovative spirit driven by new trends in the software industry. Whether or not you intend to use them in production immediately, supporting early-stage developer tools has a significant impact on the industry. It fosters innovation and contributes to the future of our field.
Want to learn more about useful dev tools? Join our Slack community and chat with other developers using low-code tools to create better applications.