none
Future of Visual Basic? RRS feed

  • Question

  • So my idea is a pretty simple one, I want to learn Visual Basic BUT I don't want to invest my life hours into something that's not going to stick around.

    After doing a lot of searching and reading, looking for pros and cons and other such things I am still no closer to the answers than I was before.

    A clear majority of blog articles, discussions and other such things out there on the internet are based purely on opinion and some even take facts, modify and then use them to support their particularly biased arguments and these arguments are generally between C# fans and VB.NET fans which leave me more confused than ever.

    What happened to VB6 is probably my biggest issue and leaves me with a few questions:

    1. Is there a long and stable future for Visual Basic or will it be suddenly dropped and completely abandoned in favor of C#? < probably the most important question.

    2. Are there many important things such as with Universal Apps that C# can do but can't be done in VB? Moreover, do universal apps even support VB?

    3. To add to question 2, can VB do everything C# can do in terms of software development for desktop, cloud, etc (even if some things need a work around) or is it much more limited?

    4. What is the sort of learning curve am I looking at with VB versus C#?

    I'd appreciate replies that are informative and educational, no flaming or other unhelpful comments please because I've had my fill already, lol.

    Thanks in advance.

    • Changed type tamathecreator Saturday, January 9, 2016 12:24 AM apparently my question is not a question but a discussion
    • Changed type tamathecreator Friday, March 25, 2016 8:05 AM moderator advice :)
    Friday, January 8, 2016 7:08 AM

Answers

  • Howdy,

    My name is Anthony and I'm the Program Manager for Visual Basic, here at Microsoft. I own the end-to-end experience of being a Visual Basic developer and coordinate all of the tooling and platform and design teams to deliver new versions of VB. I've been at Microsoft since 2010, when we released VB 10, and was on the language design team that designed for Async/Await and iterators for VB as well as working on the Roslyn project, which literally rewrote every part of the VB stack from scratch over many years and was finally delivered in Visual Studio 2015 along with new language features like string interpolation ($"{a}") and the null-conditional operators (?.). All that history aside right now I'm very much focused on the future of VB and how we can make the next version even more stellar.

    I have many thoughts to share on your questions so I apologize in advance for the length.

    First, I understand that you're concerned about wasting your time. I understand how from the outside this is an intuitive concern but practically speaking it's impossible. Programming languages aren't like natural languages where you might spend a lifetime mastering French or Japanese only to learn that you should have learned Spanish or Mandarin Chinese and now all of that time and study is wasted. Fundamentally learning to program is about learning to organize your own thoughts. How to break things you understand almost unconsciously (like how to understand human speech) and breaking it down into discrete processes that can be emulated by a computer. That skill will apply no matter what language you're using and the more you program (in any language) the better it will get.

    Also there's a set of common concepts that are shared between most mainstream programming languages. If you learn how to recognize an "Off-by-one" error in a for loop in Visual Basic you will be able to recognize that same bug in C, C++, C#, Java, Ruby, Python, PHP, whatever. So, I originally learned to program in QBasic ~1997. It was my first language. I've carried the things I learned there through Visual Basic 4, 5, 6, and VB.NET. From making tic tac toe games to making language features in compilers – same stuff. I've added bits and pieces but the bulk of it has carried over. Now, along the way I've helped many people with their C++ home, or their Java homework, I've debugged ActionScript flash programs for customers, modernized VBA macros, slung C#, and read many programming books in other languages very competently. That's because there are a lot more modern languages have in common than they have differences. On the flip side I'm pretty terrible at reading Objective-C and I can't write F# very well. F# is a functional language and is more closely related with languages like OCAML  and Haskell so if I'd have learned one of those languages it would be easier to port than understanding to F#.

    Now, if we're talking about .NET languages it's even closer because they share a common type system—the system that governs how data types behave and interact with each other—and a common set of libraries they can use. This vocabulary is a large part of what you'll have to remember as you learn to program and it's also less portable to other platforms like Java. But since it's shared between VB and C# and F# you can freely move between them. Likewise the Visual Studio IDE is shared between VB and C# and F# which makes moving between them easier as well.

    In short, inexperienced programmers might tell you say this is an important decision to avoid "wasting your time" I'm telling you as someone who's been programming as a hobbyist for most of my teens and professionally for all of my adult life (almost exclusively in some dialect of BASIC) that it's not an important decision and that you won't be wasting time regardless of what happens.

    So, that leaves the question of why VB? It's a subjective question so I'll give you a personal answers:

    1. I find it more readable. The syntax reads closer to English which is especially good for inexperienced programmers or even non-programmers. When you're building a program for someone and can show them the program and they're able to read it at a high level is valuable. Even as an experienced programmer I prefer readable. I don't imagine that at some point I'll become so good at programming where I will want fewer people to be able to read my code.

    2. Also, the language is designed to be friendlier to people learning the language. VB has a greater number of more precise error messages to help you quickly understand what's wrong in your program. Where they're reported, how they're worded – better.

    3. The language bends over backward to make you more productive by being more robust in its rules. VB has stronger type inference, better overload resolution, and more fault tolerance so that you don't have to "babysit" the tool as much. It's more declarative. You say what you want and it makes that happen without forcing you to micromanage details. If you have to stop and type more code to help it figure out which overload to pick or which type arguments to infer you're spending time making the tool more productive not the other way around. I prefer VB's experience here. Now some will say "Oy! I dislike that VB does all that – I wish it would just be dumb all the time and force me the programmer to be explicit about everything – it's better" and I disagree. My goal when I code is to make something happen, not to babysit my compiler. Learning all the adorable ways to please your programming language will never get useful software written.

    4. Amazing tooling. And C# has caught up a lot here since v1 but philosophically the tooling improvements that have started in VB – background compilation, quick fixes, edit & continue are all built with programmer productivity in mind, and were very expensive for Microsoft to make. But that's the thing about VB – it errs on the side of its job being harder in order for your job to be easier.

    I'm not saying these reasons apply to everyone and you can decide you don't like any of them. But it is my belief that for someone just learning how to program a readable language that doesn't demand as much from you while you're learning, better diagnostics to get stumbling blocks out of your way quickly, a more declarative style that lets you focus on what you're trying to accomplish with code rather than making demands on how you express every little thing, and amazing tooling to make writing and debugging code faster – that this is a winning combination!

    Lastly, for your specific concerns in no particular order:

    VB can do universal apps. VB always could do universal apps. We have an entire blog series on how to do it. What VB didn't have—but now does—is a particular IDE feature that was used in the old universal templates. We knew when we wrote the feature that within a year or so that entire way of authoring universal apps—by sharing code files—was going to be obsolete in favor of a single shared binary that ran adaptively on all Windows platforms. We made a decision to keep investing in VB14 in VS2015 rather than do throwaway work on the 2013 codebase. We could debate whether that was the right decision but regardless VB was capable of making universal apps even then, and still is, and now they're better.

    There's a thing called Turing completeness which basically says VB and C# can do all the same stuff one way or another. But they've both been Turing complete since .NET 1.0 so I doubt that satisfactorily answers your question. And if we're being petty, VB has more features, has always had more features, and will likely continue to have more features because of differences in design philosophy (C# is minimalist and C# developers love that about it). What I will say is that the Visual Basic compiler and IDE are written in Visual Basic. And the C# compiler and IDE are written in C#. So, you're covered between desktop apps and compilers and the cloud and mobile and HoloLens and games and if we miss anything you can program your own programming language in Visual Basic that is better than Visual Basic and use that to do whatever you need J

    Re: learning curve. Similar with an advantage to VB. I've heard anecdotally from people who've tried to teach programming that VB is easier to learn. I know from survey data that most Visual Basic developers are self-taught, learned VB as their first language, stick with it in many cases for 10-20 years, and recommend it highly for learning to code. But since I'm included in all those figures and don't have any numbers on C# to compare to, it's all word of mouth.

    Re: VB has a long future ahead of it no matter how you look at it. We're working on the next version – the 25<sup>th</sup> Anniversary version – VB15. Visual Basic is an open source language (check us out on github) so it can't really be killed even in the event of Mount St. Helens erupting and burying Microsoft campus in magma. But none of that matters because Visual Basic has a lot of users and continues to attract new developers and be used on projects that have been around for decades and will be around for decades. Allegedly VB6 was "abandoned" but there's a lot of VB6 code out in the world that has been actively maintained for 18 years now. There are still people playing around with QuickBasic 30 years after its last release. And C/C++ were basically frozen in time for decades until recently. This nightmare scenario where widely popular languages just disappear overnight aren't realistic.

    And lastly on the topic of VB6. I was a VB6 developer. I was able to embrace .NET because VB.NET allowed me to take what I was already comfortable with from VB6 about the core language concepts and Forms object model and be productive and then branch out into all kinds of stuff as needed. Others had different experiences, but I want to share mine since I don't think it gets balanced airtime. VB.NET wasn't an end of the road for me as a developer, it was bridge to the world of .NET. A world that now lets me build apps for phones and game consoles and desktop computers and raspberry pis and websites and run on Linux/Mac OS X and make compilers all day and write apps that run 64-bit or on ARM tablets. There were *projects* that absolutely were impractical to wholesale move over to .NET, and there were projects that was very practical to move to .NET, and projects that took a hybrid approach with some pieces in VB6 and some in VB.NET. What's important is that there was a bridge continuing an unbroken continuity of developers and growing skills reaching back to the begging of Microsoft with MS BASIC that continues today. VB6 wasn't a trap I fell into and VB.NET wasn't an offense I got over. They were both steps on a road that led me to working on amazing things at an amazing companies, including Microsoft, and have no regrets about taking either.

    In conclusion, it doesn't matter. Pick one. Pick both. Alternate every six-months. Just start doing something today. Whether you start in one and try the other one out later and decide you like it more or stick with it forever there's no unhappy ending for you. There's no road that suddenly disappears. Skills that you suddenly can't use. Knowledge or experience that won't make you a better programmer in the end. There are pros and cons to each and no right answer and no real risk. Flip a coin and do whatever it says, you can change your mind at any time, any day, and it won't cost you more than reading a few blog posts on syntax differences between them – everything else you get to keep. And likely by the end you'll have to work in both because there's a lot of code out there in both. Just take the red pill and jump.

    Also, pick VB because it's awesome! J

    Warmest regards,

    -Anthony D. Green, Program Manager, Visual Basic


    Anthony D. Green | Program Manager | Visual Basic & C# Languages Team

    Monday, January 18, 2016 10:17 PM
    Moderator

All replies

  • Why don't you search forum topics? This has only been posted about over 1.5 million times.
    Friday, January 8, 2016 8:14 AM
  • The same questions always arise when starting a major project, so here are my 2 cents on the future of VB:

    All the signs show that the different languages are evolving toward a common architecture, eventually merging together. Now that is a big prediction and the "eventually" will certainly be long after we are gone...

    If you look at Visual Studio you can see that all the major coding languages are supported...with even cross-platform capabilities (Android, IoT....) so that's another hint of the merging of coding practices.

    The syntax will keep somewhat different...but that's like using slang :) we all do it, and I assure you even in VB people have their own accent!

    Now, let's see how it developped for me: LSE (nobody remembers that....), Basic, C, Lisp, C++, back to Basic.

    Visual Studio gives you the capability of using your language of choice.

    So look around you: what are your peers using? how easy it is to compile the HelloWorld program?

    For Question2: I don't know the limit for UApps but VB does UApps

    For Question3: I haven't seen limitation in VB beyond the very arcane memory management...

    For Question4: it all depends on your previous coding experience, but all in all there should not be much differences...

    On a ligther note I could never feel for C# because who in their rigth mind would call that "Sharp" and not "Pound"!!!


    Cyrille Precetti
    Bonne Année! Happy New Year!

    • Marked as answer by tamathecreator Saturday, January 9, 2016 12:04 AM
    Friday, January 8, 2016 8:24 AM
  • its always better to ask the product owner about the future of his product, so I suggest to contact the VB team with this same question, contributors here does not represent MS and thats why you may get personal views based on personal preferences over programming languages.

    Regarding number four that depends on what type of apps you are looking to develop web, desktop, mobile...? And if you are looking for pure VB.net code learning for now, I suggest to start with msdn VB.net tutorial as it cover a wide range of topics.


    Fouad Roumieh


    Friday, January 8, 2016 8:25 AM
  • The previous answer I gave was in fact not answering your question. In fact I can better do it with an analogy and then with the often used one. Cars. 

    VB and C# share the same engine, but if C# was a car:

    1. it had no airco
    2. it had no electric moving windows
    3. it had no automatic gearbox
    4. it had no powerbrakes
    5. it had only very basic shock absorbers
    6. and more of that

    Is this better for learning to understand a car? Some say it is. Is it more productive (seems not important for you but I think it is the major reason why you choose a program language). My opinion is that only if it is used as a tractor.

    Nevertheless, many like that raw behavior of a car and like to tell that it is better.

    Can such a car be used on more places? Certainly. However, how many use their car for grass track racing.  


    Success
    Cor

    Friday, January 8, 2016 1:41 PM
  • The answer to your basic question depends on your life expectancy. If you expect to be coding 50 years from now then it is unlikely that you will be using either VB.Net or C# (if those names are still around, they will surely have undergone a change at least as radical as the VB 6 to VB.Net change). If you are only looking 5-10 years in the future, I suspect both VB.Net and C# will be around in something like their current form.

    To answer your specific questions:

    1. If you think 5-10 years is a long future, then I think VB.Net will be around in recognisable form. Of course I can't be sure, and neither can anyone else.
    2. I'm not aware of any classes of application that C# can be used to develop that VB.Net can not. For Universal Apps, see this tutorial.
    3. I don't believe there is anything in desktop development that can be done in C# but not VB.Net or vice versa. Each language has a few features that the other does not, but there is always a work-around.
    4. The learning curve for VB.Net and C# should be similar. Previous experience with VB-like languages (VB 6, VBA, etc.) would make learning VB.Net quicker; previous experience with C-like languages (C, C++, Java) would make learning C# quicker.
    Friday, January 8, 2016 2:02 PM
  • Hello,

    Rather than asking the question should time be invested into one specific development language the question should instead revolve around what programming language is being asked for in the employment marketplace?

    An unbiased place to see this right away in regards to employment opportunities is to look at Stackoverflow web site, specifically when viewing popular programming language on the tag page. The most popular language is JavaScript then Java then C# while vb.net is on the second page. Does this mean you should look at JavaScript first? Not if the job market in your area is asking for vb.net or perhaps python.

    Also, one should not simply have one programming language in their toolbox but they should be focusing on types of solutions to target which also goes back to market place offering.

    My point of view for my locale is jobs are in mobile and web applications using C#, JavaScript, JQuery, CSS, Web API, SQL-Server. It so happens our company wrote vb.net desktop solutions for 13 years then when customers demanded mobile and web applications the deciding factors for us where the following. Moving between web languages for the front end to a language for the backend it made sense to use C# as they are similar syntax wise unlike vb.net which is not similar to say JavaScript.

    By no means does this say vb.net is not a viable development language, it is and will be for many years down the road but it all goes back to what is in demand. If you are a contractor and the business customer does not care which language is used then you have the power to choice the languages used and perhaps with that said you are comfortable with using one or the other backend programming languages.

    Bottom line, it’s your choice so evaluate you as a developer and the job market. If the local market place is not right for you then consider moving. I moved from the East Coast to the West Coast for better opportunities twenty years ago, was not easy but the move proved to be best for me which is an ever changing world were one must adapt to the demands of the customers while where I came from it was much more static.

    Microsoft's commitment stands for vb.net heck look at ASP.NET 5 which was only going to be C# but now is going to support vb.net.


    Please remember to mark the replies as answers if they help and unmark them if they provide no help, this will help others who are looking for solutions to the same or similar problem. Contact via my Twitter or Facebook via my MSDN profile but will not answer coding question on either.

    Friday, January 8, 2016 2:02 PM
    Moderator
  • Pick the field you like and are good at. The rest will follow. You may have to work at the job you can get at first but strive to do what you have fun with and are good at for your lifetime.
    Friday, January 8, 2016 2:28 PM
  • Ha ha, that's pretty good Cor.

    Friday, January 8, 2016 2:29 PM
  • What do you want to learn VB.NET/C# for?  Is it for hobbyist purposes or to start a career in software development?  If the former, it doesn't really matter - learn the language that you think will bring you the most enjoyment.  Learn lots of them, and for that matter learn lots of different frameworks and technologies, not just .NET.

    If you're learning a language for a career?  C# pays better and there are more opportunities.  The follow-up question of course is, what makes you think you can only learn one language?  At the .NET shops I've worked at, the worst devs were the fanboys and the best were the ones who knew the framework in depth and simply used whatever language best suited their purpose.  Just remember - some shops will enforce one language upon you, and more often than not in a .NET code shop that will be C#.

    Answers:

    1.  Nobody can predict the future.  VB is losing its niche and IMO is the language most likely to be dropped by Microsoft if it comes to the crunch.  C# and VB fight over the same territory.  If financial pressure forced MS to cut dev support for one of their languages, it won't be C# and it won't be Visual C++.  F#, while quirky, occupies its own niche.  That only leaves one language for the chopping block.

    2.  Right now, no there aren't.  Universal Apps are fully supported by VB.NET.  However, upon its initial announcement, ASP.NET 5 was going to be C# only for RTM with VB support to possibly follow later as an "add-on".  This quickly changed when the VB community threw a pewpfit about it, but many have read deeper meaning into Microsoft's original decision.  For an interesting opposing stance on this, you may want to investigate the comparative language features of C# and VB - it may surprise you.  Example:  If I'm working with XML data I won't even touch C#, VB's features make it light years better.

    3.  As far as I'm aware, at present all the Microsoft platforms supported by C# are also fully supported by VB.  The only significant feature I can think of in C# that doesn't exist in VB is the ability to do unsafe code blocks.  This is useful if you're manipulating bitmaps in memory.  Personally, in my line of work I tend to come across XML data that needs manipulating far more frequently than bitmaps that need manipulating, but your mileage may vary.

    4.  Depends - what is your existing language experience, if any?  If you've never written any software in your life, VB will be easier to learn, and people that tell you otherwise are people that already have experience in C, C#, C++, and Java.  If you don't know how to write code, curly braces don't make it any easier on you to understand code.  On the other hand, if you do have experience with Java, javascript, C, C++ or any other C-esque language then you'll likely find C# just as easy if not easier to learn VB.

    Hope that helps some :-)

    Friday, January 8, 2016 2:30 PM
  • What happened to VB6 is probably my biggest issue and leaves me with a few questions:

    What happened to VB6 is that it is using COM, and VB6 never became a true object oriented language. There was VB3, 4, 5,  and 6,  and 6 was the end on the VB COM lifecycle.

    https://msdn.microsoft.com/en-us/library/windows/desktop/ms680573%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396

    COM is being supplanted by the .NET Framework  

    https://en.wikipedia.org/wiki/.NET_Framework

    VB6 was supplanted by VB.NET. And VB.NET is an OO language.

    https://en.wikipedia.org/wiki/.NET_Framework

    .NET Framework, the CLI, is controlled by the ISO and ECMA. C# is controlled by the ISO and ECMA.

    VB.NET is proprietary to MS.

    In todays environment, it doesn't hurt to know VB.NET and C#, which allows the door to be opened for more job opportunities.

    C# is more popular from a business  prospective, because of its ISO and ECMA status as opposed to VB.NET being proprietary.  Many companies follow ISO and ECMA standards in their business activities in conducting business.  

    Friday, January 8, 2016 2:42 PM
  • Thank you to everyone who gave helpful advice, I apologize for any inconvenience as I thought I posted my questions in the correct forum, lol.

    Anyway, I have up-voted all the replies that I felt made the most sense to me, I picked a random reply and marked it as the answer but not because it was the most helpful but just because I could only choose one and I felt many replies here were very helpful to me.

    I think the overall vibe I'm getting is that although VB is powerful and can do most things C# can, C# is more sought after in the job market and might make more sense to learn. It's a shame really because I really like the look of VB code.

    Once again I thank you all and now I just have to sit and think about what I want to do, start with VB and switch to C# later, or just go with C# from the get go and forget about VB.

    Cheers :)

    Edit: feel free to keep adding your views and comments, I appreciate any new information :)
    • Edited by tamathecreator Saturday, January 9, 2016 12:26 AM additional text
    Saturday, January 9, 2016 12:13 AM
  • ... although VB is powerful and can do most things C# can...

    Please do understand that your statement is incorrect.

    The fact that VB and C# both produce very nearly the same MSIL and the fact that in most cases, VB can be directly converted to C# and vice versa should itself be an indication that you're comparing apples with apples.

    No, they're not the same and I didn't say that, so don't take it that way.


    If I had eight hours to chop down a tree, I'd spend six sharpening my axe. -- Abraham Lincoln

    Saturday, January 9, 2016 12:33 AM
  • I agree with Frank on this, both languages are equally capable for writing common solutions. The main drawback to vb.net currently is there are less code samples on the web for those starting out at the present time. Even with this one who is diligent and persistent in most cases can overcome this with a C# to vb.net language converter and gets you slightly into C#.

    Converters are not perfect e.g. if I have  Dim Item As string  = SomeStringArray(3) to index into an array a converter might do string Item = SomeStringArray(3); and not change brackets e.g. string Item = SomeStringArray[3]; etc. so you would need to see this which again gets you semi familiar with C#.

    I just wrote a MSDN code sample  (advance level working with data expressions) that has both C# and VB.NET where you can easily browse both projects online and compare syntax and also download and try them out. Here is another one working with SQL-Server and Stored Procedurs I did where there is a C# and VB.NET project which mirror each other.

    So with that said, as I mentioned before go with the job market is in your area.


    Please remember to mark the replies as answers if they help and unmark them if they provide no help, this will help others who are looking for solutions to the same or similar problem. Contact via my Twitter or Facebook via my MSDN profile but will not answer coding question on either.

    Saturday, January 9, 2016 1:06 AM
    Moderator

  • COM is being supplanted by the .NET Framework  

    ...

    VB.NET is proprietary to MS.

    C# is more popular from a business  prospective, because of its ISO and ECMA status as opposed to VB.NET being proprietary. ...

    We heard the COM argument back in 2000 when the first Alpha release of VS .NET came on the scene.  For the past 16yrs, .NET has supposedly been "replacing COM" but that hasn't happened.  Too many devs, including Microsoft's Windows division, are heavily invested in it.  Only in Windows 8 did it feel as though .NET was on a somewhat level playing field with COM and Win32 as far as the OS API is concerned.

    Is VB.NET still classed as proprietary?  It's been fully open sourced alongside C#, which is why I cannot help but wonder if it will eventually fall completely on the OSC to maintain and develop it while MS concentrates on C#.  Will it ever gain ISO/ECMA Standard status?  That remains to be seen.

    However, I don't think this is the reason for C#'s commercial popularity over VB.  Simply put, VB still has a stigma attached to it that it cannot shake, and many code shops see knowledge of something curly-braced as being superior to knowledge of something with "End ..." blocks.  The real irony today is that you're more likely to see terrible coding practices from a relatively green javascript developer than you are a VB developer with the same amount of experience, but javascript still looks better on a resumé.

    Monday, January 11, 2016 2:04 PM
  • COM technology fully supports object-oriented languages. It was Classic VB that did not have a complete OO implementation (no pun intended). In it's migration to .NET, Microsoft simply chose to dump some of the language features that were considered dated and Visual Basic became a better language because of it - even though many considered it a "language cleansing".

    I expect COM/OLE/ActiveX will live on for some time since many Microsoft technologies, such as VBA, OLEDB, ADO, etc., are dependent upon it.


    Paul ~~~~ Microsoft MVP (Visual Basic)

    Monday, January 11, 2016 2:35 PM
  • Hello,

    VB is surviving for many years and there are lot of programmers who love to start their project with VB.

    I dont see that it will be suddenly dropped out and lot of ppl have to chose another language to start with.

    Look at below helpful thread

    https://social.msdn.microsoft.com/Forums/en-US/4963f06b-c7c7-4d3c-a9bd-e7c9a7514e70/what-is-the-future-of-vbnet-2014?forum=vbgeneral

    Also I believe that there is no harm if someone knows more than one programming language.

    Also think about Excel or access VBA which can be done in VB only.


    A user friendly computer first requires a friendly user

    Monday, January 11, 2016 2:54 PM
  • We heard the COM argument back in 2000 when the first Alpha release of VS .NET came on the scene.  For the past 16yrs, .NET has supposedly been "replacing COM" but that hasn't happened.  Too many devs, including Microsoft's Windows division, are heavily invested in it.  Only in Windows 8 did it feel as though .NET was on a somewhat level playing field with COM and Win32 as far as the OS API is concerned.

    Yeah COM and the O/S are still in play. But from an Enterprise level in developing  business solutions particularly in developing solutions that use DDD, TDD, IoC, Unit Testing, WCF, WPF, Entity Framework, MVC and MVVM etc , etc  solutions of this perspective, COM is nowhere to be found. 

    However, I don't think this is the reason for C#'s commercial popularity over VB.  Simply put, VB still has a stigma attached to it that it cannot shake, and many code shops see knowledge of something curly-braced as being superior to knowledge of something with "End ..." blocks.  The real irony today is that you're more likely to see terrible coding practices from a relatively green javascript developer than you are a VB developer with the same amount of experience, but javascript still looks better on a resumé.

    I think it is because of for whatever reasons, VB development departments and VB developers in general are not embracing new .NET technologies not at the level, scale and expertise being done by C# developers. You can see it in this forum. You hang in other forms like EF, WCF Web API, ASP.NET, WPF and others where it is neutral as to what language is being used, you seldom to none see anyone using VB.NET.

    Monday, January 11, 2016 3:27 PM
  • Once again I thank you all and now I just have to sit and think about what I want to do, start with VB and switch to C# later, or just go with C# from the get go and forget about VB.

    Yeah, learn the basics in each language learn them both and keep both doors open to job opportunities.

    But it is really not about what language you use. It's about do you know how to design .NET solutions from the front-end to the back-end effectively and successfully using the various NET technologies.. It is what it is about that allows one to get paid the dollars.

    If you learn 1/4 of what Dofactory teaches, then you'll be ahead of the heard.

    http://www.dofactory.com/products/net-design-pattern-framework

    Any coding monkey can write code. But can you design solutions using various .NET technologies is the key to getting paid.

    Tuesday, January 12, 2016 11:38 PM
  • And with Interoperability, you can get the best of both worlds. Looking for an example to post, I found this excellent code from about 3 years ago. Credit goes to John Wein for this. This shows that I can use C# to manipulate a bitmap - -quicker than any known VB method.

    Imports System.Runtime.InteropServices 'Code adapted from code by JohnWein
    Public Class Form3
        Dim B(1)() As Integer
        Dim Bmp(1) As Bitmap
        Dim GCH(1) As GCHandle
        Dim G(1) As Graphics
        Dim W As Integer = 800
        Dim H As Integer = 600
        Protected Overrides Sub OnLoad(e As EventArgs)
            MyBase.OnLoad(e)
            For I As Integer = 0 To 1
                ReDim B(I)(W * H - 1)
                GCH(I) = GCHandle.Alloc(B(I), GCHandleType.Pinned)
                Bmp(I) = New Bitmap(W, H, 4 * W, Imaging.PixelFormat.Format32bppPArgb, GCH(I).AddrOfPinnedObject)
                G(I) = Graphics.FromImage(Bmp(I))
            Next
            G(0).CopyFromScreen(Point.Empty, Point.Empty, Bmp(0).Size) ' warm up purposes only
            Me.Width = Me.Width - Me.ClientSize.Width + W
            Me.Height = Me.Height - Me.ClientSize.Height + H
            Dim SW As Stopwatch = Stopwatch.StartNew
            G(0).CopyFromScreen(Point.Empty, Point.Empty, Bmp(0).Size)
            SW.Stop()
            Me.BackgroundImage = Bmp(0)
            Me.Show()
            Dim T0 As Long = SW.ElapsedMilliseconds
            SW = Stopwatch.StartNew
            For I As Integer = 0 To B(0).Length - 1
                B(1)(I) = (Not B(0)(I)) - 16777216
            Next
            SW.Stop()
            Me.Text = "Capture " & T0.ToString & "ms : Negative " & SW.ElapsedMilliseconds.ToString & " ms"
        End Sub
    
        Protected Overrides Sub OnFormClosing(e As FormClosingEventArgs)
            MyBase.OnFormClosing(e)
            For I As Integer = 0 To 1
                GCH(I).Free()
                G(I).Dispose()
                Bmp(I).Dispose()
            Next
        End Sub
    
        Private Sub Form3_Click(sender As Object, e As System.EventArgs) Handles Me.Click
            Me.BackgroundImage = Bmp(1)
            Me.Invalidate()
        End Sub
    End Class


    Top Tip: Toothache? Cut paper towel to 2"square. Smear with olive oil. Sprinkle on Cayenne Pepper. Fold over few times to form small wad. Tuck in between wall of mouth and gum. Leave 1 - 2 hrs. You will thank me!


    • Edited by LeonCS Wednesday, January 13, 2016 12:16 PM
    Wednesday, January 13, 2016 12:11 PM
  • And with Interoperability, you can get the best of both worlds. Looking for an example to post, I found this excellent code from about 3 years ago. Credit goes to John Wein for this. This shows that I can use C# to manipulate a bitmap - -quicker than any known VB method.


    ??????????????????????????????????????????????

    C# has no methods to manipulate a bitmap. 

    Your code shows also that the bitmap is done with Redim. If this is needed probably a CopyTo will be a better one. 

    It seems like if you are comparing VB6 with C#


    Success
    Cor

    Wednesday, January 13, 2016 4:39 PM
  • Hey ? ? ? Now I confooozzzed ? ?  Cor ? ?  what you saying ??

    GCHandle

    I thought that was C# - - - not VB

    When I get time I will investigate.


    Top Tip: Toothache? Cut paper towel to 2"square. Smear with olive oil. Sprinkle on Cayenne Pepper. Fold over few times to form small wad. Tuck in between wall of mouth and gum. Leave 1 - 2 hrs. You will thank me!


    • Edited by LeonCS Thursday, January 14, 2016 11:34 AM
    Thursday, January 14, 2016 11:32 AM
  • My apologies to all. Cor you are right.

    GCHandle is not C#

    I did not understand Interoperability either. More to do with COM and unmanged versus managed. Very handy though.

    Cheers. Good discussion until I piped in - - -



    Top Tip: Toothache? Cut paper towel to 2"square. Smear with olive oil. Sprinkle on Cayenne Pepper. Fold over few times to form small wad. Tuck in between wall of mouth and gum. Leave 1 - 2 hrs. You will thank me!

    Monday, January 18, 2016 9:05 AM
  • Howdy,

    My name is Anthony and I'm the Program Manager for Visual Basic, here at Microsoft. I own the end-to-end experience of being a Visual Basic developer and coordinate all of the tooling and platform and design teams to deliver new versions of VB. I've been at Microsoft since 2010, when we released VB 10, and was on the language design team that designed for Async/Await and iterators for VB as well as working on the Roslyn project, which literally rewrote every part of the VB stack from scratch over many years and was finally delivered in Visual Studio 2015 along with new language features like string interpolation ($"{a}") and the null-conditional operators (?.). All that history aside right now I'm very much focused on the future of VB and how we can make the next version even more stellar.

    I have many thoughts to share on your questions so I apologize in advance for the length.

    First, I understand that you're concerned about wasting your time. I understand how from the outside this is an intuitive concern but practically speaking it's impossible. Programming languages aren't like natural languages where you might spend a lifetime mastering French or Japanese only to learn that you should have learned Spanish or Mandarin Chinese and now all of that time and study is wasted. Fundamentally learning to program is about learning to organize your own thoughts. How to break things you understand almost unconsciously (like how to understand human speech) and breaking it down into discrete processes that can be emulated by a computer. That skill will apply no matter what language you're using and the more you program (in any language) the better it will get.

    Also there's a set of common concepts that are shared between most mainstream programming languages. If you learn how to recognize an "Off-by-one" error in a for loop in Visual Basic you will be able to recognize that same bug in C, C++, C#, Java, Ruby, Python, PHP, whatever. So, I originally learned to program in QBasic ~1997. It was my first language. I've carried the things I learned there through Visual Basic 4, 5, 6, and VB.NET. From making tic tac toe games to making language features in compilers – same stuff. I've added bits and pieces but the bulk of it has carried over. Now, along the way I've helped many people with their C++ home, or their Java homework, I've debugged ActionScript flash programs for customers, modernized VBA macros, slung C#, and read many programming books in other languages very competently. That's because there are a lot more modern languages have in common than they have differences. On the flip side I'm pretty terrible at reading Objective-C and I can't write F# very well. F# is a functional language and is more closely related with languages like OCAML  and Haskell so if I'd have learned one of those languages it would be easier to port than understanding to F#.

    Now, if we're talking about .NET languages it's even closer because they share a common type system—the system that governs how data types behave and interact with each other—and a common set of libraries they can use. This vocabulary is a large part of what you'll have to remember as you learn to program and it's also less portable to other platforms like Java. But since it's shared between VB and C# and F# you can freely move between them. Likewise the Visual Studio IDE is shared between VB and C# and F# which makes moving between them easier as well.

    In short, inexperienced programmers might tell you say this is an important decision to avoid "wasting your time" I'm telling you as someone who's been programming as a hobbyist for most of my teens and professionally for all of my adult life (almost exclusively in some dialect of BASIC) that it's not an important decision and that you won't be wasting time regardless of what happens.

    So, that leaves the question of why VB? It's a subjective question so I'll give you a personal answers:

    1. I find it more readable. The syntax reads closer to English which is especially good for inexperienced programmers or even non-programmers. When you're building a program for someone and can show them the program and they're able to read it at a high level is valuable. Even as an experienced programmer I prefer readable. I don't imagine that at some point I'll become so good at programming where I will want fewer people to be able to read my code.

    2. Also, the language is designed to be friendlier to people learning the language. VB has a greater number of more precise error messages to help you quickly understand what's wrong in your program. Where they're reported, how they're worded – better.

    3. The language bends over backward to make you more productive by being more robust in its rules. VB has stronger type inference, better overload resolution, and more fault tolerance so that you don't have to "babysit" the tool as much. It's more declarative. You say what you want and it makes that happen without forcing you to micromanage details. If you have to stop and type more code to help it figure out which overload to pick or which type arguments to infer you're spending time making the tool more productive not the other way around. I prefer VB's experience here. Now some will say "Oy! I dislike that VB does all that – I wish it would just be dumb all the time and force me the programmer to be explicit about everything – it's better" and I disagree. My goal when I code is to make something happen, not to babysit my compiler. Learning all the adorable ways to please your programming language will never get useful software written.

    4. Amazing tooling. And C# has caught up a lot here since v1 but philosophically the tooling improvements that have started in VB – background compilation, quick fixes, edit & continue are all built with programmer productivity in mind, and were very expensive for Microsoft to make. But that's the thing about VB – it errs on the side of its job being harder in order for your job to be easier.

    I'm not saying these reasons apply to everyone and you can decide you don't like any of them. But it is my belief that for someone just learning how to program a readable language that doesn't demand as much from you while you're learning, better diagnostics to get stumbling blocks out of your way quickly, a more declarative style that lets you focus on what you're trying to accomplish with code rather than making demands on how you express every little thing, and amazing tooling to make writing and debugging code faster – that this is a winning combination!

    Lastly, for your specific concerns in no particular order:

    VB can do universal apps. VB always could do universal apps. We have an entire blog series on how to do it. What VB didn't have—but now does—is a particular IDE feature that was used in the old universal templates. We knew when we wrote the feature that within a year or so that entire way of authoring universal apps—by sharing code files—was going to be obsolete in favor of a single shared binary that ran adaptively on all Windows platforms. We made a decision to keep investing in VB14 in VS2015 rather than do throwaway work on the 2013 codebase. We could debate whether that was the right decision but regardless VB was capable of making universal apps even then, and still is, and now they're better.

    There's a thing called Turing completeness which basically says VB and C# can do all the same stuff one way or another. But they've both been Turing complete since .NET 1.0 so I doubt that satisfactorily answers your question. And if we're being petty, VB has more features, has always had more features, and will likely continue to have more features because of differences in design philosophy (C# is minimalist and C# developers love that about it). What I will say is that the Visual Basic compiler and IDE are written in Visual Basic. And the C# compiler and IDE are written in C#. So, you're covered between desktop apps and compilers and the cloud and mobile and HoloLens and games and if we miss anything you can program your own programming language in Visual Basic that is better than Visual Basic and use that to do whatever you need J

    Re: learning curve. Similar with an advantage to VB. I've heard anecdotally from people who've tried to teach programming that VB is easier to learn. I know from survey data that most Visual Basic developers are self-taught, learned VB as their first language, stick with it in many cases for 10-20 years, and recommend it highly for learning to code. But since I'm included in all those figures and don't have any numbers on C# to compare to, it's all word of mouth.

    Re: VB has a long future ahead of it no matter how you look at it. We're working on the next version – the 25<sup>th</sup> Anniversary version – VB15. Visual Basic is an open source language (check us out on github) so it can't really be killed even in the event of Mount St. Helens erupting and burying Microsoft campus in magma. But none of that matters because Visual Basic has a lot of users and continues to attract new developers and be used on projects that have been around for decades and will be around for decades. Allegedly VB6 was "abandoned" but there's a lot of VB6 code out in the world that has been actively maintained for 18 years now. There are still people playing around with QuickBasic 30 years after its last release. And C/C++ were basically frozen in time for decades until recently. This nightmare scenario where widely popular languages just disappear overnight aren't realistic.

    And lastly on the topic of VB6. I was a VB6 developer. I was able to embrace .NET because VB.NET allowed me to take what I was already comfortable with from VB6 about the core language concepts and Forms object model and be productive and then branch out into all kinds of stuff as needed. Others had different experiences, but I want to share mine since I don't think it gets balanced airtime. VB.NET wasn't an end of the road for me as a developer, it was bridge to the world of .NET. A world that now lets me build apps for phones and game consoles and desktop computers and raspberry pis and websites and run on Linux/Mac OS X and make compilers all day and write apps that run 64-bit or on ARM tablets. There were *projects* that absolutely were impractical to wholesale move over to .NET, and there were projects that was very practical to move to .NET, and projects that took a hybrid approach with some pieces in VB6 and some in VB.NET. What's important is that there was a bridge continuing an unbroken continuity of developers and growing skills reaching back to the begging of Microsoft with MS BASIC that continues today. VB6 wasn't a trap I fell into and VB.NET wasn't an offense I got over. They were both steps on a road that led me to working on amazing things at an amazing companies, including Microsoft, and have no regrets about taking either.

    In conclusion, it doesn't matter. Pick one. Pick both. Alternate every six-months. Just start doing something today. Whether you start in one and try the other one out later and decide you like it more or stick with it forever there's no unhappy ending for you. There's no road that suddenly disappears. Skills that you suddenly can't use. Knowledge or experience that won't make you a better programmer in the end. There are pros and cons to each and no right answer and no real risk. Flip a coin and do whatever it says, you can change your mind at any time, any day, and it won't cost you more than reading a few blog posts on syntax differences between them – everything else you get to keep. And likely by the end you'll have to work in both because there's a lot of code out there in both. Just take the red pill and jump.

    Also, pick VB because it's awesome! J

    Warmest regards,

    -Anthony D. Green, Program Manager, Visual Basic


    Anthony D. Green | Program Manager | Visual Basic & C# Languages Team

    Monday, January 18, 2016 10:17 PM
    Moderator
  • While I found the other views in this discussion helpful, I have to say when people are looking for answers its replies like yours that we are looking for, concise, in depth, examples from experience, all of the things that beginners like myself need to properly be informed.

    I thank you for your reply, it was exactly what I was looking for and I feel that the decision I have made was the right one.

    I have chosen to begin with Visual Basic. Yes, I was sold more by your spectacular contribution but I was already leaning toward VB anyway, I just don't like the look of C# and it would have made it that much harder to learn and, to be fair, the reason I started this discussion, I was quietly hoping someone would push me over the edge, lol.

    Everything I needed to know about the language, its comparison to C#, and its future are all in your reply and I am confident that anyone else like me looking for a nudge will find your answer exactly to their tastes.

    Once again I thank you, you have been more than helpful.

    P.S. I have no idea why your reply was reported as abusive but as far as I'm concerned you deserve a medal!

    Friday, March 25, 2016 3:28 AM
  • ...

    P.S. I have no idea why your reply was reported as abusive but as far as I'm concerned you deserve a medal!

    The Spam Filter doesn't appear to like Anthony. :) I fixed the abuse.

    You might even go so far as to change this thread back into a question and then mark his post as the answer.  Seems pretty definitive to me.  :)


    Reed Kimble - "When you do things right, people won't be sure you've done anything at all"

    Friday, March 25, 2016 4:24 AM
    Moderator
  • So my idea is a pretty simple one, I want to learn Visual Basic BUT I don't want to invest my life hours into something that's not going to stick around.


    To address the OPs question.

    Microsoft abandoned the VB6 programming language. They will abandon VB.Net too.

    But don't let that stop you. Just because Microsoft abandons something, it doesn't mean it won't continue.

    Developer and user pressure has forced Microsoft to continue to support VB6 for the lifetime of Windows 10 (that is until at least 2025).
    The same is likely to happen when they abandon VB.Net.

    But if it is a real concern to you, you may prefer to choose a non-Microsoft language such as JavaScript.


    Saturday, April 2, 2016 4:08 AM
  • Hi Anthony,

    Do you know if Xamarin and ASP.NET Core 1.0 will embrace to Visual Basic too?

    Best regards

    David Blanco

    Tuesday, April 5, 2016 6:09 AM
  • David,

    Let us make your question different. 

    Xamarin and ASP.Net Core 1.0 are acquisitions from Microsoft. Will that change the current position of Microsoft which is not anymore number one in the Internet market? Microsoft did many more acquisitions like Nokia, Skype but in past much more. Not all were a success. 

    Who knows what this will bring, but it is unfair to ask this to Anthony.

    Maybe we go back to scripting languages but my experience is shown in the fact that browser builders currently set off "error checking" as default.  


    Success
    Cor


    Tuesday, April 5, 2016 7:19 AM
  • Sorry Cor but I disagree with you.

    Maybe is unfair to ask to Anthony that question, but he works in Microsoft (also moderator).

    Maybe he could have some information about it.

    I thought it was a good idea because ASP.NET Core 1.0 is not an acquisition as you say, it's a totally Microsoft's reimplementation. 

    (Xamarin does however)

    I only asked if VB.NET is in the roadmap with Xamarin & ASP .NET Core 1.0

    Best regards

    David Blanco

    Tuesday, April 5, 2016 8:04 AM
  • Hi Anthony,

    Do you know if Xamarin and ASP.NET Core 1.0 will embrace to Visual Basic too?

    Best regards

    David Blanco


    ASP.NET Core will have Visual Basic support in the future. I can't tell you whether there are plans to do the same with Xamarin.

    Paul ~~~~ Microsoft MVP (Visual Basic)

    Tuesday, April 5, 2016 12:51 PM
  • Hi Anthony,

    Do you know if Xamarin and ASP.NET Core 1.0 will embrace to Visual Basic too?

    Best regards

    David Blanco

    Always keep in mind that there are three 1st-Party .Net languages; C#, VB.Net, and F#.  And the development of all three is now something which you and I can participate in.

    Don't let the past serve as your sole guide to the future.  It is true that traditionally we have seen poor adoption of 3rd party frameworks (and even some 1st-party ones) for VB.Net, but the same was true for F#.  And traditionally many of these frameworks were closed and therefore difficult to extend or reproduce in another language.  And there were other roadblocks as well in the underlying .Net technology.

    But now all of that has changed.  The languages are easier to extend than ever and much of the 3rd party stuff developers want to use is open source.  And precedents have been set.  The biggest fans of F# didn't wait for MS to give them the tools they wanted... they created their own.  That doesn't mean that MS gives up its own development of F# and turns it over to the community... it means MS has an even better understanding of what the community wants and can focus its energies on supporting the things that the community wants to do but hasn't been able to achieve on its own yet.  Its a win-win for F# devs and for MS.

    We as the VB community need to be vocal about the things that we use VB for and the kinds of support we feel we are lacking.  And every now and again, we need to take a stab at trying to come up with our own solutions.  Even if we fail, the work we do shows that we want this thing, whatever it may be, and our failure may highlight the area where MS can do something small and easy to help us.

    The future of VB.Net doesn't lie solely in the hands of two guys in Redmond.  Its in all our hands as the community of VB users.  You can bet that those two guys will do everything they can, use every tool at their disposal, to empower us and help us achieve our goals.  But we as the community need to do a better job of defining what those goals are.

    So while I don't expect things to change overnight, I do feel that it would not be unreasonable to expect the future to bring a more consistent developer ecosystem for all three 1st-Party .Net languages through the efforts of both Microsoft and the individual language communities.


    Reed Kimble - "When you do things right, people won't be sure you've done anything at all"

    Tuesday, April 5, 2016 9:07 PM
    Moderator
  • Hi Anthony,



    Reed Kimble - "When you do things right, people won't be sure you've done anything at all"

    Reed,

    Often I find that your replies contain to many words but this one is well done. 

    :-)


    Success
    Cor

    Tuesday, April 5, 2016 9:32 PM
  • ...

    Often I find that your replies contain to many words but this one is well done. 

    :-)


    Success
    Cor

    Thanks.   It is true that I've rarely been accused of being too brief.  :)

    Reed Kimble - "When you do things right, people won't be sure you've done anything at all"

    Tuesday, April 5, 2016 9:49 PM
    Moderator
  • Nothing at Build 2016 about VB.Net being supported by Xamarin.

    Saturday, April 9, 2016 8:39 AM
  • Thanks for supporting VB, I love it, it makes me develop faster without conserning all the bracket and semicolons stuff.
    Saturday, June 4, 2016 3:45 AM
  • Thanks for supporting VB, I love it, it makes me develop faster without conserning all the bracket and semicolons stuff.

    That's total BS...
    Saturday, June 4, 2016 5:14 PM
  • Thanks for supporting VB, I love it, it makes me develop faster without conserning all the bracket and semicolons stuff.


    That's total BS...

    Which part? The part about the clunky C language syntax? ;-)

    Paul ~~~~ Microsoft MVP (Visual Basic)

    Saturday, June 4, 2016 7:18 PM
  • Thanks for supporting VB, I love it, it makes me develop faster without conserning all the bracket and semicolons stuff.


    That's total BS...


    Which part? The part about the clunky C language syntax? ;-)

    Paul ~~~~ Microsoft MVP (Visual Basic)


    The fact that some clown would even post it. :)
    Saturday, June 4, 2016 8:42 PM
  • Thanks for supporting VB, I love it, it makes me develop faster without conserning all the bracket and semicolons stuff.


    That's total BS...


    Which part? The part about the clunky C language syntax? ;-)

    Paul ~~~~ Microsoft MVP (Visual Basic)

    Hell, let the poster use Cobol he'll like that too, since there is no brackets and semicolons.

    https://www.gtsoftware.com/netcobol-net/

    The poster can even go across platforms.

    https://www.gtsoftware.com/netcobol-linux/

    The continuous whine, whine and more whine BS about VB as compared to others is pathetic.

    Saturday, June 4, 2016 8:56 PM
  • Thanks for supporting VB, I love it, it makes me develop faster without conserning all the bracket and semicolons stuff.


    That's total BS...


    Which part? The part about the clunky C language syntax? ;-)

    Paul ~~~~ Microsoft MVP (Visual Basic)

    Hell, let the poster use Cobol he'll like that too, since there is no brackets and semicolons.

    https://www.gtsoftware.com/netcobol-net/

    The poster can even go across platforms.

    https://www.gtsoftware.com/netcobol-linux/

    The continuous whine, whine and more whine BS about VB as compared to others is pathetic.

    I wasn't aware he was whining. He just seemed to be happy about being able to use VB instead of C#. Everybody has their own preference. No big deal.

    Paul ~~~~ Microsoft MVP (Visual Basic)

    Saturday, June 4, 2016 10:25 PM
  • Thanks for supporting VB, I love it, it makes me develop faster without conserning all the bracket and semicolons stuff.


    That's total BS...


    Which part? The part about the clunky C language syntax? ;-)

    Paul ~~~~ Microsoft MVP (Visual Basic)

    Hell, let the poster use Cobol he'll like that too, since there is no brackets and semicolons.

    https://www.gtsoftware.com/netcobol-net/

    The poster can even go across platforms.

    https://www.gtsoftware.com/netcobol-linux/

    The continuous whine, whine and more whine BS about VB as compared to others is pathetic.

    I wasn't aware he was whining. He just seemed to be happy about being able to use VB instead of C#. Everybody has their own preference. No big deal.

    Paul ~~~~ Microsoft MVP (Visual Basic)

    Someone happy about using a computer language? Someone in love with a computer language? I used a lot of them over the years including VB. Am I in love with any of them and several and some of them use brackets and semicolons and some don't? The answer is no.

    And there is a continuous whine in this forum about VB's state. 

    Sunday, June 5, 2016 8:59 PM
  • ...

    Someone happy about using a computer language? Someone in love with a computer language? I used a lot of them over the years including VB. Am I in love with any of them and several and some of them use brackets and semicolons and some don't? The answer is no.

    And there is a continuous whine in this forum about VB's state. 

    You are free to not love a development language.

    By the same token, others are fee to love a development language.  No one has the right to say otherwise.

    I agree with Paul's assessment of the post.  And any "whining" I've ever seen has come from folks who don't really understand the "state" of VB to begin with.


    Reed Kimble - "When you do things right, people won't be sure you've done anything at all"

    Sunday, June 5, 2016 10:31 PM
    Moderator
  •  I agree with Paul's assessment of the post.  And any "whining" I've ever seen has come from folks who don't really understand the "state" of VB to begin with.

    Like I care about someone's assessment?  I call them like I see them, and it's the continuous whining about the state of VB in this forum every one or two months it's the same stupid post about VB.  And then you all show like cockroaches over a bread crumb, and it's the same cockroaches over and over. :)

    You don't see it any other forum but this one. You don't see it in StacKOverflow  and other technical programming language forums the continuous whine about VB and its state here in the Twilight Zone. :)

    Monday, June 6, 2016 1:26 AM
  •  I agree with Paul's assessment of the post.  And any "whining" I've ever seen has come from folks who don't really understand the "state" of VB to begin with.

    Like I care about someone's assessment?  I call them like I see them, and it's the continuous whining about the state of VB in this forum every one or two months it's the same stupid post about VB.  And then you all show like cockroaches over a bread crumb, and it's the same cockroaches over and over. :)

    You don't see it any other forum but this one. You don't see it in StacKOverflow  and other technical programming language forums the continuous whine about VB and its state here in the Twilight Zone. :)

    That's total BS. You're just whining. ;-)

    Paul ~~~~ Microsoft MVP (Visual Basic)

    Monday, June 6, 2016 3:25 AM
  •  I agree with Paul's assessment of the post.  And any "whining" I've ever seen has come from folks who don't really understand the "state" of VB to begin with.

    Like I care about someone's assessment?  I call them like I see them, and it's the continuous whining about the state of VB in this forum every one or two months it's the same stupid post about VB.  And then you all show like cockroaches over a bread crumb, and it's the same cockroaches over and over. :)

    You don't see it any other forum but this one. You don't see it in StacKOverflow  and other technical programming language forums the continuous whine about VB and its state here in the Twilight Zone. :)

    That's total BS. You're just whining. ;-)

    Paul ~~~~ Microsoft MVP (Visual Basic)


    Who told you to bite on the hook? Like its my fault?
    Monday, June 6, 2016 3:46 AM
  • Sure! Visual Basic Syntax and Grammar will be there forever, since it comes and looks like the natural human English language. However, all the critical elements surrounding the language, call it Platform, IDE, Compiler, etc. No, these elements will not be there forever. Microsoft has taught its programming community that even if you are fluid at a LANGUAGE, they as owners, are able to cut your tong, and force you to speak another dialect of the language, whether you like it or not. My recommendation for you is to keep your body and mind as far as you can from Microsoft products and embrace open source platforms, with no owners whatsoever.

    Sunday, April 7, 2019 2:03 PM
  • Hi

    You shouldn't worry too much as OP is a few years older now.


    Regards Les, Livingston, Scotland

    Sunday, April 7, 2019 2:49 PM