ArtinSoft's Blogs

Software Migration Experts
Welcome to ArtinSoft's Blogs Sign in | Join | Help
in Search

The Myth of Visual Basic Migration / Upgrade

The myths about Visual Basic migration make it easy to play the “blame” game instead of trying to understand the issue. Often, in making the wrong assumptions, we “write off” some alternatives without even considering them. However, with training, support from automatic migration products and the use of a comprehensive migration methodology, the migration is not only possible using a fraction of the resources required for a rewrite, but it is also the right choice to reduce the Total Cost of Operation and prepare applications to maximize their future business value.
  • ASP.NET & Web Standards

    Aggiorno is an add-in for Visual Studio 2005/2008 that can swallow horrible non-validating markup and help you make an ASP.NET site web standards compliant with little effort.  With Aggiorno web developers can improve their ASP.NET or HTML sites by making them comply with the latest web standards and incorporating the latest technology trends. This will immediately mean increased productivity and immediate business value.

    Beta 1 has just been released, so you might want to give it a try and send some suggestions to the development team.

     

  • VB Runtime NOT in next Windows

    Here is an excerpt from an article that Greg DeMichillie wrote on Directions on Microsoft April Edition:

    "The planned follow-on release to Windows Vista, code-named Windows 7, will not include the Visual Basic 6.0 (VB 6) runtime libraries, Microsoft has begun informing customers. This sets a timeframe for the final end of support for the runtime."

    As we have informed on several occasion in this Blog, Microsoft is performing all the normal steps to retire a technology from market.  Visual Basic 6 was/is a tremendously popular technology but never the less it will have to go away.

    Jarvis Coffin once said: "All technologies fade away, but they don’t die."  This is most probably what is going to happen to VB6 (hey.. we still have COBOL code written more than 30 years ago that is alive and kicking!!!) but the question I have for you is: will you embrace the new technology?  Or will you fade away with it?

    It is time to upgrade your skills as a developer and also to migrate your application to greener grounds. 

    ArtinSoft has been hugely successful at migrating customers as Eric Nelson (Microsoft UK DPE and blogger) recently mentioned: "Artinsoft have a lot of VB6 migration experience and can help you do the migration - either by licensing their VB Upgrade Companion or by taking advantage of their migration services. Artinsoft are doing some great work with some of my UK ISVs helping them move off VB6."

    If you have any questions or comments regarding your migration strategy let's cover them in this blog.

  • April 8th 2008 and the end of Visual Basic 6 Support

    The date has arrived Visual Basic 6 leaves Extended support today.

    Rob Helm recently wrote on "Directions on Microsoft": "Some organizations will let support lapse on the VB6 development environment, gambling that any serious problems in the VB6 environment has already been discovered"  Additionally, Rob adds: "... organizations remaining loyal to VB6 applications will have to make increasingly heroic efforts to keep those applications running as their IT environments change."

    Organizations that GAMBLE with their business continuity, IT professionals that need to make HEROIC efforts to keep applications running!  Don't you believe that maintaining an IT organization supporting a business is already enough of an effort to add to the mix unsupported applications?

    Do you plan to be a GAMBLING HERO or is it about time to consider ways out of Visual Basic 6?

    Well this might be just the right time.  ArtinSoft is about to release a new version of the Visual Basic Upgrade companion. The effort required to migrate has been reduced even further and it now makes more sense than ever to automatically upgrade your applications to C# or VB.NET.

    Have you been procrastinating the decision to move?  Act now!!

  • Aggiorno is coming out of stealth mode: www.aggiorno.com

    Happy 2008!

    During last year, ArtinSoft has also been working on a new product that we called Aggiorno ( www.aggiorno.com ).  Aggiorno is a Visual Studio add-in designed to increase the productivity of web developers.  Aggiorno helps developers with a broad range of topics like web standards, SEO (Search Engine Optimization), Accessibility, XHTML, ASP.NET, etc.

    If you want to know more about aggiorno you can visit our new web site or the official blog: www.aggiorno.com\blog .

     In this blog, I will continue to discuss Visual Basic Upgrades and its implications.  By the way, customers are increasingly getting more excited about the speed and safety of migrations vs rewrites.

     

    Posted Jan 14 2008, 03:47 PM by Fzoufaly with no comments
    Filed under:
  • 2008 is the final warning to move VB6 applications to .NET

    Rob Helm, director of research at Directions on Microsoft, recently answered the question "Do the new releases of the Microsoft platform have an impact on the issue of upgrading applications from Visual Basic 6 to Visual Basic .NET?" with the quote that is the title of this post.

    He said that the new platform updates really do not have an impact and that you should not wait any longer to move. He emphasized that after the end of support date for VB6 the support will only be through a special support contract with Microsoft that typically is "very onerous" and increasing every year.

    Additionally, Rob Helm mentioned something that I had not noticed. Did you know the name of Visual Basic .NET is now officially only "Visual Basic"? Definetely another sign pointing at the future!

  • Microsoft improves compatibility libraries for VB 6.0: Visual Basic 2005 Power Packs 2.0

    Microsoft recently started to distribute a new version of the Visual Basic 2005 Power Packs. 

    Link to Download details: Microsoft Visual Basic 2005 Power Packs 2.0

    Notably, the routines that are included help with the automatic Upgrade/Migration of VB6 to .NET.  From the MSDN web site:

     

    " Overview

    The new Line and Shape controls included in this version of the Visual Basic 2005 Power Packs are a set of three graphical controls that enable you to draw lines, ovals, and rectangles on forms and containers at design time making it much easier to enhance the look of your user interface. These new shape controls also provide events such as click and double-click allowing developers to respond and interact with end users.
    The Printer Compatibility Library allows projects that used the Printer and Printers Collection in Visual Basic 6.0 to be upgraded without having to re-write your printing logic. By simply adding a reference to the library, declaring a Printer and making a few minor syntax changes, your project will be able to print using the Printers collection and Printer object as it did in Visual Basic 6.0. This version adds a new Write method to the Printer object which allows you to print text without a forced carriage return similar to the semicolon syntax used by Print method in Visual Basic 6.0.
    The PrintForm component is designed to bring back the ability to easily print a Windows Form. With this the new PrintForm component you can once again layout the Windows Form exactly as you want it and allow your users to print the form as a quick report."

     

    I'd like to relate this post with the one I did a few days ago related to performance (http://blogs.artinsoft.net/fzoufaly/archive/2007/0... ).  In the previous post I was arguing about the use of the VB6 Compat library from .NET applications.  Basically, I was arguing that the VB Compatibility library is written and distributed by Microsoft and therefore users should not be afraid to use it in their programs.  TThe same goes with the power pack Microsoft is now releasing.  The power pack contains a number of functions that are not directly addressed by the basic .NET framework but that are widely used and requested by VB programmers.  So what is the right solution?  Well, program them in .NET!!!  I mean, is there another way to provide functionality that is not by programming it?  Again, don't be afraid of using these routines more than you would be of any control you use in your app.  And also, do not worry about the performance hit!!

  • Will your VB6 application continue to work on Vista?

    Microsoft is committed to support the vb6 runtime environment on Vista. However they will not continue to support the IDE: the development environment is not officially supported by Microsoft on Vista.

    More detailed information can be found at: VBRUN and ftponline

    Additionally, do not forget to also verify the support of your third party controls. Are they being supported by their manufacturer?

    Many companies have already moved or are in the process to upgrade their Visual Basic Applications to .NET. However, many others are procrastinating their decision. Which type are you? Dont'you think it is time to move yet? What are you waiting for?

  • Performance of migrated VB6 applications to .NET

    A common question when upgrading VB6 applications to .NET is regarding the performance of the application.

    The short answer is that the migrated app typically performs as good as the original application. Let's dive into a couple of common issues that customers typically worry about:

    1) the use of the VB6 compatibility classes in .NET: First of all, I believe this is a very bad namespace name! Everytime you hear compatibility library you think about performance. However, in this case, all the classes in the compatibility library are implemented in .NET. They are included just to simplify the maintainability of the code. The functionality that they provide is not directly provided by .NET, therefore, the correct way of implementing it is to just program it in .NET which is exactly what the compat classes do. NO performance penalty here! In addition, these classes are part of the .NET framework, thay are supported by Microsoft and they will continue to be supported for the forseable future! If there is a function in there that you want to use it, just do it!

    2) COM Interop: The VB Upgrade Wizard generates primary assemblies for the COM component that are referenced from VB6. This is of course the fastest way to communicate with them from .NET. Now, typically, COM components are black boxes that presumably execute non trivial functionality. This means that typically the time spent by the execution of the COM component is orders of magnitude larger than the time spent in the calling of the component from .NET. Therefore the performance impact is negligible. This is not true of course if the COM interface is very chatty as you will have to go through the primary assembly overhead many times.

    The reason to eliminate COM interop is normally not one of performance. You want to eliminate COM components for maintainability reasons, for deployment reasons or to take advantage of newer versions of the components. If you just want to maintain the same functionality COM interop does not present a performance situation.

    In summary and reinforcing the introductory statement a converted application from Visual Basic 6 to .NET typically performs in the same way as the original one.

    Have you had a different experience? Let me know!

  • Good list of resources for VB6 Migrations from Microsoft's Peter Ty

    Peter Ty assembled a good reference of links for Visual Basic 6 Upgardes to .NET. Enjoy! http://blogs.msdn.com/peterty/archive/2007/05/25/end-user-computing-foxpro-and-vb-migration.aspx
  • BANAMEX signs automatic VB6 migration contract with ArtinSoft

    The launch of ArtinSoft's spanish web site (www.artinsoft.com.mx)  comes in synch with ArtinSoft's winning a very large contract to migrate over 170 Visual Basic applications at Banamex (a Citi Group subsidiary).  The applications will be fully updated and deployed by the bank in less than one year period.  This is a record time for such a large migration project: over 5 millions lines of code! 

    Banamex performed extensive research on how to approach the VB6 support deadline.  Since the beginning of the evaluation process the internal debate was weather to automatically migrate or to rewrite the apps. 

    They did a full assessment of their application portfolio and separeted the applications that were about to be retired and choose the applications that were functionally relevant to the business.   They observed that the chosen applications were simply performing all the business requirements they were supposed to perform, therefore no need to change them functionally!    The next realization was that a rewriting was definetely NOT the cost-effective way to solve the situation.  The estimated difference betweeb a rewrite and a migration was 5 to 1.

    Banamex showed once more that if your application is performing and what you need to do is move to adopt .NET and all the benefits that come with it then the best way forward is through automatic upgrade.

     

    Read more about the Banamex story at: the following links (some are in spanish):

     

    La República: http://www.larepublica.net/app/cms/www/index.php?pk_articulo=854

    El Financiero: www.elfinancierocr.com/edactual/tecnologia1231205.html

    CIO América Latina: http://www.cioal.com/pcwla/cioaldocs.nsf/pages/8E66B81ACF8DB582852573500015F54B

    Pergamino Virtual: http://www.pergaminovirtual.com.ar/revista/cgi-bin/hoy/archivos/2007/00001122.shtml

    Business News Americas: http://bnamericas.com/login.jsp?idioma=I&urlJump=story.jsp$SEP$idioma$EQ$I$AMP$sector$EQ$1$AMP$noticia$EQ$406218

    Yahoo! España: http://es.biz.yahoo.com/10092007/185/firma-costarricense-software-moderniza-sistemas-banamex.html

    Yahoo! México: http://mx.news.yahoo.com/.../38/negocios-firma-costarricense-software-moderniza-sistemas-banamex.html&printer=1

    La Prensa Gráfica: www.laprensagrafica.com/economia/870594.asp

    TMCnet: http://www.tmcnet.com/usubmit/2007/09/10/2925480.htm

  • ArtinSoft soluciones de migracion automatica de software

     

    Link to ArtinSoft – soluciones de migración de software

     

    ArtinSoft just lunched its web site for the spanish market and specifically for the Mexican market. 

  • Testing Upgraded Applications

  • Upgrading VB6 to .NET – migration guide FAQ: 13 Chapters available

     The ArtinSoft migration guide to VB Upgrades and Conversions is becoming a huge success.  It is clear that people are consulting it.  To me, this is just another evidence that the movement of VB6 applications to .NET is happening!

    Link to Upgrading VB6 to .NET – migration guide FAQ

     

    Your comments are more than welcome!

  • Dispelling VB6 Migrations Fear Uncertainty and Doubt

    Jeffrey Hammond of Forrester Research released yesterday a piece to help dissipate the FUD around Visual Basic Upgrades.

    The executive summary of the Trend piece "Keys to Successfull VB6 Migration: Dispelling App Dev Professionals Fear, Uncertainty, And Doubt" can be found at: http://www.forrester.com/Research/Document/Excerpt/0,7211,41746,00.html

    I agree with Jeffrey's view of the situation.  In a few words, VB6 customers should seriously consider a migration (it's about time!) and with the proper project consideration migrations can be executed almost painlessly.  I certainly recommend the research!

  • Bad software is terrible for business and the economy.

    A recent article by Jason Pontin on the Ney York Times began with exactly these words.  It went on like this:

    ... Software failures cost $59.5 billion a year, the National Institute of Standards and Technology concluded in a 2002 study, and fully 25 percent of commercial software projects are abandoned before completion. Of projects that are finished, 75 percent ship late or over budget.

    The reasons aren’t hard to divine. Programmers don’t know what a computer user wants because they spend their days interacting with machines. They hunch over keyboards, pecking out individual lines of code in esoteric programming languages, like medieval monks laboring over illustrated manuscripts.

    Worse, programs today contain millions of lines of code, and programmers are fallible like all other humans: there are, on average, 100 to 150 bugs per 1,000 lines of code, according to a 1994 study by the Software Engineering Institute at Carnegie Mellon University. No wonder so much software is so bad: programmers are drowning in ignorance, complexity and error.” ...

     

    Doesn't the above paragraph look like the perfect reason why an automated migration of a valuable application makes sense?  When you are doing an automatic migration you do not have to guess the intentions of the users.  You have the perfect specification.  You have a working application!  Then you might ask, if it is working why should you even touch it in the first place?  And we are going back to the reasons to migrate.  Typically an application becomes a candidate for a migration if it continues to support the business but need to evolve and it is written in a technology/platform that does not provide the best advantages to the current business scenario.  When an application meets these characteristics one of the common decisions is to throw it a away and re-build it!  Here is when we again enter in the cycle where most projects go down an unmanageable spiral of over time and over budget mainly because of the isses in translating business requirements into working code.  An alternative is the automated migration.  Take the best possible specification (the app itself), use the computer to upgrade it to a more modern environment (automatic migration) and take advantage of the latest techniques that software development tools can provide (.NET).  Why start from scratch when all you need is to continue to evolve a working app on a modern set of technologies?  VB6 application can be moved .NET, it is possible to extend their life, recover all the embedded knowledge and continue to extract value from them for years to come.

    If programming is so hard as the New York Times implies, why shouldn't we use techniques to reduce the amount of required programming?  Automatic migration is one of those techniques.  The article goes on illustrating another potential solution: Intentional Programming.  The idea is to capture the intention of the users and translate them into usable programs.  Again, more support for my thesis, why not use a working application as the source of intentions?

More Posts Next page »

This Blog

Syndication

News

Myth: "Visual Basic Migrations are not worth it." Current Status: BUSTED! Summary: Visual Basic Upgrade/Migrations are the most cost effective and less risky approach to evolve your code and take full advantage of .NET. The process to upgrade is not trivial, but THERE IS a process that can be followed and guarantees success.
Powered by Community Server (Non-Commercial Edition), by Telligent Systems