An Idea for Xojo's Future (with summary)

Its Sunday and time to read and write :grinning: I wrote this in January - and it is still true:

I do not believe anything. No numbers, no estimations, no recommendations and no promises. I just try out and if it fits I take it for this task. I do not look back and I do not look into the future. I just know what I want and what I need. For the moment only. Take it with a grant of salt please.

Markus, thank you for the article and your courage. Well done. And may be a bit too deep. Finally it worked out that Xojo did not ignore it. If the reaction was strategically successful is something else. But you did the job. Even if I do not agree with all of the content: Thank you for that.

I introduced Quality Management Systems (QMS) in several companies already. This works like Markus showed: Counting, measuring and so on - the so called DMAIC cyle. I’m in doubt that Xojo haves something like that - but I believe that they MAY introduce something like that now - after those rumbles. And I’m sure, they will also read this here:

Don’t get emotional please. It’s not worth it.

3 Likes

Ideally it wouldnt

But depending on how that feature was architected addition of a new feature MAY affect some code that the old feature relied on that the developer adding the new feature was NOT aware of
Esp if the old code relied on some side effect of code used for the old feature

It has happened

Code SHOULD NOT be written to rely on such things
But sometimes it happens

1 Like

What a brilliant ad :wink:

truly one of my all time favourites about this business

I see no evidence Xojo continues to market themselves as using a rapid release model. I also see no evidence they ship software on anything resembling a rapid release model.

New features in every release - that’s the RRM. Even Christian Schmitz has posted that he would like to see bug-fix only releases and has pressed Xojo on it.

How to Hunt Elephants

MATHEMATICIANS hunt elephants by going to Africa, throwing out everything that is not an elephant, and catching one of whatever is left.

EXPERIENCED MATHEMATICIANS will attempt to prove the existence of at least one unique elephant before proceeding to step 1 as a subordinate exercise.

PROFESSORS OF MATHEMATICS will prove the existence of at least one unique elephant and then leave the detection and capture of an actual elephant as an exercise for their graduate students.

GRADUATE STUDENTS don’t hunt elephants, but they sure enjoy driving around in jeeps.

COMPUTER SCIENTISTS hunt elephants by exercising Algorithm A:

  1. Go to Africa.
  2. Start at the Cape of Good hope.
  3. Work northward in an orderly manner, traversing the continent alternately east and west.
  4. During each traverse pass,
  5. Catch each animal seen.
  6. Compare each animal caught to a known elephant.
  7. Stop when a match is detected.

EXPERIENCED COMPUTER PROGRAMMERS modify Algorithm A by placing a known elephant in Cairo to ensure that the algorithm will terminate.

ASSEMBLY LANGUAGE PROGRAMMERS prefer to execute Algorithm A on their hands and knees.

DATABASE ADMINISTRATORS do not need to go out and capture elephants when they can retrieve them simply with an ad hoc query:

SELECT * FROM AFRICAN_CRITTERS WHERE CRITTER_TYPE = ‘TERRESTRIAL’ AND SIZE = ‘LARGE’ AND COLOR = ‘GRAY’ AND TRUNK =‘YES’ AND ODOR IS NOT NULL;

ENGINEERS hunt elephants by going to Africa, catching gray animals at random, and stopping when any one of them weighs within plus or minus 15 percent of any previously observed elephant.

SYSTEMS INTEGRATION ENGINEERS are not so concerned with hunting elephants as with creating a seamless interface between the elephants and their environment.

ECONOMISTS don’t hunt elephants, but they believe that if elephants are paid enough, they will hunt themselves.

STATISTICIANS hunt the first animal they see N times and call it an elephant.

CONSULTANTS don’t hunt elephants, and many have never hunted anything at all, but they can be hired by the hour to advise those people who do.

OPERATIONS RESEARCH CONSULTANTS can also measure the correlation of hat size and bullet color to the efficiency of elephant-hunting strategies, if some one else will only identify the elephants.

POLITICIANS don’t hunt elephants, but they will share the elephants you catch with the people who voted for them.

LAWYERS don’t hunt elephants, but they do follow the herds around arguing about who owns the droppings.

SOFTWARE LAWYERS will claim that they own an entire herd based on the look and feel of one dropping.

VICE PRESIDENTS OF ENGINEERING, RESEARCH, AND DEVELOPMENT try hard to hunt elephants, but their staffs are designed to prevent it. When the vice president does get to hunt elephants, the staff will try to ensure that all possible elephants are completely pre-hunted before the vice president sees them. If the vice president does see a non-pre-hunted elephant, (in other words, a live one) the staff will:

  1. compliment the vice president’s keen eyesight and
  2. enlarge itself to prevent any recurrence.

SENIOR MANAGERS set broad elephant-hunting policy based on the assumption that elephants are just like field mice, but with deeper voices.

QUALITY ASSURANCE INSPECTORS ignore the elephants and look for mistakes the other hunters made when they were packing the jeep.

SALES PEOPLE don’t hunt elephants but spend their time selling elephants they haven’t caught, for delivery two days before the season opens.

SOFTWARE SALES PEOPLE ship the first thing they catch and write up an invoice for an elephant.

XOJO SALES PEOPLE catch rabbits, paint them gray, and sell them as desktop elephants.

I would say “not doing regular bug fix only releases hurt the product” versus RRM which isn’t something they claim anymore. I think it would be difficult to have a bug fix only release unless the cadence was even faster. Features are going to naturally be added with or without RRM.

It’s actually easy. Don’t include features. :grin:

But they are usually added in a half-baked state. A date control that doesn’t show up where it was placed, a listbox header that has some serious bugs and is user-unfriendly as hell, a .ToInteger that is supposed to work exactly like Val but doesn’t, etc etc etc

You have to wonder how these were ever ok’d for release …

What I mean is naturally they are always working on new features. Withholding down work is actually bad because you don’t know how it will impact even later features once feedback is in.

Also, all of this is based on the assumption they can fix a lot of the bugs.

A tick tock schedule where there are bug fixes ONLY
Then releases with features
Bug fixes only

should be possible

That really depends on the locus of the bug I suppose
The more low down it is the more likely fixing it has side effects and the more difficult it makes fixing it

If you feel the need for “shooting the messenger” then maybe you have no argument? I’d rather you came up with an example of “unrelated systems” in Xojo. I’m pretty sure I can build a connection between any two systems you care to mention …

I marvel at your self-awareness … :wink:

[and yes, I’m a sarcastic sod … but that one was too easy … :grin:]

Lets just say that I can corroborate that there were instances where “programming by side effect” was revealed because of new feature seeming to break an existing feature
It didnt tend to happen a lot - but it did happen

One of the major evidences for Rapid Release Models is always that there is no Beta Phase but direct Release.

That is the fuoundation for the Result we see: half baked new Features.The Result of RR Model: not usable Software.

While RR Model has exactly this sign I can not understand why this discussion runs.

Not RR works:

a) maintaining the existing Release with Bugfixes and Updates
b) write new Features and start testing in Alpha Releases and Beta Releases
c) after Features are adult Start public Beta Phase
d) release of the new Version

Extremely important in this process is. warning early enough before Releasing for Features that will deprecated and explain workarounds for Customers.

The Release Process of Xojo:

  • Writing new Features and Bugfix
  • releasing quarterly baked Tester Release
  • after two weeks release the final Release
  • with final release deprecate immediately the former Release
  • delete the documentation of the former release from the web
  • do no documentation about deprecations and changes

That is not even a Rapid Release Model. It is not even a Model. It is releasing from the Chaos. There is a fundamental law in computer science: NEVER DO LIKE THAT. But Xojo does.

You may think that you know it better. But it isn’t so. This Release model can not result in real stable releases. It is always, every Software Release of Xojo never out of the Alpha Release state released and all time with a new release the old release if deprecated. Exactly that makes the problems.

The Release model is the problem which makes it possible that the Releases never become stable and reliable.

2 Likes

Incentive to abandon prior versions and always runs the current one.

Nota:
They do not removed API1 when they implemented API2.

Nota: when implemented Web 2.0 they deprecated and removed Web 1.0 without previous warning that Web 2.0 will NOT be code compatible while it leaks tons of the functionality (only for information).

Nota 2: they implemented several controls like Web 1.0 but with another functionality and syntax than Web 1.0.

Funnily enough I just saw mySQL and TLS 1.2 on Windows? - #8 by Thibault_Delimard - Databases - Xojo Programming Forum

Ulrich wrote:

It’s so frustrating having to tell the customer he needs to invest into another plugin to have a piece of security that was introduced 13 years(!!) ago.
Same for web which is still unusable for me without Drag & Drop.
Could Xojo please rename the Pro license to something like “All platforms” only? Or consider adding MBS because without it really is not for professional use.

Not THAT different from what I wrote … :roll_eyes:

1 Like

Following to all animals are equal but some are more equal: it is a difference if you write it or if he wrote it. Live with it and warm welcome from the club of Rome banned.

I was more referring that he came to a similar conclusion: Xojo is buggy, integrate the plug-ins.