|
Ian Shlasko wrote: Just like Excel... It's an amazing application if you use it as a spreadsheet, or for prototyping. Once you have tons of VBA macros and entire applications written in it, you'll want to shoot yourself. Been there, too.
Fortunately(?) by the time your Excel turns into exHell it'll be slow enough that the bullet won't be able to break your skin.
I had one of those too, as an initial proof of concept I ported the big nasty data mangling step to C# and called it from the VBA using COM (with was a cluster elephant in and of itself). It dropped the run time on our worst data set from ~6 hours to 45 seconds. Of which ~30 were spent scraping the spreadsheet and sending it over COM, 15 were spent by C# to do the data mangling, and <1 was spent to write the much smaller data set back to the spreadsheet.
The truly amazing bit was that the intern/very junior dev (not sure if he went full time before or after writing it) managed to get the >1000 lines of very complex logic copy pasta with about 8 intend levels and gotos to short circuit another half dozen working and fully debugged.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|
Yeah, I could tell some horror stories about a portfolio management system written in Excel... But given that this is a public forum and I'm using my real name, I think I'll refrain
|
|
|
|
|
Don't get me started on having very important calculations written in VBA, I have known my fair share of Actuaries.
if (Object.DividedByZero == true) { Universe.Implode(); }
Meus ratio ex fortis machina. Simplicitatis de formae ac munus. -Foothill, 2016
|
|
|
|
|
Ian Shlasko wrote: It was never meant for ... commercial applications
LOL says who? I've written many a commercial app and website using it, what else were we supposed to use?
It's like anything, the second it is superseded all of a sudden people talk like it's rubbish and always was. When .net is superseded people will be slagging it off saying how garbage it was, how assembly binding via configuration and convention was a stupid idea and so on.
|
|
|
|
|
I agree with you 100%! I'm not sure how the syntax of a join can be blamed on VB anyway???
"Go forth into the source" - Neal Morse
|
|
|
|
|
F-ES Sitecore wrote: It's like anything, the second it is superseded all of a sudden people talk like it's rubbish and always was. When .net is superseded people will be slagging it off saying how garbage it was, how assembly binding via configuration and convention was a stupid idea and so on.
Exactly. VB was a perfectly good tool that enabled businesses to get mission critical applications into production sooner than later. I read that a large chunk of VB6 applications are still in production today. [in 1981 I was told that COBOL was dead and it wasn't worth learning. Scary how much COBOL is still in production today, doing what it needs to do.]
Were a lot of crap applications written in VB? Absolutely! But a lot of crap applications are now being written now in C#, Java, etc. And yes, the next generation will whine about how crappy C#, Java, etc. were.
Blaming the software for what people do with it is like blaming the hammer when you miss a nail and put a hole in the dry wall.
|
|
|
|
|
Quote: It was never meant for high-end computing or commercial applications, And yet it is used for both, I know of at least one application where when it was found the reaction was "Oh No, change it!" Followed by "Well it has worked reliably for the X years, trust us you don't want to mess with this code as it is too wide spread to make a fix all update". It is used in flight control systems of a very well known heavy lift helicopter.
|
|
|
|
|
glennPattonWorking wrote: It is used in flight control systems of a very well known heavy lift helicopter.
|
|
|
|
|
When I was include on the Email chain it was truely a moment. what better (or worse) it was using VB5!!
|
|
|
|
|
Ian Shlasko wrote: It was never meant for high-end computing or commercial applications
Are you sure? Microsoft had - 16-17 years ago - DNA Labs all over the word, where Microsoft gave the help to port enterprise-scale applications to VB6...
My boss felt for it and I spend there half a year and cursed for an other two, before we moved back to c++...
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
Kornfeld Eliyahu Peter wrote: Microsoft gave the help to port enterprise-scale applications to VB6...
Kornfeld Eliyahu Peter wrote: My boss felt for it
And there's your problem. As professional geeks, it's OUR job to look at a tool/language/framework and see how it should be used.
This is how it's supposed to happen:
Company X: "This is awesome and can do everything!"
Your Boss: "This is awesome and can do everything, and I'm not saying that because they gave me a bribe completely non-conditional gift! Let's use this for everything!"
You: "This is a horrible idea, and if we actually use this, we'll probably all end up getting fired/bankrupted"
Your Boss: "Oh, ok then. I gotta go. I have a meeting with Company Y."
|
|
|
|
|
Almost perfect dialog...except the last line...
(and 18 years ago a was pretty fresh)
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
Oh, the last line was just my way of saying "GOTO start"
|
|
|
|
|
We can’t stop here, this is bat country - Hunter S Thompson RIP
|
|
|
|
|
Marc Clifton wrote: e.TerminalType *= f.TerminalType
I've been forced to use that format when writing for older Oracle systems.
So, it may not be the language that is/was the issue, it may be the data source.
The implication being.. such a join may be seen in other languages like C, C#, etc.
|
|
|
|
|
I recently encountered ( +) in an Oracle query.
It's the same thing, except this query was written a week earlier...
I had never seen that syntax by the way, not in Oracle or SQL Server
|
|
|
|
|
The *= syntax is Sybase, SQL Server until 2000 and Access
|
|
|
|
|
... aaand back to therapy...
|
|
|
|
|
I never did that myself, even though it seemed to be all the rage.
But it's normal for common coding conventions to be superseded by others (most of which are not genuinely better; just different), and for the superseded conventions to be reviled.
It's a "The Winner Writes the History Books" thing.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
Quote: e.TerminalType *= f.TerminalType
Isn't that just e.TerminalType = e.TerminalType * f.TerminalType ?
|
|
|
|
|
In code, yes. In SQL that's an old-style JOIN syntax.
http://sqlmag.com/t-sql/old-join-syntax-vs-new
|
|
|
|
|
We have a story (Gah! I hate Agile terminology.) to remove all those from our codebase. There are enough to make that a 2 sprint story.
|
|
|
|
|
Hi All,
Still in new job mode, after some early success with the Hardware issues I have now been given the issue of the software bug that is halting work on a new product. I can after a mornings worth of installs confirm the software works on the demo board. Now to run it on the board and see what is missing and why it does not work It's gonna be a three job at least, possibly a job too.
|
|
|
|
|
As long as it doesn't turn in to a hard liqueur job.
|
|
|
|
|
Will you change your name to 'PUB' before or after getting the ?
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|