Fog Creek Software
Discussion Board

Computers... Spawn of Satan?

I am beginning to think that computers were created by Satan.  Consider this.  The computer is a device that does nothing more or less than what the (sum of the) developers told it to do.  What a great way to torture poor souls like us.

So I've working on a J2EE app, today.  Nothing out of the ordinary.

I add some new functionality to a jsp.  When I deploy and run it, I get a really weird error (I forget the exact text).  I google for the error and discover that my jsp is too long.  Something about a 32k limit on java methods.

The normal fix is to break up the jsp into multiple, smaller jsp's.  However, I can't, since I am using nested tags!  Someone suggests making the jsp less verbose through the use of alternate tags.  So, I try switch tags "B" out for tags "B".  I get errors.

Now, I'm trying to figure out why I can't "B" tags to work... so I can make my jsp smaller... so I can add the new functionality.  How that hell did I get here!

This is not the first time a language/operating system/software has forced me to solve problem D...
so I can solve problem C...
so I can solve problem B...
so I can solve problem A, which was my only goal in the first place!

Is it only me?  Does this happen to anyone else?  Arghhhhh!

(Sorry if this is rambling.  I'm just tired and frustrated...)

Tired and Frustrated
Wednesday, May 19, 2004

That's what it's all about.

I'm told that that's my weakness. I don't enjoy not being able to do things.

I guess the ideal software engineer would be capering around the room in glee now, wishing the lovely frustration would last as long as possible and maybe go into a few more iterations.

Fernanda Stickpot
Wednesday, May 19, 2004

Use single letter variable names and no comments.  That ought to shorten it up a little.

SNT the evolution of RMS
Wednesday, May 19, 2004

Someone once told me that programming is doing the impossible.... by tomorrow.

Wednesday, May 19, 2004

Is the problem that java can't run methods longer then 32k or the fact that you have to work on a system that has a jsp 32k worth of text on it?!?!?

Wednesday, May 19, 2004

When I face a frustrating programming challenge at work, I remind myself that there's a reason I'm paid a decent salary. In other words, if software development were quick and easy, the economy wouldn't employ nearly so many programmers.

And, as the technology improves (IDE's, better libaries, new languages, etc.), each programmer is expected to create higher-quality more feature-rich programs quickly.

Wednesday, May 19, 2004

I think the appropriate title to this topic should have been--"Incompetant Programmers...Will They Ever Learn?"

Anon-y-mous Cow-ard
Thursday, May 20, 2004

"When I face a frustrating programming challenge at work, I remind myself that there's a reason I'm paid a decent salary."

Sure. But you don't enjoy the frustration do you? The frustration is what motivates you to punch through and solve the problem.

If we were *really* supposed to enjoy not being able to do things, we'd leave them broken so we could continue not to be able to do them.

Fernanda Stickpot
Thursday, May 20, 2004

SNT the evolution of RMS-

Unfortunately, no comments to remove.  And not really any variable names.  Just lots of tags.


The Java language spec says that not single mathod will exceed 32k in length.  JSP's (which are really servlets after a compile) put all the code in a single method.

Anon-y-mous Cow-ard-

Are you calling me incompetent or the programmers who set up a limit on Java method lengths?

(BTW- Problems C & B solved this morning in the space of a few minutes.  Now, off to find a few more ways to make the JSP shorter...)

Tired and Frustrated
Thursday, May 20, 2004

In the old days programming *was* working around the limitations: memory size, segment size, registers. That was a great part of the satisfaction.

That said, a 32K limit nowadays is indeed absolutely idiotic.

Thursday, May 20, 2004

The limit on Java methods is 64K compiled byte code, not 32.

Avrom Finkelstein
Thursday, May 20, 2004

"The limit on Java methods is 64K compiled byte code, not 32."

(shrug) Never bothered to verify it myself.  Just noticed there was *some* limit.

Tired and Frustrated
Thursday, May 20, 2004

If your method has 32K, let alone 64K of code in a method, you got big problems!

Bill Rushmore
Thursday, May 20, 2004

When I was younger, I enjoyed the limitations.  They were a challenge to me and I got a lot of personal satisfaction out of overcoming them.

Nowadays, for several reasons, I just want to get things done.  Whatever is getting in my way, I want to get past it ASAP so I can get on with completing the task.  The more I can get out of a single line of code, the better.  The less code I have to write to complete my task, the better.  I have little patience for things that take "too long", or are "overly complex", or have artificial limits and restrictions.

Unfortunately, it seems that most developers are either too lazy, incompetent, or schedule-constrained to be able to provide tools, products and libraries that make my life as a developer really enjoyable.  Which is why I am starting to consider alternative careers.

So in brief, I can relate, I have the same frustrations, and there is currently no real solution other than to accept the situation for what it is, or not be a programmer.

Should be working
Thursday, May 20, 2004

>>If your method has 32K, let alone 64K of code in a method, you got big problems!


I beleive the problem here is that most of the content of a jsp page ends up in a single method (a "service" method) and thus, if the jsp page is larger than 64K then there is the risk of the resulting servlet having a single method larger than 64K.

Yesderday, when I was doing some research into this, I saw in a newsgroup that some JSP containers automatically handle this problem. I am not sure which ones do, but I think one of them is Jetty.

Avrom Finkelstein
Friday, May 21, 2004

*  Recent Topics

*  Fog Creek Home