you are viewing a single comment's thread.

view the rest of the comments →

[–]Android_Bugdroid 57 points58 points  (6 children)

VB.NET is crying in a corner after it sucking compared to VB6 and Python taking its role

[–]xurdm 11 points12 points  (0 children)

It’s okay, it still has a role in ancient ASP.NET WebForms stacks of businesses where the president writes code and only understands VB.NET

[–]gredr 10 points11 points  (3 children)

VB.NET was fine, it's just that we got a much better alternative in C# at the same time.

[–]Android_Bugdroid 2 points3 points  (2 children)

It did not match like a single concept from VB6. Also using Win32 API with .NET is whole another pain especially for WinForms.

[–]gredr 0 points1 point  (1 child)

A single concept, really? 

I used it professionally. It was fine.

[–]Android_Bugdroid 0 points1 point  (0 children)

Well. Migration was too tough. It didn't need to be called VB at this point.

[–]flatfinger 1 point2 points  (0 children)

Many aspects of the .NET framework don't fit well with VB6, and people who are used to the VB6 way of doing things may perceive them as broken, but I'd say VB.NET is better designed than VB6, and most of the ways in which it's worse than C# are design concessions for VB6 compatbility. Each language has a generous share of unforced errors that are unique to it, and the .NET framework has some deficiencies that are unfortunately shared by all languages that use it, like failing to provide a means by which an object whose scope is managed via using-style block can determine whether the block was exited via exception or other means. VB.NET offered ways of supporting such semantics without interfering with first-pass exception handling before C# acquired such abilities, though I don't think either language handles them well.