Hacker News new | past | comments | ask | show | jobs | submit login

was the language even that bad?



Well, a language that allows something like "On Error Resume Next" is not that great by any definition of the word...

Having said that, I must also say that I started coding on VB6 and if I had to show some elemetary programming to a ~10-yo, I'd give them something like QB64 in a heartbeat. There's something good in grappling with a "bad" language, educationally speaking.


"On Error Resume Next" never died, it just became serverless!


“On Error Resume Next” is how C has always behaved.


What do you mean? I thought runtime errors in C were almost always catastrophic; the real issue is UB (first example that comes to mind is out-of-bound array access; sometimes you segfault sometimes you just get random data) or, in general, stuff that should be an error but isn't

EDIT: Ah I guess you were referring to arbitrary code injection after, say, a stack overflow? But I think that's a runtime issue rather than a language one (hard to draw a line in a systems PL, but still)


I was more in the line of not checking whether you got a valid fd when you open a file and trying to use it nevertheless. In BASIC, when you try to open a file that’s not there, by default you get a runtime error and the program exits. If you do an “On Error Resume Next” the program will happily proceed with invalid data.


segmentation fault (core dumped)


It was a running joke about how bad it was. It was a bit before my time although, but even when I saw people use it as a kid and playing with it myself, it was pretty obvious how fast it was in making things.


It was terrible. Under that surface friendliness was hiding an ocean of incoherent rules, bugs and straight madness.


tl;dr: Aside from whatever flaws the VB6 language had, people writing so-so code in VB6 contributed to it's reputation as being a bad language.

Something that my sibling comments haven't (yet) mentioned:

VB6 was really easy to create a GUI with, had great DB support, and was a pretty easy language to get started with. Given that a lot of business apps boil down to "present a nice, user-friendly interface to the company database" (particularly biz apps for smaller businesses) VB6 was a great fit for business consulting types. And use it they did! There were a lot of business consultant types writing code in VB6. They were smart people but not necessarily the most hard core coders.

I think that's part of why VB6 coders (as a group) got a reputation as being "lesser" programmers - they were derisively called "code monkeys", etc.

Regardless of the language itself, I think that seeing a lot of "minimally viable code" being shipped by people focused on delivering business apps helps to contribute to VB6's reputation.

Side question: I wonder how many people here on HN have a 'career origin story' something to the effect of "Yeah, so I was in college/high school/middle school, and the <name of small organization/mom-and-pop business> wanted to use their computer to streamline things. I was just learning how to code but was able to get VB to do <minimal but useful task> which really helped <org mentioned prior>. Looking back on it that was some really gnarly code I wrote, but it worked, <the org> appreciated it, and it got me hooked on programming"


IIRC, there were no user defined types. You had to write the whole app using primitives.


You can create classes in VB 6 from IDE where you would add a class module and define code in that module. There was no "class" keyword AFAIK.


There was definitely a `Type` keyword that was similar to a struct.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: