VB3 was my first real intro to programming. Well, I started with C++ but abandoned it as an impatient child as describing a window in code wasn't fun. I wish we had a new drag and drop WYSIWYG to get people interested. Put Python or Go or even Basic behind it. QT maybe? Heck make it Electron. I'm not sure I would be where I am today without VB having existed, and it's a shame kids today don't have the same tools avai…
Is XYplorer really written in VB6?
31–40 of 232 posts
Re: Is XYplorer really written in VB6?
#32Re: Is XYplorer really written in VB6?
#33The point is: prejudice is bad. Use whatever floats your boat
Re: Is XYplorer really written in VB6?
#34I'd say security is a problem if one uses a 30 year old piece of software but apparently Microsoft still releases security updates: https://www.microsoft.com/en-us/download/details.aspx?id=507...
>A security issue has been identified that could compromise your Windows-based system running Microsoft Visual Basic 6.0 Service Pack 6
>The Visual Basic 6.0 IDE is no longer supported as of April 8, 2008, however, the Visual Basic team is committed to “It Just Works” compatibility for Visual Basic 6.0 applications
>Date Published: >3/23/2021
Re: Is XYplorer really written in VB6?
#35VB3 was my first real intro to programming. Well, I started with C++ but abandoned it as an impatient child as describing a window in code wasn't fun. I wish we had a new drag and drop WYSIWYG to get people interested. Put Python or Go or even Basic behind it. QT maybe? Heck make it Electron. I'm not sure I would be where I am today without VB having existed, and it's a shame kids today don't have the same tools avai…
Even a tool like Frontpage was a game changer. Simple website in a minute without any need to know HTML. No free tool that does that today. Dreamweaver does, but it's paid.
Re: Is XYplorer really written in VB6?
#36Both VB6 and FreePascal/Delphi are highly capable tools even in today's context, they just need more marketing.
Extension methods/properties ("class helpers"), generics, enum types, for..in loops, static methods, closures, smart pointers, value types ("records"[1]), attributes, variables can be declared anywhere (removing Pascal's limitation), type inference, multiline strings.
Besides all of this, modern Delphi can compile code for Windows, Linux and Mac, as well as Android and iOS. It seems like there's even a cross-platform library for writing apps that can run on both Mobile and Desktop called FireMonkey.
VB6, on the other hand, is a language frozen in time. It never supported any other platform than 32-bit Windows[2]. It only really works on the new Microsoft Surface Laptops thanks to emulation, but I can also run Nintendo 8-bit games on a Surface Pro 11 using an emulator — that doesn't say much.
Unicode support is also a mess. VB6 always used Unicode internally, but this was implementing during the UCS-2 heyday (so you need hacks to use Emoji for instance). Worse yet, is that VB6 was never really designed to run natively on Windows NT, so it's mostly using using the XxxYyyA family of APIs instead of the XxxYyyW family of APIs. This means that you can only display text in a non-English writing if your system's ANSI codpeage is set to that language (in the past you had to restart Windows to change this, not sure if it has improved). To make things worse, some languages (from countries that were too pair to get ANSI pages in Microsoft during the 1990s). So no Ethiopian languages or Mongolian as the author claims. Windows ANSI codpeages also do not "fully support" Japanese and Chinese as the author claims. Over the years the governments of Japan, China, Taiwan and Hong Kong have updated their national standards (which defined tables of characters that should be digitally encodable) and introduced more characters that were previously not mapped. These characters were not new or fake[3] — they were just less common, but still in use. All of these various government standards (like JIS X 0213, GB 18030, Big5-2003) got quickly incorporated into newer versions of Unicode, but the Windows ANSI codepages stagnated and they don't support some of the characters in these codepages. I'm not sure how it's going to affect VB6, but I'm pretty sure that some Unicode CJK characters would just not map into ANSI and would not be displayed even if your system code page is set correctly.
With all of these things considered, no developer who cares about their users should choose VB6 for writing a modern app. I'd also argue that no developer who cares about themselves would do that. VB6 wasn't a great language to begin with. It was better than VB3, but it was still inferior to Delphi even when it was out. Customizing the UI beyond the basics, often needed custom ActiveX components written in C++ or messing around with a lot of raw Windows API calls. Error handling was very painful too. It was never a great developer experience even back of the day if you wanted to do anything beyond the basics.
---
[1] To be fair, Borland's Pascal dialects had value types support since they've implemented object oriented programming (that came in either Turbo Pascal 5.5 or 6.0, I don't exactly remember). Turbo Pascal "objects" could be put on the stack or as pointers like in C++. They even had destructors that would be invoked automatically when the object went out-of-scope, again like C++'s RAII. But the old "objects" kinda botched polymorphism (I don't even remember the details), so when Delphi came out they've been replaced with "classes" that are Reference-only (like Java, but initially without any form of automatic memory management).
[2] VBA was originally ported to Mac, but it is not exactly the same language, lacks the GUI designer and can't run most VB6 apps
[3] In most cases, at least: https://www.dampfkraft.com/ghost-characters.html
Re: Is XYplorer really written in VB6?
#37I think VB is totally fine. It's a pragmatic solution to a real problem, and the ugliest things about it today are all a product of hindsight. On the other hand, this rubs me the wrong way: > So, wouldn’t it be logical to conclude: If such an application can be written in VB6 then VB6 cannot be that bad after all? Yes, it absolutely could be bad. Our industry consists, in no small part, of turd polishing. Plenty of g…
That's because you mention VB6 as a language. VB6 is not about the language, but about the platform and vertical integration; from the IDE to the app to the distribution.
It was magical that dropping a telephony component into a form enabled the form to make phone calls. Or you could drag-drop a Web Browser component, and have a browser inside your app. Or a database component, and a thousand other things. Few of these required reading the docs.
There are many apps that can be written (and deployed!) faster in legacy VB than with anything available today.
Re: Is XYplorer really written in VB6?
#38Re: Is XYplorer really written in VB6?
#39Earlier quoted context omitted.
This is the first I've heard of twinBASIC. I'm happy to see it on the dev tools scene.
A dev tool with a monthly subscription? That's enough to stop me right there. An alternative is B4J, a free (as in beer) BASIC that compiles to Java, so should run just about anywhere. It also has * B4A - a free version for Android * B4R - a free version for Arduino and ESP8266 * B4I - a paid version for iOS The main (sole?) developer is ridiculously responsive and helpful.
Re: Is XYplorer really written in VB6?
#40I think VB is totally fine. It's a pragmatic solution to a real problem, and the ugliest things about it today are all a product of hindsight. On the other hand, this rubs me the wrong way: > So, wouldn’t it be logical to conclude: If such an application can be written in VB6 then VB6 cannot be that bad after all? Yes, it absolutely could be bad. Our industry consists, in no small part, of turd polishing. Plenty of g…
I can get Modern iterations of Visual Basic such as VB.Net. The syntax and semantics hurt my eye and my brain, but if that's your thing, yeah the language is very serviceable. It's a modern language with modern features and a lot of legacy baggage. It's not worse than PHP or maybe even JavaScript (though I would much prefer JavaScript).
But VB6 means taking the language and tooling as they were in 1998, frozen in time, and writing a modern application to a modern user base.