
Who is using VB.NET? What are they using it for? - peteforde
At the time Microsoft announced the .NET platform, I made my living as a VB6 and ASP&#x2F;IIS developer. I put a small amount of energy into looking at VB.NET, but it was VB in name alone. Ultimately this was the push I needed to switch to the F&#x2F;OSS team and I became a Ruby developer just in time for Rails to come out. I was - and am - very happy about this change.<p>Over the past few years, I&#x27;ve spent time working in Unity, which means I&#x27;ve accidentally become quite proficient in C#. And you know, I don&#x27;t love it but it&#x27;s not so bad once you&#x27;re moving.<p>However, at no point did I ever consider going back to VB.NET. If you&#x27;d asked me before a few weeks ago, I honestly believed that it had been consigned to the annals of nerd trivia.<p>It came as a huge shock to see that VB.NET is apparently more popular than C#, which seems to be used for all manner of things:<p>https:&#x2F;&#x2F;www.tiobe.com&#x2F;tiobe-index&#x2F;
https:&#x2F;&#x2F;insights.stackoverflow.com&#x2F;survey&#x2F;2017#technology<p>One survey and I&#x27;d assume that TIOBE was being trolled. But this seems real.<p>However, I&#x27;m experiencing massive cognitive dissonance because I&#x27;ve never met a VB.NET developer, and while I&#x27;ve worked in web, mobile and game development circles for 25 years, I literally have no idea what you&#x27;d even use VB.NET <i>for</i>.<p>I&#x27;ve never seen a single article or mention on Hacker News or any of the other forums I read.<p>Is there a sort of progressive&#x2F;conservative-esque perception bubble where there&#x27;s a parallel universe using VB.NET for building the next Hooli?<p>It&#x27;s really bothering me. :)
======
davismwfl
When I was consulting we would usually run into VB.NET in businesses that were
either small or didn't have career developers. One exception to that is a lot
of financial services firms (even banks) seemed to use it a lot.

The types of problems I saw VB.net used to solve were usually data entry apps,
call centers etc. A lot of the times these developers are what I called "tools
based", because almost without exception the only way they knew how to get a
database connect or a form component on the screen was to use Visual Studio to
drag and drop it. I did run into a few VB.NET projects that were super
professionally done and impressive but that was the exception. I don't fault
the language overall, but I would never want to maintain it long term.

Funny part, one of the consultancies I started and ran for years focused on
project rescues and our bread and butter was the Microsoft stack for a time.
By percentage we were called for VB.NET projects in financial services firms
above almost all other situations. To be fair, VB.NET wasn't the failure
generally, poor project management, bad requirements and staffing almost
always was the failure. Architecture and language choices were usually made by
non-developers or at least non-career developers.

~~~
GFischer
Agreed, I built a data entry program in VB.NET for an insurance company.

The WYSIWIG aspect of .NET WinForms and events meant I could build a very
efficient data entry program (I miss that part a lot when developing for the
web).

~~~
flukus
I still maintain an internal WinForms app in c#. Even with the very old (.net
1.0) code everywhere, lot's of spaghetti, inline sql (including the sql
injection variety) etc, it's still our most maintainable application and I
love getting the chance to work on it.

Most other apps we have, even the ones far simpler than this one, contain just
as much spaghetti but distributed over 15 layers to the point where their
incomprehensible.

In hindsight I'm not convinced replacing drag'n'drop coding with
"architecture" was a good move.

------
quantummkv
No one is using VB.NET to build the next Facebook or something. VB.NET is used
heavily in the most boring of all domains - business side apps. Like, for
example a small invoicing app for a mom and pop store made usually by students
or some extra cash or by small scale consulting companies.

In India a whole lot of such apps, even for big grocery chains and banks are
made in VB.NET. I made many of them when I was an undergraduate for some quick
spending money.

> I've never seen a single article or mention on Hacker News or any of the
> other forums I read.

You wouldn't. This is not a client side or flashy business where you can claim
big innovation or some grand mission like changing the world. No one on a
forum has the time to talk about the boring stuff.

------
flukus
Early on in .net history VB was just as popular as c# if not more. There was a
huge difference in skill set of the programmers for each though, the VB camp
were mostly the drag'n'drop type of developer, essentially using VB.net like
an access developer would. On the c# side were the "real programmers" that
often had a background in java and c++, just look at any of the OSS software
from the era and nearly all of it was in c#.

As frameworks churned away from tools amenable to drag'n'drop programming with
MVC on the web side and XAML on the desktop the VB developers seem to have
either moved to c# or dropped out of the industry, I occasionally talk to
people that were programmers in the late 90's/early 2000's that left the
industry and they are pretty much all VB programmers of one dialect or the
other.

As for what it's being used for, it works just as well as c# everywhere that
works, web desktop and mobile, there's no technical reason to avoid it (but a
few less technical ones).

What I can't explain is it's recent resurgence. I haven't seen this in the
boring business programming world, this is where VB thrived but from my
experience it's all in c# or java these days. If I had to guess it would be
tools like unity responsible for VB's second coming... or errors in tiobe
methodology.

~~~
peteforde
Just to be clear, before I was the Ruby guy, I was the VB guy. I owned boxed
copies of every version from 1.0 onwards - including VB Dos - and was even the
Mining Company (later about.com) guide for VB.

I was one of the signatories of a petition by over 120 Microsoft MVPs that
asked them to maintain a COM branch long enough to release a proper VB7
release that could serve as a viable transition pathway. They told us in no
uncertain terms that we were farting into a hurricane.

There were initially more VB.NET developers - more of _us_ \- than C#
developers only because there were millions of casual VB6 developers that had
a massive investment in the tools. It's my position that they really fucked up
by telling us that our only choice was to get with the program. At least in my
case, it was not. I left the VB world and started the first Rails consultancy
in the world in fall 2004. This proved to be a rather excellent move.

I'm curious about your comment about how all OSS software from the 2002 era
was VB.NET. I could be missing something, but... what? :) Do you have any good
examples?

------
GFischer
The company I used to work for (big, multibillion-dollar insurance company)
had a lot of VB.NET projects (and C# projects, and Java projects, and anything
you might care to think about).

In particular, the manager at the branch I worked in had settled on VB.NET
because he thought it would be an easier transition for the old VB6 developers
he had.

And it's not bad, I loved not having to worry about case sensitivity and
stupid brackets and semicolons, but that's only syntactic sugar.

I'm now back to C# for the last few years and I noticed no significant
difference, other than more resources on the web.

------
quickthrower2
My previous gig they were using it for some machine learning algos. I think it
was just because that was what the programmers were familiar with and liked
using. I found it a bit annoying to maintain being from a C# background, but
that's just because it is a productivity hit with the weird syntax around the
later C# features like generics.

~~~
GFischer
I actually liked the syntax for generics a lot more (and BASIC syntax in
general over C syntax).

But C-style syntax has won over the world.

------
mattarnster
I'm currently employed by a company to make custom add-ons for Sage 200 (the
accounting software).

Sage 200 is written in C#, but has SDKs for both VB.NET and C#. My boss has
only really used VB.NET, so that's what we're using.

