4 ms·
While maybe that's true, that doesn't map to my experience very well. After QBasic, I wrote a lot of Visual Basic 5 and 6. I had poked at C, but would not say I
by eropple 3y ago
While maybe that's true, that doesn't map to my experience very well. After QBasic, I wrote a lot of Visual Basic 5 and 6. I had poked at C, but would not say I knew it, and had never done anything useful in the language. But I did exactly one thing in VB.NET before trying C# and realizing that it really did encapsulate and present a better way to think about code. It's not perfect, but it's much, much better--and in that era, .NET 2 or so, it was significantly more ergonomic and had better tooling than Java or PHP, the other two languages I learned about contemporaneously with C#.
Maybe there's a mass cohort of people who were simply not going to learn something new, but in the light of most of twenty years hence, I think that they made the right call.
- ethbr1 3y agoI've worked with a ton (too many) VB programmers by virtue of the work that I do (UI automation). My experience all suggests that pure-VB (even .NET) is a treacherous dead-end, because it doesn't scale in terms of complexity and project size, and the point at which is stops scaling is often unrealized by its developers. - VB(.NET) is amazing for small, simple gadgets. - VB(.NET) is terrible for large or complex systems. The problem is that VB is likely to be the only programming language that developer knows (moreso than developers in other languages). Consequently, when they reach the end of the reasonable VB road... they will NOT say "Oh, I should learn C#." They will say "How can I make this work in VB?" And that's when you start to get business-ending unsupportable messes of spaghetti code that just barely work, on a good day. Give a person only a hammer, and they'll find a way to make the entire world a nail.
- ripley12 3y ago> VB(.NET) is terrible for large or complex systems. This doesn't make sense to me. I worked in a 50/50 VB.NET/C# codebase for years and while I don't love the VB syntax, the two languages were 99% interchangeable. Nearly anything you can do in C# you can do in VB.NET, and vice versa.
- pishpash 3y agoLol, it doesn't scale because of the quality of the programmer, not because of the language. There may be some self-selection there but it isn't because of the language or tooling. Any "too easy" language brings these comments. People complain about MATLAB too when in fact there is nothing wrong with it or VB. Of course you can abuse both for purposes they are not meant for.
- rightbyte 3y ago> VB(.NET) is terrible for large or complex systems. Compared to what? It got support for multiple files and even luxuries like namespaces.
- bazoom42 3y ago> VB(.NET) is terrible for large or complex systems. C# and VB.net are semantically 100% identical. Only difference is surface syntax, like begin end instead of curly braces. It scales exactly as well as C#.
- albrewer 3y ago> - VB(.NET) is terrible for large or complex systems. I can't say I agree with this. My experience has been that developers who write things in VB tend to be self-taught and don't know how to scale up small gadgets into large systems.