Hey, community.

This one might probably trigger some of you. But just a question that comes out of the blue: What are your thoughts on it?

I first learned programming back in the day with Visual Basic 2008. Nowadays, I can program with C#, Java, PHP and some other languages rather well (I’m no professional, though), but I often come back to Visual Basic, because I’m just so used to it. Even though it’s not that often, because I’m a Linux user.

But let’s say I need a small program for Windows real quick? VB.NET is gonna be my choice. Right now, I’m implementing a board game server + client for the game of go (also called baduk or wei’qi) and I’m making really good progress.

I personally think that people should just use what they want to use. I don’t get the hate for PHP and some other languages and I think this gate-keeping and god complex some developers have is really annoying. Makes me want to use VB.NET even harder.

I also don’t like to jump on board with every new and upcoming programming language or library, just to be cool.

I’d also like to emphasize that I’m not creating software for a living right now. I do have a small company for a little bit of freelance work, but that’s just money on the side that comes in by creating really small projects.

  • TheCee@programming.dev
    link
    fedilink
    English
    arrow-up
    5
    ·
    1 year ago

    May I just ask how VB.NET code isn’t maintainable?

    TL;DR: Lots of old code written by VB6/VBA programmers in the wild. It’s way more holistic than C-hacker-ish C# code.

    Speaking from a bunch of legacy projects, you will likely encounter:

    • Option Strict Off activated, so your type checking and IDE tools are half broken now.
    • Global imports from anywhere to anywhere, proper namespacing is unheard of.
    • Object everywhere, because Variant.
    • On Error Resume Next everywhere, so you switch off and on exceptions while debugging.
    • ByRef everywhere, because VB Classic is call by reference first.
    • All declarations on top of a function, drastically increasing their scope, because, you guessed it, this is the only way in old VB.
    • Code bases riddled with poor reimplementations of string methods using Mid. Actually, that’s a bonus, it’s very satisfying replacing those with one call to a string member.
    • Multiple assignments to function name variable instead of return, making code harder to follow.