The TIOBE index for programming languages is an interesting visual perspective on programming languages. Take a look at the graph for the trend of Visual Basic since 2002.
Visual Basic seems to have taken a big hit at the end of 2004. I’m not entirely sure of why this happened because .NET had been released in February of 2002 in Visual Studio. Visual Studio 2003 was released in April of 2003 and the next update was Visual Studio 2005 which was released in November of 2005. Vista was released in January of 2007 so I don’t believe it has anything to do with the operating system either.
Perhaps what’s interesting is that it nearly regains its former popularity in about two years. Could this have been a reaction that people found .NET to not be as easy to use as VB6? I know that some people were dismayed that VB.NET wasn’t much like VB6 and abandoned it – especially since Microsoft operating systems weren’t breaking their old VB6 apps.
Since the midway point of 2009 it seems like the bottom has dropped out in VB6 popularity. Could it be because Microsoft officially ended support for VB6? Again, speculation on my part, but that is about the time that I started seeing an influx of requests for quotes from people wanting to convert their VB6 apps to Real Studio.
Another huge drop happened in early 2011. Was this due to the confusion of whether or not Windows 8 will support VB6 applications? Perhaps. I have seen another increase, in the same timeframe, of people looking to convert from Visual Basic to Real Studio.
Is Real Studio (i.e. REALbasic) the right choice for your Visual Basic 6 application? The answer is a qualified maybe. If you want one code base that works the same on Macintosh OS X, Windows, and Linux and perhaps a similar code base for a web app (Web Edition has separate UI classes than the desktop) then Real Studio might be a good fit.
If you’re looking at converting to Real Studio please do your homework. Learn a little bit about the language (<shameless plug>Like my training videos<\shameless plug>) and work with it a bit. Do NOT depend upon any VB6 to RB converters working – there are simply too many things that REALbasic is better at. You’re better off rewriting your app to take advantage of moderns things like subclassed controls and threading rather than try to force a Real Studio app to behave like a VB6 app.
My final bit of advice is to forget about your ActiveX controls you’ve spent so much money on. They probably won’t work and they won’t work on the Mac or Linux anyway. Find and switch to an equivalent, if possible, but you’ll probably create some of your own subclassed controls. In the long run you need to think in RB-speak rather than VB6-speak.
Real Studio, in the long run, is pretty inexpensive compared to Visual Studio, in my opinion. I know people that thought of nothing of dropping over $1000 per year per developer on control suites. Real Studio is much cheaper from that perspective since subclassing controls, canvas controls, and container controls eliminate the need for much of those expensive suites. The drawback is that you end up doing the work yourself rather than some other developer. And some things just can’t be done in RB that you might have come to expect in VB6 (like specialized controls in a grid cell) simply because on the Mac or Linux there is no equivalent.
If you want to convert your VB6 app to Real Studio, you can take a look at our conversion page at http://www.bkeeney.com/consulting/vb2rbconversion