The Visual Basic Team

A group blog from members of the VB team

What's New in Visual Basic 2017

Visual Studio 2017 just shipped, and with it shipped a new version of Visual Basic. With the new language strategy of the .NET Languages, the focus is again on Visual Basic’s original virtue: Provide editor, debugging and refactoring tools as well as language feature to ease complex tasks and boost every VB’s developer productivity without distracting them from their domain specific excellence.

Digging Deeper into the Visual Basic Language Strategy

Today Mads made an excellent post about our overall .NET Language Strategy. As I know this will raise a lot of questions in the VB community I wanted to take an entire post on the VB team blog to dive deeper into how VB fits into that strategy and why and what that means in practical terms for us as a community.

Relaunching the Visual Basic Team Blog

Last year we decided to retire this blog and consolidate content on the .NET team blog instead. The thinking at the time was that we weren’t really posting a lot of content to it and that there was so much overlap in content between the VB team blog and the C# FAQ that it would be simpler to just focus on the .NET blog.

Edit & Continue and Make Object ID Improvements in CTP 6

It’s the beginning of a new year! According to Back to the Future Part II, everyone will be riding hoverboards in a couple months (and, let’s be honest, Doc would love the HoloLens). In the meantime, let’s explore the enhancements we’ve made to the Visual Studio debugging experience.

We're moving to GitHub!

It’s official. We’re moving to GitHub!
We are moving the Roslyn OSS code from CodePlex to GitHub. GitHub has a vibrant open source community that we want to actively be a part of and contribute to. We are also going to take this time to modify our pull request process.

Announcements

Visual Basic in .NET Core 3.0

Visual Basic in .NET Core 3
I’m excited about our plans for how Visual Basic.NET will be supported in .NET Core 3.0!
Like other .NET languages, Visual Basic will continue to be supported on .NET Framework, and you do not need to make any changes to your application.

New for Visual Basic: .NET Standard Class Libraries and the dotnet CLI!

Visual Studio 2017 15.3 Preview 1 included templates for VB class libraries targeting .NET Standard class libraries and for .NET Core console apps. With the release of .NET Core 2.0 today those templates go-live.

The .NET Standard
You can use the built-in templates to create cross-platform command-line apps,

Digging Deeper into the Visual Basic Language Strategy

Today Mads made an excellent post about our overall .NET Language Strategy. As I know this will raise a lot of questions in the VB community I wanted to take an entire post on the VB team blog to dive deeper into how VB fits into that strategy and why and what that means in practical terms for us as a community.

Relaunching the Visual Basic Team Blog

Last year we decided to retire this blog and consolidate content on the .NET team blog instead. The thinking at the time was that we weren’t really posting a lot of content to it and that there was so much overlap in content between the VB team blog and the C# FAQ that it would be simpler to just focus on the .NET blog.

Roslyn ships v1.0-rc2 with "Go-Live" license

For the last six years you’ve heard us go on and on about this Roslyn thing and how it’s the platform for the future and would change everything and that we were all-in on it and “it’s going to be great just wait and see”.

A Journey Through Open Source: The Trials & Triumphs in Roslyn's First Year of Open Source

“I am looking for someone to share in an adventure.”
— Gandalf, The Hobbit, J.R.R. Tolkien

On April 3, 2014, Anders Hejlsberg set us on our open source journey when he made the .NET Compiler Platform (aka “Roslyn”) source code public live on stage in San Francisco.

Lowercase Keywords Revisited (not an April Fools' Day joke this time, I promise)

Hey all,
I hope you enjoyed yesterday’s April Fools’ Day post. I thought it was a fun way to kick off an experiment I’d like to conduct and in this post I’ll tell you how you can actually try out lowercase keywords for VB on your machine right now no matter what version of VS you’re using (no joke).

We're moving to GitHub!

It’s official. We’re moving to GitHub!
We are moving the Roslyn OSS code from CodePlex to GitHub. GitHub has a vibrant open source community that we want to actively be a part of and contribute to. We are also going to take this time to modify our pull request process.

Post-Release Goodies

The Rosetta lander Philae wasn’t the only thing in space last week. Our launch of Visual Studio 2015 Preview and our announcement to open source the full .NET server stack were out of this world. After all, it’s not every day that you can say your work trended higher than Kim Kardashian on Twitter.

Short Videos Demonstrating What’s New in Visual Studio 2015 Preview for C#, VB, and F#

Our team has put together a set of short videos to highlight some of our work in Visual Studio 2015 Preview. Check them out to learn more about what’s new in C# and VB, how F# can be good for enterprise,

April Fools' Day

Lowercase Keywords Revisited (not an April Fools' Day joke this time, I promise)

Hey all,
I hope you enjoyed yesterday’s April Fools’ Day post. I thought it was a fun way to kick off an experiment I’d like to conduct and in this post I’ll tell you how you can actually try out lowercase keywords for VB on your machine right now no matter what version of VS you’re using (no joke).

How "Roslyn" Finally Unshackled Visual Basic From The Tyranny of the Pretty-Lister

UPDATE 2015-04-02: After reading this post be sure to read the follow-up post!
I was chatting with an old Microsoftie a while ago and he let me in on the real story behind Visual Basic’s at times aggressive reformatting of code.

Community Contribution

Combining Angular, Visual Basic and .NET Core for developing modern web apps

Visual Basic supports .NET Core starting in Visual Studio 2017 Update 3 (15.3). This opens new possibilities for new applications and modernizing existing applications. Preserving domain-specific code when modernizing applications allows step-wise conversions, decreases cost, and avoids disruptions.
This post covers using Visual Basic ASP.NET Core WebAPI for the back end,

Dependency Injection with Visual Basic .NET – Part 2 – IoC Containers

This post was authored by guest blogger André Obelink, a Visual Basic MVP, and published by the VBTeam on his behalf.
In my previous post, I wrote about the basics of dependency injection. I explained the technique to define an interface and injecting the dependencies to a client object.

Dependency Injection with Visual Basic .NET – Part 1

This post was authored by guest blogger André Obelink, a Visual Basic MVP, and published by the VBTeam on his behalf.
In this first blog post of a series of two, I explain what dependency injection (DI) is and why you might want to use this design principle in your software.

Converting SQL to LINQ

Converting SQL to LINQ, Part 10: Like (Bill Horst)

This post assumes you’ve read my previous Converting SQL to LINQ posts.

 

I haven’t had much in the way of specific requests for more LINQ posts, so I’d still welcome any suggestions that people want to offer.  I did get one request about how to mimic the LIKE keyword functionality in VB LINQ.

Converting SQL to LINQ, Part 9: Full Outer Join (Bill Horst)

This post assumes you’ve read the previous posts in this series.  It makes the same assumptions as Part 8, and I will pick up where I left off, covering Full Outer Join.  Once again, I recognize this isn’t an ideal situation,

Converting SQL to LINQ, Part 8: Left/Right Outer Join (Bill Horst)

This post assumes you’ve read the previous posts in this series.

         

After my post on joins, I’ve had some questions about outer joins.  As you can see in part 6, VB9 doesn’t have smooth support for Left or Right join. 

Converting SQL to LINQ, Part 7: UNION, TOP, Subqueries (Bill Horst)

This post assumes you’ve read the previous posts in this series:
          Converting SQL to LINQ, Part 1: The Basics
          Converting SQL to LINQ, Part 2: FROM and SELECT
          Converting SQL to LINQ, Part 3: DISTINCT, WHERE, ORDER BY and Operators
          Converting SQL to LINQ,

Converting SQL to LINQ, Part 6: Joins (Bill Horst)

This post assumes you’ve read the previous posts in this series:
          Converting SQL to LINQ, Part 1: The Basics
          Converting SQL to LINQ, Part 2: FROM and SELECT
          Converting SQL to LINQ, Part 3: DISTINCT, WHERE, ORDER BY and Operators
          Converting SQL to LINQ,

Converting SQL to LINQ, Part 5: GROUP BY and HAVING (Bill Horst)

This post assumes you’ve read the previous posts in this series:
          Converting SQL to LINQ, Part 1: The Basics
          Converting SQL to LINQ, Part 2: FROM and SELECT
          Converting SQL to LINQ, Part 3: DISTINCT, WHERE, ORDER BY and Operators
          Converting SQL to LINQ,

Converting SQL to LINQ, Part 4: Functions (Bill Horst)

This post assumes you’ve read the previous posts in this series:
          Converting SQL to LINQ, Part 1: The Basics
          Converting SQL to LINQ, Part 2: FROM and SELECT
          Converting SQL to LINQ, Part 3: DISTINCT, WHERE, ORDER BY and Operators
This post will discuss scalar and aggregate functions.

Converting SQL to LINQ, Part 3: DISTINCT, WHERE, ORDER BY and Operators (Bill Horst)

This post assumes you’ve read the previous posts in this series:
Converting SQL to LINQ, Part 1: The Basics
Converting SQL to LINQ, Part 2: FROM and SELECT
Continuing with specific query clauses, I will cover topics related to DISTINCT, WHERE and ORDER BY.

Converting SQL to LINQ, Part 2: FROM and SELECT (Bill Horst)

This post assumes you’ve read Converting SQL to LINQ, Part 1: The Basics.
I’ve made the following name changes since the last post, which I hope will make the code examples clearer:
·         Customers -> CustomerTable
·         Orders -> OrderTable
·         cust ->

Converting SQL to LINQ, Part 1: The Basics (Bill Horst)

As you may already know, VB LINQ statements enable SQL-like syntax for queries in the VB language.  LINQ syntax doesn’t match SQL syntax exactly, so if you are already working with SQL or familiar with SQL queries, you may find yourself wanting to convert an existing SQL query to LINQ.

Discussion

Roslyn Primer – Part I: Anatomy of a Compiler

So, you’ve heard that VB (and C#) are open source now and you want to dive in and contribute. If you haven’t spent your life building compilers, you probably don’t know where to start. No worries, I’ll walk you through it.

Visual Basic and Cross-Platform: Mobile Apps with VB, Xamarin, and .NET Standard!

How would you like it if you could create a Console App in Visual Basic and run it on Linux? Or running the same Xamarin.Forms-App written in Visual Basic on an iPhone, and Android and a Windows Tablet? Welcome to the world of cross-platform development,

Introduction to (Live) Unit Testing in Visual Basic… [updated for VS 2017 Update 3 Preview 3]

…and Why My Grandma Invented the Concept!

Meet late Grandma Grete Schindler. I’d like to introduce you to my grandma, because this post will be about the essence and purpose of unit testing in Visual Basic, and Granny Grete basically invented the concept of unit testing.

Easy Async and Await for VBs Part 1, or…

…letting your code do absolutely nothing!
We’ve all been there, one way or the other. Either as users of an app or as the developer to whom users complained to: When a typical Win32 app is waiting for an operation to complete,

Why VB2017 only supports consuming ref returning methods

Hi VBers,
Last week Klaus wrote an amazing post detailing a number of improvements made to the Visual Basic IDE and language in Visual Studio 2017 (and he even forgot one, stay tuned for awesome). Regarding the new ref-return feature Jonathan Allen inquired as to why the design was so different from the one in C#.

What's New in Visual Basic 2017

Visual Studio 2017 just shipped, and with it shipped a new version of Visual Basic. With the new language strategy of the .NET Languages, the focus is again on Visual Basic’s original virtue: Provide editor, debugging and refactoring tools as well as language feature to ease complex tasks and boost every VB’s developer productivity without distracting them from their domain specific excellence.

Digging Deeper into the Visual Basic Language Strategy

Today Mads made an excellent post about our overall .NET Language Strategy. As I know this will raise a lot of questions in the VB community I wanted to take an entire post on the VB team blog to dive deeper into how VB fits into that strategy and why and what that means in practical terms for us as a community.

New VB T-Shirt Designs on the .NET Blog – Tell Us What You Think

[Update: You can get these cool T-Shirts @ the .NET Swag Store – get yours today!]
Mads and Dustin showed off their cool VB and C# team t-shirts at BUILD and tons of people liked them and asked where they could get one.

Edit & Continue and Make Object ID Improvements in CTP 6

It’s the beginning of a new year! According to Back to the Future Part II, everyone will be riding hoverboards in a couple months (and, let’s be honest, Doc would love the HoloLens). In the meantime, let’s explore the enhancements we’ve made to the Visual Studio debugging experience.

Better together: Visual Basic 14 and the Visual Studio 2015 Debugger

“Lambdas! Lambdas! Lambdas! Lambdas! …”
If you hadn’t heard, Visual Studio 2015 will support the use of lambda expressions in the debugger windows.

We’re all very excited to deliver on this longstanding TOP customer request. When LINQ was introduced in 2008 it was a game changer for the way .NET developers think about and code with data.

Feature Focus

What's New in Visual Basic 2017

Visual Studio 2017 just shipped, and with it shipped a new version of Visual Basic. With the new language strategy of the .NET Languages, the focus is again on Visual Basic’s original virtue: Provide editor, debugging and refactoring tools as well as language feature to ease complex tasks and boost every VB’s developer productivity without distracting them from their domain specific excellence.

Edit & Continue and Make Object ID Improvements in CTP 6

It’s the beginning of a new year! According to Back to the Future Part II, everyone will be riding hoverboards in a couple months (and, let’s be honest, Doc would love the HoloLens). In the meantime, let’s explore the enhancements we’ve made to the Visual Studio debugging experience.

Better together: Visual Basic 14 and the Visual Studio 2015 Debugger

“Lambdas! Lambdas! Lambdas! Lambdas! …”
If you hadn’t heard, Visual Studio 2015 will support the use of lambda expressions in the debugger windows.

We’re all very excited to deliver on this longstanding TOP customer request. When LINQ was introduced in 2008 it was a game changer for the way .NET developers think about and code with data.

New Language Features in Visual Basic 14

“Visual Basic 14” is the version of Visual Basic that will ship with Visual Studio 2015. In this blog post I’ll talk specifically about the VB language improvements in this release. (Separately, there are a whole host of IDE and project-system improvements as well).

New Language Features in Visual Basic 14 (animated)

“Visual Basic 14” is the version of Visual Basic that will ship with Visual Studio 2015. In this blog post I’ll talk specifically about the VB language improvements in this release. (Separately, there are a whole host of IDE and project-system improvements as well).

How-To

Visual Basic and Cross-Platform: Mobile Apps with VB, Xamarin, and .NET Standard!

How would you like it if you could create a Console App in Visual Basic and run it on Linux? Or running the same Xamarin.Forms-App written in Visual Basic on an iPhone, and Android and a Windows Tablet? Welcome to the world of cross-platform development,

Introduction to (Live) Unit Testing in Visual Basic… [updated for VS 2017 Update 3 Preview 3]

…and Why My Grandma Invented the Concept!

Meet late Grandma Grete Schindler. I’d like to introduce you to my grandma, because this post will be about the essence and purpose of unit testing in Visual Basic, and Granny Grete basically invented the concept of unit testing.

Easy Async and Await for VBs Part 1, or…

…letting your code do absolutely nothing!
We’ve all been there, one way or the other. Either as users of an app or as the developer to whom users complained to: When a typical Win32 app is waiting for an operation to complete,

Visualizing Roslyn Syntax Trees

Hello everyone! I hope you had a chance to catch the recent announcements around the .NET Compiler Platform (“Roslyn”). If not, I encourage you to view Anders’s presentation at Build 2014 (skip to 1:10:28). If you haven’t already, download the previews and take them for a spin!

Taking a tour of Roslyn

It’s a big day for us on the Managed Languages team! As announced at the //BUILD conference earlier today, and as posted by Soma on his blog, we are not just delivering a new preview of Roslyn to all of you,

I'M A VB

VB Universal Windows App Part 4: using SharpDX for sound effects

This is Part 4 of the “VB Universal Windows App” series:

Part 1: Setting up the universal Windows app in the Dev Centers, and in VS Solution Explorer
Part 2: Sharing XAML, Assets and Code
Part 3: Local and Roaming settings,

VB Universal Windows App Part 3 (for the end-user): roaming settings, and in-app purchases

This is Part 3 of the “VB Universal Windows App” series:

Part 1: Setting up the universal Windows app in the Dev Centers, and in VS Solution Explorer
Part 2: Sharing XAML, Assets and Code
> Part 3: Local and Roaming settings,

I'm A VB: Lluis Franco

 
 
Website: http://geeks.ms/blogs/lfranco

 

·        How long have you been using VB?

Visual Basic? Since VB 3.0, but I have been using other Basic in the 80’s 😉

 

·        What industry do you work in?

Currently I work in a Financial company

 

I'm A VB: Jorge Serrano, Visual Basic MVP

 
 
Website: http://geeks.ms/blogs/jorge/

 

·        How long have you been using VB?

In the University had the opportunity of use VB 1 (one floppy disk of 3 1/2 1.44 Mb). It was a little bit odd in a first moment, but a few time later I used VB 3 (7 or 8 floppy disks,

I'm A VB: Earl Vella

 

·        How long have you been using VB?

9 years, hah saying it makes it look like it was yesterday.  started with Basic on my father’s massive … well you cant really call something that big a ‘PC’. was introduced to Visual basic 6 by a friend and was addicted to it.

I'm A VB: Bob Swan

 

·        How long have you been using VB?

12 years

 

 

·        How big is your development team?

4

 

·        Please tell us about an app that you’re working on at the moment.

App used to  track REO property services

 

I'm A VB: Naveed Iqbal

 

·        How long have you been using VB?

Since 1998 (VB6), its the first language I learnt. I took a free ‘learn VB in 24 hours’ course online during my free time in highschool

 

·        What industry do you work in?

I'm A VB: Abbass El-Outa

 
 
Website: http://www.abbass.tk 

 

·        How long have you been using VB?

I have been using VB for 7 years. I started with Visual Basic 6, and 3 years later I learnt VB.net.

 

·        What industry do you work in?

-Computer hardware and software maintenance. 

I'm A VB: Anders Borg

Website: http://www.abiro.com

 

·        How long have you been using VB?

Since 1998 I think (starting with VB6).

 

·        What industry do you work in?

None in particular

 

·        How big is your development team?

1

 

·        What kind of apps do you most commonly build?

I'm A VB: Mohamed Jbeli

Website: http://www.tunisia-sat.com 

 

·        How long have you been using VB?

2 years

 

·        What industry do you work in?

electronics

 

·        How big is your development team?

6 devs

 

·        What kind of apps do you most commonly build?

telecommunication  monitoring

 

Language Design

Why VB2017 only supports consuming ref returning methods

Hi VBers,
Last week Klaus wrote an amazing post detailing a number of improvements made to the Visual Basic IDE and language in Visual Studio 2017 (and he even forgot one, stay tuned for awesome). Regarding the new ref-return feature Jonathan Allen inquired as to why the design was so different from the one in C#.

Matt Gertz

The Temple of VB (Matt Gertz)

Hi, all!
It’s been a while since I’ve posted to this blog, and a lot has happened in my world since then.  Though I’ve been pretty busy on our engineering systems team, I took a little time off last summer to do some traveling and,

On The Blink (Matt Gertz)

One of the really fun things about being associated with the Visual Basic team is getting to see all of the varied usages to which our customers put it.  From enterprise software to games, our customer base covers a wide range. 

There’s No Such Thing As Too Much Euchre! (Matt Gertz)

“Oh, no!”  I hear you cry, “not another blog about Euchre!”
Well, I do like the game, to be sure.  But, more importantly, the Euchre scenario enables me to try out any new technologies on a reasonably complex problem (using Visual Basic,

Linking Zune media items with LinQ, Part 2 (Matt Gertz)

In this post, I’ll continue on with coding the new playlist shuffler.  If you haven’t read part 1 yet, I highly recommend it so that this post will make more sense. J
Code for the controls (continued)
The Title TextBox
When the title changes,

Linking Zune media items with LinQ, Part 1 (Matt Gertz)

Way back in October 2007, I wrote up a few posts (here and here) on my experiments with the Windows Media Player object model.  The problem I was trying to solve was that, when I had a playlist set to “shuffle,”

Getting Loopy (Matt Gertz)

In my last post, I talked about the hidden costs that can occur whenever you call out to methods, particularly in loops.  In looking at my examples, reader KG2V commented that another thing that folks need to be aware of is avoiding the assumption that the world (or,

Hidden Costs (Matt Gertz)

(Note: there was a grievous error in this post based on a bad assumption on my art regarding VB.  Not feeling the need to hide my ignorance :-), I have instead made a number of edits in this post to bring it back to some semblance of reality.)
One thing that gets me annoyed with myself is realizing that the product or service I’ve just bought has some hidden costs that I didn’t anticipate. 

It’s a Small World, After All, part 2 – VB, C#, and GPS (Matt Gertz)

In my previous post, we fixed up a C# GPS library to provide more support, and wrote all of the UI for a VB GPS application, all based on (but modified from) a Mobile GPS sample in the Windows Mobile 6.0 SDK. 

It’s a Small World, After All, part 1 – VB, C#, and GPS (Matt Gertz)

The title of this blog post has sort of a triple meaning for me.  First of all, I just got back from a long (and wonderful!) cruise in the Caribbean, followed by a stop at Disney World.  And of course, if you go to Disney World with kids,

We Need to Talk (Matt Gertz)

By now, many of you will have downloaded the recent beta that we posted to the net, and (hopefully) are getting excited about the features that we’ve been developing.  Recently, Beth Massi interviewed me about some of the work that I’ve been doing as a part of that effort. 

Misc

Roslyn Primer – Part I: Anatomy of a Compiler

So, you’ve heard that VB (and C#) are open source now and you want to dive in and contribute. If you haven’t spent your life building compilers, you probably don’t know where to start. No worries, I’ll walk you through it.

New VB T-Shirt Designs on the .NET Blog – Tell Us What You Think

[Update: You can get these cool T-Shirts @ the .NET Swag Store – get yours today!]
Mads and Dustin showed off their cool VB and C# team t-shirts at BUILD and tons of people liked them and asked where they could get one.

Edit and Continue survey results

Thanks everybody for all the great feedback!
We’ve received hundreds of replies since last week with detailed information and concrete examples for us to review. We are closing the survey today and have started to process the tons of data you have provided.
The overwhelming majority of you have told us that Edit and Continue is important and you’d like us to make it even better.

Help make Edit and Continue better!

UPDATE 2014-05-20: We’ve received enough responses and the survey is now closed. Thanks everyone!
Hey VB developers!
Do you get tired of seeing this box (I know I do)?

Tell us about it!
The Visual Studio team would like your anonymous feedback on improving Edit and Continue (E&C) when developing .NET applications.

Happy 50th Birthday, BASIC!

UPDATE: QuickVB is now open source!
The Visual Basic team joins Dartmouth and developers worldwide whose lives have been touched by this amazing language in wishing Dartmouth BASIC (and indeed the whole BASIC family of languages) a very happy 50th birthday (and many more) today!

Roslyn performance (Matt Gertz)

(For the next few posts, I’m going to introduce readers to the different feature teams in the Managed Languages org.  Today, I’m starting this with a focus on the performance team.)
Back in 2000, I found myself assigned to be the performance lead of the Visual Basic team,

No new VB and C# Language Features in VS 2013

As you can see in the VS2013 Preview, we have not added new language features to Visual Basic and C# in the next version of Visual Studio. I’d like to share our thinking on this. There are essentially two main reasons why we chose not to evolve the languages this time around.

Other News

Digging Deeper into the Visual Basic Language Strategy

Today Mads made an excellent post about our overall .NET Language Strategy. As I know this will raise a lot of questions in the VB community I wanted to take an entire post on the VB team blog to dive deeper into how VB fits into that strategy and why and what that means in practical terms for us as a community.

Relaunching the Visual Basic Team Blog

Last year we decided to retire this blog and consolidate content on the .NET team blog instead. The thinking at the time was that we weren’t really posting a lot of content to it and that there was so much overlap in content between the VB team blog and the C# FAQ that it would be simpler to just focus on the .NET blog.

A Journey Through Open Source: The Trials & Triumphs in Roslyn's First Year of Open Source

“I am looking for someone to share in an adventure.”
— Gandalf, The Hobbit, J.R.R. Tolkien

On April 3, 2014, Anders Hejlsberg set us on our open source journey when he made the .NET Compiler Platform (aka “Roslyn”) source code public live on stage in San Francisco.

We're moving to GitHub!

It’s official. We’re moving to GitHub!
We are moving the Roslyn OSS code from CodePlex to GitHub. GitHub has a vibrant open source community that we want to actively be a part of and contribute to. We are also going to take this time to modify our pull request process.

Post-Release Goodies

The Rosetta lander Philae wasn’t the only thing in space last week. Our launch of Visual Studio 2015 Preview and our announcement to open source the full .NET server stack were out of this world. After all, it’s not every day that you can say your work trended higher than Kim Kardashian on Twitter.

Short Videos Demonstrating What’s New in Visual Studio 2015 Preview for C#, VB, and F#

Our team has put together a set of short videos to highlight some of our work in Visual Studio 2015 Preview. Check them out to learn more about what’s new in C# and VB, how F# can be good for enterprise,

.NET Compiler Platform ("Roslyn") for the Rest of Us

WOW! It’s been a while — almost exactly 4 years since yours truly, Beth Massi, last posted on the VB Team blog (although it’s cool to see I’m still in the tag cloud ;-)).  I’m honored to be a special guest post today.

TechEd: "The Future of Visual Basic and C#" Video Now Available Online!

If you didn’t get a change to make it to TechEd this year, fret not, we got it all on video for your viewing pleasure.

Join Principal Program Managers Dustin Campbell and Mads Torgersen as they give you the inside scoop on the future of VB and C#.

*New* video series on Windows Store App development using Visual Basic on Microsoft Virtual Academy

Hey VB hackers,
Microsoft Virtual Academy recently published a six-part series all about building modern apps for the Windows Store using your favorite language and staring Visual Basic MVP Bill Burrows and yours truly 🙂

Microsoft Virtual Academy is a free service available to anyone to sharpen their skills and learn the latest and greatest technologies.

QuickVB Goes Open Source!

Yesterday we published a copy of a fun “Roslyn”-powered retro editor for Visual Basic called QuickVB in honor of the 50th birthday of BASIC. We thought this was a neat application to showcase our love of BASIC but since then we’ve realized that it’s also a great example of how to put the power of the .NET Compiler Platform (“Roslyn”) APIs to use.

Releases

New for Visual Basic: .NET Standard Class Libraries and the dotnet CLI!

Visual Studio 2017 15.3 Preview 1 included templates for VB class libraries targeting .NET Standard class libraries and for .NET Core console apps. With the release of .NET Core 2.0 today those templates go-live.

The .NET Standard
You can use the built-in templates to create cross-platform command-line apps,

Roslyn ships v1.0-rc2 with "Go-Live" license

For the last six years you’ve heard us go on and on about this Roslyn thing and how it’s the platform for the future and would change everything and that we were all-in on it and “it’s going to be great just wait and see”.

Introducing the Visual Studio 2015 Preview for VB and C#

Download Visual Studio 2015 Preview and review the release notes.
Over the past several years, our team has been hard at work re-implementing the full language stacks for Visual Basic and C#. While this was a long investment, we knew that an improved stack with a cleaner architecture would allow our team to work faster,

Visual Studio "14" CTP Now Available

As announced today by Soma, we’ve just released the first CTP (Community Technology Preview) of the next version of Visual Studio. This is doubly-exciting as this is the first public release of a version of Visual Studio powered by “Roslyn” by default.

Roslyn September 2012 CTP Available for Download!

VB Enthusiasts,
Following last Wednesday’s official launch of Visual Studio 2012, we’re excited to announce that the Roslyn September 2012 CTP is now available for download and provides support for VS 2012 RTM. Please note that Visual Studio 2010 is no longer supported by this CTP.

Announcing Microsoft “Roslyn” June 2012 CTP

Hey, fellow VBs,
Today, we’re excited to announce that the Roslyn June 2012 CTP is now available for download!
Since the first public release of Roslyn, we’ve been hard at work implementing new language features, addressing top customer feedback from the October CTP,

Samples and Downloads

Lowercase Keywords Revisited (not an April Fools' Day joke this time, I promise)

Hey all,
I hope you enjoyed yesterday’s April Fools’ Day post. I thought it was a fun way to kick off an experiment I’d like to conduct and in this post I’ll tell you how you can actually try out lowercase keywords for VB on your machine right now no matter what version of VS you’re using (no joke).

QuickVB Goes Open Source!

Yesterday we published a copy of a fun “Roslyn”-powered retro editor for Visual Basic called QuickVB in honor of the 50th birthday of BASIC. We thought this was a neat application to showcase our love of BASIC but since then we’ve realized that it’s also a great example of how to put the power of the .NET Compiler Platform (“Roslyn”) APIs to use.

Install Published Samples with Visual Studio

You can use Visual Studio 2012 RC  to download and install samples from the MSDN Code Gallery.  You can download only the samples you need, or you can download one or more Sample Packs, which group several samples that relate to a technology or topic.

More VB Metro Samples available

With the recent release of the Windows 8 Release Preview and the Visual Studio 2012 Release Candidate we also have more of the Metro samples available for VB developers.
Although not all the samples are available for VB, there is a good selection of samples showing  you how utilize much of the important functionality now available.  

Kinect SDK v1.5 – Now with VB Samples !!!

As developers start to realize the full potential of Microsoft Kinect and new hardware is made available for the PC it’s really great to see the Kinect team provide some sample support for VB developers.   
For a while the Compilers team (who handle both VB and C# compilers) have been hearing VB developers  asking for content on new technologies and have been working with other product teams to ensure VB developers get some content in a timely manner. 

New VB XNA Sample – showing Xbox, Windows and Phone targetting

For all those who have started venturing into developing windows phone applications, there are quite a few samples utilizing Silverlight, but the XNA content has been a little bit light.     (We are working on getting some more XNA VB samples online). 

Updated Samples for WP7 Developers

For those VB developers who are developing (or keen to start developing) for WIndows Phone 7.  The samples have been updated and as you’ll notice virtually all of them are in both C# and VB.
http://msdn.microsoft.com/en-us/library/ff431744(VS.92).aspx
 
 
 

Kinect SDK For PC – VB Samples available.

Today, Microsoft announced the Kinect SDK for PC
  
http://research.microsoft.com/en-us/um/redmond/projects/kinectsdk/download.aspx
  
VB Samples are there at launch and available for downloading
  
http://files.ch9.ms/coding4fun/KinectSDKSamplesVB.zip
  
 
 

VB Entity Framework Samples Now Available (Lisa Feigenbaum)

There are a lot of great Entity Framework samples on Code Gallery that you can now find available in Visual Basic .NET. This was recently announced on the ADO.NET team blog. Browse through the list below and start downloading!
ADO.NET Entity Framework Query Samples (Download)
ADO.NET Entity Framework Query Samples is a small Windows Forms program which contains several basic Entity SQL and LINQ to Entities queries against that NorthwindEF Entity Data Model (a modified version of Northwind).

The Silverlight Toolkit Adds Visual Basic Samples (Lisa Feigenbaum)

The Silverlight Toolkit March 2009 release is enhanced with Visual Basic source code. Please follow the links to view these samples for both Silverlight 2 and Silverlight 3.
Silverlight 2: http://silverlight.net/samples/sl2/toolkitcontrolsamples/run/default.html Silverlight 3: http://silverlight.net/samples/sl3/toolkitcontrolsamples/run/default.html
The Silverlight Toolkit is a collection of controls,

Series

Combining Angular, Visual Basic and .NET Core for developing modern web apps

Visual Basic supports .NET Core starting in Visual Studio 2017 Update 3 (15.3). This opens new possibilities for new applications and modernizing existing applications. Preserving domain-specific code when modernizing applications allows step-wise conversions, decreases cost, and avoids disruptions.
This post covers using Visual Basic ASP.NET Core WebAPI for the back end,

Dependency Injection with Visual Basic .NET – Part 2 – IoC Containers

This post was authored by guest blogger André Obelink, a Visual Basic MVP, and published by the VBTeam on his behalf.
In my previous post, I wrote about the basics of dependency injection. I explained the technique to define an interface and injecting the dependencies to a client object.

Dependency Injection with Visual Basic .NET – Part 1

This post was authored by guest blogger André Obelink, a Visual Basic MVP, and published by the VBTeam on his behalf.
In this first blog post of a series of two, I explain what dependency injection (DI) is and why you might want to use this design principle in your software.

Lowercase Keywords Revisited (not an April Fools' Day joke this time, I promise)

Hey all,
I hope you enjoyed yesterday’s April Fools’ Day post. I thought it was a fun way to kick off an experiment I’d like to conduct and in this post I’ll tell you how you can actually try out lowercase keywords for VB on your machine right now no matter what version of VS you’re using (no joke).

How "Roslyn" Finally Unshackled Visual Basic From The Tyranny of the Pretty-Lister

UPDATE 2015-04-02: After reading this post be sure to read the follow-up post!
I was chatting with an old Microsoftie a while ago and he let me in on the real story behind Visual Basic’s at times aggressive reformatting of code.

VB Universal Windows App: downloads

Here are download links for the “VB Universal Windows App” series:

Part 1: Setting up the universal app in the Dev Centers, and in VS Solution Explorer
Part 2: Sharing XAML, Assets and Code
Part 3: Local and Roaming settings, and In-App purchases
Part 4: Sound effects with SharpDX
Part 5: How to call platform-specific APIs from common code
>

VB Universal Windows App Part 5: calling into platform-specific APIs from PCL

This is Part 5 of the “VB Universal Windows App” series:

Part 1: Setting up the universal Windows app in the Dev Centers, and in VS Solution Explorer
Part 2: Sharing XAML, Assets and Code
Part 3: Local and Roaming settings,

VB Universal Windows App Part 4: using SharpDX for sound effects

This is Part 4 of the “VB Universal Windows App” series:

Part 1: Setting up the universal Windows app in the Dev Centers, and in VS Solution Explorer
Part 2: Sharing XAML, Assets and Code
Part 3: Local and Roaming settings,

VB Universal Windows App Part 3 (for the end-user): roaming settings, and in-app purchases

This is Part 3 of the “VB Universal Windows App” series:

Part 1: Setting up the universal Windows app in the Dev Centers, and in VS Solution Explorer
Part 2: Sharing XAML, Assets and Code
> Part 3: Local and Roaming settings,

VB Universal Windows App Part 2 (for the developer): sharing XAML, Assets and Code

This is Part 2 of the “VB Universal Windows App” series:

Part 1: Setting up the universal Windows app in the Dev Centers, and in VS Solution Explorer
> Part 2: Sharing XAML, Assets and Code
Part 3: Local and Roaming settings,

Team Member Interviews

Channel 9 Interview: Multi-Targeting Deep Dive (Beth Massi, Spotty Bowles)

I’m back with Spotty Bowles, a tester on the VB compiler team, shows us the ins and outs of how multi-targeting works in Visual Basic projects in Visual Studio 2010 in this Channel 9 interview:
Channel 9 Interview: Multi-Targeting Deep Dive with Visual Basic 2010
What’s tricky in Visual Studio 2010 is that there are now two supported versions of the CLR.

Channel 9 Interview: Array and Collection Initializers in Visual Basic 2010 (Beth Massi, Spotty Bowles)

I’ve written about collection initializers on my blog before, but I thought I’d catch up with the VB Team to tell me more about how they really work.
In this interview Spotty Bowles, a tester on the VB Compiler team, shows us a couple of new language features: Array and Collection Initializers.

How We Do It: Building the Visual Studio Product Line (Beth Massi, Matt Gertz)

Ever wonder how we build Visual Studio and the .NET Framework? I mean literally. You know, the build process that spits out a product at the other end?  Well I sure did and it’s not just hitting F5 people ;-).
In this interview I sit down with Matt Gertz,

Channel9 Interview with Luca Bolognese: VB.NET and C# Co-Evolution (Lisa Feigenbaum)

There was a great Channel9 video posted last week on the future directions of VB.NET and C# and how they are related. Charles Torre interviewed Luca Bolognese, who is currently the Group Program Manager for VB.NET, C#, and F#. Please see below for more details.

CodeCast Episode 20: Biz Apps Team and VB with Beth Massi (Lisa Feigenbaum, Beth Massi)

Code Cast Episode 20: Interview with Beth Massi
This show’s interview is Ken interviewing Beth Massi, Microsoft, program manager on Microsoft’s BizApps team in the VS group. Beth discusses her work over the past two years at Microsoft on the VB team and now on the BizApps team,

.NET Rocks! with Beth Massi on the Open XML SDK and XML Literals (Lisa Feigenbaum)

Beth Massi shot a couple of great episodes last month on dnrTV! If you are interested in learning more about the Open XML SDK, and how to easily access it using VB.NET XML Literals, be sure to check them out.
dnrTV Show #137: Beth Massi on the Open XML SDK Our good friend Beth Massi returns to dnrTV to introduce us to the Open XML SDK,

Channel 9 Interview: No More Underscores in Visual Basic 10 (Beth Massi, Tyler Whitney)

I just posted a new Channel 9 interview. This time it’s with Tyler Whitney, a developer on the Visual Basic compiler team. Here he demonstrates how line termination has changed in the Visual Basic 10 compiler making underscores unnecessary as line continuation indicators.

Channel 9 Interview: WPF Improvements in VS2010 for Business Apps (Beth Massi, Milind Lele)

Today I posted a new interview on Channel 9 on WPF Improvements in Visual Studio 2010 for Building Business Apps.
At the MVP Summit a few weeks ago, Italian MVP Alessandro del Sole was so excited about the new WPF features in Visual Studio 2010 that he asked me if he could interview Milind Lele himself to get the low-down —

Channel 9 Interview: Using the Touchless SDK with Visual Basic (Beth Massi, Lucian Wischik)

Today I posted a new interview on Channel 9 on using the Touchless SDK.
The Touchless SDK enables developers to create multi-touch based applications using a webcam for input. “Touch without touching.” It’s actually pretty cool! In this interview I meet up with Touchless SDK creator,

Channel 9 Interview: ASP.NET MVC using Visual Basic XML Literals (Beth Massi)

Today I posted an interview on Channel 9 with Dmitry Robsman, the Product Unit Manager for ASP.NET. In this interview he shows us how he implemented ASP.NET MVC views using Visual Basic’s XML Literals instead of .aspx pages. Dmitry shows us how this makes coding the views much cleaner using standard OOP principals.

Tips and Tricks

Introduction to (Live) Unit Testing in Visual Basic… [updated for VS 2017 Update 3 Preview 3]

…and Why My Grandma Invented the Concept!

Meet late Grandma Grete Schindler. I’d like to introduce you to my grandma, because this post will be about the essence and purpose of unit testing in Visual Basic, and Granny Grete basically invented the concept of unit testing.

Easy Async and Await for VBs Part 1, or…

…letting your code do absolutely nothing!
We’ve all been there, one way or the other. Either as users of an app or as the developer to whom users complained to: When a typical Win32 app is waiting for an operation to complete,

Uncategorized2

Async Targeting Pack for Visual Studio 11, now available for .NET 4 and Silverlight 5

If you’ve held off trying Visual Studio 11 Beta because your .NET 4 or Silverlight 5 app uses the Async CTP, your wait is over!
Today we’ve published the Async Targeting Pack for Visual Studio 11, a NuGet package that lets your Visual Studio 11 projects target .NET 4 and Silverlight 5 while taking advantage of VB11’s new Await keyword. 

Visual Basic 11 Beta Available for Download!

As you may have read in Jason’s announcement, today we announced that Visual Studio 11 Beta is now available for download.  This is a huge release for Visual Basic as it provides full platform support for building Windows 8 Metro style apps,

VB Support for Microsoft Surface 2.0

Touch screen are great and we’ve seen their use on phone and slates but sometimes these screens still just are not big enough.     For those who desire bigger touch screens, Microsoft surface may be the answer.     Microsoft surface has been around a while and there have been significant changes with version 2.0.  

Roslyn Syntax Visualizers

Hi All! A few weeks ago, we announced the Microsoft “Roslyn” CTP. I hope many of you have had a chance to download the CTP and take it for a spin 🙂 If you haven’t, do give it a try.
To recap –

Putting back functionality left out of VB Core – ( If you can't live without Mid when writing WP7 apps ;-) )

For development of windows phone applications a new feature was added to the Visual Basic compiler known as VB Core. This is a reduced version of the runtime designed to allow development for a broader variety of platforms without incurring the larger penalty of having a full VB runtime containing non-supported or older VB6 legacy functionality which are now implemented as part of the framework itself.

Halloween: VB Style!

Imagine this. It’s Halloween. You’ve got a costume party to go to at 7 but there’s one small hiccup – you’ve got no costume. As a VB programmer you’re used to coming up with nick-of-time solutions to all manner of complex business problems but all your coding skills won’t help you now.

Introducing the Microsoft "Roslyn" CTP

(Begin dramatic movie trailer music, slow PowerPoint slide show with cliché sound effects)

October 2006 –VB Architect-emeritus Paul Vick responds via his blog to question by some completely random VB customer named Anthony about bootstrapping the VB compiler (rewriting it in VB), admits no definite plans yet but says that “one thing that would be nice about a managed compiler would be opening up the services to other tools…”

Announcement: Namespace Global

There’s a new feature coming to VB, and already included in the Visual Studio 11 Developer Preview. The feature is called Namespace Global and it’ll make your life easier…

if you part of your code belongs in a different namespace from the rest of your project,

Visual Studio 11 Developer Preview: Visual Basic (VB) Call Hierarchy

By Zain Naboulsi (Blog)
 
Default: CTRL + ALT + K
Menu: View | Call Hierarchy
Command: View.CallHierarchy; EditorContextMenus.CodeWindow.ViewCallHierarchy
Versions: Visual Studio 11 Developer Preview
Languages: VB
With the announcement of the Visual Studio 11 Developer Preview it’s time to take a look at some of the features you can start using with our latest version of the IDE right away. 

Dynamics CRM 2011 Developer Training Kit – Updated with VB Source

An update to the training kit has been made providing Visual Basic developers with sample code for the development features of Dynamics CRM and help them build applications using Microsoft Dynamics CRM 2011 and CRM Online.
Download available at
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=23416
 

VB Universal Windows Apps

VB Universal Windows App: downloads

Here are download links for the “VB Universal Windows App” series:

Part 1: Setting up the universal app in the Dev Centers, and in VS Solution Explorer
Part 2: Sharing XAML, Assets and Code
Part 3: Local and Roaming settings, and In-App purchases
Part 4: Sound effects with SharpDX
Part 5: How to call platform-specific APIs from common code
>

VB Universal Windows App Part 5: calling into platform-specific APIs from PCL

This is Part 5 of the “VB Universal Windows App” series:

Part 1: Setting up the universal Windows app in the Dev Centers, and in VS Solution Explorer
Part 2: Sharing XAML, Assets and Code
Part 3: Local and Roaming settings,

VB Universal Windows App Part 4: using SharpDX for sound effects

This is Part 4 of the “VB Universal Windows App” series:

Part 1: Setting up the universal Windows app in the Dev Centers, and in VS Solution Explorer
Part 2: Sharing XAML, Assets and Code
Part 3: Local and Roaming settings,

VB Universal Windows App Part 3 (for the end-user): roaming settings, and in-app purchases

This is Part 3 of the “VB Universal Windows App” series:

Part 1: Setting up the universal Windows app in the Dev Centers, and in VS Solution Explorer
Part 2: Sharing XAML, Assets and Code
> Part 3: Local and Roaming settings,

VB Universal Windows App Part 2 (for the developer): sharing XAML, Assets and Code

This is Part 2 of the “VB Universal Windows App” series:

Part 1: Setting up the universal Windows app in the Dev Centers, and in VS Solution Explorer
> Part 2: Sharing XAML, Assets and Code
Part 3: Local and Roaming settings,

VB Universal Windows App Part 1: Getting Started

This is Part 1 of the “VB Universal Windows App” series:

> Part 1: Setting up the universal Windows app in the Dev Centers, and in VS Solution Explorer
Part 2: Sharing XAML, Assets and Code
Part 3: Local and Roaming settings,

[postcalendar]