I have just installed the latest Xojo release and was curious about the new DatabaseConnection class.
The developers have really and seriously managed to keep up this endless ignorance of mysql / databases and encodings? Every programming language I know of manages to address a database in a meaningful way without having to eat its guts first.
Operating systems run on utf8, databases run on utf8, development environments run on utf8. Even my refrigerator probably runs on utf8!
Oh yes. Xojo runs on utf8. But if I want to use mysql, I have to define an encoding for every string I read. FOR EVERY!!!
Now Xojo has a GUI for the database that also does not recognize encodings:
What - damn it - is so difficult about building a database connection in 2024 as you would in 2024 and not as you would in 1996? The database server tells you which encoding it uses internally. You know which one you use in your ide. All you have to do now is set the connection accordingly and then provide the received data with the correct encoding.
If you - seriously - think you canāt just change this as a default - because there is someone somewhere who is still developing software from 1996, which then has the wrong encoding:
Hey! Xojo, has made my code completely unusable several times in the last few years and produced rewrites galore!
But even then: Just make it configurable!
And please - I know itās well meant - but please spare me the workarounds. I know that StringValueX etc. exists. I have solutions for it. But it is simply a bottomless impudence to offer such a thing for a lot of money.
By the way: I have no idea why anyone would build a GUI for the database class tables in Xojo (the time would have been much better spent on the above task) and you can do exactly nothing with it. A (I assume it is one) timeout on the database simply crashes the entire Xojo IDE.
Really well done. Itās just wonderful to be able to spend a huge amount of money on alpha-stage software every year. And Iāve just had the new release on my computer for 2 hours and 13 minutes. I must have spent an hour writing this article. It will certainly be exciting to see what else is coming in the next few days.
Please make sure to create an issue regarding the encoding problem. If you send me the issue number Iāll make it a priority to try and get it fixed quickly.
Yeah, that happens. If you look at that issue, not a lot of people were running into it and thus it didnāt bubble to the top. We donāt address issues by age. We address them based upon how much total trouble they cause. So a bug that is brand new but will cause every user a significant amount of trouble is going to get our attention immediately. Another bug that causes a little trouble for just one user wonāt likely get a high priority. That doesnāt mean it never gets addressed. It just means that itās a lower priority. Sometimes an engineer sees a bug like that and just decides to go in and fix it. We do give the engineers some room to work on things they want to work on.
Letās put it this way, there were obviously enough people affected that a whole bunch of people came together in the forum to ask about it. Christian wrote a blog post about a workaround and built his own plugin to mitigate this.
You yourself have rather used this workaround diligently in your database abstraction layer in order to be able to work with it. MariaDB / MySQL is not necessarily some underground database that only exists because someone forgot to delete it. A few people actually use it.
Iāve been using RealBasic for well over 20 years and there came a time when I gave up writing bug reports. Maybe - at least I have the slightest feeling - someone has been interested in fixing bugs again for a few months now. I wonāt believe it until I really see it.
In my opinion, I wouldnāt pay much attention to what arrives in the issue tracker today or what is trending there. After all, Xojo has done everything in the last few years to give users the feeling that Xojo doesnāt give a ā ā ā ā about them. Professional users in particular have withdrawn massively.
You can see how everyone has actually given up when you see that a āworkaroundā is pulled out of the hat for every problem. It has simply become completely normal that workarounds are constantly being developed for things that donāt work. Itās tons of working hours because you know that a ticket would remain unfixed forever. And hey, software that Iām developing today that has to be ready in 1 week - 3 months canāt wait months or years for a fix.
A fix is also not a bonus for the user. I expect a development environment (for which I pay!) to simply do what it is supposed to do. It is not my job to look for or document bugs. This is a concession on my part!!! A software tester is provided with the software and receives money for his work. So I am clearly NOT a software tester.
Letās see where this goes, but at the moment I keep seeing people who are pretty unhappy with the situation and even my best friend (a professional developer himself) thinks Iām pretty stupid to still be working with Xojo.
I would like to make a guess, but it would sound ādissatisfiedā.
In fact, I can completely understand @Marius_Dieter_Noetzelās dissatisfaction. And although I think the new database class is a complete waste of Xojo Incās development time, I am very happy with the current situation. Xojo has developed massively in the last 2-3 years.
The only thing that worries me is that the team still seems to be far too small to keep up with the demands.