It is not the point that there are really old bugs. The problem is that this bugs are showstoppers for many people. There is for example one thing I can not even understand. But it shows how Xojo, inc. acts with their customers. When releasing Web 1.0 it could be a simple thing to give the users the chance to rename the events used for mouse pressed. But from several reasons they thought: hey, renaming this event will scare nobody. It results in an App without this events after saving. Means: it is not even possible to work slowly on this application. You simply loose all stuffs not available in Xojo Web 2.0 instead of leavong them for the rewriting. THAT shows how they think about their customers. Not even a second.
With API 2 they acted different but not better. There is a big pile of stresses for the developers. And why? While renaming is their big hobby. And even if it makes sense where I am without any kind of believing: it makes no sense to rname msgbox to messagebox and back while users freaking out. What shall that be? A kids game?
And here we go: the Xojo IDE isn’t made for any kind of professional Software. And even if Norman or others telling nooo it is used for this and this…bull…it. Xojo has not real abilities for professional programming. Too many functionalities are not available or so buggy that they can not really be used. Getting a Xojo App running is impossible without tons of workaarounds. And this Workarounds are different from VERSION to VERSION. Nobody can tll me that this behavior is professional.
I am programming with Java (main language), C++ (second nearly main language) and in the meantime RUST which replaced C. What shall I say. With none of this languages I had such kind of experiences even which I had with Xojo. None of them is so poor in bugfixing, functionality, runtime speed, ecosystem and so on. None of them has a so bad service and support concept behind. None of them has a so bad documentation.
This never ending dicussion about native Xojo ends up on many edges. It ends up hard shile not really native Dangerous situation in Appstore checks. Dangerous when telling customers “all native”. I had tons of this discussions. If I want native I am using C++ for Windows and Linux and Swift UI and Swift for MacOS and IOS and of course I use Android Studio for Android. Why should I use different stuffs for native UI’s? When programming cross platform there is another need: I want to get a result running on all the supported platforms. Means: I can live with not native UI but not with not really cross platform.
Example? Enjoy: Programming with Xojo a Desktop Application can be an adventure. A customer of mine builded one. For Windows and Linux. Why for Linux? While it should run on Raspberry PI. But the App was not running stable on Linux. Not even on Linux X86 it was running correctly. Means: the platform was not really usable. Often crashing and made problems. Windows: was running with sometimes crashes. And a bad performance. MacOS they where not using.
After three years of trying to get this stuffs running the customer decided that he wants to get a rewrite for the App. We wrote this as a write along of his GUI so the customers could use it like the Xojo App before. Including MySQL Database connections and also needed: PDF generation. After we had the rollout his users where happy. App runs extremely fast and is doing the right Job. A few little Bugs we had to correct, a few of them even while they had them as logical Bugs in their Application. No question, can be happened.
It is not possible to write real XPLAT Apps with Xojo. It is running on MacOS like a charm, on Windows with many, many problems and on Linux like shit. That counts also for the IDE. I have a Xojo project I can edit under macOS and also compile. I can edit and compile under Windows but sometimes IDE crashes doing that. And I can try to open it under Linux but it crashes when pressing on run or compile and it crashes when using the GUI editor.
So I ask my self: how can this be used for professional projects? With tons of workarounds. With tons of show stopping bugs? It is simple. It can be used for not that complex projects. But big projects crashing it completely. So there is no usecase for Xojo without the following risks:
- it may not run on all platforms they promise
- it runs with a bad performance even after the speeding up
- it has a big memory problem while no real garbage collection
- it needs nearly a rewrite when touching code which is even two years old
- the sourcecode from projects of Web 1.0 is completely useless and can not be converted
- be sure that it will not run on all platforms
- if they become bankrupt the IDE is not usable anymore when changing the computer
(yes Norman, I know it is possible to use the extracted license but that is not working in all cases)
Looking on that list is showing only one thing: dangerous Idea. My customer I wrote about spended 2 man years for writing the Xojo App and nearly two man years more for bugfixing. We spended for writing the same application in Java one man year and wrote it with out Team in 4 month. One further month we needed for Bugfixing and optimizing. Shows some differences. No workarounds needed and the knowledge that this Application will run in 2030 with the same API without any problem. There are big differences between programming languages. And there are big differnces in their quality.