Live data from Hacker News

Microsoft plots the end of Visual Basic

thurrott.com

101–110 of 292 posts

Re: Microsoft plots the end of Visual Basic

#101

I never understood the purpose of VB.Net. My second job out of college was a mixture of VB6 and C++ where we would use C++/ATL (COM) to mix and match languages. Of course the VB6 IDE was miles better than the C++ IDE. But, Windows Forms with C# was just as easy as VB6 and VB.Net was just as complicated and more verbose than C#.

> I never understood the purpose of VB.Net.

Microsoft politics after hiring Anders Hejlsberg who designed C# as a competitor to Java so Java's compile-once-run-anywhere wont take a foothold on the desktop market and thus endanger the dominance of Windows, required that everything related to developing software for Windows was focused on C# and .NET to drive home to ISVs that this is the future, but up until that point VB6 was wildly popular - and absolutely incompatible with anything related to C# or .NET. So they reskinned C# with some VB clothes and paraded it in front of VB6 developers, hoping they wont notice the sharp bits sticking out - which worked as well as you'd expect. But with Microsoft having full and absolute control over VB6, it isn't like anyone could do anything about it, so over time people moved on. VB.NET never managed a hint of VB6's popularity and was always in the shadow of C#, which made perfect sense since outside of liking QBasic-like syntax more than C-like syntax, there wasn't any reason to use VB.NET.

Re: Microsoft plots the end of Visual Basic

#102

That is so sad. "There’s something deeply right about how list indexing and function application are the same operation". That is a quote from a recent submission about K ( https://news.ycombinator.com/item?id=22504106 ), and that is a perfect example of how I usually get VB nostalgia attacks: somebody talks about a thing in other language they consider amazing implying that that thing is unique for that language des…

I'm pretty sure that there are a few languages where array indexing is basically calling a function that returns a reference to the cell you're accessing.

Since C# 1.0, any type can have an indexer property defined that can accept any parameter types and can can return anything - though it wasn't until C# 7.0 that we could return a first-class reference to a value, including array members (`public ref int this[int idx] => ref this.someArray[idx]`).

Re: Microsoft plots the end of Visual Basic

#103

The end of Visual Basic.NET, that is. "Classic" Visual Basic has been ended for a long time now. (And VB.NET is much less of a loss -- it was never as popular as classic VB. Even when it first came out, it was clear that if you were a VB developer, Microsoft really wanted you to move to C#; VB.NET always felt like an afterthought, a fig leaf they could use to say they really weren't abandoning VB when they obviously…

Definitely. I was a huge fan of VB6, spent thousands of hours writing all kinds of things. When I first heard of VB.NET, I was excited to see what new features were implemented, expecting something like VB4->VB5->VB6. Boy was I in for a surprise. It seemed more like C wrapped in VB syntax. I started looking to other languages at that point, but as some other posters said I never found anything quite able to match the…

I never did VB6 or VB.Net, but I've done VBscript with classic ASP and VBA in Excel. Glad I went with C# instead of VB.Net.

Not trashing VB, but C# was always more capable and fully featured than VB (VB couldnt even do unsigned integers, and I dont it can even now), and almost immediately more widely adopted in even .Net 1.0. Hell, C++ with COM was more capable (if not extremely annoying amd error prone). Of course VBscript and VBA share very similar syntaxes, but they're not the same languages or std object models/libraries, just maybe 95% similar.

Re: Microsoft plots the end of Visual Basic

#104

I loved VB. I don't think I've ever been as productive as I was in VB - I could literally knock together a complete desktop application in an afternoon. It wasn't perfect. There were lots of problems with it. It would never win prizes in CS competitions. But man you could build shit with it fast.

100% this to a tee! In the mid to late aughts I knocked out soo many junky little desktop apps that scratched very specific business itches we had at work.

A couple hours work in VB saved non-technical people hundreds if not thousands of hours of repeated effort. Killing it is a mistake in my opinion, Even if I haven't touched Windows since 2010, VB.Net is the one wonderful thing it had going for it.

Re: Microsoft plots the end of Visual Basic

#105
post #57

Earlier quoted context omitted.

> great learning language E.W.Dijkstra would disagree: "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."

> E.W.Dijkstra would disagree Yes. And Dijkstra would be wrong. (Or, perhaps more accurately, prone to somewhat bombastic hyperbole.) BASIC is structurally similar to ASM, moreso than is any other HLL, at least of any popularity. Like almost any language (or paradigm) it is possible to get stuck in its particular ruts, and when BASIC was at its peak popularity there were probably lots of people stuck in those ruts ju…

BASIC (old-school unstructured imperative) is structured as the "ASM" language for an old-school desk calculator from the 1960s, with a few tacked-on features around string manipulation, input handling etc. plus more, depending on the hardware. It was fine for what it was in the 1960s (a simplified "scripting"-focused version of FORTRAN), but the needs of even slightly more modern coding are very different, and BASIC would not serve them well.

Re: Microsoft plots the end of Visual Basic

#106
post #62

Earlier quoted context omitted.

I used to think this too, but everything you can do in VB6 you can do in powershell, and do it better. Try/Catch, windows forms.. literally anything you can think of. You can even mix powershell and C# together in the same script. Once I realized I had a better version of everything I wanted, it became my new favorite.

>but everything you can do in VB6 you can do in powershell Excel modules? OK not quite exactly the same but close. I wrote a finite capacity planner system for a factory a fair few years ago in Excel to replace a huge number of Lotus 1-2-3 thingies with a vast amount of copy n paste from text screens and random sheets and what not. I started with an automated forecast. We used an (memory may be fading) exponential fi…

Sounds like you'd love playing Satisfactory and Factorio!

https://www.youtube.com/watch?v=Qg4h1uv4o6Y

https://factorio.com/

Re: Microsoft plots the end of Visual Basic

#107
post #57

I first learned how to program in VB4. I can see why as a professional programmer it lost favor, but it was a great learning language.

> great learning language E.W.Dijkstra would disagree: "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."

When Dijkstra wrote that quote in 1975 he didn't had Visual Basic in mind, he was thinking the much older BASIC dialects that used line numbers and GOTOs for flow control.

Dijkstra was trying to promote structured programming languages like Algol and Visual Basic is based on the QBasic dialect which has full structured programming features like WHILE and FOR loops, IF that would work with compound statements (that is have the THEN part be more than a single command), local variables, functions, recursion, etc. It might be hard to image nowadays but there was a time when those weren't available to all languages. Though note that the next year after Dijkstra wrote that quote, the original Dartmouth BASIC actually got structured features. Though it wouldn't be until QBasic that you'd see a (popular) BASIC dialect having those in home computers.

Regardless, this quote was outdated long before Visual Basic 1 was made, let alone VB6.

Re: Microsoft plots the end of Visual Basic

#108
post #85

Earlier quoted context omitted.

One criticism I've seen and levied myself is the sheer amount of typing: [PS] C:\> Get-MyReallyLongFunctionName -Server furtle $ lol --floop PS is fine but it takes ages for the bloody thing to wake up and notice command completion. It is like dealing with a teenager in bed. Actually, I have no problems with PS but with MS's idea of search as deployed to users. (I run KDE on Arch. Search is faster than I can blink)

Verb-first was also a bad choice. When I type “get” I am getting thousands of suggestions which makes autocompletion pretty useless. There is also no way to find all cmdlets that deal with active directory. It would be much better if I could type “AD” first and then get all cmdlets that deal with active directory.

Try:

  man *-AD*

Re: Microsoft plots the end of Visual Basic

#109

Earlier quoted context omitted.

Is it widespread? I've never seen anyone else using powershell 'in the wild', admittedly for the last 3 years I've mainly worked alone, but I still see people using CMD scripts. I usually get frustrated with it and bash out a quick cmdlet instead.

CMD is the worst language I ever saw. It's full of hacks for simplest tasks. The only reason I'm using it is for old systems where PS is not preinstalled. I used PS to write small scripts and I actually like it. I'm more fluent with bash, but that's only because I used bash a lot. PowerShell feels more robust, no silly space-in-filename problems, no silly parsing of text output to access fields. May be it's ugly for…

For me the big problem is that I know it can do loads, but it's not C#. So between the awkward wait for it to boot, the stupid naming convention, and the knowledge that the whole power of the .net framework should be at my finger tips, but in a really alien and unintuitive way, I prefer to either write a really small bat, or write a small C# console app.

And so I never become comfortable with it, even though I've tried several times since it was released.

The newer IDE is pretty good too.

But C# shows what it could have been if they'd had a talented language designer do it (which no-one can determine if someone is beforehand I admit).

I just wish they'd admit defeat and just use a subset of C# instead of stubbornly sticking with something that seems fairly widely loathed.

Post reply on HN