• (nodebb)

    Don't you worry, there are a million new applications in newest frameworks (Microsoft stack and otherwise) which continue the great tradition of terrible code.

  • TheCPUWizard (unregistered)

    Knowing the difference between JavaScript version 1.0 [March 1996] and ECMAScript [2015] is important... that is 9 years of code being written, and "if it ain't broke, don't fix it"

  • (nodebb)

    Am I the only one that spent more than a minute trying to figure out what about first line menus are not off?

  • NoLand (unregistered)

    Now I do wonder: is the last array element a title attribute or a string to be passed to window.status?

    (In case you wouldn't know what the latter is, party!)

  • Jonathan (unregistered)

    My first "real" programming was in ASP Classic and had I carried on in it for a few more years I may very well have written such a monstrosity myself, or at least attempted to.

    As a pet project I did try a similar kind of approach in PHP for a personal pet project and quickly learnt it was a nightmare. PHP is essentially the same paradigm as ASP Classic can suffer the exact same kind of issues.

    Today I am very happy in C# and TypeScript land.

    Talking about ASP Classic, a super WTF was that the estate management company for a sectional title property of mine launched their "new" online system in 2015, which is clearly powered by ASP Classic based on .asp in the URLs and the headers in the responses. It's also susceptible to SQL injection attack from query parameters.

  • (nodebb) in reply to TheCPUWizard

    Knowing the difference between JavaScript version 1.0 [March 1996] and ECMAScript [2015] is important... that is 9 years of code being written, and "if it ain't broke, don't fix it"

    Because 2015 - 1996 = 9? Just like 1993 was 10 years ago. Time flies when you're getting old... ;-)

  • (nodebb)

    This could be the greatest post on this site, ever . . . but I'll never know, because I physically cannot read it. One glance at that code invoked memories which almost caused a seizure.

    I agree with Mr. TA, there are millions of instances of bad code running in the Real World, and I can usually inspect them to laugh or deride . . . but years of having to deal with exactly this pustule has left me a broken man. The pain is too great.

  • Argle (unregistered)

    I happened upon a very good mentor for programming websites back in 2008. Among other things, he built the website for access to Buckingham Palace. But the language of choice then was old-school ASP. At the time I was already an old hand at C#. Determined to make my own way, I found WinForms. Sadly, this seemed to be one step forward and 1.5 back. But my ASP experience at the time told me that it was a language that begged to be abused. (Much like I think PHP begs to be abused.) Circa 2017 I was back to contracting and fixing a lot of ASP code. I was right.

    Maybe we should create a category of masochistic languages: programming languages that beg to be abused.

  • (nodebb) in reply to Argle

    Wouldn't that be ALL programming languages? (Although they do show wildly different types and occasionally levels of masochism. or sadism depending on your POV)

  • Officer Johnny Holzkopf (unregistered)

    Of course, this application is long dead. But for those forced to use it, it lives on...

  • Yazeran (unregistered) in reply to Argle

    That would be like shooting fish in a barrel:

    Classic ASP, PHP and Perl

    At least Perl has 'taint mode' in order to prevent most types of injection attacks (Disclaimer, I do write in Perl myself, and try to NOT do crazy stuff like this...)

    Yazeran

  • LZ79LRU (unregistered) in reply to thosrtanner

    Not all of them. C++ for example is a full stack BDSM language. It's happy to both be abused and abuse you back.

  • MaxiTB (unregistered)

    Javascript? How quaint. Can't wait to finally see it all go the way of the Dodo in favor of WebAssembly :-) Blazor FTW baby!

  • TheCPUWizard (unregistered)

    @Nerd4Sale - clearly you missed the implied event that occurred during the 19 year span. Now I could be referring to 2005 or 2006....(either of which had events of significance in this topic... [or perhaps I made a typo.... one can never tell.....because those 2 years are both potentially relevant]

  • (nodebb)

    Perhaps someone should invent a data structure in Javascript that allows labels for data, maybe you could call it a dictionary. But, nah, you can't do that in Javascript.

  • Sauron (unregistered)

    Bad ASP code to generate bad JS code...

    The fact some people still ask for that codebase to be maintained makes them a bit like drug addicts: they know it's bad, but even after decades they still need their fix.

  • NK (unregistered)

    I have once seen a code in ASP which (in a html table generation loop) calls DB to run "SELECT 1 FROM [table-name]", never know what the brilliant idea behind :)

  • Craig (unregistered)

    There's a fun code formatting issue to trap the unwary (incorrect indentation and an End If that should be inline instead landing on its own line).

  • (nodebb)

    The real WTF in there is I'd think it's some Django/Java template fresh from the oven if you haven't mentioned the fact it's a legacy ASP template. Obviously Capitalized Concrete Symbol Names would give its Microsoft roots away, but the point still stands. It's a general bane of these server-born template languages, which ironically make frontend development A LOT more harder than it should be. Something which would only need an intern with no access to server code instead requires a backend developer with very specific knowledge base AND particularities of the project's stack.

Leave a comment on “Classical Architecture”

Log In or post as a guest

Replying to comment #:

« Return to Article