Very interesting thread on GitHub regarding porting to Xojo

I just found this in a Discord channel.

It is about porting an image editing tool called PhotoDemon from VB6 to Xojo.

Personally I am not that confident that one can build such a feature rich and powerful tool purely in Xojo without having to rely on any third party libraries.

Others here (with more experience and confidence) should give your feedback to them to motivate them to look at Xojo as an alternative to VB6.

Yup, thousands of devs still using VB6 and looking for alternatives… But the genious decided to deprecate many of the basic keywords and distance even more from basic :roll_eyes:

Just having a converter tool that actually worked when .NET replaced VB6 and and xojo could have had hundreds of thousands of new paying customers, at least a few hundreds this days. But the CEO sucks at his job…


To the extent that if they create(d) a cut-down Xojo, that was basically a VB6 clone with a few extras, at the Lite price, there is STILL a huge untapped market.

1 Like

Guess I should finish my converter that convert layout and the code for controls from VB6
It wont rewrite all the code but it will do a way better job than the existing project converter that Xojo has

Looks like someone has started “porting” it to twinBasic
And so far it sounds reasonably successful

Off the top of my head I would suspect there would be difficulties moving such a project to Xojo without plugins but thats really hard to assess without seeing source code and opening a lot of time analyzing it

I have tried PhotoDemon and can say that it is not practically possible to implement all the image processing features in pure Xojo.

PD’s support for multiple file formats is with help from FreeImage library and it uses quite a few other libraries like EXIF, EazyTwain, ICMS2, etc.

PD has native support for Photoshop’s PDF files which I think is a great thing as very few opensource or free solutions support it.

PD has almost all the features for image adjustment like Brightness/Contrast, Levels, Curves, Hue/Saturation, etc. that are generally found in leading image editors.

Currently what is lacks is support for Mask Layers. But this will come is due course.

The entire point is: riding a dead horse or not? Why should somebody program in a leaky old concept which has no chance to bring out the needed performance and functionality? In my eyes everything else would be better than whateverBASIC. Java, Rust, C++, C#. To name a few. And better Rust, Java, C# or even GO to have a memory save language writing with. And cross platform? Yepp, C++, Rust, GO can do that with some modifications, Java can do it in all cases.

Why not change to a modern language? And please do not restart this semicolon discussion. That is crap and everybody knows it.

I know everything and I know what everyone really thinks. you make certain CEO egocentrism look not so bad.

It is a real problem for a LOT of devs. kind of worrying you are not able to grasp that every individual can have their opinion and preferences.

You dont like xojo and you can say it out loud, others dont like semicolons and that is crap? That is only your irrelevant opinion and nothing more.

1 Like

Ivan, it is an opinion to say I don’ like language x or y. But it is not an opinion to say: I will never use a language like this cause of semicolon. Maybe for you it is. The question is: do I want to use an old and rusty language without a real infrastructure and ecosystem? Do I want to use a language where I don’t know how I can get my Jobs done while so many bugs are stopping the show? Do I want to use a language where I have no Idea and not even a chance to see in front if my code will run next week or not? Do I want to use a language where I have one single vendor which is really small and possibly a problem cause of the behavior? Do I want to use a buggy language at all?

And yes, after this questions we can speak about Syntax and much, much later about semicolon. Because the discussion is crap. You can say that. But it has nothing to do with a discussion like it should be. Too many factors are in front of this point. And saying that as a main argument is poor. Because that ignores all the problems behind. And after all the people are crying that they have soooo many problems and bugs.

I know that people are meaning they are the one and only in their individual situation. But, what shall I say: there are millions of people. And that’s it.

I find the anti-semicolonism … curious
It is, like in any language, a habit one develops as you write more & more code in it
At first going back to C++ Java & C# I found the compiler would complain at me about them missing
Now it almost never does.
But the IDE’s do complain at me about things as I write code. SoI fix them right then
I only wish the Xojo one would do this

1 Like

Xojo never did all of that this languages can do. Not even 5 percent of it. The price for the semicolon?

Oh I dont think the semicolon is the cause of Xojo’s problems
Thats on them regardless of what they claim about trolls, detractors, etc
None of the trolls decided to focus on new users, do API 2 over several releases so there are years of transitional releases, renames events & controls, etc
Or decided to do any of the other things they’ve done over the years

That said I’ve heard the OMG semicolons ! complaint for years
Its just silliness

There are things that are easily possible in all those semicolons languages that Xojo struggles with
Threads is just one

All arguments showing in one direction: the language is not to recommend for any kind of project in this circumstances. Thank you. There can not b a good Idea behind any kind of project for any kind of platform. Exactly that is the problem behind. Yes, there is a difference. Between professional programming languages and a hobbyists company.

When writing a program first you solve the problem in your head, then you translate that solution into code a computer can run. I find any programming language where the syntax ( or inflexible data types / structures ) bogs down that process frustrating to use.

1 Like

That’s not really any kind of argument for Xojo. Then you would be leaded to kotlin or scala

Like any thing we learn, a programming language, or a spoken & written one, or some new skill, practice & repetition makes it easier to recall & remember those rules

Coding is no different IMHO

Need users learn those rules and eventually they just write code because they have become so used to the rules
They dont stay beginners forever

and than somebody goes and arbitraily changes the rules… just “because”

1 Like

That’s the Xjo problem. And with this problem it is hard to live. Yes, also Java changes things for example. Or C++, Rust, GO, Swift, objective-c… the list is really long. But. The difference is that you know that in front and not after. Web 2 and API2 are the best examples for this fck_p policy. Fast Release is the next.

And now you get even Multithreading but not when debugging. Man. I would be in panic to write any application with multithreading.

Not in C++, C#, Java, or any of the others

TBH in Xojo they haven’t either except for VAR vs DIM
The core language hasn’t changed
What they HAVE changed is their framework and how thats used
But thats not “the language”
It would be like Apple renaming everything in UIKit JUST because

Objective-C didnt change
Swift didnt change
But the UI Toolkit did

Thats roughly the best analogy to Xojo’s renaming of events, controls & properties

Java and Java Swing since long time runs with the same sourcecode.

And no, it is maybe so that they changed the toolkits. or the user…no difference