Part IV: Visual Basic .NET

There’s an interesting linguistic phenomenon that happens when a brand becomes an archetype for a model or class of thing. No, not like “Googling it” but like when you say “The Cadillac of Smart Phones” or “Netflix for Planes” or the “Champagne of Tea”. It means your brand has become so synonymous with a unique quality that things in other categories can be defined in terms of you.

When someone calls something “The Visual Basic of X”, it implicitly sets certain expectations.

And more recently I’ve heard phrases bandied about like “The Visual Basic of Mixed Reality” or “The Visual Basic of Machine Learning”. You may not know exactly what that looks like, but you know what it means. When I say Nintendo’s “Super Mario Maker 2” is the “Visual Basic of 2D Platform Games” you understand how in 11 days it enabled the creation of 2 million levels by its users.

You can’t buy that kind of notoriety.

There is no “The C# of Building a Custom Car” (What does that even mean?)

If I said I was making the “Visual Basic of Small Business Ownership” you’d applaud. If I said I’d created the “Visual Basic of Becoming a Landlord” you’d say right on! If you can make anything The Visual Basic of doing that thing, we understand that to be good.

Well, VB.NET is the Visual Basic of (.NET) programming languages. How does it make sense to just set that brand on fire?

The Role of Women in the History of VB

I wish this had been highlighted sooner or under better circumstances and as I’ve failed to say it before I bear some responsibility for that. Because it feels like it could be the last meaningful opportunity, I’m making sure it goes on record while people are still watching.

Unlike most popular languages, VB doesn’t have any one “designer”, “founder”, “boss”, or “super star” associated with it for all or most of its life. When I hear about other programming languages, I notice that there’s a certain… stereotype to the pivotal and high-visibility people. They tend (there are exceptions) to be older, male, and usually Caucasian.

Because of its history VB (6 and .NET) has been touched in significant ways by a lot of people. And a lot of those people are women. It’s women’s history month, after all. Just an example of the women who’ve been on the VB team and/or had significant impact on its growth or community:

  • Laurie Corrin, Developer, the 3rd person on the VB 1.0 team, made Controls happen. Now Math & CS Educator
  • Nancy Schoeggl, Test Lead, VB1.0
  • Sarah Richie, International Test Lead, VB1.0-4.0, changed localized testing forever
  • Patricia Friel, PM, VBA, refused to go by “Pat” to make her gender ambiguous in emails.
  • DeeDee Walsh, PM, VB6
  • Julia Liuson, Developer -> Development Manager -> Product Unit Manager of VB.NET, now Corporate Vice President @ Microsoft, made language innovations like XML literals possible.
  • Amanda Silver, Lead PM Language, Compiler, Editor, & Debugging, now PM Director @ Microsoft, made LINQ happen
  • Beth Massi, PM, now board member on the .NET Foundation
  • Lisa Cohen (née Feigenbaum), PM, math genius, now Principal Data Scientist Manager @ Microsoft
  • Karen Ng (née Liu), Group Program Manager, Led project Roslyn, most significant investment in VB.NET in modern history -> Chief of Staff of Visual Studio
  • Sarika Calla, IDE Quality Lead
  • Julie Lerman, Programming Ninja, MVP, CS Course Author, DDD SME
  • Deborah Kurata, Rockstar Programmer, CS Course Author
  • Kathleen Dollard, Master Programmer, like 10-time MVP of the year -> PM for VB.NET
  • Richa Saxena Verma, SDET, Roslyn
  • Ying Peng, SDET -> SDE, Roslyn
  • Sophia Salim, SDET, VB10
  • Lakshmi Priya Sekar, SDET, Roslyn

And that’s just the few I could quickly pull off the top of my mind. I don’t have to room to tell the stories of these women and their impact on the team from VB1.0 to VB6 to VB.NET along its whole life. I don’t even have the space to summarize each of them and it would be immoral to bury those stories in the midst of this post. I feel bad only highlighting the roles of a few and really hope there’s an opportunity to tell more of them in a context that is inspiring rather than a painful reminder.

And that’s just some of the women, including women of color, who have held positions of impact, influence, and outright authority in every role on VB over its entire life (and have gone on to do great things since!). We should be talking about them, and not just because it’s Women’s History Month, but because they completely challenge the visuals of what the people who make programming languages and who are rock stars in programming language communities look like. And that history is Visual Basic’s history and it’s such an incredible asset, in my opinion, to showing a diverse world a different perspective on programming languages.

Fertile Soil

I sit in maybe 5-10 Facebook groups for VB users. Everyday I see questions. Questions from new developers. Questions from students. Questions from developers all over the world, many of whom don’t speak English as a first language. If you look at the MSDN forums for VB, you’ll see people asking questions, including rookie questions. Microsoft has stated at least as of 2017 that VB has “twice the share of new developers as it does all developers”. Meaning that even if … oddly, you assume there’s some fixed % of the total potential .NET developer base that’s genetically predisposed to being VB developers and that number just goes up or down, proportional to the total number of .NET developers (no reason to think anything works this way), VB grows faster that that passive increase. Meaning, it’s growing. It has the capacity for more growth.

As I mentioned in Part III, VB could have a higher net promoter score with a fixed perception of being loved so there’s even more growth potential.

My last story on this point. Circa 2016 a man named Matt, who work(ed) at Microsoft somewhere not at all near me, reach out on Outlook. He told me his son, Aidan, who was 11 at the time had discovered VB.NET somewhere, become super passionate about it and he wanted to know if he could bring him round for even more STEM inspiration with anyone on the team who had time.

Mads gave the kid an awesome historical perspective on programming. And I wanted him to meet Lucian, then VB Language PM.

I walk in Lucian’s office, he says (in his English accent) “I’m sorry Anthony, I’m very busy right now I really don’t have a lot of time”. I said, “There’s an 11-year-old boy here who’s started learning Visual Basic and his dad wants him to meet some folks on the team”. And Lucian said, “Give me 15 minutes” and then preceded to give him a kickass demo on GPU-accelerated fractals and high-performance falling sand animations in a Windows 10 app written in Visual Basic.

Then Aidan showed me his code—a Windows Forms app eerily similar in intent to the kinds of apps I was building when I was 13-15 in VB4. He was making similar mistakes to the ones I had made and I left the whole event maybe more inspired than he did.

I’m 35. This narrative that VB is just older persons at the tail end of their careers is not only ageist, non-inclusive, and disgusting but also inaccurate. This idea that there are no new VB developers or no growth potential is observably false if you bother to look.

We have a language whose syntax naturally lends itself to the possibilities of speech-to-text and text-to-speech synthesis that might open up more programming opportunities for the physically impaired and we’re just not even going to explore that… just because?

Even right now, VB.NET is in the Top 10 on the Tiobe index. It’s been in the top 10 pretty consistently. I know there are mixed opinions about the index but it is a thing other developers seem to care about. By contrast, (and I mean no disrespect to these awesome languages) F# is #32. TypeScript is #43. I’m not saying anything about those languages but why is VB.NET perceived as “on its last legs”, “a dying breed”, etc.?

Make no mistake, there is fertile soil here.

Technological assets almost any other language would kill and die for

Visual Basic .NET is a world-class language with such maturity in the infrastructure of the language. Just the overload resolution and type inference alone are worth years of development time. A modern compiler architecture along with an extensible set of platform APIs—Roslyn—built by the most brilliant minds in the industry that cost millions of dollars and 5 years to develop. The parser in VB is designed in such a way that makes certain experiences and features that would be prohibitively costly even in C# relatively trivial in VB. And it’s all open source! VB has a slick IDE, a great debugging experience. These are assets other non-Microsoft languages (and a few academics) would kill to have, other non-Microsoft languages are investing heavily to achieve, and VB already has them.

As a technologist, it is capricious and a criminal waste of innovation and innovation potential to take assets that virtually anyone else would die to have and just say “meh”? Because you can?

All of the ingredients for Greaterness

So, in conclusion: Visual Basic .NET is a world-class, open-source, cross-platform programming language which continues to attract new programmers across all ages, geographies, and genders, which I am consistently told cannot be made to succeed despite having a loyal if not zealous user-base looking for license to love and promote it, having amazing tooling, being on a great platform, from a great company, with consistent top-10 popularity, metonymic brand recognition in the industry for approachability and productivity, a history exhibiting the kind of diversity that documentaries and films are made about, having tons of potential for unique innovation in language and tooling, and being built on top of a brand new multi-million dollar tech stack developed specifically for it by the most brilliant minds over 5 years specifically to enable fluid innovation in language and tooling

!?!?!?HOW?!?!?!?

-Anthony D. Green

Preface | Part I | Part II | Part III | Part IV | Part V: An Open Letter to Satya Nadella