Thanks !

Flat out I’ll say Thanks to Xojo for the 2.1 decision to revert the event name changes. Of all the changes that one was probably the hardest one to deal with as there’s no easy way to #if around an event definition or event handler.

Properties may still cause some grief if you start a project in 2019r2 or r2.1 since they don’t retain the “old” values” so going back to an old version can be tricky if you start in 2019r2 or 2.1.… Read the rest

WOW !

All I can say is WOW !

The Eagles reuniting was the first time I saw hell freeze over

And now I’ve seen it a second time

You’ll see what I mean

All I can say is OMG THANK YOU !!!!!!!!!

Just wait. You’ll see what I mean in the not too distant future.

Downgrade 2019.R2 to 2019.R1.1

It had to happen sooner or later. But now questions about how to do this are appearing. And the answer is “it depends”.

ALWAYS use a copy or have a backup copy of your entire project JUST in case something goes wrong.

IF you have a license that permits you to save as text (Xojo Project) save your project as a text project.… Read the rest

Prepared Statements

Often you’ll hear people say you should use prepared statements to avoid sql injection issues. They’re not wrong. But there can be other reasons to use them.

In some db’s when you create a prepared statement and use it over & over you can avoid a fair amount of a speed hit.

When you initially create a prepared statement many db engines will actually do some work to figure out what the optimal mechanism, or query plan, is to access the data in a table.… Read the rest

A little off the usual

With all the hoopla going on about R2 I have been reading some things that are NOT programming related. Not my usual sort of thing to read.

Stuff like this.

And as I read the article I kept saying to myself Uh huh, Yup and Dead On. And the initial observation he made about

Customers switch because the first company let them down.

Read the rest

Extension methods

Sometimes you run into a situation where you want to add functionality to an existing data type. It might be a string, integer, array or perhaps one of the built in classes that you want to add new functionality to.

Exactly how do you do this ?

You can’t just edit the framework and add new methods to the String type.… Read the rest

Moving to 2019r2

2019r2 changes a LOT of things.

Some of the things it changed are subtle and search and replace may NOT be the best approach to updating these.

For instance string method like Mid changed from being a 1 based offset for the starting position to a 0 based offset.

If all you do is change mid to middle you will inadvertently cause an off by one error because the start is now 0 based not 1 based.… Read the rest

Point. Missed.

Reading the latest blog post about “Your path forward with API 2.0” just reassured me that the pain API 2.0 brought to third parties was not understood. It puts those who create and sell code to others or who sell applications to a broad base of customers across many OS versions in a tough spot.

Xojo is a great tool.… Read the rest

Express yourself

I’ve seen a number of people say they are not renewing their subscription to Xojo. And because of that they are also cancelling subscriptions to third party products they rely on when using Xojo.

IF you are one of the people please let Geoff know why you are not renewing or are leaving.