Next-generation IDE for decades, not years
An IDE that is ready for unpredictable changes in the market such as when one editor goes into the history books and a much better one replaces it.
6 years ago we founded PlatformIO to solve the problem of multi-platform development in the embedded systems industry. At that time, (and even today) each vendor platform required using a specific development tool that was often complex and limited in terms of OS and editor support. Our unique philosophy gives embedded developers true freedom. They can personally decide which operating system, editor, hardware, and framework to use. In this blog post, we openly discuss the important role that integrated development environments (IDEs) play for the success and speed of embedded systems development. It isn’t just hardware specifications that professionals look at, they also care deeply about the quality of the available software development tools.
Table of Contents
- Who needs an IDE?
- What is common?
- Create an in-house IDE or use a commercial one?
- Best of both worlds?
- The Power of PlatformIO
- Global discussion
Who needs an IDE?
So, who actually needs an IDE? “Developers” is the simplest answer that comes to mind, and in most cases and that’s correct. But, it turns out that there are other parties interested in offering a quality IDE solution:
“Manufacturers” and “Chip Vendors” (semiconductor companies) want to make it easy for developers to build products based on their technology. Manufacturers tend to focus on combining hardware and software solutions that simplify the entrance to the chip vendor’s product line. They play a significant role in promoting and adding extra value to chip vendor solutions. If chip vendor development tools are limited, a manufacturer can gain a competitive advantage by offering better tools that please their developer customers and speed time to market.
What is common?
It becomes apparent that all three parties need an IDE. Unfortunately, we see an acute problem in the embedded systems industry. A lot of semiconductor companies don’t think about manufacturers who offer more than one chipset solution. In such cases, manufacturers may end up having to both offer and support their developer customers with multiple tools. If manufacturers choose to promote different tools than chip vendors, then developers get caught in the middle, perhaps having to learn both. Developers want the same IDE for both semiconductor and manufacturer products. And they don’t want to have to learn a new tool for each different chipset that is incorporated into the breadth of an entire embedded product solution. That’s why having a “democratic” and flexible mutli-platform IDE can significantly reduce time-to-market costs and make developers happy.
Create an in-house IDE or use a commercial one?
If you are a manufacturer or chip vendor, what type of IDE is best for your product? Should you create your own or should you forward your customers to a third-party commercial (paid and proprietary) IDE? Let’s take a look at the following comparison table:
There is only one benefit of using a commercial IDE over your own. It’s time. Although time is a valuable resource, a commercial IDE doesn’t allow you to easily provide security updates for your software products and bundled examples. On the other hand, creating your own IDE inevitably leads to additional risks and expenses.
For chip vendors and hardware manufacturers, providing software and tooling is a necessary burden, but it is often under-funded and under-resourced. Developers often end up carrying the burden of visiting chip vendor and manufacturer websites, checking for software and toolchain updates, downloading the latest versions, and manually applying them on each development machine. Developers want a single, flexible IDE solution that can support any and all hardware. But they don’t want to pay for it, and they don’t want to be stuck to a specific one if there’s a better solution available.
Best of both worlds?
What features and factors must be analyzed and satsified to get the best of both worlds, that will yield the happiest and most productive developers? Here is a list of factors involved in achieving a comprehensive and flexible IDE solution:
Any brand new IDE solution will require a significant amount of time, effort, and resources to gain decent adoption in the market. And again, all factors involved in creating a new IDE solution are accompanied by unknown risk, time, and cost complications.
We have already brought up a lot of difficult questions. One last difficult one is how to achieve a best-of-breed next generation IDE that doesn’t stay static for today’s hardware, but that will grow and be ready for tomorrow. An IDE should be prepared for unpredictable changes in the market and be ready when one editor goes into history books and a much better one replaces it. Yes, solving all these problems might sound like magic, but it’s achievable.
The Power of PlatformIO
We would like to show you a simple and powerful IDE solution used, loved and proven to be the favorite of over a million developers around the world. PlatformIO is a flexible next-generation IDE solution that will make your existing developers happier and significantly reduces the barrier of adoption by new developers who may be interested in your hardware.
This is the power of PlatformIO! It’s the only free-for-developers, completely neutral, and open source ecosystem for embedded development. It’s a place where developers have true freedom, where they have a choice to use their favorite editor and operating system. PlatformIO guarantees full reproducibility starting from project building and ending with 1-click debugging. Also, PlatformIO offers a significantly gentler learning curve in comparison with toolsets from the past decade. Your customers save money and time because a broad range of software developers can get started easily, in comparison with today when only the highest-skilled and most-experienced hardware engineers are required to build products.
We had an opportunity to raise our concerns at the RISC-V Summit 2019 in San Jose, California, USA, where we presented our vision of how a new generation of development ecosystems could rapidly renovate the core components of embedded development infrastructure using modern software frameworks and technologies.
You can watch the recorded version of the presentation here:
The slides from the presentation are available on SlideShare.