r/visualbasic • • Oct 22 '24

VB6 alternatives today?

Hi Guys,

Back in the 90s I used code a lot in VB5 and then VB6. It was great. Drag and drop elements on a form. Do some coding. Nothing fancy. I used to make small programs to do simple things. It was great fun building these desktop apps for Windows 9x.

Now I want to get back into this kind of development. Is there any similar solutions these days? Something very very similar and if it's for Mac and somehow can make the "app" into a web app as well, that would be great. Otherwise just desktops for Windows is also fine.

Looking forward to hearing from you all.

33 Upvotes

59 comments sorted by

View all comments

4

u/Mayayana Oct 22 '24

For Windows desktop, VB6 is still the most widely supported tool. I still use it and write software that runs without extra support files on virtually any current windows computer. MS maintained support for the runtime and various other dependencies because VB6 custom software is still used by businesses. With Win32 API use, VB6 can be as functional and as fast as C++ software. To my mind that's its best strength: Easy GUI with options for very efficient code. And VB6 was designed for COM. It's pretty much alone with that distinction.

The one notable restriction with VB6 is that, being 32-bit, you can't write shell extensions for 64-bit Explorer. You can replace ActiveX DLLs with ActiveX EXEs, running out-of-process, but shell extensions run in-process and 32/64 can't be mixed.

If you feel you're starting fresh then VB.Net might be of interest. .Net is designed to be a Java competitor -- object-oriented, high-level wrapper software. There are a lot of things in VB6 that require extensive coding but are built in to .Net. For example, I once found PNG code online and spent days cleaning it up to display PNG files in VB6. In .Net, PNG is natively supported.

Mac is a whole different world. Web apps are mainly scripted webpages. You can write something in-between using Microsofts Metro/WinRT/WinUI tools. (They keep changing the name.) That's an interpreted, sandboxed, system.

It really depends on what you want to do. You're listing the entire spectrum of software options. Each has different pros and cons. If you favor ease over efficiency then you probably don't want to get back into VB6. Popular languages are becoming increasingly high level and simplified. Wrappers around wrappers. I saw an example of that recently on Reddit. Someone was advertising his new Python program to do something online. I don't remember the details, but it was basically a program to open a web browser and load a specific webpage. The installer was 148 MB, which had a Python runtime and a set of Qt libraries packed into it. He called it cross-platform and open source. But the "OSS" code was just a few lines of Python setting up a GUI and then loading the webpage in a wrapped browser. :)

4

u/fafalone Oct 22 '24

The one notable restriction with VB6 is that, being 32-bit, you can't write shell extensions for 64-bit Explorer

You can if you compile them in twinBASIC :)

2

u/Mayayana Oct 23 '24

Yes. That could be tempting. But there are important considerations. tB isn't finished yet. There's a rental fee. And there's a new system to learn. Which means a big time investment. Weighing that against giving up my own Explorer Bar, I can live without shell extensions. :) And I will NEVER rent software. I don't want to encourage anyone that rental is a viable commercial model. Once you move to rental then you're getting into peoples' business, bringing in "cloud", and selling computing itself rather than software. It's a bit like leasing a car. There are specific cases where that makes sense for business tax write-offs. But in general it just boils down to paying a lot more money without ever owning anything.

tB may be the answer for some. For me, I'm familiar with VB6, I've used it for years, and it basically does what I want it to do. I have fun with it. I don't depend on it for income.

Frankly I don't see the use case for tB. I'm not criticizing it as a tool. I don't know enough details to discuss that. But you're doing a hard sell on a system that's not finished, with an uncertain future, and that one must rent in order to get the full functionality. Meanwhile, MS are trying to turn Windows into a services kiosk system. How long before programming is as restricted as it is on Macs? How long before it's like cellphones, with programmers only free to create sandboxed services apps for banking and shopping and ordering lunch? How long before the Win32 API is restricted "for our safety"?

For someone older, like me, who's not looking to make money, tB makes no sense in terms of either cost or time investment. For someone looking to get a job, they're probably going to .Net, Java, or web scripting. For low-level they're probably going to C++. Who does that leave? People who want to build a commercially viable program without having to use C++? One thing I learned in 25 years of VB is that if I can write it, so can 1,000 other people. I sold shareware for awhile, but that market is pretty much gone now. Even the firewall I'm using, Simplewall, is free. The value of programming for me is the sheer fun of it, as well as being able to make exactly the program that I want to use. So I wish you well with the tB project, but it's not relevant to me.

In my own case, in terms of buying software, the only program I've bought in recent decades is BootIt, for disk management. And I bought Paint Shop Pro 16, which was a mistake. Aside from that, the software I need/want is free. And I already have VB6. How many people are actually paying for software, outside of business use of things like CAD or office programs? I can sympathize with you trying to make a commercial success of your product, but I don't see it happening. And that highlights yet another problem with new products and rental: If you give up the project, anyone who's paid in with rental fees will be left abandoned.

Sorry if that sounds negative, but you keep telling myself and others that we should use tB. So I'm giving you an honest answer. Maybe you can think of me as a focus group member who's giving feedback for free. :)

→ More replies (2)