Crowdfinding Project to Make New Version of VB6

abhishek007p

Active Member
Licensed User
Longtime User
Someone have started a Crowdfunding project to raise $150,000 to make a new version of VB6. There are some other developers who have come up with Alpha version of VB6 but due to lack of time and resources there have not made any major progress.

So I would like to suggest to Erel to look into it.

You already have a Parsing System, IDE. There are open source complier like FreeBasic available. You can easily modify your parser to output code compatible with these compliers and output a Windows Exe.

There can be two version of IDE. Standard which only makes Windows Exes and Professional which will output cross platform app using Java, which you already have with B4J.

Here is the link to the project
https://www.indiegogo.com/projects/a-replacement-to-visual-basic-6-ide-and-compiler

@Erel See this.
 
Last edited:

sorex

Expert
Licensed User
Longtime User
interesting, I tend to boot up VB6 myself for quick mock-up code just because of it's loading/compiling speed...

but if you're funding for that you could just pay $60 for something like pureBASIC instead which is already cross platform and already there for years.
 

Troberg

Well-Known Member
Licensed User
Longtime User
I think they are underestimating the complexities. You'll need to not only get the VB syntax right, you need to get things like ActiveX, database access and all those other bits and pieces that the existing VB6 code base relies on. Many of these are based on Microsoft (or other) components, which will probably soon be end of lifed as well.

The same goes for some outdated technologies, such as the (actually pretty cool) ActiveX Document or VB's somewhat tangled implementation of multi threading. Some people are bound to rely on it, even if most don't.

Add to that all the little "delightful" idiosynchrasies of the language, that also needs to be faithfully replicated in order to not break the existing code base. Remember, if you want to replace VB6, it'll have to be more or less a drop in replacement. If you require a major reworking of the code, it won't be used.

If I could just drop my existing projects into it and compile them, I'd buy it now, but I don't think they'll get there.

They claim to have a goal of 99% compatible. That's not enough. That's 1 line in 100 that needs manual conversion, and if you have a large project, that's still too much work and will generate too many bugs. They'll need to get it to 100%, or extremely close to 100%.
 

Beja

Expert
Licensed User
Longtime User
What advantage will the new vb6 have over b4j?
 

imbault

Well-Known Member
Licensed User
Longtime User
Advantages, only MS Windows advantages, fully compliant with COM objects (DLL tragedy), create windows 64bits exe.
That's all.

For VB point of view:
In MS Windows world, there is VS with Dot.net and VB.Net, so many options. But for doing one thing, 20 or 30 ways to do it, depending of the dot.net FW you use, the VS IDE is very good, but it's an non productive environment, it's more oriented to team dev.
Anyway, most VS dev. move to C#, no more with VB.Net

One good thing about VS is MVC.
One more thing, few years ago, WinForms was the way to go, and WPF was not, now, it's the opposite.
Same thing about silverlight...

So going back with a VB6 clone could be a niche for some applications and some developers, but definitely not a good way for the future, you will have to deal with DLL (supported or not, 32 or 64 bits), create libs...., a real mess, a real non sense.

B4J is a complete different and unique tool, which embrasses 3 products in one language, concise, practical, agile, easy and complex.
There will be some challenges with B4x, but Erel, has shown a reactivity and a real creativity designing it's language and IDE, it's not perfect, but tends to be more and more powerfull.

I'm a B4x user since 2011, I've seen it's evolution since, more and more people using it, more and more people in this forum interacting.

With B4j, you can deploy a solution with only one Jar file which wraps all the libs needed. You can create servers, console and UI applications, and even more, like Erel said, and it's true, you can share, most of the code to make mobile Apps.
 
Last edited:

abhishek007p

Active Member
Licensed User
Longtime User
What advantage will the new vb6 have over b4j?

Advantage are
- Native Code vs ByteCode
- Speed of Native Code
- Code Security, Anyone can decompile your .NET or Java source code.
- Small Runtime DLL (5MB vs 50MB)

Things are again moving towards Native code, Microsoft Released .NET Native and Google came up with new runtine engine for android.

So going back with a VB6 clone could be a niche for some applications and some developers, but definitely not a good way for the future, you will have to deal with DLL (supported or not, 32 or 64 bits), create libs...., a real mess, a real non sense.

that is not true, it is totally depended on developer's skill. if he wants to use dll or not, if he want he can put all the code in one single exe. My VB6 apps continue to run and all Windows version, all i have to do is provide the runtime. but that is not the case with .NET, after some point of time you apps become dependent on a .NET version and to move beyond that you have to rewrite the app.


The output of VB6 app is same as a output of a C/C++ app, in the background VB6 uses a modified C compiler to compile the exe, the same approach used in B4x.

There exists a Developer Snobbery and Stereotypes in the industry, there is a C/C++ Club vs Java Club vs the Rest Club.

See the comment and their outrage here regarding support for VB6
http://visualstudio.uservoice.com/f...g-back-classic-visual-basic-an-improved-versi

"And yes, everyone’s favorite VB6 Runtime will continue to work, too."
http://blogs.windows.com/buildingap...dy-for-windows-10-sdks-compatibility-bridges/
 
Last edited:

Beja

Expert
Licensed User
Longtime User
B4J is VB.. it looks like VB, feels like VB and flies like VB, so it's VB.
VB6 is not crossplatform like B4J.. it's for Windows OS only. If Erel took the time and hired a graphics designer, drew a few controls like buttons and so on, place them in place of the current text names.. and named it VB6New then few people would tell the difference, but many will enjoy the value added functionality like cross platform,
besides you don't need to go through Windows APIs or buy expensive third party components to use SMTP and POP3 in your projects (to name a few).
Another thing that's very hazardous, that Microsoft can pull the rug from beneath your feet and leave you floating, by simply breaking Windows code.
 

sorex

Expert
Licensed User
Longtime User
if Java had it all then why is everyone begging to have stuff ported/wrapped? :)

Java also has its problems. When I dare to leave the auto updater on I will run into misery with management consoles for PBXs and other stuff.

as @abhishek007p mentioned a nice and clean exe that does it all is better in most cases as it doesn't have to rely on other things.

I had to make a few mods yesterday to an old pos/customer program I wrote in VB6, it's simply instant compile'n run.

The newer version in VB2010 needs 15 seconds when I'm lucky.

So I prefer VB6 aswell to have some quick tests or data convertions done.

I could use B4J aswell, but I don't like the designer of it as it is too slow on my machine and was a pain to get it working.
If Erel could write his own res builder then the product would be even better and faster.
 

Erel

B4X founder
Staff member
Licensed User
Longtime User
I could use B4J aswell, but I don't like the designer of it as it is too slow on my machine and was a pain to get it working.
If Erel could write his own res builder then the product would be even better and faster.
Someone is reading my mind...

SS-2015-07-14_15.09.06.png
 

abhishek007p

Active Member
Licensed User
Longtime User
if Java had it all then why is everyone begging to have stuff ported/wrapped? :)

Java also has its problems. When I dare to leave the auto updater on I will run into misery with management consoles for PBXs and other stuff.

Whether it is Java or .NET these framework are better suited for enterprise level applications and may not be suitable for the Hobbyist and Indie developers. thats the main point at least in my case when choosing a Language.

Microsoft ignored its Indie and Hobbyist market when they went from VB6 to VB.NET. .NET is even worst than java here is one example https://en.wikipedia.org/wiki/TradElect

i think most developers have a Job at some company where they only work on part of a project, so their mindset is suited for that work culture, most companies choose language which is popular in the market and not what its developer likes and this is where this mindset of language superiority comes in, they work on one language so they think their choice of language is best. while in a case of a indie developer they have to work on a app from start to finish, and may not have all the resources.

VB6 became popular because it provided the power of C++ with RAD speed to the Indie developers. and this is one of the reasons i and other developers use B4X. VB6 is very much used today, Popular apps like Malwarebytes are done in VB6.

Dont want to comment on B4J since i dont use it.
 
Last edited:

sorex

Expert
Licensed User
Longtime User
well, they had the Express versions where they pulled out the interesting parts hobbyists and students also needed (reporting to name something)

but you were not allowed to sell the programs you made with it, if I recall right. so what's the point? only for lessons in school?
 

abhishek007p

Active Member
Licensed User
Longtime User
but you were not allowed to sell the programs you made with it, if I recall right. so what's the point? only for lessons in school?

not true, you can make and sell using Express too, Express was feature limited, you can only use local SQL DB and it didnt have support for IDE Add-Ins. Express line is Discontinued in favor of Community Edition which is just Professional Edition with a community name on it.
 

MikeH

Well-Known Member
Licensed User
Longtime User
Right, I`m uninstalling VStudio and waiting for B4WinPhone - please Erel

Erel will say "Please post this in the wish list section". I already have :)
 

Beja

Expert
Licensed User
Longtime User
Wow.. great news..

BTW: don't worry about the version that's a minor thing :)
 

Informatix

Expert
Licensed User
Longtime User
Whether it is Java or .NET these framework are better suited for enterprise level applications and may not be suitable for the Hobbyist and Indie developers.
For .NET, Express and Community Editions always aimed this target.

.NET is even worst than java here is one example https://en.wikipedia.org/wiki/TradElect
I'm an experienced Java and .NET developper (C++, C#, VB) and I can't see why .NET would be worst than Java. Your comparison implies that Java is a poor language and .NET is even worst. Where are the facts ? The example that you give is completely off topic. TradElect was replaced by an application written in C++. No Java here.

i think most developers have a Job at some company where they only work on part of a project, so their mindset is suited for that work culture, most companies choose language which is popular in the market and not what its developer likes
A company should never choose the language that developers likes because it's not about liking and personal preferences, it's about doing a specific job with the right tool for a given budget. "Does the IDE support team development ?", "Is it sold by a long-lasting company?", "Is there a customer support?" and "What's the cost of enterprise licenses ?" are more important questions than "Does John like it ?" or "What's the trendy language?". Do you know a company with such a strange reasoning?

VB6 became popular because it provided the power of C++
I wonder why nobody ever tried to write a fast device driver with VB6 or a transaction manager for a server farm in VB6 if it's so good. And why am I unable to find an article on Internet stating a similar performance? VB6 was a good product but not to that point and wrong claims about it do not serve the debate. I used it also for years and I don't regret it because I am still able to do my job with other languages supporting the new protocols and technologies, with no pain and no reason to look back; I understand very well the answer given by the Visual Studio Team in the link given above. It's not like if people was forced to return to the assembler-and-C era.
 
Last edited:

abhishek007p

Active Member
Licensed User
Longtime User
For .NET, Express and Community Editions always aimed this target.

50MB+ runtime which takes 5-10 mins to install for a App which is like 5MB in size. B4X is probably the only Indie software i use which is done in .NET. plus, different incompatible .NET versions which may not install on future windows version, and you end up rewriting apps for different .NET versions.

I wonder why nobody ever tried to write a fast device driver with VB6 or a transaction manager for a server farm in VB6 if it's so good
And why am I unable to find an article on Internet stating a similar performance?
i mean the output of VB6 is same as output of C++ because it uses the modified C compiler to compile code. there are some articles and code sample available to access the performance of VB6 vs C/C++ vs .NET. Each language has its own advantages and disadvantages. nor you can do device driver in java or .net.

I'm an experienced Java and .NET developper (C++, C#, VB) and I can't see why .NET would be worst than Java.
Microsoft themselves dont use .NET for their own app, that is the proof of pudding in the eating, they tried making the windows shell and other app that goes into windows using .NET in the vista days and it ended up with a disaster.

with java at least you are sure that your app work in future version, that is not true for .net. plus, java provide cross platform supports which .NET dont have unless we use Mono.

explorer.jpg

Bjarne Stroustrup: How C++ Combats Global Warming
http://bigthink.com/videos/how-c-combats-global-warming
https://channel9.msdn.com/posts/C-and-Beyond-2011-Herb-Sutter-Why-C

A company should never choose the language that developers likes because it's not about liking and personal preferences
i was talking about the work culture which develops like and disliking for a particular language, which leads to language snobbery we often see C/C++ vs Java vs .NET vs Python vs Rest clubs.
 
Last edited:
Top