Kudos to Geoff and Xojo

But that’s your wish, the company can’t exist for one subset of their product. If they advertise and develop their product for desktop, web and mobile then they must spread evenly their effort to all three. Why should they focus on one to the detriment of others?

I too am impressed with Geoff (and his staff) for reaching out to their users. I run a worldwide photography society and I too speak to my members as often as I can. The reviews of my company often speak of how grateful they are that the CEO has phoned them.

It’s not just Geoff either, Dana reached out to me yesterday unprompted, we had a great discussion and it really made me feel included and valued as a customer.

It’s hard when you’re not a multi-billion dollar operation with thousands of staff to dot every I and cross every T but I think Xojo do a fantastic job with the resources that they have and I for one feel very very confident that any features that slipped in 2020R1 will soon be there and we’ll love the product just as we have for the last two decades.

It’s a big thank you to the Xojo team from me.

5 Likes

Hi Geoff,

First of all …

Yes … I think Xojo is one of the best swiss army knifes for software development
Yes … Web 2.0 (regardless the time it took) is a good start…
Yes … The staff of Xojo is easy accessible
And Yes … I really love Xojo bigtime :smiling_face_with_three_hearts:

But :roll_eyes: … Xojo is having (kind of) growing pains… :woozy_face:

As you (should) know, some of the Xojo users are making a living out of it and have their products build in Xojo.

Xojo has made over the last 3 years web 1.0 → web 2.0 conversion promises (at XDC’s) , that they simply don’t keep…

This is not a complain only about,
* The fact that we build projects that we actually, for a large part, need to rebuild.
* That development of our products are on hold during those rebuilds.
* So Simply it’s gonna cost allot!!..

Although above items are all true …
And after you are basically saying … “Just let your products on 2019r3”.

Is the thing that we most worried about???
That (it looks like) this issue is put easily aside by Xojo, as if we were are just a couple complaining developers …

It looks Xojo doesn’t know how to handle this kind of complains…

  • Perhaps they didn’t expected it?
  • Perhaps they not interested in it?
  • Perhaps they hope it blows over and everybody forgets?
  • Perhaps Xojo is not interested to be accepted as professional development tool?

I don’t know!!?? :no_mouth:

Even in your thread about what we need in web 2.0, I suggest (as a absolute minimum for conversion) Perhaps a simple find and replacement of old to new property-names??? Your answer looks like Xojo is not able to 100% determine if a replacement is correct or not :thinking:

It looks to us like (couple developers I know) …Xojo is not considering the need for professionals, to keep their investments in Xojo projects (man hours) safe. Xojo needs to realize that they are not (anymore) only used for funny home project.

I’m not complaining because I like to complain or it’s a habit of my :disappointed: … I complain because I really love Xojo (and without a personal phone call from you, you already earned my dedication to the Xojo platform :face_with_hand_over_mouth: :grin:)

But as quoted by Jon, people are planning to moving away from Xojo (most I know by lack of conversion).

We don’t want that to happen, because that’s making Xojo as a company less reliable for us… and yes that reflects on our company’s and that in combination with your responds on the forum regarding web conversion … that’s makes me a little bit :angry: But I can say the rest of developers where not amused to…

So… if Xojo don’t have the resources to put out what is promised (and needed) double the price of Xojo. Or tell us to wait another year for a conversion… But don’t react as if we have some stupid complains and advise us simple don’t upgrade to new version… That’s a ridiculous respond that belongs to hobby project development tools.

So is Xojo having growing pains … we say YES!

I am nearly certain that we never promised code conversion from Web 1.0 to 2.0 as we have not done any code conversion in many years as we believe it has to be close to perfect or you’re better off not doing it at all.

What we talked about was converting the project itself so that you wouldn’t have to copy/paste between the old project and a new one.

Hi Geoff,

Please take a look at the research of Norman…

Beside this XDC moments, a fair expectations should be also enough to go on … When is the last time that Xojo told us to actually rebuild project by hand??? Before we can move on with our projects in a current Xojo version (with PDF support etc etc)

Let’s be clear about it… I don’t expect (never did) that after a conversion I’m running 100% web 2.0 complete rewritten for all new features etc etc…

I completely understand that I’m facing for all my projects a long road ahead to make them flexible / fluid bootstrap compatible etc etc

I also understand that 2.0 listboxes looks the same as 1.0 and not enabeling all features as they will do when creating a new web 2.0 page and put listbox on it.

But Geoff we are far away from this point …

Please read complains about it on the forum.
And let’s be honest … a web 1.0 project does not run at all at this moment.
And it looks to us that Xojo is nothing gonna do about it…

Leaving us with projects that needs to “rebuild by hand”… My projects are not static, but we are expanding (on customer demand) this products. These are projects that are in production and (just as Xojo itself) needs new releases. You of all ( IT-nerd from the the first commodore :wink: ) must understand that.

Static (working) conversion 1.0 to 2.0 (as promised) gives us the possibility to move on and step by step, module by module update to be completely web 2.0

What I’m asking is exactly what you defended yourself with fire in Germany regarding the transition api 1.0 to api 2.0 …

Why creating this transition mode for Api 1.0 → 2.0 and now with web 1.0 to 2.0 you don’t???

And when asking about it… you generally saying “Bye bye… you must be on 2019R3” and from my point Xojo is gonna leave it with that answer…

I hope you understand that is really upsetting :cry:
I can’t believe that this is the case

Kind regards,
Erwin

PS: And sorry… but a replacement of a open event to opening doesn’t look like a rewriting of a program.
Development tools like webstorm refactor easly… Even VB 6.0 has decent understanding of renaming properties and variables… :wink:

2 Likes

@Erwin_Meijer if someone leaves Xojo because Web2.0 doesn’t automatically convert the project, then honestly it’s a dumb move. If you have a 1.0 project with thousands of lines of code (much of which will not need to be touched as it is backend), why would you simply toss it all away to re-invent the wheel. It will be MORE work to rebuild it in some new platform. A move like that would be borne out of spite.

And Geoff has never said that we would always need to keep building out 1.0 projects in 2019r3. I discussed this with Geoff and told him I’m terrified to switch right now. He said that’s fine - don’t. But from my discussions, I believe Xojo does have a plan to get us to the point where we can more easily convert. It might not be NOW but it is coming.

Part of the growing pains is that you have had fragmentation of Xojo due to the different platforms. Desktop is pretty well solid but even somethings like setting proper heights on labels in Linux were a long time in coming. I’m happy to see this! But by its nature web was a very different animal. Web1.0 has some serious flaws and issues. We’ve all worked with it long enough to know how to sort of work around those. And then there’s iOS. Again a different animal with a fairly well half-baked framework that really wasn’t complete when released. Thanks to incremental improvements and the likes of @Jeremie_L and @Jason_King and others many improvements have been added that fill in missing pieces. So right now Xojo is very fragmented.

Geoff’s goal has been to unify these to make the difference between Web and iOS and Desktop the same as the differences between Windows and Mac. It’s a hard task and has needed a lot of work under the hood. The Xojo Framework was the first attempt at this but it was just not something the user base liked. So API2 was developed. Again a major change to unify and correct the fragmentation. And yes it is painful. I now have to deal with RowSets instead of Recordsets. DataReceived instead of DataAvailable, etc. In the long run we will all adjust. And I’m happy to if it unifies the features and code base. I will be able to use the same TCPSocket in Desktop, Web and iOS. You can’t now.

And yes these are growing pains and yes Xojo is 22 years old but come on. The amount of technological changes in the last ten to 15 years has been huge. It’s hard for anyone to keep up with it. So yeah when scrambling to adapt to these, it’s difficult. If Xojo is working on something and then Apple changes the rules or adds some new feature (DarkMode) then guess what - things have to get pushed out or delayed so these new important things can get added in. It’s called growing pains. Even big companies like Apple have them. Look at how bug ridden Catalina has been. And Microsoft too. Do you EVER want to install a version of Windows before the first service pack is released? Not really.

Another user on the forums tried to convince me to abandon Xojo for my iOS app and build it in Swift. While it took me about 9 months to get my first version released much of that was because I dragged my feet and didn’t spend more than an hour a day on it if that. But much of my backend code was virtually unchanged save for a few things like having to change string to text, variant to Auto, using Jason’s RegEx code, etc. But those were vastly simpler than reinventing the wheel in Swift! Now I have a very stable app where I am gradually going in and adding desktop features I’d previously disabled. All the bugs I had already fixed In Desktop are still fixed in iOS! And it’s very little work! Some I’m leaving alone in the hope that API2 for iOS is coming soon. Hopefully that will make it even easier.

So if you are invested in Xojo and do multi platform work you are silly if you think of changing. Yeah we get annoyed and frustrated. Sometimes we may wish we could go ten rounds with Geoff or Greg. It at the end of the day we know that we have made our bed and now we have to sleep in it.

4 Likes

That’s something you and I can’t decide for them… But if this is the case the problem as I described still stands. I’m pretty sure that it’s more a trust issue after the feeling to being send to the woods by Xojo …
Sure web2.0 — first release needs some time to get robust etc … I understand (and I think most of us understand this)

Well I pray they have … perhaps they must communicate this??? When a forum explodes with complains… perhaps it’s a good moment to start talking about it??? Explain their strategy??? :confused: !!!

Perhaps as a reaction on my post instead of replying kind of “I never said that”???.

4 Likes

@Jon_Ogden - applying to become a Xojo MVP ?

6 Likes

I could really care less. My feelings about Xojo are based on what I need to operate my business and the investment I have made in the platform. I’m not aware of anything else that is capable to give me all I need in one platform. And even if there is something else, the opportunity cost to switch over is enormous. And then I can guarantee you that on that platform there would be bugs, issues, things I don’t like, etc.

So do I like everything about Xojo? No. Do I like the way certain ex-employees of Xojo have been treated? No. Have I complained about problems with parts of Xojo? Yes. In fact @Jeremie_L told me he wasn’t going to help me anymore because all I was doing was complaining. I’ve even been taken to the woodshed by Xojo for a post where I posted an icon of an ostrich with its head in the sand and the word Xojo under it and suggested that be their logo.

So believe me I’m not looking at this with rose colored glasses at all. There’s things about Xojo that suck. Things I want better and different.

If it was my company would I express things differently than Geoff? Perhaps but would it make a difference? Likely not.

My whole point with this thread was not to get into a defense of Xojo, but to really bring to everyone’s attention that I do believe Xojo cares about their users. As a company they want to be treated with respect just like the rest of us.

I cannot disclose what Geoff and I discussed as it pertains to future releases. All I can say is I am very pleased and excited.

6 Likes

Although Xojo inc presented it that way, iOS using a different API from the desktop language was not a requirement, but something they WANTED to and so decided to do. That fragmentation was on them as was it’s consequences for the product.

Yes they planned to bring that framework Desktop and web into that framework, but we know how those plans worked out. It was way too big a project to get done in a reasonable time frame… and would have been an issue for moving existing code forward in time.

Using the Xojo Framework for iOS was a case of the tail wagging the dog IMO.
X-Platform Desktop was (still is despite showing it’s age) their biggest asset and where most of the existing USER codebase was/is… The biggest advantage Xojo iOS would have had was being able to reuse a lot of that non-UI code… but they oppted not to make that possible …

With API 2 they also caused more fragmentation in a way that IMO was not truly necessary to advance the product’s capabilities, and hurt many of long time users most (be they pro or “citizen developers” who create and maintain apps for use at work) … hence why so many that were big contributors to the community for a long time are upset.

API 2 may not be a big deal to new users and pure hobbyists , but for many of those with significant API 1 code bases that need to be maintained and expanded (rather then rewritten which is often not practical) and be able to run on old and new OS versions, it is a very significant issue…

One that Xojo Inc does not seem to fully appreciate … See: <https://xojo.com/issue/57885>

One of RB/RS/Xojo’s major strengths WAS that it used to be able to move forward, but still maintain reasonably easy backwards compatibility with only a few #If XojoVersion statements… losing that has increased fragmentation…

Expecting users with large code bases to stay with the product and just re-write is not realistic, particularly given the twists and turns the the product has taken in recent years.

How many in such cases, can’t help but wonder wonder what will be changed next that will cause lots of headaches for existing code?

There was a trust based on history that would be kept at a minimum. That trust is now gone for many.

-Karen

3 Likes

I also would not say that they don’t care!!! They care. But they have another problem. Look on other comppanies producing IDE’s and compilers. You will see that they are mostly ten times bigger. That makes in one part everything faster cause of the small structure and faster communication. But it makes another problem: with a small team cou can not work on 10 places at the same time. You as a CEO have to make decisions for priorities and possibilities and this decisions will change the way it is going. Therefore there is not the Way to go parallel in 10 construction areas at the same time. But xojo is with Android, IOS, the LLVM problems, Web 2.0, API 2.0, the IDE problems and so on. When and if you look on this, there has to be a problematical situation coming out of it. How shall a small team do this stuffs parallel. And exactly that is the point where you may have a problem as a customer. Because tons of projects are standing in frnt of the solutions for your problem. As example the xojo IDE is not really working under linux and sucks really. It is a known effort for a long time and was not changing with 2020Rx at all. I think that complaining is the only way in moments like that. Why? Because I believe in xojo. Otherwise I would be far away and say that’s it. But I take care of it and I see that there is a need to a movement in their way of doing stuffs.

4 Likes

Brand respect and loyalty is earned, and the result is uptake of revenue from sales. If this was a free and open source project, done out of the curiosity or good nature of a few part-time developers who then provided the work to the public free of charge… then we could argue about hurt feelings and disrespect of the principals.

Xojo Inc. demands and receives money (and no a trivial amount) to deliver a working product to a specification (that they establish). This is a commercial enterprise, who for some time has been failing to deliver on even the core features (many over a decade old), to say nothing about some new gizmo that was promised or a new platform target.

We can run around the problem any number of ways and get sentimental about our pet product but it will not change the fundamental actions needed to recover the customer loyalty…

Xojo Core DESKTOP API and IDE needs an intensive and year long bug squashing pass. (Mac, Windows, Linux,-ARM)
Xojo Android needs to be suspended. (resume it later when core works solid)
Xojo iOS needs to be suspended. (resume it later when core works solid)
Xojo Web needs to be fixed/finished in such a way that 1.0 Users are not left holding a bag of garbage and have some reasonable transition path over time.

If they need more Devs, money or time, then they need to consider some of the following:

Xojo can raise licence fees, do community/crowdfunding ,get investors, e-beg or go partial open source, or any combination of the above… but it needs to get debugging done. full stop.

If you knowingly sell a product that claims to perform X,Y and Z and it barely produces X’ish when Jupiter aligns with Saturn, and Y is superficial or purely cosmetic, requiring endless complex workarounds, and Z flat-out does not work due to showstoppers, and your customer base reports this to you as being of the highest criticality to them, what do you do?

A) Stop everything and fix the mountain of critical bugs, making the product at least deliver what was paid for. Make good on your side of the deal and earn the trust of your customer base who needs this to put food on their tables.

Or…

B) Lets make moar Xojo targets for Apple Watch,Tesla cars, XBox and Nintendo Switch because lord knows we need more marketing targets to draw in eyeballs. After all, people don’t pay for bug fixes… they want new features right! No need to fix classic showstoppers when a new target will draw in fresh wallets.

One of those strategies is being a responsible and reliable party to a two sided financial transaction, a good corporate product/service provider and somebody we all want to continue to do business with.

The other (if this ineffective and nonsensical strategy continues, against the intense and highly passionate objections (literal pleas) of the many of the paying customers) will thereafter be a borderline fraud. A willful disregarding of delivering on your end of a business transaction. Now as EULAs go, there is no warranty for performance or fitness, so the only remedy for customers who did not receive anything close to what they paid for will be to terminate the relationship. I.e. customer collapse.

If they want to pump out whatever suits them, and the customer needs be damned… fine, but they must disclose as such before customers buy in. People here are buying a expectation of minimal delivery on the CORE specification (to say nothing about promises) and they intend to trade their money for the ability to use that product (to the published features and specification) to earn money for themselves. Otherwise there would be no need to do business with Xojo Inc.

The users have spoken, clearly. Stop the feature creep madness, fix the bugs and deliver what we paid for… ABOVE ALL ELSE. There can be no ignoring this now, or returning to the status quo without a willful and intentional signal to the customer base that, “you don’t matter”, “we don’t care if you cant use what we sold you” and finally “we are not even going to try to keep up appearance anymore, just pay and if it works, it works”

Personally, I can’t believe that Xojo will fall back on new customer churn and damage control until eventual collapse, they are better than that, and this is the rubicon moment. Everybody is watching intently now, make a massive and honest effort to fix it in good faith or admit that it is all pointless and you don’t actually care what we think or need.

Customers are pissed off, fired up and fed up because we love and need and paid for this tool for our projects, its not a fictional construct like warp drive, Xojo could and should work as advertised, Real Basic did. We don’t want to see out time investment flushed down the commode, I would love nothing more then to see this ship turned around, Apple style… Why else would I spend my time writing this (yet another plea into the void) on a Saturday night if I did not take it seriously?

What is the game plan to fix this mess? Being dismissed, ignored or swept under the rug will not cut it anymore… we need a practical, clearly defined and honest plan to get the critical bugs fixed within the next 6-12 months or this entire endeavor is doomed. Literally, take the list of customer concerns voiced over the last two weeks, the feedback database and have a emergency conference over at Xojo. Check egos, expectations and personal desires at the door, return to the remaining customer base and deliver a realistic and comprehensive roadmap to fix Xojo in 6-12 months, and a breakdown of what it will cost.

Do it, turn it around, pull it out of the fire and make it great… I dare you.

5 Likes

One benefit to RowSet is that is supports iterators which makes for cleaner and more readable code.

1 Like

If someone is interested, we could add an iterator to RecordSet via extends…

1 Like

Just my very simple advice: Don’t build a pyramid upside down. My feeling it’s that what Xojo Inc is doing lately. Think about it…

4 Likes
2 Likes

Way back in Mac Classic days you could set the system error beep to whatever sound you wanted – that’s the audio clip I used (it anthropomorphized the Mac a bit).

1 Like

Sorry, Geoff. You might want to listen to your 2018 XDC keynote again, where in talking over Web 2.0, you said that 99% of Web 1.0 web apps will be compatible and you will maybe only have to apply some minor tweaks to Web 1.0 projects. “Existing projects will just come forward.” Your words.

8 Likes

Please don‘t misrepresent those that left - that‘s a bit like talking ill of the dead when they can‘t defend themselves anymore.

Andrew Broughton, Tim Dietrich, Hal Gumbert, Axel Schneider left - and with them important free frameworks like ABmaterials, Aloe, Xanadu moved to Xojo‘s competition.

Bob Keeney has massively reduced his engagement with Xojo as over 200 hours of his tutorial videos as well as important Xojo add-ons like Full Text Control and Shorts have become obsolete. Thankfully Tim Parnell has picked up Argen and ActiveRecord.

There are a LOT of once prominent developers that have left Xojo after the API1 to API2 fiasco. Web1 to Web2 is just more of the same.

But what Xojo did is a self-inflicted wound that massively hurt the whole user community by driving the most engaged and capable people - the Pro developers - away.

Dave S. has shown in the “forum that does not dare speak its name” how to implement a Xojo-like syntax in Apple’s programming language - so it was clearly possible to do that for iOS rather than introduce API2 and make years and years of code base on which developers depend obsolete.

But that continuous unnecessary breaking of user’s code base plus the lack of bug fixes is what obliterates the trust those developers had in Xojo - so they moved away.

To the detriment of most Xojo users.

What. A. Waste.

6 Likes

You’re correct that in 2018 we believed that we could actually support both the old and new web frameworks within the same project. That turned out to not be the case and in 2019 at XDC we were exceedingly clear about that. We said we would not be supporting API 1.0 (that the new Web Framework would be API 2.0 only) and that while we would be importing projects, we would not be converting code because we have found in the past that unless you do it nearly 100% perfectly, it’s better to not do it at all.

4 Likes

So, back on subject. I want to thank Geoff and the Xojo staff. We develop Xojo apps exclusively on Windows but we compile for Windows, Mac (using a Mac), Linux and recently Raspberry PI. Much of the code is shared between projects.

Geoff and staff have allowed us to:

  • Develop Windows, Mac, Linux and Raspberry Pi apps.
  • As of now there are ZERO Xojo bugs preventing our apps from functioning properly. We have run into issues over the years (mostly our own code), but have always found a work around.
  • We have a Windows console app running on a 24 core server that spawns multiple instances of itself processing customer files. We had one job that was taking 8-12 hours to process using an old Microsoft Access VBA app. This same process now takes about 10 minutes with our Xojo console apps running in parallel. This console app also sends millions of emails a year and processes literally millions of pages of PDF files (using MBS DynaPDF)
  • We have a Linux Web 1.0 app running on two virtual machines behind a load balancer.
  • We have a Linux Web 1.0 app running on a single virtual machine that receives millions of web hook posts, parsing the json contents and writing to a database.
  • We have two different Web 1 apps compiled for Mac with multiple instances running on two Mac mini’s colocated in a data center. These apps are all running behind an HA Proxy load balancer.
  • We have a Xojo Windows desktop app that will eventually run our entire company. We are building it out over time to handle more and more tasks. Not too long ago we compiled it for Mac (using a Mac) and surprisingly, it ran the first time. Right now we don’t need a Mac version but it is great to know that we could have one with very little work.
  • We built a robotic assembly system and it is controlled by a Raspberry PI, with a Xojo app. A good friend of mine advised me to implement a state machine. After watching a few you tube videos, we were able to create a pretty cool implementation of a state machine in Xojo and it made the app much cleaner and fun to develop.
  • We are building an API using Web 2.0 to put a front end on a system that is currently controlled via scripts. Once this is done, any of our systems will simply use URLConnection to submit jobs and get results.
  • We did not like the “xojo.” namespace and we were glad Xojo listened to customers and changed to API 2 instead.
  • When we rewrote our database access layer using API 2, we were able to remove a ton of code and have the security of prepared statements automatically.
  • We make extensive use of Xojoscript in many of our applications and it makes it easy to handle different scenarios without creating new apps.
  • We are excited to REWRITE our web apps as Web 2.0 apps. It appears that we can remove a lot of custom code that we created for UI related functions and it seems that each running app instance will be able to handle more users.

THANKS XOJO!

18 Likes