Software Development is Fluid

Software development is fluid. Some bug fixes and feature requests that seem simple are often not so simple, or, take a lot longer than originally thought. Some that seem like they’re hard are not, or, take practically no time at all. What’s worse, is that sometimes you don’t know what the level of effort is until you start the work.

Historically, the only way to know what future feature sets will be in Xojo is attend a Xojo developers conference where the CEO of Xojo, Geoff Perlman will sometimes tell us what’s coming up. These announcements are almost always preceded with a “we expect to release that feature in this timeframe.” It’s smart because he knows that software development is fluid.

The problem is that what we hear is, ‘Release X will have this feature.’ We hear a promise despite all the hedging made by Geoff. Like every user I want that feature now and there are times that I need that feature to sell some work. I think it important to remember that when selling any work you have to use the current (and proven) technology instead of what’s coming up.

64-bit Remote Debugging in Windows comes to mind. Geoff at last years XDC said that in the first quarter of 2017 Remote Debugging will be available across all platforms. In Berlin in May he said Release 2. Well, as they said in their blog post at http://blog.xojo.com/2017/07/26/the-best-laid-plans-64-windows-debugging/ this isn’t going to happen for 2017 Release 2. Apparently the LLVM compiler and toolchain isn’t ready for primetime yet. So instead of giving us a buggy (and probably unusable Remote Debugger) they pulled it.

I understand and applaud the decision. Software development is fluid and some things are out of their control. Since Xojo is not in charge of the LLVM compiler and toolkit for Windows they are at the mercy of other developers. It stinks but that’s just the way it works.

I know that some of you will jump on the ‘let’s criticize Xojo’ bandwagon and you have every right to do so. However, keep in mind that they do hedge their announcements with ‘we plan’ or ‘we expect’ to do x by this time or this release. If we want to get any information out of them about future plans we need to cut them some slack. They have zero obligation to tell anyone about their long-term plans.

What Xojo does is magic. For a vast majority of Xojo users it ‘just works’ on every platform they target. It’s been a long time since I’ve had something work on one platform and not on another (that wasn’t my own fault). Think about it: Desktop, Console, and web apps for Mac, Windows, Linux, and Raspberry Pi just work with a simple checkbox. iOS applications are different and use the new framework but I expect Android (promised by end of year) to be very similar (if not identical in most respects). And let’s not forget 32-bit and 64-bit apps just work too despite 64-bit being a relatively new target.

Software development is fluid and every year Xojo has to deal with whatever Apple, Microsoft, Raspberry Pi, all the Linux distributions, and all the browsers throw at them. I’d say they’ve earned some slack from us users. I’d rather have a release that works than one that doesn’t (I remember some that didn’t work).

Does this mean we should stop criticizing Xojo? Pft. Please. The day I stop criticizing Xojo is the day I stop using it. It is our responsibility to keep reminding them of what we need. A long standing criticism are bugs that have been reported and have been around a long time. But yet every release has many dozens of fixes so they do fix a lot of bugs. The one’s that are hard to excuse are new features that have obscure bugs that last multiple releases.

Some of the criticism must be on us users. We don’t always report bugs. Never assume someone else has reported it. Always try to give them an example project demonstrating the bug. Xojo has some responsibility for this, too, as Feedback hasn’t always worked for some users. This is part of the give and take of a software development tool company and its users. We need them and they need us.

So yes, it stinks that 64-bit Remote Debugging isn’t available for Windows yet. And you’ll note that they’ve not said when it will be available. We can hope that it will happen for Release 3 but until the next beta round we won’t know for sure. I expect that all of their other plans for 64-bit are probably delayed too. A 64-bit IDE might be a few releases away. We don’t know what this means for the new plugin format, or Android, either. Software development is fluid so go with the flow until we see something solid.

Happy coding!

3 thoughts on “Software Development is Fluid

  1. What I learned from Bob’s 3-Aug post:

    “I think it important to remember that when selling any work you have to use the current (and proven) technology instead of what’s coming up. ”

    and

    “Software development is fluid so go with the flow until we see something solid. “

  2. Tiny correction that Geoff mentioned “64-bit Windows Debugging” not “64-bit Remote Debugging in Windows”
    This means there won’t be any way to hit RUN or RUN REMOTELY and debug a 64 bit Windows app.

  3. Hmmm. In 2012 I extended my license for FIVE years, and It will be running out with the next release. I hoped that Xojo on the desktop would be rock solid by now, 64bit, and flicker-free on Windows (possibly having moved to the .Net framework), but the opposite seems to be the case. Progress on Windows has been glacial, and most people I talk to still use 2016 R3 because the releases since are unusable for many due to major bugs.

    Sure, there is now a very basic iOS, a web, a Raspberry Pi, and soon Android support. Great if you need it. But none of those are of any use to me. I got into REALbasic/Xojo because of its cross-platform promise. But what use is it to me when cross-platform is so neglected?

    What I learned from your post is the same my experience taught me: don’t buy on promises and expectations. Only buy when what you need is already there – it’s much cheaper in the long run.

Comments are closed.