Xojo: Looking Back, and Looking Forward

Published on November 5, 2021.

Recently, I wanted to work on a personal project that I had been thinking about for awhile - a utility that would make doing NetSuite development work easier. It needed to run natively on macOS, and so I decided to try developing it with Xojo.

I haven't used Xojo in well over a year, but was amazed at how quickly I was able to get a proof of concept built with it. It was the same amazement that I had experienced when I first started using Xojo back in August of 2015.

Am I back to marketing myself a Xojo Developer? No.

Do I think that Xojo is "out of the woods?" Not yet.

But I'm giving Xojo another try. And here's why...

Looking Back

I've written in the past about how, after I decided to stop doing FileMaker development work, I went in search of a new rapid application development platform to work with. I looked at all sorts of things, including LiveCode, Delphi, OutSystems, and more. I even explored the SalesForce platform, and dabbled in things like ServiceNow.

But it was at the encouragement of my friend Hal Gumbert that I gave Xojo a try. And I was glad that I did, because it was Xojo that resonated with me in a way that no the other platform did. It "clicked" with me, and by that, I mean the Xojo IDE, how projects were structured, the Xojo language, etc. Xojo felt like the right tool for me. Comfortable. Powerful. Fun.

When I first started using Xojo in 2015, I was primarily interested in it for its (then somewhat new) support for developing iOS apps. But it wasn't long before I was using Xojo to develop all sorts of things - including console apps, which was a big surprise to me. I quickly developed my own frameworks, and started using Xojo to create Web apps, Web APIs, and more.

Xojo became my "go to" development tool. I referred to it as a sort of "development swiss army knife." And as my enthusiasm and excitement grew, I started writing about Xojo, shared Xojo code and solutions, gave webinars on it, and even spoke at a few Xojo conferences.

Going Off the Rails, But Holding On to Hope

As recently as January of 2019, I was still excited and enthusiastic about Xojo. I wrote about all of the things that I assumed would be coming out in that year. Things like interops, Xojo-based plugins, Web 2.0, and at the top of my list, Android support. I was accused of being a "fan boy" at the time, and if that means that I was a big fan of Xojo, well then that label was correct.

After attending XDC in May of that year, my excitement started to diminish quite a bit. I was disappointed by what appeared to be a lack of progress from the prior annual conference. I was concerned by changes that were being made internally at Xojo as a company. I was worried that I had bet my business on Xojo, and that the platform - and company - might not be as stable as I had thought.

As a result, I started making plans to shift my focus, and go in a different direction. I wrote about all of that in this post.

Moving away from Xojo was painful. It required redesigning and redeveloping many of the solutions that I had developed with it, which was extremely time consuming. But there was also a sort of emotional pain, of sadly and reluctantly giving up on the platform. It was as if I were parting ways with a good friend.

I last wrote about Xojo in September of last year. By then, I had migrated all of my Web-oriented solutions from Xojo to PHP, and all but one of my clients' solutions from it as well. However, I continued to keep an eye on Xojo, in the hope that things would change. But based on what I was seeing in the community, it had appeared that things had only gotten worse. I was sad to see that, because, as I wrote at the time, I was "still rooting for Xojo."

Getting Distance and Perspective

After having been away from Xojo for quite some time, I've started to get a different perspective on it. I've been critical of Xojo over the past few years, and I think some of that criticism was justified.

But I can't place all of the blame on Xojo. I've certainly made a lot of mistakes.

For example, I became so excited about Xojo that I wanted to use it for everything, and in some cases, I tried to force it to do things that it simply isn't designed or ready to do.

From a business perspective, I made assumptions about Xojo's development roadmap, and more specifically, about the timeline. I incorrectly assumed that some of the features that were - and in some cases continue to be - in development would be available sooner than later. In hindsight, that was a big mistake, because even if some of those things were to become available today, they would most likely need time to mature.

But the biggest mistake that I made was not "listening to my gut." It was telling me that while I needed to make changes, I shouldn't give up on Xojo entirely.

I'm starting to listen to my gut - that "little voice" if you will - again. And it's telling me that Xojo is on the right track. And while it seems to be taking a long time for the platform to take its next big evolutionary step, and while there have certainly been mistakes and missteps made along the way, I truly believe that the time and effort that the Xojo team has put into the platform will eventually pay off.

I say that because there is nothing else quite like Xojo. Try to find a viable substitute for it, and I think you'll have a hard time doing so. And even if the team only gets some of Xojo "right," it will still be a powerful - and I think successful - development tool.

My Current Strategy

I now better understand and appreciate what Xojo is, and what it isn't. I now understand what it's good for, and what its limitations are. And I've learned from my mistakes.

Xojo is just one of several development tools that I use now. I don't need for it to be "all things" to me.

These days, I make my living as a NetSuite developer. More and more that means developing NetSuite-native solutions. But, as I've long suspected, there is a huge amount of pent-up demand for applications that integrate with and extend NetSuite. Mobile apps in particular, but desktop apps as well. Apps for which Web apps simply aren't a good fit.

For years I've been hoping to use Xojo to develop those types of NetSuite solutions, and I'm finally starting to do that. I'm taking baby steps. I'm being slow, and methodical, and careful.

The sync utility that I wrote about is one example. Its's a solution that is already helping to make me more efficient with regards to the NetSuite development work that I do. There's a good chance that I'll make that solution available to the NetSuite development community at some point, because I think other developers would also benefit from it. And if in the process of doing so, an entirely new group of developers is introduced to Xojo, that would be great. Many of them have already started asking me about Xojo.

I guess I can sum all of this up by saying that I'm giving Xojo another try. I've missed it, and I'm enjoying using it again.

I've even started to use Xojo for a few client projects. For example, I'm currently in the very early stages of developing an app that runs on Raspberry Pis (Raspian) and integrates with NetSuite. I was able to get a proof of concept developed in under an hour. And get this - I've never developed a native Rapsberry Pi app before. Not ever. What other development platform could I have done that with?

Looking Forward

The Xojo team is talented and passionate, and you can see that in the product itself. If you ever get a chance to chat with the team, I think you'll find, as I have, that they love what what they do, that they believe in their mission, and that they are genuinely good and nice people.

And that's the thing that I think gets lost sometimes. They're people. They're humans. Just like you and I. They're not perfect. And so you're going to see that reflected in the product as well.

When I started using Xojo again, I had the same feeling about it that I did when I first started using it back in 2015. It instantly clicked with me. It felt logical, and familiar. I hadn't realized how much I had missed developing with Xojo.

After years of having a lapsed license, I once again have an active Xojo Pro license. I purchased it for two reasons. One reason is that I wanted to be able to compile the NetSuite console app that I developed. But the second reason - and honestly, to me the more important reason - is that I want to support Xojo.

I'm still rooting for Xojo. I want them to succeed, and I'm willing to help them do that any way that I can.

About Me

Hello, I'm Tim Dietrich. I develop custom software for businesses that are running on NetSuite, including mobile apps, Web portals, Web APIs, and more.

I'm the developer of several popular NetSuite open source solutions, including the SuiteQL Query Tool, SuiteAPI, and more.

I founded SuiteStep, a NetSuite development studio, to provide custom software and AI solutions - and continue pushing the boundaries of what's possible on the NetSuite platform.

Copyright © 2025 Tim Dietrich.