• (cs) in reply to UIUC Alum
    Anonymous:
    I'm pretty sure that's not UIUC... the similarities are striking, but that architecture was very popular for universities for the better part of a century. Looking at some photos to remind myself of details, I think the placement of the buildings and little stuff like the exact style of the windows and chimneys don't match any pictures I can find.

    I'd be interested to know what it was though.



    I'll take a guess that it's Ohio U.  For one, the dorm looks like an OU dorm.  Also, the leafless tree but no snow fits.  The clincher though: when I was there back in '97, our final project in CS454 was to create a student course registration system.  I don't think we thought anybody's work would actually get used.  We worked in groups of 4, I did a java front-end, other guy did some web cgi stuff, other two guys wrote some C code.  I'm looking at my part of the program right now, only 2 makefiles, "makefile" and "makefile~".  :)  I'm pretty sure I got at least a 'B' in the class.

    It's probably not OU, but it really hit home since we had such an assignment.

    Monty
  • (cs) in reply to pybs
    Anonymous:
    Metaphone would probably be better than soundex, and a trie would be better than a lot of if/else statements.

    No, wait.  Why not make the devs fix their typos?


    Why the flush of 'academic' wtfs?  A  subtle admission that Alex has found the bottom of the barrel?



    Alex mentioned the other day that he has a subscription to some clip art library that is about to expire so he's trying to "use it or lose it."

    Apparenty, it's from the library at WTFU.
  • (cs) in reply to Ford351-4V
    Ford351-4V:
    CQ East 3rd Floor '74-'75
    CQ SE 2nd Floor '75-'76
    Riverview Apts. heavy drinking after that makes the memory fuzzy.


    First floor 106 in SE from 98 - xmas 99. Got a letter on my birthday (after the semester had ended) kindly asking that I not come back until I cared enough to go to class, or at least pass them. I could kick serious Quake 3 ass though.

    Got my CIS AS and AAS later, somewhere else, because I am cheap. :/
  • (cs)

    The best example of this I ever saw wasn't even code...It was wiring, at a student run radio station. Take aside all the parts of the radio infrastructure that were hand made, and sitting in dusty shoeboxes, with myseterious wires coming out of them...They were practically normal.

    No, the punch panel was the scene of a tragedy of epic proportions. This one little station had a set up of punch panels that rivals most any corporate phone switching system I've ever seen. We're talking twenty+ years of wiring accumulation, with TONS of extra wire all over the damn place...Looked like a rats nest from hell. Me and a couple of other guys took the station off the air one weekend, ripped out all the wires, and started from scratch.

    At the end of the weekend, we had stripped every single wire out of SIX full size panels, each with five rows of two 66 punch down blocks...Each single 66 would be enough for 50 wires, so that's what, 500 wires per board? 3000 wires? Cleaned up, and repunched all the wires that we determined to be necesarry, and we managed to fill HALF of ONE panel, and all the picky problems with the equipment that everyone swore could never be fixed magically went away. Not one single piece of equipment was connected with less points than it required. Only three pieces of equipment were left out (we buried them in their little shoeboxes). Every single piece of equipment worked at the end of the weekend. That's about 2700 individual screwed up wiring connections, enough to wire a medium sized office building for cat 6, and digital phones.

    No student effort would surprise me. You get kids who are smart as hell, with ZERO experience, who have never had to maintain their own code, and who have little financial motive to do a good job. It's slop on top of slop, all motivated by pure laziness with a healthy dose of arrogance with regards to all who came before. That place deserves what it's got, in terms of a record department.

  • (cs) in reply to HitScan
    So when are the root servers going to correct my amazon.co and amazon.co, typos? This is a must-implement feature!


    The root servers don't have to do that.  Your own DNS can do that for you.

    Check out OpenDNS.   It will do exactly that.

    The example they give is correcting "craigslist.og" to "craigslist.org".
  • random man (unregistered) in reply to UIUC Alum

    I have lots of photos I took while 3d modeling the UIUC quad. When I get home I'm going to check them out.   Good to find other UIUC Alums out there,  when did you graduate?

  • (cs) in reply to David
    Anonymous:
    Apparently the "logic" to guess pages is very complex. After all, that's a lot of if statements...

    <font color="#f0f0f0">moderated by ammoQ</font> <font color="#f4f4f4">first?</font>


    The thing that really kills me about this sort of thing is that people would really rather write 5000 near identical statments instead of doing one little loop.

    I had a guy tell me he couldn't do a loop, because he needed to skip maybe 10 numbers out of hundreds and hundreds of conditions. The whole idea of checking against an array to see if one of the bad numbers had shown up was baffling to him. The whole thing was crack ridden anyway....I couldn't see any reason for that much conditional logic, even in loop form...

    He gave me some convoluted explanation about "programming efficiency" and went off to do it his way. I ended up coding him out of existence, because my part of the project was done well ahead of his (and I was worried I was going to look bad because he was upstream of me), so I snagged a copy of the API he was working against, and slotted my own code in there instead. Worked fine in under a thousand lines.

  • (cs)
    Alex Papadimoulis:

      According to this figure I just made up, 63% of college students spend at least that much time each day in World of Warcraft.

     

    As soon as im done typing this im leaving to go to my computer in my dorm to play my level 60 EPIC undead rogue.  YAHHHH!!!!  I pwn joo!

  • (cs) in reply to Bus Raker
    Bus Raker:

    Anonymous:
    kipthegreat:
    You misspelled "Eric" throughout the post.

    No one is named "Enric."  That would be silly.


    HAHA i almost shot water through my nose reading that one

    Hmmm .. I wonder which one is 'our' Enric.

    http://images.google.com/images?hl=en&q=enric&sa=N&tab=wi

    Better yet, will the real Paula Bean please stand up?

    http://images.google.com/images?svnum=10&hl=en&lr=&q=%22paula+bean%22

     



    I think it's gotta be this Enric:

    http://www.technicalrp.com/html/humor/enric.jpg

  • (cs) in reply to should be working
    Anonymous:
    "[copied]... its student registration system from Rutgers"
    LOL!  I love a good dig at Rutgers.  (NJIT grad).


    I doubt it...I worked there for a while, and you had to be pretty competent before they'd let you screw with anything that was actually production code...Though I did find a few bugs in the system. Actually managed to register myself for two simultaneous classes once. Excellent way to get more credits in less time, though you better hope the final's not at the same time.
  • Adam WG (unregistered)

    Eh, could be worse. We use PeopleSoft for our registration.

  • Gabe (unregistered)

    What .... the FUCK!?

    O_o I mean ... I know I should be saying that to everything I see here (and I usually do), but ... Whatthefuck.

    Bravo, Alex, on a brilliant series of WTF-ery.

  • (cs)

    Solution #1: Write down all class lists and students in chalk on sidewalk near university, update as needed. This simplfies maintenance.

    Solution #2: Select All, Delete. Start again.

  • (cs) in reply to codenator

    Ah, yes, the S.A.D.S.O. design pattern. Select All Delete Start Over. I'm a big fan.

  • Thav (unregistered) in reply to TB3

    To quote my boss, as he was trying to train a sysadmin on a little coding:

    "Programming is like using Excel."

    I laughed out loud and took over training.

  • (cs) in reply to Satanicpuppy
    Satanicpuppy:
    That place deserves what it's got, in terms of a record department.


    Yeah, but did the other students?

    The software engineering class at PSU has been working on a CMS system called Ludwig for at least a couple years now. I can't speak to the code quality of most of it though. We actually used it for class quizzez and grades and whatnot though, and it seemed to work pretty well. I think there was an issue similar to the passwords.txt WTF from yesterday or the day before, but only in the development version, which was fixed by the end of the semester it was implemented in.

    This thing was implemented in PHP and did not look pretty.

    I had to do a moderately connected thing with a Java code editor that was made so you could have a coding quiz online, and it would give you stuff like syntax highlighting. The syntax highlighting was controled by what appeared to be a hand-implemented lexer. It was I think about 300 lines of a switch inside a switch inside a loop. (The 300 lines is just the one function.) Pretty ugly piece of code. Not sure why anyone wrote it by hand instead of using a lexer generator; I know there are adaptions of Flex that output Java instead of C. That said, I don't think it was bad enough to classify as a WTF, and it worked.

    The real WTF in that situation was the assignment we had with it: every group was assigned a portion of Ludwig (for which mine was the code editor applet) which we had to go through and refactor. Fine. This is actually a good assignment IMO. However, we were given coding standards that we had to follow, one of which is that functions had to be under 75 lines. The lexer function was 300. Furthermore, each pass through the outer loop modified about 5 local variables. Combined with Java's lack of pass-by-reference (the variables were primitive types btw), this meant that I couldn't just cleanly break up the switch by putting each case in its own function without doing something to update those 5 variables. I came up with three solutions: move those variables into the class so they became instance variables, create a new class (to be used like a C struct) so I could return multiple values from functions, or create new classes for each of the primitive types that I was using similar to the standard Java boxed versions but mutable. I don't know why I didn't go with the first one, but I decided that the second was less messy than the third so I went with it. It turned those 300 lines into about 700 once you added all the supporting code, and probably truely became a WTF. I'm sure that it could have been done a better way, but I don't think you could do a lot better, and at that point I sorted wanted to spite the teacher.
  • Bryan E (unregistered)

    Am I the only one that noticed most of the function doRedirect_a53 is dead code?  The first "ends-with()" covers all the following else-if rules, so they can never be executed...

    ... or was that a typo in copying the code for the article?

  • Amazed (unregistered)
    Alex Papadimoulis:

     Enric's job didn't seem to hard, either. All he had to do maintain the Student Registration System. How hard could that be? It's not like the Student Registration System really changes; all it needs is student, class, and schedule data imported. Maintenance should be a cinch.

    This is one crazy editor. Anyway, I'm surprised that in at least the first handful of replies nobody picked up 'too' and the lack of a 'was' in the first two sentences here. On the other hand, should I be surprised?

  • (cs) in reply to pybs
    Anonymous:
    Metaphone would probably be better than soundex, and a trie would be better than a lot of if/else statements.

    Even a hash table matching typos to the correct URL'd be better, but...
    Anonymous:
    No, wait.  Why not make the devs fix their typos?


    Or better yet: Keep a record of who wrote what files. Whenever the application triggers a 404, check the referrer, and if the page is part of the app, send its maintainer one of the following chosen at random:
    1. Test your friggin' code, douchebag!
    2. Learn to spell, asshole!
    ...or any other relevant abuse, along, of course, with the path of the page in question.
  • (cs) in reply to Keith Gaughan
    Keith Gaughan:
    Anonymous:
    Metaphone would probably be better than soundex, and a trie would be better than a lot of if/else statements.

    Even a hash table matching typos to the correct URL'd be better, but...
    Anonymous:
    No, wait.  Why not make the devs fix their typos?


    Or better yet: Keep a record of who wrote what files. Whenever the application triggers a 404, check the referrer, and if the page is part of the app, send its maintainer one of the following chosen at random:
    1. Test your friggin' code, douchebag!
    2. Learn to spell, asshole!
    ...or any other relevant abuse, along, of course, with the path of the page in question.

    You could use this.

    "Next time double check your spelling, you spongy clay-brained foot-licker!"
    "The page isn't named a5-intorduction.jsp, you loggerheaded swag-bellied pignut!"



  • rezna (unregistered) in reply to maweki
    maweki:
    I think I should join the WTF-University, just to send in a new WTF every single day

    there's no need to join WTFU ;) - just start working - if I wouldn't promise in my word, that i wouldn't take any single line of code and show it to someone outside word I would have 2 or 3 fresh posts for WTF every day ;)

  • foljs (unregistered)

    Alright, the code sucks.

    But here is another WTF: after so many comments, still no-one figured out what the code shown actually does.

    NO, it's not about correcting "mispellings"! (nor it would be improved with ...soundex algorithms and other stuff proposed here).

    It's simple really: it is used to map between an old naming scheme and/or directory structure for the pages and a new one, so that old bookmarks, unedited hardcoded links and such still work.

    Somebody obviously thought that a new directory structure is called for, and migrated all those pages during some rewrite of the site. He then proceeded to add this code so that the old paths still worked.

    So, e.g., what once was "a5-introduction.jsp" is now called "../activity-5/a5-introduction.jsp".

    (I might be wrong, but I don't think so. My hunch is that this is the real purpose of the code, and it has nothing to do with correcting mispellings).

    NOTE: I'm just clarifying the purpose of the code, here, I'm not defending the quality of it: it's crap. There are several options to implement this in a better way, from the slight improvement (use a hash table) to the intelligent redesign (use a smart new directory scheme so that a simple redirect rule in the web server or controller servlet suffices to map all the pages).

  • (cs) in reply to Me
    Anonymous:

     private final String doRedirect_a5( String page )
    {
    if ( page.equals("a5-intro.jsp") )
    return "../activity-5/a5-introduction.jsp";

    else if ( page.equals("a5-introduction.jsp") )
    return "../activity-5/a5-introduction.jsp";

    else if ( page.equals("a5-intorduction.jsp") )
    return "../activity-5/a5-introduction.jsp";

    /* snipped a whole bunch of cases */

    else if ( page.startsWith("a5-task-2-3") )
    return "../tasks/r.jsp?redir=../activity-5/task-2-4.jsp";

    else if ( page.startsWith("a5-task-3-3") )
    return "../tasks/r.jsp?redir=../activity-5/task3/taskC.jsp";

    /* snipped a whole bunch more cases */

    else if ( page.equals("conclusions-5.jsp") )
    return "../conclusions3/incident5.jsp";

    else if ( page.equals("conclusions-specific-5.jsp") )
    return "../conclusions3/incident5.jsp";

    else if ( page.equals("conclusions-general-5.jsp") )
    return "../conclusions3/incident5.jsp";

    else
    return "../activity-5/process.jsp";

    I love linear search algorithms, nice and inefficient. At my work there is a 2000+ line switch statement.....
    }



    I worked at a place where a developer wrote a similar thing after reading somewhere that a central servlet that redirects to jsp was best practice. The single processHTTPGetRequest method was 5000+ lines in itself.

    To meet the performance requirements required of the site, he then wrote a publishing system that hit the servlet and saved the result according to some file naming logic. This publishing system consisted of three classes: the naming logic, the main program and the actual worker thread.

    The naming logic was full of things like the following:
    <FONT face="Courier New">String number = new Integer(num).toString();</FONT>
    .... obviously calling static methods wasn't OO enough.

    The main program basically read in the command line args and kicked of a single worker thread to do the publishing. The publishing thread contained ~10000 (...maybe 9k+, I remember the night sweats, nervous twitches and spontanious nose bleeds far better than the actual number) lines of code - ALL IN A SINGLE METHOD.

    Publishing was triggered by entries being placed in a database table where all the rows where specific to a particular URL pattern. This meant that any new pages that had to be built required a new table in the database as well as any supporting logic to trigger publishing. Also, because of the way the worker thread was coded, a new process was required for every new page. Not a new instance/thread, a whole new Unix process.

    His real skill however, was that droning psuedo-technical speak that fills pointy-haired bosses with confidence in one's technical abilities. It took a year and a half of continuous support headaches and lost money through penalty clauses to convince them that this guy actually didn't know what he was doing and it would be cheaper to rebuild from scratch than continue with the band-aids. The offending developer had already jumped ship by that time.

    - the full details of this story would make several excellent WTFs in themselves, but I don't have the details anymore. I might just see if I can find them though....

    BTW, did I mention that this guy was originally a VB programmer? I suppose that in part excuses his cruel and unusual source code.

  • sdfgsdgsgfsd (unregistered) in reply to Some Idiot
    Some Idiot:
    I worked at a place where a developer wrote a similar thing after reading somewhere that a central servlet that redirects to jsp was best practice. The single processHTTPGetRequest method was 5000+ lines in itself.
    This is one of the common problems with badly implemented web frameworks that use the Front Controller pattern - you get the Monolithic Front Controller.
     
    I once argued with a "system engineer" from Macromedia about this very problem - he was adamant that this problem wasn't actually a problem...  And you wonder why their products are totally broken.
  • anonymous (unregistered) in reply to sdfgsdgsgfsd

    The real WTF is...the true WTF is...oh crap, I've gone crosseyed again.

  • (cs) in reply to sdfgsdgsgfsd
    Anonymous:
    This is one of the common problems with badly implemented web frameworks that use the Front Controller pattern - you get the Monolithic Front Controller.

    I think a monolothic front controller is likely to become a "blob" aka "god object" or a "swiss army knife".

  • (cs) in reply to knuckles
    Anonymous:
    redirecting them to a random page would make for much more efficient code

    Nah, you gotta clone the user a bunch of times, get them all to separate computers, redirect each clone to a different page (such that every page is given to some clone), then send out high-heeled ninjas with digital cameras to slaughter all the clones that go to the wrong pages, then impale their heads on wooden tables and take photos. Now we've got the quantum-bogo-ninja-redirect-spell-checker!

  • RichNFamous (unregistered)

    Does a cat have 9 heads that can explode? Mine exploded months ago but now it wants to again...

  • /dev/random (unregistered) in reply to ammoQ

    Don't give them more credit than they deserve. They have successfully implemented the magic-servlet anti pattern. Must of been part the course material. %-)

  • Oblate Object (unregistered) in reply to RichNFamous
    Anonymous:
    Does a cat have 9 heads that can explode? Mine exploded months ago but now it wants to again...


    A cat is reading this forum?  Now THAT's the real WTF.

  • (cs)

    Oh my fucking god!
    There are so many brainfucks in IT - i should so get a job when finished.

  • Rhialto (unregistered) in reply to RichNFamous
    Anonymous:
    Does a cat have 9 heads that can explode? Mine exploded months ago but now it wants to again...

    I thought it had nine tails...
  • Lyle (unregistered) in reply to isaphrael

      Hell, just a decent .htaccess file would have sorted out most of this stuff straight away.

  • [ICR] (unregistered) in reply to Lyle

    Is it wrong that after the huge switch statement, I was irritated by the huge redundant use of "else"?

  • (cs) in reply to foljs
    Anonymous:
    Alright, the code sucks.

    But here is another WTF: after so many comments, still no-one figured out what the code shown actually does.

    NO, it's not about correcting "mispellings"! (nor it would be improved with ...soundex algorithms and other stuff proposed here).

    It's simple really: it is used to map between an old naming scheme and/or directory structure for the pages and a new one, so that old bookmarks, unedited hardcoded links and such still work.

    Somebody obviously thought that a new directory structure is called for, and migrated all those pages during some rewrite of the site. He then proceeded to add this code so that the old paths still worked.

    So, e.g., what once was "a5-introduction.jsp" is now called "../activity-5/a5-introduction.jsp".

    (I might be wrong, but I don't think so. My hunch is that this is the real purpose of the code, and it has nothing to do with correcting mispellings).

    NOTE: I'm just clarifying the purpose of the code, here, I'm not defending the quality of it: it's crap. There are several options to implement this in a better way, from the slight improvement (use a hash table) to the intelligent redesign (use a smart new directory scheme so that a simple redirect rule in the web server or controller servlet suffices to map all the pages).



    Not quite. Look at these three again, closely, and see if you still come to the same conclusion. It may have been made with the intention of redirecting people to another folder structure, but it's clearly become a spell checker for the weak. With so many cases removed, we're probably missing the part where it says "if ( page.equals("activity-5/a5-introduction.jsp") ) return page; // holy shit one of them actually got it right..."
    if ( page.equals("a5-intro.jsp") )
    return "../activity-5/a5-introduction.jsp";

    else if ( page.equals("a5-int<font size="3">ro</font>duction.jsp") )
    return "../activity-5/a5-introduction.jsp";

    else if ( page.equals("a5-int<font size="4">or</font>duction.jsp") )
    return "../activity-5/a5-int<font size="4">ro</font>duction.jsp";

  • (cs)

    Term rewriting! Never seen it implemented...

  • (cs)

    In honor of the last few WTFU articles, I named one of our development servers "wtfu.snafubar.us".

  • (cs) in reply to Thuktun
    Anonymous:
    Alex Papadimoulis:
    And really, who better to build and maintain a production application than those armed with only a few programming classes under their belt?

    I've worked at a couple jobs where HR and the hiring managers followed this credo.


    I feel I need to point out an opposite case - my degree is in Graphic Design, and our department was not allowed to design anything, including our own printed and web material. That was handed off to a contractor who did all our (absolutely lousy) design work.

    Not only was their stuff ugly, cost us money, and was difficult to manage (you had to go the route of "official requests"...) it was also completely out of touch with the sort of work the students were expected to produce, and the very fact of this demotivated existing students.

  • matthew muscari (unregistered) in reply to Anon
    Anonymous:
    [image]
    Is it just me, or does WTFU bear an uncanny resemblance to Harvard Yard? So let's see...it copies its CS slides from Princeton, its architecture from Harvard, and apparently its student registration system from Rutgers. Or for the latter, with equivalent plausibility, vice versa.

    ahaha, that almost made me blow coffee out my nose. rutgers cs isn't that bad. we do some good stuff here... although the registration system is a piece of garbage, a part of a larger problem we call the "RU Screw"

  • gauauu (unregistered) in reply to random man

    I'm working at UIUC now (graduated from here in '01), and that is DEFINITELY not anything off the quad.  The two buildings at right angles to each other?  The only buildings that sit crosswise on UIUC quad are the Union and Follinger.  And that's definintely not either of those.  It could be one of those weird business buildings down by Pennsylvania and 6th street, you know, what used to be DHK but now is Comm West?  But I don't think so.....

    sorry, the real WTF is me comparing this to every building at UIUC

  • coz (unregistered)

    Chernobyl ...struts is just another WTF....

    I have to agree...doing a sitemap in a servlet with several thousands of lines is sick

    But it can be worse...the links can be in......guess!!....the DATABASE.

    If the db is down, nothing works...not even error.jsp to see the f*ing JDBC error!!!!

  • (cs) in reply to HitScan
    HitScan:
    Ford351-4V:
    CQ East 3rd Floor '74-'75
    CQ SE 2nd Floor '75-'76
    Riverview Apts. heavy drinking after that makes the memory fuzzy.


    First floor 106 in SE from 98 - xmas 99. Got a letter on my birthday (after the semester had ended) kindly asking that I not come back until I cared enough to go to class, or at least pass them. I could kick serious Quake 3 ass though.

    Got my CIS AS and AAS later, somewhere else, because I am cheap. :/

    'Course I would have kicked some serious ass in Quake 3 when I was in school as well but waiting in line to get your punch cards read was a real handicap.
  • (cs)
    Alex Papadimoulis:

    if ( page.startsWith("a5-task-2-3") )
          return "../tasks/r.jsp?redir=../activity-5/task-2-4.jsp";

       

    Recursion - solves every problem. Even stuck-over-flow.

    Hopefully task-2-4 isn't redirected back to 2-3..

  • (cs)
    Anonymous:
    Anonymous:
    ammoQ:

    if it's him, we have the name of the WTFU: "Universitat de Lleida"!

    In defence of the computing honour of the University of Lleida, I have to say that it was not the university-wide registration system, but the system for a project being developed in a server hosted at the university. In my defence, I have to say that I was young and unexperienced :)

    Also, the servlet is actually a front controller, not a typo corrector (altought it could work as one), and it holds the knowledge for "which is the next page when I hit Save and Continue", and uses "response.sendRedirect(response.encodeRedirectURL(redirect))", not that abomination Alex used (I fear he got that from a production system, too). And yes, it's still a WTF anyways.

    The anonimation has prevented you from seeing that several hundred lines of the code can be constructed into a dozen lines similar to:

    if ( page.endsWith("-conclusions.jsp") ) 
      return "a" + activityNumber + "-process.jsp";
    

    I already refactored away THAT part of the code (the real WTF is that I didn't do it a year ago), and this summer I have to merge the rest of the redirect logic into the database, where it will probably create an even bigger WTF, causing the server to implode and preventing me from solving the rest of WTFs on the code.

    Not to mention that, once in the database, system users will be able to create/delete tasks at will throught a web-based interface, using a mix of CMS-style and wiki-style. But that is better left for a different wtf....

    Anonymous:


    I live near that university ( not WTFU maybe ).

    Enric = Enrique = Henry ( like in Henry VIII of England )

    Yes, Henry is the right translation. I thought that I had a weird name until we got a visiting professor called "Henrry" (with two "r"). I never got around to actually asking him about it.

  • (cs) in reply to qbolec
    qbolec:
    Alex Papadimoulis:

    if ( page.startsWith("a5-task-2-3") )
          return "../tasks/r.jsp?redir=../activity-5/task-2-4.jsp";

       

    Recursion - solves every problem. Even stuck-over-flow.

    Hopefully task-2-4 isn't redirected back to 2-3..

    This is the funniest part of this sort of scheme. The only way to check that you didn't make any typo is actually navigating all the pages on the activity one by one.

  • Patrick (unregistered) in reply to wintermyute

    Funny, I was thinking it looked uncannily like the Quad at the University of Toledo. Then again, maybe that's just nostalgia turning my gears.

  • Patrick (unregistered) in reply to xrT

    "Here Lies Enric"


    Sorry, that's just what came to mind.

  • (cs) in reply to Gud Speluhr
    Gud Speluhr:

    In generul, I don't mynd thuh typos, butt (this week in partikular) it just maaks us reeders of TDWTF look iliterat to be mispelleeng thuh bashes uv thuh incompitans uv uthurs.

    It wouldn't correct butt, it's a word.

  • anonymous (unregistered) in reply to seymore15074

    Has anyone discovered the really real WTF yet?

  • Tox the Media Cop (unregistered)

    Wow! Why?

    It should be obvious that this part-job would suck, but Enric simply couldn't see it. There were signs everywhere:

    - Student Reg/Admin system in a university
    - "an army of work-study students"
    - Java Servelet + OOP intoxicated students

    Sounds to me like a Peoplesoft spin-off project.

    Redirection heuristics? What happens if someone scans "known CGI holes" on that site? So for each one of the thousand attempts the server's going thru that complex script, trying to figure out where the hacker really means to go?

    The recent WTFU posts are great. Having said that, I think THIS SITE SHOULD BE BANNED, for two reasons:

    1. it doesn't have a disclaimer that says "Warning: We're not responsible for any damage if our horrifying stories resemble yours and trigger daunting memory"

    2. unnecessary censorship. no more WTFUs please, say their names!

    captcha: poprocks

Leave a comment on “The Student Registration System at WTF University”

Log In or post as a guest

Replying to comment #:

« Return to Article