Xojo R2 Reviews

If anyone is interested my review of R2 is at https://www.bkeeneybriefs.com/2019/10/xojo-2019-r2-api-2-0-is-here/

Thom McGrath also has one at https://thezaz.com

From just that quick read from Bob’s blog… I would say someone at Xojo was reading too much Swift Documentation during this.

Anthony from Graffiti Suite added his thoughts on API 2.0 https://graffitisuite.com/news/from-anthony-lets-talk-api-2-0/

For the sake of archival, here’s the permalink to my post: https://thezaz.com/blog/and_then_there_was_api_20

Totally agree that arrays do not have rows, and that “append” is (was :’( ) the perfect word. One may not use “append” in everyday conversation, but that doesn’t mean that there are programmers who don’t understand what it means.

Norman Palardy post his review at https://www.great-white-software.com/blog/2019/10/09/xojo-2019r2-api-2-0/

Who was first ?
(Who was the most accurate ? :wink: )

[quote=457161:@Emile Schwarz]Who was first ?
written ? or posted ?

mine of course ! :stuck_out_tongue:

in an opinion posting… accuracy is based on perception of the author… all I have read indicated interesting information… But in MY opinion Xojo suffered from the same thought patterns in developing parts of API 2.0 that they did with the previous and “disastrous” “New Framework”

Nobody mentioned the new Dictionary.Constructor(delegate)?

We await your blog post :wink:

It’s one of those features that I’ve never needed and still don’t. It got literally zero attention from me.

The positive: It will let you implement a more flexible Dictionary where “A” could be considered different from “a”, or 0.0 could be considered the same as 0 or even 1.0.

The negative: The more keys you add, the slower it will get as it compares a key to every existing key until it finds a match.


it wasnt that big a deal since it was lifted from Xojo.Core.Dictionary which I suspect almost no one used anyway

I didn’t use that because it was slower than the original Dictionary. I can see using the Delegate once it’s been optimized, or for a very small number of keys.

I wasnt wrong :slight_smile:

So far, I am a big fan or R2. I like the attempts at rationalization of verbiage. I do not like the fossilization of languages. Dim to Var is trivial but are we going to keep Dim forever when it no longer has any sensible meaning?

I use some languages that are zero-based, others that are 1 based. I like things like Array.FirstRowIndex if I do not want my head to be bothered with 0 or 1. UBound to LastRowIndex. For me this is clearer.

Zero-based is one of those things that is not in the normal vernacular of English. But you get used to it fast enough in the context of programming. Consistency is more the issue and trying to address this is a big plus.

Have I thought of Arrays as rows before? No, not really. But it is not something that bothers me. After a couple of days of thinking of arrays in these terms, it will all just vanish as a concern. In some parts of the database world there is a migration from records to rows and fields to columns. When I am traveling there, I try and just use the different terminology. Embrace it rather than saddling my brain with translating it.

I have no problem with AddRow rather than Append. My own experience with things like going from English measures to Metric or notches on an iPhone is that you just use the new environment for a while and it just starts to feel natural. Try and resist “translating” the new terminology back into the old. Just use the new.

Somebody built a home in a part of our “view” from our summer house. I despaired and tried coming up with schemes like strategic planting of trees etc. When it first appeared, it stuck out and bothered me every time I looked out. A year later and I do not notice it. for all intents and purposes. The human brain is programmed to notice and focus on change. Change is always potential danger. After a short time, it fades into the background.

When change has benefits they are often obscured by the discomfort that change brings. Desultory comment about “change for the sake of change”. In natural spoken language, there is always change and sometimes it seems bizarre for people of my age who have been using it one way for so long. But my advice is to let it go. :slight_smile:

I just wish that Text had triumphed over String but so be it.

Do you have customers that require old versions of Windows or macOS ?
If not R2 probably wont affect you much as I wrote
If you do you’ll be in for a less than ideal experience with 2019R2 in the mix moving back to those old versions to support those old customer :frowning:

EDIT : the reviews linked to above are mostly from people who earn full time livings using Xojo just FWIW
Their concerns may be very different than your own

Here is one deprecation that did in fact affect me, and not for the reason you’d think :slight_smile:

I have a database program that allows the user to create custom forms (kind of like the old BENTO app) and I use the DATAFIELD property to store the field name associated with a given TextField… I DO NOT use it with a datacontrol or any binding… Its more like a CellTag would be used.

No big deal, I can engineer around it… but did run across it when I was updating from 32bit to 64bit and decided to do all that using R2

Quote stolen from Anthony’ post:

  • I’ve always tried to keep up with each Xojo release, but this one I’ll have to avoid for a little while. -

This is what could apply to many of us.