• Jason (unregistered)

    dear lord..

  • Oranda (unregistered)

    What, no comments? So he likes straight, black Java in big gulps, so what ^^? Comments and sweetener are for sissies.

  • Fregas (unregistered)

    NICE! 

    First Post?

  • Cody (unregistered)

    Well, it wouldn't have been a proper dotcom if it survived the bubble...

  • stubborn buffer (unregistered)

    MS-Access has a similar three-layer structure: the front-end, the back-end, and the caveman-sloping forehead of the "Access developer/architect" at the keyboard.

  • Tei (unregistered) in reply to Jason

    If he not use templates, his code will be horrible. But with templates, that can be a nice thing.

    I mean, YES, as most data-centered code on the oracle side. Bussiness logic on java, and templates for display. What is sooo wrong here? 

  • Franz Kafka (unregistered) in reply to Tei
    Anonymous:

    If he not use templates, his code will be horrible. But with templates, that can be a nice thing.

    I mean, YES, as most data-centered code on the oracle side. Bussiness logic on java, and templates for display. What is sooo wrong here? 

     

    No templates.

    One servlet with one huuge method.

    no abstraction of DB access.

    Isn't that enough? 

    /wtf indeed 

  • (cs)

    Must update my portfolio count.  Didn't know each page was an "application".

  • Me (unregistered)
    Alex Papadimoulis:

    ... the Java Guru explained what an "application" was: a single, JSP page. Jack double checked and confirmed that this is what the Java Guru meant when he referred to his "seventy application" portfolio.

    This is awesome!

    I am going to embrace this, writing my CV.
     

  • Anymoose Jr (unregistered)

    Oh and I almost forgot to mention what the Java Guru meant by "three-tier" architecture: Java in between the "Apache" and "Oracle" tiers.

     

    Well replace that with "Apache-facing Java", "Pure Java" (which buisness logic is), and "Oracle facing Java" and you've got a fair definition. While he could mean what it says, if you give him the benefit of the doubt then he is correct.

     

    A poor WTF imho. 

     

  • Dale Williams (unregistered)

    No, THERE ARE FOUR TIERS!!!

     

    Sorry, had to do it.

     

    DaleWill 

  • (cs)

    Comments?

    We don't need no stinkin' comments.

  • (cs)

    As a Java developer I can't help but feel ashamed.

     

    When I was younger I used to honestly think that one of the advantages of Java is its relative complexity (as opposed to php), so it's almost impossible for a trained Java developer to be stupid. How stupid was I!

  • dsfgsddsfgsdfgdsffg (unregistered) in reply to stubborn buffer
    Anonymous:

    MS-Access has a similar three-layer structure: the front-end, the back-end, and the caveman-sloping forehead of the "Access developer/architect" at the keyboard.

    I worked with a guy that said this.  The Access GUI was the front end, the network was the middle tier, and the MDB sitting on a server was the back-end.
  • (cs) in reply to biziclop
    biziclop:

    As a Java developer I can't help but feel ashamed.

     

    When I was younger I used to honestly think that one of the advantages of Java is its relative complexity (as opposed to php), so it's almost impossible for a trained Java developer to be stupid. How stupid was I!

     

    Some people will manage to fuck up an iron ball if you give them enough time.

     

  • E.thermal (unregistered)

    ok but I find it hard to believe that their entire development staff "only" knew perl.  How does one only know perl?  To only know perl means you started your development learning with perl and only used perl after that?  And to believe an entire development team was like this? If by team you mean one developer I would understand a little better but a whole team?

    shenanigans.   not the whole story just that the entire development team can only understand perl and that the entire applciation and all supporting applications was written in perl and this was suppose to be a viable company/product.

     

     

  • Amazed (unregistered) in reply to dsfgsddsfgsdfgdsffg

    Ahem, three tears, was it?

  • Michael (unregistered) in reply to E.thermal
    ok but I find it hard to believe that their entire development staff "only" knew perl. How does one only know perl? To only know perl means you started your development learning with perl and only used perl after that? And to believe an entire development team was like this? If by team you mean one developer I would understand a little better but a whole team?

    shenanigans. not the whole story just that the entire development team can only understand perl and that the entire applciation and all supporting applications was written in perl and this was suppose to be a viable company/product.

    This was in the days of web 1.0, I would imagine the process was that anyone who could perform basic arithmetic in Excel was promoted to "web developer", and handed a stack of Perl training manuals.  There was a lot of this going on back then.  Probably the "Java Guru" was the first outsider they ever hired with prior programming experience.

  • (cs) in reply to emurphy
    emurphy:
    biziclop:

    As a Java developer I can't help but feel ashamed.

     

    When I was younger I used to honestly think that one of the advantages of Java is its relative complexity (as opposed to php), so it's almost impossible for a trained Java developer to be stupid. How stupid was I!

     

    Some people will manage to fuck up an iron ball if you give them enough time.

     

    It's funny and in a way sad how one turns from Asok into Dilbert and finally into Wally.
     

  • WebGTx (unregistered) in reply to E.thermal
    Anonymous:

    shenanigans.   not the whole story just that the entire development team can only understand perl and that the entire applciation and all supporting applications was written in perl and this was suppose to be a viable company/product.

    There's a big difference between "understanding" and "knowing." Half of the devs I work with "understand" Assembly, but I don't think you'd want to run any software we would write in asm ...

  • (cs)

    Alex Papadimoulis:
    It didn't help when the Java Guru showed off his code, either: a single Servlet where the code for a single method ran over thirty pages (he liked to print stuff out a lot), used string concatenation to build the HTML, interspersed direct call to JDBC, and didn't contain a single comment. It was a work of art, in a Jackson Pollock sort of way.

     Dude, don't diss Jackson Pollock like that...
     

  • Anonymous (unregistered)

    This is not a WTF. This is an OMG!

     

    Captcha: whiskey - I'll bet the company owners needed lots of this too.

  • Brian (unregistered)

    It's astonishing that 30 pages of code in a single method worked at all. Beyond the obvious ridiculousness of if such a long-running method, there is the issue that in Java you're allowed a maximum of 64K characters inside of a try/catch block.


     

  • Tom (unregistered) in reply to Michael
    Anonymous:
    ok but I find it hard to believe that their entire development staff "only" knew perl. How does one only know perl? To only know perl means you started your development learning with perl and only used perl after that? And to believe an entire development team was like this? If by team you mean one developer I would understand a little better but a whole team? shenanigans. not the whole story just that the entire development team can only understand perl and that the entire applciation and all supporting applications was written in perl and this was suppose to be a viable company/product.

    This was in the days of web 1.0, I would imagine the process was that anyone who could perform basic arithmetic in Excel was promoted to "web developer", and handed a stack of Perl training manuals.  There was a lot of this going on back then.  Probably the "Java Guru" was the first outsider they ever hired with prior programming experience.

    That's right.   Back in the day, you got hired just for knowing English.   Then if you were ambitious, you'd learn to "code" by looking at whatever was being used at the dotcom where you worked.   Then you'd jump in and make a few bug fixes on the production site.   Then you're an expert.     I bet "only knew perl" was being too generous, in reality those developers "only knew just barely enough perl to keep their current site running."

  • (cs) in reply to Brian
    Anonymous:

    It's astonishing that 30 pages of code in a single method worked at all. Beyond the obvious ridiculousness of if such a long-running method, there is the issue that in Java you're allowed a maximum of 64K characters inside of a try/catch block.


     

     

    You're assuming he used try/catch.

     

  • Amazed (unregistered) in reply to Brian
    Anonymous:

    It's astonishing that 30 pages of code in a single method worked at all. Beyond the obvious ridiculousness of if such a long-running method, there is the issue that in Java you're allowed a maximum of 64K characters inside of a try/catch block. 

    Assuming you are right about the 64K code limit (that's about 1600-ish lines of code) in a Java try/catch block (I have no clue - never heard this before, not that I'd ever have any reason or desire to ever try it out), you are assuming that this guru actually used a try/catch construct. Anyone with that much code in one block likely doesn't think about the word error.

  • hyness (unregistered)

    At least they had the decency to go belly up, and not leave this enterprisey application as a festering pile of legacy code to support.

    Hey, I'm a glass half full guy ;-)

  • (cs) in reply to Brian
    Anonymous:

    It's astonishing that 30 pages of code in a single method worked at all. Beyond the obvious ridiculousness of if such a long-running method, there is the issue that in Java you're allowed a maximum of 64K characters inside of a try/catch block.

    That kind of assumes, doesn't it, that the guy used try/catch blocks.

  • hyness (unregistered) in reply to Amazed

    Java has checked exceptions that have to be caught or the code won't compile.  Judging from the timeline, most exceptions were checked at this point.  Any JDBC coding must be done in try catch blocks because SQLExceptions and subclasses are checked.

  • RH (unregistered) in reply to Tei
    Anonymous:

    If he not use templates, his code will be horrible. But with templates, that can be a nice thing.

    I mean, YES, as most data-centered code on the oracle side. Bussiness logic on java, and templates for display. What is sooo wrong here? 

     

    In america, we have a little bit of general advice that goes something like this:  

    Every group of friends has one friend that nobody likes, but everybody tolerates for the sake of not rocking the boat.  If you don't know who that person is in your group, it's you.

    Of course, this can loosely be applied to technology.

    Every company has one WTF developer that the management just won't fire.  If you don't know who that person is, it's you.  If you don't get the joke, you're probably the source of the problem......
  • (cs) in reply to hyness

     

    Java has checked exceptions that have to be caught or the code won't compile.  Judging from the timeline, most exceptions were checked at this point.  Any JDBC coding must be done in try catch blocks because SQLExceptions and subclasses are checked. 

     

    Just declare the exception to be thrown, and you are done with it.

     

     

  • Amazed (unregistered) in reply to hyness
    Anonymous:

    Java has checked exceptions that have to be caught or the code won't compile.  Judging from the timeline, most exceptions were checked at this point.  Any JDBC coding must be done in try catch blocks because SQLExceptions and subclasses are checked.

    Fair enough.

    Question: I just jammed 65K of code into both a try AND catch block - compiles and runs. What exactly is this 64K limit?

  • (cs) in reply to hyness

    This sounds kind of like my company. Except that our company doesn't have the abject failure in every corner that this company appeared to.

  • (cs) in reply to hyness
    Anonymous:

    Java has checked exceptions that have to be caught or the code won't compile.  Judging from the timeline, most exceptions were checked at this point.  Any JDBC coding must be done in try catch blocks because SQLExceptions and subclasses are checked.

    So?

    ...

    try{db.execute("select...");}

    catch(){}

    ...

    Not to hard to catch those errors... :P

     

  • (cs) in reply to stubborn buffer
    Anonymous:

    MS-Access has a similar three-layer structure: the front-end, the back-end, and the caveman-sloping forehead of the "Access developer/architect" at the keyboard.

     I'm a bit tired of you IT snobs ranking on Access developers.  Some of us code carefully, use best practices, and produce well running applications that work well for the users.

     Not every application has to be cutting edge, super tech and state of the art.  Get a life and say something positive instead of making fun of something that isn't even relevant to this topic.

  • Hopefully not seeing the obvious (unregistered) in reply to Volmarias

    Volmarias:
    This sounds kind of like my company. Except that our company doesn't have the abject failure in every corner that this company appeared to.

    Your company has all the symptoms of a cluster fuck-up, but hasn't yeat crashed and burned? Can't help wondering what's down the road for you...

  • (cs) in reply to Tom
    Anonymous:

    That's right.   Back in the day, you got hired just for knowing English.   Then if you were ambitious, you'd learn to "code" by looking at whatever was being used at the dotcom where you worked.   Then you'd jump in and make a few bug fixes on the production site.   Then you're an expert.     I bet "only knew perl" was being too generous, in reality those developers "only knew just barely enough perl to keep their current site running."

    I'm detecting a bit of perl hate in this thread. *tear* 

  • Anon (unregistered) in reply to Amazed

    An older version limit perhaps?

     

    captcha = quality. Ha! 

  • sms is a joke (unregistered)

    "It was a work of art, in a Jackson Pollock sort of way."

    That was worth the price of admission. 

  • bd (unregistered)

    A much better explanation of Enterprisey Java: 

    "And again, the Java application is not something you just dump your code on. It's not a single servlet. It's a series of tiers. And if you don't understand those tiers can be layered and if they are layered, when you put your classes in, it gets on top and it's going to be crashed by anyone that puts into that tier enormous amount of code, enormous amounts of code."

  • (cs) in reply to Amazed
    Anonymous:
    Anonymous:

    It's astonishing that 30 pages of code in a single method worked at all. Beyond the obvious ridiculousness of if such a long-running method, there is the issue that in Java you're allowed a maximum of 64K characters inside of a try/catch block. 

    Assuming you are right about the 64K code limit (that's about 1600-ish lines of code) in a Java try/catch block (I have no clue - never heard this before, not that I'd ever have any reason or desire to ever try it out), you are assuming that this guru actually used a try/catch construct. Anyone with that much code in one block likely doesn't think about the word error.

    The 64k rule is for entire methods. No method can be longer than 64k according to the JVM specs. (Even though code length is stored on 4 bytes in the class file.) However, it has nothing to do with try-catch.

  • Russ (unregistered) in reply to dhoffman
    dhoffman:
    Anonymous:

    MS-Access has a similar three-layer structure: the front-end, the back-end, and the caveman-sloping forehead of the "Access developer/architect" at the keyboard.

     I'm a bit tired of you IT snobs ranking on Access developers.  Some of us code carefully, use best practices, and produce well running applications that work well for the users.

     Not every application has to be cutting edge, super tech and state of the art.  Get a life and say something positive instead of making fun of something that isn't even relevant to this topic.

     

    It's not necessarily access developers that people are ranking on, but more Access itself as a product.  It's fine for a small db that nobody cares about, but once it starts getting used in production, there is no excuse to go to something like SQL Express.   (Which is free btw, while access is not).
     

  • (cs) in reply to Russ
    Anonymous:
    dhoffman:
    Anonymous:

    MS-Access has a similar three-layer structure: the front-end, the back-end, and the caveman-sloping forehead of the "Access developer/architect" at the keyboard.

     I'm a bit tired of you IT snobs ranking on Access developers.  Some of us code carefully, use best practices, and produce well running applications that work well for the users.

     Not every application has to be cutting edge, super tech and state of the art.  Get a life and say something positive instead of making fun of something that isn't even relevant to this topic.

     

    It's not necessarily access developers that people are ranking on, but more Access itself as a product.  It's fine for a small db that nobody cares about, but once it starts getting used in production, there is no excuse to go to something like SQL Express.   (Which is free btw, while access is not).
     

     

    Well, then please omit the comments about the sloping foreheads.  Thank you.

  • stubborn buffer (unregistered) in reply to dhoffman

    Uh-oh, caveman angry!

    Actually I do Access "dev" every now and then, so it's all in good fun. Let me try this again:
    --
    Visual FoxPro has a similar three-layer structure: a thick client, a thin database layer, and a very thick barrier preventing any FoxPro users from learning new technologies.
    --

    See, that was even easier!

  • (cs) in reply to Brian
    Anonymous:

    It's astonishing that 30 pages of code in a single method worked at all. Beyond the obvious ridiculousness of if such a long-running method, there is the issue that in Java you're allowed a maximum of 64K characters inside of a try/catch block.

    Keep in mind that a standard 60-line page has about 4.4k characters per page maximum (74 wide x 60 rows = 4,440), including spaces, assuming no double-spacing on paragraphs, 12-point font, etc.  Assuming some whitespace (lines that don't go all the way across the page, some paragraph indenting, etc.), and you end up with an average of 2k characters per page (I've actually worked in a typesetting office, and this is pretty usual for letter size paper).  At 2k characters per page, 64k characters is 32 pages.

  • JD (unregistered) in reply to Russ

    Anonymous:
    It's not necessarily access developers that people are ranking on, but more Access itself as a product.  It's fine for a small db that nobody cares about, but once it starts getting used in production, there is no excuse to go to something like SQL Express.   (Which is free btw, while access is not).

    Not everything was designed and deployed yesterday.  MS Access has been around for ages, and SQL Express has not.  SQL Express may be free, but in a business environment where every user has all of the MS Office products installed on their machine by default, MS Access is configuration free - nobody has to think (even for a second) about deploying a MS Access project properly.  If you have 5,6,7 year old MS Access databases being utilized by small workgroups, and it works fine, why would want to waste valuable development resources to switch over to SQL Express?

  • (cs) in reply to Hopefully not seeing the obvious
    Anonymous:

    Volmarias:
    This sounds kind of like my company. Except that our company doesn't have the abject failure in every corner that this company appeared to.

    Your company has all the symptoms of a cluster fuck-up, but hasn't yeat crashed and burned? Can't help wondering what's down the road for you...



    Well, our product is a java middleware, and it has basically 1 page. There are a few key differences.
    1) Our middleware actually is a middleware.
    2) We have a more effective method of determining what to show right now than ten thousand if then else statements
    2a) We're "one page" in the sense that its not a single JSP page, but that our middleware accepts one particular URL (sans GET/POST bits).
    3) Our company has been around for quite some time (think decades), and we seem to be doing pretty well. Trivial management annoyances aside, we all actually work pretty well.
    4) We have quite a few clients, and they stick around. They like our product over those of our competators, as well as our willingness to do what's necessary to accomodate them.

    Our stuff works, and it works well. The older, crustier bits of our software we're slowly rebuilding and phasing out with newer technologies. If you knew who we were, I'm pretty sure you wouldn't call us a WTF at all.
  • sf (unregistered) in reply to Brian
    Anonymous:

    It's astonishing that 30 pages of code in a single method worked at all. Beyond the obvious ridiculousness of if such a long-running method, there is the issue that in Java you're allowed a maximum of 64K characters inside of a try/catch block.


     

     

    If true this smells of a compiler-specific limitation.  There's no limitation like this in the language specification. 

  • (cs) in reply to Gsquared
    Gsquared:
    Anonymous:

    It's astonishing that 30 pages of code in a single method worked at all. Beyond the obvious ridiculousness of if such a long-running method, there is the issue that in Java you're allowed a maximum of 64K characters inside of a try/catch block.

    Keep in mind that a standard 60-line page has about 4.4k characters per page maximum (74 wide x 60 rows = 4,440), including spaces, assuming no double-spacing on paragraphs, 12-point font, etc.  Assuming some whitespace (lines that don't go all the way across the page, some paragraph indenting, etc.), and you end up with an average of 2k characters per page (I've actually worked in a typesetting office, and this is pretty usual for letter size paper).  At 2k characters per page, 64k characters is 32 pages.

    By the way, it's not characters of source but bytes of code. Big relief for those who have to use AccessibleTableModelChange. 

  • Null (unregistered) in reply to JD

    Anonymous:

    Not everything was designed and deployed yesterday.  MS Access has been around for ages, and SQL Express has not.

    SQL Express is basically a cut down of SQL Server 2005 (In the same way that MSDE was a cut down of SQL 2000)
     

Leave a comment on “Yes, It Really is Three Tiers”

Log In or post as a guest

Replying to comment #:

« Return to Article