Friday, August 26, 2016

15 programming languages you need to know in 2016 !

15 programming languages you need to know in 2016:

1 Visual Basic 6.0

2 Java


4 JavaScript

5 C#

6 Visual C++

7 Ruby

8 Python

9 C++



12 Erlang

13 Fortran

14 R programming language

15 Visual Basic .NET

Sunday, August 21, 2016

Why Visual Basic 6 is the most popular now in 2016 ?

One of the main reasons VB6 developers didn't move to VB.Net was lack of backwards compatibility.
This lack of compatibility meant you had to continue to support legacy apps. There was no business case for rewriting them, just to have the identical application in a different language.
And if they did move from VB6, what VB6 developer would choose a Microsoft language knowing Microsoft had just abandoned them and would be likely to do so again ?
And if you developed for Office you would still need to use VB6's twin sister VBA.
As many VB6 developers said at the time, Microsoft were right to develop C#/.Net, but they made a mistake in abandoning backwards compatibility in VB.Net. A compatible VB7 would have retained VB6 developers, instead Microsoft lost the majority of these forever.
Sadly, Microsoft didn't learn the backwards compatibility lesson. Windows Phone 7 was quite promising. Then Microsoft launched the incompatible Windows Phone 8 and lost the mobile phone market forever.
Now that C# is rapidly losing popularity and VBdotNet is being abandoned it looks like VB6 users were right all along.
The replacement of VB6 with VB .NET lost many of its RAD aspects simply because it had to be hard line object oriented. That's why VB.Net never achieved the success of VB6.
I support VB6 programming, VBA programming and VBScript programming
paul commented  ·    

Friday, August 19, 2016

I would use an updated VB6 !

I would use an updated VB6 (VB7 ?)
It would need to:
1) Be compatible with VB6 (take any existing source code and be able to compile and run it)
2) Update the language to at least VBA7.1 standard (and therefore support 64 bit)
3) Ideally have the Microsoft ActiveX controls built-in rather than as ActiveXs (move away from ActiveXs)
4) Still support ActiveXs (for 3rd party/old controls)
5) Ideally not need a separate VB Runtime
6) Update the look and feel of both apps and the IDE (same as you can do in VB6 by adding a Manifest)
7) Option to compile to 64 bit (see 2 above), ideally supporting 32bit ActiveXs. If ActiveX support isn't possible then 64 bit compile with built-in controls only (see 3 above).
8) Include Multi-threading (as you can do in VB6 with a multithread DLL).
9) Be DPI-aware (as you can do in VB6 with replacement controls)
10) Possibly minor language enhancements, such as Try/Catch error handling.
"VB6 is not just a language. VB6 is a language, a runtime, a platform library, a tool/IDE, and an ecosystem tightly packaged together in a way that made all of them work well together. " - Paul Yuknewicz, Microsoft
MikeB commented  ·  

Thursday, August 11, 2016

Mastery is being able to obtain a simple elegant answer even while interfacing with a complex system. Stability is virtuous !

These are pertinent pieces of articles of Dave's from I advise you to take Dave's articles one by one (see here). Inside Dave's articles you will find incredible things, things that you can't imagine are possible in a programming language. Wizards like Dave make us proud to be a part of the VB6 community. This is what Dave says in one of his articles (and my words stop here):

Here is another thought why i love vb6. It was made by wizards of C++, COM and Windows GUI programming. They made a simple general use language that made GUI things a breeze. They kept it light and easy to use which made development fast and light. The intellisense lists were not overloaded with tons of crap. If you needed more power, it integrated easily with C and the entire world of COM. I really believe in programming in layers. The gui aspects are complex, the world of COM is super complex. VB6 was so perfect at these. And COM was a great match with Windows GUI. Fast, native, and works really well. .NET is everything and the kitchen sink and its a bloated turd. Holy crap..its been 15 frigging years now I still cant stop ranting about this.


In this series I am going to discuss some of the history, strengths and techniques used in Visual Basic 6 development. I will not cover basic techniques which can be found in abundance across the net. Instead I will focus more on advanced topics which are harder to find concise information on. I have been using VB6 continuously since 2000, and I still find new things about it as my knowledge of it deepens. My path with programming advanced from web technologies, to VB6, to C, and now on to COM. I do not feel like VB6 limits me in any way. I have achieved everything I have wanted with it and it is brilliant at what it does. After 16 years I am still working to understand the full software stack that VB is built on top of. I am not a fan of the modern programming landscape where technologies shift like the weather. My personality is such that I wish to master the ins and outs of a technology and know it right down to its roots. Even for VB6 this is a long slow process. As more and more layers of technology are built on top of one another and grow larger and larger I am not sure this intimate level of knowledge is even possible anymore. (as in having direct experience with not just theoretical knowledge of its operation).

Mastery is being able to obtain a simple elegant answer even while interfacing with a complex (or even chaotic) system. Stability is virtuous., says Dave !


VB6 was released in 1998. It is the 6th succession of the language and was the final version as we know it. VB.NET may be a variant of the basic language, but it is not VB6 and is built on an entirely different design. VB6 was once one of the most popular programming languages in the world. It was, and still is, a great general purpose programming language that made developing GUI windows apps fun and easy. One of the real strengths of vb6, is that it wrapped extremely complex functionality extremely well. With it developers didn't have to worry about (or even know) all the crazy details of what was going on behind the scenes. Seamlessly wrapping utter complexity, into a stable, intuitive, efficient package that even pre teens could utilize is a mark of mastery. Make no mistake, the minds behind classic visual basic were wizards of Windows and COM. Visual Basic 6 was also given good access to the underlying Windows API to interact with the system at a lower level. This mechanism allows it to easily interact with custom made DLLs in other languages such as C. If you couldn’t do something easily in VB6 language itself, you surely could add that capability by integrating with a C dll. VB6 also has excellent access to COM libraries. COM is a very complex technology in its raw form, but in VB, its integration is seamless.

What happened?

My take on this is that MS decided that they wanted an academically 'proper' language. They also got bit by the Java hype, or felt they had to keep up with it. First they tried to adapt Java with J++, but then they got sued and had to spin it off into C#. They wanted a framework that you could compile to intermediate code, and then have run on any device regardless of processor. They also wanted a language that had the capability to support more advanced constructs such as polymorphism. VB6, being built on top of COM technology could not meet the language complexity requirements of what they envisioned so stop developing it. To my sensibilities, needless complexity is a detriment. Things should be accomplished as simply and directly as possible. If you have a working system, that's the end goal. The more complexity involved, the more ways things can go sideways. Another real danger is, that people can get lost in the complexity and end up creating things that are way over complex for what really has to be accomplished. I just don't agree with it and have not found it useful. Another point I will make here, is that the extra complexity adds allot of noise. No longer is it a lite clean tool to use to solve problems. Now you have to wade through loads of possibilities and options to accomplish a task. I consider this a drain. One more thought, as .NET has grown and evolved, sometimes functions have been removed or depreciated. Opening and compiling an old project may require changes. You may have to recompile a project just because an old version of the run-time is no longer supported or installed by default on your OS of choice. VB6 being frozen, I can open a 20yr old project and still compile it perfectly fine without any changes and have it work.


Wednesday, August 10, 2016

Saturday, July 30, 2016

Visia Compiler (a professional programming language - made in VB6)

Visia Compiler Icon

Visia Compiler

Visia programming language (native compiler)

Visia Compiler is a native x86 compiler for Windows 32 platform (update #4). This great project is made by Kinex (with thanks to Mark Chipman, Mordred (nick name), Tommy Lillehagen and Jordi EnguĂ­dano). It is written in Visual Basic 6.0 but compiles directly into machine code without the need of any runtime libraries or other dependencies. The language supports GUI creation, API, pointers, inline assembly (FASM must be installed). It may build and include libraries, include source headers (inc), custom entry point and dynamic arrays. Syntax is only little similar to basic-like languages as coding structure is near to C than Basic. 

(1) Download from me: Download
(2) Download Sourceforge: Download


Visia is a programming language (native compiler) made in VB6 (Visual Basic 6.0).

Updates and content

Visia Compiler

- is the original code of Visia Compiler.
Visia Compiler

Visia Compiler

- It contains a small and intelligent change suggested by Wilksey! (PSC programmer) which enables a real-time syntax highlighting.

Thursday, July 28, 2016