Web Services Making Software Coexist? 200
jgeelan writes "Despite the competitive uproar, coexistence of J2EE and .NET will be the norm and most sophisticated IT organizations will deploy on both development platforms. Who says so? No less an authority than the CTO of J2EE powerhouse BEA Systems, Scott Dietzen, writing in this month's Web Services Journal.
Dietzen acknowledges that an ongoing conflict is in progress between Java and C# and between J2EE and the .NET server family and is refeshingly honest, admitting that "there is some truth to the 'write once, test everywhere' complaint against Java."
His overall conclusion: ".NET is finding a sweet spot for programmed user interfaces, while J2EE continues to enjoy its sweet spot for server-side applications."
Unusual honesty by someone so highly placed. Isn't this just what the software industry needs more of, in these increasingly interoperable times?"
i want neither... (Score:1, Offtopic)
Re:i want neither... (Score:1)
I can see it now! (Score:1)
Honesty or idiocy? (Score:5, Interesting)
On a single platform, perhaps. It's true enough that early editions of Java's Swing weren't the swiftest UIs on the block, Swing has to contend with being platform independant. How well does a
The UI for most server-side applications is probably HTML, anyway, so I'm not sure what his point was. I suspect BEA is just making nice noises toward
We'll see how long that lasts when/if
Re:Honesty or idiocy? (Score:5, Insightful)
On a single platform, perhaps. It's true enough that early editions of Java's Swing weren't the swiftest UIs on the block, Swing has to contend with being platform independant. How well does a
The UI for most server-side applications is probably HTML, anyway, so I'm not sure what his point was.
That is the point. C#, ASP.NET and VS.NET are the perfect combination if you want to make HTML based UIs. You just drag a button onto a webpage, double click and write the event handling code in C#. The C# is compiled into a server side component along with some ASPX pages. The UI is completely HTML based and cross platform. The HTML generated can be transformed to work on all types of browsers (utilising the features of each). Anything that can't be done client side is done on the server side.
You pretty much write HTMl pages the same way you would write a standard GUI application and
Re:Honesty or idiocy? (Score:2)
Okay, I'll grant you that seems like a pretty cool development environment (for that sort of thing). But it isn't
Re:Honesty or idiocy? (Score:5, Informative)
VisualWorks has had this ability for quite a while, at least 4 years or so, which was the first time I played with it. I don't doubt that there may have been something before it that did the same thing, but it preceeds
Re:Honesty or idiocy? (Score:1)
Re:Honesty or idiocy? (Score:2, Informative)
Smalltalk has been phased out by IBM, and the widget elemnts etc are old.
Squeak is being developed and it's open source: it looks like a toy but its approach to user interaction using "morphs" is interesting.
Cincom (its smalltalk site slashdotted? :) ) is developing version 7 [cincomsmalltalk.com] of visualworks smalltalk, and it will surely be out before i finish checking out all the features of version 5 :)
The widgets are a little dated indeed, but being a very modular system there may be GUI enhancements to download, try looking around.
I'm impressed with some smalltalk environment features, like being able to modify some code (which gets dynamically recompiled, no "build" command) and having the changes reflected on the application while it is running, being able to inspect and extend system classes (smalltalk applications merely extend the system, in fact), being able to save and restore all classes and variables i'm working with in a single image file or in distinct packages.
I'd like to know if there is a java environment with similar features.
Re:Honesty or idiocy? (Score:2)
I personally do development in Smalltalk (using Squeak), and I love it. One of my projects over the last few years was enhancing the IRC client built into Squeak. I was adding the ability to have bots. In a couple days of hacking, I didn't have to restart the application once- all objects of the classes being changed had the updated methods as soon as I saved them. Then, I wasn't a newbie anymore, but it still amazed me then, and still does now. I shudder to think how much time extra it would take to have to recompile and restart after every insigificant change of code.
Aaron
Re:Honesty or idiocy? (Score:2, Interesting)
the real agurment here is how long does it take to develop out of the box a simple or complex application... cold fusion is simple a much faster language, yes it's actually more 4gl than 3gl, but what are u trying to do? pull some data out of the database and display it....
in cf that means 2 tags (opened and closed) and var names and html
<cfquery name="test" datasource="localserver">
select name, email, description
from users
where active = 1
order by name
</cfquery>
<cfoutput query="test">
#name# - #email#
#description#
</cfoutput>
looks quite clean huh?
why not look at at coldfusion mx, a j2ee application server, where the tag based language makes things simple and you can always fall back to java.
The when you want a more complex decent ui than is possible with html, use flash, w3c dom is great but not so prevalent..
and flash makes for a much for reliable user expierence than dhtml
Re:Honesty or idiocy? (Score:2)
The problem is that the
Re:Honesty or idiocy? (Score:2)
HTML generated can be transformed to work on all types of browsers (utilising the features of each)
Or it could have just been written to te W3c spec in the first place. No, that wouldn't be the MS way. Instead make something that has to know which browser you are using and change its behaviour accordingly. (Which of course fails utterly to be *forward* compatable with new and improved browsers you haven't heard of yet. I'm sick of websites that tell me I need to "upgrade" to Netscape 4.76 or I.E. 5.0 when I'm running something *newer* that would work if the site would just send me the HTML it would have sent to one of those two browsers.)
Re:Honesty or idiocy? (Score:3, Insightful)
Anyone who's done web pages for real has had to deal with browser compatibility. The ASP.NET approach of emitting different HTML for different browsers makes this a LOT less of a pain.
Re:Honesty or idiocy? (Score:2)
Re:Honesty or idiocy? (Score:2)
Re:Honesty or idiocy? (Score:2)
Re:Honesty or idiocy? (Score:2)
Re:Honesty or idiocy? (Score:2)
While I don't disagree that using HTTP is often dubious, getting around firewalls isn't the only reason. (Heck, a lot of this stuff is on intranets behind the firewall anyway.)
Other reasons include:
Re:Honesty or idiocy? (Score:2)
Drag and drop? (Score:2)
That is kind of suspect since real HTML is flow-based and not coordinate-based. Thus, MS is probably breaking a standard or making up a new one, unless I am missing something here. (I suppose you could use style-sheet absolute positioning, but that was buggy on some browsers when I tried.)
(BTW, Remote via-HTTP GUI's are highly possible IMO. Web forms for biz apps don't work very well for non-trivial stuff IMO. There are technology drafts like XWT and SCGUI for remote GUI's. They just need a big-name push.)
Re:Honesty or idiocy? (Score:2)
But surely you get a lot less flexibility? I seem to recall MS tried to rewrite Outlook in DHTML, the project bombed, as HTML (even with loads of IE extensions) just wasn't suitable for user interfaces. That's why Mozilla created XUL (which is). How does it deal with things like snap-off toolbars, popup menus, zigzagged underlines and all the other stuff that's either impossible or extremely hard to do with HTML?
It sounds like you'd end up with an extremely limited and rather slow widget set - a bit like AWT in fact. On the other hand, I haven't tried it, so what do I know?
Re:Honesty or idiocy? (Score:3, Informative)
Actually you answered your own question. It runs fine, if its an ASP.NET UI. Working on HTML/JavaScript based UI is nearly the same process as developing a client side UI in
Re:Honesty or idiocy? (Score:2)
Well not specifically, no, but the context was comparing with Java and Swing. Swing is hardly the UI used by JSP or servlets, HTML/JavaScript is.
Kind of a moot question, otherwise, eh?
Re:Honesty or idiocy? (Score:1)
Jeez isn't it fun being a zealot.
More Python Please! (Score:2, Insightful)
Re:More Python Please! (Score:2)
You have heard of Jython [jython.org] (nee JPython), haven't you?
(And you can add new features to Java applications at run time too (ClassLoader? JavaBeans? hello?). But of course you knew that.
eat your cake and have it too (Score:1)
http://www.jython.org/
http://starship.python.net/crew/mhammond/dotnet/i
Re:More Python Please! (Score:3, Interesting)
But yeah, you're very right. There are many options other than
Re:More Python Please! (Score:2)
If you look hard enough, you'll find similar arguments against all other programming techniques, languages, and frameworks. When it comes down to it, programming at all is just another waste of time.
There's a lot more to OOP than lies and FUD. If it's too hard for you to grasp, that's fine, you can continue using BASIC, no one will mind.
Re:More Python Please! (Score:2)
Yet Another False Dichotomy. BASIC is hardly the best that procedural can be.
The hardest thing to grasp about OOP is why the hell people would jump (blindly) into it without any evidence that it is better.
Is Science Truly Dead?
Re:More Python Please! (Score:2)
What is wrong about using OOP? I like it. It works great for me. I find I can organize code much more logically. Also, sending messages to entities is a more natural way of getting something done, for me. \
You remind me of the atheist who thinks every x-ian to be some preaching asshole. I'm not interested in "converting" you to the "one true way" of OOP, so why do the same to me?
What has science to do with this? Liking OOP rather than procedural programming is a matter of preference, not science. I probably could out-code you if there was some rule about OOP; what that make OOP better? You could probably outcode me if we were doing procedural style. Does that make PP better? Nope.
Re:More Python Please! (Score:2)
I tend to prefer dynamic languages these days.
(* What is wrong about using OOP? I like it. It works great for me. I find I can organize code much more logically. *)
What *exactly* does that mean? Is this something objective, or just a "feel"?
I realize that for *some* people OO may model the way they personally think, but I don't like other's preferences forced down my throat.
(* I'm not interested in "converting" you to the "one true way" of OOP, so why do the same to me? *)
I am sick of seeing the industry making *everything* OO. Somebody has to stop the nonsense.
I just ask for balance. Until X is objectively proven better than Y, or shown that most programmers prefer X, then X and Y should be given equal treatment.
Simple balance.
Re:More Python Please! (Score:2)
Oh, so procedural/relational programs are "non modular". I would rather have consistent modules rather than speggetti modules of OOP. Every fricken OO guru designs differently from each other. Picasso Black Art that OO. OO is GOTO's at a larger scale.
Further, "modularity" needs to be relative in many cases. There are multiple division candidates for any non-trivial app, and the smarter OO fans and Stepanov (STL) have reconized this problem. One size and one division dimension does not fit all.
P/r apps better handle relativism IMO by using relational and boolean formulas rather than hard-coded noun structures. It is easier to change a formula than shuffle code around.
Formulas are more abstract and flexible than hard-coded GOF-like structures. Think virtual. OOP is old fashioned hand-built bricks and mortar.
There is no fscken evidence that OO makes for better biz apps, and take OO away until you gets some.
"Got Evidence?"
"No, I use OO"
correction (Re:More Python Please!) (Score:2)
That should be "multiple orthogonal division candidates".
Unfortunately, modularity is often a dead-end goal IMO. Somethings you can split up into a nice black box off to the side, some things you just can't. Rather than chase a dead-end dream of boxing everyhing, we need to think about creating "virtual modularity". This is where you can create the modularity you need for a *particular* need. Relational technology comes the closest to this IMO.
OO just becomes exponentially complex when it tries these kinds of things because it is pretty much a one-dimensional technology.
OO is wonderful for those items that fit and change along that one dimension/border, but barfs on those that go against its main grain.
Re:More Python Please! (Score:2)
Well, C sucks. Burn C, not all procedural/relational paradigms just because one language sucks eggs. Besides, C is usually not used for custom biz apps, the domain of my primary complaint. (Perhaps OO shines in some domains, however, the industry is shoving it down everybody's throat).
(* So don't give me the "OO is lies and FUD" BS... explain WHY you think its all one great big lie. *)
Because there is NO EVIDENCE that it is better. I want to see actual biz-app code under change-impact-analsys, not cliches and brochure-talk meant for gullible PHB's.
Re:More Python Please! (Score:2)
The literature is full of braggings about OOP. Sure, not everybody thinks it is objectively better, but those are not my complaint anyhow.
(* what kind of non-OO code do you write, and in what language? *)
There is no one procedural language that has all the features I want. Progress in procedural features pretty much stopped in the late 80's as vendors and compiler makers focused on OOP instead. Thus, the best features never got a chance to consolidate before the era of CPU-driven worries dwindled sufficiently.
(* You show me why procedural is better. *)
I *don't* claim it to be objectively better. Just not objectively worse.
But a generally summary of why I think it is better (for me) is that it does not attempt to use code structures to model entities (nouns) and noun/entity relationships. I relies on the database for those, and (good) databases make virtual, local, and relativistic "noun views" easier than OOP. OOP tends to hard-wire them into code, which is more rigid than using relational and boolean formulas IMO. Half of OO GOF is about hand-indexing stuff it feels to me. That is busywork (and clutter) I would rather slave off to the database engines.
Most OO fans don't "get" databases IMO.
Re:More Python Please! (Score:2)
I find that dictionaries (associative arrays) work just fine. Some languages even use a dot instead of (or in addition to) square brackets.
(* Then, if you find that you need to add some kind of feature or behavior to objects of this class, isn't it easier to add it to the class definition (so that it is available throughout the code, wherever the object instance appears) *)
How is that better than a function?
recordHandle.newBehavior()
newBehavior(recordHandle)
In some languages, you can even do this:
Execute(recordHandle["newBehavior"])
essentially using a dictionary entry as a method. However, in practice I don't see a lot of need for such.
(* But when I needed a new behavior available, I found that it was easier to provide this as a method of the class rather than try to fit it into the procedural parts of my code. *)
I would have to see a specific example. Where exactly does the procedural version get harder?
(* Plus, I could always write a new class to aggregate other classes if I needed features of an already-existing class but wanted to expand on those *)
How is this different from a subroutine calling other subroutines?
(* At some point, the data needs to be used directly by the code, so flexible data structures such as objects come in handy (rather than cumbersome things like hashes-of-hashes). *)
I am not sure what you have encountered. Hashes of hashes is usually a sign that you need to design another table.
I used to use a lot of XBase. XBase was not perfect, I would note, but it made creating and using tables so fricken easy that I never wanted to touch data arrays again. Unfortunately, most existing stuff chose to farm that off to objects rather than improving lite-duty table manipulation. OOP killed table innovation implementation.
Microsoft is starting to bring virtual and local table engines back into its products, to their credit. However, their API's are a little clunky IMO. You can wrap them with something simpler, but its strong-typing push complicates much of it IMO.
Re:More Python Please! (Score:2)
Well, instead of x.y(), you can call it x_y().
Generally if a routine is meant for only a given module, then you don't really have to worry about overlap in many languages. If by chance you call a global routine with the same name as a local one, then some scope or module qualifier may be warrented.
If it is "general", then you have to be a little more careful. But, subroutine overlap is not necessarily more problematic than class name overlap. (These kind of things are very language-specific, I must note, and there are different solutions, just as there are different "module" solutions in OOP languages.)
Besides, are you suggesting that OOP is better *only* because it allegedly has less name-space overlap problems? If that is the best you can claim about OOP, then why the rush to OO?
Usually people will brag about its "encapsulation" or "abstraction" or "modeling" power, not namespaces. (Although those other guys never justify their preference in black and white. It is just a feeling to them.)
Re:More Python Please! (Score:2)
But you can also use other approahces if needed. By not hard-wiring it as a requirement, if you need to do something different, you can. For example, commonly-used routines should not be required to use such a convention to keep the code simpler. (The name/expression length should be inversely proportional to its usage frequency.)
Things get messy in OO also if people don't follow conventions. For example, you can't polymorph (substitute) if a programmer did not use the same method names and/or signatures for similar things.
(* Actually, I mentioned keeping the data in a consistent state. Encapsulation is usually better with an OO language. If your data members are private they are only accessible by the methods of your class. Again this could be achieved by convention with procedural programming, if everyone follows the convention. *)
That is malarky. In practice classes don't *own* data, but are merely proxies. There is nothing built into the OO paradigm to make sure only *one* class accesses a given non-language-bound data item. (And if you add that enforcement, it could be added for routines and/or modules also.)
Even if you could completely "wrap" data, then you end up reinventing a lot of data-base like operations in your class interface. Better to factor all that to the database rather than reinvent it over and over for each class IMO. That just creates OO bloat.
(* None of those concepts are impossible with a procedural language, but are sometimes made easier by an OO language, since it is a part of the language. *)
I will beleive it when I see it. Often the conditions assumed for being "easier" or "more change-friendly" are unrealistic. OO doctrine has over-hilighted certain change patterns, making people blind to the change patterns that don't favor OO. It is like TV commercials that pick on say yellow teeth. Before you never noticed it, but after many repeats, your mind focuses in on that (alleged) shortcomming, ignoring others.
For example, teeth whitening toothpaste has more abrasives in it. In the long run it may damage the outer shell of your teeth. But, you are not aware of that problem because you are sold on the idea that yellow teeth are the main evil.
This is what OO doctrine has appeared to do IMO.
So, OO fans hard-wire noun models into code structure and reinvent database operations time and time again and never realize how wasteful and bloaty and maintenance-unfreindly it is because they are "encapsulating" or "polymorphing" like a good little programmer should, according to the passages in the ScrOOPtures.
Re:More Python Please! (Score:2)
Oh yes, Zope, good fun there. Zope is interesting- they're basically attempting to recreate a Smalltalk environment for Python, but in a much bigger- in both good and bad.
Re:More Python Please! (Score:2)
I believe that there is a Python .NET in the works. The Visual Studio .NET IDE basically has every good feature from pretty much every good IDE. It is the first I have found with a superset of the Genera functionality - and packaged a heck of a lot better than Symbolics ever did.
Re:More Python Please! (Score:2)
http://starship.python.net/crew/mhammond/dotnet
Since when have .Net/C# proven themselves? (Score:1, Troll)
Java and J2EE are realities that real world developers have been working on for years. Years.
Have C# and .Net even been fully documented yet? How many months do you have to have worked with them to be considered old dog on the development team? Have they been in the wild, real world tested yet? Are they really anything other then Microsoft marketing concepts that they're giving the full court press to?
Re:Since when have .Net/C# proven themselves? (Score:3, Insightful)
18? It's not like it just came out yesterday, the beta has been available for at least a year and a half. Wrox put out books on programming with the beta languages and the beta framework.
Re:Since when have .Net/C# proven themselves? (Score:2)
Granted, with
Re:Since when have .Net/C# proven themselves? (Score:5, Interesting)
Re:Since when have .Net/C# proven themselves? (Score:2, Insightful)
Having standard ways to do remote communication is good, but all the bloated hype from all the various camps does a lot of dis-service. As far as I'm concerned, all the big tech companies are guilty of it, so it's not like MS or Sun are worse than others. The real benefit for businesses with technologies like C#, Java, .NET and web services is standard protocols and frameworks. The chances of a company finding skilled replacement when staff leave is more likely than a non-standard proprietary system. For me, the hassle of marketoid gibberish is worth it to move towards more standard and flexible ways of developing software.
Re:Since when have .Net/C# proven themselves? (Score:2, Insightful)
Clearly, BEA needs to grow over the next decade, and has to be very careful about the inevitable market power that Microsoft will have with
BEA isn't stupid. It realizes it has to be ready as a potential Microsoft partner, or it risks limiting its dominant position in the application servers and related software market to the Java side of the world. That's why it's being so "honest" about things like this.
Interoperability's a bitch... (Score:2, Interesting)
Imagine you have a web-based e-mail system. And a web-based word-document reader. One written in J2EE and one written in .NET. Click on a word attachment in the e-mail program, any guess as to whether or not it will open in your word-document reader? Answer is nope!
That people are just now figuring out that demanding that all things be written in One True Language to be hosted on One True Platform from One Designated Service Provider is kinda sad - doesn't that sound restrictive?
Of course, my commentary on this issue isn't coming from nowhere - I wrote [appslink.com] a service designed to fix the problem, at its core. But just because I'm biased doesn't mean I'm wrong.
Re:Interoperability's a bitch... (Score:2)
Err...yes, of course it will if you've set the MIME type correctly.
Cheers,
Ian
Honesty doesn't count for much these days. (Score:2, Interesting)
"Linux on the desktop is dead! Windows on the server is dead!"
The fact is that the "x and y both have their place" articles, although honest, are much less likely to get published, because media outlets know that less controversial opinions just aren't talked about as much.
This thread will be lucky to receive 200 comments. Had the article submitted been "Java is dying!
Having said that, I use PHP. Stop by #php on irc.openprojects.net! </plug>
Re:Honesty doesn't count for much these days. (Score:2)
I also disagree with your thread acitivity. This story would no doubt get more responses if it wasn't posted late in the evening.
-a
What is a website? (Score:1)
Management is trying to apply the tools of application design to web design (and by design I mean the structure/function of it -- not the eye candy). Management is also trying to reduce the toolkit design down to one integrated package. Of course, it is also very much in the interest of the large software companies to promote that same concept... fufill all your needs from us, etc., etc. To me, reduced to its simplest, a website is nothing more than navigation scheme for a large information space. That information is plugged in through a large number of essentially descrete applications. As long as the front end of the site looks the same, it doesn't matter how that content is being handled on the backend. I read a paper a long time ago where the author argues that the seperation of the interface from the content was one of the misunderstood strengths of web delivered content. That since virtually any backend application could be plugged into the interface, it could effectively break the monopoly that venders have on IT shops. Oracle gets to be to expensive? Port your data to another DB and change the ODBC drivers and say adios to 'em. For now the lure of the monolithic approach has traction with IT managers used to that approach. It will cost them in flexibility down the road. Just like the big iron mainframe folks had to adopt to the world of client-server networked PCs, the client-server folks are going to have to adapt to the logic of web delivered apps IMO.
Re:What is a website? (Score:2)
Applications haven't been "monolithic" for a long time. MVC had it's origins in application design, and anything decent these days is designed with the same 3-tier to n-tier approach that a web site would have.
It's all in the economics - you have to be able to update one part of the application without the changes propagating throughout the whole application.
Re:What is a website? (Score:1)
I agree 100% However, now try telling an IT manager that the intranet they're developing isn't a monolithic application. ;-)
In fact your comment, "It's all in the economics - you have to be able to update one part of the application without the changes propagating throughout the whole application" is exactly what I was trying to get across. In the old client-server model when you changed an application its interface went with it. Because the interface and the content delivery were so tightly bound together changing the application meant the interface, out of necessaity, changed also. So all of the training and interoperability issues reared their head.
With web-based delivery that isn't the case. Designed properly, the interface and content of a web site are segregated from each other. Designed properly, you can switch out the backend without the user ever even noticing. Or, you can redesign the front end look and feel without ever having to touch the backend apps. Rhe people who keep mushing content and interface together in one entity are going to have maintenance problems, the shops that don't are going to spend much less time spinning the wheels corrected self-inflicted wounds.
Web delivery is a deceptively different model.
Re:What is a website? (Score:2)
Management views the website, with its browser interface, as little more than a modern face on the old IBM mainframe application with its 3270-terminal interface.
The 3270 was a page-mode text terminal that let the app define fields the user filled in or checked off and then click a 'submit' key to send the form's contents back to the mainframe. Sound familiar?
That the back end now may consist of apps or components spread across several boxes, vs different apps and components in the same big box, isn't that huge a difference. (Just because the apps may have run on the same mainframe doesn't mean the whole thing was monolithic from an application sense.)
Re:What is a website? (Score:2)
It ain't pretty.
And the surprise was? (Score:1)
So its just business as usual?
BEA is a joke (Score:1)
I'm actually starting to evaluate Eclipse as a replacement for Weblogic Server (BEA's software) across our organization. Should save something like $17k per installation. Anyone have any experience using Eclipse?
-Todd
Re:BEA is a joke (Score:2)
As far as I know, JBoss and Jonas are the free, open-source J2EE appservers competing with BEA. May be you meant one of them.
Re:BEA is a joke (Score:2)
Thanks for the pointers however. More work, more fun. More acclaim when I save us hundreds of thousands of dollars.
-Todd
Re:BEA is a joke (Score:1)
Re:BEA is a joke (Score:1)
Re:BEA is a joke (Score:1, Informative)
The Eclipse Project is an open source software development project dedicated to providing a robust, full-featured, commercial-quality, industry platform for the development of highly integrated tools. It is composed of three subprojects, Platform, JDT - Java development tools, and PDE - Plug-in development environment. The success of the Eclipse Platform depends on how well it enables a wide range of tool builders to build best of breed integrated tools. But the real vision of eclipse as an industry platform is only realized if these tools from different tool builders can be combined together by users to suit their unique requirements, in ways that the tool builders never even imagined. The mission of the Eclipse Project is to adapt and evolve the Eclipse Platform and associated tools to meet the needs of the tool building community and its users, so that the vision of eclipse as an industry platform is realized
Eclipse is not an app server. It's a development environment with lots of pluggable features. I'm no expert on eclipse, but eclipse uses a different model for GUI development. Rather than use swing, which prefers to have a consistent cross platform look, eclipse wrote their own native libraries and wrapped java around it. This way you get very nice GUI with more low level control. for example, things like fonts and panes are handled differently and require memory management. If you create a particular gui widget, you have to free it up once your done.
Re:BEA is a joke (Score:3, Insightful)
Maybe the support people don't follow you either, because you don't have a handle on what you're talking about? Maybe it seems overpriced because you're buying a web app server to do the job of an editor? Perhaps I'm being too harsh, but just some ideas.
Re:BEA is a joke (Score:2)
Anyhow, I've found that IBM will cost you just as much.... except you get something that is much rougher around the edges. Want EJB 2 support? IBM should be out with their first cut in another month or so. BEA went gold within a month of the spec coming out last November. My benchmarks showed it is not even close to a fair fight with the current v4 or beta5 vs BEA.
Solid EJB containers cost real money. Oracle is getting cheaper -- just starting to work with it. Sun looks like they are giving one away for free, but not sure how solid that one is. JBoss gets pretty high praises from those in developement.
Low cost IDE's for doing EJB work are the bane of Enterprise Java Bean developemnt. You end up spending big bucks 2K+ for an IDE like JBuilder, or you get something that works for only one App server. If JBoss expands the eclipse tool the same way IBM did, it will be a nice kit.
So it will be, write twice... (Score:1)
Uses (Score:4, Funny)
(end list)
Re:Uses (Score:1)
anyways, i'm doing some web-services stuff at work using M$ MapPoint mapping (web-) services (http://mappoint.net). there are a few kinks to work out but it seems to be a good fit. we're pretty much a java, j2ee (webLogic) shop.
if you've done any geo-coding it's a pain to get all the data on cds, load it into some database, slap some sort of server on top of it (3rd party or in house), etc... it's a lot easier to just call a web service.
Re:Uses (Score:2)
I have not seen anything there that could not be done with HTTP get or post parameters (zipcode=12345&storename=buzzwords_R_us, etc.) and returning XML, comma-delimited lists, or a map image URL.
Here is a odd example on that site:
"As an example, let's say you are a waste removal company and you have uploaded the locations of all your dumpsters to the MapPoint
Sounds like a bit more than a "map" service to me. It is MS trying to host *other* biz functions also (such as scheduling) it sounds like. Just another way for MS to get into your pants........pocket.
show me the bennies (Score:2)
I asked about *benefits* already. Show how the MS/SUN approach is also faster, better, cheaper, gets your shirts whiter, etc.
Re:Uses (Score:2)
Re:Uses (Score:1)
a) Code something in some language that does the lookup usually via some proprietary adapter or
b) Use UDDI to lookup the WSDL. Create SOAP call to do the lookup. Now if I ever change my web front end, hey, I've got something that works no matter what web server I use as long as is it can do SOAP calls.
All this web services stuff is standard based and reduces vendor lock in. I don't know what all the resistance is to it. Anything that easily lets Apache talk to SAP talk to Siebel talk to by RDMS talk to my logistics system is OK with me.
Re:Uses (Score:2)
I use Livejournal, which has both a web based front end and a Web-API based one (which I prefer posting from).
I've communicated from a Windows based middle-tier to a tomcat web server using SOAP.
There's an awful lot of places that having web services is/will be handy.
Re:Uses (Score:2)
Those who find uses will get rich on them. Those that don't will whine about why the world changed out from under them.
Re:Uses (Score:2)
I'm convinced that web services is a better way of doing things when you need to integrate coarse-grained components on different platforms.
Re:Uses (Score:2)
For a lot of things, I agree that web services don't make sense on the open internet; there are a whole lot of things that ought to be static pages that get done with jsps (see shop.usps.com, for example).
I think the real test for whether something should be a web service is whether the users all want to interact with each other. If so, it makes a lot of sense to have a web service. If people are just doing their own thing and don't want to interact, web services don't make a lot of sense.
Still lacking specifics (Score:2)
I notice in all your counter-rantings that you never described an *actual* application, and how
There are plenty of existing communication approaches out there. Sun and
In the mean-time, we have open existing K.I.S.S. protocols to get real stuff done without selling out to the battling fat cats and getting shot up in their cross fire.
Let them battle by themselves, we don't need 'em.
from the Department of Redundancy Department (Score:2)
I suppose a definition of "web services" is needed to clearify this discussion.
If web services is "using the web to communicate between 2 or more different machines", then "web services" is actually *redundant*, because that is precisely what the WWW is for, isn't it?
It would be like calling something the "data transfer network" or "transportation vehicle" or "fly-capable airpline" or "floating boat" or "kill-capable military"[1], etc.
[1] Well, I suppose there are some really lame militaries out there.
Re:from the Department of Redundancy Department (Score:2)
So it is replaced by 50,000 lines of bloated Java and
I agree that some standardization is needed, however that can be done *without* marrying Bill Sun Gates. You really don't have to bend over to cough, you know.
Pretty much all you need is an XML parser and an HTTP character encoder/decoder (for ampersands, etc.).
Re:from the Department of Redundancy Department (Score:2)
Nice little false dichotomy: Screen scraping versus
(* Real world uses: how about an order tracking system for companies with hundreds of locations that don't want to lease T1 lines to tie everything together. *)
Have central servers. You don't need distributed fat clients for that. For those operations that don't fit a web-based interface, then use something like XWT or SCGUI. If that is not feasible, then use VB-like client interfaces for those parts, but avoid bound controls. It can even be self-updating if you do it right.
BEA's ploy to keep MS off their back (Score:2)
BEA makes money by selling WebLogic, which is an environment for developing server-side apps. He seems to really be saying, "Look, Microsoft, you go mess around with programmed user interfaces, because server-side development is our turf."
Openly defying Microsoft doesn't usually work, but clever companies have managed to stay out of Microsoft's sights by promising to play well with Microsoft and stay in their niche.
Re:BEA's ploy to keep MS off their back (Score:2)
The fact that he's coming out and making such a statement so early in the .NET lifecycle is presumably an indication that BEA is under big pressure from customers and/or investors to come up with a coherent story of where BEA will fit into the brave new .NET.
I'm not sure that laying your head down dog-like on the ground and exposing your jugular to Microsoft is really the way to stay in business, though. BEA may think Microsoft doesn't have a sweet spot on the server, but that's a bit like the old joke about dinosaurs: it's OK, dinosaurs won't eat you, they're herbivores. Yeah, but do the dinosaurs know that? I don't think Microsoft knows it's not supposed to have a sweet spot on servers, and Dietzen's position isn't going to make a whit of difference to Microsoft.
You think BEA is that weak? (Score:2)
Do you mean to imply that BEA is scared with good reason, or that they're scared for no good reason? I guess what I really want to know is whether you feel BEA is weak, or J2EE is weak, or both?
I'm not sure that BEA is exposing its jugular, but I definitely agree that playing the "we can all get along" game with MS usually leads to catastrophic meltdown. Only a few software companies can truly say that they've been able to successfully partner with MS without being chomped on hard. But using the McNeally approach isn't always successful either.
It seems that one of the most vexing business challenges of this age is "how do we compete in the same market as Microsoft?"
Re:You think BEA is that weak? (Score:2)
The problem with Dietzen's statement is that it's not really plausible - he's saying that BEA's OK because Microsoft won't find a sweet spot in the application server space. The obvious problem with this is that Microsoft will certainly find a sweet spot in that space, it's just a matter of time. So Dietzen's statement, instead of showing why BEA has a future, actually calls its future into question. He's drawing attention to their weakness, which seems like a questionable strategy. Of course, the weakness is fairly obvious, but if that's the best defense he can come up with, then man, BEA's toast!!
I'm not saying it's inevitable that BEA will be trampled by Microsoft, but a comment like Dietzen's seems pretty revealing as to what he thinks of their prospects.
It seems that one of the most vexing business challenges of this age is "how do we compete in the same market as Microsoft?"
I agree - as a software developer, I've run into this issue personally. It's a big reason I focus heavily on free software, where appropriate, and recommend it to my clients, many of whom have been burned by Microsoft's shifts in direction, lack of standards, and lack of openness. In a sense, Microsoft has been one the best motivating factors for free software. I doubt, for example, that IBM would be doing so much free software if it weren't for Microsoft.
In a way, BEA is actually caught between Microsoft and free software. Open source J2EE servers are pretty much in their infancy, but the problem for BEA is that the "intellectual property" inherent in today's application servers is really not that difficult to duplicate. So you get free servers like JBoss, and cheap servers (with source) like Resin. I doubt many BEA clients are quite ready to jump ship today, but over time, the standardization and network effects of free & open solutions can become quite compelling. I don't think time is on BEA's side...
\dotted (Score:1)
Fact and fiction (Score:1)
IBM has been steadily putting lots of good code and ideas about how to approach web service. Having read through most of the white papers on microsoft's site and worked a little on .NET application which uses SOAP and WSDL, microsoft's model is not ready for prime time. IBM recently release a Web Services Innvocation framework and web services toolkit.
there are also other efforts like castor, which are designed with web services model. IBM has a protocol called Web Services Flow Language, which borrows ideas and techniques from pi calculus. Web services as a technology will mature, but not at the rate microsoft claims or in the way microsoft thinks.
Re:Fact and fiction (Score:1)
MS Model not ready for primetime? (Score:4, Insightful)
And why's that? WSDL isn't MS proprietry language, it's a standard defined by many companies, and should be used with UDDI, currently in v2.0.
So, f00zbll, show me the beef where
ps: I develop a lot of
What's really gonna happen is... (Score:2)
Cornering the Autocoding Market [slashdot.org]
Some info on Autocoding [google.com]
j2ee and .net stuff (Score:2, Interesting)
Big companies just try to sell something 'good' for software development. The problem is, that they sell it to suits who just believe the marketing crap of sales people. Most of the time there are no technical people involved in these decisions and people like us just have to work with it, because 'it's good', 'scalable', 'integrated', blkahblahblah...
I really hope all this crap is over in a couple of years, and we can just use whatever we want to use and know is good. Getting experienced in using progamming languages and tools is the only way to see if things work. My experience is that in projects where they used stuff like J2EE, SOAP and COM, a lot of people where involved (a lot of suits) and the projects last long....over 2 years for a simple web based application!!! Arrgrhgh!! I've seen a lot of those projects and nobody overthere knew how to query a database using SQL how to use TCP-sockets, or what's the HTTP-protocol all about...They laughed at me because I did not want to use Visual Age for Java and I used javac and vi instead. "In Visual Age I cannot not see on which line parse errors occur" was my answer, when they asked what was better about just using the command line. I had to explain the word 'parser'.....
People on these kind of big projects just had a one week course and some experience with Excel macro's. And who sells those courses....???
I think, it's all corrupt...
fedor
Re:j2ee and .net stuff (Score:2)
Agreed. It is mostly snake-oil. Everybody is looking for the silver bullet to avoid having to learn things like SQL and HTTP. The problem is that in the end you end up having to fight the "magic" IDE and goofy API's to get what you *really* need the hard way.
It is all just a big glass of whine: Delays the innevitable, but makes the innevitable worse when it comes.
The 80/20 [1] rule is a universal fact of life in IT. Perhaps someday somebody will discover the magic IDE/tool/API that gives both, but until then one should learn to avoid the BS.
[1] The 80/20 rule is that tools that speed up the first 80 percent of the project tend to slow the last 20 percent to a crawl because they don't provide the granularity of control that you need.
Re:j2ee and .net stuff (Score:2)
Honestly, some people need to rethink how much performance is really worth? If you can save time by not having to write transactions, security, and testing both (which is a REAL PAIN), you can spend the money or time you saved there to either optimize or buy more hardware (since it supports clustering without you having to write any code, just more machines).
Web Services When I Can't Even Get My Email? (Score:2, Insightful)
I can't reliably get my Usenet newsfeed without "Connection unexpectedly closed by server" messages.
Anybody think you can run General Motors or any bank on that basis? Anybody think any ASP isn't just going to be an ISP with a new acronym?
In a way, until the phone companies get us that infinite bandwidth they were promising a couple years ago, this is good because it will probably kill Microsoft when it becomes apparent that none of this will work for reasons entirely outside the issue of which programming language or object broker is used.
.Net vs. J2EE vs. PHP etc (Score:2)
To me the idea of webservices seems to be the ability for a client of some kind (could also be a server type of client) to send a stateful request for info to a server of some kind. Since developers have been working around the Browser's lack of state for years and non browser applications can use a myriad of protocols etc to communicate to their server, such as XML-RPC,RMI,CORBA or whatever.
Turning SOAP and UDDI into a universal standard is nice but can anybody tell me why companies trying to sell web services are any different from companies that tried to make a living (and flopped) with the ASP thing a few years back?
What he's really saying... (Score:2)
Write once... (Score:2)
So how is
Re:OMFG WHEEEEE (Score:1)
So its basically business as usual?
Re:What about PHP? (Score:1)