We have an application available on the BKeeney website that lets users analyze their VB6 projects file and send us the analysis via email. We then do some magic calculations and email them back with an estimate of between X and Y dollars to convert the application.
This is all without seeing a line of code so it really is a lot of guesswork. However, you can tell a lot about a VB6 application by the controls that it uses, how many forms, number of lines of source code and so on. If the application uses Crystal Reports it adds another layer of complexity to convert it to REALbasic. Likewise with any special ActiveX controls and DLL’s.
I originally came up with this topic idea right after the first of the year because it had been months since anyone had sent in a VB6 project for analysis. Then in mid-January we had three in one week (don’t you love the law of averages?). One we never heard back from and the other two said the price was too high for non-saleable projects.
So it leads me to this question: Is the Window of Opportunity Closing (or Closed) to Convert VB6 applications to REALbasic?
It was about a year ago where I lobbied Real Software to kill the Visual Basic Project Converter (VBPC) and they did. It was an awful attempt at trying to do everything and it did none of it especially well. At the time I thought it hurt the VB6 to RB cause and I still believe that.
At about the same time, AYB Computers introduced VB Convert! and it’s been updated several times since then. I’ve used it a couple of times and it’s okay at some things and code conversion is, well, code conversion.
Visual Basic and REALbasic may have ‘basic’ in the name but that’s about how close they are as development languages. Any conversion utility will fail given complex enough code. That’s a fact. To REALLY convert between VB6 and RB you’d need to create a syntax tree and mini-complier for VB6 and who wants to do all that work (and sell it cheaply enough to make it worthwhile)?
So in the long run it’s just easier to do it by hand. But then you run into pricing issues because it costs more for a code monkey to convert code than it is for a utility to do it. Then you get into Other People’s Code (OPC) problems because there are a lot of really poorly written VB6 apps out there (as well as in every other language but BASIC apps by their very nature are written by people that don’t have a lot programming experience) which takes even more time to figure out how to convert.
Let’s face it, even Microsoft’s VB6 to .NET compiler has issues. It’s not perfect either and to have someone convert it for you it costs about $1 per line of code (the last time I checked). Our prices are considerably less than that but in the past six months there’s been a considerable drop off of traffic.
At this point, .NET has been available for 5 years (more?). You would think that if they wanted to convert to .NET they would already have done so. If they haven’t, why not? I image a few cases: 1) They don’t have the technical know-how to do so or; 2) It’s too expensive to have someone do it for them; 3) They have no need of newer technologies and VB6 apps work fine; and 4) all of the above.
Do you think the window has closed on people converting from VB6 to some other language? Did I miss any reasons why they’ve waited? Is REALbasic a viable alternative to VB6?