The problem is not technological or even technically speaking economic, but political
Agreed. Very insightful posting - thank you. In my case (living near Toronto, Canada), I'm paying approx $45/CDN per month for cable. DSL is priced about the same. Both are regulated by the gov't. Otherwise, I'm sure the prices would be much higher.
The 'last mile' took ages to implement in the area where I live. DSL wasn't available to most people around me (except myself, because I live across the street from a Bell station). DSL STILL remains out of bounds for some western downtown locations, for example, where I used to work. In this area, the solution was that a company came into the building, purchased a T1, and re-sold bandwidth to everyone else in the building from that pipe. Otherwise, best you could get for a small company was ISDN.
I agree that this limit was likely artificial. In a large city, there should be little that would prevent bandwidth-sharing by wireless.
We have a company around here, Look Communications, which offered an alternative to cable and DSL. I believe it's microwave, and those who managed to get it loved it. Sadly, they ran out of money, and could no longer afford to put up their 'stations' for new customers. They ARE, however, supporting their existing customers, and are not out of business.
If consumers were to take over at this point, and set up the wireless stations themselves, it should be easy to provide bandwidth for all, anywhere in the city. Perhaps a large-ish 10.x.x.x network, where each 'station' ran a DHCP server for 250 machines, and somehow broadcasted gateways (P2P fashion?) would work, with enough tweaking.
I always felt that the Internet was meant to be free. I understand that there are organizations out there who have invested a lot of money laying out fibre and such, and they deserve a hand for helping us get to where we are today, but in the end the Internet was always meant to be a forum where everyone has equal rights to voice themselves, and to hear what others have to say.
I'm not against bandwidth providers. What I am against is the high prices (or difficulty in getting bandwidth) which keeps so many off the 'net. Perhaps this is a solution to the 'last mile' problem, where we end up tearing up city streets everywhere to lay out new cables all of the time.
If the technology is there, I'm all for consumers taking over control of bandwidth. Let us set up our own networks. With our own networks in place, we will be able to escape things like government censorship, corporate control, and hopefully, telecom monopolies.
Rather, it is an integrated solution using a patent pending
technology for RAID access that implements high speed caching and optimized writes, thereby eliminating the slow performance seen in many other
RAID 5 solutions.
Sounds a little like RAID 1 or RAID 0+1 to me. No magic here.
I think that more or less, our society is already dependent on technology. For example, the Y2K issue which surfaced caused a certain amount of panic, as we began to realize exactly how much of our world is driven by technology.
As we move forward, technology becomes such an integrated part of our lives that we forget how to live without them. Who today can survive without the telephone, without our cars, without computers, our dishwashers, and hell, without condoms? The belt on our dryer broke this week and my parents couldn't do the laundry all of a sudden. Forget what people did for millennia -- my family needs the machine or we're helpless. The dryer has since been fixed, and it's business as usual. God forbid we ever lose electricity for a week.
As new things come out onto the market we increasingly use them for their convenience, and we forget how to do without them. As we become dependent on artificial beings to take care of the mundane daily tasks in our lives, we will soon realize that we cannot live without them.
Should the damned thing ever become smart enough to plot to overthrow me behind my back, or to steal from me, after months or years of faithful service I would have been trusting enough to let the thing do whatever it wanted. Because I never would have expected it.
I think it's time they stopped using MS-Access. Obviously the transactions aren't working right. Nor is the 'repair db' button. No matter how many times that was clicked, the data's still missing. Port attempts to FoxPro have yielded similar problems, and Excel now refuses to load on their server.
The unlawful use or threatened use of force or violence by a person or an organized group against people or property with the intention of intimidating
or coercing societies or governments, often for ideological or political reasons.
Vandalismn
Willful or malicious destruction of public or private property.
While both are techically correct, terrorism seems to be the more precise term for what happened, wouldn't you say?
It's possible that the fix for your problem simply hasn't been QA'd enough to make it to the 0.9.2 release. I had a similar situation when I reported a bug with the Velocity Template Engine which I was using, which was causing me a lot of grief. Anxiously I waited, and a week later 1.2 was released. Unfortunately the fix to my bug was not in it because they hadn't had the time to properly test it.
Point is, I'm sticking with the nightlies (1.2-dev) until 1.3. I suspect you can do the same thing. I'd get you a link to my bug but the Apache Bug Database seems to be down right now.
Seeing as how in Toronto it was (and is still nearly) 34C (90F) outside today, and my A/C's been running on overdrive, the question should look more like "Can I get an igloo for myself and my DSL?"
I agree that it's probably a good idea to have a look at what it does (by running in some sort of sandbox), but here's my take on the whole situation in general...
First off, you shouldn't be installing anything untested onto a production server. What your company should have is a box identical in configuration to your production box (or at least a development server. You DO have those, right?).
Install the package on this server first. See what it touches. See if other packages misbehave after this is installed. Above all else, do not touch a production box period unless you've already seen what this program does.
If your staging box blows up, so what? It's happened to me. Nobody really relies on it, and that's what the box is for anyway. No big deal. Document everything that happens when you install on this machine. Since it's exactly the same as your production box, if everything works, then all you have to do is follow your documentation to install onto your production server, and all will work fine.
Trying to install stuff (even in sandboxes or wrappers) onto a server without testing it in a closed environment or staging area first is asking for trouble.
Why would this be an 'Ask Slashdot' question? Clearly, if you're wondering if this is a breach of contract, you should be speaking to a lawyer. Ask one (and pay) for an hour of their time and they'll be able to spell out for you what your options are.
This is especially true in your case because the laws will likely vary from country to country, and perhaps even from state to state. I highly doubt that any insight that I, a Canadian, might have for you would help if the person in question was working in Seattle, for example.
I wish her the best of luck, however. Certainly she deserves some explanation (and the bills to be paid), but you didn't mention if anyone tried to ask Ariba what the fsck was going on. The vast majority of Slashdot readers (all the IANAL ones, including myself) are probably not qualified to help you out. Take the wrong person's advise, and she may get screwed.
In any case, I had a similar happening with my company. When I changed divisions, my insurance was supposed to stay intact. Somehow my name got lost in a paperwork shuffle, and for a few months I was listed as not having insurance (me having found out after a trip to the dentist). A few phone calls to the insurance company and one trip to HR cleared up the mess.
$50? I bought several of the exact same thing for $25 CANADIAN at a place down the street from me! You're getting ripped off if you're spending that much for a tray.
Don't you think that he should have the right to use this if he wants, considering he discovered it?
Well that depends. Suppose I visit your house and I find a long-forgotten baseball card in your basement which turns out to be worth several thousand dollars.
I'd want to say 'finders keepers', but you'd argue that it's your property, and it was found on your property. The fact that you forgot that you had it has no impact on who rightfully owns this.
Likewise, your government spent your tax dollars to build that system. It goes through government-owned land. Even if it was built a century ago, it doesn't change the fact that they paid for, and thus it's their right to decide what to do with it.
In any case, they should let the guy use it, but I don't think it's right to say that they're screwing him because they're not letting him use their stuff for free.
When working as a consultant, I came across a company which was using a product called 'Fulcrum KnowledgeServer', made by Hummingbird. I can't go into too many details because of an NDI, but let's just say they had what appeared to be hundreds of thousands of documents in PDF all over their file servers.
It looked like they were publishing everything in their company in PDF, and avoiding other office document formats entirely. In any case, Fulcrum apparently supports just about everything you asked for.
It comes with a desktop app which everyone was previously using to perform the searches. All documents were categorized by metadata such as date, creator, maintainer, and a whole tree of categories.
My job in this case was to integrate the search capabilities into their intranet site, a task which was surprisingly simple once I was able to track down the documentation and libraries (of the correct version, mind) I needed. Seemed to be a pretty powerful product, if managed well. I have absolutely no idea how much it cost or exactly how it worked, I just interfaced with it. However, the documents were available at the file level by network shares, so it sounds like it'll do what you ask.
If your company went all Free Software-like, you wouldn't have to bother yourselves with silly things like software audits
Perhaps from a legal perspective that might be the case. However, I think that given a company of a certain size you still want to audit what's out there. For example, if some employees are running an application in which a major security flaw was discovered, would you not want to know which machines have the affected software in order to be able to update them? We've seen critical patches issued for just about every major piece of software out there.
Software also includes OS. I would want to know which Linux kernels are out there (for example, to fix the security flaws which existed in the < 2.2.14 kernels), just as I would want to know what versions of NT are on the network so I can make sure people have been keeping up with their service packs.
Software auditing is more than checking license compliance. It's overall management of your network and your security. The larger the organization, the more important this becomes, since any one vulnerability in the most obscure location can still expose your systems to attacks and exploits.
I conclude that all software, even free software needs to be managed. Therefore, the idea of an audit doesn't seem at all silly to me.
I'll look into Option 1 to see what it supports. Thanks for the info. Hopefully it can run as an agent on client workstations or something.
As for tech tracker, it doesn't really meet what I was asking for. I don't really need a tracking tool so much as I need to be able to gather the data.
Eventually I might be able to get around to writing something. Preferably, though, I'd like to start with something that I can improve on, rather than work from scratch (because time is something I have little of right now). Of course I wouldn't mind re-contributing any improvements I make to the community:)
The tracking application (like Tech Tracker) is easy. It's just a set of screens plugging away with data in a database somewhere. Finding out what's out there to populate that data seems to be harder. When you're talking potentially (as an example) 1000 workstations in a dozen offices around the country, it starts to become prohibitive to have people go around and audit them by hand.
Probably one of the biggest issues with DSL is that these companies can't establish their *own* networks. Instead, they have to rely on the bigger telcos to provide the connectivity, and of course that brings all kinds of charges plus the traditional waiting game.
At least that's the issue in Canada right now. There's a few DSL providers out there, but really Sympatico is just about the only viable one. Why? Because Bell Canada owns the network, and they own Sympatico. Other providers have to pay Bell fees to use the phone lines, to get everything set up, and finally they have to wait because Bell is the only company that can service the line if something goes wrong.
Looks like the cards are stacked. Margins are low because they have to compete with Sympatico, who uses the network already in place. Installation can take months because Bell puts priority on their customers over another provider's.
Personally, I'm using Cable (via Rogers@Home, though my usership was recently purchased from Shaw through a geographic trade in service areas). Even a bigger monopoly in this case - there is only one choice.
The third option, Look (I think they operate by Microwave or something, it's wireless) unfortunately isn't accepting any new customers until they sort their financial problems out.
I'd be interested in your views of enhydra VS velocity. Did you try enhydra and reject it?
I have looked at Enhydra. It looks quite good, and I was thinking that we may use it for another part of the application (the 'application' in question is actually 3 web applications linked together with a common interface).
We will likely add Enhydra to our configuration in the coming months. For the present time, however, Velocity offered a good solution for us because it was simple to install, performed surprisingly well and we were able to make templates straight out of HTML editors. I generally code HTML by hand, but my time is better spent doing the back-end code, so often I have someone else do the design work.
I also liked the way that Velocity 'merges' data (in a Context object, which is basically a hash) with the template. Because of the way it loads templates, I found it to be a piece of cake to be able to load different templates by language (we support French), and by customer (some of our customers want customized looks and/or functionality).
We've had some bad experiences in the past with ASP. The bad part was that while things worked reasonably well, the developers were too often tempted to put code directly into the ASP page instead of the COM objects which were called. The production server, only shut down very infrequently, was not making it easy to update COM objects (bloody things got stuck in memory often and we couldn't reload them without rebooting the server sometimes). Hence, the developers became accustomed to putting code in the ASP part of the app, since it could be updated on the fly. After a while, we end up with hundreds of ASP pages with all sorts of code in there, and you can't easily read them to modify the presentation if you have to.
Enter JSP. While I like the technology and its abilities, I don't appreciate that it's just as easy to make the same mistakes. JSP allows you to embed Java code directly in them, which normally shouldn't be a problem, but maintaining an application over some years, you're bound to find situations where somebody is going to stick code in there and lots of it. Pretty soon, your JSP page is not as simple as it was when you started. What we needed was a way to enforce the separation of code and presentation, and an easy way to customize the look for our customers and to be able to handle multiple languages.
I found Velocity fit these needs well. I was able to write a small, customized template loader which searched for templates appropriate to the customer and language (if it can't find it, it loads the generic English one). Velocity does not allow you to embed Java code in the template. There are a few basic ifs and loops available, but generally you're forced to keep the code in the classes, and just send the template the resulting data to display.
For the data/functionality part, I've also implemented similar ideas for the classes. At runtime I load classes specific to the logged-on customer and try to run those to process forms (they just extend the generic form handler for that function and override a method or two). If they don't exist, then naturally the generic handler class processes the next action.
The main requirement for me was maximum flexibility with minimal effort. Velocity fit these needs well. I'm sure that Enhydra will fit our future needs too, so no, I am not rejecting it as a viable platform.
Try Velocity. It separates code from presentation much better than JSP in my opinion. We're currently using it where I work, and it works out quite well!
The problem is not technological or even technically speaking economic, but political
Agreed. Very insightful posting - thank you. In my case (living near Toronto, Canada), I'm paying approx $45/CDN per month for cable. DSL is priced about the same. Both are regulated by the gov't. Otherwise, I'm sure the prices would be much higher.
The 'last mile' took ages to implement in the area where I live. DSL wasn't available to most people around me (except myself, because I live across the street from a Bell station). DSL STILL remains out of bounds for some western downtown locations, for example, where I used to work. In this area, the solution was that a company came into the building, purchased a T1, and re-sold bandwidth to everyone else in the building from that pipe. Otherwise, best you could get for a small company was ISDN.
I agree that this limit was likely artificial. In a large city, there should be little that would prevent bandwidth-sharing by wireless.
We have a company around here, Look Communications, which offered an alternative to cable and DSL. I believe it's microwave, and those who managed to get it loved it. Sadly, they ran out of money, and could no longer afford to put up their 'stations' for new customers. They ARE, however, supporting their existing customers, and are not out of business.
If consumers were to take over at this point, and set up the wireless stations themselves, it should be easy to provide bandwidth for all, anywhere in the city. Perhaps a large-ish 10.x.x.x network, where each 'station' ran a DHCP server for 250 machines, and somehow broadcasted gateways (P2P fashion?) would work, with enough tweaking.
I always felt that the Internet was meant to be free. I understand that there are organizations out there who have invested a lot of money laying out fibre and such, and they deserve a hand for helping us get to where we are today, but in the end the Internet was always meant to be a forum where everyone has equal rights to voice themselves, and to hear what others have to say.
I'm not against bandwidth providers. What I am against is the high prices (or difficulty in getting bandwidth) which keeps so many off the 'net. Perhaps this is a solution to the 'last mile' problem, where we end up tearing up city streets everywhere to lay out new cables all of the time.
If the technology is there, I'm all for consumers taking over control of bandwidth. Let us set up our own networks. With our own networks in place, we will be able to escape things like government censorship, corporate control, and hopefully, telecom monopolies.
Rather, it is an integrated solution using a patent pending technology for RAID access that implements high speed caching and optimized writes, thereby eliminating the slow performance seen in many other RAID 5 solutions.
Sounds a little like RAID 1 or RAID 0+1 to me. No magic here.
Hmm... 50/50 odds... not bad. I'll say... Truth?
I think that more or less, our society is already dependent on technology. For example, the Y2K issue which surfaced caused a certain amount of panic, as we began to realize exactly how much of our world is driven by technology.
As we move forward, technology becomes such an integrated part of our lives that we forget how to live without them. Who today can survive without the telephone, without our cars, without computers, our dishwashers, and hell, without condoms? The belt on our dryer broke this week and my parents couldn't do the laundry all of a sudden. Forget what people did for millennia -- my family needs the machine or we're helpless. The dryer has since been fixed, and it's business as usual. God forbid we ever lose electricity for a week.
As new things come out onto the market we increasingly use them for their convenience, and we forget how to do without them. As we become dependent on artificial beings to take care of the mundane daily tasks in our lives, we will soon realize that we cannot live without them.
Should the damned thing ever become smart enough to plot to overthrow me behind my back, or to steal from me, after months or years of faithful service I would have been trusting enough to let the thing do whatever it wanted. Because I never would have expected it.
Anybody else see 'The Score' last week?
Nobody said it was SQL-Server.
I think it's time they stopped using MS-Access. Obviously the transactions aren't working right. Nor is the 'repair db' button. No matter how many times that was clicked, the data's still missing. Port attempts to FoxPro have yielded similar problems, and Excel now refuses to load on their server.
LOL! If I had moderator access I'd give it to ya! Best post I've seen all day :)
From the article: We've taken chemical rockets pretty close to as far as we can
As long as they can keep them short
</bad-puns>
A quick visit to Dictionary.com yields the following:
terrorism n
The unlawful use or threatened use of force or violence by a person or an organized group against people or property with the intention of intimidating or coercing societies or governments, often for ideological or political reasons.
Vandalism n
Willful or malicious destruction of public or private property.
While both are techically correct, terrorism seems to be the more precise term for what happened, wouldn't you say?
It's possible that the fix for your problem simply hasn't been QA'd enough to make it to the 0.9.2 release. I had a similar situation when I reported a bug with the Velocity Template Engine which I was using, which was causing me a lot of grief. Anxiously I waited, and a week later 1.2 was released. Unfortunately the fix to my bug was not in it because they hadn't had the time to properly test it.
Point is, I'm sticking with the nightlies (1.2-dev) until 1.3. I suspect you can do the same thing. I'd get you a link to my bug but the Apache Bug Database seems to be down right now.
Perfect. A streaming site showing a cool live event, and we have to make it suffer the /. effect so nobody gets to see it!
:)
from the can-I-get-DSL-in-my-igloo? dept.
Seeing as how in Toronto it was (and is still nearly) 34C (90F) outside today, and my A/C's been running on overdrive, the question should look more like "Can I get an igloo for myself and my DSL?"
I agree that it's probably a good idea to have a look at what it does (by running in some sort of sandbox), but here's my take on the whole situation in general...
First off, you shouldn't be installing anything untested onto a production server. What your company should have is a box identical in configuration to your production box (or at least a development server. You DO have those, right?).
Install the package on this server first. See what it touches. See if other packages misbehave after this is installed. Above all else, do not touch a production box period unless you've already seen what this program does.
If your staging box blows up, so what? It's happened to me. Nobody really relies on it, and that's what the box is for anyway. No big deal. Document everything that happens when you install on this machine. Since it's exactly the same as your production box, if everything works, then all you have to do is follow your documentation to install onto your production server, and all will work fine.
Trying to install stuff (even in sandboxes or wrappers) onto a server without testing it in a closed environment or staging area first is asking for trouble.
Why would this be an 'Ask Slashdot' question? Clearly, if you're wondering if this is a breach of contract, you should be speaking to a lawyer. Ask one (and pay) for an hour of their time and they'll be able to spell out for you what your options are.
This is especially true in your case because the laws will likely vary from country to country, and perhaps even from state to state. I highly doubt that any insight that I, a Canadian, might have for you would help if the person in question was working in Seattle, for example.
I wish her the best of luck, however. Certainly she deserves some explanation (and the bills to be paid), but you didn't mention if anyone tried to ask Ariba what the fsck was going on. The vast majority of Slashdot readers (all the IANAL ones, including myself) are probably not qualified to help you out. Take the wrong person's advise, and she may get screwed.
In any case, I had a similar happening with my company. When I changed divisions, my insurance was supposed to stay intact. Somehow my name got lost in a paperwork shuffle, and for a few months I was listed as not having insurance (me having found out after a trip to the dentist). A few phone calls to the insurance company and one trip to HR cleared up the mess.
$25 CDN is what, like $3 US? ; )
:)
Sure, that's about right. Unfortunately, if you count how much tax you'd have to pay our gov't, it probably comes out to about $15 US
$50? I bought several of the exact same thing for $25 CANADIAN at a place down the street from me! You're getting ripped off if you're spending that much for a tray.
Same mfg, same model, BTW.
Don't you think that he should have the right to use this if he wants, considering he discovered it?
Well that depends. Suppose I visit your house and I find a long-forgotten baseball card in your basement which turns out to be worth several thousand dollars.
I'd want to say 'finders keepers', but you'd argue that it's your property, and it was found on your property. The fact that you forgot that you had it has no impact on who rightfully owns this.
Likewise, your government spent your tax dollars to build that system. It goes through government-owned land. Even if it was built a century ago, it doesn't change the fact that they paid for, and thus it's their right to decide what to do with it.
In any case, they should let the guy use it, but I don't think it's right to say that they're screwing him because they're not letting him use their stuff for free.
Last I heard, Taco Bell was planning on giving everyone in Oregon a free Fajita if Walker lands on one of the Hooter girls.
Apparently it won't matter if he's intact or not.
When working as a consultant, I came across a company which was using a product called 'Fulcrum KnowledgeServer', made by Hummingbird. I can't go into too many details because of an NDI, but let's just say they had what appeared to be hundreds of thousands of documents in PDF all over their file servers.
It looked like they were publishing everything in their company in PDF, and avoiding other office document formats entirely. In any case, Fulcrum apparently supports just about everything you asked for.
It comes with a desktop app which everyone was previously using to perform the searches. All documents were categorized by metadata such as date, creator, maintainer, and a whole tree of categories.
My job in this case was to integrate the search capabilities into their intranet site, a task which was surprisingly simple once I was able to track down the documentation and libraries (of the correct version, mind) I needed. Seemed to be a pretty powerful product, if managed well. I have absolutely no idea how much it cost or exactly how it worked, I just interfaced with it. However, the documents were available at the file level by network shares, so it sounds like it'll do what you ask.
If your company went all Free Software-like, you wouldn't have to bother yourselves with silly things like software audits
Perhaps from a legal perspective that might be the case. However, I think that given a company of a certain size you still want to audit what's out there. For example, if some employees are running an application in which a major security flaw was discovered, would you not want to know which machines have the affected software in order to be able to update them? We've seen critical patches issued for just about every major piece of software out there.
Software also includes OS. I would want to know which Linux kernels are out there (for example, to fix the security flaws which existed in the < 2.2.14 kernels), just as I would want to know what versions of NT are on the network so I can make sure people have been keeping up with their service packs.
Software auditing is more than checking license compliance. It's overall management of your network and your security. The larger the organization, the more important this becomes, since any one vulnerability in the most obscure location can still expose your systems to attacks and exploits.
I conclude that all software, even free software needs to be managed. Therefore, the idea of an audit doesn't seem at all silly to me.
I'll look into Option 1 to see what it supports. Thanks for the info. Hopefully it can run as an agent on client workstations or something.
:)
As for tech tracker, it doesn't really meet what I was asking for. I don't really need a tracking tool so much as I need to be able to gather the data.
Eventually I might be able to get around to writing something. Preferably, though, I'd like to start with something that I can improve on, rather than work from scratch (because time is something I have little of right now). Of course I wouldn't mind re-contributing any improvements I make to the community
The tracking application (like Tech Tracker) is easy. It's just a set of screens plugging away with data in a database somewhere. Finding out what's out there to populate that data seems to be harder. When you're talking potentially (as an example) 1000 workstations in a dozen offices around the country, it starts to become prohibitive to have people go around and audit them by hand.
Probably one of the biggest issues with DSL is that these companies can't establish their *own* networks. Instead, they have to rely on the bigger telcos to provide the connectivity, and of course that brings all kinds of charges plus the traditional waiting game.
At least that's the issue in Canada right now. There's a few DSL providers out there, but really Sympatico is just about the only viable one. Why? Because Bell Canada owns the network, and they own Sympatico. Other providers have to pay Bell fees to use the phone lines, to get everything set up, and finally they have to wait because Bell is the only company that can service the line if something goes wrong.
Looks like the cards are stacked. Margins are low because they have to compete with Sympatico, who uses the network already in place. Installation can take months because Bell puts priority on their customers over another provider's.
Personally, I'm using Cable (via Rogers@Home, though my usership was recently purchased from Shaw through a geographic trade in service areas). Even a bigger monopoly in this case - there is only one choice.
The third option, Look (I think they operate by Microwave or something, it's wireless) unfortunately isn't accepting any new customers until they sort their financial problems out.
Where can I find this bandwidth meter I hear mentioned? Any links for the curious?
NASA is using Windows for most of their computing functions,
In that case forget it. I'm not setting foot on that death trap! I think I'd rather take my chances on Mir! Oh wait, too late....
Personally, I'd still rather take my chances on Mir!
I'd be interested in your views of enhydra VS velocity. Did you try enhydra and reject it?
I have looked at Enhydra. It looks quite good, and I was thinking that we may use it for another part of the application (the 'application' in question is actually 3 web applications linked together with a common interface).
We will likely add Enhydra to our configuration in the coming months. For the present time, however, Velocity offered a good solution for us because it was simple to install, performed surprisingly well and we were able to make templates straight out of HTML editors. I generally code HTML by hand, but my time is better spent doing the back-end code, so often I have someone else do the design work.
I also liked the way that Velocity 'merges' data (in a Context object, which is basically a hash) with the template. Because of the way it loads templates, I found it to be a piece of cake to be able to load different templates by language (we support French), and by customer (some of our customers want customized looks and/or functionality).
We've had some bad experiences in the past with ASP. The bad part was that while things worked reasonably well, the developers were too often tempted to put code directly into the ASP page instead of the COM objects which were called. The production server, only shut down very infrequently, was not making it easy to update COM objects (bloody things got stuck in memory often and we couldn't reload them without rebooting the server sometimes). Hence, the developers became accustomed to putting code in the ASP part of the app, since it could be updated on the fly. After a while, we end up with hundreds of ASP pages with all sorts of code in there, and you can't easily read them to modify the presentation if you have to.
Enter JSP. While I like the technology and its abilities, I don't appreciate that it's just as easy to make the same mistakes. JSP allows you to embed Java code directly in them, which normally shouldn't be a problem, but maintaining an application over some years, you're bound to find situations where somebody is going to stick code in there and lots of it. Pretty soon, your JSP page is not as simple as it was when you started. What we needed was a way to enforce the separation of code and presentation, and an easy way to customize the look for our customers and to be able to handle multiple languages.
I found Velocity fit these needs well. I was able to write a small, customized template loader which searched for templates appropriate to the customer and language (if it can't find it, it loads the generic English one). Velocity does not allow you to embed Java code in the template. There are a few basic ifs and loops available, but generally you're forced to keep the code in the classes, and just send the template the resulting data to display.
For the data/functionality part, I've also implemented similar ideas for the classes. At runtime I load classes specific to the logged-on customer and try to run those to process forms (they just extend the generic form handler for that function and override a method or two). If they don't exist, then naturally the generic handler class processes the next action.
The main requirement for me was maximum flexibility with minimal effort. Velocity fit these needs well. I'm sure that Enhydra will fit our future needs too, so no, I am not rejecting it as a viable platform.
Try Velocity. It separates code from presentation much better than JSP in my opinion. We're currently using it where I work, and it works out quite well!