|
Dave Kreskowiak wrote: I for one, can't stand the old VB6 crap and the "shortcuts" and implicit conversions it does in the background. If it was up to me, "On Error Goto", and alot of other pre-VB.NET crap
"On Error Goto" was never a correct implementation of exception handling. I say that I hate "VB" because Visual Basic is the most popular incarnation of the BASIC language (in the current .NET flavor), but more accurately, I should have said that I despise BASIC
...does anyone that writes BASIC even know what it is??? It stands for Beginner's All-purpose Symbolic Instruction Code. If you're a Beginner, writing BASIC is completely understandable. But you MUST realize that it is intended for use by non-programmers as a stepping stone to whatever language you go to after you are comfortable enough to step up
"I need build Skynet. Plz send code"
|
|
|
|
|
[quote]It stands for Beginner's All-purpose Symbolic Instruction Code.[/quote]
The popularity of BASIC in the 1980's stemmed not from human ease of use, but rather from the ability to make a very compact editor/interpreter package. Some simple versions of BASIC are 4K or less. Indeed, the Atari 2600 implementation of BASIC includes a CodeView-style display (showing current execution point and the values of all variables), and has to implement its own font display handling (the hardware has none), keypad scanning logic, and even a crude screen-saver, and yet it still fits within 4K.
Many of the horrible parts of vb6 syntax can be traced to Microsoft's original BASIC interpreter for the IBM PC more than 25 years ago. Using oddball invocation formats for graphics statements line line (x1,y1)-(x2,y2),color,bf is fine in an on-the-fly interpreted language, but is not a good approach in a compiled procedural or object-oriented language. Fortunately, the most horrible aspects of syntax were dropped in vb.net.
|
|
|
|
|
supercat9 wrote: ...The popularity of BASIC in the 1980's...
And we are 2 years from "the 80s" being 30 years old. I imagine there might be legacy embedded systems in existence that still require the ability to fit everything within 4K of storage, but I would retort with the idea that if you needed something with that light of a memory signature, the programmer should be working on their optimization skills with whatever assembly language targets said embedded system's processor. BASIC serves absolutely no *valid* purpose, WHATSOEVER as a programming language outside of academia. There is a stigma on the culture surrounding BASIC as being full of underqualified, improperly educated developers. I would tend to agree with this stigma on a general basis, but I would say that it is only the fault of the developer in the fact that they never "advanced" beyond the beginner stage. Most of the blame can be placed on the language itself.
Example: Visual Basic supports optional parameters. I've heard developers complain that C# doesn't support optional parameters and think "oh...he/she's an ex VB programmer or a bad C++ programmer" Optional parameters promote horrid programming practices and completely belie a basic tenet of object-oriented programming (polymorphism) Optional parameters basically mode a method signature, which is a practice that has been laughed at for nearly 20 years as being a juvenile solution to any system outside of a state machine.
"I need build Skynet. Plz send code"
|
|
|
|
|
...beyond that, dimensional variable declarations are just plain syntactically hideous. That should be enough for anyone to loathe VB on its own
"I need build Skynet. Plz send code"
|
|
|
|
|
I concur.
Regardless of the language; when something is no longer useful, it should be deprecated, then removed. In the case of VB.NET, many things haven't even made it to deprecation, while others have been in the deprecated phase for years and versions upon versions.
If you think about it, one of the absolute biggest problems that Microsoft deals with is supporting backwards compatibility. They just need to grow a pair and cut the old "features" off at the knees. Move on! We cannot ever expect to receive a truly greater product if it continues to support these old (and completely useless) ideas.
The problem is, if they did move on and drop useless ideas, Microsoft would face a hailstorm from the "beginners" and the 61-year old original-COBOL programmer that just can NOT bring himself to learn something new.
Matt
(Find your own niche! This one's mine.)
|
|
|
|
|
They already did faced that garbage when they announced they were dropping support for VB6. A bunch of people really griped about it, including a bunch of MS MVPs that they just couldn't do that because there are a bunch of legacy apps out there they they still needed to support.
I say fine, start phasing out support for your legacy apps and move up to VB.NET. I know it costs money, and a bunch of it, to rewrite apps in VB.NET. That's why there is a migration path where VB.NET supports the old stuff in VB6. Great. But now we're into the 4th generation of VB.NET. They just can't tell me that they wasted the last 7 years still developing new apps in VB6 instead of moving their code base to .NET. That's just plain lazy...
|
|
|
|
|
That is just plain hideous.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
It is possible to write fine apps in VB if there is some knowledge about programming and OOP. With some modules and business logic it will work. Dont ferget that it is .net-Technology so it is "only" another slang to write it in C#.
Your senior architect gives you space to show your talents and improve your salary. ("I've done that project fine. What about a raise?")
That the SQL isnt written in one procedures is a crime. No way out.
Greetings from Germany
|
|
|
|
|
I don't entirely understand what's going on in your code but I hate VB too.
|
|
|
|
|
I've seen some good ones, but this has to be one of the best
MyCrapClassVector something_to_which_to_point;
He thought he had to declare this to pass a "dummy" ptr var to a method. Turns out the code was never executed anyway. But he could have just passed NULL.
|
|
|
|
|
|
Llasus wrote: I'd prefer a one letter name or a "temp" instead of this one.
calling it crap makes more sense because then it is obvious to someone else that it is crap and then they can make a post about it on here and feel all big about themselves - if he had given it a sensible name then maybe CurtD wouldn't have noticed what a load of crap it was and wouldn't have fixed it!!
|
|
|
|
|
|
sadly enough, often all the documentation one gets.
|
|
|
|
|
CurtD wrote: something_to_which_to_point
Are you concerned by the nomenclature of this variable? Perhaps he was attempting to desist hardcoding in the parameter and using a constant type for better readability?
Vasudevan Deepak Kumar
Personal Homepage Tech Gossips
A pessimist sees only the dark side of the clouds, and mopes; a philosopher sees both sides, and shrugs; an optimist doesn't see the clouds at all - he's walking on them. --Leonard Louis Levinson
|
|
|
|
|
Years ago, another developer told me about a special coding horror... he had an developer that falled in love and so he called for the next module all his variables with the name of his beloved... from Susi001 to Susixxx Now, try to read such a program ...
|
|
|
|
|
Daniel Ch. Bloch (MCSD, MCAD, MCTS) wrote: Years ago, another developer told me about a special coding horror... he had an developer that falled in love and so he called for the next module all his variables with the name of his beloved... from Susi001 to Susixxx Now, try to read such a program ...
In the really geeky days, I knew a guy who named all his vars after Star Trek characters. "Spock1", "Kirk42".
|
|
|
|
|
I used to know a sys admin who named all the hardware after Star Trek things. A server was called StarBase1 and it had printers attached to it called DeepSpace1 and so on. The reason he did this - he was called Pete Warr and we had the habit of using the first 4 characters of the surname and the first initial as user names so he was warrp (mind you, he was luckier than Kenny Cockburn, he really had problems with his login).
|
|
|
|
|
A couple of sys admin i know have named their server room "the shire" all the *nix server names have a LOTR theme to them and the windows servers are named after the sith. eg Darth Maul.
|
|
|
|
|
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
My personal favourite is from some old Foxpro code I saw which had a global variable called:
OB1KNOBI (Obi-wan Kenobi...)
(Only 8 chars long of course...)
Some (very) old support utilities I have seen had swear words as variable names, which caused a couple of problems when an error occurs...
A big DOS error box appears showing 'Variable "swear word" not found' !
|
|
|
|
|
An old favourite of mine was a piece of commercial software code I ran across in college. The programmer had a particular routine which was used to handle error exceptions, close any open files, etc. and terminate. He decided to mark the routine with the label HELL. Why? So that whenever he detected that something had gone wrong he could write GOTO...
Clive Pottinger
Victoria, BC
modified on Tuesday, December 18, 2007 4:48:12 PM
|
|
|
|
|
That is good.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Very cool.
|
|
|
|
|
Reminds me of a former co-worker who named all his programs POORLY. (I don't mean he chose bad names, I mean *each* of his programs had the same name ... POORLY.) I asked him why he did so. He replied that he liked it when he saw the computer display "COMPILING POORLY" when he submitted his programs....
;^)
'droid
|
|
|
|